5.2 KiB
5.2 KiB
Bug risolti e validazioni
Obiettivo
Questa sezione tiene separato il materiale di fix dal manuale generale. Qui annotiamo:
- bug corretti
- fix applicato
- stato della verifica
- eventuali controlli ancora da fare su staging
Registro sintetico
Supporto > Modifiche in memory exhaustion su log grandi
- Problema: la pagina
admin-filament/supporto/aggiornamento-nodopoteva andare inAllowed memory size exhaustedduranteloadRuntimeErrors()quandostorage/logs/laravel.logdiventava molto grande. Sul nodo staging il caso reale era unlaravel.logda circa278 MB. - Causa tecnica:
appendFromNdjson()eappendFromLaravelLog()usavanofile(...), quindi caricavano l intero file in RAM anche se poi la UI mostrava solo gli ultimi eventi utili. - Fix applicato: in
app/Filament/Pages/Supporto/Modifiche.phpi lettori sono stati sostituiti con una lettura tail limitata per linee e byte (readTailLines()), mantenendo il comportamento della UI ma senza allocare l intero log. - Stato: [U] riprodotto e corretto sul nodo locale
/var/www/netgescon; validazione eseguita via reflection suloadRuntimeErrors()conlaravel.loggrande, picco memoria rimasto intorno a89 MBe39righe BUG caricate correttamente. - Prevenzione: non usare aumento del
memory_limitcome rimedio principale; mantenere logrotate attivo e preferire sempre parsing incrementale o tail bounded per i file operativi letti dalla UI.
Supporto > Modifiche con ProgramAclService assente su nodo staging
- Problema: la pagina
admin-filament/supporto/aggiornamento-nodopoteva andare inBindingResolutionExceptionconTarget class [App\Services\ProgramAclService] does not existdurantecanAccess(). - Causa tecnica: sul nodo staging il checkout deployato non conteneva
app/Services/ProgramAclService.php; la pagina supporto dipendeva in modo rigido da quel service anche per un semplice controllo accessi. - Fix applicato:
Modifiche::canAccess()usaProgramAclServicesolo se la classe esiste e si risolve correttamente; se manca, fa fallback ai ruoli amministrativi (super-admin,admin,amministratore) e non blocca la pagina tecnica. - Stato: [U] validato su
/var/www/netgesconcon service realmente assente;App\Filament\Pages\Supporto\Modifiche::canAccess()non genera piu eccezioni e ritorna correttamentetrueper un utente amministrativo. - Prevenzione: nelle pagine di supporto e deploy evitare dipendenze rigide da moduli opzionali o non ancora allineati sul nodo; il pannello di recupero deve sempre avere un percorso di fallback minimale.
Ripristino bootstrap pannello admin
- Problema:
AdminFilamentPanelProvider.phpera stato corrotto da una modifica incompleta e impediva il bootstrap corretto. - Fix applicato: ripristino struttura PHP e riallineamento del provider.
- Stato: [U] risolto localmente, bootstrap Laravel nuovamente valido.
Token CTI Panasonic e lettura configurazione piu robusta
- Problema: il flusso staging poteva fallire per risoluzione non coerente del token CTI.
- Fix applicato:
PanasonicCstaControllerriallineato aconfig/cti.phpcon risoluzione piu robusta. - Stato: [P] implementato e verificato in locale; su staging resta da completare la validazione end-to-end del canale reale.
Mismatch stabile/anno in Ordinarie
- Problema: la pagina
gescon/ordinariepoteva mostrare dati non coerenti con stabile e anno scelti nella topbar. - Fix applicato: default anno dal contesto condiviso e centralizzazione risoluzione codice legacy stabile.
- Stato: [P] implementato e validato a livello codice; da verificare sul caso reale staging con dati utente specifici.
Filtri acqua e servizi non coerenti con la gestione attiva
- Problema: in
condomini/servizi-utenzee archivio letture la selezione anno/stabile non era sempre rispettata in tutte le query. - Fix applicato: applicazione del filtro anno attivo e del contesto stabile ai blocchi acqua principali.
- Stato: [P] implementato e testato sintatticamente; serve verifica funzionale con dati annuali reali su staging.
Tracciato tecnico SMDR e CSTA mescolato
- Problema: una sola vista tecnica rendeva meno chiaro distinguere fallback SMDR da eventi CTI/CSTA ricchi.
- Fix applicato: nuovi tab distinti in
strumenti/post-it-gestionee vista click-to-call dedicata. - Stato: [U] implementato; da usare come base per test operativi PBX e future integrazioni provider-agnostic.
Validazioni eseguite nell ultimo ciclo
php artisan listeseguito con esito positivo dopo gli ultimi fix applicativi- controlli sintattici PHP sulle classi modificate senza errori
- diagnostica editor senza errori sui file toccati
Supporto > Modifiche: validato il nuovo parsing tail-bounded dei log su nodo conlaravel.logda278 MB, senza esaurimento memoria
Validazioni ancora aperte
- verificare su staging la nuova tab
CTI / CSTA e Click-to-Call - verificare il caso reale di mismatch stabile/anno con dati staging
- usare il filtro annuale acqua per l estrazione effettiva delle fatture e confermare il perimetro dati
Regola di aggiornamento
Ogni bug corretto va aggiornato qui in quattro righe:
- problema osservato
- fix applicato
- stato verifica locale
- stato verifica staging o nodi remoti