@atlashub/smartstack-cli 4.19.0 → 4.21.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/package.json +2 -2
- package/templates/skills/ba-generate-html/SKILL.md +60 -0
- package/templates/skills/{business-analyse → ba-generate-html}/html/ba-interactive.html +3 -3
- package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/cadrage-risks.html +1 -1
- package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/02-navigation.js +1 -1
- package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/07-render-handoff.js +1 -1
- package/templates/skills/{business-analyse → ba-generate-html}/html/src/template.html +1 -1
- package/templates/skills/{business-analyse/references/deploy-data-build.md → ba-generate-html/references/data-build.md} +2 -2
- package/templates/skills/{business-analyse/references/html-data-mapping.md → ba-generate-html/references/data-mapping.md} +2 -2
- package/templates/skills/{business-analyse/references/deploy-modes.md → ba-generate-html/references/output-modes.md} +1 -1
- package/templates/skills/ba-generate-html/steps/step-01-collect.md +113 -0
- package/templates/skills/ba-generate-html/steps/step-02-build-data.md +237 -0
- package/templates/skills/ba-generate-html/steps/step-03-render.md +75 -0
- package/templates/skills/ba-generate-html/steps/step-04-verify.md +83 -0
- package/templates/skills/ba-review/SKILL.md +45 -0
- package/templates/skills/{business-analyse → ba-review}/references/review-data-mapping.md +2 -2
- package/templates/skills/{business-analyse/steps/step-06-review.md → ba-review/steps/step-01-apply.md} +7 -18
- package/templates/skills/business-analyse/SKILL.md +24 -59
- package/templates/skills/business-analyse/_shared.md +9 -14
- package/templates/skills/business-analyse/questionnaire/01-context.md +11 -157
- package/templates/skills/business-analyse/questionnaire/02-stakeholders-scope.md +9 -50
- package/templates/skills/business-analyse/questionnaire/03-data-ui.md +1 -3
- package/templates/skills/business-analyse/questionnaire/04-risks-metrics.md +4 -148
- package/templates/skills/business-analyse/questionnaire/05-cross-module.md +5 -5
- package/templates/skills/business-analyse/questionnaire.md +7 -8
- package/templates/skills/business-analyse/react/components.md +1 -1
- package/templates/skills/business-analyse/react/schema.md +1 -1
- package/templates/skills/business-analyse/references/acceptance-criteria.md +2 -7
- package/templates/skills/business-analyse/references/detection-strategies.md +3 -3
- package/templates/skills/business-analyse/references/naming-conventions.md +2 -2
- package/templates/skills/business-analyse/references/robustness-checks.md +2 -121
- package/templates/skills/business-analyse/references/validation-checklist.md +3 -4
- package/templates/skills/business-analyse/schemas/feature-schema.json +1 -1
- package/templates/skills/business-analyse/steps/step-00-init.md +6 -9
- package/templates/skills/business-analyse/steps/step-01-cadrage.md +9 -49
- package/templates/skills/business-analyse/steps/step-04-consolidate.md +13 -6
- package/templates/skills/business-analyse/templates/tpl-handoff.md +1 -1
- package/templates/skills/business-analyse/templates/tpl-launch-displays.md +1 -1
- package/templates/skills/documentation/SKILL.md +7 -0
- package/templates/skills/business-analyse/steps/step-05-deploy.md +0 -220
- /package/templates/skills/{business-analyse → ba-generate-html}/html/build-html.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/cadrage-context.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/cadrage-scope.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/cadrage-stakeholders.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/cadrage-success.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/consol-datamodel.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/consol-flows.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/consol-interactions.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/consol-permissions.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/decomp-dependencies.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/decomp-modules.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/handoff-summary.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/partials/module-spec-container.html +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/01-data-init.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/03-render-cadrage.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/04-render-modules.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/05-render-specs.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/06-render-consolidation.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/06-render-mockups.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/08-editing.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/09-export.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/10-comments.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/scripts/11-review-panel.js +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/01-variables.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/02-layout.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/03-navigation.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/04-cards.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/05-modules.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/06-wireframes.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/07-comments.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/08-review-panel.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/html/src/styles/09-mockups-html.css +0 -0
- /package/templates/skills/{business-analyse → ba-generate-html}/references/wireframe-svg-style-guide.md +0 -0
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: step-04-verify
|
|
3
|
+
description: Post-check verification of generated HTML
|
|
4
|
+
model: opus
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Step 4: Verify Generated HTML
|
|
8
|
+
|
|
9
|
+
## YOUR TASK
|
|
10
|
+
|
|
11
|
+
Run 5 blocking validations on the generated HTML file and display the completion summary.
|
|
12
|
+
|
|
13
|
+
---
|
|
14
|
+
|
|
15
|
+
## EXECUTION SEQUENCE
|
|
16
|
+
|
|
17
|
+
### 1. Blocking Validations
|
|
18
|
+
|
|
19
|
+
**Check 1 — File size > 100KB:**
|
|
20
|
+
```
|
|
21
|
+
if [ $(stat --format=%s ba-interactive.html) -lt 100000 ]; then
|
|
22
|
+
BLOCKING_ERROR("ba-interactive.html not pre-populated — file too small")
|
|
23
|
+
fi
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
**Check 2 — moduleSpecs present in HTML:**
|
|
27
|
+
```
|
|
28
|
+
if ! grep -q '"moduleSpecs"' ba-interactive.html; then
|
|
29
|
+
BLOCKING_ERROR("moduleSpecs not found — FEATURE_DATA not serialized")
|
|
30
|
+
fi
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**Check 3 — cadrage.scope uses HTML keys (vital/important, NOT mustHave):**
|
|
34
|
+
```
|
|
35
|
+
if grep -q '"mustHave"' ba-interactive.html; then
|
|
36
|
+
BLOCKING_ERROR("cadrage.scope still has JSON keys — conversion failed")
|
|
37
|
+
fi
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**Check 4 — Wireframe field names correct (format/content, NOT mockupFormat/mockup):**
|
|
41
|
+
```
|
|
42
|
+
if grep -q '"mockupFormat"' ba-interactive.html; then
|
|
43
|
+
BLOCKING_ERROR("Wireframes use 'mockupFormat' — must be 'format'")
|
|
44
|
+
fi
|
|
45
|
+
```
|
|
46
|
+
|
|
47
|
+
**Check 5 — All modules have specs AND wireframes:**
|
|
48
|
+
```
|
|
49
|
+
FOR each module in FEATURE_DATA.modules:
|
|
50
|
+
IF FEATURE_DATA.moduleSpecs[module.code] undefined:
|
|
51
|
+
BLOCKING_ERROR("Module {module.code} not in moduleSpecs")
|
|
52
|
+
IF EMBEDDED_ARTIFACTS.wireframes[module.code] undefined:
|
|
53
|
+
BLOCKING_ERROR("Module {module.code} not in wireframes")
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
> **IF any check fails:** fix the issue and re-run the failing step before completing.
|
|
57
|
+
|
|
58
|
+
---
|
|
59
|
+
|
|
60
|
+
### 2. Display Completion Summary
|
|
61
|
+
|
|
62
|
+
```
|
|
63
|
+
══════════════════════════════════════════════════════════════
|
|
64
|
+
[OK] HTML DEPLOY COMPLETE — {application_name}
|
|
65
|
+
══════════════════════════════════════════════════════════════
|
|
66
|
+
|
|
67
|
+
Modules: {count} ({names})
|
|
68
|
+
|
|
69
|
+
[DIR] Artifact generated:
|
|
70
|
+
ba-interactive.html — Interactive document
|
|
71
|
+
Path: {output_path}
|
|
72
|
+
Pre-populated: {module_count} modules, {total_uc} use cases,
|
|
73
|
+
{total_br} business rules, {total_wireframes} wireframes
|
|
74
|
+
|
|
75
|
+
[NEXT] Review & Validation:
|
|
76
|
+
1. Open ba-interactive.html in browser
|
|
77
|
+
2. Review all modules, use cases, business rules
|
|
78
|
+
3. Validate wireframes and permissions
|
|
79
|
+
4. If OK: /derive-prd then /ralph-loop to begin development
|
|
80
|
+
5. If changes needed: /business-analyse to iterate
|
|
81
|
+
|
|
82
|
+
══════════════════════════════════════════════════════════════
|
|
83
|
+
```
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: ba-review
|
|
3
|
+
description: "Apply client corrections from ba-review.json and regenerate the interactive HTML document"
|
|
4
|
+
model: opus
|
|
5
|
+
user_invocable: true
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# /ba-review
|
|
9
|
+
|
|
10
|
+
Apply corrections exported from the interactive HTML review (`ba-review.json`) to create a new version of the business analysis, then regenerate the HTML document.
|
|
11
|
+
|
|
12
|
+
## Triggers
|
|
13
|
+
|
|
14
|
+
- Explicit invocation: `/ba-review`
|
|
15
|
+
- When `ba-review.json` is detected in the project root
|
|
16
|
+
|
|
17
|
+
## Parameters
|
|
18
|
+
|
|
19
|
+
| Parameter | Required | Description |
|
|
20
|
+
|-----------|----------|-------------|
|
|
21
|
+
| `--path` | No | Path to ba-review.json (default: project root) |
|
|
22
|
+
|
|
23
|
+
## Prerequisites
|
|
24
|
+
|
|
25
|
+
- `ba-review.json` must exist (exported from the interactive HTML)
|
|
26
|
+
- Business analysis JSON files must exist (at minimum `index.json` + `cadrage.json`)
|
|
27
|
+
- Feature status must be `consolidated` or `reviewed`
|
|
28
|
+
|
|
29
|
+
## Workflow
|
|
30
|
+
|
|
31
|
+
| Step | File | Role |
|
|
32
|
+
|------|------|------|
|
|
33
|
+
| 01 | `steps/step-01-apply.md` | Read ba-review.json, create new version, apply corrections to JSON files |
|
|
34
|
+
|
|
35
|
+
After step-01 completes, delegate to `/ba-generate-html` to regenerate the interactive HTML document.
|
|
36
|
+
|
|
37
|
+
## References
|
|
38
|
+
|
|
39
|
+
| File | Content |
|
|
40
|
+
|------|---------|
|
|
41
|
+
| `references/review-data-mapping.md` | Reverse mapping from ba-review.json to module JSON files |
|
|
42
|
+
|
|
43
|
+
## Entry Point
|
|
44
|
+
|
|
45
|
+
**FIRST ACTION:** Load `steps/step-01-apply.md`
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# Review Data Mapping Reference (references/review-data-mapping.md)
|
|
2
2
|
|
|
3
|
-
> **Used by:** step-
|
|
3
|
+
> **Used by:** /ba-review step-01-apply (Apply Review Corrections)
|
|
4
4
|
> **Purpose:** Reverse mapping from ba-review.json (HTML export) back to module JSON files format
|
|
5
|
-
> **Complement of:**
|
|
5
|
+
> **Complement of:** `/ba-generate-html/references/data-mapping.md` (forward mapping)
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: step-
|
|
2
|
+
name: step-01-apply
|
|
3
3
|
description: Apply review corrections from ba-review.json, create new version, regenerate all artifacts
|
|
4
4
|
model: opus
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
> **Context files:** `
|
|
7
|
+
> **Context files:** `references/review-data-mapping.md`
|
|
8
8
|
|
|
9
|
-
# Step
|
|
9
|
+
# Step 01: Apply Review Corrections
|
|
10
10
|
|
|
11
11
|
Apply corrections exported from the interactive HTML review (`ba-review.json`) to create a new version of the business analysis with all downstream artifacts regenerated.
|
|
12
12
|
|
|
@@ -182,23 +182,12 @@ Create review.json with review_section and update hash in index.json
|
|
|
182
182
|
|
|
183
183
|
## Step 8: Regenerate Interactive HTML
|
|
184
184
|
|
|
185
|
-
|
|
185
|
+
Delegate HTML generation to `/ba-generate-html` skill:
|
|
186
186
|
|
|
187
187
|
```
|
|
188
|
-
1.
|
|
189
|
-
2.
|
|
190
|
-
|
|
191
|
-
- Read cadrage.json for cadrage section
|
|
192
|
-
- Read entities.json, rules.json, usecases.json, etc.
|
|
193
|
-
(follow exact mapping from html-data-mapping.md)
|
|
194
|
-
3. Build EMBEDDED_ARTIFACTS from thematic files
|
|
195
|
-
(wireframes, e2eFlows, dependencyGraph)
|
|
196
|
-
4. Replace placeholders:
|
|
197
|
-
- {{FEATURE_DATA}} → serialized FEATURE_DATA JSON
|
|
198
|
-
- {{EMBEDDED_ARTIFACTS}} → serialized EMBEDDED_ARTIFACTS JSON
|
|
199
|
-
- {{APPLICATION_NAME}} → application_name
|
|
200
|
-
- {{APPLICATION_ID}} → feature_id
|
|
201
|
-
5. Write to new version directory: {new_version_dir}/ba-interactive.html
|
|
188
|
+
1. Load skill: /ba-generate-html with feature_id
|
|
189
|
+
2. The skill handles: collect → build → render → verify
|
|
190
|
+
3. Output: {new_version_dir}/ba-interactive.html
|
|
202
191
|
```
|
|
203
192
|
|
|
204
193
|
## Step 9: Update Manifest
|
|
@@ -9,7 +9,7 @@ user_invocable: true
|
|
|
9
9
|
|
|
10
10
|
## Architecture
|
|
11
11
|
|
|
12
|
-
**2 phases,
|
|
12
|
+
**2 phases, 5 steps** — "Macro vers Specification"
|
|
13
13
|
|
|
14
14
|
### Phase 1 — Macro (Identification + Challenge)
|
|
15
15
|
|
|
@@ -19,29 +19,28 @@ user_invocable: true
|
|
|
19
19
|
| 01 | `step-01-cadrage.md` | Opus | Context, stakeholders, scope, risks. ~40 core questions |
|
|
20
20
|
| 02 | `step-02-structure.md` | Opus | Identify App > Module > Section > Resource hierarchy, CHALLENGE each element |
|
|
21
21
|
|
|
22
|
-
### Phase 2 — Specification (Deep dive +
|
|
22
|
+
### Phase 2 — Specification (Deep dive + Consolidation)
|
|
23
23
|
|
|
24
24
|
| Step | File | Model | Role |
|
|
25
25
|
|------|------|-------|------|
|
|
26
26
|
| 03 | `step-03-specify.md` | Opus | Deep dive per module: entities, BRs, UCs, permissions, screens. Sequential internal loop |
|
|
27
27
|
| 04 | `step-04-consolidate.md` | Opus | Cross-module validation: data model, permission coherence, E2E flows |
|
|
28
|
-
| 05 | `step-05-deploy.md` | Sonnet | Deploy interactive HTML document |
|
|
29
|
-
| 06 | `step-06-review.md` | Opus | Apply client corrections from ba-review.json exported from HTML |
|
|
30
28
|
|
|
31
|
-
###
|
|
29
|
+
### Post-BA Workflow
|
|
32
30
|
```
|
|
33
|
-
Phase 1 (steps 00-02) → Phase 2 (steps 03-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
31
|
+
Phase 1 (steps 00-02) → Phase 2 (steps 03-04) → /ba-generate-html → Client reviews HTML
|
|
32
|
+
↓
|
|
33
|
+
Client comments/enriches
|
|
34
|
+
↓
|
|
35
|
+
Export ba-review.json
|
|
36
|
+
↓
|
|
37
|
+
/ba-review → /ba-generate-html
|
|
38
|
+
↓
|
|
39
|
+
/derive-prd → /ralph-loop
|
|
42
40
|
```
|
|
43
41
|
|
|
44
|
-
>
|
|
42
|
+
> After step-04, invoke `/ba-generate-html` to generate the HTML, then `/ba-review` for the client correction cycle.
|
|
43
|
+
> **PRD generation:** Handoff data and PRD files are generated by the `/derive-prd` skill.
|
|
45
44
|
|
|
46
45
|
## JSON Architecture — Granular files + Index
|
|
47
46
|
|
|
@@ -83,7 +82,6 @@ docs/
|
|
|
83
82
|
Each step loads only the files it needs via `index.json`:
|
|
84
83
|
- Step 03 (specify): loads `index.json` + `entities.json` for current module only
|
|
85
84
|
- Step 04 (consolidate): loads all `index.json` files for summary counts
|
|
86
|
-
- Step 05 (deploy): assembles all files into unified FEATURE_DATA for HTML
|
|
87
85
|
|
|
88
86
|
## Workflow Modes
|
|
89
87
|
|
|
@@ -91,7 +89,6 @@ Each step loads only the files it needs via `index.json`:
|
|
|
91
89
|
|------|-----------|----------|
|
|
92
90
|
| `new` | No existing index.json | Full analysis from step 00 |
|
|
93
91
|
| `update` | Existing index.json found | Delta analysis, skip completed sections |
|
|
94
|
-
| `review` | ba-review.json provided | Apply corrections (step 06 only) |
|
|
95
92
|
|
|
96
93
|
## Context Loading Rules
|
|
97
94
|
|
|
@@ -104,8 +101,6 @@ Each step loads ONLY what it needs:
|
|
|
104
101
|
| 02 | `_shared.md`, `step-02-structure.md` | cadrage.json from step 01 |
|
|
105
102
|
| 03 | `_shared.md`, `step-03-specify.md` | current module's index.json + relevant files |
|
|
106
103
|
| 04 | `_shared.md`, `step-04-consolidate.md` | all module index.json files |
|
|
107
|
-
| 05 | `_shared.md`, `step-05-deploy.md` | all JSON files for HTML assembly |
|
|
108
|
-
| 06 | `_shared.md`, `step-06-review.md` | ba-review.json + current feature files |
|
|
109
104
|
|
|
110
105
|
## Agents
|
|
111
106
|
|
|
@@ -116,27 +111,7 @@ Each step loads ONLY what it needs:
|
|
|
116
111
|
|
|
117
112
|
## HTML Output
|
|
118
113
|
|
|
119
|
-
|
|
120
|
-
- Multi-app navigation (4 levels: App > Module > Section > Resource)
|
|
121
|
-
- Inline editing (UC, BR, entities, sections/resources)
|
|
122
|
-
- HTML mockups from `screens[]` specs (SmartTable, SmartForm, SmartCard, SmartKanban, SmartDashboard)
|
|
123
|
-
- Wireframe fallback from EMBEDDED_ARTIFACTS
|
|
124
|
-
- Comment system with review panel
|
|
125
|
-
- Export: ba-review.json for step 06 loop
|
|
126
|
-
|
|
127
|
-
### FEATURE_DATA structure
|
|
128
|
-
|
|
129
|
-
```javascript
|
|
130
|
-
{
|
|
131
|
-
metadata: { projectName, version, ... },
|
|
132
|
-
applications: [{ code, name, icon, route, modules: [...] }],
|
|
133
|
-
cadrage: { context, scope, stakeholders, risks, criteria },
|
|
134
|
-
modules: [{ code, applicationCode, name, ... }],
|
|
135
|
-
moduleSpecs: { [code]: { useCases, businessRules, entities, permissions, screens, sections, resources } },
|
|
136
|
-
consolidation: { interactions, e2eFlows },
|
|
137
|
-
comments: []
|
|
138
|
-
}
|
|
139
|
-
```
|
|
114
|
+
HTML generation is handled by the `/ba-generate-html` skill. After step-04, invoke `/ba-generate-html` to produce the interactive HTML document. For client review corrections, use `/ba-review`.
|
|
140
115
|
|
|
141
116
|
## Step Execution
|
|
142
117
|
|
|
@@ -164,31 +139,21 @@ STEP 03 (specify) — SEQUENTIAL MODULE LOOP
|
|
|
164
139
|
→ Output: entities.json, rules.json, usecases.json, permissions.json, screens.json
|
|
165
140
|
→ No team mode — sequential ensures 100% context per module
|
|
166
141
|
|
|
167
|
-
STEP 04 (consolidate)
|
|
142
|
+
STEP 04 (consolidate) — FINAL BA STEP
|
|
168
143
|
→ Load: _shared.md, step-04-consolidate.md, all index.json
|
|
169
144
|
→ Execute: Data model validation, permission coherence, E2E flows
|
|
170
145
|
→ Output: validation.json, consolidated data
|
|
171
|
-
|
|
172
|
-
STEP 05 (deploy)
|
|
173
|
-
→ Load: _shared.md, step-05-deploy.md, all JSON files
|
|
174
|
-
→ Execute: Assemble FEATURE_DATA, generate HTML
|
|
175
|
-
→ Output: ba-interactive.html (single file)
|
|
176
|
-
|
|
177
|
-
STEP 06 (review) — CLIENT LOOP ENTRY
|
|
178
|
-
→ Load: _shared.md, step-06-review.md, ba-review.json
|
|
179
|
-
→ Execute: Apply corrections, create new version
|
|
180
|
-
→ Output: Updated JSON files, regenerated HTML
|
|
146
|
+
→ Next: invoke /ba-generate-html, then /ba-review for client cycle
|
|
181
147
|
```
|
|
182
148
|
|
|
183
149
|
## References
|
|
184
150
|
|
|
185
151
|
| File | Content |
|
|
186
152
|
|------|---------|
|
|
187
|
-
|
|
|
153
|
+
| `/ba-generate-html` skill | HTML generation (FEATURE_DATA mapping, build, render, verify) |
|
|
154
|
+
| `/ba-review` skill | Apply client corrections from ba-review.json |
|
|
188
155
|
| `references/naming-conventions.md` | SmartStack naming rules |
|
|
189
|
-
| `references/wireframe-svg-style-guide.md` | SVG wireframe rendering guide |
|
|
190
156
|
| `references/validation-checklist.md` | Validation criteria checklist |
|
|
191
|
-
| `references/deploy-modes.md` | Deployment configuration |
|
|
192
157
|
| `references/acceptance-criteria.md` | Acceptance criteria patterns |
|
|
193
158
|
|
|
194
159
|
> **Cross-reference:** Handoff data, PRD generation, file templates, and BR-to-code mappings are in the `/derive-prd` skill.
|
|
@@ -197,11 +162,11 @@ STEP 06 (review) — CLIENT LOOP ENTRY
|
|
|
197
162
|
|
|
198
163
|
| File | Questions | Focus |
|
|
199
164
|
|------|-----------|-------|
|
|
200
|
-
| `questionnaire/01-context.md` |
|
|
201
|
-
| `questionnaire/02-stakeholders-scope.md` |
|
|
202
|
-
| `questionnaire/03-data-ui.md` | ~
|
|
203
|
-
| `questionnaire/04-risks-metrics.md` |
|
|
204
|
-
| `questionnaire/05-cross-module.md` | ~
|
|
165
|
+
| `questionnaire/01-context.md` | 3 | Business process, friction points, vision |
|
|
166
|
+
| `questionnaire/02-stakeholders-scope.md` | 10 | User profiles, access levels, scope boundaries |
|
|
167
|
+
| `questionnaire/03-data-ui.md` | ~15 | Data entities, UI expectations, dashboards |
|
|
168
|
+
| `questionnaire/04-risks-metrics.md` | — | NOT USED (risks/metrics out of BA scope) |
|
|
169
|
+
| `questionnaire/05-cross-module.md` | ~8 | Cross-module dependencies, integration impact |
|
|
205
170
|
|
|
206
171
|
## Entry Point
|
|
207
172
|
|
|
@@ -68,16 +68,16 @@ Steps load only the files they need:
|
|
|
68
68
|
|------|---------|-------------|
|
|
69
69
|
| `new` | No existing index.json | Full analysis from scratch |
|
|
70
70
|
| `update` | Existing index.json found | Delta analysis (add modules, update specs) |
|
|
71
|
-
| `review` | ba-review.json provided | Apply client corrections from HTML export |
|
|
72
71
|
|
|
73
72
|
### Workflow detection
|
|
74
73
|
|
|
75
74
|
```
|
|
76
|
-
1. Check for
|
|
77
|
-
2.
|
|
78
|
-
3. Otherwise → mode = "new"
|
|
75
|
+
1. Check for existing docs/**/index.json → mode = "update"
|
|
76
|
+
2. Otherwise → mode = "new"
|
|
79
77
|
```
|
|
80
78
|
|
|
79
|
+
> **Note:** Review mode (`ba-review.json`) is handled by the `/ba-review` skill.
|
|
80
|
+
|
|
81
81
|
## Navigation Hierarchy
|
|
82
82
|
|
|
83
83
|
Maps to SmartStack DB tables:
|
|
@@ -138,24 +138,19 @@ draft → identified → specified → validated → reviewed
|
|
|
138
138
|
| identified | Step 02 | Hierarchy identified (App > Module > Section > Resource) |
|
|
139
139
|
| specified | Step 03 | Module fully specified (entities, UCs, BRs, permissions, screens) |
|
|
140
140
|
| validated | Step 04 | Cross-module validation passed |
|
|
141
|
-
| reviewed |
|
|
141
|
+
| reviewed | `/ba-review` | Client review applied |
|
|
142
142
|
|
|
143
143
|
## Handoff & PRD Generation
|
|
144
144
|
|
|
145
|
-
Handoff data and PRD files are generated by the `/derive-prd` skill
|
|
145
|
+
Handoff data and PRD files are generated by the `/derive-prd` skill. The workflow is:
|
|
146
146
|
|
|
147
147
|
```
|
|
148
|
-
/business-analyse (steps 00-
|
|
148
|
+
/business-analyse (steps 00-04) → /ba-generate-html → /ba-review (if needed) → /derive-prd → /ralph-loop
|
|
149
149
|
```
|
|
150
150
|
|
|
151
|
-
## HTML
|
|
152
|
-
|
|
153
|
-
Single unified HTML (`ba-interactive.html`) generated in step 05:
|
|
154
|
-
|
|
155
|
-
- **Single-app**: `docs/{app}/business-analyse/v{X.Y}/ba-interactive.html`
|
|
156
|
-
- **Multi-app**: `docs/business-analyse/v{X.Y}/ba-interactive.html`
|
|
151
|
+
## HTML Generation
|
|
157
152
|
|
|
158
|
-
|
|
153
|
+
For HTML generation, use the `/ba-generate-html` skill after step-04 consolidation. For client review corrections, use `/ba-review`.
|
|
159
154
|
|
|
160
155
|
## Resume Protocol
|
|
161
156
|
|
|
@@ -1,157 +1,32 @@
|
|
|
1
1
|
# Categorie 1 : Contexte metier
|
|
2
2
|
|
|
3
|
-
> **Usage :** Questions fondamentales pour comprendre le besoin metier
|
|
3
|
+
> **Usage :** Questions fondamentales pour comprendre le besoin metier
|
|
4
4
|
> **Quand charger :** TOUJOURS (noyau)
|
|
5
|
-
> **Objectif :** Comprendre le
|
|
5
|
+
> **Objectif :** Comprendre le processus metier, les frictions, et la vision cible
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
9
|
-
## 1.1 Le
|
|
10
|
-
|
|
11
|
-
> **But :** Identifier la douleur reelle, pas la solution imaginee.
|
|
9
|
+
## 1.1 Le processus metier
|
|
12
10
|
|
|
13
11
|
| # | Question | Type de reponse |
|
|
14
12
|
|---|----------|-----------------|
|
|
15
|
-
| Q1.1 | Decrivez en quelques phrases le
|
|
16
|
-
| Q1.2 | Qui souffre le plus de ce probleme au quotidien ? Quel impact a-t-il sur leur travail ? | Description des personnes impactees |
|
|
17
|
-
| Q1.3 | Depuis combien de temps ce probleme existe-t-il ? A-t-il empire recemment ? | Historique et evolution |
|
|
18
|
-
|
|
19
|
-
**Reformulation guidee pour Q1.1 :**
|
|
20
|
-
```
|
|
21
|
-
question: "Decrivez le probleme que vous rencontrez aujourd'hui"
|
|
22
|
-
header: "Probleme"
|
|
23
|
-
options:
|
|
24
|
-
- label: "Processus trop lent"
|
|
25
|
-
description: "Des taches repetitives prennent trop de temps et ralentissent le travail quotidien"
|
|
26
|
-
- label: "Informations dispersees"
|
|
27
|
-
description: "Les donnees sont eparpillees entre plusieurs outils, fichiers ou personnes"
|
|
28
|
-
- label: "Manque de visibilite"
|
|
29
|
-
description: "Impossible de suivre l'avancement, les chiffres ou l'etat d'une situation en temps reel"
|
|
30
|
-
- label: "Erreurs frequentes"
|
|
31
|
-
description: "Des erreurs humaines se produisent regulierement par manque d'outil adapte"
|
|
32
|
-
```
|
|
13
|
+
| Q1.1 | Decrivez en quelques phrases le processus metier que cette application doit gerer. Qu'est-ce qui se passe, qui intervient, et quel est le resultat attendu ? | Texte libre |
|
|
33
14
|
|
|
34
15
|
---
|
|
35
16
|
|
|
36
|
-
## 1.2
|
|
37
|
-
|
|
38
|
-
> **But :** Comprendre comment les choses se passent AUJOURD'HUI, concretement.
|
|
17
|
+
## 1.2 Les points de friction
|
|
39
18
|
|
|
40
19
|
| # | Question | Type de reponse |
|
|
41
20
|
|---|----------|-----------------|
|
|
42
|
-
| Q1.4 |
|
|
43
|
-
| Q1.5 | Decrivez les etapes principales de votre processus actuel, du debut a la fin. | Liste d'etapes ordonnees |
|
|
44
|
-
| Q1.6 | Quelles sont les etapes les plus penibles ou les plus longues dans ce processus ? | Points de douleur precis |
|
|
45
|
-
| Q1.7 | Quelles erreurs ou problemes reviennent regulierement ? Donnez 2 a 3 exemples concrets. | Exemples de dysfonctionnements |
|
|
46
|
-
|
|
47
|
-
**Reformulation guidee pour Q1.4 :**
|
|
48
|
-
```
|
|
49
|
-
question: "Comment gerez-vous ce sujet aujourd'hui ?"
|
|
50
|
-
header: "Outils"
|
|
51
|
-
options:
|
|
52
|
-
- label: "Tableur (Excel, Sheets)"
|
|
53
|
-
description: "Fichiers Excel ou Google Sheets partages ou individuels"
|
|
54
|
-
- label: "Email et documents"
|
|
55
|
-
description: "Echanges par email avec pieces jointes, documents Word ou PDF"
|
|
56
|
-
- label: "Logiciel existant"
|
|
57
|
-
description: "Un logiciel est deja en place mais ne repond plus aux besoins"
|
|
58
|
-
- label: "Processus manuel"
|
|
59
|
-
description: "Papier, appels telephoniques, reunions en personne"
|
|
60
|
-
```
|
|
21
|
+
| Q1.4 | Quels sont les points de friction actuels ? Qu'est-ce qui bloque, ralentit, ou genere des erreurs dans ce processus ? | Description des frictions |
|
|
61
22
|
|
|
62
23
|
---
|
|
63
24
|
|
|
64
|
-
## 1.3 La
|
|
65
|
-
|
|
66
|
-
> **But :** Definir clairement ce que le client veut OBTENIR, pas ce qu'il veut CONSTRUIRE.
|
|
25
|
+
## 1.3 La vision souhaitee
|
|
67
26
|
|
|
68
27
|
| # | Question | Type de reponse |
|
|
69
28
|
|---|----------|-----------------|
|
|
70
|
-
| Q1.8 | Si le probleme etait resolu demain, que feriez-vous differemment dans votre journee de travail ? | Description du changement concret |
|
|
71
|
-
| Q1.9 | Quels resultats concrets attendez-vous ? Citez 2 a 3 ameliorations mesurables (gain de temps, reduction d'erreurs, meilleure visibilite...). | Liste de resultats attendus |
|
|
72
|
-
| Q1.10 | Comment saurez-vous que le projet est un succes ? Quel est le signe visible qui montrera que le probleme est resolu ? | Critere de succes observable |
|
|
73
|
-
|
|
74
|
-
**Reformulation guidee pour Q1.8 :**
|
|
75
|
-
```
|
|
76
|
-
question: "Si le probleme etait resolu demain, que changeriez-vous dans votre journee ?"
|
|
77
|
-
header: "Vision"
|
|
78
|
-
options:
|
|
79
|
-
- label: "Gain de temps"
|
|
80
|
-
description: "Des taches qui prennent des heures se feraient en quelques minutes"
|
|
81
|
-
- label: "Decisions plus rapides"
|
|
82
|
-
description: "Les informations seraient disponibles immediatement pour decider"
|
|
83
|
-
- label: "Moins d'erreurs"
|
|
84
|
-
description: "Les controles automatiques empecheraient les erreurs courantes"
|
|
85
|
-
- label: "Meilleure collaboration"
|
|
86
|
-
description: "Tout le monde verrait les memes informations a jour en temps reel"
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
---
|
|
90
|
-
|
|
91
|
-
## 1.4 Le declencheur et l'urgence
|
|
92
|
-
|
|
93
|
-
> **But :** Comprendre pourquoi MAINTENANT et calibrer les attentes.
|
|
94
|
-
|
|
95
|
-
| # | Question | Type de reponse |
|
|
96
|
-
|---|----------|-----------------|
|
|
97
|
-
| Q1.11 | Qu'est-ce qui a declenche cette demande ? Pourquoi maintenant et pas il y a 6 mois ? | Evenement declencheur |
|
|
98
|
-
| Q1.12 | Que se passerait-il si ce projet n'etait PAS realise ? Quelles consequences a court et moyen terme ? | Impact de l'inaction |
|
|
99
|
-
|
|
100
|
-
**Reformulation guidee pour Q1.11 :**
|
|
101
|
-
```
|
|
102
|
-
question: "Qu'est-ce qui a declenche cette demande maintenant ?"
|
|
103
|
-
header: "Declencheur"
|
|
104
|
-
options:
|
|
105
|
-
- label: "Croissance de l'activite"
|
|
106
|
-
description: "Le volume de travail a augmente et les outils actuels ne suivent plus"
|
|
107
|
-
- label: "Obligation reglementaire"
|
|
108
|
-
description: "Une nouvelle regle ou loi impose de changer la facon de travailler"
|
|
109
|
-
- label: "Probleme critique"
|
|
110
|
-
description: "Un incident recent a mis en lumiere un dysfonctionnement grave"
|
|
111
|
-
- label: "Opportunite strategique"
|
|
112
|
-
description: "Un changement d'organisation ou de strategie ouvre une fenetre d'action"
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
---
|
|
116
|
-
|
|
117
|
-
## Guide d'elicitation approfondi
|
|
118
|
-
|
|
119
|
-
### Techniques de relance par question
|
|
120
|
-
|
|
121
|
-
| Question | Si la reponse est vague ou insuffisante | Relance recommandee |
|
|
122
|
-
|----------|----------------------------------------|---------------------|
|
|
123
|
-
| Q1.1 (probleme) | Le client decrit une solution au lieu d'un probleme | "Oublions la solution un instant. Fermez les yeux et pensez a un moment recent ou ce probleme vous a frustre. Racontez-moi cette situation." |
|
|
124
|
-
| Q1.2 (qui souffre) | Reponse generique "tout le monde" | "Prenons une personne precise, celle qui est la plus impactee. Quel est son poste ? Que fait-elle quand elle est bloquee par ce probleme ?" |
|
|
125
|
-
| Q1.4 (outils actuels) | "On se debrouille" sans details | "Prenons un exemple concret : la derniere fois que ce probleme s'est presente, qu'avez-vous fait exactement, etape par etape ?" |
|
|
126
|
-
| Q1.5 (processus actuel) | Moins de 3 etapes decrites | "Reprenons depuis le debut : quelqu'un a besoin de faire cette tache. Qu'est-ce qu'il fait en premier ? Puis ensuite ? Qui d'autre intervient ? Quand considere-t-on que c'est termine ?" |
|
|
127
|
-
| Q1.6 (etapes penibles) | "Tout va bien sauf..." (minimisation) | "Si je chronometrais chaque etape de votre processus, laquelle prendrait le plus de temps ? Laquelle fait le plus soupirer vos equipes ?" |
|
|
128
|
-
| Q1.7 (erreurs frequentes) | "Ca arrive rarement" | "La derniere fois qu'une erreur s'est produite, quel a ete l'impact ? Combien de temps pour la corriger ? Qui a du intervenir ?" |
|
|
129
|
-
| Q1.8 (vision) | Reponse vague "ca irait mieux" | "Concretement, imaginez que vous arrivez lundi matin et que tout fonctionne parfaitement. Quelle est la premiere chose que vous faites differemment de d'habitude ?" |
|
|
130
|
-
| Q1.9 (resultats) | Pas de chiffres ni de mesures | "Aujourd'hui, combien de temps prend ce processus ? Combien d'erreurs par mois ? Si on divisait par deux, est-ce que ca suffirait ?" |
|
|
131
|
-
| Q1.10 (critere succes) | "Que les utilisateurs soient contents" | "Imaginons que 3 mois apres le lancement, je vous demande si le projet est un succes. Que me montrez-vous concretement comme preuve ?" |
|
|
132
|
-
| Q1.12 (consequences inaction) | "Ca continuera comme avant" | "Et si ca continue encore 1 an comme ca ? 2 ans ? Quels risques voyez-vous : perte de clients, surcharge des equipes, non-conformite ?" |
|
|
133
|
-
|
|
134
|
-
### Signaux d'alerte a detecter
|
|
135
|
-
|
|
136
|
-
| Signal du client | Probleme sous-jacent | Action de l'analyste |
|
|
137
|
-
|------------------|---------------------|----------------------|
|
|
138
|
-
| "Il faudrait un bouton pour..." ou "On a besoin d'un ecran qui..." | **Le client decrit une solution, pas un besoin** | Reformuler : "Quel probleme ce bouton/ecran resoudrait-il ? Qu'est-ce qui est difficile aujourd'hui sans lui ?" |
|
|
139
|
-
| "C'est evident" ou "Tout le monde le sait" | **Hypothese implicite non validee** | "Pouvez-vous me l'expliquer comme si c'etait ma premiere journee dans votre entreprise ? Je veux etre sur de bien comprendre." |
|
|
140
|
-
| "On verra plus tard" ou "C'est pas prioritaire" | **Sujet potentiellement critique esquive** | "Je comprends. Pouvez-vous quand meme me donner un exemple pour que je le note ? On decidera ensemble de la priorite." |
|
|
141
|
-
| Mots vagues : "optimiser", "ameliorer", "moderniser" | **Besoin non concretise** | "Quand vous dites 'optimiser', pouvez-vous me donner un exemple precis de ce qui serait different ?" |
|
|
142
|
-
| "On fait comme le concurrent X" | **Besoin copie sans reflexion** | "Qu'est-ce qui fonctionne bien chez le concurrent X selon vous ? Et qu'est-ce qui ne vous conviendrait pas dans leur approche ?" |
|
|
143
|
-
| Pas de reponse a Q1.12 (consequences inaction) | **Besoin possiblement artificiel** | Approfondir : si l'absence de solution n'a pas de consequence, le besoin est-il reel ? |
|
|
144
|
-
|
|
145
|
-
### Regles d'enchainement
|
|
146
|
-
|
|
147
|
-
| Apres | Si la reponse indique... | Alors |
|
|
148
|
-
|-------|-------------------------|-------|
|
|
149
|
-
| Q1.1 | Le client decrit un besoin technique | Poser Q1.2 pour recentrer sur les personnes impactees |
|
|
150
|
-
| Q1.4 | Aucun outil existant | Sauter Q1.7 (pas d'erreurs a corriger dans un processus inexistant) |
|
|
151
|
-
| Q1.5 | Processus tres simple (< 3 etapes) | Reduire la profondeur sur Q1.6, accelerer vers la vision (Q1.8) |
|
|
152
|
-
| Q1.9 | Resultats non mesurables | Revenir a Q1.10 et insister sur le critere de succes observable |
|
|
153
|
-
| Q1.11 | Obligation reglementaire | Charger le questionnaire de securite (categorie 06) en priorite |
|
|
154
|
-
| Q1.12 | Consequences graves | Marquer le projet comme priorite haute, insister sur les risques dans le cadrage |
|
|
29
|
+
| Q1.8 | Qu'est-ce qui doit changer ? Si le probleme etait resolu demain, que feriez-vous differemment dans votre journee de travail ? | Description du changement concret |
|
|
155
30
|
|
|
156
31
|
---
|
|
157
32
|
|
|
@@ -159,27 +34,6 @@ options:
|
|
|
159
34
|
|
|
160
35
|
| Reponse | Alimente |
|
|
161
36
|
|---------|----------|
|
|
162
|
-
| Q1.1
|
|
163
|
-
| Q1.4
|
|
164
|
-
| Q1.8
|
|
165
|
-
| Q1.11, Q1.12 | `cadrage.trigger` + `cadrage.risks` |
|
|
166
|
-
|
|
167
|
-
---
|
|
168
|
-
|
|
169
|
-
## Strategie de questionnement
|
|
170
|
-
|
|
171
|
-
### Ordre des questions en 3 lots
|
|
172
|
-
|
|
173
|
-
**Lot 1 (Q1.1, Q1.2, Q1.3, Q1.4) : Comprendre le probleme**
|
|
174
|
-
- Commencer par le probleme et les personnes impactees
|
|
175
|
-
- Poser ensuite la question des outils actuels pour ancrer dans le concret
|
|
176
|
-
|
|
177
|
-
**Lot 2 (Q1.5, Q1.6, Q1.7) : Cartographier le processus actuel**
|
|
178
|
-
- Detailler les etapes du processus existant
|
|
179
|
-
- Identifier les points de friction et les erreurs recurrentes
|
|
180
|
-
- Ce lot peut etre raccourci si le processus est simple
|
|
181
|
-
|
|
182
|
-
**Lot 3 (Q1.8, Q1.9, Q1.10, Q1.11, Q1.12) : Definir la vision et l'urgence**
|
|
183
|
-
- Projeter le client dans l'avenir : que changerait une solution ?
|
|
184
|
-
- Quantifier les attentes : resultats mesurables
|
|
185
|
-
- Comprendre le declencheur et les consequences de l'inaction
|
|
37
|
+
| Q1.1 | `cadrage.problem` |
|
|
38
|
+
| Q1.4 | `cadrage.asIs` |
|
|
39
|
+
| Q1.8 | `cadrage.toBe` |
|