-
released this
2026-09-19 18:53:18 +02:00 | 49 commits to main since this releasePercorso completo: registrazione del Dialer -> bozza revisionabile -> evento in calendario.
Audio e testo restano sul telefono. Unica eccezione di rete: la geocodifica dell'indirizzo
verso OpenStreetMap Nominatim.Bersaglio verificato: Pixel 8a (
akita), Android 16 / SDK 36, arm64, build LineageOS
community4.2-a16-20260815662915, 8 GB RAM. Nessun Google Play Services.Cosa fa
- Scoperta delle registrazioni del Dialer via
MediaStore, idempotente. - Trascrizione locale con Qwen3-ASR 0.6B, diarizzazione "chi ha detto cosa".
- Estrazione strutturata a schema (tipo intervento, quando grezzo, urgenza, indirizzo, prezzo).
- Risoluzione date in linguaggio naturale fatta in codice proprio, non dal modello.
- Geocodifica Nominatim con fallback: se fallisce l'evento si crea comunque con il solo indirizzo testuale.
- Prenotazione su
CalendarContractcon esito tipizzato (Booked/SavedWithoutCalendar/AlreadyBooked/Invalid). - Enrollment vocale del titolare per distinguere la sua voce da quella del cliente.
Verificato sul dispositivo (build installata 2026-09-19 20:27)
Il fix dell'onboarding regge end-to-end.
fede.wavera inERROREcon
impossibile caricare il modello ASR da .../files/models/asr— la cartella PADRE, firma
del bug. Dopo l'aggiornamento con-r(dati intatti) la stessa registrazione eoraBOZZA_PRONTAe lo statoERROREescomparso del tutto dall'archivio.RAM: il gate del piano passa.
VmHWMmisurato durante una trascrizione reale:
2,52 GiB contro il limite di 3,3 GiB richiesto.VmPeakvirtuale 21 GiB (mmap del
modello), RSS a riposo 375 MB dopo il rilascio.Scansione: lo switch ora fa qualcosa. A spento,
dumpsys jobschedulernon mostra
alcun lavoro perit.carazza. Portando l'intervallo a 30 minuti il job riprogrammato
risultaTIME=+29m35s.⚠️ RTF: il gate V2 del piano NON passa
Il piano chiede RTF (audio diviso inference) >= 2,0. Misurato, per trascrizione:
audio wall RTF piano note 1,0 s 3,1 s 0,31 dominio caricamento modello 14,6 s 12,4 s 1,18 misurato con questa build 20,1 s 15,7 s 1,28 22,5 s 40,7 s 0,55 30,8 s 22,2 s 1,39 848,7 s (14 min) 4103,9 s (68 min) 0,21 chiamata reale Media 0,82. Sotto i 30 secondi l'ASR sta piu' o meno al tempo reale; una chiamata da
14 minuti richiede 68 minuti, circa 10 volte peggio del gate.Il tempo cresce piu' veloce dell'audio: da 22 s a 849 s l'audio e' x38, il muro e' x185.
Comportamento superlineare, coerente con attention quadratica o pressione di memoria, non
con un costo per secondo costante.Conseguenza operativa: una giornata di chiamate da 15 minuti non si processa in una
pausa. Va deciso se il target realistico e' "clip brevi" o se serve lavorare su quantizzazione,
thread o chunking prima di considerare l'app usabile sul flusso principale.Note minori emerse
- La Diagnostica dice "RTF ultima trascrizione" ma legge
ORDER BY rowid DESC. Ri-trascrivendo
una registrazione vecchia la riga viene aggiornata in posto, il rowid non cambia, e lo schermo
continua a riportare una riga diversa da quella appena processata. ERROREnon ha retry sul tap: e' deliberato ("tap per leggere, selezione per agire"), ma il
dialogo d'errore offre solo "Chiudi".- Su questo telefono le registrazioni del Dialer stanno in
/storage/emulated/0/Chiamate/;
la cartella configurataChiamatela risolve correttamente.
Installazione
Firma debug: distribuzione interna, non Play Store.
adb install -r app-debug.apkDownloads
-
Source code (ZIP)
0 downloads
-
Source code (TAR.GZ)
0 downloads
- Scoperta delle registrazioni del Dialer via