@antoneeo/agentic-sdlc-skill 1.6.0 → 1.7.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.
@@ -1,192 +1,212 @@
1
- # Template dei documenti — Agentic SDLC
2
-
3
- Regole generali:
4
- - Documenti concisi: ≤ ~80 righe ciascuno (handoff ≤ 20). Se un documento cresce oltre, va diviso, non gonfiato.
5
- - La conformità al template non è l'obiettivo: se una sezione non ha contenuto reale, scrivi esplicitamente perché non si applica. Mai testo riempitivo.
6
- - Date sempre assolute, in UTC dove indicato.
7
-
8
- ## Header dei documenti canonici (vision/ reference/ architecture/ functional/ strategic/)
9
-
10
- Ogni documento canonico durevole apre con questo frontmatter: alimenta il manifest generato `ai_docs/INDEX.md` e a un agente il segnale di freschezza prima che si fidi del contenuto.
11
-
12
- ```markdown
13
- ---
14
- description: Una rigacos'è il documento e quando leggerlo.
15
- status: CURRENT # CURRENT | SUPERSEDED | DRAFT | DEPRECATED
16
- supersedes: vecchio_doc.md # solo se rimpiazza un altro doc canonico
17
- ---
18
- # Titolo del Documento
19
- ```
20
-
21
- Quando un doc ne sostituisce un altro: il nuovo dichiara `supersedes:`, il vecchio passa a `status: SUPERSEDED` (resta come storico, non si cancella). `sdlc_check.py validate` avvisa se `status` manca o se un doc superseduto è ancora `CURRENT`.
22
-
23
- ## ai_docs/vision/project_vision.md
24
-
25
- ```markdown
26
- # Vision del Progetto
27
- Stato: DRAFT
28
- <!-- Stato: DRAFT (ricostruita dall'agente, NON è autorità di gating)
29
- oppure APPROVED (da <chi>, <data>) — solo dopo conferma esplicita dell'utente -->
30
-
31
- ## North Star
32
- ## Utenti Target
33
- ## Problema Centrale
34
- ## Obiettivi
35
- ## Non-Obiettivi
36
- ## Segnali di Successo
37
- ```
38
-
39
- ## ai_docs/vision/roadmap.md
40
-
41
- ```markdown
42
- # Roadmap
43
- Stato: DRAFT
44
-
45
- ## Milestone
46
- <!-- per ciascuna: beneficio atteso, priorità, indicatore di avanzamento -->
47
- ```
48
-
49
- ## ai_docs/vision/principles.md
50
-
51
- ```markdown
52
- # Principi Decisionali
53
- Stato: DRAFT
54
-
55
- <!-- elenco puntato dei principi stabili che guidano trade-off e scope, dal più critico -->
56
- ```
57
-
58
- ## ai_docs/vision/features/VISION_[nome_feature].md
59
-
60
- Solo per feature che attraversano più ANALYSIS o più milestone: negli altri casi la vision di feature vive nella sezione `## Vision della Feature` dell'ANALYSIS.
61
-
62
- ```markdown
63
- # Vision Feature: [Nome]
64
-
65
- ## Problema
66
- ## Beneficio Atteso
67
- ## Utenti o Stakeholder
68
- ## Segnali di Successo
69
- ## Non-Obiettivi / Fuori Scope
70
- ## Vincoli e Principi Collegati
71
- ```
72
-
73
- ## ai_docs/solutions/ANALYSIS_[nome_feature].md
74
-
75
- Il frontmatter è la fonte di verità dello stato della feature (l'indice `features_history.md` si genera da qui).
76
-
77
- ```markdown
78
- ---
79
- id: F-001
80
- feature: Nome Feature
81
- stato: PLANNED
82
- livello: L3
83
- data_inizio: 2026-06-11
84
- data_fine:
85
- ---
86
- # Analisi della Feature: [Nome]
87
-
88
- ## Obiettivo
89
- <!-- cosa si vuole ottenere e quali problemi risolve -->
90
-
91
- ## Vision della Feature
92
- <!-- beneficio atteso e problema risolto; allineamento alla vision di progetto
93
- (citare il documento e il suo stato DRAFT/APPROVED); non-obiettivi/fuori scope
94
- di questa feature; segnali di successo; stakeholder solo se non ovvi.
95
- È l'unico posto della vision di feature: il file separato VISION_[feature].md
96
- si crea solo se la feature attraversa più ANALYSIS o più milestone. -->
97
-
98
- ## Impatto
99
- <!-- file esistenti toccati, API/contratti, performance, nuove dipendenze -->
100
-
101
- ## Sicurezza e Threat Model
102
- <!-- SEMPRE obbligatoria, anche in standalone.
103
- Superfici toccate: input esterni, authN/authZ, crittografia, rete, dati personali, filesystem.
104
- Minacce principali e mitigazioni. "Nessun impatto di sicurezza" va motivato, non dichiarato. -->
105
-
106
- ## Piano d'Azione
107
- - [ ] ...
108
-
109
- ## Strategia di Test
110
- <!-- unit AAA, integrazione, esempi. Se l'ambiente non è eseguibile (firmware/HIL):
111
- verifica alternativa esplicita e motivo. -->
112
-
113
- ## Diario / Stato Corrente
114
- <!-- aggiornato a ogni milestone: dove sono, ultimo problema, prossimo passo.
115
- È la fonte dell'handoff per questa feature. -->
116
- ```
117
-
118
- Stati ammessi nel frontmatter: `PLANNED` | `IN_PROGRESS` | `COMPLETED` | `CANCELLED`. `COMPLETED` richiede `data_fine`.
119
-
120
- ## ai_docs/solutions/SPIKE_[tema].md
121
-
122
- ```markdown
123
- # Spike: [tema]
124
-
125
- ## Domanda da rispondere
126
- ## Time-box
127
- ## Cosa è stato provato
128
- ## Risposta / Esito
129
- ## Conseguenze
130
- <!-- max 1 pagina. Il codice dello spike NON è mergiabile: per produzione riclassificare L2/L3. -->
131
- ```
132
-
133
- ## ai_docs/audit/audit_plan.md (solo modalità Standalone)
134
-
135
- Il campo `Riferimento` (hash git o timestamp ISO UTC) è gestito da `sdlc_check.py mark` — non compilarlo a mano. La freschezza si verifica con `sdlc_check.py stale`.
136
-
137
- ```markdown
138
- # Piano di Audit
139
-
140
- Stati: PENDING (da analizzare) | ANALYZED (analizzato, con riferimento) | SKIPPED (con motivo).
141
-
142
- | Percorso | Stato | Riferimento | Note |
143
- |---|---|---|---|
144
- | src/core/ | PENDING | - | |
145
- | vendor/ | SKIPPED | - | codice vendored |
146
- ```
147
-
148
- ## ai_docs/audit/handoff.md
149
-
150
- Solo un puntatore, 20 righe. Il dettaglio vive nel Diario di ciascuna ANALYSIS.
151
-
152
- ```markdown
153
- # Handoff
154
- Data: 2026-06-11 (UTC)
155
- Branch: feature/sso-login
156
- Agente: Claude
157
-
158
- ## Feature attive
159
- - F-001 — vedi solutions/ANALYSIS_login_sso.md (sezione Diario)
160
-
161
- ## Prossimo passo
162
- <!-- una riga -->
163
-
164
- ## Note di sessione
165
- <!-- vision lette in questa sessione? draft da far validare? -->
166
- ```
167
-
168
- ## ai_docs/strategic/architecture.md e existing_features.md
169
-
170
- Doc canonici: aprono con l'header (`description:`/`status:`) cosi' entrano puliti nel manifest `INDEX.md`.
171
-
172
- ```markdown
173
- ---
174
- description: Stack, struttura directory e pattern architetturali del progetto.
175
- status: CURRENT
176
- ---
177
- # Architettura del Progetto
178
- ## Stack Tecnologico
179
- ## Struttura delle Directory
180
- ## Pattern Architetturali
181
- ```
182
-
183
- ```markdown
184
- ---
185
- description: Catalogo sintetico delle funzionalità esistenti del progetto.
186
- status: CURRENT
187
- ---
188
- # Funzionalità Esistenti
189
- - [ID] **Nome Feature**: Descrizione
190
- ```
191
-
192
- `ai_docs/strategic/features_history.md` e `ai_docs/INDEX.md` NON hanno template: sono generati da `sdlc_check.py index`.
1
+ # Document templates — Agentic SDLC
2
+
3
+ General rules:
4
+ - Concise documents: ≤ ~80 lines each (handoff ≤ 20). If a document grows beyond that, split it, do not inflate it.
5
+ - Template conformance is not the goal: if a section has no real content, state explicitly why it does not apply. Never filler text.
6
+ - Dates always absolute, UTC where indicated.
7
+
8
+ ## Canonical document header (vision/ reference/ architecture/ functional/ strategic/)
9
+
10
+ Every durable canonical document opens with this frontmatter: it feeds the generated manifest `ai_docs/INDEX.md` and gives an agent the freshness signal before it trusts the content.
11
+
12
+ ```markdown
13
+ ---
14
+ description: One linewhat the document is and when to read it.
15
+ status: CURRENT # CURRENT | SUPERSEDED | DRAFT | DEPRECATED
16
+ supersedes: old_doc.md # only if it replaces another canonical doc
17
+ ---
18
+ # Document Title
19
+ ```
20
+
21
+ When a doc replaces another: the new one declares `supersedes:`, the old one switches to `status: SUPERSEDED` (it stays as history, do not delete it). `sdlc_check.py validate` warns if `status` is missing or if a superseded doc is still `CURRENT`.
22
+
23
+ ## ai_docs/README.md
24
+
25
+ Curated must-read index, by hand (it is NOT the generated manifest). Created at init, updated rarely, only for real must-reads.
26
+
27
+ ```markdown
28
+ # ai_docs reading guide
29
+
30
+ Must-reads for this project, in order. The full manifest of canonical docs is
31
+ `INDEX.md` (generated — regenerate with `sdlc_check.py index`, never edit by hand).
32
+
33
+ 1. `vision/project_vision.md` — why the project exists (check its Status first).
34
+ 2. `strategic/architecture.md` — how it is built.
35
+ 3. `audit/handoff.md` — where work stopped last session (if present).
36
+
37
+ Directory purposes: `vision/` (project direction), `strategic/` (architecture and
38
+ feature catalog), `reference/` (operative guides), `solutions/` (per-feature
39
+ analyses, discovery-by-grep), `audit/` (audit plan and handoff).
40
+ ```
41
+
42
+ ## ai_docs/vision/project_vision.md
43
+
44
+ ```markdown
45
+ # Project Vision
46
+ Status: DRAFT
47
+ <!-- Status: DRAFT (reconstructed by the agent, NOT a gating authority)
48
+ or APPROVED (by <who>, <date>) — only after the user's explicit confirmation -->
49
+
50
+ ## North Star
51
+ ## Target Users
52
+ ## Core Problem
53
+ ## Goals
54
+ ## Non-Goals
55
+ ## Success Signals
56
+ ```
57
+
58
+ ## ai_docs/vision/roadmap.md
59
+
60
+ ```markdown
61
+ # Roadmap
62
+ Status: DRAFT
63
+
64
+ ## Milestones
65
+ <!-- for each: expected benefit, priority, progress indicator -->
66
+ ```
67
+
68
+ ## ai_docs/vision/principles.md
69
+
70
+ ```markdown
71
+ # Decision Principles
72
+ Status: DRAFT
73
+
74
+ <!-- bullet list of the stable principles guiding trade-offs and scope, most critical first -->
75
+ ```
76
+
77
+ ## ai_docs/vision/features/VISION_[feature_name].md
78
+
79
+ Only for features spanning multiple ANALYSIS documents or multiple milestones: otherwise the feature vision lives in the `## Feature Vision` section of the ANALYSIS.
80
+
81
+ ```markdown
82
+ # Feature Vision: [Name]
83
+
84
+ ## Problem
85
+ ## Expected Benefit
86
+ ## Users or Stakeholders
87
+ ## Success Signals
88
+ ## Non-Goals / Out of Scope
89
+ ## Related Constraints and Principles
90
+ ```
91
+
92
+ ## ai_docs/solutions/ANALYSIS_[feature_name].md
93
+
94
+ The frontmatter is the source of truth for the feature state (the `features_history.md` index is generated from it).
95
+
96
+ ```markdown
97
+ ---
98
+ id: F-001
99
+ feature: Feature Name
100
+ status: PLANNED
101
+ level: L3
102
+ start_date: 2026-06-11
103
+ end_date:
104
+ ---
105
+ # Feature Analysis: [Name]
106
+
107
+ ## Objective
108
+ <!-- what we want to achieve and which problems it solves -->
109
+
110
+ ## Feature Vision
111
+ <!-- expected benefit and problem solved; alignment with the project vision
112
+ (cite the document and its DRAFT/APPROVED state); non-goals/out-of-scope
113
+ for this feature; success signals; stakeholders only if not obvious.
114
+ This is the single home of the feature vision: the separate file
115
+ VISION_[feature].md is created only if the feature spans multiple
116
+ ANALYSIS documents or multiple milestones. -->
117
+
118
+ ## Impact
119
+ <!-- existing files touched, APIs/contracts, performance, new dependencies -->
120
+
121
+ ## Security and Threat Model
122
+ <!-- ALWAYS mandatory, also in Standalone.
123
+ Surfaces touched: external input, authN/authZ, cryptography, network, personal data, filesystem.
124
+ Main threats and mitigations. "No security impact" must be justified, not declared. -->
125
+
126
+ ## Action Plan
127
+ - [ ] ...
128
+
129
+ ## Test Strategy
130
+ <!-- AAA unit tests, integration, examples. If the environment is not executable (firmware/HIL):
131
+ explicit alternative verification and reason. -->
132
+
133
+ ## Diary / Current State
134
+ <!-- updated at every milestone: where I am, last problem, next step.
135
+ It is the handoff source for this feature. -->
136
+ ```
137
+
138
+ Allowed frontmatter states: `PLANNED` | `IN_PROGRESS` | `COMPLETED` | `CANCELLED`. `COMPLETED` requires `end_date`. (The validator also accepts the deprecated Italian keys `stato`/`livello`/`data_inizio`/`data_fine` in existing projects.)
139
+
140
+ ## ai_docs/solutions/SPIKE_[topic].md
141
+
142
+ ```markdown
143
+ # Spike: [topic]
144
+
145
+ ## Question to answer
146
+ ## Time-box
147
+ ## What was tried
148
+ ## Answer / Outcome
149
+ ## Consequences
150
+ <!-- max 1 page. Spike code is NOT mergeable: for production reclassify L2/L3. -->
151
+ ```
152
+
153
+ ## ai_docs/audit/audit_plan.md (Standalone mode only)
154
+
155
+ The `Reference` field (git hash or ISO UTC timestamp) is managed by `sdlc_check.py mark` — do not fill it by hand. Freshness is verified with `sdlc_check.py stale`.
156
+
157
+ ```markdown
158
+ # Audit Plan
159
+
160
+ States: PENDING (to analyze) | ANALYZED (analyzed, with reference) | SKIPPED (with reason).
161
+
162
+ | Path | Status | Reference | Notes |
163
+ |---|---|---|---|
164
+ | src/core/ | PENDING | - | |
165
+ | vendor/ | SKIPPED | - | vendored code |
166
+ ```
167
+
168
+ ## ai_docs/audit/handoff.md
169
+
170
+ Just a pointer, 20 lines. The detail lives in the Diary of each ANALYSIS.
171
+
172
+ ```markdown
173
+ # Handoff
174
+ Date: 2026-06-11 (UTC)
175
+ Branch: feature/sso-login
176
+ Agent: Claude
177
+
178
+ ## Active features
179
+ - F-001 see solutions/ANALYSIS_login_sso.md (Diary section)
180
+
181
+ ## Next step
182
+ <!-- one line -->
183
+
184
+ ## Session notes
185
+ <!-- visions read this session? drafts to have validated? -->
186
+ ```
187
+
188
+ ## ai_docs/strategic/architecture.md and existing_features.md
189
+
190
+ Canonical docs: they open with the header (`description:`/`status:`) so they enter the `INDEX.md` manifest cleanly.
191
+
192
+ ```markdown
193
+ ---
194
+ description: Stack, directory structure and architectural patterns of the project.
195
+ status: CURRENT
196
+ ---
197
+ # Project Architecture
198
+ ## Technology Stack
199
+ ## Directory Structure
200
+ ## Architectural Patterns
201
+ ```
202
+
203
+ ```markdown
204
+ ---
205
+ description: Concise catalog of the project's existing features.
206
+ status: CURRENT
207
+ ---
208
+ # Existing Features
209
+ - [ID] **Feature Name**: Description
210
+ ```
211
+
212
+ `ai_docs/strategic/features_history.md` and `ai_docs/INDEX.md` have NO template: they are generated by `sdlc_check.py index`.
@@ -1,44 +0,0 @@
1
- ---
2
- id: F-XXX
3
- feature: [Nome Feature]
4
- stato: PLANNED
5
- livello: L3
6
- data_inizio: YYYY-MM-DD
7
- data_fine:
8
- ---
9
- # Analisi della Feature: [Nome Feature]
10
-
11
- ## Obiettivo
12
- - Cosa si vuole ottenere?
13
- - Quale problema risolve?
14
-
15
- ## Vision della Feature
16
- - Documento guida: `ai_docs/vision/project_vision.md` o `ai_docs/vision/features/VISION_[nome_feature].md`.
17
- - Stato della Vision guida: DRAFT oppure APPROVED.
18
- - Beneficio atteso.
19
- - Non-obiettivi / fuori scope.
20
- - Segnali di successo.
21
-
22
- ## Impatto
23
- - File o moduli coinvolti.
24
- - API, contratti o formati dati impattati.
25
- - Performance, migrazioni o nuove dipendenze.
26
-
27
- ## Sicurezza e Threat Model
28
- - Superfici toccate: input esterni, authN/authZ, crittografia, rete, dati personali, filesystem.
29
- - Minacce principali.
30
- - Mitigazioni.
31
- - Se non c'e' impatto di sicurezza, motivare perche.
32
-
33
- ## Piano d'Azione
34
- - [ ] Sviluppo
35
- - [ ] Test
36
- - [ ] Chiusura documentale
37
-
38
- ## Strategia di Test
39
- - Unit test AAA.
40
- - Test di integrazione o smoke check.
41
- - Verifica alternativa se i test automatici non sono eseguibili.
42
-
43
- ## Diario / Stato Corrente
44
- - YYYY-MM-DD: Stato iniziale e prossimo passo.
@@ -1,23 +0,0 @@
1
- ---
2
- description: Stack, struttura directory e pattern architetturali del progetto.
3
- status: CURRENT
4
- ---
5
- # Architettura del Progetto
6
-
7
- ## Stack Tecnologico
8
- - **Linguaggio:** [es. TypeScript]
9
- - **Framework:** [es. React, Express]
10
- - **Database:** [es. PostgreSQL]
11
- - **Strumenti di Test:** [es. Jest, Vitest]
12
-
13
- ## Struttura delle Directory
14
- - `src/`: Codice sorgente.
15
- - `ai_docs/vision/`: Vision di progetto, roadmap, principi e mini-vision delle feature.
16
- - `ai_docs/strategic/`: Architettura, feature esistenti e storico feature.
17
- - `ai_docs/solutions/`: Analisi e piani delle singole feature.
18
- - `ai_docs/audit/`: Piano di audit e handoff di sessione.
19
- - `tests/`: Test automatici.
20
-
21
- ## Pattern Architetturali
22
- - [es. MVC, Clean Architecture, Layered Architecture]
23
- - [es. Dependency Injection]
@@ -1,8 +0,0 @@
1
- ---
2
- description: Catalogo sintetico delle funzionalità esistenti del progetto.
3
- status: CURRENT
4
- ---
5
- # Funzionalità Esistenti
6
-
7
- - [ID] **Nome Feature**: Descrizione sintetica della funzionalità.
8
- - [ID] **Altra Feature**: Dettagli su cosa permette di fare all'utente.
@@ -1,21 +0,0 @@
1
- # Vision della Feature: [Nome Feature]
2
-
3
- Usare un file separato solo quando la feature attraversa piu ANALYSIS o piu milestone. Altrimenti tenere la Vision della Feature dentro `ANALYSIS_[feature].md`.
4
-
5
- ## Problema
6
- - Quale problema specifico risolve questa feature?
7
-
8
- ## Beneficio Atteso
9
- - Quale risultato utile deve produrre per utenti o stakeholder?
10
-
11
- ## Utenti o Stakeholder
12
- - Chi beneficia direttamente o indirettamente della feature?
13
-
14
- ## Segnali di Successo
15
- - Come sapremo che la feature ha raggiunto l'obiettivo?
16
-
17
- ## Non-Obiettivi / Fuori Scope
18
- - Cosa non deve essere incluso in questa feature?
19
-
20
- ## Vincoli e Principi Collegati
21
- - Quali principi di `ai_docs/vision/principles.md` guidano questa feature?
@@ -1,5 +0,0 @@
1
- <!-- GENERATED by agentic-sdlc - update manually only if the project does not use sdlc_check.py index. -->
2
- # Feature History
3
-
4
- | ID | Feature Name | Level | Status | Start Date | End Date | Analysis Doc |
5
- |:---|:---|:---|:---|:---|:---|:---|
@@ -1,13 +0,0 @@
1
- # Principi di Vision
2
- Stato: DRAFT
3
-
4
- I principi in questo file guidano trade-off, scope e decisioni tecniche quando piu soluzioni sono possibili.
5
-
6
- ## Principi
7
- - **[Principio]**: [Descrizione pratica del criterio decisionale].
8
-
9
- ## Trade-off Preferiti
10
- - Preferire [A] rispetto a [B] quando [condizione].
11
-
12
- ## Anti-Pattern Strategici
13
- - [Comportamento o direzione da evitare perche devia dalla Vision].
@@ -1,26 +0,0 @@
1
- # Vision del Progetto
2
- Stato: DRAFT
3
-
4
- ## North Star
5
- - Qual e' l'obiettivo finale che il progetto deve preservare nel tempo?
6
-
7
- ## Problema Centrale
8
- - Quale problema reale risolve il progetto?
9
-
10
- ## Utenti Target
11
- - Chi sono utenti o stakeholder principali?
12
-
13
- ## Valore Atteso
14
- - Quale beneficio misurabile o osservabile deve produrre il progetto?
15
-
16
- ## Obiettivi
17
- - [Obiettivo 1]
18
- - [Obiettivo 2]
19
-
20
- ## Non-Obiettivi
21
- - [Cosa il progetto non vuole diventare]
22
- - [Cosa e' esplicitamente fuori scope]
23
-
24
- ## Segnali di Successo
25
- - [Indicatore qualitativo o quantitativo]
26
- - [Comportamento utente o metrica attesa]
@@ -1,9 +0,0 @@
1
- # Roadmap della Vision
2
- Stato: DRAFT
3
-
4
- | Milestone | Beneficio Atteso | Priorita | Segnali di Successo | Stato |
5
- |:---|:---|:---|:---|:---|
6
- | M1 | [Beneficio] | Alta | [Segnale] | [PLANNED] |
7
-
8
- ## Note di Direzione
9
- - Decisioni strategiche o cambi di priorita rilevanti.