@atlashub/smartstack-cli 3.39.0 → 3.40.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 (471) hide show
  1. package/.documentation/apex.html +644 -644
  2. package/.documentation/css/styles.css +2320 -2320
  3. package/.documentation/init.html +1377 -1377
  4. package/.documentation/js/app.js +780 -780
  5. package/.documentation/prd-json-v2.0.0.md +396 -396
  6. package/.documentation/testing-ba-e2e.md +462 -462
  7. package/config/default-config.json +95 -95
  8. package/config/mcp-defaults.json +62 -62
  9. package/config/settings.json +53 -53
  10. package/config/settings.local.example.json +16 -16
  11. package/dist/index.js.map +1 -1
  12. package/dist/mcp-entry.mjs +6 -4
  13. package/dist/mcp-entry.mjs.map +1 -1
  14. package/package.json +115 -115
  15. package/scripts/extract-api-endpoints.ts +325 -325
  16. package/scripts/extract-business-rules.ts +440 -440
  17. package/scripts/generate-doc-with-mock-ui.ts +804 -804
  18. package/scripts/health-check.sh +168 -168
  19. package/scripts/postinstall.js +18 -18
  20. package/templates/agents/action.md +37 -37
  21. package/templates/agents/ba-reader.md +378 -378
  22. package/templates/agents/ba-writer.md +861 -861
  23. package/templates/agents/code-reviewer.md +163 -163
  24. package/templates/agents/db-reader.md +149 -149
  25. package/templates/agents/docs-context-reader.md +143 -143
  26. package/templates/agents/docs-sync-checker.md +122 -122
  27. package/templates/agents/efcore/conflicts.md +84 -84
  28. package/templates/agents/efcore/db-deploy.md +74 -74
  29. package/templates/agents/efcore/db-reset.md +85 -85
  30. package/templates/agents/efcore/db-seed.md +61 -61
  31. package/templates/agents/efcore/db-status.md +86 -86
  32. package/templates/agents/efcore/migration.md +186 -186
  33. package/templates/agents/efcore/rebase-snapshot.md +108 -108
  34. package/templates/agents/efcore/scan.md +92 -92
  35. package/templates/agents/efcore/squash.md +161 -161
  36. package/templates/agents/explore-codebase.md +66 -66
  37. package/templates/agents/explore-docs.md +98 -98
  38. package/templates/agents/fix-grammar.md +50 -50
  39. package/templates/agents/gitflow/abort.md +45 -45
  40. package/templates/agents/gitflow/cleanup.md +96 -96
  41. package/templates/agents/gitflow/commit.md +236 -236
  42. package/templates/agents/gitflow/exec.md +48 -48
  43. package/templates/agents/gitflow/finish.md +146 -146
  44. package/templates/agents/gitflow/init-clone.md +199 -199
  45. package/templates/agents/gitflow/init-detect.md +137 -137
  46. package/templates/agents/gitflow/init-validate.md +225 -225
  47. package/templates/agents/gitflow/init.md +340 -340
  48. package/templates/agents/gitflow/merge.md +145 -145
  49. package/templates/agents/gitflow/plan.md +42 -42
  50. package/templates/agents/gitflow/pr.md +191 -191
  51. package/templates/agents/gitflow/review.md +49 -49
  52. package/templates/agents/gitflow/start.md +147 -147
  53. package/templates/agents/gitflow/status.md +95 -95
  54. package/templates/agents/mcp-healthcheck.md +163 -163
  55. package/templates/agents/snipper.md +37 -37
  56. package/templates/agents/websearch.md +46 -46
  57. package/templates/hooks/appsettings-guard.sh +76 -76
  58. package/templates/hooks/docs-drift-check.md +96 -96
  59. package/templates/hooks/ef-migration-check.md +139 -139
  60. package/templates/hooks/hooks.json +58 -58
  61. package/templates/hooks/mcp-check.md +64 -64
  62. package/templates/hooks/ralph-mcp-logger.sh +46 -46
  63. package/templates/hooks/ralph-session-end.sh +69 -69
  64. package/templates/hooks/stop-hook.sh +177 -177
  65. package/templates/hooks/wsl-dotnet-cleanup.sh +24 -24
  66. package/templates/mcp-scaffolding/component.tsx.hbs +318 -318
  67. package/templates/mcp-scaffolding/controller.cs.hbs +192 -192
  68. package/templates/mcp-scaffolding/entity-extension.cs.hbs +239 -239
  69. package/templates/mcp-scaffolding/frontend/api-client.ts.hbs +116 -116
  70. package/templates/mcp-scaffolding/frontend/nav-routes.ts.hbs +133 -133
  71. package/templates/mcp-scaffolding/frontend/routes.tsx.hbs +126 -126
  72. package/templates/mcp-scaffolding/migrations/seed-roles.cs.hbs +261 -261
  73. package/templates/mcp-scaffolding/service-extension.cs.hbs +53 -53
  74. package/templates/mcp-scaffolding/tests/controller.test.cs.hbs +436 -436
  75. package/templates/mcp-scaffolding/tests/entity.test.cs.hbs +239 -239
  76. package/templates/mcp-scaffolding/tests/repository.test.cs.hbs +441 -441
  77. package/templates/mcp-scaffolding/tests/security.test.cs.hbs +442 -442
  78. package/templates/mcp-scaffolding/tests/service.test.cs.hbs +402 -402
  79. package/templates/mcp-scaffolding/tests/validator.test.cs.hbs +428 -428
  80. package/templates/project/DependencyInjection.Application.cs.template +25 -25
  81. package/templates/project/DependencyInjection.Infrastructure.cs.template +61 -61
  82. package/templates/project/DesignTimeExtensionsDbContextFactory.cs.template +70 -70
  83. package/templates/project/ExampleEntity.cs.template +116 -116
  84. package/templates/project/ExampleEntityConfiguration.cs.template +64 -64
  85. package/templates/project/ExampleService.cs.template +146 -146
  86. package/templates/project/ExtensionsDbContext.cs.template +41 -41
  87. package/templates/project/IExtensionsDbContext.cs.template +22 -22
  88. package/templates/project/Program.cs.template +47 -47
  89. package/templates/project/README.md +79 -79
  90. package/templates/project/api.ts.template +12 -12
  91. package/templates/project/appsettings.json.template +170 -170
  92. package/templates/project/claude-settings.json.template +5 -5
  93. package/templates/project/test-frontend/msw/handlers.ts +58 -58
  94. package/templates/project/test-frontend/msw/server.ts +25 -25
  95. package/templates/project/test-frontend/setup.ts +16 -16
  96. package/templates/project/test-frontend/test-utils.tsx +59 -59
  97. package/templates/project/test-frontend/vitest.config.ts +31 -31
  98. package/templates/ralph/README.md +93 -93
  99. package/templates/ralph/ralph.config.yaml +113 -113
  100. package/templates/scripts/setup-ralph-loop.sh +173 -173
  101. package/templates/skills/_resources/config-safety.md +61 -61
  102. package/templates/skills/_resources/context-digest-template.md +53 -53
  103. package/templates/skills/_resources/doc-context-cache.md +60 -60
  104. package/templates/skills/_resources/docs-manifest-schema.md +155 -155
  105. package/templates/skills/_resources/formatting-guide.md +124 -124
  106. package/templates/skills/_resources/mcp-validate-documentation-spec.md +181 -181
  107. package/templates/skills/_shared.md +228 -228
  108. package/templates/skills/admin/SKILL.md +48 -48
  109. package/templates/skills/ai-prompt/SKILL.md +107 -107
  110. package/templates/skills/ai-prompt/steps/step-00-init.md +47 -47
  111. package/templates/skills/ai-prompt/steps/step-01-implementation.md +122 -122
  112. package/templates/skills/apex/SKILL.md +168 -168
  113. package/templates/skills/apex/_shared.md +141 -141
  114. package/templates/skills/apex/references/agent-teams-protocol.md +164 -164
  115. package/templates/skills/apex/references/analysis-methods.md +141 -141
  116. package/templates/skills/apex/references/challenge-questions.md +145 -145
  117. package/templates/skills/apex/references/code-generation.md +412 -412
  118. package/templates/skills/apex/references/core-seed-data.md +1437 -1437
  119. package/templates/skills/apex/references/error-classification.md +144 -144
  120. package/templates/skills/apex/references/examine-build-validation.md +82 -82
  121. package/templates/skills/apex/references/execution-frontend-gates.md +177 -177
  122. package/templates/skills/apex/references/execution-frontend-patterns.md +105 -105
  123. package/templates/skills/apex/references/execution-layer1-rules.md +96 -96
  124. package/templates/skills/apex/references/initialization-challenge-flow.md +110 -110
  125. package/templates/skills/apex/references/planning-layer-mapping.md +151 -151
  126. package/templates/skills/apex/references/post-checks.md +1584 -1584
  127. package/templates/skills/apex/references/smartstack-api.md +1053 -1053
  128. package/templates/skills/apex/references/smartstack-frontend.md +1571 -1571
  129. package/templates/skills/apex/references/smartstack-layers.md +402 -402
  130. package/templates/skills/apex/steps/step-00-init.md +307 -307
  131. package/templates/skills/apex/steps/step-01-analyze.md +165 -165
  132. package/templates/skills/apex/steps/step-02-plan.md +144 -144
  133. package/templates/skills/apex/steps/step-03-execute.md +328 -328
  134. package/templates/skills/apex/steps/step-04-examine.md +263 -263
  135. package/templates/skills/apex/steps/step-05-deep-review.md +129 -129
  136. package/templates/skills/apex/steps/step-06-resolve.md +101 -101
  137. package/templates/skills/apex/steps/step-07-tests.md +238 -238
  138. package/templates/skills/apex/steps/step-08-run-tests.md +125 -125
  139. package/templates/skills/application/SKILL.md +4 -4
  140. package/templates/skills/application/references/application-roles-template.md +227 -227
  141. package/templates/skills/application/references/backend-controller-hierarchy.md +58 -58
  142. package/templates/skills/application/references/backend-entity-seeding.md +72 -72
  143. package/templates/skills/application/references/backend-seeding-and-dto-output.md +83 -83
  144. package/templates/skills/application/references/backend-table-prefix-mapping.md +79 -79
  145. package/templates/skills/application/references/backend-verification.md +88 -88
  146. package/templates/skills/application/references/frontend-i18n-and-output.md +67 -67
  147. package/templates/skills/application/references/frontend-route-naming.md +117 -117
  148. package/templates/skills/application/references/frontend-route-wiring-app-tsx.md +107 -107
  149. package/templates/skills/application/references/frontend-verification.md +156 -156
  150. package/templates/skills/application/references/migration-checklist-troubleshooting.md +1 -1
  151. package/templates/skills/application/references/provider-template.md +177 -177
  152. package/templates/skills/application/references/roles-client-project-handling.md +55 -55
  153. package/templates/skills/application/references/roles-fallback-procedure.md +149 -149
  154. package/templates/skills/application/references/test-coverage-requirements.md +213 -213
  155. package/templates/skills/application/references/test-frontend.md +73 -73
  156. package/templates/skills/application/references/test-prerequisites.md +72 -72
  157. package/templates/skills/application/steps/step-05-frontend.md +176 -176
  158. package/templates/skills/application/steps/step-06-migration.md +193 -193
  159. package/templates/skills/application/steps/step-07-tests.md +356 -356
  160. package/templates/skills/application/steps/step-08-documentation.md +137 -137
  161. package/templates/skills/application/templates-backend.md +463 -463
  162. package/templates/skills/application/templates-frontend.md +685 -685
  163. package/templates/skills/application/templates-i18n.md +520 -520
  164. package/templates/skills/application/templates-seed.md +1096 -1096
  165. package/templates/skills/business-analyse/SKILL.md +327 -327
  166. package/templates/skills/business-analyse/_architecture.md +123 -123
  167. package/templates/skills/business-analyse/_elicitation.md +206 -206
  168. package/templates/skills/business-analyse/_module-loop.md +115 -115
  169. package/templates/skills/business-analyse/_shared.md +383 -383
  170. package/templates/skills/business-analyse/_suggestions.md +34 -34
  171. package/templates/skills/business-analyse/html/ba-interactive.html +4477 -4477
  172. package/templates/skills/business-analyse/html/build-html.js +77 -77
  173. package/templates/skills/business-analyse/html/src/scripts/01-data-init.js +150 -150
  174. package/templates/skills/business-analyse/html/src/scripts/02-navigation.js +227 -227
  175. package/templates/skills/business-analyse/html/src/scripts/03-render-cadrage.js +199 -199
  176. package/templates/skills/business-analyse/html/src/scripts/04-render-modules.js +205 -205
  177. package/templates/skills/business-analyse/html/src/scripts/05-render-specs.js +647 -647
  178. package/templates/skills/business-analyse/html/src/scripts/06-render-consolidation.js +195 -195
  179. package/templates/skills/business-analyse/html/src/scripts/07-render-handoff.js +92 -92
  180. package/templates/skills/business-analyse/html/src/scripts/08-editing.js +135 -135
  181. package/templates/skills/business-analyse/html/src/scripts/09-export.js +168 -168
  182. package/templates/skills/business-analyse/html/src/scripts/10-comments.js +171 -171
  183. package/templates/skills/business-analyse/html/src/scripts/11-review-panel.js +166 -166
  184. package/templates/skills/business-analyse/html/src/styles/01-variables.css +38 -38
  185. package/templates/skills/business-analyse/html/src/styles/02-layout.css +101 -101
  186. package/templates/skills/business-analyse/html/src/styles/03-navigation.css +120 -120
  187. package/templates/skills/business-analyse/html/src/styles/04-cards.css +196 -196
  188. package/templates/skills/business-analyse/html/src/styles/05-modules.css +454 -454
  189. package/templates/skills/business-analyse/html/src/styles/06-wireframes.css +272 -272
  190. package/templates/skills/business-analyse/html/src/styles/07-comments.css +184 -184
  191. package/templates/skills/business-analyse/html/src/styles/08-review-panel.css +241 -241
  192. package/templates/skills/business-analyse/html/src/template.html +516 -516
  193. package/templates/skills/business-analyse/patterns/suggestion-catalog.md +546 -546
  194. package/templates/skills/business-analyse/questionnaire/00-application.md +160 -160
  195. package/templates/skills/business-analyse/questionnaire/00b-project.md +85 -85
  196. package/templates/skills/business-analyse/questionnaire/01-context.md +185 -185
  197. package/templates/skills/business-analyse/questionnaire/02-stakeholders.md +189 -189
  198. package/templates/skills/business-analyse/questionnaire/03-scope.md +164 -164
  199. package/templates/skills/business-analyse/questionnaire/04-data.md +88 -88
  200. package/templates/skills/business-analyse/questionnaire/05-integrations.md +58 -58
  201. package/templates/skills/business-analyse/questionnaire/06-security.md +68 -68
  202. package/templates/skills/business-analyse/questionnaire/07-ui.md +76 -76
  203. package/templates/skills/business-analyse/questionnaire/08-performance.md +42 -42
  204. package/templates/skills/business-analyse/questionnaire/09-constraints.md +45 -45
  205. package/templates/skills/business-analyse/questionnaire/10-documentation.md +43 -43
  206. package/templates/skills/business-analyse/questionnaire/11-data-lifecycle.md +59 -59
  207. package/templates/skills/business-analyse/questionnaire/12-migration.md +58 -58
  208. package/templates/skills/business-analyse/questionnaire/13-cross-module.md +69 -69
  209. package/templates/skills/business-analyse/questionnaire/14-risk-assumptions.md +135 -135
  210. package/templates/skills/business-analyse/questionnaire/15-success-metrics.md +136 -136
  211. package/templates/skills/business-analyse/questionnaire.md +337 -337
  212. package/templates/skills/business-analyse/react/application-viewer.md +242 -242
  213. package/templates/skills/business-analyse/react/components.md +551 -551
  214. package/templates/skills/business-analyse/react/i18n-template.md +306 -306
  215. package/templates/skills/business-analyse/references/acceptance-criteria.md +169 -169
  216. package/templates/skills/business-analyse/references/agent-module-prompt.md +362 -362
  217. package/templates/skills/business-analyse/references/agent-pooling-best-practices.md +557 -557
  218. package/templates/skills/business-analyse/references/analysis-semantic-checks.md +190 -190
  219. package/templates/skills/business-analyse/references/cache-warming-strategy.md +566 -566
  220. package/templates/skills/business-analyse/references/cadrage-challenge-patterns.md +41 -41
  221. package/templates/skills/business-analyse/references/cadrage-coverage-matrix.md +74 -74
  222. package/templates/skills/business-analyse/references/cadrage-pre-analysis.md +115 -115
  223. package/templates/skills/business-analyse/references/cadrage-shared-modules.md +68 -69
  224. package/templates/skills/business-analyse/references/cadrage-structure-cards.md +85 -85
  225. package/templates/skills/business-analyse/references/compilation-structure-cards.md +297 -297
  226. package/templates/skills/business-analyse/references/consolidation-structural-checks.md +107 -107
  227. package/templates/skills/business-analyse/references/deploy-data-build.md +180 -180
  228. package/templates/skills/business-analyse/references/deploy-modes.md +118 -118
  229. package/templates/skills/business-analyse/references/detection-strategies.md +424 -424
  230. package/templates/skills/business-analyse/references/entity-architecture-decision.md +218 -218
  231. package/templates/skills/business-analyse/references/handoff-file-templates.md +120 -120
  232. package/templates/skills/business-analyse/references/handoff-mappings.md +81 -81
  233. package/templates/skills/business-analyse/references/handoff-seeddata-generation.md +312 -312
  234. package/templates/skills/business-analyse/references/html-data-mapping.md +299 -299
  235. package/templates/skills/business-analyse/references/init-schema-deployment.md +65 -65
  236. package/templates/skills/business-analyse/references/naming-conventions.md +243 -243
  237. package/templates/skills/business-analyse/references/prd-generation.md +258 -258
  238. package/templates/skills/business-analyse/references/review-data-mapping.md +363 -363
  239. package/templates/skills/business-analyse/references/robustness-checks.md +542 -542
  240. package/templates/skills/business-analyse/references/spec-auto-inference.md +111 -111
  241. package/templates/skills/business-analyse/references/team-orchestration.md +1022 -1022
  242. package/templates/skills/business-analyse/references/ui-dashboard-spec.md +85 -85
  243. package/templates/skills/business-analyse/references/ui-resource-cards.md +259 -259
  244. package/templates/skills/business-analyse/references/validate-incremental-html.md +121 -121
  245. package/templates/skills/business-analyse/references/validation-checklist.md +347 -347
  246. package/templates/skills/business-analyse/references/wireframe-svg-style-guide.md +335 -335
  247. package/templates/skills/business-analyse/schemas/application-schema.json +453 -453
  248. package/templates/skills/business-analyse/schemas/feature-schema.json +53 -53
  249. package/templates/skills/business-analyse/schemas/project-schema.json +485 -485
  250. package/templates/skills/business-analyse/schemas/sections/analysis-schema.json +201 -201
  251. package/templates/skills/business-analyse/schemas/sections/discovery-schema.json +82 -82
  252. package/templates/skills/business-analyse/schemas/sections/handoff-schema.json +80 -80
  253. package/templates/skills/business-analyse/schemas/sections/metadata-schema.json +70 -70
  254. package/templates/skills/business-analyse/schemas/sections/specification-schema.json +547 -547
  255. package/templates/skills/business-analyse/schemas/sections/validation-schema.json +93 -93
  256. package/templates/skills/business-analyse/schemas/shared/common-defs.json +226 -226
  257. package/templates/skills/business-analyse/steps/step-00-init.md +575 -576
  258. package/templates/skills/business-analyse/steps/step-01-cadrage.md +767 -767
  259. package/templates/skills/business-analyse/steps/step-01b-applications.md +419 -419
  260. package/templates/skills/business-analyse/steps/step-02-decomposition.md +387 -387
  261. package/templates/skills/business-analyse/steps/step-03a-data.md +16 -16
  262. package/templates/skills/business-analyse/steps/step-03a1-setup.md +506 -506
  263. package/templates/skills/business-analyse/steps/step-03a2-analysis.md +252 -252
  264. package/templates/skills/business-analyse/steps/step-03b-ui.md +425 -425
  265. package/templates/skills/business-analyse/steps/step-03c-compile.md +611 -611
  266. package/templates/skills/business-analyse/steps/step-03d-validate.md +783 -783
  267. package/templates/skills/business-analyse/steps/step-04-consolidation.md +17 -17
  268. package/templates/skills/business-analyse/steps/step-04a-collect.md +415 -415
  269. package/templates/skills/business-analyse/steps/step-04b-analyze.md +163 -163
  270. package/templates/skills/business-analyse/steps/step-04c-decide.md +186 -186
  271. package/templates/skills/business-analyse/steps/step-05a-handoff.md +840 -840
  272. package/templates/skills/business-analyse/steps/step-05b-deploy.md +522 -522
  273. package/templates/skills/business-analyse/steps/step-05c-ralph-readiness.md +703 -703
  274. package/templates/skills/business-analyse/steps/step-06-review.md +278 -278
  275. package/templates/skills/business-analyse/templates/tpl-frd.md +168 -168
  276. package/templates/skills/business-analyse/templates/tpl-handoff.md +186 -186
  277. package/templates/skills/business-analyse/templates/tpl-launch-displays.md +59 -59
  278. package/templates/skills/business-analyse/templates/tpl-progress.md +172 -172
  279. package/templates/skills/business-analyse/templates-frd.md +476 -476
  280. package/templates/skills/business-analyse/templates-react.md +574 -574
  281. package/templates/skills/cc-agent/SKILL.md +129 -129
  282. package/templates/skills/cc-agent/references/agent-behavior-patterns.md +95 -95
  283. package/templates/skills/cc-agent/references/agent-frontmatter.md +213 -213
  284. package/templates/skills/cc-agent/references/permission-modes.md +102 -102
  285. package/templates/skills/cc-agent/references/tools-reference.md +144 -144
  286. package/templates/skills/cc-agent/steps/step-00-init.md +134 -134
  287. package/templates/skills/cc-agent/steps/step-01-design.md +186 -186
  288. package/templates/skills/cc-agent/steps/step-02-generate.md +131 -131
  289. package/templates/skills/cc-agent/steps/step-03-validate.md +130 -130
  290. package/templates/skills/cc-agent/templates/agent-categorized.md +67 -67
  291. package/templates/skills/cc-agent/templates/agent-standalone.md +56 -56
  292. package/templates/skills/cc-agent/templates/agent-with-skills.md +94 -94
  293. package/templates/skills/cc-audit/SKILL.md +108 -108
  294. package/templates/skills/cc-audit/references/agent-checklist.md +91 -91
  295. package/templates/skills/cc-audit/references/hook-checklist.md +110 -110
  296. package/templates/skills/cc-audit/references/skill-checklist.md +70 -70
  297. package/templates/skills/cc-audit/steps/step-00-init.md +98 -98
  298. package/templates/skills/cc-audit/steps/step-01-scan.md +142 -142
  299. package/templates/skills/cc-audit/steps/step-02-analyze.md +158 -158
  300. package/templates/skills/cc-audit/steps/step-03-report.md +142 -142
  301. package/templates/skills/cc-skill/SKILL.md +134 -134
  302. package/templates/skills/cc-skill/references/best-practices.md +167 -167
  303. package/templates/skills/cc-skill/references/frontmatter-reference.md +182 -182
  304. package/templates/skills/cc-skill/references/skill-patterns.md +199 -199
  305. package/templates/skills/cc-skill/steps/step-00-init.md +119 -119
  306. package/templates/skills/cc-skill/steps/step-01-design.md +199 -199
  307. package/templates/skills/cc-skill/steps/step-02-generate.md +145 -145
  308. package/templates/skills/cc-skill/steps/step-03-steps.md +151 -151
  309. package/templates/skills/cc-skill/steps/step-04-validate.md +124 -124
  310. package/templates/skills/cc-skill/templates/skill-forked.md +85 -85
  311. package/templates/skills/cc-skill/templates/skill-progressive.md +102 -102
  312. package/templates/skills/cc-skill/templates/skill-simple.md +75 -75
  313. package/templates/skills/cc-skill/templates/step-template.md +82 -82
  314. package/templates/skills/check-version/SKILL.md +196 -196
  315. package/templates/skills/controller/SKILL.md +162 -162
  316. package/templates/skills/controller/postman-templates.md +614 -614
  317. package/templates/skills/controller/references/controller-code-templates.md +159 -159
  318. package/templates/skills/controller/references/mcp-scaffold-workflow.md +209 -209
  319. package/templates/skills/controller/references/permission-sync-templates.md +149 -149
  320. package/templates/skills/controller/steps/step-00-init.md +193 -191
  321. package/templates/skills/controller/steps/step-01-analyze.md +146 -146
  322. package/templates/skills/controller/steps/step-02-plan.md +176 -176
  323. package/templates/skills/controller/steps/step-03-generate.md +189 -189
  324. package/templates/skills/controller/steps/step-04-perms.md +80 -80
  325. package/templates/skills/controller/steps/step-05-validate.md +107 -107
  326. package/templates/skills/controller/templates.md +1555 -1555
  327. package/templates/skills/debug/SKILL.md +70 -70
  328. package/templates/skills/debug/references/team-protocol.md +232 -232
  329. package/templates/skills/debug/steps/step-00-init.md +57 -57
  330. package/templates/skills/debug/steps/step-01-analyze.md +219 -219
  331. package/templates/skills/debug/steps/step-02-resolve.md +85 -85
  332. package/templates/skills/documentation/SKILL.md +132 -132
  333. package/templates/skills/documentation/data-schema.md +227 -227
  334. package/templates/skills/documentation/steps/step-00-init.md +70 -70
  335. package/templates/skills/documentation/steps/step-01-scan.md +113 -113
  336. package/templates/skills/documentation/steps/step-02-generate.md +231 -231
  337. package/templates/skills/documentation/steps/step-03-validate.md +251 -238
  338. package/templates/skills/documentation/templates.md +662 -663
  339. package/templates/skills/efcore/SKILL.md +167 -167
  340. package/templates/skills/efcore/references/both-contexts.md +32 -32
  341. package/templates/skills/efcore/references/database-operations.md +67 -67
  342. package/templates/skills/efcore/references/destructive-operations.md +38 -38
  343. package/templates/skills/efcore/references/reset-operations.md +81 -81
  344. package/templates/skills/efcore/references/seed-methods.md +86 -86
  345. package/templates/skills/efcore/references/shared-init-functions.md +250 -250
  346. package/templates/skills/efcore/references/sql-objects-injection.md +61 -61
  347. package/templates/skills/efcore/references/troubleshooting.md +81 -81
  348. package/templates/skills/efcore/references/zero-downtime-patterns.md +227 -227
  349. package/templates/skills/efcore/steps/db/step-deploy.md +217 -217
  350. package/templates/skills/efcore/steps/db/step-reset.md +186 -186
  351. package/templates/skills/efcore/steps/db/step-seed.md +166 -166
  352. package/templates/skills/efcore/steps/db/step-status.md +173 -173
  353. package/templates/skills/efcore/steps/migration/step-00-init.md +102 -102
  354. package/templates/skills/efcore/steps/migration/step-01-check.md +164 -164
  355. package/templates/skills/efcore/steps/migration/step-02-create.md +160 -160
  356. package/templates/skills/efcore/steps/migration/step-03-validate.md +168 -168
  357. package/templates/skills/efcore/steps/rebase-snapshot/step-00-init.md +173 -173
  358. package/templates/skills/efcore/steps/rebase-snapshot/step-01-backup.md +100 -100
  359. package/templates/skills/efcore/steps/rebase-snapshot/step-02-fetch.md +115 -115
  360. package/templates/skills/efcore/steps/rebase-snapshot/step-03-create.md +112 -112
  361. package/templates/skills/efcore/steps/rebase-snapshot/step-04-validate.md +157 -157
  362. package/templates/skills/efcore/steps/shared/step-00-init.md +131 -131
  363. package/templates/skills/efcore/steps/squash/step-00-init.md +141 -141
  364. package/templates/skills/efcore/steps/squash/step-01-backup.md +120 -120
  365. package/templates/skills/efcore/steps/squash/step-02-fetch.md +168 -168
  366. package/templates/skills/efcore/steps/squash/step-03-create.md +184 -184
  367. package/templates/skills/efcore/steps/squash/step-04-validate.md +174 -174
  368. package/templates/skills/explore/SKILL.md +98 -98
  369. package/templates/skills/feature-full/SKILL.md +111 -111
  370. package/templates/skills/feature-full/steps/step-00-init.md +57 -57
  371. package/templates/skills/feature-full/steps/step-01-implementation.md +120 -120
  372. package/templates/skills/gitflow/SKILL.md +377 -377
  373. package/templates/skills/gitflow/_shared.md +620 -620
  374. package/templates/skills/gitflow/phases/abort.md +189 -189
  375. package/templates/skills/gitflow/phases/cleanup.md +234 -234
  376. package/templates/skills/gitflow/phases/status.md +192 -192
  377. package/templates/skills/gitflow/references/commit-message-generation.md +58 -58
  378. package/templates/skills/gitflow/references/commit-migration-validation.md +49 -49
  379. package/templates/skills/gitflow/references/finish-cleanup.md +55 -55
  380. package/templates/skills/gitflow/references/finish-version-bumping.md +45 -45
  381. package/templates/skills/gitflow/references/init-config-template.md +135 -135
  382. package/templates/skills/gitflow/references/init-environment-detection.md +41 -41
  383. package/templates/skills/gitflow/references/init-name-normalization.md +103 -103
  384. package/templates/skills/gitflow/references/init-questions.md +185 -185
  385. package/templates/skills/gitflow/references/init-structure-creation.md +75 -75
  386. package/templates/skills/gitflow/references/init-version-detection.md +21 -21
  387. package/templates/skills/gitflow/references/init-workspace-detection.md +43 -43
  388. package/templates/skills/gitflow/references/merge-ci-status.md +36 -36
  389. package/templates/skills/gitflow/references/merge-execution.md +62 -62
  390. package/templates/skills/gitflow/references/merge-pr-context.md +76 -76
  391. package/templates/skills/gitflow/references/plan-template.md +69 -69
  392. package/templates/skills/gitflow/references/pr-build-checks.md +60 -60
  393. package/templates/skills/gitflow/references/pr-generation.md +58 -58
  394. package/templates/skills/gitflow/references/start-branch-normalization.md +28 -28
  395. package/templates/skills/gitflow/references/start-efcore-preflight.md +70 -70
  396. package/templates/skills/gitflow/references/start-local-config.md +113 -113
  397. package/templates/skills/gitflow/references/start-worktree-creation.md +50 -50
  398. package/templates/skills/gitflow/references/sync-push-verify.md +44 -44
  399. package/templates/skills/gitflow/references/sync-rebase-conflicts.md +38 -38
  400. package/templates/skills/gitflow/steps/step-commit.md +199 -199
  401. package/templates/skills/gitflow/steps/step-finish.md +147 -147
  402. package/templates/skills/gitflow/steps/step-init.md +190 -190
  403. package/templates/skills/gitflow/steps/step-merge.md +85 -85
  404. package/templates/skills/gitflow/steps/step-plan.md +151 -151
  405. package/templates/skills/gitflow/steps/step-pr.md +199 -199
  406. package/templates/skills/gitflow/steps/step-start.md +195 -195
  407. package/templates/skills/gitflow/steps/step-sync.md +161 -161
  408. package/templates/skills/gitflow/templates/config.json +72 -72
  409. package/templates/skills/mcp/SKILL.md +62 -62
  410. package/templates/skills/mcp/steps/step-01-healthcheck.md +108 -108
  411. package/templates/skills/mcp/steps/step-02-tools.md +73 -73
  412. package/templates/skills/notification/SKILL.md +173 -173
  413. package/templates/skills/quick-search/SKILL.md +99 -99
  414. package/templates/skills/ralph-loop/SKILL.md +234 -234
  415. package/templates/skills/ralph-loop/references/category-completeness.md +185 -185
  416. package/templates/skills/ralph-loop/references/category-rules.md +96 -96
  417. package/templates/skills/ralph-loop/references/compact-loop.md +300 -300
  418. package/templates/skills/ralph-loop/references/init-resume-recovery.md +127 -127
  419. package/templates/skills/ralph-loop/references/module-transition.md +151 -151
  420. package/templates/skills/ralph-loop/references/multi-module-queue.md +171 -171
  421. package/templates/skills/ralph-loop/references/parallel-execution.md +246 -246
  422. package/templates/skills/ralph-loop/references/section-splitting.md +439 -439
  423. package/templates/skills/ralph-loop/references/task-transform-legacy.md +256 -256
  424. package/templates/skills/ralph-loop/references/team-orchestration.md +547 -547
  425. package/templates/skills/ralph-loop/steps/step-00-init.md +150 -150
  426. package/templates/skills/ralph-loop/steps/step-01-task.md +174 -174
  427. package/templates/skills/ralph-loop/steps/step-02-execute.md +177 -177
  428. package/templates/skills/ralph-loop/steps/step-03-commit.md +92 -92
  429. package/templates/skills/ralph-loop/steps/step-04-check.md +207 -207
  430. package/templates/skills/ralph-loop/steps/step-05-report.md +175 -175
  431. package/templates/skills/refactor/SKILL.md +56 -56
  432. package/templates/skills/refactor/steps/step-01-discover.md +60 -60
  433. package/templates/skills/refactor/steps/step-02-execute.md +67 -67
  434. package/templates/skills/review-code/SKILL.md +94 -94
  435. package/templates/skills/review-code/references/clean-code-principles.md +292 -292
  436. package/templates/skills/review-code/references/code-quality-metrics.md +174 -174
  437. package/templates/skills/review-code/references/feedback-patterns.md +149 -149
  438. package/templates/skills/review-code/references/owasp-api-top10.md +243 -243
  439. package/templates/skills/review-code/references/security-checklist.md +212 -212
  440. package/templates/skills/review-code/steps/step-01-smartstack.md +96 -96
  441. package/templates/skills/review-code/steps/step-02-detailed-review.md +80 -80
  442. package/templates/skills/review-code/steps/step-03-react.md +44 -44
  443. package/templates/skills/ui-components/SKILL.md +137 -137
  444. package/templates/skills/ui-components/accessibility.md +170 -170
  445. package/templates/skills/ui-components/patterns/dashboard-chart.md +327 -327
  446. package/templates/skills/ui-components/patterns/data-table.md +39 -39
  447. package/templates/skills/ui-components/patterns/entity-card.md +77 -77
  448. package/templates/skills/ui-components/patterns/grid-layout.md +91 -91
  449. package/templates/skills/ui-components/patterns/kanban.md +43 -43
  450. package/templates/skills/ui-components/responsive-guidelines.md +278 -278
  451. package/templates/skills/ui-components/style-guide.md +113 -113
  452. package/templates/skills/utils/SKILL.md +44 -44
  453. package/templates/skills/utils/subcommands/test-web-config.md +152 -152
  454. package/templates/skills/utils/subcommands/test-web.md +123 -123
  455. package/templates/skills/validate/SKILL.md +181 -181
  456. package/templates/skills/validate-feature/SKILL.md +101 -101
  457. package/templates/skills/validate-feature/references/api-smoke-tests.md +140 -140
  458. package/templates/skills/validate-feature/references/db-validation-checks.md +180 -180
  459. package/templates/skills/validate-feature/steps/step-00-dependencies.md +121 -121
  460. package/templates/skills/validate-feature/steps/step-01-compile.md +39 -39
  461. package/templates/skills/validate-feature/steps/step-02-unit-tests.md +45 -45
  462. package/templates/skills/validate-feature/steps/step-03-integration-tests.md +53 -53
  463. package/templates/skills/validate-feature/steps/step-04-api-smoke.md +94 -94
  464. package/templates/skills/validate-feature/steps/step-05-db-validation.md +149 -149
  465. package/templates/skills/workflow/SKILL.md +127 -127
  466. package/templates/skills/workflow/steps/step-00-init.md +57 -57
  467. package/templates/skills/workflow/steps/step-01-implementation.md +84 -84
  468. package/templates/test-web/api-health.json +38 -38
  469. package/templates/test-web/minimal.json +19 -19
  470. package/templates/test-web/npm-package.json +46 -46
  471. package/templates/test-web/seo-check.json +54 -54
@@ -1,206 +1,206 @@
1
- # Business Analysis - Elicitation & Interaction (_elicitation.md)
2
-
3
- > **Loaded by:** step-01-cadrage, step-03a-data
4
- > **Purpose:** Interactive questioning techniques, AskUserQuestion formatting, ULTRATHINK mode
5
-
6
- ---
7
-
8
- ## Interactive Elicitation Protocol
9
-
10
- > **RULE: ALL questions MUST be asked interactively using `AskUserQuestion`.**
11
- > **NEVER dump a list of questions as text. ALWAYS use the tool.**
12
-
13
- ### Protocol
14
-
15
- 1. **Group questions by theme** — max 4 questions per `AskUserQuestion` call (tool limit)
16
- 2. **Propose predefined options** — for questions with predictable answers, provide 2-4 options
17
- 3. **The user can always choose "Other"** — the tool adds this automatically for free-text answers
18
- 4. **Process answers immediately** — apply ULTRATHINK + follow-ups before moving to next group
19
- 5. **Adapt next questions** — based on previous answers, skip irrelevant questions
20
-
21
- ### Batching Strategy
22
-
23
- | Category | Questions | Batches |
24
- |----------|-----------|---------|
25
- | 01-context | Q1.1-Q1.4 | 1 call |
26
- | 02-stakeholders | Q2.1-Q2.8 | 2 calls |
27
- | 03-scope | Q3.1-Q3.8 | 2 calls |
28
- | 04-data | Q4.1-Q4.8 | 2 calls |
29
- | 05-integrations | Q5.1-Q5.8 | 2 calls |
30
- | 06-security | Q6.1-Q6.8 | 2 calls |
31
- | 07-ui | Q7.1-Q7.8 | 2 calls |
32
- | 08-performance | Q8.1-Q8.4 | 1 call |
33
- | 09-constraints | Q9.1-Q9.4 | 1 call |
34
- | 10-documentation | Q10.1-Q10.4 | 1 call |
35
- | 11-data-lifecycle | Q11.1-Q11.8 | 2 calls |
36
- | 12-migration | Q12.1-Q12.8 | 2 calls |
37
- | 13-cross-module | Q13.1-Q13.8 | 2 calls |
38
-
39
- ### AskUserQuestion Format
40
-
41
- > **FORMATTING CRITICAL: `AskUserQuestion` does NOT support markdown or line breaks.**
42
- > Le champ `question` est rendu en texte brut (plain text). Il n'y a pas de retour a la ligne,
43
- > pas de gras, pas de puces. Une question simple reste lisible meme longue. Mais du contenu
44
- > structure (listes, resumes multi-points, tableaux) devient un mur de texte illisible.
45
-
46
- | Field | Rule |
47
- |-------|------|
48
- | `question` | **1 question ou 1 phrase.** Jamais de liste, resume multi-points ou contenu structure. |
49
- | `header` | 1-2 mots (max 12 chars) |
50
- | `label` (option) | Court et clair (~20 chars) |
51
- | `description` (option) | 1 phrase explicative (~60 chars) |
52
-
53
- > **Pour afficher du contenu structure** (resumes, listes, tableaux, syntheses) :
54
- > **TOUJOURS** utiliser du **texte direct** (output text) AVANT l'appel `AskUserQuestion`.
55
- > Le texte direct supporte le markdown et sera correctement formate avec titres, puces, gras, etc.
56
- >
57
- > **Exemple — Validation de synthese :**
58
- > 1. Afficher le resume structure en markdown (texte direct)
59
- > 2. Puis poser une question courte : "Cette synthese est-elle correcte ?"
60
-
61
- ```
62
- AskUserQuestion({
63
- questions: [
64
- {
65
- question: "Quel probleme metier ce module doit-il resoudre ?",
66
- header: "Probleme", // max 12 chars
67
- options: [
68
- { label: "Processus manuel", description: "Automatiser un processus existant fait manuellement" },
69
- { label: "Donnees dispersees", description: "Centraliser des donnees eparpillees dans plusieurs outils" },
70
- { label: "Manque visibilite", description: "Obtenir des indicateurs et du suivi inexistants aujourd'hui" },
71
- { label: "Conformite", description: "Repondre a une obligation reglementaire ou de securite" }
72
- ],
73
- multiSelect: false
74
- },
75
- // ... up to 4 questions per call
76
- ]
77
- })
78
- ```
79
-
80
- ### After Each Batch
81
-
82
- 1. **Evaluate answer quality** (see Answer Quality Indicators)
83
- 2. **If insufficient** -> follow-up AskUserQuestion with targeted probes from the Elicitation Guide
84
- 3. **If solution-oriented** -> reframe using Technique 1 before proceeding
85
- 4. **If sufficient/excellent** -> record and move to next batch
86
- 5. **Summarize** what was understood before moving to the next category
87
-
88
- ---
89
-
90
- ## Techniques d'elicitation
91
-
92
- > **Objectif :** Guider COMMENT questionner, pas seulement QUOI demander.
93
- > **Principe :** Chaque technique doit etre appliquee naturellement dans le flux de la conversation,
94
- > pas comme un outil supplementaire. L'analyste choisit la technique adaptee a la situation.
95
-
96
- ### Technique 1 : Reformulation du besoin
97
-
98
- Quand le client decrit une **solution** (bouton, ecran, champ, outil), reformuler en **besoin** :
99
-
100
- | Le client dit | L'analyste demande |
101
- |---------------|-------------------|
102
- | "Il me faut un menu deroulant pour les roles" | "Quel probleme rencontrez-vous aujourd'hui avec la gestion des acces ? Pourquoi certaines personnes doivent-elles avoir des acces differents ?" |
103
- | "On a besoin d'un bouton d'export" | "Que faites-vous avec les donnees une fois exportees ? Qui en a besoin et pourquoi ?" |
104
- | "Ajoutez un champ statut" | "Quel parcours suit cet element du debut a la fin ? Quels evenements declenchent un changement d'etat ?" |
105
-
106
- ### Technique 2 : Chaine des pourquoi
107
-
108
- Quand le besoin semble superficiel, enchainez jusqu'a 5 "Pourquoi ?" pour trouver la cause racine :
109
-
110
- ```
111
- Client : "On a besoin de suivre l'activite des utilisateurs"
112
- -> Pourquoi ? "Pour savoir qui a modifie quoi"
113
- -> Pourquoi ? "Parce qu'on a eu des problemes de donnees incorrectes"
114
- -> Pourquoi ? "Parce que plusieurs personnes modifient les memes fiches"
115
- -> CAUSE RACINE : Conflit d'edition simultanee -> Besoin de journal d'activite + protection des modifications
116
- ```
117
-
118
- ### Technique 3 : Extraction de scenario concret
119
-
120
- Ne jamais accepter de descriptions abstraites. Toujours demander un **scenario de vie reelle** :
121
-
122
- ```
123
- "Racontez-moi une journee type : vous arrivez au bureau, vous ouvrez l'application.
124
- Quelle est la PREMIERE chose que vous devez faire ?
125
- Puis ensuite ? Quelles informations consultez-vous ? Quelles decisions prenez-vous ?"
126
- ```
127
-
128
- ### Technique 4 : Test d'absence
129
-
130
- Valider la necessite en demandant ce qui se passe SANS :
131
-
132
- ```
133
- "Si cette fonctionnalite N'EXISTAIT PAS, que feriez-vous a la place ?
134
- Combien de temps ou d'argent le contournement actuel coute-t-il ?"
135
- ```
136
-
137
- ### Technique 5 : Verification de completude
138
-
139
- Pour chaque reponse sous forme de liste, verifier qu'il ne manque rien :
140
-
141
- | Type de reponse | Relance |
142
- |-----------------|---------|
143
- | "Il y a 3 types d'utilisateurs" | "Y a-t-il des acteurs externes ? Des auditeurs ? Des administrateurs systeme ? Des processus automatiques ?" |
144
- | "Le flux principal est A puis B puis C" | "Que se passe-t-il si l'utilisateur annule a l'etape B ? Si l'etape C echoue ? S'il veut revenir a A ?" |
145
- | "Champs obligatoires : nom et email" | "Quelles contraintes d'unicite ? Quel format ? Que se passe-t-il en cas de doublon ?" |
146
-
147
- ### Technique 6 : Projection dans le futur
148
-
149
- Demander au client de se projeter pour decouvrir des besoins non exprimes :
150
-
151
- ```
152
- "Imaginons que nous sommes 2 ans dans le futur et que l'application fonctionne parfaitement.
153
- Qu'est-ce qui a change dans votre facon de travailler ?
154
- Quels nouveaux besoins sont apparus auxquels vous ne pensez pas aujourd'hui ?"
155
- ```
156
-
157
- ### Technique 7 : Test de contradiction
158
-
159
- Quand deux reponses semblent contradictoires, les confronter pour clarifier :
160
-
161
- ```
162
- "Vous avez mentionne que [affirmation A], mais vous dites aussi que [affirmation B].
163
- Ces deux elements semblent en tension. Pouvez-vous m'aider a comprendre
164
- comment ils coexistent dans la realite ?"
165
- ```
166
-
167
- ### Technique 8 : Escalade d'impact
168
-
169
- Augmenter progressivement l'echelle pour tester les limites :
170
-
171
- ```
172
- "Aujourd'hui vous avez 50 fiches. Que se passe-t-il avec 500 ? Avec 5000 ?
173
- Est-ce que le processus reste le meme ou faudrait-il faire differemment ?"
174
- ```
175
-
176
- ### Indicateurs de qualite des reponses
177
-
178
- | Qualite | Signal | Action |
179
- |---------|--------|--------|
180
- | **Insuffisante** | Moins d'une phrase, "je ne sais pas", adjectif vague | Appliquer les techniques 1 a 8, demander un exemple concret |
181
- | **Orientee solution** | Contient des termes d'interface ou techniques (bouton, champ, base de donnees) | Appliquer la technique 1 (reformuler en besoin) |
182
- | **Suffisante** | Contient QUI, QUOI, POURQUOI et un exemple concret | Continuer, noter le niveau de confiance |
183
- | **Excellente** | Inclut les cas limites, les contraintes et des criteres mesurables | Continuer, marquer comme "Confirme" |
184
-
185
- ---
186
-
187
- ## ULTRATHINK
188
-
189
- Behavioral mode for critical phases (01, 03a):
190
-
191
- ```
192
- ULTRATHINK MODE:
193
- - Consider ALL edge cases
194
- - Challenge EVERY assumption
195
- - Anticipate UNEXPRESSED needs
196
- - Validate completeness before output
197
- - Apply Elicitation Techniques (see above)
198
-
199
- DO NOT:
200
- - Accept vague answers
201
- - Skip question categories
202
- - Assume stakeholder thought of everything
203
- - Accept solutions without understanding the problem first
204
- ```
205
-
206
- **DO NOT invoke** as a skill/tool - it is a thinking mode.
1
+ # Business Analysis - Elicitation & Interaction (_elicitation.md)
2
+
3
+ > **Loaded by:** step-01-cadrage, step-03a-data
4
+ > **Purpose:** Interactive questioning techniques, AskUserQuestion formatting, ULTRATHINK mode
5
+
6
+ ---
7
+
8
+ ## Interactive Elicitation Protocol
9
+
10
+ > **RULE: ALL questions MUST be asked interactively using `AskUserQuestion`.**
11
+ > **NEVER dump a list of questions as text. ALWAYS use the tool.**
12
+
13
+ ### Protocol
14
+
15
+ 1. **Group questions by theme** — max 4 questions per `AskUserQuestion` call (tool limit)
16
+ 2. **Propose predefined options** — for questions with predictable answers, provide 2-4 options
17
+ 3. **The user can always choose "Other"** — the tool adds this automatically for free-text answers
18
+ 4. **Process answers immediately** — apply ULTRATHINK + follow-ups before moving to next group
19
+ 5. **Adapt next questions** — based on previous answers, skip irrelevant questions
20
+
21
+ ### Batching Strategy
22
+
23
+ | Category | Questions | Batches |
24
+ |----------|-----------|---------|
25
+ | 01-context | Q1.1-Q1.4 | 1 call |
26
+ | 02-stakeholders | Q2.1-Q2.8 | 2 calls |
27
+ | 03-scope | Q3.1-Q3.8 | 2 calls |
28
+ | 04-data | Q4.1-Q4.8 | 2 calls |
29
+ | 05-integrations | Q5.1-Q5.8 | 2 calls |
30
+ | 06-security | Q6.1-Q6.8 | 2 calls |
31
+ | 07-ui | Q7.1-Q7.8 | 2 calls |
32
+ | 08-performance | Q8.1-Q8.4 | 1 call |
33
+ | 09-constraints | Q9.1-Q9.4 | 1 call |
34
+ | 10-documentation | Q10.1-Q10.4 | 1 call |
35
+ | 11-data-lifecycle | Q11.1-Q11.8 | 2 calls |
36
+ | 12-migration | Q12.1-Q12.8 | 2 calls |
37
+ | 13-cross-module | Q13.1-Q13.8 | 2 calls |
38
+
39
+ ### AskUserQuestion Format
40
+
41
+ > **FORMATTING CRITICAL: `AskUserQuestion` does NOT support markdown or line breaks.**
42
+ > Le champ `question` est rendu en texte brut (plain text). Il n'y a pas de retour a la ligne,
43
+ > pas de gras, pas de puces. Une question simple reste lisible meme longue. Mais du contenu
44
+ > structure (listes, resumes multi-points, tableaux) devient un mur de texte illisible.
45
+
46
+ | Field | Rule |
47
+ |-------|------|
48
+ | `question` | **1 question ou 1 phrase.** Jamais de liste, resume multi-points ou contenu structure. |
49
+ | `header` | 1-2 mots (max 12 chars) |
50
+ | `label` (option) | Court et clair (~20 chars) |
51
+ | `description` (option) | 1 phrase explicative (~60 chars) |
52
+
53
+ > **Pour afficher du contenu structure** (resumes, listes, tableaux, syntheses) :
54
+ > **TOUJOURS** utiliser du **texte direct** (output text) AVANT l'appel `AskUserQuestion`.
55
+ > Le texte direct supporte le markdown et sera correctement formate avec titres, puces, gras, etc.
56
+ >
57
+ > **Exemple — Validation de synthese :**
58
+ > 1. Afficher le resume structure en markdown (texte direct)
59
+ > 2. Puis poser une question courte : "Cette synthese est-elle correcte ?"
60
+
61
+ ```
62
+ AskUserQuestion({
63
+ questions: [
64
+ {
65
+ question: "Quel probleme metier ce module doit-il resoudre ?",
66
+ header: "Probleme", // max 12 chars
67
+ options: [
68
+ { label: "Processus manuel", description: "Automatiser un processus existant fait manuellement" },
69
+ { label: "Donnees dispersees", description: "Centraliser des donnees eparpillees dans plusieurs outils" },
70
+ { label: "Manque visibilite", description: "Obtenir des indicateurs et du suivi inexistants aujourd'hui" },
71
+ { label: "Conformite", description: "Repondre a une obligation reglementaire ou de securite" }
72
+ ],
73
+ multiSelect: false
74
+ },
75
+ // ... up to 4 questions per call
76
+ ]
77
+ })
78
+ ```
79
+
80
+ ### After Each Batch
81
+
82
+ 1. **Evaluate answer quality** (see Answer Quality Indicators)
83
+ 2. **If insufficient** -> follow-up AskUserQuestion with targeted probes from the Elicitation Guide
84
+ 3. **If solution-oriented** -> reframe using Technique 1 before proceeding
85
+ 4. **If sufficient/excellent** -> record and move to next batch
86
+ 5. **Summarize** what was understood before moving to the next category
87
+
88
+ ---
89
+
90
+ ## Techniques d'elicitation
91
+
92
+ > **Objectif :** Guider COMMENT questionner, pas seulement QUOI demander.
93
+ > **Principe :** Chaque technique doit etre appliquee naturellement dans le flux de la conversation,
94
+ > pas comme un outil supplementaire. L'analyste choisit la technique adaptee a la situation.
95
+
96
+ ### Technique 1 : Reformulation du besoin
97
+
98
+ Quand le client decrit une **solution** (bouton, ecran, champ, outil), reformuler en **besoin** :
99
+
100
+ | Le client dit | L'analyste demande |
101
+ |---------------|-------------------|
102
+ | "Il me faut un menu deroulant pour les roles" | "Quel probleme rencontrez-vous aujourd'hui avec la gestion des acces ? Pourquoi certaines personnes doivent-elles avoir des acces differents ?" |
103
+ | "On a besoin d'un bouton d'export" | "Que faites-vous avec les donnees une fois exportees ? Qui en a besoin et pourquoi ?" |
104
+ | "Ajoutez un champ statut" | "Quel parcours suit cet element du debut a la fin ? Quels evenements declenchent un changement d'etat ?" |
105
+
106
+ ### Technique 2 : Chaine des pourquoi
107
+
108
+ Quand le besoin semble superficiel, enchainez jusqu'a 5 "Pourquoi ?" pour trouver la cause racine :
109
+
110
+ ```
111
+ Client : "On a besoin de suivre l'activite des utilisateurs"
112
+ -> Pourquoi ? "Pour savoir qui a modifie quoi"
113
+ -> Pourquoi ? "Parce qu'on a eu des problemes de donnees incorrectes"
114
+ -> Pourquoi ? "Parce que plusieurs personnes modifient les memes fiches"
115
+ -> CAUSE RACINE : Conflit d'edition simultanee -> Besoin de journal d'activite + protection des modifications
116
+ ```
117
+
118
+ ### Technique 3 : Extraction de scenario concret
119
+
120
+ Ne jamais accepter de descriptions abstraites. Toujours demander un **scenario de vie reelle** :
121
+
122
+ ```
123
+ "Racontez-moi une journee type : vous arrivez au bureau, vous ouvrez l'application.
124
+ Quelle est la PREMIERE chose que vous devez faire ?
125
+ Puis ensuite ? Quelles informations consultez-vous ? Quelles decisions prenez-vous ?"
126
+ ```
127
+
128
+ ### Technique 4 : Test d'absence
129
+
130
+ Valider la necessite en demandant ce qui se passe SANS :
131
+
132
+ ```
133
+ "Si cette fonctionnalite N'EXISTAIT PAS, que feriez-vous a la place ?
134
+ Combien de temps ou d'argent le contournement actuel coute-t-il ?"
135
+ ```
136
+
137
+ ### Technique 5 : Verification de completude
138
+
139
+ Pour chaque reponse sous forme de liste, verifier qu'il ne manque rien :
140
+
141
+ | Type de reponse | Relance |
142
+ |-----------------|---------|
143
+ | "Il y a 3 types d'utilisateurs" | "Y a-t-il des acteurs externes ? Des auditeurs ? Des administrateurs systeme ? Des processus automatiques ?" |
144
+ | "Le flux principal est A puis B puis C" | "Que se passe-t-il si l'utilisateur annule a l'etape B ? Si l'etape C echoue ? S'il veut revenir a A ?" |
145
+ | "Champs obligatoires : nom et email" | "Quelles contraintes d'unicite ? Quel format ? Que se passe-t-il en cas de doublon ?" |
146
+
147
+ ### Technique 6 : Projection dans le futur
148
+
149
+ Demander au client de se projeter pour decouvrir des besoins non exprimes :
150
+
151
+ ```
152
+ "Imaginons que nous sommes 2 ans dans le futur et que l'application fonctionne parfaitement.
153
+ Qu'est-ce qui a change dans votre facon de travailler ?
154
+ Quels nouveaux besoins sont apparus auxquels vous ne pensez pas aujourd'hui ?"
155
+ ```
156
+
157
+ ### Technique 7 : Test de contradiction
158
+
159
+ Quand deux reponses semblent contradictoires, les confronter pour clarifier :
160
+
161
+ ```
162
+ "Vous avez mentionne que [affirmation A], mais vous dites aussi que [affirmation B].
163
+ Ces deux elements semblent en tension. Pouvez-vous m'aider a comprendre
164
+ comment ils coexistent dans la realite ?"
165
+ ```
166
+
167
+ ### Technique 8 : Escalade d'impact
168
+
169
+ Augmenter progressivement l'echelle pour tester les limites :
170
+
171
+ ```
172
+ "Aujourd'hui vous avez 50 fiches. Que se passe-t-il avec 500 ? Avec 5000 ?
173
+ Est-ce que le processus reste le meme ou faudrait-il faire differemment ?"
174
+ ```
175
+
176
+ ### Indicateurs de qualite des reponses
177
+
178
+ | Qualite | Signal | Action |
179
+ |---------|--------|--------|
180
+ | **Insuffisante** | Moins d'une phrase, "je ne sais pas", adjectif vague | Appliquer les techniques 1 a 8, demander un exemple concret |
181
+ | **Orientee solution** | Contient des termes d'interface ou techniques (bouton, champ, base de donnees) | Appliquer la technique 1 (reformuler en besoin) |
182
+ | **Suffisante** | Contient QUI, QUOI, POURQUOI et un exemple concret | Continuer, noter le niveau de confiance |
183
+ | **Excellente** | Inclut les cas limites, les contraintes et des criteres mesurables | Continuer, marquer comme "Confirme" |
184
+
185
+ ---
186
+
187
+ ## ULTRATHINK
188
+
189
+ Behavioral mode for critical phases (01, 03a):
190
+
191
+ ```
192
+ ULTRATHINK MODE:
193
+ - Consider ALL edge cases
194
+ - Challenge EVERY assumption
195
+ - Anticipate UNEXPRESSED needs
196
+ - Validate completeness before output
197
+ - Apply Elicitation Techniques (see above)
198
+
199
+ DO NOT:
200
+ - Accept vague answers
201
+ - Skip question categories
202
+ - Assume stakeholder thought of everything
203
+ - Accept solutions without understanding the problem first
204
+ ```
205
+
206
+ **DO NOT invoke** as a skill/tool - it is a thinking mode.
@@ -1,115 +1,115 @@
1
- # Business Analysis - Module Loop Protocol (_module-loop.md)
2
-
3
- > **Loaded by:** step-03a1-setup, step-03b-ui, step-03c-compile, step-03d-validate
4
- > **Purpose:** State management and iteration logic for multi-module specification loop + application loop (project mode)
5
-
6
- ---
7
-
8
- ## State Management (Application Mode — single app)
9
-
10
- ```json
11
- {
12
- "metadata": {
13
- "workflow": {
14
- "mode": "application",
15
- "moduleOrder": ["Customers", "Products", "Orders", "Invoices"],
16
- "currentModuleIndex": 2,
17
- "completedModules": ["Customers", "Products"],
18
- "currentModule": "Orders"
19
- }
20
- }
21
- }
22
- ```
23
-
24
- ## State Management (Project Mode — multi app)
25
-
26
- Project-level feature.json tracks the application loop:
27
-
28
- ```json
29
- {
30
- "metadata": {
31
- "workflow": {
32
- "mode": "project",
33
- "applicationOrder": ["HumanResources", "EmployeeSelfService"],
34
- "currentApplicationIndex": 0,
35
- "completedApplications": [],
36
- "currentApplication": "HumanResources"
37
- }
38
- }
39
- }
40
- ```
41
-
42
- Each application-level feature.json tracks its own module loop (same as application mode).
43
-
44
- ## Module Loop Logic (end of each step-03 iteration)
45
-
46
- ```
47
- 1. Mark current module as "validated" in application-level feature.json
48
- 2. Add to completedModules[]
49
- 3. IF currentModuleIndex + 1 < moduleOrder.length:
50
- currentModuleIndex++
51
- currentModule = moduleOrder[currentModuleIndex]
52
- Write application-level feature.json
53
- Display: "Module {name} complete. Next: {next_name} ({N}/{total})"
54
- RE-LOAD: steps/step-03a1-setup.md
55
- 4. ELSE (all modules for current application specified):
56
- IF workflow.mode === "project":
57
- → Execute APPLICATION LOOP LOGIC (below)
58
- ELSE:
59
- application.status = "specified"
60
- Load: steps/step-04a-collect.md
61
- ```
62
-
63
- ## Application Loop Logic (project mode only)
64
-
65
- > Only applicable when `workflow.mode === "project"` in the project-level feature.json.
66
-
67
- ```
68
- 1. Mark current application as "specified" in project feature.json
69
- ba-writer.updateApplicationStatus(projectId, currentApp, "specified")
70
- 2. Add to completedApplications[]
71
- ba-writer.advanceApplicationLoop(projectId)
72
- 3. IF currentApplicationIndex + 1 < applicationOrder.length:
73
- Display: "═══ Application {currentApp} complete ({N}/{total}). Next: {nextApp} ═══"
74
- Load: steps/step-02-decomposition.md (for next application's module decomposition)
75
- 4. ELSE (all applications specified):
76
- Display: "═══ All applications specified! Proceeding to cross-application consolidation... ═══"
77
- project.status = "specified"
78
- Load: steps/step-04a-collect.md (with cross-application consolidation)
79
- ```
80
-
81
- ## Context Management During Loop
82
-
83
- To prevent context explosion as modules accumulate:
84
- - **Current module:** Load full module feature.json
85
- - **Completed modules:** Only load compact summary via `ba-reader.getCompletedModulesSummary()` (max 100 lines)
86
- - **Master feature.json:** Only read workflow state + application roles
87
- - **In project mode — completed applications:** Only load compact summary via `ba-reader.getCompletedApplicationsSummary()` (max 50 lines per app)
88
-
89
- ## Resume After Interruption
90
-
91
- ### Application Mode (single app)
92
- ```
93
- 1. ba-reader.findApplicationFeature() -> locate application-level feature.json
94
- 2. Read metadata.workflow.currentModuleIndex
95
- 3. IF currentModule has a feature.json with status != "validated":
96
- Resume step-03a1-setup for that module
97
- 4. ELSE:
98
- Start step-03a1-setup for next module
99
- ```
100
-
101
- ### Project Mode (multi app)
102
- ```
103
- 1. ba-reader.findProjectFeature() -> locate project-level feature.json
104
- 2. Read metadata.workflow.currentApplicationIndex
105
- 3. Locate current application's feature.json
106
- 4. Read application's metadata.workflow.currentModuleIndex
107
- 5. IF currentModule has a feature.json with status != "validated":
108
- Resume step-03a1-setup for that module in that application
109
- 6. ELSE IF application has unspecified modules:
110
- Start step-03a1-setup for next module in current application
111
- 7. ELSE IF more applications remain:
112
- Start step-02-decomposition for next application
113
- 8. ELSE:
114
- All done → Resume step-04a-collect
115
- ```
1
+ # Business Analysis - Module Loop Protocol (_module-loop.md)
2
+
3
+ > **Loaded by:** step-03a1-setup, step-03b-ui, step-03c-compile, step-03d-validate
4
+ > **Purpose:** State management and iteration logic for multi-module specification loop + application loop (project mode)
5
+
6
+ ---
7
+
8
+ ## State Management (Application Mode — single app)
9
+
10
+ ```json
11
+ {
12
+ "metadata": {
13
+ "workflow": {
14
+ "mode": "application",
15
+ "moduleOrder": ["Customers", "Products", "Orders", "Invoices"],
16
+ "currentModuleIndex": 2,
17
+ "completedModules": ["Customers", "Products"],
18
+ "currentModule": "Orders"
19
+ }
20
+ }
21
+ }
22
+ ```
23
+
24
+ ## State Management (Project Mode — multi app)
25
+
26
+ Project-level feature.json tracks the application loop:
27
+
28
+ ```json
29
+ {
30
+ "metadata": {
31
+ "workflow": {
32
+ "mode": "project",
33
+ "applicationOrder": ["HumanResources", "EmployeeSelfService"],
34
+ "currentApplicationIndex": 0,
35
+ "completedApplications": [],
36
+ "currentApplication": "HumanResources"
37
+ }
38
+ }
39
+ }
40
+ ```
41
+
42
+ Each application-level feature.json tracks its own module loop (same as application mode).
43
+
44
+ ## Module Loop Logic (end of each step-03 iteration)
45
+
46
+ ```
47
+ 1. Mark current module as "validated" in application-level feature.json
48
+ 2. Add to completedModules[]
49
+ 3. IF currentModuleIndex + 1 < moduleOrder.length:
50
+ currentModuleIndex++
51
+ currentModule = moduleOrder[currentModuleIndex]
52
+ Write application-level feature.json
53
+ Display: "Module {name} complete. Next: {next_name} ({N}/{total})"
54
+ RE-LOAD: steps/step-03a1-setup.md
55
+ 4. ELSE (all modules for current application specified):
56
+ IF workflow.mode === "project":
57
+ → Execute APPLICATION LOOP LOGIC (below)
58
+ ELSE:
59
+ application.status = "specified"
60
+ Load: steps/step-04a-collect.md
61
+ ```
62
+
63
+ ## Application Loop Logic (project mode only)
64
+
65
+ > Only applicable when `workflow.mode === "project"` in the project-level feature.json.
66
+
67
+ ```
68
+ 1. Mark current application as "specified" in project feature.json
69
+ ba-writer.updateApplicationStatus(projectId, currentApp, "specified")
70
+ 2. Add to completedApplications[]
71
+ ba-writer.advanceApplicationLoop(projectId)
72
+ 3. IF currentApplicationIndex + 1 < applicationOrder.length:
73
+ Display: "═══ Application {currentApp} complete ({N}/{total}). Next: {nextApp} ═══"
74
+ Load: steps/step-02-decomposition.md (for next application's module decomposition)
75
+ 4. ELSE (all applications specified):
76
+ Display: "═══ All applications specified! Proceeding to cross-application consolidation... ═══"
77
+ project.status = "specified"
78
+ Load: steps/step-04a-collect.md (with cross-application consolidation)
79
+ ```
80
+
81
+ ## Context Management During Loop
82
+
83
+ To prevent context explosion as modules accumulate:
84
+ - **Current module:** Load full module feature.json
85
+ - **Completed modules:** Only load compact summary via `ba-reader.getCompletedModulesSummary()` (max 100 lines)
86
+ - **Master feature.json:** Only read workflow state + application roles
87
+ - **In project mode — completed applications:** Only load compact summary via `ba-reader.getCompletedApplicationsSummary()` (max 50 lines per app)
88
+
89
+ ## Resume After Interruption
90
+
91
+ ### Application Mode (single app)
92
+ ```
93
+ 1. ba-reader.findApplicationFeature() -> locate application-level feature.json
94
+ 2. Read metadata.workflow.currentModuleIndex
95
+ 3. IF currentModule has a feature.json with status != "validated":
96
+ Resume step-03a1-setup for that module
97
+ 4. ELSE:
98
+ Start step-03a1-setup for next module
99
+ ```
100
+
101
+ ### Project Mode (multi app)
102
+ ```
103
+ 1. ba-reader.findProjectFeature() -> locate project-level feature.json
104
+ 2. Read metadata.workflow.currentApplicationIndex
105
+ 3. Locate current application's feature.json
106
+ 4. Read application's metadata.workflow.currentModuleIndex
107
+ 5. IF currentModule has a feature.json with status != "validated":
108
+ Resume step-03a1-setup for that module in that application
109
+ 6. ELSE IF application has unspecified modules:
110
+ Start step-03a1-setup for next module in current application
111
+ 7. ELSE IF more applications remain:
112
+ Start step-02-decomposition for next application
113
+ 8. ELSE:
114
+ All done → Resume step-04a-collect
115
+ ```