@atlashub/smartstack-cli 2.1.0 → 2.3.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 (38) hide show
  1. package/.documentation/business-analyse.html +1503 -1058
  2. package/dist/index.js +92 -55
  3. package/dist/index.js.map +1 -1
  4. package/package.json +10 -7
  5. package/templates/agents/ba-reader.md +250 -0
  6. package/templates/agents/ba-writer.md +210 -0
  7. package/templates/agents/docs-context-reader.md +51 -33
  8. package/templates/skills/_shared.md +2 -0
  9. package/templates/skills/business-analyse/SKILL.md +120 -108
  10. package/templates/skills/business-analyse/_shared.md +136 -146
  11. package/templates/skills/business-analyse/patterns/suggestion-catalog.md +478 -0
  12. package/templates/skills/business-analyse/questionnaire/01-context.md +3 -15
  13. package/templates/skills/business-analyse/questionnaire/03-scope.md +7 -7
  14. package/templates/skills/business-analyse/questionnaire/08-performance.md +7 -21
  15. package/templates/skills/business-analyse/questionnaire/09-constraints.md +0 -13
  16. package/templates/skills/business-analyse/questionnaire/10-documentation.md +0 -13
  17. package/templates/skills/business-analyse/questionnaire/12-migration.md +1 -1
  18. package/templates/skills/business-analyse/questionnaire.md +72 -76
  19. package/templates/skills/business-analyse/react/components.md +317 -154
  20. package/templates/skills/business-analyse/react/i18n-template.md +167 -106
  21. package/templates/skills/business-analyse/react/schema.md +474 -107
  22. package/templates/skills/business-analyse/schemas/feature-schema.json +860 -0
  23. package/templates/skills/business-analyse/steps/step-00-init.md +395 -285
  24. package/templates/skills/business-analyse/steps/step-01-analyse.md +523 -0
  25. package/templates/skills/business-analyse/steps/step-02-specify.md +899 -0
  26. package/templates/skills/business-analyse/steps/step-03-validate.md +1009 -0
  27. package/templates/skills/business-analyse/steps/step-04-handoff.md +1802 -0
  28. package/templates/skills/business-analyse/templates/tpl-handoff.md +49 -64
  29. package/templates/skills/business-analyse/steps/step-01-discover.md +0 -737
  30. package/templates/skills/business-analyse/steps/step-02-analyse.md +0 -299
  31. package/templates/skills/business-analyse/steps/step-03-specify.md +0 -472
  32. package/templates/skills/business-analyse/steps/step-04-validate.md +0 -335
  33. package/templates/skills/business-analyse/steps/step-05-handoff.md +0 -741
  34. package/templates/skills/business-analyse/steps/step-06-doc-html.md +0 -320
  35. package/templates/skills/business-analyse/templates/00-context.md +0 -105
  36. package/templates/skills/business-analyse/templates/tpl-brd.md +0 -97
  37. package/templates/skills/business-analyse/templates/tpl-discovery.md +0 -78
  38. package/templates/skills/business-analyse/tracking/change-template.md +0 -30
@@ -1,335 +0,0 @@
1
- ---
2
- name: step-04-validate
3
- description: Validation gate - APPROVED or REJECTED decision
4
- next_step: steps/step-05-handoff.md
5
- ---
6
-
7
- ## YOUR TASK:
8
-
9
- Validate that all specifications are complete and consistent.
10
- Gate decision: APPROVED or REJECTED with reasons.
11
-
12
- ## EXECUTION SEQUENCE:
13
-
14
- ### 1. Read Current State
15
-
16
- Read `{output_dir}/00-context.md` for state variables.
17
- Read all previous outputs:
18
- - `1-discovery.md`
19
- - `2-business-requirements.md`
20
- - `3-functional-specification.md`
21
-
22
- Update progress: `04-validate` -> "In Progress"
23
-
24
- **Read digest from previous step:**
25
- Read `{output_dir}/digest-03.md` for compressed context from previous step.
26
- **DO NOT read full output files** unless in resume mode (`-r`).
27
-
28
- ---
29
-
30
- ### 2. Completeness Checklist
31
-
32
- **Discovery validation:**
33
- - [ ] Business problem clearly defined
34
- - [ ] All stakeholders identified
35
- - [ ] Scope (In/Out) explicit
36
- - [ ] Acceptance criteria defined
37
- - [ ] No critical open questions
38
-
39
- **BRD validation:**
40
- - [ ] All business objectives measurable
41
- - [ ] All business rules have BR-ID
42
- - [ ] Rules are testable (conditions + examples)
43
- - [ ] Process flow documented
44
- - [ ] Data entities complete
45
-
46
- **FRD validation:**
47
- - [ ] All UC have permission mapping
48
- - [ ] All FR trace to BR
49
- - [ ] Permission matrix complete
50
- - [ ] UI wireframes provided
51
- - [ ] Gherkin scenarios cover happy path + errors
52
- - [ ] i18n keys defined for messages
53
- - [ ] Navigation hierarchy defined (Context/Application/Module/Section)
54
- - [ ] SeedData requirements identified (navigation, permissions, roles, rolePermissions)
55
- - [ ] Role-Permission assignment matrix specified (4 default roles)
56
-
57
- ---
58
-
59
- ### 3. Consistency Checks
60
-
61
- **Cross-reference validation:**
62
-
63
- | Check | Source | Target | Status |
64
- |-------|--------|--------|--------|
65
- | BR -> FR | 2-brd.md | 3-frd.md | {OK/FAIL} |
66
- | AC -> UC | 1-discovery.md | 3-frd.md | {OK/FAIL} |
67
- | Stakeholder -> Actor | 1-discovery.md | 3-frd.md | {OK/FAIL} |
68
- | Entity -> Endpoint | 2-brd.md | 3-frd.md | {OK/FAIL} |
69
-
70
- **Identify gaps:**
71
- - BR without FR coverage
72
- - AC without UC coverage
73
- - Endpoints without permissions
74
-
75
- ---
76
-
77
- ### 4. SmartStack Convention Validation
78
-
79
- **Permission path format:**
80
- ```
81
- VALID: business.{app}.{module}.{action}
82
- INVALID: business.{app}.{action}
83
- INVALID: {app}.{module}.{action}
84
- ```
85
-
86
- **NavRoute compliance:**
87
- - Controller route must match: `business.{app}.{module}`
88
- - Permissions must use same base path
89
-
90
- **Entity naming:**
91
- - PascalCase for entity names
92
- - Matches module naming convention
93
-
94
- **Folder structure conventions:**
95
- - Domain entities in `Domain/Business/{Application}/{Module}/` (not flat `Entities/`)
96
- - Application DTOs in `Application/Business/{Application}/{Module}/DTOs/` (not `Features/`)
97
- - Infrastructure configs in `Configurations/{Module}/` (subfolder per module)
98
- - Infrastructure services in `Services/{Module}/` (subfolder per module)
99
- - Infrastructure seeds in `Seeding/Data/{Module}/` (subfolder per module)
100
- - Controllers in `Controllers/Business/{Application}/` (grouped by context)
101
- - Table naming: `{prefix}_{EntityPlural}` in correct schema (`core` or `extensions`)
102
-
103
- **SeedData completeness:**
104
- - [ ] Navigation hierarchy specified (new Context/Application/Module/Section entries)
105
- - [ ] Translations specified for all 4 languages (fr, en, it, de)
106
- - [ ] Permission paths follow format `business.{app}.{module}.{action}`
107
- - [ ] Wildcard permission included (`business.{app}.{module}.*`)
108
- - [ ] Role-Permission matrix covers 4 default roles (Admin, Manager, Contributor, Viewer)
109
- - [ ] SeedData files listed in FRD section 6b
110
-
111
- ---
112
-
113
- ### 5. Documentation Freshness Check
114
-
115
- **If `docs-manifest.json` exists in project root:**
116
-
117
- | Check | Expected | Status |
118
- |-------|----------|--------|
119
- | Module has manifest entry | Entry exists | {OK/MISSING} |
120
- | Last doc update < 30 days from last code change | Within threshold | {OK/DRIFT} |
121
- | All 8 business-first sections present | 8/8 | {X/8} |
122
- | i18n FR complete (minimum) | All keys present | {OK/INCOMPLETE} |
123
- | frd-data.ts exists | File present | {OK/MISSING} |
124
-
125
- **If drift detected:**
126
- - Add to validation report: `"documentationDrift": true`
127
- - Add to issues: `"Documentation is {N} days behind code changes"`
128
- - Severity: WARNING (non-blocking for BA validation)
129
-
130
- **If `docs-manifest.json` absent:** Skip this section silently.
131
-
132
- ---
133
-
134
- ### 6. Risk Assessment
135
-
136
- | Risk | Severity | Mitigation |
137
- |------|----------|------------|
138
- | {identified risk} | High/Medium/Low | {mitigation strategy} |
139
-
140
- **Common risks to check:**
141
- - [ ] Missing error handling for integrations
142
- - [ ] Performance concerns for large datasets
143
- - [ ] Security gaps in permission model
144
- - [ ] Complex workflow without clear rollback
145
-
146
- ---
147
-
148
- ### 7. Make Decision
149
-
150
- **APPROVED if:**
151
- - All completeness checks pass (100%)
152
- - All consistency checks pass
153
- - No HIGH severity risks unmitigated
154
- - SmartStack conventions respected
155
-
156
- **REJECTED if:**
157
- - Any critical completeness check fails
158
- - Consistency gap found
159
- - HIGH severity risk without mitigation
160
- - Convention violations
161
-
162
- ---
163
-
164
- ### 8b. Generate Context Digest
165
-
166
- **Write digest to:** `{output_dir}/digest-04.md`
167
-
168
- ```markdown
169
- # Digest: Step 04 - Validate
170
-
171
- ## Changes
172
- - {output_dir}/validation.json: Validation report created
173
-
174
- ## Decisions
175
- - Gate decision: {APPROVED/REJECTED}
176
- - Completeness: {score}
177
- - Consistency: {all checks status}
178
-
179
- ## Findings
180
- - Convention compliance: {status}
181
- - Documentation drift: {status}
182
- - Risks: {count} identified, {count} mitigated
183
-
184
- ## State Updates
185
- | Variable | New Value |
186
- |----------|-----------|
187
- | validation_status | {APPROVED/REJECTED} |
188
- | completeness_score | {score} |
189
- | risk_count | {count} |
190
-
191
- ## For Next Step
192
- - Validation: {APPROVED/REJECTED}
193
- - If REJECTED: {list of issues to fix}
194
- - If APPROVED: ready for handoff generation
195
- ```
196
-
197
- ---
198
-
199
- ### 9. Generate Validation Report
200
-
201
- ```json
202
- {
203
- "featureId": "{feature_id}",
204
- "validatedAt": "{timestamp}",
205
- "validatedBy": "Business Analyst (Claude)",
206
- "decision": "APPROVED" | "REJECTED",
207
- "completeness": {
208
- "discovery": {
209
- "score": "5/5",
210
- "issues": []
211
- },
212
- "brd": {
213
- "score": "5/5",
214
- "issues": []
215
- },
216
- "frd": {
217
- "score": "6/6",
218
- "issues": []
219
- }
220
- },
221
- "consistency": {
222
- "brToFr": "OK",
223
- "acToUc": "OK",
224
- "stakeholderToActor": "OK",
225
- "entityToEndpoint": "OK"
226
- },
227
- "conventions": {
228
- "permissions": "OK",
229
- "navRoute": "OK",
230
- "naming": "OK",
231
- "folderStructure": "OK",
232
- "seedData": "OK"
233
- },
234
- "risks": [
235
- {
236
- "risk": "{description}",
237
- "severity": "Medium",
238
- "mitigation": "{strategy}",
239
- "status": "Mitigated"
240
- }
241
- ],
242
- "summary": "{Overall assessment}",
243
- "nextStep": "step-05-handoff" | "Revision required"
244
- }
245
- ```
246
-
247
- ---
248
-
249
- ### 10. Save Output
250
-
251
- Write to: `{output_dir}/validation.json`
252
-
253
- Update `00-context.md`:
254
- - Progress: `04-validate` -> "Complete"
255
- - Add validation status
256
-
257
- ---
258
-
259
- ### 11. Handle Decision
260
-
261
- **If APPROVED:**
262
-
263
- Display:
264
-
265
- | Field | Value |
266
- |-------|-------|
267
- | Step | VALIDATION |
268
- | Feature | {feature_id} |
269
- | Status | APPROVED |
270
- | Completeness | 100% |
271
- | Consistency | All checks passed |
272
- | Conventions | SmartStack compliant |
273
- | Risks | {count} mitigated |
274
- | Output | {output_dir}/validation.json |
275
- | Next | step-05-handoff (Development prompt) |
276
-
277
- Load next step: `steps/step-05-handoff.md`
278
-
279
- **If REJECTED:**
280
-
281
- Display:
282
-
283
- | Field | Value |
284
- |-------|-------|
285
- | Step | VALIDATION |
286
- | Feature | {feature_id} |
287
- | Status | REJECTED |
288
- | Issues | {issue 1}, {issue 2}, {issue 3} |
289
- | Action 1 | {action 1} |
290
- | Action 2 | {action 2} |
291
- | Next | Revise specifications |
292
-
293
- **Ask user:**
294
- ```json
295
- {
296
- "questions": [
297
- {
298
- "question": "How would you like to proceed?",
299
- "header": "Action",
300
- "options": [
301
- {"label": "Auto-revise", "description": "Claude fixes the identified issues"},
302
- {"label": "Manual revision", "description": "You fix and relaunch validation"},
303
- {"label": "Force approval", "description": "Continue despite issues (not recommended)"}
304
- ],
305
- "multiSelect": false
306
- }
307
- ]
308
- }
309
- ```
310
-
311
- ---
312
-
313
- ## OUTPUT FORMAT:
314
-
315
- This step produces:
316
- - `{output_dir}/validation.json` (created)
317
- - `{output_dir}/00-context.md` (updated)
318
-
319
- Gate decision enables or blocks next step.
320
-
321
- ## ERROR HANDLING:
322
-
323
- **If previous output files are missing:**
324
- 1. List which files exist vs expected
325
- 2. If partial: validate only available documents
326
- 3. Add "Missing document" as CRITICAL issue in validation report
327
-
328
- **If validation gate REJECTED:**
329
- 1. Present issues to user with severity
330
- 2. Offer: auto-revise / manual revision / force approval
331
- 3. If auto-revise: loop back to the step that needs fixing
332
-
333
- ## NEXT STEP:
334
-
335
- After completion, proceed to `steps/step-05-handoff.md`