# Attempted Solutions In questo documento si tengono tracce delle soluzioni scartate o fallite, per non ripeterle in futuro. ## Deserializzazione Firebase (Circostanze) - **Problema**: Firebase trasforma dizionari con chiavi numeriche sequenziali (es. la lista di checkbox delle 17 circostanze) in liste dinamiche, portando l'app a crashare in caso di cast diretto a Map. - **Soluzione adottata**: Uso della funzione statica `fixCircostanze` in `cid_data_manager.dart` per garantire la lettura unificata in Mappa. *Non tentare parsing diretti `as Map` sulle circostanze.* ## Monetizzazione (Modello Abbonamento) - **Tentativo**: Inizialmente configurato con RevenueCat come abbonamento ricorrente (rinnovo automatico). - **Esito**: Modello scartato (29 Aprile 2026) a favore di un "passaggio Una-Tantum" di 1 mese. - **Motivo**: Il modulo CAI si compila raramente. Un abbonamento ricorrente causava attrito e scarsa conversione. *Non reinserire logiche di recurring billing sul paywall.* ## Interfaccia Paywall iOS (Overflow) - **Problema**: Crash visivo "bottom overflow" su schermi iOS piccoli a causa della rigidezza del widget del paywall. - **Soluzione adottata**: Inserimento del blocco in un `SingleChildScrollView`. *Evitare `Column` statiche per schermate lunghe di checkout.*