Ogni giorno, dalle 8:00 (Europe/Rome), un job pg_cron orario manda a chi compie gli anni «Buon compleanno, <Nome>! 🎂» e a tutti gli altri membri attivi, allenatori compresi, «Oggi è il compleanno di <Nome>» (con più compleanni lo stesso giorno un solo messaggio a testa, nomi in ordine alfabetico). Solo titolo, senza corpo né età. Canali: push, centro notifiche ed email. - migration m31: tipi `compleanno` e `compleanno_auguri`, registro `compleanni_notificati` (una sola volta per destinatario e giorno, anche se la notifica viene eliminata), funzione `genera_avvisi_compleanno()` e job `avvisi-compleanno`, trigger push esteso ai nuovi tipi. Non ancora applicata in produzione. - 29 febbraio non gestito: chi è nato quel giorno è avvisato solo negli anni bisestili (limite noto, documentato). - test: integrazione `notifiche-compleanno` (ora e ora legale, destinatari, più compleanni, registro, coda push/email, 29 febbraio, job pianificato); unit sui nuovi tipi e sul corpo vuoto del service worker. - documentazione: DD-047, catalogo e testi delle notifiche, DATABASE, CHANGELOG, ROADMAP, PROJECT_STATE. Chiude la issue #11. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2.4 KiB
2.4 KiB
Project State
Ultimo aggiornamento: 06/10/2026
Questo file dice a che punto siamo ora. Le funzionalità stanno in docs/ROADMAP.md, i rilasci in docs/CHANGELOG.md, lo schema in docs/DATABASE.md, le procedure in docs/OPERATIONS.md. Non ripetere qui quello che hanno già loro.
Stato generale
- Versione: 1.2.3 (in produzione su
mainla 1.2.2) — notifiche su tre canali, avvisi di palloni (3 ore prima) e presenze (24 ore prima) una sola volta, niente promemoria evento, niente foto tessera, avviso certificato a 30 giorni per il giocatore, avviso rosso per chi non l'ha caricato. - Backend: Supabase proprietario (
kfkcldwncxqaixetsjes). Lovable Cloud e il vecchio Project Refhetycilxgkdmccelwerqnon si usano più. - Migration: 42 file in
supabase/migrations/, fino am31_notifica_compleanno. Le prime 41 (fino am30_sollecito_solo_24h) sono applicate in produzione (verificato connpx supabase migration listil 01/10/2026); lam31no, ancora da applicare (DD-047). Lam29togliefoto_path: il codice che non la legge più (1.2.2) va rilasciato. - Worker delle notifiche (
mailer/): in funzione su un Raspberry Pi con Docker dal 29/09/2026 (docs/WORKER_EMAIL.md). Il codice con l'interruttore «Email» in Profilo è sudevelop, non ancora sumain. - Accesso: il login Google è l'unica via d'ingresso; i permessi di amministrazione arrivano
solo da
user_roles. Il collegamento degli account è un processo continuo: ogni giocatore si collega al primo accesso (DD-018). - Lavoro in corso: niente di assegnato. Le voci aperte stanno in docs/ROADMAP.md, sotto «Prossimo».
Cose da sapere
- Si lavora direttamente su
main(DD-019); Cursor e Claude Code sono gli ambienti di sviluppo. - Dev e produzione condividono lo stesso progetto Supabase: un account di prova che collega uno slot lo occupa anche in produzione e va liberato da un admin.
- Lo slot
g18«Beta Tester» è impostato come allenatore in produzione (24/09/2026). Numero 99 e ruolo «Palleggiatore» sono rimasti apposta per la 0.9.2: da svuotare da/adminse ancora presenti.
Note
Il progetto segue una metodologia document-first (DD-002): ogni funzionalità si progetta in
docs/modules/ prima di essere implementata.