agentvibes 2.12.7 → 2.12.8

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 (420) hide show
  1. package/README.md +2 -2
  2. package/package.json +1 -1
  3. package/src/installer.js +23 -20
  4. package/.bmad/_cfg/agent-manifest.csv +0 -11
  5. package/.bmad/_cfg/agent-voice-map.csv +0 -11
  6. package/.bmad/_cfg/agents/bmm-analyst.customize.yaml +0 -42
  7. package/.bmad/_cfg/agents/bmm-architect.customize.yaml +0 -42
  8. package/.bmad/_cfg/agents/bmm-dev.customize.yaml +0 -42
  9. package/.bmad/_cfg/agents/bmm-frame-expert.customize.yaml +0 -42
  10. package/.bmad/_cfg/agents/bmm-pm.customize.yaml +0 -42
  11. package/.bmad/_cfg/agents/bmm-sm.customize.yaml +0 -42
  12. package/.bmad/_cfg/agents/bmm-tea.customize.yaml +0 -42
  13. package/.bmad/_cfg/agents/bmm-tech-writer.customize.yaml +0 -42
  14. package/.bmad/_cfg/agents/bmm-ux-designer.customize.yaml +0 -42
  15. package/.bmad/_cfg/agents/core-bmad-master.customize.yaml +0 -42
  16. package/.bmad/_cfg/files-manifest.csv +0 -243
  17. package/.bmad/_cfg/ides/claude-code.yaml +0 -6
  18. package/.bmad/_cfg/manifest.yaml +0 -9
  19. package/.bmad/_cfg/task-manifest.csv +0 -5
  20. package/.bmad/_cfg/tool-manifest.csv +0 -2
  21. package/.bmad/_cfg/workflow-manifest.csv +0 -38
  22. package/.bmad/bmm/README.md +0 -128
  23. package/.bmad/bmm/agents/analyst.md +0 -79
  24. package/.bmad/bmm/agents/analyst.md.backup-pre-tts +0 -75
  25. package/.bmad/bmm/agents/architect.md +0 -80
  26. package/.bmad/bmm/agents/dev.md +0 -70
  27. package/.bmad/bmm/agents/frame-expert.md +0 -72
  28. package/.bmad/bmm/agents/pm.md +0 -84
  29. package/.bmad/bmm/agents/sm.md +0 -93
  30. package/.bmad/bmm/agents/tea.md +0 -80
  31. package/.bmad/bmm/agents/tech-writer.md +0 -84
  32. package/.bmad/bmm/agents/ux-designer.md +0 -79
  33. package/.bmad/bmm/config.yaml +0 -17
  34. package/.bmad/bmm/docs/README.md +0 -236
  35. package/.bmad/bmm/docs/agents-guide.md +0 -1058
  36. package/.bmad/bmm/docs/brownfield-guide.md +0 -762
  37. package/.bmad/bmm/docs/enterprise-agentic-development.md +0 -686
  38. package/.bmad/bmm/docs/faq.md +0 -588
  39. package/.bmad/bmm/docs/glossary.md +0 -320
  40. package/.bmad/bmm/docs/party-mode.md +0 -224
  41. package/.bmad/bmm/docs/quick-spec-flow.md +0 -652
  42. package/.bmad/bmm/docs/quick-start.md +0 -376
  43. package/.bmad/bmm/docs/scale-adaptive-system.md +0 -612
  44. package/.bmad/bmm/docs/test-architecture.md +0 -396
  45. package/.bmad/bmm/docs/workflow-architecture-reference.md +0 -366
  46. package/.bmad/bmm/docs/workflow-document-project-reference.md +0 -489
  47. package/.bmad/bmm/docs/workflows-analysis.md +0 -370
  48. package/.bmad/bmm/docs/workflows-implementation.md +0 -286
  49. package/.bmad/bmm/docs/workflows-planning.md +0 -612
  50. package/.bmad/bmm/docs/workflows-solutioning.md +0 -554
  51. package/.bmad/bmm/teams/default-party.csv +0 -20
  52. package/.bmad/bmm/teams/team-fullstack.yaml +0 -13
  53. package/.bmad/bmm/testarch/knowledge/ci-burn-in.md +0 -675
  54. package/.bmad/bmm/testarch/knowledge/component-tdd.md +0 -486
  55. package/.bmad/bmm/testarch/knowledge/contract-testing.md +0 -957
  56. package/.bmad/bmm/testarch/knowledge/data-factories.md +0 -500
  57. package/.bmad/bmm/testarch/knowledge/email-auth.md +0 -721
  58. package/.bmad/bmm/testarch/knowledge/error-handling.md +0 -725
  59. package/.bmad/bmm/testarch/knowledge/feature-flags.md +0 -750
  60. package/.bmad/bmm/testarch/knowledge/fixture-architecture.md +0 -401
  61. package/.bmad/bmm/testarch/knowledge/network-first.md +0 -486
  62. package/.bmad/bmm/testarch/knowledge/nfr-criteria.md +0 -670
  63. package/.bmad/bmm/testarch/knowledge/playwright-config.md +0 -730
  64. package/.bmad/bmm/testarch/knowledge/probability-impact.md +0 -601
  65. package/.bmad/bmm/testarch/knowledge/risk-governance.md +0 -615
  66. package/.bmad/bmm/testarch/knowledge/selective-testing.md +0 -732
  67. package/.bmad/bmm/testarch/knowledge/selector-resilience.md +0 -527
  68. package/.bmad/bmm/testarch/knowledge/test-healing-patterns.md +0 -644
  69. package/.bmad/bmm/testarch/knowledge/test-levels-framework.md +0 -473
  70. package/.bmad/bmm/testarch/knowledge/test-priorities-matrix.md +0 -373
  71. package/.bmad/bmm/testarch/knowledge/test-quality.md +0 -664
  72. package/.bmad/bmm/testarch/knowledge/timing-debugging.md +0 -372
  73. package/.bmad/bmm/testarch/knowledge/visual-debugging.md +0 -524
  74. package/.bmad/bmm/testarch/tea-index.csv +0 -22
  75. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/instructions.md +0 -112
  76. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/project-context.md +0 -25
  77. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +0 -26
  78. package/.bmad/bmm/workflows/1-analysis/domain-research/instructions.md +0 -425
  79. package/.bmad/bmm/workflows/1-analysis/domain-research/template.md +0 -180
  80. package/.bmad/bmm/workflows/1-analysis/domain-research/workflow.yaml +0 -28
  81. package/.bmad/bmm/workflows/1-analysis/product-brief/checklist.md +0 -115
  82. package/.bmad/bmm/workflows/1-analysis/product-brief/instructions.md +0 -524
  83. package/.bmad/bmm/workflows/1-analysis/product-brief/template.md +0 -181
  84. package/.bmad/bmm/workflows/1-analysis/product-brief/workflow.yaml +0 -45
  85. package/.bmad/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +0 -144
  86. package/.bmad/bmm/workflows/1-analysis/research/checklist-technical.md +0 -249
  87. package/.bmad/bmm/workflows/1-analysis/research/checklist.md +0 -299
  88. package/.bmad/bmm/workflows/1-analysis/research/claude-code/injections.yaml +0 -114
  89. package/.bmad/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +0 -438
  90. package/.bmad/bmm/workflows/1-analysis/research/instructions-market.md +0 -675
  91. package/.bmad/bmm/workflows/1-analysis/research/instructions-router.md +0 -134
  92. package/.bmad/bmm/workflows/1-analysis/research/instructions-technical.md +0 -534
  93. package/.bmad/bmm/workflows/1-analysis/research/template-deep-prompt.md +0 -94
  94. package/.bmad/bmm/workflows/1-analysis/research/template-market.md +0 -347
  95. package/.bmad/bmm/workflows/1-analysis/research/template-technical.md +0 -245
  96. package/.bmad/bmm/workflows/1-analysis/research/workflow.yaml +0 -44
  97. package/.bmad/bmm/workflows/2-plan-workflows/create-epics-and-stories/epics-template.md +0 -80
  98. package/.bmad/bmm/workflows/2-plan-workflows/create-epics-and-stories/instructions.md +0 -616
  99. package/.bmad/bmm/workflows/2-plan-workflows/create-epics-and-stories/workflow.yaml +0 -53
  100. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +0 -310
  101. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +0 -1308
  102. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -145
  103. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +0 -61
  104. package/.bmad/bmm/workflows/2-plan-workflows/prd/checklist.md +0 -346
  105. package/.bmad/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +0 -13
  106. package/.bmad/bmm/workflows/2-plan-workflows/prd/instructions.md +0 -703
  107. package/.bmad/bmm/workflows/2-plan-workflows/prd/prd-template.md +0 -204
  108. package/.bmad/bmm/workflows/2-plan-workflows/prd/project-types.csv +0 -11
  109. package/.bmad/bmm/workflows/2-plan-workflows/prd/workflow.yaml +0 -52
  110. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +0 -217
  111. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +0 -74
  112. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions-generate-stories.md +0 -436
  113. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +0 -980
  114. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +0 -181
  115. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +0 -90
  116. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +0 -58
  117. package/.bmad/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -321
  118. package/.bmad/bmm/workflows/3-solutioning/architecture/architecture-template.md +0 -103
  119. package/.bmad/bmm/workflows/3-solutioning/architecture/checklist.md +0 -240
  120. package/.bmad/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +0 -222
  121. package/.bmad/bmm/workflows/3-solutioning/architecture/instructions.md +0 -768
  122. package/.bmad/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +0 -13
  123. package/.bmad/bmm/workflows/3-solutioning/architecture/workflow.yaml +0 -55
  124. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/checklist.md +0 -169
  125. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/instructions.md +0 -332
  126. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/template.md +0 -146
  127. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/workflow.yaml +0 -62
  128. package/.bmad/bmm/workflows/4-implementation/code-review/backlog_template.md +0 -12
  129. package/.bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -22
  130. package/.bmad/bmm/workflows/4-implementation/code-review/instructions.md +0 -398
  131. package/.bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -60
  132. package/.bmad/bmm/workflows/4-implementation/correct-course/checklist.md +0 -279
  133. package/.bmad/bmm/workflows/4-implementation/correct-course/instructions.md +0 -206
  134. package/.bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -56
  135. package/.bmad/bmm/workflows/4-implementation/create-story/checklist.md +0 -240
  136. package/.bmad/bmm/workflows/4-implementation/create-story/instructions.md +0 -256
  137. package/.bmad/bmm/workflows/4-implementation/create-story/template.md +0 -51
  138. package/.bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -71
  139. package/.bmad/bmm/workflows/4-implementation/dev-story/checklist.md +0 -38
  140. package/.bmad/bmm/workflows/4-implementation/dev-story/instructions.md +0 -267
  141. package/.bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -56
  142. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/checklist.md +0 -17
  143. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/instructions.md +0 -164
  144. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/template.md +0 -76
  145. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +0 -57
  146. package/.bmad/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1443
  147. package/.bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -56
  148. package/.bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -33
  149. package/.bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -234
  150. package/.bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
  151. package/.bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -49
  152. package/.bmad/bmm/workflows/4-implementation/story-context/checklist.md +0 -16
  153. package/.bmad/bmm/workflows/4-implementation/story-context/context-template.xml +0 -34
  154. package/.bmad/bmm/workflows/4-implementation/story-context/instructions.md +0 -209
  155. package/.bmad/bmm/workflows/4-implementation/story-context/workflow.yaml +0 -61
  156. package/.bmad/bmm/workflows/4-implementation/story-done/instructions.md +0 -111
  157. package/.bmad/bmm/workflows/4-implementation/story-done/workflow.yaml +0 -26
  158. package/.bmad/bmm/workflows/4-implementation/story-ready/instructions.md +0 -117
  159. package/.bmad/bmm/workflows/4-implementation/story-ready/workflow.yaml +0 -23
  160. package/.bmad/bmm/workflows/document-project/checklist.md +0 -245
  161. package/.bmad/bmm/workflows/document-project/documentation-requirements.csv +0 -12
  162. package/.bmad/bmm/workflows/document-project/instructions.md +0 -222
  163. package/.bmad/bmm/workflows/document-project/templates/deep-dive-template.md +0 -345
  164. package/.bmad/bmm/workflows/document-project/templates/index-template.md +0 -169
  165. package/.bmad/bmm/workflows/document-project/templates/project-overview-template.md +0 -103
  166. package/.bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
  167. package/.bmad/bmm/workflows/document-project/templates/source-tree-template.md +0 -135
  168. package/.bmad/bmm/workflows/document-project/workflow.yaml +0 -29
  169. package/.bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
  170. package/.bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  171. package/.bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
  172. package/.bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  173. package/.bmad/bmm/workflows/frame-expert/_shared/excalidraw-helpers.md +0 -127
  174. package/.bmad/bmm/workflows/frame-expert/_shared/excalidraw-library.json +0 -90
  175. package/.bmad/bmm/workflows/frame-expert/_shared/excalidraw-templates.yaml +0 -127
  176. package/.bmad/bmm/workflows/frame-expert/_shared/validate-json-instructions.md +0 -79
  177. package/.bmad/bmm/workflows/frame-expert/create-dataflow/checklist.md +0 -39
  178. package/.bmad/bmm/workflows/frame-expert/create-dataflow/instructions.md +0 -131
  179. package/.bmad/bmm/workflows/frame-expert/create-dataflow/workflow.yaml +0 -23
  180. package/.bmad/bmm/workflows/frame-expert/create-diagram/checklist.md +0 -43
  181. package/.bmad/bmm/workflows/frame-expert/create-diagram/instructions.md +0 -142
  182. package/.bmad/bmm/workflows/frame-expert/create-diagram/workflow.yaml +0 -24
  183. package/.bmad/bmm/workflows/frame-expert/create-flowchart/checklist.md +0 -49
  184. package/.bmad/bmm/workflows/frame-expert/create-flowchart/instructions.md +0 -242
  185. package/.bmad/bmm/workflows/frame-expert/create-flowchart/workflow.yaml +0 -27
  186. package/.bmad/bmm/workflows/frame-expert/create-wireframe/checklist.md +0 -38
  187. package/.bmad/bmm/workflows/frame-expert/create-wireframe/instructions.md +0 -133
  188. package/.bmad/bmm/workflows/frame-expert/create-wireframe/workflow.yaml +0 -23
  189. package/.bmad/bmm/workflows/techdoc/documentation-standards.md +0 -262
  190. package/.bmad/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -363
  191. package/.bmad/bmm/workflows/testarch/atdd/checklist.md +0 -373
  192. package/.bmad/bmm/workflows/testarch/atdd/instructions.md +0 -785
  193. package/.bmad/bmm/workflows/testarch/atdd/workflow.yaml +0 -45
  194. package/.bmad/bmm/workflows/testarch/automate/checklist.md +0 -580
  195. package/.bmad/bmm/workflows/testarch/automate/instructions.md +0 -1303
  196. package/.bmad/bmm/workflows/testarch/automate/workflow.yaml +0 -52
  197. package/.bmad/bmm/workflows/testarch/ci/checklist.md +0 -246
  198. package/.bmad/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -165
  199. package/.bmad/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -128
  200. package/.bmad/bmm/workflows/testarch/ci/instructions.md +0 -517
  201. package/.bmad/bmm/workflows/testarch/ci/workflow.yaml +0 -45
  202. package/.bmad/bmm/workflows/testarch/framework/checklist.md +0 -321
  203. package/.bmad/bmm/workflows/testarch/framework/instructions.md +0 -455
  204. package/.bmad/bmm/workflows/testarch/framework/workflow.yaml +0 -47
  205. package/.bmad/bmm/workflows/testarch/nfr-assess/checklist.md +0 -405
  206. package/.bmad/bmm/workflows/testarch/nfr-assess/instructions.md +0 -722
  207. package/.bmad/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -443
  208. package/.bmad/bmm/workflows/testarch/nfr-assess/workflow.yaml +0 -47
  209. package/.bmad/bmm/workflows/testarch/test-design/checklist.md +0 -234
  210. package/.bmad/bmm/workflows/testarch/test-design/instructions.md +0 -782
  211. package/.bmad/bmm/workflows/testarch/test-design/test-design-template.md +0 -285
  212. package/.bmad/bmm/workflows/testarch/test-design/workflow.yaml +0 -48
  213. package/.bmad/bmm/workflows/testarch/test-review/checklist.md +0 -470
  214. package/.bmad/bmm/workflows/testarch/test-review/instructions.md +0 -608
  215. package/.bmad/bmm/workflows/testarch/test-review/test-review-template.md +0 -388
  216. package/.bmad/bmm/workflows/testarch/test-review/workflow.yaml +0 -46
  217. package/.bmad/bmm/workflows/testarch/trace/checklist.md +0 -654
  218. package/.bmad/bmm/workflows/testarch/trace/instructions.md +0 -1045
  219. package/.bmad/bmm/workflows/testarch/trace/trace-template.md +0 -673
  220. package/.bmad/bmm/workflows/testarch/trace/workflow.yaml +0 -55
  221. package/.bmad/bmm/workflows/workflow-status/init/instructions.md +0 -334
  222. package/.bmad/bmm/workflows/workflow-status/init/workflow.yaml +0 -28
  223. package/.bmad/bmm/workflows/workflow-status/instructions.md +0 -388
  224. package/.bmad/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +0 -138
  225. package/.bmad/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +0 -126
  226. package/.bmad/bmm/workflows/workflow-status/paths/game-design.yaml +0 -52
  227. package/.bmad/bmm/workflows/workflow-status/paths/method-brownfield.yaml +0 -122
  228. package/.bmad/bmm/workflows/workflow-status/paths/method-greenfield.yaml +0 -113
  229. package/.bmad/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +0 -58
  230. package/.bmad/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +0 -47
  231. package/.bmad/bmm/workflows/workflow-status/project-levels.yaml +0 -59
  232. package/.bmad/bmm/workflows/workflow-status/workflow-status-template.yaml +0 -24
  233. package/.bmad/bmm/workflows/workflow-status/workflow.yaml +0 -28
  234. package/.bmad/core/agents/bmad-master.md +0 -72
  235. package/.bmad/core/agents/bmad-web-orchestrator.agent.xml +0 -113
  236. package/.bmad/core/config.yaml +0 -11
  237. package/.bmad/core/tasks/adv-elicit-methods.csv +0 -39
  238. package/.bmad/core/tasks/advanced-elicitation-methods.csv +0 -21
  239. package/.bmad/core/tasks/advanced-elicitation.xml +0 -106
  240. package/.bmad/core/tasks/index-docs.xml +0 -65
  241. package/.bmad/core/tasks/validate-workflow.xml +0 -89
  242. package/.bmad/core/tasks/workflow.xml +0 -270
  243. package/.bmad/core/tools/shard-doc.xml +0 -109
  244. package/.bmad/core/workflows/brainstorming/README.md +0 -261
  245. package/.bmad/core/workflows/brainstorming/brain-methods.csv +0 -36
  246. package/.bmad/core/workflows/brainstorming/instructions.md +0 -315
  247. package/.bmad/core/workflows/brainstorming/template.md +0 -106
  248. package/.bmad/core/workflows/brainstorming/workflow.yaml +0 -38
  249. package/.bmad/core/workflows/party-mode/instructions.md +0 -203
  250. package/.bmad/core/workflows/party-mode/workflow.yaml +0 -28
  251. package/.bmad/docs/claude-code-instructions.md +0 -25
  252. package/.claude/commands/BMad/analyst.md +0 -88
  253. package/.claude/commands/BMad/architect.md +0 -89
  254. package/.claude/commands/BMad/bmad-master.md +0 -114
  255. package/.claude/commands/BMad/bmad-orchestrator.md +0 -151
  256. package/.claude/commands/BMad/dev.md +0 -85
  257. package/.claude/commands/BMad/pm.md +0 -88
  258. package/.claude/commands/BMad/po.md +0 -83
  259. package/.claude/commands/BMad/qa.md +0 -91
  260. package/.claude/commands/BMad/sm.md +0 -69
  261. package/.claude/commands/BMad/tasks/advanced-elicitation.md +0 -123
  262. package/.claude/commands/BMad/tasks/apply-qa-fixes.md +0 -154
  263. package/.claude/commands/BMad/tasks/brownfield-create-epic.md +0 -166
  264. package/.claude/commands/BMad/tasks/brownfield-create-story.md +0 -153
  265. package/.claude/commands/BMad/tasks/correct-course.md +0 -76
  266. package/.claude/commands/BMad/tasks/create-brownfield-story.md +0 -318
  267. package/.claude/commands/BMad/tasks/create-deep-research-prompt.md +0 -284
  268. package/.claude/commands/BMad/tasks/create-doc.md +0 -107
  269. package/.claude/commands/BMad/tasks/create-next-story.md +0 -118
  270. package/.claude/commands/BMad/tasks/document-project.md +0 -349
  271. package/.claude/commands/BMad/tasks/execute-checklist.md +0 -92
  272. package/.claude/commands/BMad/tasks/facilitate-brainstorming-session.md +0 -142
  273. package/.claude/commands/BMad/tasks/generate-ai-frontend-prompt.md +0 -57
  274. package/.claude/commands/BMad/tasks/index-docs.md +0 -179
  275. package/.claude/commands/BMad/tasks/kb-mode-interaction.md +0 -81
  276. package/.claude/commands/BMad/tasks/nfr-assess.md +0 -349
  277. package/.claude/commands/BMad/tasks/qa-gate.md +0 -167
  278. package/.claude/commands/BMad/tasks/review-story.md +0 -320
  279. package/.claude/commands/BMad/tasks/risk-profile.md +0 -359
  280. package/.claude/commands/BMad/tasks/shard-doc.md +0 -191
  281. package/.claude/commands/BMad/tasks/test-design.md +0 -180
  282. package/.claude/commands/BMad/tasks/trace-requirements.md +0 -270
  283. package/.claude/commands/BMad/tasks/validate-next-story.md +0 -140
  284. package/.claude/commands/BMad/ux-expert.md +0 -73
  285. package/.claude/commands/bmad/bmm/agents/analyst.md +0 -14
  286. package/.claude/commands/bmad/bmm/agents/architect.md +0 -14
  287. package/.claude/commands/bmad/bmm/agents/dev.md +0 -14
  288. package/.claude/commands/bmad/bmm/agents/frame-expert.md +0 -14
  289. package/.claude/commands/bmad/bmm/agents/pm.md +0 -14
  290. package/.claude/commands/bmad/bmm/agents/sm.md +0 -14
  291. package/.claude/commands/bmad/bmm/agents/tea.md +0 -14
  292. package/.claude/commands/bmad/bmm/agents/tech-writer.md +0 -14
  293. package/.claude/commands/bmad/bmm/agents/ux-designer.md +0 -14
  294. package/.claude/commands/bmad/bmm/workflows/architecture.md +0 -13
  295. package/.claude/commands/bmad/bmm/workflows/brainstorm-project.md +0 -13
  296. package/.claude/commands/bmad/bmm/workflows/code-review.md +0 -13
  297. package/.claude/commands/bmad/bmm/workflows/correct-course.md +0 -13
  298. package/.claude/commands/bmad/bmm/workflows/create-dataflow.md +0 -13
  299. package/.claude/commands/bmad/bmm/workflows/create-diagram.md +0 -13
  300. package/.claude/commands/bmad/bmm/workflows/create-epics-and-stories.md +0 -13
  301. package/.claude/commands/bmad/bmm/workflows/create-flowchart.md +0 -13
  302. package/.claude/commands/bmad/bmm/workflows/create-story.md +0 -13
  303. package/.claude/commands/bmad/bmm/workflows/create-ux-design.md +0 -13
  304. package/.claude/commands/bmad/bmm/workflows/create-wireframe.md +0 -13
  305. package/.claude/commands/bmad/bmm/workflows/dev-story.md +0 -13
  306. package/.claude/commands/bmad/bmm/workflows/document-project.md +0 -13
  307. package/.claude/commands/bmad/bmm/workflows/domain-research.md +0 -13
  308. package/.claude/commands/bmad/bmm/workflows/epic-tech-context.md +0 -13
  309. package/.claude/commands/bmad/bmm/workflows/implementation-readiness.md +0 -13
  310. package/.claude/commands/bmad/bmm/workflows/prd.md +0 -13
  311. package/.claude/commands/bmad/bmm/workflows/product-brief.md +0 -13
  312. package/.claude/commands/bmad/bmm/workflows/research.md +0 -13
  313. package/.claude/commands/bmad/bmm/workflows/retrospective.md +0 -13
  314. package/.claude/commands/bmad/bmm/workflows/sprint-planning.md +0 -13
  315. package/.claude/commands/bmad/bmm/workflows/story-context.md +0 -13
  316. package/.claude/commands/bmad/bmm/workflows/story-done.md +0 -13
  317. package/.claude/commands/bmad/bmm/workflows/story-ready.md +0 -13
  318. package/.claude/commands/bmad/bmm/workflows/tech-spec.md +0 -13
  319. package/.claude/commands/bmad/bmm/workflows/workflow-init.md +0 -13
  320. package/.claude/commands/bmad/bmm/workflows/workflow-status.md +0 -13
  321. package/.claude/commands/bmad/core/agents/bmad-master.md +0 -14
  322. package/.claude/commands/bmad/core/tasks/advanced-elicitation.md +0 -9
  323. package/.claude/commands/bmad/core/tasks/index-docs.md +0 -9
  324. package/.claude/commands/bmad/core/tools/shard-doc.md +0 -9
  325. package/.claude/commands/bmad/core/workflows/brainstorming.md +0 -13
  326. package/.claude/commands/bmad/core/workflows/party-mode.md +0 -13
  327. package/.claude/github-star-reminder.txt +0 -1
  328. package/.claude/hooks/bmad-party-manager.sh +0 -225
  329. package/.claude/hooks/stop.sh +0 -221
  330. package/.claude/piper-voices-dir.txt +0 -1
  331. package/.mcp.json +0 -88
  332. package/RELEASE_NOTES_v2.4.0_DRAFT.md +0 -116
  333. package/RELEASE_NOTES_v2.4.1_DRAFT.md +0 -61
  334. package/docs/2025-11-15_15-14-33.snagx +0 -0
  335. package/docs/Screenshot 2025-11-15 151325.png +0 -0
  336. package/docs/Screenshot 2025-11-15 151432.png +0 -0
  337. package/docs/macos-piper-issue.md +0 -172
  338. package/docs/stargazer-cms-prd.md +0 -1918
  339. package/docs/whatsapp-plugin-github-issue.md +0 -393
  340. package/docs/whatsapp-tts-plugin-feasibility.md +0 -418
  341. package/docs/whatsapp-tts-standalone-plugin.md +0 -628
  342. package/github-profile-draft.md +0 -57
  343. package/linkedin/vibe-coding-and-pulseaudio.md +0 -121
  344. package/mcp-server/agentvibes.db +0 -0
  345. package/scripts/audio-tunnel.config +0 -17
  346. package/v4-backup/.bmad-core/agent-teams/team-all.yaml +0 -15
  347. package/v4-backup/.bmad-core/agent-teams/team-fullstack.yaml +0 -19
  348. package/v4-backup/.bmad-core/agent-teams/team-ide-minimal.yaml +0 -11
  349. package/v4-backup/.bmad-core/agent-teams/team-no-ui.yaml +0 -14
  350. package/v4-backup/.bmad-core/agents/analyst.md +0 -84
  351. package/v4-backup/.bmad-core/agents/architect.md +0 -85
  352. package/v4-backup/.bmad-core/agents/bmad-master.md +0 -110
  353. package/v4-backup/.bmad-core/agents/bmad-orchestrator.md +0 -147
  354. package/v4-backup/.bmad-core/agents/dev.md +0 -81
  355. package/v4-backup/.bmad-core/agents/pm.md +0 -84
  356. package/v4-backup/.bmad-core/agents/po.md +0 -79
  357. package/v4-backup/.bmad-core/agents/qa.md +0 -87
  358. package/v4-backup/.bmad-core/agents/sm.md +0 -65
  359. package/v4-backup/.bmad-core/agents/ux-expert.md +0 -69
  360. package/v4-backup/.bmad-core/checklists/architect-checklist.md +0 -440
  361. package/v4-backup/.bmad-core/checklists/change-checklist.md +0 -184
  362. package/v4-backup/.bmad-core/checklists/pm-checklist.md +0 -372
  363. package/v4-backup/.bmad-core/checklists/po-master-checklist.md +0 -434
  364. package/v4-backup/.bmad-core/checklists/story-dod-checklist.md +0 -96
  365. package/v4-backup/.bmad-core/checklists/story-draft-checklist.md +0 -155
  366. package/v4-backup/.bmad-core/core-config.yaml +0 -22
  367. package/v4-backup/.bmad-core/data/bmad-kb.md +0 -809
  368. package/v4-backup/.bmad-core/data/brainstorming-techniques.md +0 -38
  369. package/v4-backup/.bmad-core/data/elicitation-methods.md +0 -156
  370. package/v4-backup/.bmad-core/data/technical-preferences.md +0 -5
  371. package/v4-backup/.bmad-core/data/test-levels-framework.md +0 -148
  372. package/v4-backup/.bmad-core/data/test-priorities-matrix.md +0 -174
  373. package/v4-backup/.bmad-core/enhanced-ide-development-workflow.md +0 -248
  374. package/v4-backup/.bmad-core/install-manifest.yaml +0 -230
  375. package/v4-backup/.bmad-core/tasks/advanced-elicitation.md +0 -119
  376. package/v4-backup/.bmad-core/tasks/apply-qa-fixes.md +0 -150
  377. package/v4-backup/.bmad-core/tasks/brownfield-create-epic.md +0 -162
  378. package/v4-backup/.bmad-core/tasks/brownfield-create-story.md +0 -149
  379. package/v4-backup/.bmad-core/tasks/correct-course.md +0 -72
  380. package/v4-backup/.bmad-core/tasks/create-brownfield-story.md +0 -314
  381. package/v4-backup/.bmad-core/tasks/create-deep-research-prompt.md +0 -280
  382. package/v4-backup/.bmad-core/tasks/create-doc.md +0 -103
  383. package/v4-backup/.bmad-core/tasks/create-next-story.md +0 -114
  384. package/v4-backup/.bmad-core/tasks/document-project.md +0 -345
  385. package/v4-backup/.bmad-core/tasks/execute-checklist.md +0 -88
  386. package/v4-backup/.bmad-core/tasks/facilitate-brainstorming-session.md +0 -138
  387. package/v4-backup/.bmad-core/tasks/generate-ai-frontend-prompt.md +0 -53
  388. package/v4-backup/.bmad-core/tasks/index-docs.md +0 -175
  389. package/v4-backup/.bmad-core/tasks/kb-mode-interaction.md +0 -77
  390. package/v4-backup/.bmad-core/tasks/nfr-assess.md +0 -345
  391. package/v4-backup/.bmad-core/tasks/qa-gate.md +0 -163
  392. package/v4-backup/.bmad-core/tasks/review-story.md +0 -316
  393. package/v4-backup/.bmad-core/tasks/risk-profile.md +0 -355
  394. package/v4-backup/.bmad-core/tasks/shard-doc.md +0 -187
  395. package/v4-backup/.bmad-core/tasks/test-design.md +0 -176
  396. package/v4-backup/.bmad-core/tasks/trace-requirements.md +0 -266
  397. package/v4-backup/.bmad-core/tasks/validate-next-story.md +0 -136
  398. package/v4-backup/.bmad-core/templates/architecture-tmpl.yaml +0 -651
  399. package/v4-backup/.bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  400. package/v4-backup/.bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -477
  401. package/v4-backup/.bmad-core/templates/brownfield-prd-tmpl.yaml +0 -281
  402. package/v4-backup/.bmad-core/templates/competitor-analysis-tmpl.yaml +0 -307
  403. package/v4-backup/.bmad-core/templates/front-end-architecture-tmpl.yaml +0 -219
  404. package/v4-backup/.bmad-core/templates/front-end-spec-tmpl.yaml +0 -350
  405. package/v4-backup/.bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -824
  406. package/v4-backup/.bmad-core/templates/market-research-tmpl.yaml +0 -253
  407. package/v4-backup/.bmad-core/templates/prd-tmpl.yaml +0 -203
  408. package/v4-backup/.bmad-core/templates/project-brief-tmpl.yaml +0 -222
  409. package/v4-backup/.bmad-core/templates/qa-gate-tmpl.yaml +0 -103
  410. package/v4-backup/.bmad-core/templates/story-tmpl.yaml +0 -138
  411. package/v4-backup/.bmad-core/user-guide.md +0 -577
  412. package/v4-backup/.bmad-core/utils/bmad-doc-template.md +0 -327
  413. package/v4-backup/.bmad-core/utils/workflow-management.md +0 -71
  414. package/v4-backup/.bmad-core/workflows/brownfield-fullstack.yaml +0 -298
  415. package/v4-backup/.bmad-core/workflows/brownfield-service.yaml +0 -188
  416. package/v4-backup/.bmad-core/workflows/brownfield-ui.yaml +0 -198
  417. package/v4-backup/.bmad-core/workflows/greenfield-fullstack.yaml +0 -241
  418. package/v4-backup/.bmad-core/workflows/greenfield-service.yaml +0 -207
  419. package/v4-backup/.bmad-core/workflows/greenfield-ui.yaml +0 -236
  420. package/v4-backup/.bmad-core/working-in-the-brownfield.md +0 -606
@@ -1,785 +0,0 @@
1
- <!-- Powered by BMAD-CORE™ -->
2
-
3
- # Acceptance Test-Driven Development (ATDD)
4
-
5
- **Workflow ID**: `.bmad/bmm/testarch/atdd`
6
- **Version**: 4.0 (BMad v6)
7
-
8
- ---
9
-
10
- ## Overview
11
-
12
- Generates failing acceptance tests BEFORE implementation following TDD's red-green-refactor cycle. This workflow creates comprehensive test coverage at appropriate levels (E2E, API, Component) with supporting infrastructure (fixtures, factories, mocks) and provides an implementation checklist to guide development.
13
-
14
- **Core Principle**: Tests fail first (red phase), then guide development to green, then enable confident refactoring.
15
-
16
- ---
17
-
18
- ## Preflight Requirements
19
-
20
- **Critical:** Verify these requirements before proceeding. If any fail, HALT and notify the user.
21
-
22
- - ✅ Story approved with clear acceptance criteria
23
- - ✅ Development sandbox/environment ready
24
- - ✅ Framework scaffolding exists (run `framework` workflow if missing)
25
- - ✅ Test framework configuration available (playwright.config.ts or cypress.config.ts)
26
-
27
- ---
28
-
29
- ## Step 1: Load Story Context and Requirements
30
-
31
- ### Actions
32
-
33
- 1. **Read Story Markdown**
34
- - Load story file from `{story_file}` variable
35
- - Extract acceptance criteria (all testable requirements)
36
- - Identify affected systems and components
37
- - Note any technical constraints or dependencies
38
-
39
- 2. **Load Framework Configuration**
40
- - Read framework config (playwright.config.ts or cypress.config.ts)
41
- - Identify test directory structure
42
- - Check existing fixture patterns
43
- - Note test runner capabilities
44
-
45
- 3. **Load Existing Test Patterns**
46
- - Search `{test_dir}` for similar tests
47
- - Identify reusable fixtures and helpers
48
- - Check data factory patterns
49
- - Note naming conventions
50
-
51
- 4. **Load Knowledge Base Fragments**
52
-
53
- **Critical:** Consult `{project-root}/.bmad/bmm/testarch/tea-index.csv` to load:
54
- - `fixture-architecture.md` - Test fixture patterns with auto-cleanup (pure function → fixture → mergeTests composition, 406 lines, 5 examples)
55
- - `data-factories.md` - Factory patterns using faker (override patterns, nested factories, API seeding, 498 lines, 5 examples)
56
- - `component-tdd.md` - Component test strategies (red-green-refactor, provider isolation, accessibility, visual regression, 480 lines, 4 examples)
57
- - `network-first.md` - Route interception patterns (intercept before navigate, HAR capture, deterministic waiting, 489 lines, 5 examples)
58
- - `test-quality.md` - Test design principles (deterministic tests, isolated with cleanup, explicit assertions, length limits, execution time optimization, 658 lines, 5 examples)
59
- - `test-healing-patterns.md` - Common failure patterns and healing strategies (stale selectors, race conditions, dynamic data, network errors, hard waits, 648 lines, 5 examples)
60
- - `selector-resilience.md` - Selector best practices (data-testid > ARIA > text > CSS hierarchy, dynamic patterns, anti-patterns, 541 lines, 4 examples)
61
- - `timing-debugging.md` - Race condition prevention and async debugging (network-first, deterministic waiting, anti-patterns, 370 lines, 3 examples)
62
-
63
- **Halt Condition:** If story has no acceptance criteria or framework is missing, HALT with message: "ATDD requires clear acceptance criteria and test framework setup"
64
-
65
- ---
66
-
67
- ## Step 1.5: Generation Mode Selection (NEW - Phase 2.5)
68
-
69
- ### Actions
70
-
71
- 1. **Detect Generation Mode**
72
-
73
- Determine mode based on scenario complexity:
74
-
75
- **AI Generation Mode (DEFAULT)**:
76
- - Clear acceptance criteria with standard patterns
77
- - Uses: AI-generated tests from requirements
78
- - Appropriate for: CRUD, auth, navigation, API tests
79
- - Fastest approach
80
-
81
- **Recording Mode (OPTIONAL - Complex UI)**:
82
- - Complex UI interactions (drag-drop, wizards, multi-page flows)
83
- - Uses: Interactive test recording with Playwright MCP
84
- - Appropriate for: Visual workflows, unclear requirements
85
- - Only if config.tea_use_mcp_enhancements is true AND MCP available
86
-
87
- 2. **AI Generation Mode (DEFAULT - Continue to Step 2)**
88
-
89
- For standard scenarios:
90
- - Continue with existing workflow (Step 2: Select Test Levels and Strategy)
91
- - AI generates tests based on acceptance criteria from Step 1
92
- - Use knowledge base patterns for test structure
93
-
94
- 3. **Recording Mode (OPTIONAL - Complex UI Only)**
95
-
96
- For complex UI scenarios AND config.tea_use_mcp_enhancements is true:
97
-
98
- **A. Check MCP Availability**
99
-
100
- If Playwright MCP tools are available in your IDE:
101
- - Use MCP recording mode (Step 3.B)
102
-
103
- If MCP unavailable:
104
- - Fallback to AI generation mode (silent, automatic)
105
- - Continue to Step 2
106
-
107
- **B. Interactive Test Recording (MCP-Based)**
108
-
109
- Use Playwright MCP test-generator tools:
110
-
111
- **Setup:**
112
-
113
- ```
114
- 1. Use generator_setup_page to initialize recording session
115
- 2. Navigate to application starting URL (from story context)
116
- 3. Ready to record user interactions
117
- ```
118
-
119
- **Recording Process (Per Acceptance Criterion):**
120
-
121
- ```
122
- 4. Read acceptance criterion from story
123
- 5. Manually execute test scenario using browser_* tools:
124
- - browser_navigate: Navigate to pages
125
- - browser_click: Click buttons, links, elements
126
- - browser_type: Fill form fields
127
- - browser_select: Select dropdown options
128
- - browser_check: Check/uncheck checkboxes
129
- 6. Add verification steps using browser_verify_* tools:
130
- - browser_verify_text: Verify text content
131
- - browser_verify_visible: Verify element visibility
132
- - browser_verify_url: Verify URL navigation
133
- 7. Capture interaction log with generator_read_log
134
- 8. Generate test file with generator_write_test
135
- 9. Repeat for next acceptance criterion
136
- ```
137
-
138
- **Post-Recording Enhancement:**
139
-
140
- ```
141
- 10. Review generated test code
142
- 11. Enhance with knowledge base patterns:
143
- - Add Given-When-Then comments
144
- - Replace recorded selectors with data-testid (if needed)
145
- - Add network-first interception (from network-first.md)
146
- - Add fixtures for auth/data setup (from fixture-architecture.md)
147
- - Use factories for test data (from data-factories.md)
148
- 12. Verify tests fail (missing implementation)
149
- 13. Continue to Step 4 (Build Data Infrastructure)
150
- ```
151
-
152
- **When to Use Recording Mode:**
153
- - ✅ Complex UI interactions (drag-drop, multi-step forms, wizards)
154
- - ✅ Visual workflows (modals, dialogs, animations)
155
- - ✅ Unclear requirements (exploratory, discovering expected behavior)
156
- - ✅ Multi-page flows (checkout, registration, onboarding)
157
- - ❌ NOT for simple CRUD (AI generation faster)
158
- - ❌ NOT for API-only tests (no UI to record)
159
-
160
- **When to Use AI Generation (Default):**
161
- - ✅ Clear acceptance criteria available
162
- - ✅ Standard patterns (login, CRUD, navigation)
163
- - ✅ Need many tests quickly
164
- - ✅ API/backend tests (no UI interaction)
165
-
166
- 4. **Proceed to Test Level Selection**
167
-
168
- After mode selection:
169
- - AI Generation: Continue to Step 2 (Select Test Levels and Strategy)
170
- - Recording: Skip to Step 4 (Build Data Infrastructure) - tests already generated
171
-
172
- ---
173
-
174
- ## Step 2: Select Test Levels and Strategy
175
-
176
- ### Actions
177
-
178
- 1. **Analyze Acceptance Criteria**
179
-
180
- For each acceptance criterion, determine:
181
- - Does it require full user journey? → E2E test
182
- - Does it test business logic/API contract? → API test
183
- - Does it validate UI component behavior? → Component test
184
- - Can it be unit tested? → Unit test
185
-
186
- 2. **Apply Test Level Selection Framework**
187
-
188
- **Knowledge Base Reference**: `test-levels-framework.md`
189
-
190
- **E2E (End-to-End)**:
191
- - Critical user journeys (login, checkout, core workflow)
192
- - Multi-system integration
193
- - User-facing acceptance criteria
194
- - **Characteristics**: High confidence, slow execution, brittle
195
-
196
- **API (Integration)**:
197
- - Business logic validation
198
- - Service contracts
199
- - Data transformations
200
- - **Characteristics**: Fast feedback, good balance, stable
201
-
202
- **Component**:
203
- - UI component behavior (buttons, forms, modals)
204
- - Interaction testing
205
- - Visual regression
206
- - **Characteristics**: Fast, isolated, granular
207
-
208
- **Unit**:
209
- - Pure business logic
210
- - Edge cases
211
- - Error handling
212
- - **Characteristics**: Fastest, most granular
213
-
214
- 3. **Avoid Duplicate Coverage**
215
-
216
- Don't test same behavior at multiple levels unless necessary:
217
- - Use E2E for critical happy path only
218
- - Use API tests for complex business logic variations
219
- - Use component tests for UI interaction edge cases
220
- - Use unit tests for pure logic edge cases
221
-
222
- 4. **Prioritize Tests**
223
-
224
- If test-design document exists, align with priority levels:
225
- - P0 scenarios → Must cover in failing tests
226
- - P1 scenarios → Should cover if time permits
227
- - P2/P3 scenarios → Optional for this iteration
228
-
229
- **Decision Point:** Set `primary_level` variable to main test level for this story (typically E2E or API)
230
-
231
- ---
232
-
233
- ## Step 3: Generate Failing Tests
234
-
235
- ### Actions
236
-
237
- 1. **Create Test File Structure**
238
-
239
- ```
240
- tests/
241
- ├── e2e/
242
- │ └── {feature-name}.spec.ts # E2E acceptance tests
243
- ├── api/
244
- │ └── {feature-name}.api.spec.ts # API contract tests
245
- ├── component/
246
- │ └── {ComponentName}.test.tsx # Component tests
247
- └── support/
248
- ├── fixtures/ # Test fixtures
249
- ├── factories/ # Data factories
250
- └── helpers/ # Utility functions
251
- ```
252
-
253
- 2. **Write Failing E2E Tests (If Applicable)**
254
-
255
- **Use Given-When-Then format:**
256
-
257
- ```typescript
258
- import { test, expect } from '@playwright/test';
259
-
260
- test.describe('User Login', () => {
261
- test('should display error for invalid credentials', async ({ page }) => {
262
- // GIVEN: User is on login page
263
- await page.goto('/login');
264
-
265
- // WHEN: User submits invalid credentials
266
- await page.fill('[data-testid="email-input"]', 'invalid@example.com');
267
- await page.fill('[data-testid="password-input"]', 'wrongpassword');
268
- await page.click('[data-testid="login-button"]');
269
-
270
- // THEN: Error message is displayed
271
- await expect(page.locator('[data-testid="error-message"]')).toHaveText('Invalid email or password');
272
- });
273
- });
274
- ```
275
-
276
- **Critical patterns:**
277
- - One assertion per test (atomic tests)
278
- - Explicit waits (no hard waits/sleeps)
279
- - Network-first approach (route interception before navigation)
280
- - data-testid selectors for stability
281
- - Clear Given-When-Then structure
282
-
283
- 3. **Apply Network-First Pattern**
284
-
285
- **Knowledge Base Reference**: `network-first.md`
286
-
287
- ```typescript
288
- test('should load user dashboard after login', async ({ page }) => {
289
- // CRITICAL: Intercept routes BEFORE navigation
290
- await page.route('**/api/user', (route) =>
291
- route.fulfill({
292
- status: 200,
293
- body: JSON.stringify({ id: 1, name: 'Test User' }),
294
- }),
295
- );
296
-
297
- // NOW navigate
298
- await page.goto('/dashboard');
299
-
300
- await expect(page.locator('[data-testid="user-name"]')).toHaveText('Test User');
301
- });
302
- ```
303
-
304
- 4. **Write Failing API Tests (If Applicable)**
305
-
306
- ```typescript
307
- import { test, expect } from '@playwright/test';
308
-
309
- test.describe('User API', () => {
310
- test('POST /api/users - should create new user', async ({ request }) => {
311
- // GIVEN: Valid user data
312
- const userData = {
313
- email: 'newuser@example.com',
314
- name: 'New User',
315
- };
316
-
317
- // WHEN: Creating user via API
318
- const response = await request.post('/api/users', {
319
- data: userData,
320
- });
321
-
322
- // THEN: User is created successfully
323
- expect(response.status()).toBe(201);
324
- const body = await response.json();
325
- expect(body).toMatchObject({
326
- email: userData.email,
327
- name: userData.name,
328
- id: expect.any(Number),
329
- });
330
- });
331
- });
332
- ```
333
-
334
- 5. **Write Failing Component Tests (If Applicable)**
335
-
336
- **Knowledge Base Reference**: `component-tdd.md`
337
-
338
- ```typescript
339
- import { test, expect } from '@playwright/experimental-ct-react';
340
- import { LoginForm } from './LoginForm';
341
-
342
- test.describe('LoginForm Component', () => {
343
- test('should disable submit button when fields are empty', async ({ mount }) => {
344
- // GIVEN: LoginForm is mounted
345
- const component = await mount(<LoginForm />);
346
-
347
- // WHEN: Form is initially rendered
348
- const submitButton = component.locator('button[type="submit"]');
349
-
350
- // THEN: Submit button is disabled
351
- await expect(submitButton).toBeDisabled();
352
- });
353
- });
354
- ```
355
-
356
- 6. **Verify Tests Fail Initially**
357
-
358
- **Critical verification:**
359
- - Run tests locally to confirm they fail
360
- - Failure should be due to missing implementation, not test errors
361
- - Failure messages should be clear and actionable
362
- - All tests must be in RED phase before sharing with DEV
363
-
364
- **Important:** Tests MUST fail initially. If a test passes before implementation, it's not a valid acceptance test.
365
-
366
- ---
367
-
368
- ## Step 4: Build Data Infrastructure
369
-
370
- ### Actions
371
-
372
- 1. **Create Data Factories**
373
-
374
- **Knowledge Base Reference**: `data-factories.md`
375
-
376
- ```typescript
377
- // tests/support/factories/user.factory.ts
378
- import { faker } from '@faker-js/faker';
379
-
380
- export const createUser = (overrides = {}) => ({
381
- id: faker.number.int(),
382
- email: faker.internet.email(),
383
- name: faker.person.fullName(),
384
- createdAt: faker.date.recent().toISOString(),
385
- ...overrides,
386
- });
387
-
388
- export const createUsers = (count: number) => Array.from({ length: count }, () => createUser());
389
- ```
390
-
391
- **Factory principles:**
392
- - Use faker for random data (no hardcoded values)
393
- - Support overrides for specific scenarios
394
- - Generate complete valid objects
395
- - Include helper functions for bulk creation
396
-
397
- 2. **Create Test Fixtures**
398
-
399
- **Knowledge Base Reference**: `fixture-architecture.md`
400
-
401
- ```typescript
402
- // tests/support/fixtures/auth.fixture.ts
403
- import { test as base } from '@playwright/test';
404
-
405
- export const test = base.extend({
406
- authenticatedUser: async ({ page }, use) => {
407
- // Setup: Create and authenticate user
408
- const user = await createUser();
409
- await page.goto('/login');
410
- await page.fill('[data-testid="email"]', user.email);
411
- await page.fill('[data-testid="password"]', 'password123');
412
- await page.click('[data-testid="login-button"]');
413
- await page.waitForURL('/dashboard');
414
-
415
- // Provide to test
416
- await use(user);
417
-
418
- // Cleanup: Delete user
419
- await deleteUser(user.id);
420
- },
421
- });
422
- ```
423
-
424
- **Fixture principles:**
425
- - Auto-cleanup (always delete created data)
426
- - Composable (fixtures can use other fixtures)
427
- - Isolated (each test gets fresh data)
428
- - Type-safe
429
-
430
- 3. **Document Mock Requirements**
431
-
432
- If external services need mocking, document requirements:
433
-
434
- ```markdown
435
- ### Mock Requirements for DEV Team
436
-
437
- **Payment Gateway Mock**:
438
-
439
- - Endpoint: `POST /api/payments`
440
- - Success response: `{ status: 'success', transactionId: '123' }`
441
- - Failure response: `{ status: 'failed', error: 'Insufficient funds' }`
442
-
443
- **Email Service Mock**:
444
-
445
- - Should not send real emails in test environment
446
- - Log email contents for verification
447
- ```
448
-
449
- 4. **List Required data-testid Attributes**
450
-
451
- ```markdown
452
- ### Required data-testid Attributes
453
-
454
- **Login Page**:
455
-
456
- - `email-input` - Email input field
457
- - `password-input` - Password input field
458
- - `login-button` - Submit button
459
- - `error-message` - Error message container
460
-
461
- **Dashboard Page**:
462
-
463
- - `user-name` - User name display
464
- - `logout-button` - Logout button
465
- ```
466
-
467
- ---
468
-
469
- ## Step 5: Create Implementation Checklist
470
-
471
- ### Actions
472
-
473
- 1. **Map Tests to Implementation Tasks**
474
-
475
- For each failing test, create corresponding implementation task:
476
-
477
- ```markdown
478
- ## Implementation Checklist
479
-
480
- ### Epic X - User Authentication
481
-
482
- #### Test: User Login with Valid Credentials
483
-
484
- - [ ] Create `/login` route
485
- - [ ] Implement login form component
486
- - [ ] Add email/password validation
487
- - [ ] Integrate authentication API
488
- - [ ] Add `data-testid` attributes: `email-input`, `password-input`, `login-button`
489
- - [ ] Implement error handling
490
- - [ ] Run test: `npm run test:e2e -- login.spec.ts`
491
- - [ ] ✅ Test passes (green phase)
492
-
493
- #### Test: Display Error for Invalid Credentials
494
-
495
- - [ ] Add error state management
496
- - [ ] Display error message UI
497
- - [ ] Add `data-testid="error-message"`
498
- - [ ] Run test: `npm run test:e2e -- login.spec.ts`
499
- - [ ] ✅ Test passes (green phase)
500
- ```
501
-
502
- 2. **Include Red-Green-Refactor Guidance**
503
-
504
- ```markdown
505
- ## Red-Green-Refactor Workflow
506
-
507
- **RED Phase** (Complete):
508
-
509
- - ✅ All tests written and failing
510
- - ✅ Fixtures and factories created
511
- - ✅ Mock requirements documented
512
-
513
- **GREEN Phase** (DEV Team):
514
-
515
- 1. Pick one failing test
516
- 2. Implement minimal code to make it pass
517
- 3. Run test to verify green
518
- 4. Move to next test
519
- 5. Repeat until all tests pass
520
-
521
- **REFACTOR Phase** (DEV Team):
522
-
523
- 1. All tests passing (green)
524
- 2. Improve code quality
525
- 3. Extract duplications
526
- 4. Optimize performance
527
- 5. Ensure tests still pass
528
- ```
529
-
530
- 3. **Add Execution Commands**
531
-
532
- ````markdown
533
- ## Running Tests
534
-
535
- ```bash
536
- # Run all failing tests
537
- npm run test:e2e
538
-
539
- # Run specific test file
540
- npm run test:e2e -- login.spec.ts
541
-
542
- # Run tests in headed mode (see browser)
543
- npm run test:e2e -- --headed
544
-
545
- # Debug specific test
546
- npm run test:e2e -- login.spec.ts --debug
547
- ```
548
- ````
549
-
550
- ```
551
-
552
- ```
553
-
554
- ---
555
-
556
- ## Step 6: Generate Deliverables
557
-
558
- ### Actions
559
-
560
- 1. **Create ATDD Checklist Document**
561
-
562
- Use template structure at `{installed_path}/atdd-checklist-template.md`:
563
- - Story summary
564
- - Acceptance criteria breakdown
565
- - Test files created (with paths)
566
- - Data factories created
567
- - Fixtures created
568
- - Mock requirements
569
- - Required data-testid attributes
570
- - Implementation checklist
571
- - Red-green-refactor workflow
572
- - Execution commands
573
-
574
- 2. **Verify All Tests Fail**
575
-
576
- Before finalizing:
577
- - Run full test suite locally
578
- - Confirm all tests in RED phase
579
- - Document expected failure messages
580
- - Ensure failures are due to missing implementation, not test bugs
581
-
582
- 3. **Write to Output File**
583
-
584
- Save to `{output_folder}/atdd-checklist-{story_id}.md`
585
-
586
- ---
587
-
588
- ## Important Notes
589
-
590
- ### Red-Green-Refactor Cycle
591
-
592
- **RED Phase** (TEA responsibility):
593
-
594
- - Write failing tests first
595
- - Tests define expected behavior
596
- - Tests must fail for right reason (missing implementation)
597
-
598
- **GREEN Phase** (DEV responsibility):
599
-
600
- - Implement minimal code to pass tests
601
- - One test at a time
602
- - Don't over-engineer
603
-
604
- **REFACTOR Phase** (DEV responsibility):
605
-
606
- - Improve code quality with confidence
607
- - Tests provide safety net
608
- - Extract duplications, optimize
609
-
610
- ### Given-When-Then Structure
611
-
612
- **GIVEN** (Setup):
613
-
614
- - Arrange test preconditions
615
- - Create necessary data
616
- - Navigate to starting point
617
-
618
- **WHEN** (Action):
619
-
620
- - Execute the behavior being tested
621
- - Single action per test
622
-
623
- **THEN** (Assertion):
624
-
625
- - Verify expected outcome
626
- - One assertion per test (atomic)
627
-
628
- ### Network-First Testing
629
-
630
- **Critical pattern:**
631
-
632
- ```typescript
633
- // ✅ CORRECT: Intercept BEFORE navigation
634
- await page.route('**/api/data', handler);
635
- await page.goto('/page');
636
-
637
- // ❌ WRONG: Navigate then intercept (race condition)
638
- await page.goto('/page');
639
- await page.route('**/api/data', handler); // Too late!
640
- ```
641
-
642
- ### Data Factory Best Practices
643
-
644
- **Use faker for all test data:**
645
-
646
- ```typescript
647
- // ✅ CORRECT: Random data
648
- email: faker.internet.email();
649
-
650
- // ❌ WRONG: Hardcoded data (collisions, maintenance burden)
651
- email: 'test@example.com';
652
- ```
653
-
654
- **Auto-cleanup principle:**
655
-
656
- - Every factory that creates data must provide cleanup
657
- - Fixtures automatically cleanup in teardown
658
- - No manual cleanup in test code
659
-
660
- ### One Assertion Per Test
661
-
662
- **Atomic test design:**
663
-
664
- ```typescript
665
- // ✅ CORRECT: One assertion
666
- test('should display user name', async ({ page }) => {
667
- await expect(page.locator('[data-testid="user-name"]')).toHaveText('John');
668
- });
669
-
670
- // ❌ WRONG: Multiple assertions (not atomic)
671
- test('should display user info', async ({ page }) => {
672
- await expect(page.locator('[data-testid="user-name"]')).toHaveText('John');
673
- await expect(page.locator('[data-testid="user-email"]')).toHaveText('john@example.com');
674
- });
675
- ```
676
-
677
- **Why?** If second assertion fails, you don't know if first is still valid.
678
-
679
- ### Component Test Strategy
680
-
681
- **When to use component tests:**
682
-
683
- - Complex UI interactions (drag-drop, keyboard nav)
684
- - Form validation logic
685
- - State management within component
686
- - Visual edge cases
687
-
688
- **When NOT to use:**
689
-
690
- - Simple rendering (snapshot tests are sufficient)
691
- - Integration with backend (use E2E or API tests)
692
- - Full user journeys (use E2E tests)
693
-
694
- ### Knowledge Base Integration
695
-
696
- **Core Fragments (Auto-loaded in Step 1):**
697
-
698
- - `fixture-architecture.md` - Pure function → fixture → mergeTests patterns (406 lines, 5 examples)
699
- - `data-factories.md` - Factory patterns with faker, overrides, API seeding (498 lines, 5 examples)
700
- - `component-tdd.md` - Red-green-refactor, provider isolation, accessibility, visual regression (480 lines, 4 examples)
701
- - `network-first.md` - Intercept before navigate, HAR capture, deterministic waiting (489 lines, 5 examples)
702
- - `test-quality.md` - Deterministic tests, cleanup, explicit assertions, length/time limits (658 lines, 5 examples)
703
- - `test-healing-patterns.md` - Common failure patterns: stale selectors, race conditions, dynamic data, network errors, hard waits (648 lines, 5 examples)
704
- - `selector-resilience.md` - Selector hierarchy (data-testid > ARIA > text > CSS), dynamic patterns, anti-patterns (541 lines, 4 examples)
705
- - `timing-debugging.md` - Race condition prevention, deterministic waiting, async debugging (370 lines, 3 examples)
706
-
707
- **Reference for Test Level Selection:**
708
-
709
- - `test-levels-framework.md` - E2E vs API vs Component vs Unit decision framework (467 lines, 4 examples)
710
-
711
- **Manual Reference (Optional):**
712
-
713
- - Use `tea-index.csv` to find additional specialized fragments as needed
714
-
715
- ---
716
-
717
- ## Output Summary
718
-
719
- After completing this workflow, provide a summary:
720
-
721
- ```markdown
722
- ## ATDD Complete - Tests in RED Phase
723
-
724
- **Story**: {story_id}
725
- **Primary Test Level**: {primary_level}
726
-
727
- **Failing Tests Created**:
728
-
729
- - E2E tests: {e2e_count} tests in {e2e_files}
730
- - API tests: {api_count} tests in {api_files}
731
- - Component tests: {component_count} tests in {component_files}
732
-
733
- **Supporting Infrastructure**:
734
-
735
- - Data factories: {factory_count} factories created
736
- - Fixtures: {fixture_count} fixtures with auto-cleanup
737
- - Mock requirements: {mock_count} services documented
738
-
739
- **Implementation Checklist**:
740
-
741
- - Total tasks: {task_count}
742
- - Estimated effort: {effort_estimate} hours
743
-
744
- **Required data-testid Attributes**: {data_testid_count} attributes documented
745
-
746
- **Next Steps for DEV Team**:
747
-
748
- 1. Run failing tests: `npm run test:e2e`
749
- 2. Review implementation checklist
750
- 3. Implement one test at a time (RED → GREEN)
751
- 4. Refactor with confidence (tests provide safety net)
752
- 5. Share progress in daily standup
753
-
754
- **Output File**: {output_file}
755
-
756
- **Knowledge Base References Applied**:
757
-
758
- - Fixture architecture patterns
759
- - Data factory patterns with faker
760
- - Network-first route interception
761
- - Component TDD strategies
762
- - Test quality principles
763
- ```
764
-
765
- ---
766
-
767
- ## Validation
768
-
769
- After completing all steps, verify:
770
-
771
- - [ ] Story acceptance criteria analyzed and mapped to tests
772
- - [ ] Appropriate test levels selected (E2E, API, Component)
773
- - [ ] All tests written in Given-When-Then format
774
- - [ ] All tests fail initially (RED phase verified)
775
- - [ ] Network-first pattern applied (route interception before navigation)
776
- - [ ] Data factories created with faker
777
- - [ ] Fixtures created with auto-cleanup
778
- - [ ] Mock requirements documented for DEV team
779
- - [ ] Required data-testid attributes listed
780
- - [ ] Implementation checklist created with clear tasks
781
- - [ ] Red-green-refactor workflow documented
782
- - [ ] Execution commands provided
783
- - [ ] Output file created and formatted correctly
784
-
785
- Refer to `checklist.md` for comprehensive validation criteria.