docs: reset milestone v2.2 "Sales Loop"
Strategic reset after articulating the real sales flow (piano in .claude/plans/glittery-sprouting-pudding.md). v2.1 delivered Offer Studio (Phase 11+12) + CRM Attio (Phase 14); residual phases re-scoped: - Phase 13 (Servizi Attivi) → frozen (touches post-sale portal, kept as-is) - Phase 15 (Dashboard Revenue) → dropped (analytics merges into dashboard) - Phase 16/17 (Proposal AI) → re-scoped into v2.2 with transcripts added New milestone v2.2 = sales loop, Phase 18→22 (R1→R5): - R1 Cleanup: remove forecast + manual quote builder, merge analytics into dashboard - R2 Pipeline CRM Kanban (Pipedrive-style) - R3 Knowledge Base (dated call transcripts per lead/client) - R4 AI agent (admin picks offer, Claude personalizes proposal from transcripts) - R5 Public /preventivo/[slug] page + email New requirements: CLEAN-01..04, PIPE-01/02, KB-01/02, AI-01/02, PUB-01/02/03. Updated ROADMAP, REQUIREMENTS, STATE, PROJECT. No code changed. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
+91
-28
@@ -1,10 +1,12 @@
|
||||
# Requirements — ClientHub v2.1 Offer Studio + Proposal AI
|
||||
# Requirements — ClientHub (v2.1 chiuso → v2.2 Sales Loop)
|
||||
|
||||
**Defined:** 2026-06-13
|
||||
**Defined:** 2026-06-13 · **Reset:** 2026-06-19
|
||||
**Core Value:** Il cliente apre il link e vede esattamente a che punto è il suo progetto, cosa deve ancora succedere e cosa ha già approvato — senza dover scrivere email per chiedere aggiornamenti.
|
||||
|
||||
v2.0 (Phases 7–10) ha consegnato catalogo unificato, offerte con fasi, preventivo pubblico e CRM pipeline (vedi MILESTONES.md, REQUIREMENTS.md archiviato in `.planning/milestones/v2.0-REQUIREMENTS.md`). v2.1 rifà la UX di catalogo/offerte in stile database-view, ristruttura il workspace progetto, ricostruisce il CRM in stile Attio e chiude il loop commerciale con un builder preventivi AI.
|
||||
|
||||
> **RESET 2026-06-19 — milestone v2.2 "Sales Loop".** v2.1 ha consegnato Offer Studio (Phase 11+12) e CRM Attio (Phase 14). Le fasi residue v2.1 — **13 (Servizi Attivi), 15 (Dashboard Revenue), 16/17 (Proposal AI originali)** — sono state **congelate/abbandonate/ri-scopate** dopo che l'utente ha articolato il flusso commerciale reale (vedi piano `.claude/plans/glittery-sprouting-pudding.md`). Il nuovo north-star è il **loop di vendita**: lead in pipeline Kanban → transcript call → agente AI genera preventivo → pagina pubblica `/preventivo/[slug]` → vinto/perso. Requirements attivi: sezione **v2.2** più sotto.
|
||||
|
||||
## Offer Studio — Catalogo & Offerte (v1)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
@@ -20,15 +22,17 @@ v2.0 (Phases 7–10) ha consegnato catalogo unificato, offerte con fasi, prevent
|
||||
| OFFER-18 | La lista offerte è filtrabile per categoria e supporta l'archiviazione (mostra/nascondi archiviate) | Complete |
|
||||
| OFFER-13 | I dati legacy di `service_catalog` e `offer_services` sono consolidati in `services` senza perdita (migration additiva) | Complete |
|
||||
|
||||
## Workspace Progetto — Servizi Attivi (v1)
|
||||
## Workspace Progetto — Servizi Attivi (ex Phase 13 — CONGELATO v2.2)
|
||||
|
||||
> Congelato dal reset 2026-06-19: tocca il portale post-vendita che l'utente vuole lasciare invariato. Ripescabile in futuro se serve il tracking ricavi ricorrenti. (PROJ-10 "rimuovi Forecast" è confluito in CLEAN-01 v2.2.)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| PROJ-06 | La tab "Preventivo" è rimossa dal workspace progetto (solo UI — `quote_items` resta intatta, `accepted_total` resta editabile via tab Pagamenti) | Pending |
|
||||
| PROJ-07 | La tab "Offerte" diventa "Servizi attivi": mostra tutte le offerte assegnate al progetto (`project_offers`) | Pending |
|
||||
| PROJ-08 | L'utente marca ogni "servizio attivo" come one-shot o ricorrente mensile | Pending |
|
||||
| PROJ-09 | Per i servizi ricorrenti, l'utente registra in quali mesi è stata incassata la fattura (schema nuovo, additivo — UI può essere minimale) | Pending |
|
||||
| PROJ-10 | La pagina "Forecast" e la relativa voce di sidebar sono rimosse | Pending |
|
||||
| PROJ-06 | La tab "Preventivo" è rimossa dal workspace progetto (solo UI — `quote_items` resta intatta, `accepted_total` resta editabile via tab Pagamenti) | Congelato (v2.2) |
|
||||
| PROJ-07 | La tab "Offerte" diventa "Servizi attivi": mostra tutte le offerte assegnate al progetto (`project_offers`) | Congelato (v2.2) |
|
||||
| PROJ-08 | L'utente marca ogni "servizio attivo" come one-shot o ricorrente mensile | Congelato (v2.2) |
|
||||
| PROJ-09 | Per i servizi ricorrenti, l'utente registra in quali mesi è stata incassata la fattura (schema nuovo, additivo — UI può essere minimale) | Congelato (v2.2) |
|
||||
| PROJ-10 | La pagina "Forecast" e la relativa voce di sidebar sono rimosse | → CLEAN-01 (v2.2) |
|
||||
|
||||
## CRM Custom Attio-style (v1)
|
||||
|
||||
@@ -40,21 +44,67 @@ v2.0 (Phases 7–10) ha consegnato catalogo unificato, offerte con fasi, prevent
|
||||
| CRM-11 | Il form lead (`LeadForm`) valida i campi senza workaround di type-relaxation su react-hook-form | Complete |
|
||||
| CRM-12 | Il flusso `SendQuoteModal` (preventivo esistente vs nuovo) non contiene rami di codice irraggiungibili | Complete |
|
||||
|
||||
## Dashboard — Revenue Stats (v1, bloccato su mockup utente)
|
||||
## Dashboard — Revenue Stats (ex Phase 15 — ABBANDONATO v2.2)
|
||||
|
||||
> Abbandonato dal reset 2026-06-19: mockup mai arrivato, valore dubbio nel nuovo flusso. L'esigenza analytics è coperta da CLEAN-03 (fusione `/admin/analytics` nella dashboard, no fase dedicata).
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| DASH-11 | La Dashboard admin mostra le statistiche di revenue mensile (ex `/admin/forecast`, calcolate da `project_offers`) | Blocked — attesa mockup dashboard utente |
|
||||
| DASH-11 | La Dashboard admin mostra le statistiche di revenue mensile (ex `/admin/forecast`, calcolate da `project_offers`) | Dropped (v2.2 → CLEAN-03) |
|
||||
|
||||
## Proposal AI (v1)
|
||||
## Proposal AI — versione v2.1 originale (SUPERSEDED da v2.2)
|
||||
|
||||
> Ri-scopata dal reset 2026-06-19 nelle fasi v2.2 (PIPE/KB/AI/PUB) con il flusso chiaro + l'aggiunta dei transcript (che mancava). PROP-03 (Stripe Payment Link) e PROP-04 (auto-provisioning al "Vinto") restano backlog: non nel loop minimo, da rivalutare dopo R5.
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| PROP-01 | L'admin avvia un builder AI che genera una proposta a partire da cliente + offerta(e) selezionata(e) + note extra fornite manualmente | Pending |
|
||||
| PROP-02 | La pagina pubblica `/quote/[token]` è ridisegnata (HTML/CSS) per presentare la proposta generata | Pending |
|
||||
| PROP-03 | Ogni offerta/preventivo ha un campo "link di pagamento" (Stripe Payment Link) mostrato come CTA nella pagina pubblica | Pending |
|
||||
| PROP-04 | All'accettazione del preventivo, il sistema crea automaticamente cliente + progetto, copia le fasi dall'offerta e configura 1-4 pagamenti (ex-Phase 11 WIN-01..06) | Pending |
|
||||
| PROP-05 | Il sistema invia via email (Resend) il link della proposta pubblica al lead (ex-Phase 12) | Pending |
|
||||
| PROP-01 | L'admin avvia un builder AI che genera una proposta a partire da cliente + offerta(e) selezionata(e) + note extra fornite manualmente | Superseded → AI-01/AI-02 (v2.2) |
|
||||
| PROP-02 | La pagina pubblica `/quote/[token]` è ridisegnata (HTML/CSS) per presentare la proposta generata | Superseded → PUB-01 (v2.2) |
|
||||
| PROP-03 | Ogni offerta/preventivo ha un campo "link di pagamento" (Stripe Payment Link) mostrato come CTA nella pagina pubblica | Backlog (post-R5) |
|
||||
| PROP-04 | All'accettazione del preventivo, il sistema crea automaticamente cliente + progetto, copia le fasi dall'offerta e configura 1-4 pagamenti (ex-Phase 11 WIN-01..06) | Backlog (post-R5) |
|
||||
| PROP-05 | Il sistema invia via email (Resend) il link della proposta pubblica al lead (ex-Phase 12) | Superseded → PUB-03 (v2.2) |
|
||||
|
||||
## v2.2 — Sales Loop: Lead → AI → Preventivo (ATTIVO)
|
||||
|
||||
> Reset 2026-06-19. Il flusso commerciale articolato dall'utente sostituisce le fasi residue v2.1. Fasi eseguite in ordine R1→R5 (numerazione GSD continua: Phase 18→22). Le fasi 11/12/14 restano completate.
|
||||
|
||||
### Cleanup & Consolidamento (Phase 18 / R1)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| CLEAN-01 | La pagina Forecast (`/admin/forecast`) e la sua voce di sidebar sono rimosse | Pending |
|
||||
| CLEAN-02 | Il quote builder manuale (`/admin/quotes/new`) e il suo entry point sono rimossi (superato dall'agente AI) | Pending |
|
||||
| CLEAN-03 | Le statistiche di `/admin/analytics` sono fuse nella Dashboard `/admin` (vista unica); la rotta duplicata è eliminata | Pending |
|
||||
| CLEAN-04 | Le fasi v2.1 residue (13/15/16/17) sono archiviate/ri-scopate nel planning | In corso (questo reset) |
|
||||
|
||||
### Pipeline CRM Kanban (Phase 19 / R2)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| PIPE-01 | I lead sono visualizzabili in una board Kanban stile Pipedrive con colonne per stage e drag-drop per cambiare stage | Pending |
|
||||
| PIPE-02 | Spostare un lead nelle colonne "Vinto"/"Perso" è il cambio-stato manuale dell'esito | Pending |
|
||||
|
||||
### Knowledge Base Cliente — Transcript (Phase 20 / R3)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| KB-01 | Schema additivo per memorizzare transcript datati e multipli per lead/cliente | Pending |
|
||||
| KB-02 | L'admin incolla ed elenca i transcript (storico ordinato per data) nel dettaglio lead/cliente | Pending |
|
||||
|
||||
### Agente AI — Generazione preventivo (Phase 21 / R4)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| AI-01 | L'admin seleziona cliente + offerta; l'agente AI (Claude) legge i transcript + i dati dell'offerta e genera una bozza di preventivo personalizzata | Pending |
|
||||
| AI-02 | L'admin rivede ed edita la bozza generata prima di pubblicarla | Pending |
|
||||
|
||||
### Pagina pubblica preventivo + email (Phase 22 / R5)
|
||||
|
||||
| ID | Requirement | Status |
|
||||
|----|-------------|--------|
|
||||
| PUB-01 | La proposta generata è pubblicata come pagina pubblica HTML/CSS a `/preventivo/[slug]` (evolve la meccanica di `/quote/[token]`) | Pending |
|
||||
| PUB-02 | Il cliente accetta/rifiuta dalla pagina; l'esito si riflette nel CRM (conferma vinto/perso manuale lato admin) | Pending |
|
||||
| PUB-03 | Il link della proposta viene inviato al lead via email (Resend) | Pending |
|
||||
|
||||
## v2 Requirements (Deferred)
|
||||
|
||||
@@ -101,23 +151,36 @@ Popolata dal roadmapper durante la creazione della roadmap.
|
||||
| OFFER-17 | Phase 12 | Complete |
|
||||
| OFFER-18 | Phase 12 | Complete |
|
||||
| OFFER-12 | Deferred (v2) | Rimandato 2026-06-14 |
|
||||
| PROJ-06 | Phase 13 | Pending |
|
||||
| PROJ-07 | Phase 13 | Pending |
|
||||
| PROJ-08 | Phase 13 | Pending |
|
||||
| PROJ-09 | Phase 13 | Pending |
|
||||
| PROJ-10 | Phase 13 | Pending |
|
||||
| PROJ-06 | Phase 13 | Congelato (v2.2) |
|
||||
| PROJ-07 | Phase 13 | Congelato (v2.2) |
|
||||
| PROJ-08 | Phase 13 | Congelato (v2.2) |
|
||||
| PROJ-09 | Phase 13 | Congelato (v2.2) |
|
||||
| PROJ-10 | Phase 13 | → CLEAN-01 |
|
||||
| CRM-08 | Phase 14 | Complete |
|
||||
| CRM-09 | Phase 14 | Complete |
|
||||
| CRM-10 | Phase 14 | Complete |
|
||||
| CRM-11 | Phase 14 | Complete |
|
||||
| CRM-12 | Phase 14 | Complete |
|
||||
| DASH-11 | Phase 15 | Blocked |
|
||||
| PROP-03 | Phase 16 | Pending |
|
||||
| PROP-04 | Phase 16 | Pending |
|
||||
| PROP-01 | Phase 17 | Pending |
|
||||
| PROP-02 | Phase 17 | Pending |
|
||||
| PROP-05 | Phase 17 | Pending |
|
||||
| DASH-11 | Phase 15 | Dropped (→ CLEAN-03) |
|
||||
| PROP-03 | Phase 16 | Backlog (post-R5) |
|
||||
| PROP-04 | Phase 16 | Backlog (post-R5) |
|
||||
| PROP-01 | Phase 17 | Superseded → AI-01/02 |
|
||||
| PROP-02 | Phase 17 | Superseded → PUB-01 |
|
||||
| PROP-05 | Phase 17 | Superseded → PUB-03 |
|
||||
| CLEAN-01 | Phase 18 (R1) | Pending |
|
||||
| CLEAN-02 | Phase 18 (R1) | Pending |
|
||||
| CLEAN-03 | Phase 18 (R1) | Pending |
|
||||
| CLEAN-04 | Phase 18 (R1) | In corso |
|
||||
| PIPE-01 | Phase 19 (R2) | Pending |
|
||||
| PIPE-02 | Phase 19 (R2) | Pending |
|
||||
| KB-01 | Phase 20 (R3) | Pending |
|
||||
| KB-02 | Phase 20 (R3) | Pending |
|
||||
| AI-01 | Phase 21 (R4) | Pending |
|
||||
| AI-02 | Phase 21 (R4) | Pending |
|
||||
| PUB-01 | Phase 22 (R5) | Pending |
|
||||
| PUB-02 | Phase 22 (R5) | Pending |
|
||||
| PUB-03 | Phase 22 (R5) | Pending |
|
||||
|
||||
---
|
||||
*Requirements defined: 2026-06-13*
|
||||
*Last updated: 2026-06-18 — Phase 12 complete: OFFER-11, OFFER-15, OFFER-16, OFFER-17, OFFER-18 → Complete*
|
||||
*Last updated: 2026-06-19 — RESET v2.2 "Sales Loop": Phase 13 congelata, 15 abbandonata, 16/17 ri-scopate; nuovi requirements CLEAN/PIPE/KB/AI/PUB (Phase 18→22)*
|
||||
|
||||
Reference in New Issue
Block a user