@atlashub/smartstack-cli 1.5.1 → 1.5.3
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/.documentation/css/styles.css +2168 -2168
- package/.documentation/js/app.js +794 -794
- package/config/default-config.json +86 -86
- package/config/settings.json +53 -53
- package/config/settings.local.example.json +16 -16
- package/dist/index.js +0 -0
- package/dist/index.js.map +1 -1
- package/package.json +88 -88
- package/templates/agents/action.md +36 -36
- package/templates/agents/efcore/conflicts.md +84 -84
- package/templates/agents/efcore/db-deploy.md +51 -51
- package/templates/agents/efcore/db-reset.md +59 -59
- package/templates/agents/efcore/db-seed.md +56 -56
- package/templates/agents/efcore/db-status.md +64 -64
- package/templates/agents/efcore/migration.md +85 -85
- package/templates/agents/efcore/rebase-snapshot.md +62 -62
- package/templates/agents/efcore/scan.md +90 -90
- package/templates/agents/efcore/squash.md +67 -67
- package/templates/agents/explore-codebase.md +65 -65
- package/templates/agents/explore-docs.md +97 -97
- package/templates/agents/fix-grammar.md +49 -49
- package/templates/agents/gitflow/abort.md +45 -45
- package/templates/agents/gitflow/cleanup.md +85 -85
- package/templates/agents/gitflow/commit.md +40 -40
- package/templates/agents/gitflow/exec.md +48 -48
- package/templates/agents/gitflow/finish.md +92 -92
- package/templates/agents/gitflow/init.md +139 -139
- package/templates/agents/gitflow/merge.md +62 -62
- package/templates/agents/gitflow/plan.md +42 -42
- package/templates/agents/gitflow/pr.md +78 -78
- package/templates/agents/gitflow/review.md +49 -49
- package/templates/agents/gitflow/start.md +61 -61
- package/templates/agents/gitflow/status.md +32 -32
- package/templates/agents/snipper.md +36 -36
- package/templates/agents/websearch.md +46 -46
- package/templates/commands/_resources/formatting-guide.md +124 -124
- package/templates/commands/ai-prompt.md +315 -315
- package/templates/commands/apex/1-analyze.md +100 -100
- package/templates/commands/apex/2-plan.md +145 -145
- package/templates/commands/apex/3-execute.md +171 -171
- package/templates/commands/apex/4-examine.md +116 -116
- package/templates/commands/apex/5-tasks.md +209 -209
- package/templates/commands/apex.md +76 -76
- package/templates/commands/application/create.md +362 -362
- package/templates/commands/application/templates-backend.md +463 -463
- package/templates/commands/application/templates-frontend.md +517 -517
- package/templates/commands/application/templates-i18n.md +478 -478
- package/templates/commands/application/templates-seed.md +362 -362
- package/templates/commands/application.md +303 -303
- package/templates/commands/business-analyse/0-orchestrate.md +640 -640
- package/templates/commands/business-analyse/1-init.md +269 -269
- package/templates/commands/business-analyse/2-discover.md +520 -520
- package/templates/commands/business-analyse/3-analyse.md +408 -408
- package/templates/commands/business-analyse/4-specify.md +598 -598
- package/templates/commands/business-analyse/5-validate.md +326 -326
- package/templates/commands/business-analyse/6-handoff.md +746 -746
- package/templates/commands/business-analyse/7-doc-html.md +602 -602
- package/templates/commands/business-analyse/bug.md +325 -325
- package/templates/commands/business-analyse/change-request.md +368 -368
- package/templates/commands/business-analyse/hotfix.md +200 -200
- package/templates/commands/business-analyse.md +640 -640
- package/templates/commands/controller/create.md +216 -216
- package/templates/commands/controller/postman-templates.md +528 -528
- package/templates/commands/controller/templates.md +600 -600
- package/templates/commands/controller.md +337 -337
- package/templates/commands/create/agent.md +138 -138
- package/templates/commands/create/command.md +166 -166
- package/templates/commands/create/hook.md +234 -234
- package/templates/commands/create/plugin.md +329 -329
- package/templates/commands/create/project.md +507 -507
- package/templates/commands/create/skill.md +199 -199
- package/templates/commands/create.md +220 -220
- package/templates/commands/debug.md +95 -95
- package/templates/commands/documentation/module.md +202 -202
- package/templates/commands/documentation/templates.md +432 -432
- package/templates/commands/documentation.md +190 -190
- package/templates/commands/efcore/_env-check.md +153 -153
- package/templates/commands/efcore/conflicts.md +186 -186
- package/templates/commands/efcore/db-deploy.md +193 -193
- package/templates/commands/efcore/db-reset.md +426 -426
- package/templates/commands/efcore/db-seed.md +326 -326
- package/templates/commands/efcore/db-status.md +226 -226
- package/templates/commands/efcore/migration.md +400 -400
- package/templates/commands/efcore/rebase-snapshot.md +264 -264
- package/templates/commands/efcore/scan.md +198 -198
- package/templates/commands/efcore/squash.md +298 -298
- package/templates/commands/efcore.md +224 -224
- package/templates/commands/epct.md +69 -69
- package/templates/commands/explain.md +186 -186
- package/templates/commands/explore.md +45 -45
- package/templates/commands/feature-full.md +267 -267
- package/templates/commands/gitflow/1-init.md +1038 -1038
- package/templates/commands/gitflow/10-start.md +768 -768
- package/templates/commands/gitflow/11-finish.md +457 -457
- package/templates/commands/gitflow/12-cleanup.md +276 -276
- package/templates/commands/gitflow/13-sync.md +216 -216
- package/templates/commands/gitflow/14-rebase.md +251 -251
- package/templates/commands/gitflow/2-status.md +277 -277
- package/templates/commands/gitflow/3-commit.md +344 -344
- package/templates/commands/gitflow/4-plan.md +145 -145
- package/templates/commands/gitflow/5-exec.md +147 -147
- package/templates/commands/gitflow/6-abort.md +344 -344
- package/templates/commands/gitflow/7-pull-request.md +453 -355
- package/templates/commands/gitflow/8-review.md +240 -176
- package/templates/commands/gitflow/9-merge.md +451 -365
- package/templates/commands/gitflow.md +128 -128
- package/templates/commands/implement.md +663 -663
- package/templates/commands/init.md +567 -567
- package/templates/commands/mcp-integration.md +330 -330
- package/templates/commands/notification.md +129 -129
- package/templates/commands/oneshot.md +57 -57
- package/templates/commands/quick-search.md +72 -72
- package/templates/commands/ralph-loop/cancel-ralph.md +18 -18
- package/templates/commands/ralph-loop/help.md +126 -126
- package/templates/commands/ralph-loop/ralph-loop.md +18 -18
- package/templates/commands/review.md +106 -106
- package/templates/commands/utils/test-web-config.md +160 -160
- package/templates/commands/utils/test-web.md +151 -151
- package/templates/commands/validate.md +233 -233
- package/templates/commands/workflow.md +193 -193
- package/templates/gitflow/config.json +138 -138
- package/templates/hooks/ef-migration-check.md +139 -139
- package/templates/hooks/hooks.json +25 -25
- package/templates/hooks/stop-hook.sh +177 -177
- package/templates/skills/ai-prompt/SKILL.md +778 -778
- package/templates/skills/application/SKILL.md +563 -563
- package/templates/skills/application/templates-backend.md +450 -450
- package/templates/skills/application/templates-frontend.md +531 -531
- package/templates/skills/application/templates-i18n.md +520 -520
- package/templates/skills/application/templates-seed.md +647 -647
- package/templates/skills/business-analyse/SKILL.md +191 -191
- package/templates/skills/business-analyse/questionnaire.md +283 -283
- package/templates/skills/business-analyse/templates-frd.md +477 -477
- package/templates/skills/business-analyse/templates-react.md +580 -580
- package/templates/skills/controller/SKILL.md +240 -240
- package/templates/skills/controller/postman-templates.md +614 -614
- package/templates/skills/controller/templates.md +1468 -1468
- package/templates/skills/documentation/SKILL.md +133 -133
- package/templates/skills/documentation/templates.md +476 -476
- package/templates/skills/feature-full/SKILL.md +838 -838
- package/templates/skills/notification/SKILL.md +555 -555
- package/templates/skills/ui-components/SKILL.md +870 -870
- package/templates/skills/workflow/SKILL.md +582 -582
- package/templates/test-web/api-health.json +38 -38
- package/templates/test-web/minimal.json +19 -19
- package/templates/test-web/npm-package.json +46 -46
- package/templates/test-web/seo-check.json +54 -54
|
@@ -1,269 +1,269 @@
|
|
|
1
|
-
---
|
|
2
|
-
description: Phase 1 - Initialize Business Analysis structure (ULTRATHINK)
|
|
3
|
-
agent: ba-init
|
|
4
|
-
model: haiku
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Phase 1: Initialisation Business Analyse
|
|
8
|
-
|
|
9
|
-
> **Modèle:** Haiku (setup structure, pas de décision complexe)
|
|
10
|
-
> **Coût estimé:** ~$0.02
|
|
11
|
-
|
|
12
|
-
---
|
|
13
|
-
|
|
14
|
-
## PHASE 0: VALIDATION CONTEXTE BUSINESS (BLOQUANT)
|
|
15
|
-
|
|
16
|
-
```
|
|
17
|
-
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
18
|
-
║ VALIDATION OBLIGATOIRE AVANT TOUTE ACTION ║
|
|
19
|
-
╠══════════════════════════════════════════════════════════════════════════════╣
|
|
20
|
-
║ ║
|
|
21
|
-
║ 1. VÉRIFIER que le contexte demandé est "business" ║
|
|
22
|
-
║ ║
|
|
23
|
-
║ SI contexte IN ["platform", "personal", "system"]: ║
|
|
24
|
-
║ ❌ ERREUR: "La Business Analyse est réservée au contexte 'business'. ║
|
|
25
|
-
║ Les contextes platform/personal/system sont gérés par le core ║
|
|
26
|
-
║ SmartStack. Contact: support@atlshub.ch" ║
|
|
27
|
-
║ → ABORT ║
|
|
28
|
-
║ ║
|
|
29
|
-
║ 2. VÉRIFIER la hiérarchie: Business > Application > Module > Section ║
|
|
30
|
-
║ ║
|
|
31
|
-
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
32
|
-
```
|
|
33
|
-
|
|
34
|
-
---
|
|
35
|
-
|
|
36
|
-
## STEP 1: Collecte des paramètres
|
|
37
|
-
|
|
38
|
-
```javascript
|
|
39
|
-
AskUserQuestion({
|
|
40
|
-
questions: [
|
|
41
|
-
{
|
|
42
|
-
question: "Quel est le nom de l'APPLICATION business?",
|
|
43
|
-
header: "Application",
|
|
44
|
-
options: [
|
|
45
|
-
{ label: "Nouvelle application", description: "Créer une nouvelle application business" },
|
|
46
|
-
{ label: "Application existante", description: "Sélectionner une application existante" }
|
|
47
|
-
],
|
|
48
|
-
multiSelect: false
|
|
49
|
-
},
|
|
50
|
-
{
|
|
51
|
-
question: "Quel est le nom du MODULE dans cette application?",
|
|
52
|
-
header: "Module",
|
|
53
|
-
options: [
|
|
54
|
-
{ label: "Nouveau module", description: "Créer un nouveau module" },
|
|
55
|
-
{ label: "Module existant", description: "Ajouter une feature à un module existant" }
|
|
56
|
-
],
|
|
57
|
-
multiSelect: false
|
|
58
|
-
}
|
|
59
|
-
]
|
|
60
|
-
})
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
**Si nouvelle application ou module:**
|
|
64
|
-
- Demander le nom (kebab-case)
|
|
65
|
-
- Demander une description courte
|
|
66
|
-
|
|
67
|
-
---
|
|
68
|
-
|
|
69
|
-
## STEP 2: Scan de la structure existante
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
# Scanner les applications business existantes
|
|
73
|
-
EXISTING_APPS=$(find .business-analyse/applications/business -maxdepth 1 -type d 2>/dev/null | tail -n +2)
|
|
74
|
-
|
|
75
|
-
# Scanner les modules existants
|
|
76
|
-
if [ -n "$APPLICATION" ]; then
|
|
77
|
-
EXISTING_MODULES=$(find .business-analyse/applications/business/$APPLICATION/modules -maxdepth 1 -type d 2>/dev/null | tail -n +2)
|
|
78
|
-
fi
|
|
79
|
-
|
|
80
|
-
# Scanner le code existant pour patterns
|
|
81
|
-
echo "Scanning existing code patterns..."
|
|
82
|
-
EXISTING_ENTITIES=$(find src -name "*.cs" -path "*/Entities/*" 2>/dev/null | head -20)
|
|
83
|
-
EXISTING_CONTROLLERS=$(find src -name "*Controller.cs" 2>/dev/null | head -20)
|
|
84
|
-
```
|
|
85
|
-
|
|
86
|
-
---
|
|
87
|
-
|
|
88
|
-
## STEP 3: Génération du Feature ID
|
|
89
|
-
|
|
90
|
-
```bash
|
|
91
|
-
# Lire le dernier ID utilisé
|
|
92
|
-
LAST_ID=$(cat .business-analyse/config.json 2>/dev/null | grep -oP '"lastFeatureId":\s*\K\d+' || echo "0")
|
|
93
|
-
NEW_ID=$(printf "%03d" $((LAST_ID + 1)))
|
|
94
|
-
FEATURE_ID="FEAT-$NEW_ID"
|
|
95
|
-
|
|
96
|
-
echo "Feature ID: $FEATURE_ID"
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
---
|
|
100
|
-
|
|
101
|
-
## STEP 4: Création de la structure
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
# Variables
|
|
105
|
-
APP_DIR=".business-analyse/applications/business/$APPLICATION"
|
|
106
|
-
MODULE_DIR="$APP_DIR/modules/$MODULE"
|
|
107
|
-
FEATURE_DIR="$MODULE_DIR/features/$FEATURE_ID-$FEATURE_NAME"
|
|
108
|
-
|
|
109
|
-
# Créer la structure
|
|
110
|
-
mkdir -p "$FEATURE_DIR/tracking/changes"
|
|
111
|
-
mkdir -p "$FEATURE_DIR/tracking/bugs"
|
|
112
|
-
mkdir -p ".business-analyse/templates"
|
|
113
|
-
mkdir -p ".business-analyse/documentation"
|
|
114
|
-
```
|
|
115
|
-
|
|
116
|
-
### Structure créée
|
|
117
|
-
|
|
118
|
-
```
|
|
119
|
-
.business-analyse/
|
|
120
|
-
├── config.json # Configuration globale
|
|
121
|
-
├── glossary.md # Glossaire unifié
|
|
122
|
-
│
|
|
123
|
-
└── applications/
|
|
124
|
-
└── business/ # Contexte BUSINESS uniquement
|
|
125
|
-
└── {application}/
|
|
126
|
-
├── context.md # Description application
|
|
127
|
-
└── modules/
|
|
128
|
-
└── {module}/
|
|
129
|
-
├── context.md # Description module
|
|
130
|
-
└── features/
|
|
131
|
-
└── FEAT-XXX-{name}/
|
|
132
|
-
├── tracking/
|
|
133
|
-
│ ├── changes/
|
|
134
|
-
│ └── bugs/
|
|
135
|
-
└── (documents générés par phases suivantes)
|
|
136
|
-
```
|
|
137
|
-
|
|
138
|
-
---
|
|
139
|
-
|
|
140
|
-
## STEP 5: Génération des fichiers contexte
|
|
141
|
-
|
|
142
|
-
### config.json
|
|
143
|
-
|
|
144
|
-
```json
|
|
145
|
-
{
|
|
146
|
-
"project": "{ProjectName}",
|
|
147
|
-
"version": "1.0.0",
|
|
148
|
-
"lastFeatureId": {NEW_ID},
|
|
149
|
-
"context": "business",
|
|
150
|
-
"standards": ["BABOK-v3", "IEEE-830"],
|
|
151
|
-
"models": {
|
|
152
|
-
"discover": "opus",
|
|
153
|
-
"analyse": "sonnet",
|
|
154
|
-
"specify": "sonnet",
|
|
155
|
-
"validate": "haiku",
|
|
156
|
-
"handoff": "opus",
|
|
157
|
-
"doc-html": "sonnet"
|
|
158
|
-
},
|
|
159
|
-
"outputPaths": {
|
|
160
|
-
"docs": "web/smartstack-web/src/pages/docs/business",
|
|
161
|
-
"i18n": "web/smartstack-web/src/i18n/locales"
|
|
162
|
-
},
|
|
163
|
-
"contact": "support@atlshub.ch"
|
|
164
|
-
}
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
### context.md (Application)
|
|
168
|
-
|
|
169
|
-
```markdown
|
|
170
|
-
# Application: {ApplicationName}
|
|
171
|
-
|
|
172
|
-
> **Contexte:** business
|
|
173
|
-
> **Créé:** {DATE}
|
|
174
|
-
> **Permission base:** business.{application}.*
|
|
175
|
-
|
|
176
|
-
## Description
|
|
177
|
-
|
|
178
|
-
{Description de l'application}
|
|
179
|
-
|
|
180
|
-
## Modules
|
|
181
|
-
|
|
182
|
-
| Module | Description | Status |
|
|
183
|
-
|--------|-------------|--------|
|
|
184
|
-
| {module} | {description} | Active |
|
|
185
|
-
|
|
186
|
-
## Stakeholders
|
|
187
|
-
|
|
188
|
-
| Rôle | Responsabilité |
|
|
189
|
-
|------|----------------|
|
|
190
|
-
| Product Owner | {à définir} |
|
|
191
|
-
| Tech Lead | {à définir} |
|
|
192
|
-
```
|
|
193
|
-
|
|
194
|
-
### context.md (Module)
|
|
195
|
-
|
|
196
|
-
```markdown
|
|
197
|
-
# Module: {ModuleName}
|
|
198
|
-
|
|
199
|
-
> **Application:** business/{application}
|
|
200
|
-
> **Créé:** {DATE}
|
|
201
|
-
> **Permission base:** business.{application}.{module}.*
|
|
202
|
-
|
|
203
|
-
## Description
|
|
204
|
-
|
|
205
|
-
{Description du module}
|
|
206
|
-
|
|
207
|
-
## Features
|
|
208
|
-
|
|
209
|
-
| ID | Nom | Status | Version |
|
|
210
|
-
|----|-----|--------|---------|
|
|
211
|
-
| FEAT-XXX | {name} | Init | 1.0 |
|
|
212
|
-
|
|
213
|
-
## Dépendances
|
|
214
|
-
|
|
215
|
-
| Module/Système | Type | Description |
|
|
216
|
-
|----------------|------|-------------|
|
|
217
|
-
| {dépendance} | Interne/Externe | {description} |
|
|
218
|
-
```
|
|
219
|
-
|
|
220
|
-
---
|
|
221
|
-
|
|
222
|
-
## STEP 6: Résumé
|
|
223
|
-
|
|
224
|
-
```
|
|
225
|
-
================================================================================
|
|
226
|
-
BUSINESS ANALYSE - INITIALISATION COMPLÈTE
|
|
227
|
-
================================================================================
|
|
228
|
-
|
|
229
|
-
FEATURE: {FEATURE_ID} - {FEATURE_NAME}
|
|
230
|
-
CONTEXTE: business (validé)
|
|
231
|
-
APPLICATION: business/{application}
|
|
232
|
-
MODULE: business/{application}/{module}
|
|
233
|
-
PERMISSION BASE: business.{application}.{module}.*
|
|
234
|
-
|
|
235
|
-
STRUCTURE CRÉÉE:
|
|
236
|
-
.business-analyse/applications/business/{application}/modules/{module}/features/{FEATURE_ID}-{name}/
|
|
237
|
-
|
|
238
|
-
FICHIERS GÉNÉRÉS:
|
|
239
|
-
✓ config.json
|
|
240
|
-
✓ context.md (application)
|
|
241
|
-
✓ context.md (module)
|
|
242
|
-
|
|
243
|
-
================================================================================
|
|
244
|
-
PROCHAINE ÉTAPE
|
|
245
|
-
================================================================================
|
|
246
|
-
|
|
247
|
-
Lancez la phase de découverte:
|
|
248
|
-
|
|
249
|
-
/business-analyse:2-discover {FEATURE_ID}
|
|
250
|
-
|
|
251
|
-
Cette phase utilisera le modèle OPUS avec ULTRATHINK pour une élicitation
|
|
252
|
-
exhaustive des besoins.
|
|
253
|
-
|
|
254
|
-
================================================================================
|
|
255
|
-
|
|
256
|
-
Contact support: support@atlshub.ch
|
|
257
|
-
```
|
|
258
|
-
|
|
259
|
-
---
|
|
260
|
-
|
|
261
|
-
## Validation
|
|
262
|
-
|
|
263
|
-
| Critère | Status |
|
|
264
|
-
|---------|--------|
|
|
265
|
-
| Contexte = business | ✅ Validé |
|
|
266
|
-
| Structure hiérarchique | ✅ Créée |
|
|
267
|
-
| Feature ID unique | ✅ Généré |
|
|
268
|
-
| Fichiers contexte | ✅ Créés |
|
|
269
|
-
| config.json | ✅ Mis à jour |
|
|
1
|
+
---
|
|
2
|
+
description: Phase 1 - Initialize Business Analysis structure (ULTRATHINK)
|
|
3
|
+
agent: ba-init
|
|
4
|
+
model: haiku
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Phase 1: Initialisation Business Analyse
|
|
8
|
+
|
|
9
|
+
> **Modèle:** Haiku (setup structure, pas de décision complexe)
|
|
10
|
+
> **Coût estimé:** ~$0.02
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
## PHASE 0: VALIDATION CONTEXTE BUSINESS (BLOQUANT)
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
╔══════════════════════════════════════════════════════════════════════════════╗
|
|
18
|
+
║ VALIDATION OBLIGATOIRE AVANT TOUTE ACTION ║
|
|
19
|
+
╠══════════════════════════════════════════════════════════════════════════════╣
|
|
20
|
+
║ ║
|
|
21
|
+
║ 1. VÉRIFIER que le contexte demandé est "business" ║
|
|
22
|
+
║ ║
|
|
23
|
+
║ SI contexte IN ["platform", "personal", "system"]: ║
|
|
24
|
+
║ ❌ ERREUR: "La Business Analyse est réservée au contexte 'business'. ║
|
|
25
|
+
║ Les contextes platform/personal/system sont gérés par le core ║
|
|
26
|
+
║ SmartStack. Contact: support@atlshub.ch" ║
|
|
27
|
+
║ → ABORT ║
|
|
28
|
+
║ ║
|
|
29
|
+
║ 2. VÉRIFIER la hiérarchie: Business > Application > Module > Section ║
|
|
30
|
+
║ ║
|
|
31
|
+
╚══════════════════════════════════════════════════════════════════════════════╝
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
## STEP 1: Collecte des paramètres
|
|
37
|
+
|
|
38
|
+
```javascript
|
|
39
|
+
AskUserQuestion({
|
|
40
|
+
questions: [
|
|
41
|
+
{
|
|
42
|
+
question: "Quel est le nom de l'APPLICATION business?",
|
|
43
|
+
header: "Application",
|
|
44
|
+
options: [
|
|
45
|
+
{ label: "Nouvelle application", description: "Créer une nouvelle application business" },
|
|
46
|
+
{ label: "Application existante", description: "Sélectionner une application existante" }
|
|
47
|
+
],
|
|
48
|
+
multiSelect: false
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
question: "Quel est le nom du MODULE dans cette application?",
|
|
52
|
+
header: "Module",
|
|
53
|
+
options: [
|
|
54
|
+
{ label: "Nouveau module", description: "Créer un nouveau module" },
|
|
55
|
+
{ label: "Module existant", description: "Ajouter une feature à un module existant" }
|
|
56
|
+
],
|
|
57
|
+
multiSelect: false
|
|
58
|
+
}
|
|
59
|
+
]
|
|
60
|
+
})
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
**Si nouvelle application ou module:**
|
|
64
|
+
- Demander le nom (kebab-case)
|
|
65
|
+
- Demander une description courte
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
## STEP 2: Scan de la structure existante
|
|
70
|
+
|
|
71
|
+
```bash
|
|
72
|
+
# Scanner les applications business existantes
|
|
73
|
+
EXISTING_APPS=$(find .business-analyse/applications/business -maxdepth 1 -type d 2>/dev/null | tail -n +2)
|
|
74
|
+
|
|
75
|
+
# Scanner les modules existants
|
|
76
|
+
if [ -n "$APPLICATION" ]; then
|
|
77
|
+
EXISTING_MODULES=$(find .business-analyse/applications/business/$APPLICATION/modules -maxdepth 1 -type d 2>/dev/null | tail -n +2)
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
# Scanner le code existant pour patterns
|
|
81
|
+
echo "Scanning existing code patterns..."
|
|
82
|
+
EXISTING_ENTITIES=$(find src -name "*.cs" -path "*/Entities/*" 2>/dev/null | head -20)
|
|
83
|
+
EXISTING_CONTROLLERS=$(find src -name "*Controller.cs" 2>/dev/null | head -20)
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## STEP 3: Génération du Feature ID
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
# Lire le dernier ID utilisé
|
|
92
|
+
LAST_ID=$(cat .business-analyse/config.json 2>/dev/null | grep -oP '"lastFeatureId":\s*\K\d+' || echo "0")
|
|
93
|
+
NEW_ID=$(printf "%03d" $((LAST_ID + 1)))
|
|
94
|
+
FEATURE_ID="FEAT-$NEW_ID"
|
|
95
|
+
|
|
96
|
+
echo "Feature ID: $FEATURE_ID"
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
---
|
|
100
|
+
|
|
101
|
+
## STEP 4: Création de la structure
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
# Variables
|
|
105
|
+
APP_DIR=".business-analyse/applications/business/$APPLICATION"
|
|
106
|
+
MODULE_DIR="$APP_DIR/modules/$MODULE"
|
|
107
|
+
FEATURE_DIR="$MODULE_DIR/features/$FEATURE_ID-$FEATURE_NAME"
|
|
108
|
+
|
|
109
|
+
# Créer la structure
|
|
110
|
+
mkdir -p "$FEATURE_DIR/tracking/changes"
|
|
111
|
+
mkdir -p "$FEATURE_DIR/tracking/bugs"
|
|
112
|
+
mkdir -p ".business-analyse/templates"
|
|
113
|
+
mkdir -p ".business-analyse/documentation"
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Structure créée
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
.business-analyse/
|
|
120
|
+
├── config.json # Configuration globale
|
|
121
|
+
├── glossary.md # Glossaire unifié
|
|
122
|
+
│
|
|
123
|
+
└── applications/
|
|
124
|
+
└── business/ # Contexte BUSINESS uniquement
|
|
125
|
+
└── {application}/
|
|
126
|
+
├── context.md # Description application
|
|
127
|
+
└── modules/
|
|
128
|
+
└── {module}/
|
|
129
|
+
├── context.md # Description module
|
|
130
|
+
└── features/
|
|
131
|
+
└── FEAT-XXX-{name}/
|
|
132
|
+
├── tracking/
|
|
133
|
+
│ ├── changes/
|
|
134
|
+
│ └── bugs/
|
|
135
|
+
└── (documents générés par phases suivantes)
|
|
136
|
+
```
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## STEP 5: Génération des fichiers contexte
|
|
141
|
+
|
|
142
|
+
### config.json
|
|
143
|
+
|
|
144
|
+
```json
|
|
145
|
+
{
|
|
146
|
+
"project": "{ProjectName}",
|
|
147
|
+
"version": "1.0.0",
|
|
148
|
+
"lastFeatureId": {NEW_ID},
|
|
149
|
+
"context": "business",
|
|
150
|
+
"standards": ["BABOK-v3", "IEEE-830"],
|
|
151
|
+
"models": {
|
|
152
|
+
"discover": "opus",
|
|
153
|
+
"analyse": "sonnet",
|
|
154
|
+
"specify": "sonnet",
|
|
155
|
+
"validate": "haiku",
|
|
156
|
+
"handoff": "opus",
|
|
157
|
+
"doc-html": "sonnet"
|
|
158
|
+
},
|
|
159
|
+
"outputPaths": {
|
|
160
|
+
"docs": "web/smartstack-web/src/pages/docs/business",
|
|
161
|
+
"i18n": "web/smartstack-web/src/i18n/locales"
|
|
162
|
+
},
|
|
163
|
+
"contact": "support@atlshub.ch"
|
|
164
|
+
}
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
### context.md (Application)
|
|
168
|
+
|
|
169
|
+
```markdown
|
|
170
|
+
# Application: {ApplicationName}
|
|
171
|
+
|
|
172
|
+
> **Contexte:** business
|
|
173
|
+
> **Créé:** {DATE}
|
|
174
|
+
> **Permission base:** business.{application}.*
|
|
175
|
+
|
|
176
|
+
## Description
|
|
177
|
+
|
|
178
|
+
{Description de l'application}
|
|
179
|
+
|
|
180
|
+
## Modules
|
|
181
|
+
|
|
182
|
+
| Module | Description | Status |
|
|
183
|
+
|--------|-------------|--------|
|
|
184
|
+
| {module} | {description} | Active |
|
|
185
|
+
|
|
186
|
+
## Stakeholders
|
|
187
|
+
|
|
188
|
+
| Rôle | Responsabilité |
|
|
189
|
+
|------|----------------|
|
|
190
|
+
| Product Owner | {à définir} |
|
|
191
|
+
| Tech Lead | {à définir} |
|
|
192
|
+
```
|
|
193
|
+
|
|
194
|
+
### context.md (Module)
|
|
195
|
+
|
|
196
|
+
```markdown
|
|
197
|
+
# Module: {ModuleName}
|
|
198
|
+
|
|
199
|
+
> **Application:** business/{application}
|
|
200
|
+
> **Créé:** {DATE}
|
|
201
|
+
> **Permission base:** business.{application}.{module}.*
|
|
202
|
+
|
|
203
|
+
## Description
|
|
204
|
+
|
|
205
|
+
{Description du module}
|
|
206
|
+
|
|
207
|
+
## Features
|
|
208
|
+
|
|
209
|
+
| ID | Nom | Status | Version |
|
|
210
|
+
|----|-----|--------|---------|
|
|
211
|
+
| FEAT-XXX | {name} | Init | 1.0 |
|
|
212
|
+
|
|
213
|
+
## Dépendances
|
|
214
|
+
|
|
215
|
+
| Module/Système | Type | Description |
|
|
216
|
+
|----------------|------|-------------|
|
|
217
|
+
| {dépendance} | Interne/Externe | {description} |
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
---
|
|
221
|
+
|
|
222
|
+
## STEP 6: Résumé
|
|
223
|
+
|
|
224
|
+
```
|
|
225
|
+
================================================================================
|
|
226
|
+
BUSINESS ANALYSE - INITIALISATION COMPLÈTE
|
|
227
|
+
================================================================================
|
|
228
|
+
|
|
229
|
+
FEATURE: {FEATURE_ID} - {FEATURE_NAME}
|
|
230
|
+
CONTEXTE: business (validé)
|
|
231
|
+
APPLICATION: business/{application}
|
|
232
|
+
MODULE: business/{application}/{module}
|
|
233
|
+
PERMISSION BASE: business.{application}.{module}.*
|
|
234
|
+
|
|
235
|
+
STRUCTURE CRÉÉE:
|
|
236
|
+
.business-analyse/applications/business/{application}/modules/{module}/features/{FEATURE_ID}-{name}/
|
|
237
|
+
|
|
238
|
+
FICHIERS GÉNÉRÉS:
|
|
239
|
+
✓ config.json
|
|
240
|
+
✓ context.md (application)
|
|
241
|
+
✓ context.md (module)
|
|
242
|
+
|
|
243
|
+
================================================================================
|
|
244
|
+
PROCHAINE ÉTAPE
|
|
245
|
+
================================================================================
|
|
246
|
+
|
|
247
|
+
Lancez la phase de découverte:
|
|
248
|
+
|
|
249
|
+
/business-analyse:2-discover {FEATURE_ID}
|
|
250
|
+
|
|
251
|
+
Cette phase utilisera le modèle OPUS avec ULTRATHINK pour une élicitation
|
|
252
|
+
exhaustive des besoins.
|
|
253
|
+
|
|
254
|
+
================================================================================
|
|
255
|
+
|
|
256
|
+
Contact support: support@atlshub.ch
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
---
|
|
260
|
+
|
|
261
|
+
## Validation
|
|
262
|
+
|
|
263
|
+
| Critère | Status |
|
|
264
|
+
|---------|--------|
|
|
265
|
+
| Contexte = business | ✅ Validé |
|
|
266
|
+
| Structure hiérarchique | ✅ Créée |
|
|
267
|
+
| Feature ID unique | ✅ Généré |
|
|
268
|
+
| Fichiers contexte | ✅ Créés |
|
|
269
|
+
| config.json | ✅ Mis à jour |
|