b3670d164b
3 piani in 2 wave: 18-01 (rimozioni Forecast+QuoteBuilder), 18-02 (fusione analytics→dashboard), 18-03 (CLEAN-04 verify + build check). ROADMAP.md aggiornato con plan list Phase 18. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
198 lines
7.4 KiB
Markdown
198 lines
7.4 KiB
Markdown
---
|
|
phase: 18-cleanup-consolidamento
|
|
plan: 03
|
|
type: execute
|
|
wave: 2
|
|
depends_on:
|
|
- "18-01"
|
|
- "18-02"
|
|
autonomous: false
|
|
files_modified:
|
|
- .planning/ROADMAP.md
|
|
- .planning/REQUIREMENTS.md
|
|
requirements:
|
|
- CLEAN-04
|
|
|
|
must_haves:
|
|
truths:
|
|
- "Le fasi 13/15/16/17 sono marcate esplicitamente come cancellate/congelate/ri-scopate nel ROADMAP.md"
|
|
- "REQUIREMENTS.md riflette lo stato aggiornato dei requirement corrispondenti"
|
|
- "CLEAN-04 è marcato Done in REQUIREMENTS.md"
|
|
- "La build del progetto passa dopo le rimozioni dei piani precedenti"
|
|
artifacts:
|
|
- path: ".planning/ROADMAP.md"
|
|
provides: "Fasi 13/15/16/17 con status esplicito cancellate/congelate"
|
|
contains: "CONGELATA\|ABBANDONATA\|RI-SCOPATA"
|
|
- path: ".planning/REQUIREMENTS.md"
|
|
provides: "CLEAN-04 marcato Complete"
|
|
key_links:
|
|
- from: "ROADMAP.md fasi 13/15/16/17"
|
|
to: "STATUS field"
|
|
via: "checklist e label espliciti"
|
|
pattern: "Congelata|Abbandonata|Ri-scopata"
|
|
---
|
|
|
|
<objective>
|
|
Verificare formalmente il completamento di CLEAN-04 e validare la build post-cleanup.
|
|
|
|
Purpose: CLEAN-04 — le fasi v2.1 residue sono già state archiviate/marcate nel reset 2026-06-19.
|
|
Questo piano le verifica, le sigla formalmente nel planning e valida che i piani 01/02
|
|
non abbiano introdotto errori di build.
|
|
Output: CLEAN-04 marcato Done, build TypeScript verificata, check umano che la dashboard funziona.
|
|
</objective>
|
|
|
|
<execution_context>
|
|
@$HOME/.claude/get-shit-done/workflows/execute-plan.md
|
|
@$HOME/.claude/get-shit-done/templates/summary.md
|
|
</execution_context>
|
|
|
|
<context>
|
|
@.planning/ROADMAP.md
|
|
@.planning/REQUIREMENTS.md
|
|
@.planning/STATE.md
|
|
</context>
|
|
|
|
<tasks>
|
|
|
|
<task type="auto">
|
|
<name>Task 1: Verifica CLEAN-04 e aggiorna planning docs</name>
|
|
|
|
<read_first>
|
|
- .planning/ROADMAP.md — sezione fasi 13/15/16/17, verifica che abbiano label/status esplicito
|
|
- .planning/REQUIREMENTS.md — sezione CLEAN-04, verifica stato attuale
|
|
</read_first>
|
|
|
|
<files>
|
|
.planning/ROADMAP.md,
|
|
.planning/REQUIREMENTS.md
|
|
</files>
|
|
|
|
<action>
|
|
STEP 1 — Verifica ROADMAP.md:
|
|
Leggi le voci delle fasi 13, 15, 16, 17 nel ROADMAP.md.
|
|
Devono avere tutte uno status esplicito. Controlla che la checklist mostri:
|
|
- Phase 13: [~] con label "❌ CONGELATA (reset 2026-06-19)"
|
|
- Phase 15: [~] con label "❌ ABBANDONATA (reset 2026-06-19)"
|
|
- Phase 16: [~] con label "❌ RI-SCOPATA in v2.2"
|
|
- Phase 17: [~] con label "❌ RI-SCOPATA in v2.2"
|
|
Se uno di questi status manca o è incompleto, aggiungilo/completalo.
|
|
Aggiungi anche una nota nella tabella Progress in fondo con la data di chiusura 2026-06-19
|
|
dove mancante.
|
|
|
|
STEP 2 — Aggiorna REQUIREMENTS.md:
|
|
Nella tabella "Cleanup & Consolidamento (Phase 18 / R1)":
|
|
- CLEAN-01: cambia Status da "Pending" a "Complete"
|
|
- CLEAN-02: cambia Status da "Pending" a "Complete"
|
|
- CLEAN-03: cambia Status da "Pending" a "Complete"
|
|
- CLEAN-04: cambia Status da "In corso (questo reset)" a "Complete"
|
|
|
|
Nella tabella Traceability in fondo:
|
|
- CLEAN-01 | Phase 18 (R1) | Complete
|
|
- CLEAN-02 | Phase 18 (R1) | Complete
|
|
- CLEAN-03 | Phase 18 (R1) | Complete
|
|
- CLEAN-04 | Phase 18 (R1) | Complete
|
|
|
|
STEP 3 — Build verification:
|
|
Esegui: cd /Users/simonecavalli/Vault/IAMCAVALLI && npm run build
|
|
Se la build fallisce:
|
|
- Leggi l'output dell'errore
|
|
- Identifica il file con import rotto
|
|
- Risolvi (probabilmente un import di componente eliminato o una funzione non trovata)
|
|
- Ri-esegui npm run build fino a successo
|
|
Registra nel SUMMARY se ci sono stati fix necessari.
|
|
</action>
|
|
|
|
<verify>
|
|
<automated>
|
|
grep "CLEAN-04" /Users/simonecavalli/Vault/IAMCAVALLI/.planning/REQUIREMENTS.md
|
|
</automated>
|
|
Risultato atteso: riga contenente "CLEAN-04" e "Complete".
|
|
|
|
Verifica fasi archiviate:
|
|
grep -E "Phase 13|Phase 15|Phase 16|Phase 17" /Users/simonecavalli/Vault/IAMCAVALLI/.planning/ROADMAP.md | grep -E "CONGELATA|ABBANDONATA|RI-SCOPATA" | wc -l
|
|
Risultato atteso: 4 (tutte e quattro le fasi con label esplicito).
|
|
</verify>
|
|
|
|
<acceptance_criteria>
|
|
- REQUIREMENTS.md: CLEAN-04 è "Complete"
|
|
- REQUIREMENTS.md: CLEAN-01, CLEAN-02, CLEAN-03 sono "Complete"
|
|
- ROADMAP.md: fasi 13/15/16/17 hanno label di stato esplicito (CONGELATA/ABBANDONATA/RI-SCOPATA)
|
|
- npm run build completa senza errori
|
|
</acceptance_criteria>
|
|
|
|
<done>
|
|
Tutti i requisiti CLEAN-01..04 sono marcati Complete nei planning docs.
|
|
La build TypeScript è pulita. Phase 18 è formalmente chiusa.
|
|
</done>
|
|
</task>
|
|
|
|
<task type="checkpoint:human-verify" gate="blocking">
|
|
<name>Checkpoint: Verifica visuale Dashboard e assenza rotte rimosse</name>
|
|
|
|
<what-built>
|
|
Piano 01 ha rimosso /admin/forecast e /admin/quotes/new.
|
|
Piano 02 ha fuso le statistiche di /admin/analytics nella Dashboard /admin
|
|
e rimosso la rotta /admin/analytics.
|
|
Il selettore anno nella dashboard naviga a /admin?year=X.
|
|
</what-built>
|
|
|
|
<how-to-verify>
|
|
1. Avvia il dev server: `npm run dev` (o `npx next dev`)
|
|
2. Vai su http://localhost:3000/admin — verifica:
|
|
- Sidebar: NON compare la voce "Forecast"
|
|
- Dashboard: in fondo alla pagina compare la sezione "Statistiche" con selettore anno,
|
|
MetricCard economiche (Contrattualizzato / Incassato / Da incassare / Clienti acquisiti),
|
|
grafico mensile a barre, sezione ore per cliente
|
|
- KPI card esistenti (Clienti attivi, Revenue totale, Progetti in corso, Pagamenti in sospeso)
|
|
sono ancora presenti in cima
|
|
- FollowUpWidget e feed attività sono ancora presenti
|
|
3. Vai su http://localhost:3000/admin/forecast → deve restituire 404
|
|
4. Vai su http://localhost:3000/admin/analytics → deve restituire 404
|
|
5. Vai su http://localhost:3000/admin/quotes/new → deve restituire 404
|
|
6. Clicca sul selettore anno nella sezione Statistiche → cambia anno e verifica che
|
|
l'URL diventa /admin?year=XXXX (non /admin/analytics)
|
|
7. Nel dettaglio di un lead, apri il modal "Invia preventivo" → verifica che NON
|
|
compare più il bottone per creare un nuovo preventivo manuale
|
|
</how-to-verify>
|
|
|
|
<resume-signal>
|
|
Scrivi "ok" se tutto funziona correttamente.
|
|
Se trovi problemi, descrivi cosa non funziona e l'esecuzione correggerà prima di chiudere la fase.
|
|
</resume-signal>
|
|
</task>
|
|
|
|
</tasks>
|
|
|
|
<threat_model>
|
|
## Trust Boundaries
|
|
|
|
| Boundary | Description |
|
|
|----------|-------------|
|
|
| planning docs → stato del progetto | Aggiornamento documenti di tracking — nessuna superficie di attacco |
|
|
|
|
## STRIDE Threat Register
|
|
|
|
| Threat ID | Category | Component | Disposition | Mitigation Plan |
|
|
|-----------|----------|-----------|-------------|-----------------|
|
|
| T-18-05 | Repudiation | ROADMAP.md / REQUIREMENTS.md | accept | I planning docs sono in git — ogni modifica è tracciata e reversibile |
|
|
</threat_model>
|
|
|
|
<verification>
|
|
Al termine del piano:
|
|
1. REQUIREMENTS.md: CLEAN-01, CLEAN-02, CLEAN-03, CLEAN-04 → tutti "Complete"
|
|
2. ROADMAP.md: fasi 13/15/16/17 con status esplicito
|
|
3. npm run build → 0 errori
|
|
4. Checkpoint umano superato (Dashboard mostra statistiche, rotte rimosse → 404)
|
|
</verification>
|
|
|
|
<success_criteria>
|
|
- CLEAN-04: fasi v2.1 residue formalmente chiuse nei planning docs
|
|
- Planning docs aggiornati con stati finali Phase 18
|
|
- Build pulita confermata
|
|
- Verifica visuale umana completata
|
|
</success_criteria>
|
|
|
|
<output>
|
|
After completion, create `.planning/phases/18-cleanup-consolidamento/18-03-SUMMARY.md`
|
|
</output>
|