create-pwt 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -2
- package/package.json +1 -1
- package/template/.claude/skills/brainstorming/SKILL.md +90 -0
- package/template/.claude/skills/roadmap/SKILL.md +6 -4
- package/template/CLAUDE.md +2 -2
- package/template/README.md +2 -2
- package/template/system/schemas/workflow.schema.json +1 -0
- package/template/system/workflow-v5.json +68 -64
package/README.md
CHANGED
|
@@ -42,8 +42,7 @@ After phase 0, `/roadmap` generates a custom roadmap for your specific project
|
|
|
42
42
|
|
|
43
43
|
## Docs
|
|
44
44
|
|
|
45
|
-
- [
|
|
46
|
-
- [Architecture](https://github.com/FabioD95/Project-Workflow-Template/blob/main/docs/ARCHITECTURE.md) — patterns and decisions
|
|
45
|
+
- [Architecture](https://github.com/FabioD95/Project-Workflow-Template/blob/main/docs/ARCHITECTURE.md) — how it works, patterns, data model, operational guide
|
|
47
46
|
- [Roadmap](https://github.com/FabioD95/Project-Workflow-Template/blob/main/docs/ROADMAP.md) — development roadmap
|
|
48
47
|
|
|
49
48
|
## Source
|
package/package.json
CHANGED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: brainstorming
|
|
3
|
+
description: Prima chiacchierata conoscitiva — loop libero fino a checklist minima soddisfatta, poi documento strutturato + memo discorsivo
|
|
4
|
+
user-invocable: false
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
<HARD-GATE>
|
|
8
|
+
- NON chiudere il loop finché la checklist minima non è soddisfatta — non inventare dati mancanti dalla conversazione.
|
|
9
|
+
- NON interrompere il brainstorming per fare ricerche web autonome: in questa fase si raccoglie solo quello che l'utente sa già.
|
|
10
|
+
</HARD-GATE>
|
|
11
|
+
|
|
12
|
+
# Skill: Brainstorming — prima chiacchierata
|
|
13
|
+
|
|
14
|
+
## Scopo
|
|
15
|
+
|
|
16
|
+
Questa è la prima conversazione sul progetto. Non è un modulo da compilare — è una chiacchierata. L'obiettivo è far parlare l'utente, raccogliere le sue idee nella forma in cui le ha in testa, e costruire un primo documento che le rappresenti fedelmente.
|
|
17
|
+
|
|
18
|
+
Il tono è quello di un co-fondatore curioso, non di un consulente che compila un form.
|
|
19
|
+
|
|
20
|
+
## Checklist minima (interna — non mostrare all'utente)
|
|
21
|
+
|
|
22
|
+
Prima di proporre la chiusura, assicurati di aver raccolto — anche in forma parziale o informale — tutti questi elementi:
|
|
23
|
+
|
|
24
|
+
- [ ] Nome del progetto (anche provvisorio o descrittivo)
|
|
25
|
+
- [ ] Cosa fa il prodotto e per chi (anche in una frase rozza)
|
|
26
|
+
- [ ] Problema specifico che risolve
|
|
27
|
+
- [ ] Target utente
|
|
28
|
+
- [ ] Piattaforma o contesto d'uso
|
|
29
|
+
- [ ] Modello di business (anche "non lo so ancora" è una risposta valida)
|
|
30
|
+
- [ ] Vincoli noti (tempo, budget, competenze, tecnici, legali)
|
|
31
|
+
- [ ] Competitor o alternative già conosciuti dall'utente (opzionale — solo se li menziona spontaneamente o se chiedi in modo naturale)
|
|
32
|
+
|
|
33
|
+
## Comportamento del loop
|
|
34
|
+
|
|
35
|
+
**Entra nella conversazione in modo libero.** Non presentare la checklist, non fare domande in lista. Lascia che l'utente racconti. Fai domande di approfondimento su quello che ha detto, non domande predefinite in sequenza.
|
|
36
|
+
|
|
37
|
+
Esempi di domande naturali:
|
|
38
|
+
- "Raccontami di più — come ti è venuta questa idea?"
|
|
39
|
+
- "Chi vedi usarla nella testa?"
|
|
40
|
+
- "Hai in mente qualcosa che esiste già, anche parzialmente?"
|
|
41
|
+
- "Cosa ti blocca di più, in questo momento?"
|
|
42
|
+
|
|
43
|
+
**Mentre la conversazione avanza**, tieni traccia mentale della checklist. Ogni elemento che emerge — anche en passant, anche con incertezza — spuntalo.
|
|
44
|
+
|
|
45
|
+
**Quando la checklist è soddisfatta**, aggiungi in fondo alla tua risposta successiva, in modo naturale:
|
|
46
|
+
|
|
47
|
+
> "Ho abbastanza per creare un primo documento. Vuoi confermare l'idea o continuare il brainstorming?"
|
|
48
|
+
|
|
49
|
+
Continua ad aggiungerlo in fondo a ogni risposta finché l'utente non risponde esplicitamente.
|
|
50
|
+
|
|
51
|
+
**Se l'utente vuole continuare**, riprendi la conversazione normalmente — la domanda ricompare solo quando hai qualcosa di nuovo da aggiungere al documento, o alla risposta successiva.
|
|
52
|
+
|
|
53
|
+
**Se l'utente conferma**, genera i due output descritti sotto.
|
|
54
|
+
|
|
55
|
+
## Output al confirm
|
|
56
|
+
|
|
57
|
+
### 1. Scheda strutturata
|
|
58
|
+
|
|
59
|
+
Documento markdown con queste sezioni:
|
|
60
|
+
|
|
61
|
+
- **Nome progetto** — anche provvisorio
|
|
62
|
+
- **Elevator pitch** — 1-2 frasi: cosa fa e per chi
|
|
63
|
+
- **Problema** — il problema specifico e per chi è un problema
|
|
64
|
+
- **Soluzione proposta** — come il prodotto lo risolve
|
|
65
|
+
- **Target utente** — primario e secondario se emerso
|
|
66
|
+
- **Piattaforma** — web, mobile, desktop, API, altro
|
|
67
|
+
- **Modello di business** — anche "da definire"
|
|
68
|
+
- **Vincoli noti** — tempo, budget, competenze, tecnici, legali
|
|
69
|
+
- **Competitor / alternative conosciuti** — solo quelli emersi nella conversazione, senza ricerca aggiuntiva
|
|
70
|
+
|
|
71
|
+
Per ogni sezione: usa le parole dell'utente dove possibile. Non parafrasare oltre il necessario. Se un elemento non è emerso, scrivi "non discusso" — non inventare.
|
|
72
|
+
|
|
73
|
+
### 2. Memo discorsivo
|
|
74
|
+
|
|
75
|
+
Un testo libero, senza struttura predefinita, che cattura lo spirito della conversazione. Scritto in prima persona plurale ("abbiamo parlato di...", "è emerso che..."). Deve rappresentare:
|
|
76
|
+
|
|
77
|
+
- I punti toccati informalmente
|
|
78
|
+
- Le idee lanciate e scartate
|
|
79
|
+
- I dubbi aperti
|
|
80
|
+
- L'entusiasmo o le perplessità dell'utente
|
|
81
|
+
- Qualsiasi cosa non entri bene nella scheda strutturata ma valga la pena ricordare
|
|
82
|
+
|
|
83
|
+
Lunghezza: 200-400 parole. Tono: colloquiale, non formale.
|
|
84
|
+
|
|
85
|
+
## Note per l'orchestratore
|
|
86
|
+
|
|
87
|
+
- Questo skill non fa web search — mai.
|
|
88
|
+
- Il checkpoint `partial` va usato per tornare all'utente con una domanda specifica durante il loop.
|
|
89
|
+
- Quando l'utente conferma, il task-agent restituisce `done` con entrambi i documenti in `output_finale`.
|
|
90
|
+
- Il memo discorsivo viene salvato insieme alla scheda strutturata nello stesso file di output.
|
|
@@ -7,7 +7,7 @@ description: Genera la roadmap custom del progetto selezionando le task rilevant
|
|
|
7
7
|
|
|
8
8
|
Genera una roadmap custom per questo progetto selezionando dal workflow master solo le task realmente necessarie.
|
|
9
9
|
|
|
10
|
-
Invocato manualmente dopo il gate 0.
|
|
10
|
+
Invocato manualmente dopo il gate 0.5, oppure con `/roadmap --update` se il profilo progetto è cambiato.
|
|
11
11
|
|
|
12
12
|
---
|
|
13
13
|
|
|
@@ -20,9 +20,10 @@ Leggi questi file:
|
|
|
20
20
|
- `docs/phases/0/0.1-output.md`
|
|
21
21
|
- `docs/phases/0/0.2-output.md`
|
|
22
22
|
- `docs/phases/0/0.3-output.md`
|
|
23
|
+
- `docs/phases/0/0.4-output.md`
|
|
23
24
|
|
|
24
|
-
Se
|
|
25
|
-
> "Mancano gli output della fase 0
|
|
25
|
+
Se 0.1-output.md non esiste, fermati e scrivi:
|
|
26
|
+
> "Mancano gli output della fase 0. Completa la fase 0 (brainstorming + pre-validazione) prima di generare la roadmap."
|
|
26
27
|
|
|
27
28
|
### 2. Estrai il profilo progetto
|
|
28
29
|
|
|
@@ -70,7 +71,7 @@ Per ogni regola: se la condizione è vera, applica gli effetti. Le regole si som
|
|
|
70
71
|
- **Rimuovi simplify** su 2.2 se applicato da regola 4 (team vince su complessità bassa)
|
|
71
72
|
|
|
72
73
|
**Task sempre incluse (non saltabili):**
|
|
73
|
-
0.1, 0.2, 0.3, 0.4, 1.1, 1.2, 1.3, 1.6, 2.1, 2.3, 4.1, 4.2, 4.4, 5.1, 5.2, 5.3, 5.4, 6.4, 7.3, 7.5, 8.4
|
|
74
|
+
0.1, 0.2, 0.3, 0.4, 0.5, 1.1, 1.2, 1.3, 1.6, 2.1, 2.3, 4.1, 4.2, 4.4, 5.1, 5.2, 5.3, 5.4, 6.4, 7.3, 7.5, 8.4
|
|
74
75
|
|
|
75
76
|
### 4. Costruisci ROADMAP.json
|
|
76
77
|
|
|
@@ -92,6 +93,7 @@ Per ogni regola: se la condizione è vera, applica gli effetti. Le regole si som
|
|
|
92
93
|
"0.2": { "status": "completed" },
|
|
93
94
|
"0.3": { "status": "completed" },
|
|
94
95
|
"0.4": { "status": "completed" },
|
|
96
|
+
"0.5": { "status": "completed" },
|
|
95
97
|
"<id>": { "status": "included" },
|
|
96
98
|
"<id>": { "status": "skipped", "reason": "<motivo>" },
|
|
97
99
|
"<id>": { "status": "simplified", "note": "<cosa semplificare>" }
|
package/template/CLAUDE.md
CHANGED
|
@@ -41,7 +41,7 @@ Il sub-agent `task-agent` esegue il lavoro in isolamento (proprio context window
|
|
|
41
41
|
|---|---|
|
|
42
42
|
| `/task` | Orchestratore — invocato dall'utente per ogni task |
|
|
43
43
|
| `/setup` | Compila `preferences.json` interattivamente (per sezione o tutto) |
|
|
44
|
-
| `/roadmap` | Genera la roadmap custom dopo gate 0.
|
|
44
|
+
| `/roadmap` | Genera la roadmap custom dopo gate 0.5 (usa `--update` per rigenerare) |
|
|
45
45
|
| `/ricerca` | Ricerca web strutturata (competitor, prezzi servizi) |
|
|
46
46
|
| `/analisi` | Analisi strutturata (GO/NO-GO, rischi, KPI, strategia) |
|
|
47
47
|
| `/legale` | Documenti legali (privacy policy, T&C, checklist GDPR) |
|
|
@@ -60,7 +60,7 @@ Gli skill specializzati vengono invocati automaticamente dall'orchestratore `/ta
|
|
|
60
60
|
- **`/task X.Y`** → avvia una task specifica (utile per rieseguire o saltare)
|
|
61
61
|
- **`/setup`** → compila preferenze progetto interattivamente (o `/setup stack`, `/setup identity`…)
|
|
62
62
|
- **`/setup --import <percorso>`** → importa preferenze da un altro progetto
|
|
63
|
-
- **`/roadmap`** → genera roadmap custom (dopo gate 0.
|
|
63
|
+
- **`/roadmap`** → genera roadmap custom (dopo gate 0.5)
|
|
64
64
|
- **`/roadmap --update`** → rigenera la roadmap se il profilo progetto è cambiato
|
|
65
65
|
- **"Mostra stato"** → leggi e mostra `STATE.json`
|
|
66
66
|
- **"Gate N"** → esegui il gate di chiusura fase N
|
package/template/README.md
CHANGED
|
@@ -12,7 +12,7 @@ Apri questa cartella in Claude Code, poi scrivi:
|
|
|
12
12
|
/start ← avvia o riprendi dalla task corrente (unico comando da ricordare)
|
|
13
13
|
/task X.Y ← avvia una task specifica (per rieseguire o saltare)
|
|
14
14
|
/setup ← compila preferences.json interattivamente
|
|
15
|
-
/roadmap ← genera roadmap custom (dopo gate 0.
|
|
15
|
+
/roadmap ← genera roadmap custom (dopo gate 0.5)
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
Ogni sessione = una task. Claude interroga, genera, chiede approvazione, salva e si ferma.
|
|
@@ -46,7 +46,7 @@ Tra una task e l'altra Claude fornisce il comando da incollare (`/compact` o `/s
|
|
|
46
46
|
|
|
47
47
|
| Fase | Nome | Output principale |
|
|
48
48
|
|---|---|---|
|
|
49
|
-
| 0 | Ideazione e Validazione |
|
|
49
|
+
| 0 | Ideazione e Validazione | Brainstorming + pre-validazione (fattibilità, legalità, competitor) |
|
|
50
50
|
| 1 | Definizione e Fattibilità | Scope MVP + stack + costi + rischi |
|
|
51
51
|
| 2 | Pianificazione | Milestone + dipendenze + piano lavoro |
|
|
52
52
|
| 3 | Design | Flussi utente + wireframe + mockup |
|
|
@@ -10,103 +10,106 @@
|
|
|
10
10
|
"tasks": [
|
|
11
11
|
{
|
|
12
12
|
"id": "0.1",
|
|
13
|
-
"title": "
|
|
13
|
+
"title": "Brainstorming — prima chiacchierata",
|
|
14
14
|
"is_gate": false,
|
|
15
15
|
"model": "claude-sonnet-4-6",
|
|
16
|
-
"skill":
|
|
17
|
-
"session_hint": "
|
|
16
|
+
"skill": "brainstorming",
|
|
17
|
+
"session_hint": "compact",
|
|
18
18
|
"depends_on": [],
|
|
19
|
-
"context": "Prima task del progetto:
|
|
20
|
-
"questions": [
|
|
21
|
-
"Qual è il nome del progetto (anche provvisorio)?",
|
|
22
|
-
"In massimo 2 frasi: cosa fa il prodotto e per chi?",
|
|
23
|
-
"Qual è il problema specifico che risolve? Per chi è un problema?",
|
|
24
|
-
"Come lo risolve il tuo prodotto?",
|
|
25
|
-
"Chi è l'utente target primario? C'è un utente secondario?",
|
|
26
|
-
"Su quale piattaforma gira? (web, mobile, desktop, API...)",
|
|
27
|
-
"Che modello di business hai in mente? (freemium, SaaS, one-shot, no-profit...)",
|
|
28
|
-
"Hai vincoli noti? (tempo, budget, competenze mancanti, vincoli legali)"
|
|
29
|
-
],
|
|
19
|
+
"context": "Prima task del progetto: conversazione libera con l'utente per raccogliere l'idea nella forma in cui ce l'ha in testa. Niente ricerche, niente struttura rigida — si fa parlare l'utente finché non emerge un quadro sufficiente, poi si genera la scheda strutturata + un memo discorsivo della conversazione.",
|
|
20
|
+
"questions": [],
|
|
30
21
|
"output_schema": {
|
|
31
22
|
"sections": [
|
|
32
|
-
"
|
|
33
|
-
"
|
|
34
|
-
"Problema",
|
|
35
|
-
"Soluzione proposta",
|
|
36
|
-
"Target utente",
|
|
37
|
-
"Piattaforma",
|
|
38
|
-
"Modello di business",
|
|
39
|
-
"Vincoli noti"
|
|
23
|
+
"Scheda strutturata (nome, elevator pitch, problema, soluzione, target, piattaforma, modello di business, vincoli, competitor conosciuti)",
|
|
24
|
+
"Memo discorsivo della conversazione"
|
|
40
25
|
],
|
|
41
26
|
"format": "markdown",
|
|
42
|
-
"length": "1-2 pagine"
|
|
27
|
+
"length": "1-2 pagine (scheda) + 200-400 parole (memo)"
|
|
43
28
|
},
|
|
44
|
-
"dod": "
|
|
29
|
+
"dod": "Checklist minima soddisfatta dalla conversazione. Scheda strutturata compilata con le parole dell'utente. Memo discorsivo che rappresenta lo spirito della prima chiacchierata. Nessun dato inventato: le sezioni non discusse riportano 'non discusso'."
|
|
45
30
|
},
|
|
46
31
|
{
|
|
47
32
|
"id": "0.2",
|
|
48
|
-
"title": "
|
|
33
|
+
"title": "Verifica fattibilità tecnica",
|
|
49
34
|
"is_gate": false,
|
|
50
35
|
"model": "claude-sonnet-4-6",
|
|
51
|
-
"skill":
|
|
52
|
-
"session_hint": "
|
|
36
|
+
"skill": null,
|
|
37
|
+
"session_hint": "continue",
|
|
53
38
|
"depends_on": [
|
|
54
39
|
"0.1"
|
|
55
40
|
],
|
|
56
|
-
"context": "
|
|
41
|
+
"context": "Primo check di fattibilità tecnica: l'idea è realizzabile? L'obiettivo è rilevare blocchi ovvi prima di investire in analisi dettagliate. Se l'idea è palesemente impossibile (violazione di leggi fisiche, presupposti tecnologici inesistenti, prerequisiti inarrivabili), chiudi subito con STOP senza ulteriori domande. In tutti gli altri casi, fai le domande necessarie per valutare: complessità tecnica, prerequisiti richiesti (dati base, infrastruttura, utenti già presenti), risorse e competenze disponibili. Non sovrapporre con la fase 1: qui si rileva se ci sono blocchi ovvi, non come affrontarli in dettaglio.",
|
|
57
42
|
"questions": [
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"Il tuo differenziante è difendibile nel tempo o facilmente replicabile?"
|
|
43
|
+
"Hai già le competenze tecniche per realizzarlo o devi acquisirle?",
|
|
44
|
+
"Hai bisogno di dati, utenti o infrastruttura già esistenti per far funzionare il prodotto?",
|
|
45
|
+
"Ci sono dipendenze esterne critiche senza le quali il prodotto non può esistere (es. API proprietarie, accordi commerciali)?",
|
|
46
|
+
"Hai già un'idea del tempo e delle risorse necessarie per arrivare a un MVP?"
|
|
63
47
|
],
|
|
64
48
|
"output_schema": {
|
|
65
49
|
"sections": [
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"
|
|
50
|
+
"Valutazione fattibilità (VERDE: realizzabile | GIALLO: realizzabile con vincoli | ROSSO: blocco critico)",
|
|
51
|
+
"Blocchi o vincoli identificati",
|
|
52
|
+
"Verdict: PROCEDI / PROCEDI CON CAUTELA / STOP"
|
|
69
53
|
],
|
|
70
|
-
"format": "markdown
|
|
71
|
-
"length": "
|
|
54
|
+
"format": "markdown",
|
|
55
|
+
"length": "mezza pagina"
|
|
72
56
|
},
|
|
73
|
-
"dod": "
|
|
57
|
+
"dod": "Se STOP: motivazione chiara e specifica. Se PROCEDI o PROCEDI CON CAUTELA: principali vincoli tecnici identificati senza duplicare l'analisi di fase 1."
|
|
74
58
|
},
|
|
75
59
|
{
|
|
76
60
|
"id": "0.3",
|
|
77
|
-
"title": "
|
|
61
|
+
"title": "Verifica legalità di primo livello",
|
|
78
62
|
"is_gate": false,
|
|
79
63
|
"model": "claude-sonnet-4-6",
|
|
80
|
-
"skill":
|
|
64
|
+
"skill": null,
|
|
81
65
|
"session_hint": "continue",
|
|
82
66
|
"depends_on": [
|
|
83
|
-
"0.1",
|
|
84
67
|
"0.2"
|
|
85
68
|
],
|
|
86
|
-
"context": "
|
|
69
|
+
"context": "Check legale minimo: ci sono flag legali evidenti che bloccano l'idea? L'obiettivo non è una compliance review completa (quella arriva in task 1.5 e nelle task legali dedicate) ma rilevare problemi ovvi basandosi su settore, paese e natura del servizio. Se l'utente dichiara di aver già consultato un avvocato o ha una risposta chiara sulla legalità, accettarla senza ulteriori domande. Non fare ricerche legali approfondite: ragiona su ciò che l'utente descrive.",
|
|
87
70
|
"questions": [
|
|
88
|
-
"
|
|
89
|
-
"
|
|
90
|
-
"Hai già
|
|
91
|
-
"Quanto tempo puoi dedicarci? (ore/settimana)",
|
|
92
|
-
"Hai un budget per servizi esterni o collaboratori?",
|
|
93
|
-
"Qual è la tua decisione istintiva: GO, PAUSA o NO-GO? Perché?"
|
|
71
|
+
"In quale paese/mercato intendi operare principalmente?",
|
|
72
|
+
"Il prodotto opera in un settore regolamentato? (finanziario, sanitario, minori, gioco d'azzardo, sostanze)",
|
|
73
|
+
"Hai già valutato gli aspetti legali o hai parlato con un avvocato?"
|
|
94
74
|
],
|
|
95
75
|
"output_schema": {
|
|
96
76
|
"sections": [
|
|
97
|
-
"
|
|
98
|
-
"
|
|
99
|
-
"
|
|
100
|
-
"Decisione GO/PAUSA/NO-GO + motivazione"
|
|
77
|
+
"Valutazione legalità (VERDE: nessun flag | GIALLO: da approfondire | ROSSO: blocco evidente)",
|
|
78
|
+
"Flag rilevati (se presenti)",
|
|
79
|
+
"Verdict: PROCEDI / PROCEDI CON CAUTELA / STOP"
|
|
101
80
|
],
|
|
102
81
|
"format": "markdown",
|
|
103
82
|
"length": "mezza pagina"
|
|
104
83
|
},
|
|
105
|
-
"dod": "
|
|
84
|
+
"dod": "Flag legali ovvi documentati o assenza confermata. Dichiarazione utente su consulenza legale accettata come valida se presente. Nessuna analisi normativa approfondita."
|
|
106
85
|
},
|
|
107
86
|
{
|
|
108
87
|
"id": "0.4",
|
|
109
|
-
"title": "
|
|
88
|
+
"title": "Ricerca competitor esistenti",
|
|
89
|
+
"is_gate": false,
|
|
90
|
+
"model": "claude-sonnet-4-6",
|
|
91
|
+
"skill": "ricerca",
|
|
92
|
+
"session_hint": "compact",
|
|
93
|
+
"depends_on": [
|
|
94
|
+
"0.3"
|
|
95
|
+
],
|
|
96
|
+
"context": "Breve ricerca web per rispondere a: esiste già qualcosa di simile? L'obiettivo non è un'analisi competitiva approfondita (quella arriva in fase 1) ma verificare se il mercato è nuovo, affollato o già saturato. Se l'utente ha già consapevolezza del mercato, integrare con una verifica rapida. Se vuole replicare qualcosa di esistente consapevolmente, documentarlo senza giudizio — non è necessariamente un blocco.",
|
|
97
|
+
"questions": [],
|
|
98
|
+
"output_schema": {
|
|
99
|
+
"sections": [
|
|
100
|
+
"Panorama competitor (tabella: nome | descrizione | similarità con l'idea)",
|
|
101
|
+
"Posizionamento idea (nuovo / affollato / già saturo)",
|
|
102
|
+
"Consapevolezza utente documentata",
|
|
103
|
+
"Verdict: VERDE / GIALLO / ROSSO"
|
|
104
|
+
],
|
|
105
|
+
"format": "markdown con tabella",
|
|
106
|
+
"length": "mezza-1 pagina"
|
|
107
|
+
},
|
|
108
|
+
"dod": "Almeno una WebSearch effettuata. Competitor principali identificati o assenza confermata. Se il mercato è saturo, l'utente ne è consapevole."
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"id": "0.5",
|
|
112
|
+
"title": "Gate: validare fase Ideazione",
|
|
110
113
|
"is_gate": true,
|
|
111
114
|
"model": "claude-haiku-4-5-20251001",
|
|
112
115
|
"skill": null,
|
|
@@ -114,26 +117,29 @@
|
|
|
114
117
|
"depends_on": [
|
|
115
118
|
"0.1",
|
|
116
119
|
"0.2",
|
|
117
|
-
"0.3"
|
|
120
|
+
"0.3",
|
|
121
|
+
"0.4"
|
|
118
122
|
],
|
|
119
|
-
"context": "Checklist di chiusura fase 0. Verifica
|
|
123
|
+
"context": "Checklist di chiusura fase 0. Verifica che il documento di brainstorming sia completo, coerente e che nessuna delle verifiche di pre-validazione abbia rilevato blocchi critici.",
|
|
120
124
|
"questions": [],
|
|
121
125
|
"checklist": [
|
|
122
|
-
"L'idea è documentata
|
|
123
|
-
"
|
|
124
|
-
"
|
|
125
|
-
"
|
|
126
|
+
"L'idea è documentata (problema, soluzione, target, vincoli)?",
|
|
127
|
+
"Il documento usa le parole dell'utente, non parafrasi generiche?",
|
|
128
|
+
"Le sezioni non discusse riportano 'non discusso' invece di dati inventati?",
|
|
129
|
+
"Il memo discorsivo è presente e rappresenta la conversazione reale?",
|
|
130
|
+
"Nessun verdict ROSSO nelle verifiche 0.2, 0.3, 0.4 (o i flag sono stati esplicitamente accettati dall'utente)?"
|
|
126
131
|
],
|
|
127
132
|
"output_schema": {
|
|
128
133
|
"sections": [
|
|
129
134
|
"Checklist compilata",
|
|
135
|
+
"Riepilogo verdict pre-validazione (0.2 / 0.3 / 0.4)",
|
|
130
136
|
"Note eventuali",
|
|
131
137
|
"Decisione: PROCEDI / BLOCCA"
|
|
132
138
|
],
|
|
133
139
|
"format": "markdown con checklist",
|
|
134
140
|
"length": "mezza pagina"
|
|
135
141
|
},
|
|
136
|
-
"dod": "Fase 0 completata. Si può procedere alla definizione dettagliata."
|
|
142
|
+
"dod": "Fase 0 completata. Brainstorming documentato e pre-validazione superata. Si può procedere alla definizione dettagliata."
|
|
137
143
|
}
|
|
138
144
|
]
|
|
139
145
|
},
|
|
@@ -298,8 +304,6 @@
|
|
|
298
304
|
"session_hint": "continue",
|
|
299
305
|
"depends_on": [
|
|
300
306
|
"0.1",
|
|
301
|
-
"0.2",
|
|
302
|
-
"0.3",
|
|
303
307
|
"1.1",
|
|
304
308
|
"1.2",
|
|
305
309
|
"1.3",
|