@atlashub/smartstack-cli 3.12.0 → 3.14.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.
Files changed (27) hide show
  1. package/package.json +2 -2
  2. package/templates/skills/business-analyse/SKILL.md +3 -2
  3. package/templates/skills/business-analyse/_module-loop.md +5 -5
  4. package/templates/skills/business-analyse/questionnaire.md +1 -1
  5. package/templates/skills/business-analyse/references/cache-warming-strategy.md +11 -23
  6. package/templates/skills/business-analyse/references/cadrage-pre-analysis.md +112 -0
  7. package/templates/skills/business-analyse/references/cadrage-structure-cards.md +6 -1
  8. package/templates/skills/business-analyse/references/deploy-data-build.md +1 -1
  9. package/templates/skills/business-analyse/references/html-data-mapping.md +1 -1
  10. package/templates/skills/business-analyse/references/robustness-checks.md +1 -1
  11. package/templates/skills/business-analyse/references/spec-auto-inference.md +1 -1
  12. package/templates/skills/business-analyse/schemas/application-schema.json +33 -1
  13. package/templates/skills/business-analyse/schemas/sections/metadata-schema.json +1 -1
  14. package/templates/skills/business-analyse/steps/step-00-init.md +18 -22
  15. package/templates/skills/business-analyse/steps/step-01-cadrage.md +300 -135
  16. package/templates/skills/business-analyse/steps/step-02-decomposition.md +38 -16
  17. package/templates/skills/business-analyse/steps/step-03a-data.md +5 -31
  18. package/templates/skills/business-analyse/steps/step-03a1-setup.md +2 -2
  19. package/templates/skills/business-analyse/steps/step-03b-ui.md +20 -11
  20. package/templates/skills/business-analyse/steps/step-03d-validate.md +6 -6
  21. package/templates/skills/business-analyse/steps/step-04-consolidation.md +5 -31
  22. package/templates/skills/business-analyse/steps/step-04c-decide.md +1 -1
  23. package/templates/skills/business-analyse/steps/step-05a-handoff.md +1 -1
  24. package/templates/skills/business-analyse/steps/step-05b-deploy.md +3 -3
  25. package/templates/skills/business-analyse/steps/step-05c-ralph-readiness.md +1 -1
  26. package/templates/skills/business-analyse/templates/tpl-frd.md +1 -1
  27. package/templates/skills/business-analyse/references/cadrage-vibe-coding.md +0 -87
@@ -2,7 +2,7 @@
2
2
  name: step-02-decomposition
3
3
  description: Module decomposition - identify modules, dependency graph, topological sort, client checkpoint
4
4
  model: opus
5
- next_step: steps/step-03a-data.md
5
+ next_step: steps/step-03a1-setup.md
6
6
  ---
7
7
 
8
8
  > **Context files:** `_shared.md`
@@ -38,7 +38,7 @@ ba-reader.findFeature({feature_id})
38
38
 
39
39
  IF status already "decomposed":
40
40
  Display: "Decomposition already completed. Loading next step."
41
- Load: steps/step-03a-data.md
41
+ Load: steps/step-03a1-setup.md
42
42
  STOP
43
43
 
44
44
  ### 2. Module Identification
@@ -70,13 +70,20 @@ For each mustHave/shouldHave scope item:
70
70
  > "priority": "must|should|could",
71
71
  > "sortOrder": 0,
72
72
  > "entities": ["Anticipated entity names"],
73
- > "estimatedComplexity": "simple|medium|complex"
73
+ > "estimatedComplexity": "simple|medium|complex",
74
+ > "anticipatedSections": [
75
+ > { "code": "list", "description": "Main entity list with filters", "resources": ["entity-grid", "entity-filter"] },
76
+ > { "code": "detail", "description": "Entity detail view", "resources": ["entity-card"] },
77
+ > { "code": "create", "description": "Create new entity", "resources": ["entity-form"] }
78
+ > ]
74
79
  > }
75
80
  > ```
76
81
  > **MANDATORY fields:** `code`, `description`, `featureType`, `dependencies`, `dependents`, `status`, `priority`, `sortOrder`, `entities`, `estimatedComplexity`
82
+ > **OPTIONAL fields:** `anticipatedSections` (from cadrage coverageMatrix, enriched here with resources)
77
83
  > **status:** Always `"pending"` at creation (updated to `"in-progress"` → `"specified"` → `"validated"` by step-03/04)
78
84
  > **sortOrder:** Integer from topological sort (0 = foundation layer)
79
85
  > **featureJsonPath:** Set to null at creation; updated to actual path when module feature.json is created in step-03
86
+ > **anticipatedSections:** Array of `{ code, description, resources[] }` objects. Derived from `cadrage.coverageMatrix[].anticipatedSections` aggregated per module, then refined during decomposition. These serve as starting point for step-03a1 section walkthrough.
80
87
 
81
88
  **Complexity estimation rules:**
82
89
  | Criteria | Simple | Medium | Complex |
@@ -93,14 +100,17 @@ Display the identified modules as markdown:
93
100
  ```
94
101
  ## Modules identifiés pour {application_name}
95
102
 
96
- | # | Module | Type | Priorité | Complexité | Entités pressenties |
97
- |---|--------|------|----------|------------|---------------------|
98
- | 1 | Customers | data-centric | must | medium | Customer, Address, Contact |
99
- | 2 | Products | data-centric | must | simple | Product, Category |
100
- | 3 | Orders | workflow | must | complex | Order, OrderLine |
101
- | 4 | Invoices | workflow | should | medium | Invoice, InvoiceLine, Payment |
103
+ | # | Module | Type | Priorité | Complexité | Sections pressenties | Entités |
104
+ |---|--------|------|----------|------------|---------------------|---------|
105
+ | 1 | Customers | data-centric | must | medium | list, detail, create, edit | Customer, Address, Contact |
106
+ | 2 | Products | data-centric | must | simple | list, detail, create | Product, Category |
107
+ | 3 | Orders | workflow | must | complex | list, detail, create, approve, history | Order, OrderLine |
108
+ | 4 | Invoices | workflow | should | medium | list, detail, create, export | Invoice, InvoiceLine, Payment |
102
109
  ```
103
110
 
111
+ > **Sections are derived from:** cadrage.coverageMatrix[].anticipatedSections aggregated per module.
112
+ > If cadrage did not provide sections, infer from module featureType using the standard section table.
113
+
104
114
  Ask via AskUserQuestion:
105
115
  ```
106
116
  question: "Ces modules correspondent-ils à votre vision de l'application ?"
@@ -191,12 +201,24 @@ Products ───┘
191
201
 
192
202
  ### Ordre de traitement
193
203
 
194
- | Ordre | Module | Dépend de | Complexité |
195
- |-------|--------|-----------|------------|
196
- | 1 | Customers | (aucune) | medium |
197
- | 2 | Products | (aucune) | simple |
198
- | 3 | Orders | Customers, Products | complex |
199
- | 4 | Invoices | Orders, Customers | medium |
204
+ | Ordre | Module | Dépend de | Complexité | Sections pressenties |
205
+ |-------|--------|-----------|------------|---------------------|
206
+ | 1 | Customers | (aucune) | medium | list, detail, create, edit |
207
+ | 2 | Products | (aucune) | simple | list, detail, create |
208
+ | 3 | Orders | Customers, Products | complex | list, detail, create, approve, history |
209
+ | 4 | Invoices | Orders, Customers | medium | list, detail, create, export |
210
+
211
+ ### Détail des sections et resources par module
212
+
213
+ **Module : {module_name}**
214
+ | Section | Description | Resources pressenties |
215
+ |---------|-------------|----------------------|
216
+ | list | {description} | {entity}-grid, {entity}-filter |
217
+ | detail | {description} | {entity}-card, {entity}-tabs |
218
+ | create | {description} | {entity}-form |
219
+ | ... | ... | ... |
220
+
221
+ (Repeat for each module)
200
222
 
201
223
  > Les modules seront spécifiés dans cet ordre. Chaque module sera
202
224
  > détaillé avec ses sections, entités, permissions et maquettes,
@@ -292,4 +314,4 @@ When `workflow.mode = "module"` or only 1 scope item identified:
292
314
 
293
315
  ## NEXT STEP
294
316
 
295
- Load: `./step-03a-data.md`
317
+ Load: `./step-03a1-setup.md`
@@ -1,42 +1,16 @@
1
1
  ---
2
2
  name: step-03a-data
3
- description: Per-module data specification - REDIRECTS to step-03a1 (refactored into 2 sub-steps)
3
+ description: "DEPRECATED REDIRECT - All references now point directly to step-03a1-setup.md"
4
4
  model: opus
5
5
  next_step: steps/step-03a1-setup.md
6
6
  ---
7
7
 
8
- > **NOTICE:** This step has been refactored into 2 sub-steps for better context management.
8
+ > **DEPRECATED:** This file is no longer loaded in normal workflow. All step references now point directly to `step-03a1-setup.md`. This file is kept for historical reference only.
9
9
 
10
- # Step 3a: Specification - Data & Logic (Entry Point)
11
-
12
- This step has been divided into 2 focused sub-steps:
10
+ # Step 3a: Specification - Data & Logic (Refactored)
13
11
 
12
+ Refactored into 2 sub-steps:
14
13
  1. **step-03a1-setup.md** - Module setup, sections walkthrough, questionnaires, cross-refs
15
14
  2. **step-03a2-analysis.md** - Analysis section: objectives, entities, business rules, process flow
16
15
 
17
- ---
18
-
19
- ## Automatic Redirect
20
-
21
- **Loading:** `./step-03a1-setup.md`
22
-
23
- The data specification process will execute in sequence:
24
- - step-03a1-setup → step-03a2-analysis → step-03b-ui
25
-
26
- ---
27
-
28
- ## Why Refactored?
29
-
30
- **Before:** 468 lines in single file (exceeded 400-line recommendation)
31
-
32
- **After:** 2 focused files (~320 + ~150 lines)
33
-
34
- **Benefits:**
35
- - Better context management
36
- - Clearer separation: setup vs analysis
37
- - Module preparation separated from entity/logic definition
38
- - Reduced cognitive load per step
39
-
40
- ---
41
-
42
- **Proceeding to step-03a1-setup.md...**
16
+ Flow: step-03a1-setup → step-03a2-analysis → step-03b-ui
@@ -60,7 +60,7 @@ ba-reader.readApplicationContext({feature_id})
60
60
 
61
61
  IF module already specified (status = "specified" in master):
62
62
  Increment currentModuleIndex, re-check
63
- IF all modules specified → Load step-04-consolidation.md, STOP
63
+ IF all modules specified → Load step-04a-collect.md, STOP
64
64
 
65
65
  ### 1b. Cache Warming for Module Loop (FIRST MODULE ONLY)
66
66
 
@@ -74,7 +74,7 @@ IF currentModuleIndex === 0:
74
74
  "~/.claude/skills/business-analyse/references/spec-auto-inference.md",
75
75
  "~/.claude/skills/business-analyse/references/ui-resource-cards.md",
76
76
  "~/.claude/skills/business-analyse/references/ui-dashboard-spec.md",
77
- "~/.claude/skills/business-analyse/references/cadrage-vibe-coding.md"
77
+ "~/.claude/skills/business-analyse/references/cadrage-pre-analysis.md"
78
78
  ];
79
79
 
80
80
  for (const file of moduleRefs) {
@@ -12,7 +12,7 @@ next_step: steps/step-03c-compile.md
12
12
  ## MANDATORY EXECUTION RULES
13
13
 
14
14
  - ALWAYS use ULTRATHINK mode
15
- - This step is EXECUTED ONCE PER MODULE, after step-03a-data.md
15
+ - This step is EXECUTED ONCE PER MODULE, after step-03a1-setup.md and step-03a2-analysis.md
16
16
  - **WIREFRAME RULE:** Every section MUST have a wireframe in `specification.uiWireframes[]`. No section without a validated mockup.
17
17
  - **ID NAMING RULE (MANDATORY, NO EXCEPTION):**
18
18
  All IDs MUST include a module prefix to guarantee application-wide uniqueness.
@@ -136,7 +136,17 @@ See [references/ui-resource-cards.md](../references/ui-resource-cards.md) for ex
136
136
  > **BLOCKING RULE:** Every section MUST have a wireframe. No section proceeds to entity definition (step 6) without a validated mockup stored in `specification.uiWireframes[]`.
137
137
  > **HTML INTEGRATION:** These wireframes are also rendered in the interactive HTML document (`ba-interactive.html`) deployed at handoff. The client can review and annotate mockups directly in their browser.
138
138
 
139
- For each confirmed section, generate an ASCII mockup and validate with client:
139
+ **Procedural sequence (MANDATORY follow in exact order):**
140
+
141
+ 1. **Generate** an ASCII mockup for each confirmed section
142
+ 2. **Display** each mockup in the conversation output with a markdown header:
143
+ ```
144
+ ### {SectionName} — Wireframe
145
+ ```
146
+ followed by the ASCII art in a code block. **ALL mockups MUST be visible text in the conversation.**
147
+ 3. **Only THEN** call `AskUserQuestion` to ask the client to validate the displayed mockups (batch 2-3 at once if possible)
148
+
149
+ > **BLOCKING RULE:** You MUST NOT call AskUserQuestion for wireframe validation until ALL mockups are displayed as visible text in the conversation. The client cannot validate what they cannot see.
140
150
 
141
151
  Example for a list section:
142
152
 
@@ -160,8 +170,6 @@ See [references/ui-resource-cards.md](../references/ui-resource-cards.md) for ex
160
170
  **REQUIRED fields:** `screen`, `mockup`, `elements`, `section`, `componentMapping`, `layout` are ALL mandatory.
161
171
  A wireframe without `componentMapping` or `layout` will FAIL validation in step 9.
162
172
 
163
- Ask client to validate each mockup via AskUserQuestion (batch 2-3 mockups at once if possible).
164
-
165
173
  > **IF client rejects a mockup:** Revise and re-propose until validated. Do NOT proceed without client approval on the layout.
166
174
 
167
175
  ### 3b-bis. Wireframe-to-Component Mapping
@@ -234,13 +242,14 @@ See [references/ui-dashboard-spec.md](../references/ui-dashboard-spec.md) for th
234
242
 
235
243
  Before proceeding to step-03c-compile.md, VERIFY:
236
244
 
237
- 1. **Wireframes exist for all sections** in `specification.uiWireframes[]`
238
- 2. **All wireframes have componentMapping** with smarter mapping rules
239
- 3. **All wireframes have layout** with regions and resourceRef references
240
- 4. **All resource references** in layout.regions[].components[].resourceRef exist in sections[].resources[]
241
- 5. **State machines defined** (if module has status fields) in `specification.lifeCycles[]`
242
- 6. **Form field completeness** SmartForm fields[] covers ALL entity attributes except system/audit fields
243
- 7. **Navigation entries for all sections** — Every section (including dashboard) has a corresponding entry in `specification.navigation.entries[]`
245
+ 1. **Wireframes displayed and validated** — ALL wireframes were output as visible ASCII art in the conversation AND validated by the client via AskUserQuestion
246
+ 2. **Wireframes exist for all sections** in `specification.uiWireframes[]`
247
+ 3. **All wireframes have componentMapping** with smarter mapping rules
248
+ 4. **All wireframes have layout** with regions and resourceRef references
249
+ 5. **All resource references** in layout.regions[].components[].resourceRef exist in sections[].resources[]
250
+ 6. **State machines defined** (if module has status fields) in `specification.lifeCycles[]`
251
+ 7. **Form field completeness** — SmartForm fields[] covers ALL entity attributes except system/audit fields
252
+ 8. **Navigation entries for all sections** — Every section (including dashboard) has a corresponding entry in `specification.navigation.entries[]`
244
253
 
245
254
  **IF any check fails → FIX before proceeding.** Do NOT load step-03c-compile with incomplete data.
246
255
 
@@ -2,7 +2,7 @@
2
2
  name: step-03d-validate
3
3
  description: Per-module validation, write feature.json, incremental HTML deploy, loop decision
4
4
  model: sonnet
5
- next_step: steps/step-03a-data.md OR steps/step-04-consolidation.md (conditional)
5
+ next_step: steps/step-03a1-setup.md OR steps/step-04a-collect.md (conditional)
6
6
  ---
7
7
 
8
8
  > **Context files:** `_shared.md` | `_module-loop.md`
@@ -279,12 +279,12 @@ ba-writer.advanceModuleLoop({feature_id})
279
279
 
280
280
  IF currentModuleIndex < moduleOrder.length:
281
281
  Display: "→ Module suivant: {nextModule} ({currentModuleIndex + 1}/{total})"
282
- Load: steps/step-03a-data.md
282
+ Load: steps/step-03a1-setup.md
283
283
 
284
284
  IF currentModuleIndex >= moduleOrder.length:
285
285
  Display: "═══ Tous les modules spécifiés! Passage à la consolidation... ═══"
286
286
  ba-writer.updateStatus({feature_id}, "specified")
287
- Load: steps/step-04-consolidation.md
287
+ Load: steps/step-04a-collect.md
288
288
  ```
289
289
 
290
290
  ---
@@ -308,7 +308,7 @@ When only 1 module in moduleOrder:
308
308
 
309
309
  - Same full validation flow
310
310
  - Skip cross-module references (section 5)
311
- - After validation → direct to step-04-consolidation.md (auto-consolidation)
311
+ - After validation → direct to step-04a-collect.md (auto-consolidation)
312
312
 
313
313
  ---
314
314
 
@@ -372,5 +372,5 @@ Read metadata.workflow.currentModule
372
372
 
373
373
  Conditional:
374
374
 
375
- - IF modules remaining → Load `steps/step-03a-data.md`
376
- - IF all modules done → Load `steps/step-04-consolidation.md`
375
+ - IF modules remaining → Load `steps/step-03a1-setup.md`
376
+ - IF all modules done → Load `steps/step-04a-collect.md`
@@ -1,43 +1,17 @@
1
1
  ---
2
2
  name: step-04-consolidation
3
- description: Cross-module consolidation - REDIRECTS to step-04a (refactored into 3 sub-steps)
3
+ description: "DEPRECATED REDIRECT - All references now point directly to step-04a-collect.md"
4
4
  model: opus
5
5
  next_step: steps/step-04a-collect.md
6
6
  ---
7
7
 
8
- > **NOTICE:** This step has been refactored into 3 sub-steps for better context management.
8
+ > **DEPRECATED:** This file is no longer loaded in normal workflow. All step references now point directly to `step-04a-collect.md`. This file is kept for historical reference only.
9
9
 
10
- # Step 4: Consolidation (Entry Point)
11
-
12
- This step has been divided into 3 focused sub-steps:
10
+ # Step 4: Consolidation (Refactored)
13
11
 
12
+ Refactored into 3 sub-steps:
14
13
  1. **step-04a-collect.md** - Collect module summaries and cross-module interactions
15
14
  2. **step-04b-analyze.md** - Analyze permissions, validation, E2E flows, and risks
16
15
  3. **step-04c-decide.md** - Obtain final approval and write consolidation
17
16
 
18
- ---
19
-
20
- ## Automatic Redirect
21
-
22
- **Loading:** `./step-04a-collect.md`
23
-
24
- The consolidation process will execute in sequence:
25
- - step-04a-collect → step-04b-analyze → step-04c-decide → step-05a-handoff
26
-
27
- ---
28
-
29
- ## Why Refactored?
30
-
31
- **Before:** 628 lines in single file (exceeded 400-line recommendation)
32
-
33
- **After:** 3 focused files (~200-280 lines each)
34
-
35
- **Benefits:**
36
- - Better context management
37
- - Clearer separation of concerns (collect → analyze → decide)
38
- - Easier to resume from specific consolidation phase
39
- - Reduced cognitive load per step
40
-
41
- ---
42
-
43
- **Proceeding to step-04a-collect.md...**
17
+ Flow: step-04a-collect → step-04b-analyze → step-04c-decide → step-05a-handoff
@@ -37,7 +37,7 @@ options:
37
37
  ```
38
38
 
39
39
  IF "Réviser un module":
40
- Ask which module → set currentModuleIndex to that module → load step-03a-data.md
40
+ Ask which module → set currentModuleIndex to that module → load step-03a1-setup.md
41
41
 
42
42
  IF "Modifier les interactions":
43
43
  Re-enter step-04a-collect.md (sections 2-4)
@@ -36,7 +36,7 @@ ba-reader.findFeature({feature_id})
36
36
  → Check status = "consolidated"
37
37
  ```
38
38
 
39
- **IF** status ≠ "consolidated" → **STOP**. Return to step-04-consolidation.md.
39
+ **IF** status ≠ "consolidated" → **STOP**. Return to step-04a-collect.md.
40
40
 
41
41
  Display validation summary:
42
42
 
@@ -19,7 +19,7 @@ next_step: steps/step-05c-ralph-readiness.md
19
19
  - **ALWAYS** follow references/html-data-mapping.md EXACTLY for FEATURE_DATA and EMBEDDED_ARTIFACTS mapping
20
20
  - **FEATURE_DATA.moduleSpecs MUST be populated for EACH module** — empty moduleSpecs = BROKEN specification tabs
21
21
  - **FEATURE_DATA.cadrage.scope must use HTML keys** (vital/important/optional/excluded) NOT feature.json keys (mustHave/shouldHave/couldHave/outOfScope)
22
- - **FEATURE_DATA.metadata.vibeCoding must be set** from master.metadata.vibeCoding (controls section visibility)
22
+ - **FEATURE_DATA.metadata.analysisMode must be set** from master.metadata.analysisMode (always "interactive")
23
23
  - **NEVER leave FEATURE_DATA or EMBEDDED_ARTIFACTS empty or partial**
24
24
 
25
25
  ## YOUR TASK
@@ -214,7 +214,7 @@ IF ANY category shows FAIL → **STOP AND RE-RUN `ss derive-prd`**. DO NOT proce
214
214
  - FEATURE_DATA must be pre-populated with ALL analysis data (empty data = BUG)
215
215
  - FEATURE_DATA.**moduleSpecs** MUST be populated for EACH module (use cases, business rules, entities, permissions) — empty moduleSpecs = BROKEN specification tabs
216
216
  - FEATURE_DATA.**cadrage.scope** must use HTML keys (vital/important/optional/excluded) NOT feature.json keys (mustHave/shouldHave/couldHave/outOfScope)
217
- - FEATURE_DATA.**metadata.vibeCoding** must be set from `master.metadata.vibeCoding` (controls section visibility)
217
+ - FEATURE_DATA.**metadata.analysisMode** must be set from `master.metadata.analysisMode` (always "interactive")
218
218
  - EMBEDDED_ARTIFACTS contains wireframes, E2E diagrams, dependency graph
219
219
  - Both objects are serialized as JSON with 2-space indentation
220
220
  - All data mapped from master and module feature.json files — follow `html-data-mapping.md` EXACTLY
@@ -233,7 +233,7 @@ See [references/deploy-data-build.md](../references/deploy-data-build.md) for:
233
233
  **Critical reminders:**
234
234
  - FEATURE_DATA.**moduleSpecs** MUST have ONE entry per module (empty = BUG)
235
235
  - FEATURE_DATA.**cadrage.scope** converts `mustHave→vital`, `shouldHave→important`, `couldHave→optional`, `outOfScope→excluded`
236
- - FEATURE_DATA.**metadata.vibeCoding** from `master.metadata.vibeCoding`
236
+ - FEATURE_DATA.**metadata.analysisMode** from `master.metadata.analysisMode`
237
237
  - Also reference `references/html-data-mapping.md` for the full mapping spec
238
238
 
239
239
  ---
@@ -203,7 +203,7 @@ Total: 4 cross-module references, all resolvable
203
203
 
204
204
  **IF ANY reference is unresolvable:**
205
205
  - **BLOCKING ERROR:** List broken references with module and field names
206
- - **FIX:** Return to step-03a-data.md for affected modules to fix entity references
206
+ - **FIX:** Return to step-03a1-setup.md for affected modules to fix entity references
207
207
  - **STOP** - do not proceed to next check
208
208
 
209
209
  ---
@@ -1,7 +1,7 @@
1
1
  # Template Functional Requirements Document
2
2
 
3
3
  > **Usage:** Template for 3-functional-specification.md
4
- > **Loaded in:** step-03a-data.md
4
+ > **Loaded in:** step-03a1-setup.md
5
5
 
6
6
  ---
7
7
 
@@ -1,87 +0,0 @@
1
- # Cadrage: Vibe Coding Flow
2
-
3
- > Reference for step-01-cadrage.md — accelerated 2-lot questionnaire (always active).
4
-
5
- ## Lot 1: Problem & Scope
6
-
7
- Ask 2 questions:
8
-
9
- ```
10
- question: "Quel est le besoin principal de cette application ?"
11
- header: "Besoin"
12
- options:
13
- - label: "Automatiser un processus manuel"
14
- description: "Remplacer des taches repetitives par une application"
15
- - label: "Creer un outil manquant"
16
- description: "Construire quelque chose qui n'existe pas encore"
17
- - label: "Remplacer un outil existant"
18
- description: "Remplacer un logiciel ou tableur qui ne convient plus"
19
- - label: "Centraliser des donnees"
20
- description: "Rassembler des informations dispersees en un seul endroit"
21
- ```
22
-
23
- ```
24
- question: "Quelles fonctionnalites sont indispensables pour la V1 ?"
25
- header: "Indispensable"
26
- multiSelect: true
27
- options:
28
- → Generate 4 options dynamically from {feature_description}
29
- → Each option = one functional area detected in the description
30
- ```
31
-
32
- **Store:** `problem_type` (from Q1), `must_have_features[]` (from Q2)
33
-
34
- ## Users & Permissions (auto-set — no question)
35
-
36
- > **Always optimize for high traffic.** No question needed — assume production-grade deployment.
37
-
38
- **Auto-set (always):**
39
- - Standard 4-tier roles: Admin, Manager, Contributor, Viewer
40
- - 3 stakeholders: Admin + Manager + User
41
- - 500+ concurrent users assumed (this is a non-negotiable baseline, not an optimization target)
42
-
43
- ## Lot 2: Technical Challenges
44
-
45
- ```
46
- question: "Quels defis techniques anticipez-vous ?"
47
- header: "Defis"
48
- multiSelect: true
49
- options:
50
- - label: "Regles metier complexes"
51
- description: "Calculs, validations ou workflows difficiles a specifier"
52
- - label: "Volume de donnees"
53
- description: "Grandes quantites de donnees a gerer ou migrer"
54
- - label: "Integrations externes"
55
- description: "APIs, services tiers ou synchronisation avec d'autres systemes"
56
- - label: "Interface riche"
57
- description: "Ecrans avec beaucoup d'interactions, graphiques ou visualisations"
58
- ```
59
-
60
- ## Auto-Inferred Cadrage Data
61
-
62
- DO NOT ask these — derive from answers:
63
-
64
- ```yaml
65
- cadrage.problem: "{feature_description} — {problem_type}"
66
- cadrage.asIs: "Aucun systeme en place" | "Processus manuel existant" | "Outil existant a remplacer"
67
- → Derived from Lot 1 problem_type
68
- cadrage.toBe: "Application {application_name} couvrant: {must_have_features joined}"
69
- cadrage.trigger: "Projet vibe coding initie par le developpeur"
70
- cadrage.risks:
71
- → Map each selected technical challenge to a RISK entry:
72
- - "Regles metier complexes" → RISK-001, type: "technical", probability: "medium", impact: "high"
73
- - "Volume de donnees" → RISK-002, type: "technical", probability: "low", impact: "medium"
74
- - "Integrations externes" → RISK-003, type: "technical", probability: "medium", impact: "medium"
75
- - "Interface riche" → RISK-004, type: "technical", probability: "low", impact: "low"
76
- → Add mitigation for each: "Specification detaillee dans step-03 + generation iterative"
77
- cadrage.acceptanceCriteria:
78
- - { id: "AC-001", criterion: "Toutes les fonctionnalites must-have implementees et fonctionnelles", validated: false }
79
- - { id: "AC-002", criterion: "Application deployable et utilisable", validated: false }
80
- cadrage.globalScope:
81
- mustHave: {must_have_features}
82
- shouldHave: [] → Determined later in coverage matrix
83
- couldHave: [] → Determined later in coverage matrix
84
- outOfScope: []
85
- ```
86
-
87
- After Lot 2: Go directly to **section 9 (Coverage Matrix)**.