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:
+37
-24
@@ -8,15 +8,20 @@ Suite operativa per un consulente di personal branding, live su hub.iamcavalli.n
|
||||
|
||||
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.
|
||||
|
||||
## Current Milestone: v2.1 Offer Studio + Proposal AI
|
||||
## Current Milestone: v2.2 Sales Loop *(reset 2026-06-19)*
|
||||
|
||||
**Goal:** Trasformare catalogo/offerte in una UX rapida stile Notion/Airtable (inline edit, tag, drag-to-compose), ristrutturare i tab del workspace progetto, ricostruire il CRM in stile Attio, poi chiudere con l'AI proposal builder → pagina pubblica → link pagamento.
|
||||
**Contesto reset:** v2.1 ha consegnato Offer Studio (catalogo + offer editor) e il CRM Attio. Dopo aver articolato il flusso commerciale reale, le fasi residue v2.1 (13/15/16/17) sono congelate/abbandonate/ri-scopate. Piano completo: `.claude/plans/glittery-sprouting-pudding.md`.
|
||||
|
||||
**Target features:**
|
||||
- **Catalogo & Offerte (Offer Studio)** — vista database stile Notion/Airtable per servizi e offerte: inline editing, tag multi-select con creazione al volo, quick-add, filtri/ricerca istantanei, composizione offerta via drag&drop (`@dnd-kit`) con totale live, import CSV one-shot per seed
|
||||
- **Workspace progetto** — rimuovere tab "Preventivo" (UI only, `quote_items` intatto — `accepted_total` resta editabile via Payments, zero perdita funzionale verificata); nuova tab "Servizi attivi" che assorbe "Offerte" (one-shot + ricorrenti mensili, schema per tracking incassi mese-per-mese); rimuovere pagina "Forecast", statistiche revenue mensile nella Dashboard
|
||||
- **CRM custom Attio-style** — tabelle/viste con inline editing, tag, filtri; assorbe i fix minori noti (FollowUpWidget IT, LeadForm types, SendQuoteModal flow)
|
||||
- **Proposal AI** — preventivo builder AI (pesca cliente + offerta + info extra) → pagina pubblica HTML/CSS redesign → link pagamento (Stripe Payment Link su offerta); assorbe ex-Phase 11 (auto-provisioning al "Vinto": crea cliente+progetto+fasi+pagamenti) ed ex-Phase 12 (notifiche email Resend per invio link)
|
||||
**Goal:** Chiudere il **loop di vendita** end-to-end: lead in pipeline Kanban (Pipedrive-style) → transcript datati delle call per cliente → agente AI (io scelgo l'offerta, l'AI personalizza) che genera il preventivo → pagina pubblica `/preventivo/[slug]` + invio email → vinto/perso manuale nel CRM. Il portale cliente post-vendita resta invariato.
|
||||
|
||||
**Target features (Phase 18→22 / R1→R5):**
|
||||
- **R1 Cleanup** — rimuovere Forecast e quote builder manuale; fondere `/admin/analytics` nella Dashboard (no doppioni)
|
||||
- **R2 Pipeline Kanban** — board lead stile Pipedrive con drag-drop tra stage; vinto/perso = cambio-colonna manuale
|
||||
- **R3 Knowledge Base** — schema + UI per transcript datati multipli per lead/cliente
|
||||
- **R4 Agente AI** — builder: admin sceglie cliente+offerta, l'AI (Claude) legge transcript + offerta → bozza preventivo; admin revisiona
|
||||
- **R5 Pagina pubblica** — `/preventivo/[slug]` HTML/CSS, accept/reject → CRM, invio link via email (Resend)
|
||||
|
||||
**Backlog post-R5** (ex Proposal AI v2.1): Stripe Payment Link su offerta (PROP-03) + auto-provisioning cliente/progetto/fasi/pagamenti al "Vinto" (PROP-04). Phase 13 (Servizi attivi/ricorrenti post-vendita) congelata, ripescabile.
|
||||
|
||||
## Requirements
|
||||
|
||||
@@ -43,29 +48,37 @@ Shipped in v2.0 (Phases 7–10, in produzione su hub.iamcavalli.net):
|
||||
- ✓ Preventivo pubblico `/quote/[token]`: stati draft→sent→viewed→accepted/rejected, `accepted_at` immutabile, raccolta email/note cliente — Phase 9
|
||||
- ✓ CRM pipeline lead: stati, activity log, reminder follow-up in dashboard — Phase 10
|
||||
|
||||
Validated in v2.1 (in corso):
|
||||
Validated in v2.1 (consegnato, in prod):
|
||||
|
||||
- ✓ Catalogo `services` come vista database (inline edit, tag multi-select, quick-add, ricerca istantanea) + consolidamento legacy — Phase 11 (OFFER-07..10, OFFER-13)
|
||||
- ✓ Offer Editor: lista filtrabile/archiviabile + 3 tier A/B/C via matrice checkbox, totale live, prezzo pubblico manuale, tag 4-dimensioni, promessa di trasformazione — Phase 12 (OFFER-11, OFFER-15..18). 55 servizi reali + tag offerta caricati.
|
||||
- ✓ CRM custom Attio-style: `/admin/leads` ridisegnata come tabella inline-edit (status, next_action, ecc.) + tag multi-select con creazione al volo; FollowUpWidget interamente in italiano; `LeadForm` tipizzato senza `useForm<any>`; `SendQuoteModal`/`assignQuoteToLead` senza rami di codice irraggiungibili — Phase 14 (CRM-08, CRM-09, CRM-10, CRM-11, CRM-12)
|
||||
|
||||
### Active
|
||||
### Active — v2.2 Sales Loop (reset 2026-06-19)
|
||||
|
||||
**Catalogo & Offerte — Offer Studio (priorità 1):**
|
||||
- [ ] Vista database stile Notion/Airtable per servizi e offerte: inline editing, tag multi-select con creazione al volo, quick-add, filtri/ricerca istantanei
|
||||
- [ ] Composizione offerta via drag&drop servizi dal catalogo (`@dnd-kit`) con totale live
|
||||
- [ ] Import CSV one-shot per seed pacchetti esistenti (porta d'ingresso, non fonte di verità)
|
||||
- [ ] Consolidamento finale `service_catalog` + `offer_services` legacy → `services` (carry-over da v2.0)
|
||||
**R1 Cleanup & Consolidamento (Phase 18):**
|
||||
- [ ] Rimuovere pagina Forecast (`/admin/forecast`) + voce sidebar (CLEAN-01)
|
||||
- [ ] Rimuovere quote builder manuale (`/admin/quotes/new`) (CLEAN-02)
|
||||
- [ ] Fondere `/admin/analytics` nella Dashboard `/admin`, eliminare la rotta duplicata (CLEAN-03)
|
||||
|
||||
**Workspace progetto (priorità 2):**
|
||||
- [ ] Rimuovere tab "Preventivo" (solo UI — `quote_items` resta intatto, `accepted_total` già editabile via Payments)
|
||||
- [ ] Nuova tab "Servizi attivi" che assorbe "Offerte": offerte one-shot + ricorrenti mensili
|
||||
- [ ] Schema per tracking incassi mese-per-mese sulle offerte ricorrenti (UI può arrivare dopo)
|
||||
- [ ] Rimuovere pagina "Forecast"; statistiche revenue mensile nella Dashboard (UI dopo mockup utente)
|
||||
**R2 Pipeline CRM Kanban (Phase 19):**
|
||||
- [ ] Board lead stile Pipedrive con colonne per stage + drag-drop (PIPE-01)
|
||||
- [ ] Vinto/perso come cambio-colonna manuale (PIPE-02)
|
||||
|
||||
**Proposal AI (priorità 3, ultimo miglio):**
|
||||
- [ ] Preventivo Builder AI: genera proposta da cliente + offerta + info extra fornite dall'utente
|
||||
- [ ] Redesign pagina pubblica preventivo (HTML/CSS) con link pagamento (Stripe Payment Link su offerta)
|
||||
- [ ] Auto-provisioning al "Vinto"/accettazione: crea cliente + progetto + fasi copiate + 1-4 pagamenti (ex-Phase 11)
|
||||
- [ ] Notifiche email per invio link preventivo/proposta (ex-Phase 12, Resend)
|
||||
**R3 Knowledge Base Cliente (Phase 20):**
|
||||
- [ ] Schema additivo transcript datati multipli per lead/cliente (KB-01)
|
||||
- [ ] UI per incollare/elencare transcript nel profilo (KB-02)
|
||||
|
||||
**R4 Agente AI — generazione preventivo (Phase 21):**
|
||||
- [ ] Builder: admin sceglie cliente+offerta, l'AI (Claude) legge transcript + offerta → bozza preventivo (AI-01)
|
||||
- [ ] Admin rivede/edita la bozza prima di pubblicare (AI-02)
|
||||
|
||||
**R5 Pagina pubblica `/preventivo/[slug]` + email (Phase 22):**
|
||||
- [ ] Pagina pubblica HTML/CSS della proposta (PUB-01)
|
||||
- [ ] Accept/reject → riflesso nel CRM (PUB-02)
|
||||
- [ ] Invio link proposta via email Resend (PUB-03)
|
||||
|
||||
**Backlog (post-R5):** Stripe Payment Link su offerta (PROP-03), auto-provisioning al "Vinto" (PROP-04), Servizi attivi/ricorrenti post-vendita (ex Phase 13).
|
||||
|
||||
### Out of Scope
|
||||
|
||||
|
||||
Reference in New Issue
Block a user