bmad-method 6.0.0-alpha.1 → 6.0.0-alpha.10

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 (678) hide show
  1. package/.github/ISSUE_TEMPLATE/idea_submission.md +1 -1
  2. package/.github/workflows/bundle-latest.yaml +277 -0
  3. package/.github/workflows/manual-release.yaml +64 -17
  4. package/.github/workflows/{lint.yaml → quality.yaml} +19 -2
  5. package/.husky/pre-commit +4 -0
  6. package/.prettierignore +4 -0
  7. package/.vscode/settings.json +3 -1
  8. package/CHANGELOG.md +1203 -0
  9. package/CONTRIBUTING.md +1 -13
  10. package/README.md +330 -149
  11. package/docs/BUNDLE_DISTRIBUTION_SETUP.md +95 -0
  12. package/docs/agent-customization-guide.md +208 -0
  13. package/docs/document-sharding-guide.md +449 -0
  14. package/docs/ide-info/crush.md +1 -1
  15. package/docs/ide-info/cursor.md +7 -7
  16. package/docs/ide-info/iflow.md +3 -3
  17. package/docs/ide-info/opencode.md +1 -1
  18. package/docs/index.md +227 -0
  19. package/docs/installers-bundlers/ide-injections.md +2 -2
  20. package/docs/installers-bundlers/installers-modules-platforms-reference.md +80 -19
  21. package/docs/v4-to-v6-upgrade.md +21 -19
  22. package/docs/web-bundles-gemini-gpt-guide.md +473 -0
  23. package/eslint.config.mjs +2 -0
  24. package/package.json +5 -3
  25. package/src/core/_module-installer/install-config.yaml +17 -10
  26. package/src/core/_module-installer/installer.js +0 -8
  27. package/src/core/agents/bmad-master.agent.yaml +5 -5
  28. package/src/core/agents/bmad-web-orchestrator.agent.xml +8 -17
  29. package/src/core/tasks/advanced-elicitation-methods.csv +21 -0
  30. package/{bmad/core/tasks/adv-elicit.xml → src/core/tasks/advanced-elicitation.xml} +6 -4
  31. package/src/core/tasks/index-docs.xml +1 -1
  32. package/src/core/tasks/validate-workflow.xml +1 -1
  33. package/src/core/tasks/workflow.xml +126 -22
  34. package/src/core/tools/shard-doc.xml +54 -45
  35. package/src/core/workflows/brainstorming/README.md +6 -16
  36. package/src/core/workflows/brainstorming/instructions.md +6 -5
  37. package/src/core/workflows/brainstorming/template.md +4 -0
  38. package/src/core/workflows/brainstorming/workflow.yaml +8 -13
  39. package/src/core/workflows/party-mode/instructions.md +2 -7
  40. package/src/core/workflows/party-mode/workflow.yaml +11 -6
  41. package/src/modules/bmb/README.md +135 -73
  42. package/src/modules/bmb/_module-installer/install-config.yaml +9 -4
  43. package/src/modules/bmb/agents/bmad-builder.agent.yaml +11 -12
  44. package/src/modules/bmb/workflows/audit-workflow/checklist.md +5 -6
  45. package/src/modules/bmb/workflows/audit-workflow/instructions.md +6 -6
  46. package/src/modules/bmb/workflows/audit-workflow/workflow.yaml +2 -2
  47. package/src/modules/bmb/workflows/convert-legacy/README.md +5 -5
  48. package/src/modules/bmb/workflows/convert-legacy/checklist.md +2 -2
  49. package/src/modules/bmb/workflows/convert-legacy/instructions.md +17 -17
  50. package/src/modules/bmb/workflows/convert-legacy/workflow.yaml +6 -10
  51. package/src/modules/bmb/workflows/create-agent/README.md +126 -243
  52. package/src/modules/bmb/workflows/create-agent/agent-architecture.md +15 -19
  53. package/src/modules/bmb/workflows/create-agent/agent-command-patterns.md +28 -28
  54. package/src/modules/bmb/workflows/create-agent/agent-types.md +15 -15
  55. package/src/modules/bmb/workflows/create-agent/checklist.md +3 -3
  56. package/src/modules/bmb/workflows/create-agent/instructions.md +67 -39
  57. package/src/modules/bmb/workflows/create-agent/workflow.yaml +14 -15
  58. package/src/modules/bmb/workflows/create-module/README.md +163 -154
  59. package/src/modules/bmb/workflows/create-module/checklist.md +1 -10
  60. package/src/modules/bmb/workflows/create-module/installer-templates/install-config.yaml +1 -1
  61. package/src/modules/bmb/workflows/create-module/instructions.md +13 -17
  62. package/src/modules/bmb/workflows/create-module/module-structure.md +39 -5
  63. package/src/modules/bmb/workflows/create-module/workflow.yaml +21 -13
  64. package/src/modules/bmb/workflows/create-workflow/README.md +4 -4
  65. package/src/modules/bmb/workflows/create-workflow/checklist.md +1 -1
  66. package/src/modules/bmb/workflows/create-workflow/instructions.md +46 -37
  67. package/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md +219 -42
  68. package/src/modules/bmb/workflows/create-workflow/workflow-template/instructions.md +4 -2
  69. package/src/modules/bmb/workflows/create-workflow/workflow-template/workflow.yaml +12 -16
  70. package/src/modules/bmb/workflows/create-workflow/workflow.yaml +7 -8
  71. package/src/modules/bmb/workflows/edit-agent/checklist.md +1 -1
  72. package/src/modules/bmb/workflows/edit-agent/instructions.md +2 -2
  73. package/src/modules/bmb/workflows/edit-agent/workflow.yaml +10 -12
  74. package/src/modules/bmb/workflows/edit-module/README.md +2 -2
  75. package/src/modules/bmb/workflows/edit-module/checklist.md +2 -2
  76. package/src/modules/bmb/workflows/edit-module/instructions.md +7 -5
  77. package/src/modules/bmb/workflows/edit-module/workflow.yaml +11 -13
  78. package/src/modules/bmb/workflows/edit-workflow/instructions.md +4 -4
  79. package/src/modules/bmb/workflows/edit-workflow/workflow.yaml +6 -8
  80. package/src/modules/bmb/workflows/module-brief/README.md +2 -2
  81. package/src/modules/bmb/workflows/module-brief/checklist.md +2 -2
  82. package/src/modules/bmb/workflows/module-brief/instructions.md +3 -2
  83. package/src/modules/bmb/workflows/module-brief/workflow.yaml +12 -7
  84. package/src/modules/bmb/workflows/redoc/README.md +5 -5
  85. package/src/modules/bmb/workflows/redoc/instructions.md +1 -1
  86. package/src/modules/bmb/workflows/redoc/workflow.yaml +1 -1
  87. package/src/modules/bmgd/README.md +208 -0
  88. package/src/modules/bmgd/_module-installer/install-config.yaml +54 -0
  89. package/src/modules/bmgd/agents/game-architect.agent.yaml +33 -0
  90. package/src/modules/bmgd/agents/game-designer.agent.yaml +40 -0
  91. package/src/modules/bmgd/agents/game-dev.agent.yaml +40 -0
  92. package/src/modules/bmgd/agents/game-scrum-master.agent.yaml +75 -0
  93. package/src/modules/bmgd/teams/default-party.csv +10 -0
  94. package/src/modules/{bmm → bmgd}/teams/team-gamedev.yaml +5 -1
  95. package/src/modules/bmgd/workflows/1-preproduction/brainstorm-game/instructions.md +130 -0
  96. package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/workflow.yaml +10 -10
  97. package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/instructions.md +44 -28
  98. package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/workflow.yaml +9 -17
  99. package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/instructions-gdd.md +58 -31
  100. package/src/modules/bmgd/workflows/2-design/gdd/workflow.yaml +81 -0
  101. package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/narrative/instructions-narrative.md +75 -28
  102. package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/narrative/workflow.yaml +6 -12
  103. package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-patterns.yaml +321 -0
  104. package/src/modules/bmgd/workflows/3-technical/game-architecture/architecture-template.md +103 -0
  105. package/src/modules/bmgd/workflows/3-technical/game-architecture/checklist.md +240 -0
  106. package/src/modules/bmgd/workflows/3-technical/game-architecture/decision-catalog.yaml +222 -0
  107. package/src/modules/bmgd/workflows/3-technical/game-architecture/instructions.md +701 -0
  108. package/src/modules/bmgd/workflows/3-technical/game-architecture/pattern-categories.csv +13 -0
  109. package/src/modules/bmgd/workflows/3-technical/game-architecture/workflow.yaml +69 -0
  110. package/src/modules/bmgd/workflows/4-production/code-review/backlog_template.md +12 -0
  111. package/src/modules/bmgd/workflows/4-production/code-review/checklist.md +22 -0
  112. package/src/modules/bmgd/workflows/4-production/code-review/instructions.md +398 -0
  113. package/src/modules/bmgd/workflows/4-production/code-review/workflow.yaml +61 -0
  114. package/src/modules/bmgd/workflows/4-production/correct-course/checklist.md +279 -0
  115. package/src/modules/bmgd/workflows/4-production/correct-course/instructions.md +206 -0
  116. package/src/modules/bmgd/workflows/4-production/correct-course/workflow.yaml +58 -0
  117. package/src/modules/bmgd/workflows/4-production/create-story/checklist.md +240 -0
  118. package/src/modules/bmgd/workflows/4-production/create-story/instructions.md +256 -0
  119. package/src/modules/bmgd/workflows/4-production/create-story/template.md +51 -0
  120. package/src/modules/bmgd/workflows/4-production/create-story/workflow.yaml +74 -0
  121. package/src/modules/bmgd/workflows/4-production/dev-story/checklist.md +38 -0
  122. package/src/modules/bmgd/workflows/4-production/dev-story/instructions.md +267 -0
  123. package/src/modules/bmgd/workflows/4-production/dev-story/workflow.yaml +58 -0
  124. package/src/modules/bmgd/workflows/4-production/epic-tech-context/checklist.md +17 -0
  125. package/src/modules/bmgd/workflows/4-production/epic-tech-context/instructions.md +164 -0
  126. package/src/modules/bmgd/workflows/4-production/epic-tech-context/template.md +76 -0
  127. package/src/modules/bmgd/workflows/4-production/epic-tech-context/workflow.yaml +58 -0
  128. package/src/modules/bmgd/workflows/4-production/retrospective/instructions.md +1443 -0
  129. package/src/modules/bmgd/workflows/4-production/retrospective/workflow.yaml +57 -0
  130. package/src/modules/bmgd/workflows/4-production/sprint-planning/checklist.md +33 -0
  131. package/src/modules/bmgd/workflows/4-production/sprint-planning/instructions.md +234 -0
  132. package/src/modules/bmgd/workflows/4-production/sprint-planning/sprint-status-template.yaml +55 -0
  133. package/src/modules/bmgd/workflows/4-production/sprint-planning/workflow.yaml +51 -0
  134. package/src/modules/bmgd/workflows/4-production/story-context/checklist.md +16 -0
  135. package/src/modules/bmgd/workflows/4-production/story-context/context-template.xml +34 -0
  136. package/src/modules/bmgd/workflows/4-production/story-context/instructions.md +209 -0
  137. package/src/modules/bmgd/workflows/4-production/story-context/workflow.yaml +63 -0
  138. package/src/modules/bmgd/workflows/4-production/story-done/instructions.md +111 -0
  139. package/src/modules/bmgd/workflows/4-production/story-done/workflow.yaml +28 -0
  140. package/src/modules/bmgd/workflows/4-production/story-ready/instructions.md +117 -0
  141. package/src/modules/bmgd/workflows/4-production/story-ready/workflow.yaml +25 -0
  142. package/src/modules/bmm/README.md +79 -92
  143. package/src/modules/bmm/_module-installer/install-config.yaml +9 -23
  144. package/src/modules/bmm/_module-installer/installer.js +2 -2
  145. package/src/modules/bmm/agents/analyst.agent.yaml +25 -19
  146. package/src/modules/bmm/agents/architect.agent.yaml +20 -19
  147. package/src/modules/bmm/agents/dev.agent.yaml +12 -15
  148. package/src/modules/bmm/agents/frame-expert.agent.yaml +42 -0
  149. package/src/modules/bmm/agents/pm.agent.yaml +36 -22
  150. package/src/modules/bmm/agents/sm.agent.yaml +30 -24
  151. package/src/modules/bmm/agents/tea.agent.yaml +25 -17
  152. package/src/modules/bmm/agents/tech-writer.agent.yaml +68 -0
  153. package/src/modules/bmm/agents/ux-designer.agent.yaml +18 -12
  154. package/src/modules/bmm/docs/README.md +236 -0
  155. package/src/modules/bmm/docs/agents-guide.md +1058 -0
  156. package/src/modules/bmm/docs/brownfield-guide.md +762 -0
  157. package/src/modules/bmm/docs/enterprise-agentic-development.md +686 -0
  158. package/src/modules/bmm/docs/faq.md +588 -0
  159. package/src/modules/bmm/docs/glossary.md +320 -0
  160. package/src/modules/bmm/docs/party-mode.md +224 -0
  161. package/src/modules/bmm/docs/quick-spec-flow.md +652 -0
  162. package/src/modules/bmm/docs/quick-start.md +376 -0
  163. package/src/modules/bmm/docs/scale-adaptive-system.md +612 -0
  164. package/src/modules/bmm/docs/test-architecture.md +396 -0
  165. package/src/modules/bmm/{workflows/3-solutioning/architecture/readme.md → docs/workflow-architecture-reference.md} +132 -84
  166. package/src/modules/bmm/{workflows/document-project/README.md → docs/workflow-document-project-reference.md} +49 -4
  167. package/src/modules/bmm/docs/workflows-analysis.md +370 -0
  168. package/src/modules/bmm/docs/workflows-implementation.md +286 -0
  169. package/src/modules/bmm/docs/workflows-planning.md +612 -0
  170. package/src/modules/bmm/docs/workflows-solutioning.md +554 -0
  171. package/src/modules/bmm/teams/default-party.csv +20 -0
  172. package/src/modules/bmm/teams/team-fullstack.yaml +2 -0
  173. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +45 -24
  174. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +8 -8
  175. package/src/modules/bmm/workflows/1-analysis/domain-research/instructions.md +425 -0
  176. package/src/modules/bmm/workflows/1-analysis/domain-research/template.md +180 -0
  177. package/src/modules/bmm/workflows/1-analysis/domain-research/workflow.yaml +56 -0
  178. package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +435 -232
  179. package/src/modules/bmm/workflows/1-analysis/product-brief/template.md +93 -77
  180. package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.yaml +32 -14
  181. package/src/modules/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +144 -0
  182. package/src/modules/bmm/workflows/1-analysis/research/checklist-technical.md +249 -0
  183. package/src/modules/bmm/workflows/1-analysis/research/checklist.md +156 -59
  184. package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +70 -65
  185. package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +205 -143
  186. package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +55 -46
  187. package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +116 -83
  188. package/src/modules/bmm/workflows/1-analysis/research/template-market.md +37 -1
  189. package/src/modules/bmm/workflows/1-analysis/research/template-technical.md +36 -1
  190. package/src/modules/bmm/workflows/1-analysis/research/workflow.yaml +25 -12
  191. package/src/modules/bmm/workflows/2-plan-workflows/create-epics-and-stories/epics-template.md +80 -0
  192. package/src/modules/bmm/workflows/2-plan-workflows/create-epics-and-stories/instructions.md +616 -0
  193. package/src/modules/bmm/workflows/2-plan-workflows/create-epics-and-stories/workflow.yaml +63 -0
  194. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +51 -26
  195. package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +67 -16
  196. package/src/modules/bmm/workflows/2-plan-workflows/prd/checklist.md +292 -63
  197. package/src/modules/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +13 -0
  198. package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +544 -290
  199. package/src/modules/bmm/workflows/2-plan-workflows/prd/prd-template.md +165 -23
  200. package/src/modules/bmm/workflows/2-plan-workflows/prd/project-types.csv +11 -0
  201. package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +50 -18
  202. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +146 -36
  203. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +67 -4
  204. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-generate-stories.md +436 -0
  205. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +874 -163
  206. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +132 -6
  207. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +54 -20
  208. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +36 -28
  209. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -26
  210. package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-template.md +1 -1
  211. package/src/modules/bmm/workflows/3-solutioning/architecture/checklist.md +5 -9
  212. package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +215 -150
  213. package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.yaml +72 -26
  214. package/src/modules/bmm/workflows/3-solutioning/{solutioning-gate-check → implementation-readiness}/checklist.md +7 -13
  215. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/instructions.md +332 -0
  216. package/src/modules/bmm/workflows/3-solutioning/{solutioning-gate-check → implementation-readiness}/template.md +1 -1
  217. package/src/modules/bmm/workflows/3-solutioning/implementation-readiness/workflow.yaml +64 -0
  218. package/src/modules/bmm/workflows/4-implementation/code-review/instructions.md +25 -18
  219. package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +31 -26
  220. package/src/modules/bmm/workflows/4-implementation/correct-course/checklist.md +1 -1
  221. package/src/modules/bmm/workflows/4-implementation/correct-course/instructions.md +7 -2
  222. package/src/modules/bmm/workflows/4-implementation/correct-course/workflow.yaml +38 -25
  223. package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +22 -18
  224. package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +38 -14
  225. package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.md +8 -3
  226. package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +35 -5
  227. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/checklist.md +1 -1
  228. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/instructions.md +10 -6
  229. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +40 -16
  230. package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +1207 -243
  231. package/src/modules/bmm/workflows/4-implementation/retrospective/workflow.yaml +38 -26
  232. package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +28 -15
  233. package/src/modules/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +1 -1
  234. package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +16 -6
  235. package/src/modules/bmm/workflows/4-implementation/story-context/checklist.md +1 -1
  236. package/src/modules/bmm/workflows/4-implementation/story-context/context-template.xml +1 -1
  237. package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +23 -15
  238. package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +39 -8
  239. package/src/modules/bmm/workflows/4-implementation/story-done/instructions.md +1 -1
  240. package/src/modules/bmm/workflows/4-implementation/story-done/workflow.yaml +5 -4
  241. package/src/modules/bmm/workflows/4-implementation/story-ready/instructions.md +6 -6
  242. package/src/modules/bmm/workflows/4-implementation/story-ready/workflow.yaml +5 -7
  243. package/src/modules/bmm/workflows/document-project/checklist.md +1 -1
  244. package/src/modules/bmm/workflows/document-project/instructions.md +5 -5
  245. package/src/modules/bmm/workflows/document-project/workflow.yaml +2 -7
  246. package/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md +4 -4
  247. package/src/modules/bmm/workflows/document-project/workflows/deep-dive.yaml +5 -5
  248. package/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md +13 -13
  249. package/src/modules/bmm/workflows/document-project/workflows/full-scan.yaml +5 -5
  250. package/src/modules/bmm/workflows/frame-expert/_shared/excalidraw-helpers.md +127 -0
  251. package/src/modules/bmm/workflows/frame-expert/_shared/excalidraw-library.json +90 -0
  252. package/src/modules/bmm/workflows/frame-expert/_shared/excalidraw-templates.yaml +127 -0
  253. package/src/modules/bmm/workflows/frame-expert/_shared/validate-json-instructions.md +79 -0
  254. package/src/modules/bmm/workflows/frame-expert/create-dataflow/checklist.md +39 -0
  255. package/src/modules/bmm/workflows/frame-expert/create-dataflow/instructions.md +131 -0
  256. package/src/modules/bmm/workflows/frame-expert/create-dataflow/workflow.yaml +24 -0
  257. package/src/modules/bmm/workflows/frame-expert/create-diagram/checklist.md +43 -0
  258. package/src/modules/bmm/workflows/frame-expert/create-diagram/instructions.md +142 -0
  259. package/src/modules/bmm/workflows/frame-expert/create-diagram/workflow.yaml +25 -0
  260. package/src/modules/bmm/workflows/frame-expert/create-flowchart/checklist.md +49 -0
  261. package/src/modules/bmm/workflows/frame-expert/create-flowchart/instructions.md +242 -0
  262. package/src/modules/bmm/workflows/frame-expert/create-flowchart/workflow.yaml +28 -0
  263. package/src/modules/bmm/workflows/frame-expert/create-wireframe/checklist.md +38 -0
  264. package/src/modules/bmm/workflows/frame-expert/create-wireframe/instructions.md +133 -0
  265. package/src/modules/bmm/workflows/frame-expert/create-wireframe/workflow.yaml +24 -0
  266. package/src/modules/bmm/workflows/techdoc/documentation-standards.md +262 -0
  267. package/src/modules/bmm/workflows/testarch/atdd/atdd-checklist-template.md +2 -2
  268. package/src/modules/bmm/workflows/testarch/atdd/instructions.md +2 -2
  269. package/src/modules/bmm/workflows/testarch/atdd/workflow.yaml +2 -9
  270. package/src/modules/bmm/workflows/testarch/automate/instructions.md +2 -2
  271. package/src/modules/bmm/workflows/testarch/automate/workflow.yaml +2 -11
  272. package/src/modules/bmm/workflows/testarch/ci/checklist.md +4 -4
  273. package/src/modules/bmm/workflows/testarch/ci/instructions.md +2 -2
  274. package/src/modules/bmm/workflows/testarch/ci/workflow.yaml +2 -10
  275. package/src/modules/bmm/workflows/testarch/framework/checklist.md +4 -4
  276. package/src/modules/bmm/workflows/testarch/framework/instructions.md +2 -2
  277. package/src/modules/bmm/workflows/testarch/framework/workflow.yaml +2 -8
  278. package/src/modules/bmm/workflows/testarch/nfr-assess/instructions.md +1 -1
  279. package/src/modules/bmm/workflows/testarch/nfr-assess/workflow.yaml +2 -11
  280. package/src/modules/bmm/workflows/testarch/test-design/checklist.md +4 -4
  281. package/src/modules/bmm/workflows/testarch/test-design/instructions.md +175 -14
  282. package/src/modules/bmm/workflows/testarch/test-design/test-design-template.md +4 -4
  283. package/src/modules/bmm/workflows/testarch/test-design/workflow.yaml +7 -11
  284. package/src/modules/bmm/workflows/testarch/test-review/instructions.md +1 -1
  285. package/src/modules/bmm/workflows/testarch/test-review/workflow.yaml +2 -9
  286. package/src/modules/bmm/workflows/testarch/trace/instructions.md +9 -9
  287. package/src/modules/bmm/workflows/testarch/trace/workflow.yaml +2 -13
  288. package/src/modules/bmm/workflows/workflow-status/init/instructions.md +249 -212
  289. package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +6 -5
  290. package/src/modules/bmm/workflows/workflow-status/instructions.md +177 -113
  291. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +138 -0
  292. package/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +126 -0
  293. package/src/modules/bmm/workflows/workflow-status/paths/game-design.yaml +42 -65
  294. package/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml +122 -0
  295. package/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml +113 -0
  296. package/src/modules/bmm/workflows/workflow-status/paths/{brownfield-level-1.yaml → quick-flow-brownfield.yaml} +18 -18
  297. package/src/modules/bmm/workflows/workflow-status/paths/{greenfield-level-1.yaml → quick-flow-greenfield.yaml} +16 -18
  298. package/src/modules/bmm/workflows/workflow-status/project-levels.yaml +1 -1
  299. package/src/modules/bmm/workflows/workflow-status/workflow-status-template.yaml +24 -0
  300. package/src/modules/bmm/workflows/workflow-status/workflow.yaml +5 -5
  301. package/src/modules/cis/README.md +153 -0
  302. package/src/modules/cis/_module-installer/install-config.yaml +6 -4
  303. package/src/modules/cis/agents/README.md +1 -1
  304. package/src/modules/cis/agents/brainstorming-coach.agent.yaml +13 -8
  305. package/src/modules/cis/agents/creative-problem-solver.agent.yaml +13 -8
  306. package/src/modules/cis/agents/design-thinking-coach.agent.yaml +13 -8
  307. package/src/modules/cis/agents/innovation-strategist.agent.yaml +13 -8
  308. package/src/modules/cis/agents/storyteller.agent.yaml +13 -8
  309. package/src/modules/cis/teams/creative-squad.yaml +1 -0
  310. package/src/modules/cis/teams/default-party.csv +11 -0
  311. package/src/modules/cis/workflows/README.md +102 -30
  312. package/src/modules/cis/workflows/design-thinking/instructions.md +4 -2
  313. package/src/modules/cis/workflows/design-thinking/workflow.yaml +7 -12
  314. package/src/modules/cis/workflows/innovation-strategy/instructions.md +7 -5
  315. package/src/modules/cis/workflows/innovation-strategy/template.md +3 -3
  316. package/src/modules/cis/workflows/innovation-strategy/workflow.yaml +7 -12
  317. package/src/modules/cis/workflows/problem-solving/instructions.md +4 -2
  318. package/src/modules/cis/workflows/problem-solving/workflow.yaml +7 -12
  319. package/src/modules/cis/workflows/storytelling/instructions.md +14 -4
  320. package/src/modules/cis/workflows/storytelling/workflow.yaml +7 -12
  321. package/src/utility/models/action-command-header.md +0 -0
  322. package/src/utility/models/agent-activation-ide.xml +3 -3
  323. package/src/utility/models/agent-activation-web.xml +4 -4
  324. package/src/utility/models/agent-command-header.md +1 -0
  325. package/src/utility/models/fragments/activation-steps.xml +3 -2
  326. package/src/utility/models/fragments/handler-validate-workflow.xml +1 -1
  327. package/src/utility/models/fragments/handler-workflow.xml +1 -1
  328. package/src/utility/models/fragments/web-bundle-activation-steps.xml +3 -3
  329. package/test/test-installation-components.js +214 -0
  330. package/tools/bmad-npx-wrapper.js +10 -98
  331. package/tools/cli/README.md +50 -32
  332. package/tools/cli/bundlers/web-bundler.js +322 -26
  333. package/tools/cli/commands/install.js +2 -5
  334. package/tools/cli/installers/lib/core/config-collector.js +279 -39
  335. package/tools/cli/installers/lib/core/detector.js +62 -7
  336. package/tools/cli/installers/lib/core/ide-config-manager.js +3 -1
  337. package/tools/cli/installers/lib/core/installer.js +219 -46
  338. package/tools/cli/installers/lib/core/manifest-generator.js +33 -117
  339. package/tools/cli/installers/lib/core/manifest.js +6 -2
  340. package/tools/cli/installers/lib/ide/_base-ide.js +57 -3
  341. package/tools/cli/installers/lib/ide/auggie.js +81 -238
  342. package/tools/cli/installers/lib/ide/claude-code.js +47 -25
  343. package/tools/cli/installers/lib/ide/cline.js +15 -18
  344. package/tools/cli/installers/lib/ide/codex.js +17 -48
  345. package/tools/cli/installers/lib/ide/crush.js +14 -50
  346. package/tools/cli/installers/lib/ide/cursor.js +68 -8
  347. package/tools/cli/installers/lib/ide/gemini.js +87 -37
  348. package/tools/cli/installers/lib/ide/github-copilot.js +47 -35
  349. package/tools/cli/installers/lib/ide/iflow.js +13 -30
  350. package/tools/cli/installers/lib/ide/kilo.js +20 -16
  351. package/tools/cli/installers/lib/ide/manager.js +15 -0
  352. package/tools/cli/installers/lib/ide/opencode.js +16 -17
  353. package/tools/cli/installers/lib/ide/qwen.js +39 -11
  354. package/tools/cli/installers/lib/ide/roo.js +27 -62
  355. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +90 -0
  356. package/tools/cli/installers/lib/ide/{task-tool-command-generator.js → shared/task-tool-command-generator.js} +1 -1
  357. package/tools/cli/installers/lib/ide/{workflow-command-generator.js → shared/workflow-command-generator.js} +11 -9
  358. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +14 -0
  359. package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +14 -0
  360. package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +12 -0
  361. package/tools/cli/installers/lib/ide/{workflow-command-template.md → templates/workflow-command-template.md} +3 -5
  362. package/tools/cli/installers/lib/ide/trae.js +20 -32
  363. package/tools/cli/installers/lib/ide/windsurf.js +18 -8
  364. package/tools/cli/installers/lib/modules/manager.js +213 -7
  365. package/tools/cli/lib/cli-utils.js +52 -50
  366. package/tools/cli/lib/config.js +3 -1
  367. package/tools/cli/lib/ui.js +34 -17
  368. package/tools/cli/lib/xml-handler.js +1 -0
  369. package/tools/cli/lib/yaml-format.js +2 -1
  370. package/tools/cli/lib/yaml-xml-builder.js +76 -8
  371. package/tools/schema/agent.js +12 -3
  372. package/v6-open-items.md +3 -9
  373. package/.claude/commands/bmad/bmb/agents/bmad-builder.md +0 -70
  374. package/.claude/commands/bmad/bmb/workflows/README.md +0 -67
  375. package/.claude/commands/bmad/bmb/workflows/audit-workflow.md +0 -15
  376. package/.claude/commands/bmad/bmb/workflows/convert-legacy.md +0 -15
  377. package/.claude/commands/bmad/bmb/workflows/create-agent.md +0 -15
  378. package/.claude/commands/bmad/bmb/workflows/create-module.md +0 -15
  379. package/.claude/commands/bmad/bmb/workflows/create-workflow.md +0 -15
  380. package/.claude/commands/bmad/bmb/workflows/edit-agent.md +0 -15
  381. package/.claude/commands/bmad/bmb/workflows/edit-module.md +0 -15
  382. package/.claude/commands/bmad/bmb/workflows/edit-workflow.md +0 -15
  383. package/.claude/commands/bmad/bmb/workflows/module-brief.md +0 -15
  384. package/.claude/commands/bmad/bmb/workflows/redoc.md +0 -15
  385. package/.claude/commands/bmad/bmd/agents/cli-chief.md +0 -108
  386. package/.claude/commands/bmad/bmd/agents/doc-keeper.md +0 -115
  387. package/.claude/commands/bmad/bmd/agents/release-chief.md +0 -109
  388. package/.claude/commands/bmad/core/agents/bmad-master.md +0 -71
  389. package/.claude/commands/bmad/core/tasks/index-docs.md +0 -9
  390. package/.claude/commands/bmad/core/tools/shard-doc.md +0 -9
  391. package/.claude/commands/bmad/core/workflows/README.md +0 -27
  392. package/.claude/commands/bmad/core/workflows/brainstorming.md +0 -15
  393. package/.claude/commands/bmad/core/workflows/party-mode.md +0 -15
  394. package/.claude/hooks/bmad-tts-injector.sh +0 -415
  395. package/.claude/hooks/bmad-voice-manager.sh +0 -511
  396. package/.claude/hooks/check-output-style.sh +0 -112
  397. package/.claude/hooks/download-extra-voices.sh +0 -244
  398. package/.claude/hooks/github-star-reminder.sh +0 -154
  399. package/.claude/hooks/language-manager.sh +0 -392
  400. package/.claude/hooks/learn-manager.sh +0 -475
  401. package/.claude/hooks/personality-manager.sh +0 -438
  402. package/.claude/hooks/piper-download-voices.sh +0 -165
  403. package/.claude/hooks/piper-installer.sh +0 -178
  404. package/.claude/hooks/piper-multispeaker-registry.sh +0 -165
  405. package/.claude/hooks/piper-voice-manager.sh +0 -293
  406. package/.claude/hooks/play-tts-elevenlabs.sh +0 -404
  407. package/.claude/hooks/play-tts-piper.sh +0 -338
  408. package/.claude/hooks/play-tts.sh +0 -100
  409. package/.claude/hooks/provider-commands.sh +0 -540
  410. package/.claude/hooks/provider-manager.sh +0 -298
  411. package/.claude/hooks/replay-target-audio.sh +0 -95
  412. package/.claude/hooks/sentiment-manager.sh +0 -201
  413. package/.claude/hooks/speed-manager.sh +0 -291
  414. package/.claude/hooks/voice-manager.sh +0 -594
  415. package/.claude/hooks/voices-config.sh +0 -70
  416. package/.claude/settings.local.json +0 -41
  417. package/bmad/_cfg/agent-manifest.csv +0 -7
  418. package/bmad/_cfg/agents/bmb-bmad-builder.customize.yaml +0 -42
  419. package/bmad/_cfg/agents/bmd-cli-chief.customize.yaml +0 -32
  420. package/bmad/_cfg/agents/bmd-doc-keeper.customize.yaml +0 -42
  421. package/bmad/_cfg/agents/bmd-release-chief.customize.yaml +0 -42
  422. package/bmad/_cfg/agents/core-bmad-master.customize.yaml +0 -42
  423. package/bmad/_cfg/files-manifest.csv +0 -83
  424. package/bmad/_cfg/manifest.yaml +0 -12
  425. package/bmad/_cfg/task-manifest.csv +0 -5
  426. package/bmad/_cfg/tool-manifest.csv +0 -2
  427. package/bmad/_cfg/workflow-manifest.csv +0 -15
  428. package/bmad/bmb/README.md +0 -132
  429. package/bmad/bmb/agents/bmad-builder.md +0 -70
  430. package/bmad/bmb/config.yaml +0 -14
  431. package/bmad/bmb/workflows/audit-workflow/checklist.md +0 -143
  432. package/bmad/bmb/workflows/audit-workflow/instructions.md +0 -341
  433. package/bmad/bmb/workflows/audit-workflow/template.md +0 -118
  434. package/bmad/bmb/workflows/audit-workflow/workflow.yaml +0 -23
  435. package/bmad/bmb/workflows/audit-workflow/workflow.yaml.bak +0 -21
  436. package/bmad/bmb/workflows/convert-legacy/README.md +0 -262
  437. package/bmad/bmb/workflows/convert-legacy/checklist.md +0 -205
  438. package/bmad/bmb/workflows/convert-legacy/instructions.md +0 -377
  439. package/bmad/bmb/workflows/convert-legacy/workflow.yaml +0 -32
  440. package/bmad/bmb/workflows/create-agent/README.md +0 -320
  441. package/bmad/bmb/workflows/create-agent/agent-architecture.md +0 -419
  442. package/bmad/bmb/workflows/create-agent/agent-architecture.md.bak +0 -412
  443. package/bmad/bmb/workflows/create-agent/agent-command-patterns.md +0 -759
  444. package/bmad/bmb/workflows/create-agent/agent-command-patterns.md.bak +0 -759
  445. package/bmad/bmb/workflows/create-agent/agent-types.md +0 -292
  446. package/bmad/bmb/workflows/create-agent/brainstorm-context.md +0 -174
  447. package/bmad/bmb/workflows/create-agent/checklist.md +0 -62
  448. package/bmad/bmb/workflows/create-agent/communication-styles.md +0 -202
  449. package/bmad/bmb/workflows/create-agent/instructions.md +0 -430
  450. package/bmad/bmb/workflows/create-agent/workflow.yaml +0 -37
  451. package/bmad/bmb/workflows/create-module/README.md +0 -220
  452. package/bmad/bmb/workflows/create-module/README.md.bak +0 -218
  453. package/bmad/bmb/workflows/create-module/brainstorm-context.md +0 -137
  454. package/bmad/bmb/workflows/create-module/checklist.md +0 -244
  455. package/bmad/bmb/workflows/create-module/checklist.md.bak +0 -245
  456. package/bmad/bmb/workflows/create-module/installer-templates/install-config.yaml +0 -92
  457. package/bmad/bmb/workflows/create-module/installer-templates/installer.js +0 -231
  458. package/bmad/bmb/workflows/create-module/installer-templates/installer.js.bak +0 -231
  459. package/bmad/bmb/workflows/create-module/instructions.md +0 -581
  460. package/bmad/bmb/workflows/create-module/instructions.md.bak +0 -521
  461. package/bmad/bmb/workflows/create-module/module-structure.md +0 -366
  462. package/bmad/bmb/workflows/create-module/module-structure.md.bak +0 -310
  463. package/bmad/bmb/workflows/create-module/workflow.yaml +0 -42
  464. package/bmad/bmb/workflows/create-module/workflow.yaml.bak +0 -40
  465. package/bmad/bmb/workflows/create-workflow/README.md +0 -277
  466. package/bmad/bmb/workflows/create-workflow/brainstorm-context.md +0 -197
  467. package/bmad/bmb/workflows/create-workflow/checklist.md +0 -94
  468. package/bmad/bmb/workflows/create-workflow/instructions.md +0 -716
  469. package/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md +0 -1150
  470. package/bmad/bmb/workflows/create-workflow/workflow-template/checklist.md +0 -24
  471. package/bmad/bmb/workflows/create-workflow/workflow-template/instructions.md +0 -13
  472. package/bmad/bmb/workflows/create-workflow/workflow-template/template.md +0 -9
  473. package/bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml +0 -39
  474. package/bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml.bak +0 -39
  475. package/bmad/bmb/workflows/create-workflow/workflow.yaml +0 -40
  476. package/bmad/bmb/workflows/create-workflow/workflow.yaml.bak +0 -38
  477. package/bmad/bmb/workflows/edit-agent/README.md +0 -112
  478. package/bmad/bmb/workflows/edit-agent/checklist.md +0 -112
  479. package/bmad/bmb/workflows/edit-agent/instructions.md +0 -290
  480. package/bmad/bmb/workflows/edit-agent/workflow.yaml +0 -33
  481. package/bmad/bmb/workflows/edit-module/README.md +0 -187
  482. package/bmad/bmb/workflows/edit-module/checklist.md +0 -165
  483. package/bmad/bmb/workflows/edit-module/instructions.md +0 -339
  484. package/bmad/bmb/workflows/edit-module/workflow.yaml +0 -34
  485. package/bmad/bmb/workflows/edit-workflow/README.md +0 -119
  486. package/bmad/bmb/workflows/edit-workflow/checklist.md +0 -70
  487. package/bmad/bmb/workflows/edit-workflow/instructions.md +0 -342
  488. package/bmad/bmb/workflows/edit-workflow/workflow.yaml +0 -27
  489. package/bmad/bmb/workflows/edit-workflow/workflow.yaml.bak +0 -25
  490. package/bmad/bmb/workflows/module-brief/README.md +0 -264
  491. package/bmad/bmb/workflows/module-brief/checklist.md +0 -116
  492. package/bmad/bmb/workflows/module-brief/instructions.md +0 -267
  493. package/bmad/bmb/workflows/module-brief/template.md +0 -275
  494. package/bmad/bmb/workflows/module-brief/workflow.yaml +0 -29
  495. package/bmad/bmb/workflows/module-brief/workflow.yaml.bak +0 -27
  496. package/bmad/bmb/workflows/redoc/README.md +0 -87
  497. package/bmad/bmb/workflows/redoc/checklist.md +0 -99
  498. package/bmad/bmb/workflows/redoc/instructions.md +0 -265
  499. package/bmad/bmb/workflows/redoc/workflow.yaml +0 -32
  500. package/bmad/bmb/workflows/redoc/workflow.yaml.bak +0 -31
  501. package/bmad/bmd/README.md +0 -193
  502. package/bmad/bmd/README.md.bak +0 -193
  503. package/bmad/bmd/agents/cli-chief-sidecar/instructions.md +0 -102
  504. package/bmad/bmd/agents/cli-chief-sidecar/instructions.md.bak +0 -102
  505. package/bmad/bmd/agents/cli-chief-sidecar/knowledge/README.md +0 -68
  506. package/bmad/bmd/agents/cli-chief-sidecar/knowledge/README.md.bak +0 -68
  507. package/bmad/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md +0 -123
  508. package/bmad/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md.bak +0 -123
  509. package/bmad/bmd/agents/cli-chief-sidecar/memories.md +0 -53
  510. package/bmad/bmd/agents/cli-chief-sidecar/memories.md.bak +0 -53
  511. package/bmad/bmd/agents/cli-chief.md +0 -108
  512. package/bmad/bmd/agents/cli-chief.md.bak +0 -108
  513. package/bmad/bmd/agents/doc-keeper-sidecar/instructions.md +0 -177
  514. package/bmad/bmd/agents/doc-keeper-sidecar/instructions.md.bak +0 -177
  515. package/bmad/bmd/agents/doc-keeper-sidecar/knowledge/README.md +0 -81
  516. package/bmad/bmd/agents/doc-keeper-sidecar/knowledge/README.md.bak +0 -81
  517. package/bmad/bmd/agents/doc-keeper-sidecar/memories.md +0 -88
  518. package/bmad/bmd/agents/doc-keeper-sidecar/memories.md.bak +0 -88
  519. package/bmad/bmd/agents/doc-keeper.md +0 -115
  520. package/bmad/bmd/agents/doc-keeper.md.bak +0 -115
  521. package/bmad/bmd/agents/release-chief-sidecar/instructions.md +0 -164
  522. package/bmad/bmd/agents/release-chief-sidecar/instructions.md.bak +0 -164
  523. package/bmad/bmd/agents/release-chief-sidecar/knowledge/README.md +0 -82
  524. package/bmad/bmd/agents/release-chief-sidecar/knowledge/README.md.bak +0 -82
  525. package/bmad/bmd/agents/release-chief-sidecar/memories.md +0 -73
  526. package/bmad/bmd/agents/release-chief-sidecar/memories.md.bak +0 -73
  527. package/bmad/bmd/agents/release-chief.md +0 -109
  528. package/bmad/bmd/agents/release-chief.md.bak +0 -109
  529. package/bmad/bmd/config.yaml +0 -10
  530. package/bmad/core/agents/bmad-master.md +0 -71
  531. package/bmad/core/agents/bmad-web-orchestrator.agent.xml +0 -122
  532. package/bmad/core/config.yaml +0 -9
  533. package/bmad/core/tasks/adv-elicit-methods.csv +0 -39
  534. package/bmad/core/tasks/index-docs.xml +0 -65
  535. package/bmad/core/tasks/validate-workflow.xml +0 -89
  536. package/bmad/core/tasks/workflow.xml +0 -174
  537. package/bmad/core/tools/shard-doc.xml +0 -100
  538. package/bmad/core/workflows/brainstorming/README.md +0 -271
  539. package/bmad/core/workflows/brainstorming/brain-methods.csv +0 -36
  540. package/bmad/core/workflows/brainstorming/instructions.md +0 -314
  541. package/bmad/core/workflows/brainstorming/template.md +0 -102
  542. package/bmad/core/workflows/brainstorming/workflow.yaml +0 -43
  543. package/bmad/core/workflows/party-mode/instructions.md +0 -188
  544. package/bmad/core/workflows/party-mode/workflow.yaml +0 -23
  545. package/bmad/docs/claude-code-instructions.md +0 -25
  546. package/bmad/docs/codex-instructions.md +0 -21
  547. package/bmd/README.md +0 -193
  548. package/bmd/agents/cli-chief-sidecar/instructions.md +0 -102
  549. package/bmd/agents/cli-chief-sidecar/knowledge/README.md +0 -68
  550. package/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md +0 -123
  551. package/bmd/agents/cli-chief-sidecar/memories.md +0 -53
  552. package/bmd/agents/cli-chief.agent.yaml +0 -126
  553. package/bmd/agents/doc-keeper-sidecar/instructions.md +0 -177
  554. package/bmd/agents/doc-keeper-sidecar/knowledge/README.md +0 -81
  555. package/bmd/agents/doc-keeper-sidecar/memories.md +0 -88
  556. package/bmd/agents/doc-keeper.agent.yaml +0 -137
  557. package/bmd/agents/release-chief-sidecar/instructions.md +0 -164
  558. package/bmd/agents/release-chief-sidecar/knowledge/README.md +0 -82
  559. package/bmd/agents/release-chief-sidecar/memories.md +0 -73
  560. package/bmd/agents/release-chief.agent.yaml +0 -127
  561. package/bmd/bmad-custom-module-installer-plan.md +0 -1176
  562. package/bmd/config.yaml +0 -12
  563. package/docs/bmad-brownfield-guide.md +0 -1260
  564. package/docs/conversion-report-shard-doc-2025-10-26.md +0 -188
  565. package/src/core/tasks/adv-elicit.xml +0 -104
  566. package/src/modules/bmm/agents/game-architect.agent.yaml +0 -35
  567. package/src/modules/bmm/agents/game-designer.agent.yaml +0 -47
  568. package/src/modules/bmm/agents/game-dev.agent.yaml +0 -39
  569. package/src/modules/bmm/sub-modules/claude-code/config.yaml +0 -5
  570. package/src/modules/bmm/sub-modules/claude-code/injections.yaml +0 -242
  571. package/src/modules/bmm/sub-modules/claude-code/readme.md +0 -87
  572. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/api-documenter.md +0 -102
  573. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/codebase-analyzer.md +0 -82
  574. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/data-analyst.md +0 -101
  575. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-analysis/pattern-detector.md +0 -84
  576. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/dependency-mapper.md +0 -83
  577. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/epic-optimizer.md +0 -81
  578. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/requirements-analyst.md +0 -61
  579. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/technical-decisions-curator.md +0 -168
  580. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/trend-spotter.md +0 -115
  581. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/user-journey-mapper.md +0 -123
  582. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-planning/user-researcher.md +0 -72
  583. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-research/market-researcher.md +0 -51
  584. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-research/tech-debt-auditor.md +0 -106
  585. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-review/document-reviewer.md +0 -102
  586. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-review/technical-evaluator.md +0 -68
  587. package/src/modules/bmm/sub-modules/claude-code/sub-agents/bmad-review/test-coverage-analyzer.md +0 -108
  588. package/src/modules/bmm/tasks/daily-standup.xml +0 -85
  589. package/src/modules/bmm/tasks/retrospective.xml +0 -104
  590. package/src/modules/bmm/testarch/README.md +0 -311
  591. package/src/modules/bmm/workflows/1-analysis/brainstorm-game/README.md +0 -38
  592. package/src/modules/bmm/workflows/1-analysis/brainstorm-game/instructions.md +0 -109
  593. package/src/modules/bmm/workflows/1-analysis/brainstorm-project/README.md +0 -29
  594. package/src/modules/bmm/workflows/1-analysis/game-brief/README.md +0 -221
  595. package/src/modules/bmm/workflows/1-analysis/product-brief/README.md +0 -180
  596. package/src/modules/bmm/workflows/1-analysis/research/README.md +0 -454
  597. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-competitor-analyzer.md +0 -259
  598. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-data-analyst.md +0 -190
  599. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-market-researcher.md +0 -337
  600. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-trend-spotter.md +0 -107
  601. package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-user-researcher.md +0 -329
  602. package/src/modules/bmm/workflows/2-plan-workflows/README.md +0 -258
  603. package/src/modules/bmm/workflows/2-plan-workflows/gdd/README.md +0 -222
  604. package/src/modules/bmm/workflows/2-plan-workflows/gdd/workflow.yaml +0 -67
  605. package/src/modules/bmm/workflows/2-plan-workflows/prd/epics-template.md +0 -63
  606. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md +0 -167
  607. package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level1-stories.md +0 -278
  608. package/src/modules/bmm/workflows/3-solutioning/README.md +0 -1
  609. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/README.md +0 -177
  610. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +0 -273
  611. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/validation-criteria.yaml +0 -189
  612. package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml +0 -40
  613. package/src/modules/bmm/workflows/4-implementation/README.md +0 -221
  614. package/src/modules/bmm/workflows/4-implementation/code-review/README.md +0 -69
  615. package/src/modules/bmm/workflows/4-implementation/correct-course/README.md +0 -73
  616. package/src/modules/bmm/workflows/4-implementation/create-story/README.md +0 -129
  617. package/src/modules/bmm/workflows/4-implementation/dev-story/AUDIT-REPORT.md +0 -367
  618. package/src/modules/bmm/workflows/4-implementation/dev-story/README.md +0 -206
  619. package/src/modules/bmm/workflows/4-implementation/epic-tech-context/README.md +0 -195
  620. package/src/modules/bmm/workflows/4-implementation/retrospective/README.md +0 -77
  621. package/src/modules/bmm/workflows/4-implementation/sprint-planning/README.md +0 -156
  622. package/src/modules/bmm/workflows/4-implementation/story-context/README.md +0 -234
  623. package/src/modules/bmm/workflows/README.md +0 -577
  624. package/src/modules/bmm/workflows/document-project/templates/README.md +0 -38
  625. package/src/modules/bmm/workflows/testarch/README.md +0 -26
  626. package/src/modules/bmm/workflows/testarch/atdd/README.md +0 -672
  627. package/src/modules/bmm/workflows/testarch/automate/README.md +0 -869
  628. package/src/modules/bmm/workflows/testarch/ci/README.md +0 -493
  629. package/src/modules/bmm/workflows/testarch/framework/README.md +0 -340
  630. package/src/modules/bmm/workflows/testarch/nfr-assess/README.md +0 -469
  631. package/src/modules/bmm/workflows/testarch/test-design/README.md +0 -493
  632. package/src/modules/bmm/workflows/testarch/test-review/README.md +0 -775
  633. package/src/modules/bmm/workflows/testarch/trace/README.md +0 -802
  634. package/src/modules/bmm/workflows/workflow-status/README.md +0 -241
  635. package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-0.yaml +0 -54
  636. package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-2.yaml +0 -76
  637. package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-3.yaml +0 -95
  638. package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-4.yaml +0 -88
  639. package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-0.yaml +0 -45
  640. package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-2.yaml +0 -78
  641. package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-3.yaml +0 -73
  642. package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-4.yaml +0 -75
  643. package/src/modules/bmm/workflows/workflow-status/workflow-status-template.md +0 -30
  644. package/src/modules/cis/readme.md +0 -86
  645. package/test/fixtures/agent-schema/invalid/persona/principles-as-string.agent.yaml +0 -23
  646. /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/game-brain-methods.csv +0 -0
  647. /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/brainstorm-game/game-context.md +0 -0
  648. /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/checklist.md +0 -0
  649. /package/src/modules/{bmm/workflows/1-analysis → bmgd/workflows/1-preproduction}/game-brief/template.md +0 -0
  650. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/checklist.md +0 -0
  651. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/action-platformer.md +0 -0
  652. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/adventure.md +0 -0
  653. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/card-game.md +0 -0
  654. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/fighting.md +0 -0
  655. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/horror.md +0 -0
  656. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/idle-incremental.md +0 -0
  657. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/metroidvania.md +0 -0
  658. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/moba.md +0 -0
  659. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/party-game.md +0 -0
  660. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/puzzle.md +0 -0
  661. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/racing.md +0 -0
  662. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/rhythm.md +0 -0
  663. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/roguelike.md +0 -0
  664. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/rpg.md +0 -0
  665. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/sandbox.md +0 -0
  666. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/shooter.md +0 -0
  667. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/simulation.md +0 -0
  668. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/sports.md +0 -0
  669. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/strategy.md +0 -0
  670. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/survival.md +0 -0
  671. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/text-based.md +0 -0
  672. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/tower-defense.md +0 -0
  673. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/turn-based-tactics.md +0 -0
  674. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types/visual-novel.md +0 -0
  675. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/game-types.csv +0 -0
  676. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/gdd/gdd-template.md +0 -0
  677. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/narrative/checklist.md +0 -0
  678. /package/src/modules/{bmm/workflows/2-plan-workflows → bmgd/workflows/2-design}/narrative/narrative-template.md +0 -0
@@ -1,672 +0,0 @@
1
- # ATDD (Acceptance Test-Driven Development) Workflow
2
-
3
- Generates failing acceptance tests BEFORE implementation following TDD's red-green-refactor cycle. Creates comprehensive test coverage at appropriate levels (E2E, API, Component) with supporting infrastructure (fixtures, factories, mocks) and provides an implementation checklist to guide development toward passing tests.
4
-
5
- **Core Principle**: Tests fail first (red phase), guide development to green, then enable confident refactoring.
6
-
7
- ## Usage
8
-
9
- ```bash
10
- bmad tea *atdd
11
- ```
12
-
13
- The TEA agent runs this workflow when:
14
-
15
- - User story is approved with clear acceptance criteria
16
- - Development is about to begin (before any implementation code)
17
- - Team is practicing Test-Driven Development (TDD)
18
- - Need to establish test-first contract with DEV team
19
-
20
- ## Inputs
21
-
22
- **Required Context Files:**
23
-
24
- - **Story markdown** (`{story_file}`): User story with acceptance criteria, functional requirements, and technical constraints
25
- - **Framework configuration**: Test framework config (playwright.config.ts or cypress.config.ts) from framework workflow
26
-
27
- **Workflow Variables:**
28
-
29
- - `story_file`: Path to story markdown with acceptance criteria (required)
30
- - `test_dir`: Directory for test files (default: `{project-root}/tests`)
31
- - `test_framework`: Detected from framework workflow (playwright or cypress)
32
- - `test_levels`: Which test levels to generate (default: "e2e,api,component")
33
- - `primary_level`: Primary test level for acceptance criteria (default: "e2e")
34
- - `start_failing`: Tests must fail initially - red phase (default: true)
35
- - `use_given_when_then`: BDD-style test structure (default: true)
36
- - `network_first`: Route interception before navigation to prevent race conditions (default: true)
37
- - `one_assertion_per_test`: Atomic test design (default: true)
38
- - `generate_factories`: Create data factory stubs using faker (default: true)
39
- - `generate_fixtures`: Create fixture architecture with auto-cleanup (default: true)
40
- - `auto_cleanup`: Fixtures clean up their data automatically (default: true)
41
- - `include_data_testids`: List required data-testid attributes for DEV (default: true)
42
- - `include_mock_requirements`: Document mock/stub needs (default: true)
43
- - `auto_load_knowledge`: Load fixture-architecture, data-factories, component-tdd fragments (default: true)
44
- - `share_with_dev`: Provide implementation checklist to DEV agent (default: true)
45
- - `output_checklist`: Path for implementation checklist (default: `{output_folder}/atdd-checklist-{story_id}.md`)
46
-
47
- **Optional Context:**
48
-
49
- - **Test design document**: For risk/priority context alignment (P0-P3 scenarios)
50
- - **Existing fixtures/helpers**: For consistency with established patterns
51
- - **Architecture documents**: For understanding system boundaries and integration points
52
-
53
- ## Outputs
54
-
55
- **Primary Deliverable:**
56
-
57
- - **ATDD Checklist** (`atdd-checklist-{story_id}.md`): Implementation guide containing:
58
- - Story summary and acceptance criteria breakdown
59
- - Test files created with paths and line counts
60
- - Data factories created with patterns
61
- - Fixtures created with auto-cleanup logic
62
- - Mock requirements for external services
63
- - Required data-testid attributes list
64
- - Implementation checklist mapping tests to code tasks
65
- - Red-green-refactor workflow guidance
66
- - Execution commands for running tests
67
-
68
- **Test Files Created:**
69
-
70
- - **E2E tests** (`tests/e2e/{feature-name}.spec.ts`): Full user journey tests for critical paths
71
- - **API tests** (`tests/api/{feature-name}.api.spec.ts`): Business logic and service contract tests
72
- - **Component tests** (`tests/component/{ComponentName}.test.tsx`): UI component behavior tests
73
-
74
- **Supporting Infrastructure:**
75
-
76
- - **Data factories** (`tests/support/factories/{entity}.factory.ts`): Factory functions using @faker-js/faker for generating test data with overrides support
77
- - **Test fixtures** (`tests/support/fixtures/{feature}.fixture.ts`): Playwright fixtures with setup/teardown and auto-cleanup
78
- - **Mock/stub documentation**: Requirements for external service mocking (payment gateways, email services, etc.)
79
- - **data-testid requirements**: List of required test IDs for stable selectors in UI implementation
80
-
81
- **Validation Safeguards:**
82
-
83
- - All tests must fail initially (red phase verified by local test run)
84
- - Failure messages are clear and actionable
85
- - Tests use Given-When-Then format for readability
86
- - Network-first pattern applied (route interception before navigation)
87
- - One assertion per test (atomic test design)
88
- - No hard waits or sleeps (explicit waits only)
89
-
90
- ## Key Features
91
-
92
- ### Red-Green-Refactor Cycle
93
-
94
- **RED Phase** (TEA Agent responsibility):
95
-
96
- - Write failing tests first defining expected behavior
97
- - Tests fail for right reason (missing implementation, not test bugs)
98
- - All supporting infrastructure (factories, fixtures, mocks) created
99
-
100
- **GREEN Phase** (DEV Agent responsibility):
101
-
102
- - Implement minimal code to pass one test at a time
103
- - Use implementation checklist as guide
104
- - Run tests frequently to verify progress
105
-
106
- **REFACTOR Phase** (DEV Agent responsibility):
107
-
108
- - Improve code quality with confidence (tests provide safety net)
109
- - Extract duplications, optimize performance
110
- - Ensure tests still pass after changes
111
-
112
- ### Test Level Selection Framework
113
-
114
- **E2E (End-to-End)**:
115
-
116
- - Critical user journeys (login, checkout, core workflows)
117
- - Multi-system integration
118
- - User-facing acceptance criteria
119
- - Characteristics: High confidence, slow execution, brittle
120
-
121
- **API (Integration)**:
122
-
123
- - Business logic validation
124
- - Service contracts and data transformations
125
- - Backend integration without UI
126
- - Characteristics: Fast feedback, good balance, stable
127
-
128
- **Component**:
129
-
130
- - UI component behavior (buttons, forms, modals)
131
- - Interaction testing (click, hover, keyboard navigation)
132
- - Visual regression and state management
133
- - Characteristics: Fast, isolated, granular
134
-
135
- **Unit**:
136
-
137
- - Pure business logic and algorithms
138
- - Edge cases and error handling
139
- - Minimal dependencies
140
- - Characteristics: Fastest, most granular
141
-
142
- **Selection Strategy**: Avoid duplicate coverage. Use E2E for critical happy path, API for business logic variations, component for UI edge cases, unit for pure logic.
143
-
144
- ### Recording Mode (NEW - Phase 2.5)
145
-
146
- **atdd** can record complex UI interactions instead of AI generation.
147
-
148
- **Activation**: Automatic for complex UI when config.tea_use_mcp_enhancements is true and MCP available
149
-
150
- - Fallback: AI generation (silent, automatic)
151
-
152
- **When to Use Recording Mode:**
153
-
154
- - ✅ Complex UI interactions (drag-drop, multi-step forms, wizards)
155
- - ✅ Visual workflows (modals, dialogs, animations)
156
- - ✅ Unclear requirements (exploratory, discovering expected behavior)
157
- - ✅ Multi-page flows (checkout, registration, onboarding)
158
- - ❌ NOT for simple CRUD (AI generation faster)
159
- - ❌ NOT for API-only tests (no UI to record)
160
-
161
- **When to Use AI Generation (Default):**
162
-
163
- - ✅ Clear acceptance criteria available
164
- - ✅ Standard patterns (login, CRUD, navigation)
165
- - ✅ Need many tests quickly
166
- - ✅ API/backend tests (no UI interaction)
167
-
168
- **How Test Generation Works (Default - AI-Based):**
169
-
170
- TEA generates tests using AI by:
171
-
172
- 1. **Analyzing acceptance criteria** from story markdown
173
- 2. **Inferring selectors** from requirement descriptions (e.g., "login button" → `[data-testid="login-button"]`)
174
- 3. **Synthesizing test code** based on knowledge base patterns
175
- 4. **Estimating interactions** using common UI patterns (click, type, verify)
176
- 5. **Applying best practices** from knowledge fragments (Given-When-Then, network-first, fixtures)
177
-
178
- **This works well for:**
179
-
180
- - ✅ Clear requirements with known UI patterns
181
- - ✅ Standard workflows (login, CRUD, navigation)
182
- - ✅ When selectors follow conventions (data-testid attributes)
183
-
184
- **What MCP Adds (Interactive Verification & Enhancement):**
185
-
186
- When Playwright MCP is available, TEA **additionally**:
187
-
188
- 1. **Verifies generated tests** by:
189
- - **Launching real browser** with `generator_setup_page`
190
- - **Executing generated test steps** with `browser_*` tools (`navigate`, `click`, `type`)
191
- - **Seeing actual UI** with `browser_snapshot` (visual verification)
192
- - **Discovering real selectors** with `browser_generate_locator` (auto-generate from live DOM)
193
-
194
- 2. **Enhances AI-generated tests** by:
195
- - **Validating selectors exist** in actual DOM (not just guesses)
196
- - **Verifying behavior** with `browser_verify_text`, `browser_verify_visible`, `browser_verify_url`
197
- - **Capturing actual interaction log** with `generator_read_log`
198
- - **Refining test code** with real observed behavior
199
-
200
- 3. **Catches issues early** by:
201
- - **Finding missing selectors** before DEV implements (requirements clarification)
202
- - **Discovering edge cases** not in requirements (loading states, error messages)
203
- - **Validating assumptions** about UI structure and behavior
204
-
205
- **Key Benefits of MCP Enhancement:**
206
-
207
- - ✅ **AI generates tests** (fast, based on requirements) **+** **MCP verifies tests** (accurate, based on reality)
208
- - ✅ **Accurate selectors**: Validated against actual DOM, not just inferred
209
- - ✅ **Visual validation**: TEA sees what user sees (modals, animations, state changes)
210
- - ✅ **Complex flows**: Records multi-step interactions precisely
211
- - ✅ **Edge case discovery**: Observes actual app behavior beyond requirements
212
- - ✅ **Selector resilience**: MCP generates robust locators from live page (role-based, text-based, fallback chains)
213
-
214
- **Example Enhancement Flow:**
215
-
216
- ```
217
- 1. AI generates test based on acceptance criteria
218
- → await page.click('[data-testid="submit-button"]')
219
-
220
- 2. MCP verifies selector exists (browser_generate_locator)
221
- → Found: button[type="submit"].btn-primary
222
- → No data-testid attribute exists!
223
-
224
- 3. TEA refines test with actual selector
225
- → await page.locator('button[type="submit"]').click()
226
- → Documents requirement: "Add data-testid='submit-button' to button"
227
- ```
228
-
229
- **Recording Workflow (MCP-Based):**
230
-
231
- ```
232
- 1. Set generation_mode: "recording"
233
- 2. Use generator_setup_page to init recording session
234
- 3. For each acceptance criterion:
235
- a. Execute scenario with browser_* tools:
236
- - browser_navigate, browser_click, browser_type
237
- - browser_select, browser_check
238
- b. Add verifications with browser_verify_* tools:
239
- - browser_verify_text, browser_verify_visible
240
- - browser_verify_url
241
- c. Capture log with generator_read_log
242
- d. Generate test with generator_write_test
243
- 4. Enhance generated tests with knowledge base patterns:
244
- - Add Given-When-Then comments
245
- - Replace selectors with data-testid
246
- - Add network-first interception
247
- - Add fixtures/factories
248
- 5. Verify tests fail (RED phase)
249
- ```
250
-
251
- **Example: Recording a Checkout Flow**
252
-
253
- ```markdown
254
- Recording session for: "User completes checkout with credit card"
255
-
256
- Actions recorded:
257
-
258
- 1. browser_navigate('/cart')
259
- 2. browser_click('[data-testid="checkout-button"]')
260
- 3. browser_type('[data-testid="card-number"]', '4242424242424242')
261
- 4. browser_type('[data-testid="expiry"]', '12/25')
262
- 5. browser_type('[data-testid="cvv"]', '123')
263
- 6. browser_click('[data-testid="place-order"]')
264
- 7. browser_verify_text('Order confirmed')
265
- 8. browser_verify_url('/confirmation')
266
-
267
- Generated test (enhanced):
268
-
269
- - Given-When-Then structure added
270
- - data-testid selectors used
271
- - Network-first payment API mock added
272
- - Card factory created for test data
273
- - Test verified to FAIL (checkout not implemented)
274
- ```
275
-
276
- **Graceful Degradation:**
277
-
278
- - Recording mode is OPTIONAL (default: AI generation)
279
- - Requires Playwright MCP (falls back to AI if unavailable)
280
- - Generated tests enhanced with knowledge base patterns
281
- - Same quality output regardless of generation method
282
-
283
- ### Given-When-Then Structure
284
-
285
- All tests follow BDD format for clarity:
286
-
287
- ```typescript
288
- test('should display error for invalid credentials', async ({ page }) => {
289
- // GIVEN: User is on login page
290
- await page.goto('/login');
291
-
292
- // WHEN: User submits invalid credentials
293
- await page.fill('[data-testid="email-input"]', 'invalid@example.com');
294
- await page.fill('[data-testid="password-input"]', 'wrongpassword');
295
- await page.click('[data-testid="login-button"]');
296
-
297
- // THEN: Error message is displayed
298
- await expect(page.locator('[data-testid="error-message"]')).toHaveText('Invalid email or password');
299
- });
300
- ```
301
-
302
- ### Network-First Testing Pattern
303
-
304
- **Critical pattern to prevent race conditions**:
305
-
306
- ```typescript
307
- // ✅ CORRECT: Intercept BEFORE navigation
308
- await page.route('**/api/data', handler);
309
- await page.goto('/page');
310
-
311
- // ❌ WRONG: Navigate then intercept (race condition)
312
- await page.goto('/page');
313
- await page.route('**/api/data', handler); // Too late!
314
- ```
315
-
316
- Always set up route interception before navigating to pages that make network requests.
317
-
318
- ### Data Factory Architecture
319
-
320
- Use faker for all test data generation:
321
-
322
- ```typescript
323
- // tests/support/factories/user.factory.ts
324
- import { faker } from '@faker-js/faker';
325
-
326
- export const createUser = (overrides = {}) => ({
327
- id: faker.number.int(),
328
- email: faker.internet.email(),
329
- name: faker.person.fullName(),
330
- createdAt: faker.date.recent().toISOString(),
331
- ...overrides,
332
- });
333
-
334
- export const createUsers = (count: number) => Array.from({ length: count }, () => createUser());
335
- ```
336
-
337
- **Factory principles:**
338
-
339
- - Use faker for random data (no hardcoded values to prevent collisions)
340
- - Support overrides for specific test scenarios
341
- - Generate complete valid objects matching API contracts
342
- - Include helper functions for bulk creation
343
-
344
- ### Fixture Architecture with Auto-Cleanup
345
-
346
- Playwright fixtures with automatic data cleanup:
347
-
348
- ```typescript
349
- // tests/support/fixtures/auth.fixture.ts
350
- import { test as base } from '@playwright/test';
351
-
352
- export const test = base.extend({
353
- authenticatedUser: async ({ page }, use) => {
354
- // Setup: Create and authenticate user
355
- const user = await createUser();
356
- await page.goto('/login');
357
- await page.fill('[data-testid="email"]', user.email);
358
- await page.fill('[data-testid="password"]', 'password123');
359
- await page.click('[data-testid="login-button"]');
360
- await page.waitForURL('/dashboard');
361
-
362
- // Provide to test
363
- await use(user);
364
-
365
- // Cleanup: Delete user (automatic)
366
- await deleteUser(user.id);
367
- },
368
- });
369
- ```
370
-
371
- **Fixture principles:**
372
-
373
- - Auto-cleanup (always delete created data in teardown)
374
- - Composable (fixtures can use other fixtures via mergeTests)
375
- - Isolated (each test gets fresh data)
376
- - Type-safe with TypeScript
377
-
378
- ### One Assertion Per Test (Atomic Design)
379
-
380
- Each test should verify exactly one behavior:
381
-
382
- ```typescript
383
- // ✅ CORRECT: One assertion
384
- test('should display user name', async ({ page }) => {
385
- await expect(page.locator('[data-testid="user-name"]')).toHaveText('John');
386
- });
387
-
388
- // ❌ WRONG: Multiple assertions (not atomic)
389
- test('should display user info', async ({ page }) => {
390
- await expect(page.locator('[data-testid="user-name"]')).toHaveText('John');
391
- await expect(page.locator('[data-testid="user-email"]')).toHaveText('john@example.com');
392
- });
393
- ```
394
-
395
- **Why?** If second assertion fails, you don't know if first is still valid. Split into separate tests for clear failure diagnosis.
396
-
397
- ### Implementation Checklist for DEV
398
-
399
- Maps each failing test to concrete implementation tasks:
400
-
401
- ```markdown
402
- ## Implementation Checklist
403
-
404
- ### Test: User Login with Valid Credentials
405
-
406
- - [ ] Create `/login` route
407
- - [ ] Implement login form component
408
- - [ ] Add email/password validation
409
- - [ ] Integrate authentication API
410
- - [ ] Add `data-testid` attributes: `email-input`, `password-input`, `login-button`
411
- - [ ] Implement error handling
412
- - [ ] Run test: `npm run test:e2e -- login.spec.ts`
413
- - [ ] ✅ Test passes (green phase)
414
- ```
415
-
416
- Provides clear path from red to green for each test.
417
-
418
- ## Integration with Other Workflows
419
-
420
- **Before this workflow:**
421
-
422
- - **framework** workflow: Must run first to establish test framework architecture (Playwright or Cypress config, directory structure, base fixtures)
423
- - **test-design** workflow: Optional but recommended for P0-P3 priority alignment and risk assessment context
424
-
425
- **After this workflow:**
426
-
427
- - **DEV agent** implements features guided by failing tests and implementation checklist
428
- - **test-review** workflow: Review generated test quality before sharing with DEV team
429
- - **automate** workflow: After story completion, expand regression suite with additional edge case coverage
430
-
431
- **Coordinates with:**
432
-
433
- - **Story approval process**: ATDD runs after story is approved but before DEV begins implementation
434
- - **Quality gates**: Failing tests serve as acceptance criteria for story completion (all tests must pass)
435
-
436
- ## Important Notes
437
-
438
- ### ATDD is Test-First, Not Test-After
439
-
440
- **Critical timing**: Tests must be written BEFORE any implementation code. This ensures:
441
-
442
- - Tests define the contract (what needs to be built)
443
- - Implementation is guided by tests (no over-engineering)
444
- - Tests verify behavior, not implementation details
445
- - Confidence in refactoring (tests catch regressions)
446
-
447
- ### All Tests Must Fail Initially
448
-
449
- **Red phase verification is mandatory**:
450
-
451
- - Run tests locally after creation to confirm RED phase
452
- - Failure should be due to missing implementation, not test bugs
453
- - Failure messages should be clear and actionable
454
- - Document expected failure messages in ATDD checklist
455
-
456
- If a test passes before implementation, it's not testing the right thing.
457
-
458
- ### Use data-testid for Stable Selectors
459
-
460
- **Why data-testid?**
461
-
462
- - CSS classes change frequently (styling refactors)
463
- - IDs may not be unique or stable
464
- - Text content changes with localization
465
- - data-testid is explicit contract between tests and UI
466
-
467
- ```typescript
468
- // ✅ CORRECT: Stable selector
469
- await page.click('[data-testid="login-button"]');
470
-
471
- // ❌ FRAGILE: Class-based selector
472
- await page.click('.btn.btn-primary.login-btn');
473
- ```
474
-
475
- ATDD checklist includes complete list of required data-testid attributes for DEV team.
476
-
477
- ### No Hard Waits or Sleeps
478
-
479
- **Use explicit waits only**:
480
-
481
- ```typescript
482
- // ✅ CORRECT: Explicit wait for condition
483
- await page.waitForSelector('[data-testid="user-name"]');
484
- await expect(page.locator('[data-testid="user-name"]')).toBeVisible();
485
-
486
- // ❌ WRONG: Hard wait (flaky, slow)
487
- await page.waitForTimeout(2000);
488
- ```
489
-
490
- Playwright's auto-waiting is preferred (expect() automatically waits up to timeout).
491
-
492
- ### Component Tests for Complex UI Only
493
-
494
- **When to use component tests:**
495
-
496
- - Complex UI interactions (drag-drop, keyboard navigation)
497
- - Form validation logic
498
- - State management within component
499
- - Visual edge cases
500
-
501
- **When NOT to use:**
502
-
503
- - Simple rendering (snapshot tests are sufficient)
504
- - Integration with backend (use E2E or API tests)
505
- - Full user journeys (use E2E tests)
506
-
507
- Component tests are valuable but should complement, not replace, E2E and API tests.
508
-
509
- ### Auto-Cleanup is Non-Negotiable
510
-
511
- **Every test must clean up its data**:
512
-
513
- - Use fixtures with automatic teardown
514
- - Never leave test data in database/storage
515
- - Each test should be isolated (no shared state)
516
-
517
- **Cleanup patterns:**
518
-
519
- - Fixtures: Cleanup in teardown function
520
- - Factories: Provide deletion helpers
521
- - Tests: Use `test.afterEach()` for manual cleanup if needed
522
-
523
- Without auto-cleanup, tests become flaky and depend on execution order.
524
-
525
- ## Knowledge Base References
526
-
527
- This workflow automatically consults:
528
-
529
- - **fixture-architecture.md** - Test fixture patterns with setup/teardown and auto-cleanup using Playwright's test.extend()
530
- - **data-factories.md** - Factory patterns using @faker-js/faker for random test data generation with overrides support
531
- - **component-tdd.md** - Component test strategies using Playwright Component Testing (@playwright/experimental-ct-react)
532
- - **network-first.md** - Route interception patterns (intercept before navigation to prevent race conditions)
533
- - **test-quality.md** - Test design principles (Given-When-Then, one assertion per test, determinism, isolation)
534
- - **test-levels-framework.md** - Test level selection framework (E2E vs API vs Component vs Unit)
535
-
536
- See `tea-index.csv` for complete knowledge fragment mapping and additional references.
537
-
538
- ## Example Output
539
-
540
- After running this workflow, the ATDD checklist will contain:
541
-
542
- ````markdown
543
- # ATDD Checklist - Epic 3, Story 5: User Authentication
544
-
545
- ## Story Summary
546
-
547
- As a user, I want to log in with email and password so that I can access my personalized dashboard.
548
-
549
- ## Acceptance Criteria
550
-
551
- 1. User can log in with valid credentials
552
- 2. User sees error message with invalid credentials
553
- 3. User is redirected to dashboard after successful login
554
-
555
- ## Failing Tests Created (RED Phase)
556
-
557
- ### E2E Tests (3 tests)
558
-
559
- - `tests/e2e/user-authentication.spec.ts` (87 lines)
560
- - ✅ should log in with valid credentials (RED - missing /login route)
561
- - ✅ should display error for invalid credentials (RED - error message not implemented)
562
- - ✅ should redirect to dashboard after login (RED - redirect logic missing)
563
-
564
- ### API Tests (2 tests)
565
-
566
- - `tests/api/auth.api.spec.ts` (54 lines)
567
- - ✅ POST /api/auth/login - should return token for valid credentials (RED - endpoint not implemented)
568
- - ✅ POST /api/auth/login - should return 401 for invalid credentials (RED - validation missing)
569
-
570
- ## Data Factories Created
571
-
572
- - `tests/support/factories/user.factory.ts` - createUser(), createUsers(count)
573
-
574
- ## Fixtures Created
575
-
576
- - `tests/support/fixtures/auth.fixture.ts` - authenticatedUser fixture with auto-cleanup
577
-
578
- ## Required data-testid Attributes
579
-
580
- ### Login Page
581
-
582
- - `email-input` - Email input field
583
- - `password-input` - Password input field
584
- - `login-button` - Submit button
585
- - `error-message` - Error message container
586
-
587
- ### Dashboard Page
588
-
589
- - `user-name` - User name display
590
- - `logout-button` - Logout button
591
-
592
- ## Implementation Checklist
593
-
594
- ### Test: User Login with Valid Credentials
595
-
596
- - [ ] Create `/login` route
597
- - [ ] Implement login form component
598
- - [ ] Add email/password validation
599
- - [ ] Integrate authentication API
600
- - [ ] Add data-testid attributes: `email-input`, `password-input`, `login-button`
601
- - [ ] Run test: `npm run test:e2e -- user-authentication.spec.ts`
602
- - [ ] ✅ Test passes (green phase)
603
-
604
- ### Test: Display Error for Invalid Credentials
605
-
606
- - [ ] Add error state management
607
- - [ ] Display error message UI
608
- - [ ] Add `data-testid="error-message"`
609
- - [ ] Run test: `npm run test:e2e -- user-authentication.spec.ts`
610
- - [ ] ✅ Test passes (green phase)
611
-
612
- ### Test: Redirect to Dashboard After Login
613
-
614
- - [ ] Implement redirect logic after successful auth
615
- - [ ] Verify authentication token stored
616
- - [ ] Add dashboard route protection
617
- - [ ] Run test: `npm run test:e2e -- user-authentication.spec.ts`
618
- - [ ] ✅ Test passes (green phase)
619
-
620
- ## Running Tests
621
-
622
- ```bash
623
- # Run all failing tests
624
- npm run test:e2e
625
-
626
- # Run specific test file
627
- npm run test:e2e -- user-authentication.spec.ts
628
-
629
- # Run tests in headed mode (see browser)
630
- npm run test:e2e -- --headed
631
-
632
- # Debug specific test
633
- npm run test:e2e -- user-authentication.spec.ts --debug
634
- ```
635
- ````
636
-
637
- ## Red-Green-Refactor Workflow
638
-
639
- **RED Phase** (Complete):
640
-
641
- - ✅ All tests written and failing
642
- - ✅ Fixtures and factories created
643
- - ✅ data-testid requirements documented
644
-
645
- **GREEN Phase** (DEV Team - Next Steps):
646
-
647
- 1. Pick one failing test from checklist
648
- 2. Implement minimal code to make it pass
649
- 3. Run test to verify green
650
- 4. Check off task in checklist
651
- 5. Move to next test
652
- 6. Repeat until all tests pass
653
-
654
- **REFACTOR Phase** (DEV Team - After All Tests Pass):
655
-
656
- 1. All tests passing (green)
657
- 2. Improve code quality (extract functions, optimize)
658
- 3. Remove duplications
659
- 4. Ensure tests still pass after each refactor
660
-
661
- ## Next Steps
662
-
663
- 1. Review this checklist with team
664
- 2. Run failing tests to confirm RED phase: `npm run test:e2e`
665
- 3. Begin implementation using checklist as guide
666
- 4. Share progress in daily standup
667
- 5. When all tests pass, run `bmad sm story-done` to move story to DONE
668
-
669
- ```
670
-
671
- This comprehensive checklist guides DEV team from red to green with clear tasks and validation steps.
672
- ```