# Matrice dei requisiti e stato della consegna

Fonte: PIANO_SVILUPPO_LA_PIAZZETTA.md, v1.1, letto integralmente. La richiesta attuale prevale sulla proposta Next.js: consegna HTML/CSS/JS senza framework server. Tutti i dati commerciali sono campioni; nessuna funzione backend è operativa.

| Piano | Requisito | Browser consegnato | Backend / prerequisito prima del lancio |
|---|---|---|---|
| 1–3 | Un locale, italiano, EUR, ospite | Identità e struttura responsive | Configurazione commerciale approvata, confronto costi su 24 mesi |
| 4–5 | Menu, categorie, prezzi, extra, allergeni | Filtri, dettagli, extra mozzarella max 1, esaurito bloccato | Catalogo validato, disponibilità e snapshot server |
| 4–6 | Carrello, ritiro e domicilio | Quantità 1–20 per riga, rimozione, centesimi interi, consegna campione 300 centesimi, minimo 1500 | Prezzi autorevoli, zone reali, capacità atomica, riserve e scadenze |
| 4, 6 | Checkout ospite, recapiti, note, fasce | Form con validazione HTML, indirizzo obbligatorio solo domicilio; esclusa/confine bloccate | Validazione server, fuso Europe/Rome, fasce dello stesso giorno e chiusure |
| 4, 8 | Riepilogo, stato cliente, email | Riepilogo e richiesta demo distinta dall’accettazione | Token imprevedibile, email, stato durevole e recupero browser chiuso |
| 7 | Tablet PWA, push, recupero rete | Vista responsive, manifest, icone e cache statica versionata; audio locale e blocco azioni offline | HTTPS, verifica installazione/aggiornamento Android, push, SSE/recupero e heartbeat server |
| 7–8 | Accettazione, preparazione, pronto, esito | Transizioni dimostrative, rifiuto con motivo, pausa, stati terminali | Autorizzazioni, versione attesa, audit, scadenze concorrenti, nessuna accettazione offline |
| 9 | Dipendente | Assegnazione manuale demo, partenza, consegnato, problema, scenario offline | Login nominativo, visibilità solo assegnati, sincronizzazione e riconciliazione contanti |
| 10 | Pagamenti, rimborsi e riconciliazione | Nessuna carta richiesta; stati finanziari demo separati; incerto blocca accettazione | Provider approvato, checkout ospitato, webhook firmati, idempotenza, riconciliazione, rimborsi autorizzati |
| 11, 14 | Report, margini, operatività | CSV e rimborsi demo in operations.html, procedure in GUIDA_CONSEGNA.md | Report giornalieri reali, fonti dati, baseline 4 settimane / primo mese, verifica a 90 giorni |
| 12–13 | Ruoli, dati, sicurezza | Nessuna persistenza contatti, nessun tracker o chiamata API | Sessioni sicure, CSRF, rate limit, MFA titolare, audit, retention, token revocabili |
| 13 | Contenuti obbligatori | Quattro pagine informative collegate, tutte bozze da validare | Dati venditore, privacy, vendita, annullamento/rimborso, allergeni e fiscalità validati |
| 13–17 | Backup, monitoraggio, pilota e rilascio | Istruzioni verifica e contratti | Ripristino provato, job durevoli, sandbox, formazione, pilota e pubblicazione operatore |
| 18 | Decisioni aperte | Campioni dichiarati | Approvare zone, provider, capacità, accesso dipendente, differiti, budget e fallback |
| 3 | Estensioni successive | Non implementate | Account, coupon, fedeltà, SMS, stampanti, statistiche e più giorni dopo stabilizzazione |

## Evidenze e decisioni

- Codebase Memory: list_projects (entrambe le pagine), search_graph `.*`: solo Project e Branch, nessun simbolo applicativo; trace_path/get_code_snippet non applicabili a funzioni inesistenti. Indice presente, quindi non ricreato.
- check_index_coverage sul piano e scope radice: piano `not_tracked`; verificato direttamente sul file. Nessun sorgente applicativo preesistente nella copia, media/uploads/output vuote, nessun AGENTS.md trovato nelle directory consultate.
- CLI CBM non utilizzabile per coordinamento su filesystem in sola lettura; consultazione completata tramite MCP.
- Trailmark assente. Nessuna installazione per rispettare il vincolo esplicito; analisi Trailmark non eseguita.
- Ruling: mantenere il piano originale, aggiungere prototipo e documenti separati; nessun file eliminato. Modifiche nella copia privata autorizzata, non nella radice origine fuori dai percorsi scrivibili.
- Aggiornamento finale: service worker implementato con allowlist statica e cache isolata per release. Installazione/aggiornamento in browser e su Android restano da verificare. Nessun dato ordine o contatto in cache.
- Evidenze attuali e mappa puntuale dei criteri §16: COLLAUDO_FINALE.md.
