agentvibes 2.10.0 → 2.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (437) hide show
  1. package/.claude/commands/agent-vibes/agent-vibes.md +1 -1
  2. package/.claude/commands/agent-vibes/bmad.md +3 -3
  3. package/.claude/commands/agent-vibes/set-pretext.md +2 -2
  4. package/.claude/commands/agent-vibes-bmad-voices.md +5 -5
  5. package/.claude/hooks/bmad-speak.sh +1 -1
  6. package/.claude/hooks/migrate-to-agentvibes.sh +161 -0
  7. package/.claude/hooks/play-tts-elevenlabs.sh +1 -1
  8. package/.claude/output-styles/agent-vibes.md +3 -3
  9. package/README.md +9 -6
  10. package/RELEASE_NOTES.md +341 -0
  11. package/docs/architecture/provider-system.md +3 -3
  12. package/docs/bmad-v6-support.md +1 -1
  13. package/docs/technical-deep-dive.md +1 -1
  14. package/docs/voice-mapping-format.md +1 -1
  15. package/package.json +1 -1
  16. package/src/installer.js +88 -16
  17. package/test-migration.sh +539 -0
  18. package/.agentvibes/bmad/bmad-voices-enabled.flag +0 -0
  19. package/.agentvibes/bmad/bmad-voices.md +0 -68
  20. package/.bmad/_cfg/agent-manifest.csv +0 -11
  21. package/.bmad/_cfg/agent-voice-map.csv +0 -11
  22. package/.bmad/_cfg/agents/bmm-analyst.customize.yaml +0 -42
  23. package/.bmad/_cfg/agents/bmm-architect.customize.yaml +0 -42
  24. package/.bmad/_cfg/agents/bmm-dev.customize.yaml +0 -42
  25. package/.bmad/_cfg/agents/bmm-frame-expert.customize.yaml +0 -42
  26. package/.bmad/_cfg/agents/bmm-pm.customize.yaml +0 -42
  27. package/.bmad/_cfg/agents/bmm-sm.customize.yaml +0 -42
  28. package/.bmad/_cfg/agents/bmm-tea.customize.yaml +0 -42
  29. package/.bmad/_cfg/agents/bmm-tech-writer.customize.yaml +0 -42
  30. package/.bmad/_cfg/agents/bmm-ux-designer.customize.yaml +0 -42
  31. package/.bmad/_cfg/agents/core-bmad-master.customize.yaml +0 -42
  32. package/.bmad/_cfg/files-manifest.csv +0 -243
  33. package/.bmad/_cfg/ides/claude-code.yaml +0 -6
  34. package/.bmad/_cfg/manifest.yaml +0 -9
  35. package/.bmad/_cfg/task-manifest.csv +0 -5
  36. package/.bmad/_cfg/tool-manifest.csv +0 -2
  37. package/.bmad/_cfg/workflow-manifest.csv +0 -38
  38. package/.bmad/bmm/README.md +0 -128
  39. package/.bmad/bmm/agents/analyst.md +0 -79
  40. package/.bmad/bmm/agents/analyst.md.backup-pre-tts +0 -75
  41. package/.bmad/bmm/agents/architect.md +0 -80
  42. package/.bmad/bmm/agents/dev.md +0 -70
  43. package/.bmad/bmm/agents/frame-expert.md +0 -72
  44. package/.bmad/bmm/agents/pm.md +0 -84
  45. package/.bmad/bmm/agents/sm.md +0 -93
  46. package/.bmad/bmm/agents/tea.md +0 -80
  47. package/.bmad/bmm/agents/tech-writer.md +0 -84
  48. package/.bmad/bmm/agents/ux-designer.md +0 -79
  49. package/.bmad/bmm/config.yaml +0 -17
  50. package/.bmad/bmm/docs/README.md +0 -236
  51. package/.bmad/bmm/docs/agents-guide.md +0 -1058
  52. package/.bmad/bmm/docs/brownfield-guide.md +0 -762
  53. package/.bmad/bmm/docs/enterprise-agentic-development.md +0 -686
  54. package/.bmad/bmm/docs/faq.md +0 -588
  55. package/.bmad/bmm/docs/glossary.md +0 -320
  56. package/.bmad/bmm/docs/party-mode.md +0 -224
  57. package/.bmad/bmm/docs/quick-spec-flow.md +0 -652
  58. package/.bmad/bmm/docs/quick-start.md +0 -376
  59. package/.bmad/bmm/docs/scale-adaptive-system.md +0 -612
  60. package/.bmad/bmm/docs/test-architecture.md +0 -396
  61. package/.bmad/bmm/docs/workflow-architecture-reference.md +0 -366
  62. package/.bmad/bmm/docs/workflow-document-project-reference.md +0 -489
  63. package/.bmad/bmm/docs/workflows-analysis.md +0 -370
  64. package/.bmad/bmm/docs/workflows-implementation.md +0 -286
  65. package/.bmad/bmm/docs/workflows-planning.md +0 -612
  66. package/.bmad/bmm/docs/workflows-solutioning.md +0 -554
  67. package/.bmad/bmm/teams/default-party.csv +0 -20
  68. package/.bmad/bmm/teams/team-fullstack.yaml +0 -13
  69. package/.bmad/bmm/testarch/knowledge/ci-burn-in.md +0 -675
  70. package/.bmad/bmm/testarch/knowledge/component-tdd.md +0 -486
  71. package/.bmad/bmm/testarch/knowledge/contract-testing.md +0 -957
  72. package/.bmad/bmm/testarch/knowledge/data-factories.md +0 -500
  73. package/.bmad/bmm/testarch/knowledge/email-auth.md +0 -721
  74. package/.bmad/bmm/testarch/knowledge/error-handling.md +0 -725
  75. package/.bmad/bmm/testarch/knowledge/feature-flags.md +0 -750
  76. package/.bmad/bmm/testarch/knowledge/fixture-architecture.md +0 -401
  77. package/.bmad/bmm/testarch/knowledge/network-first.md +0 -486
  78. package/.bmad/bmm/testarch/knowledge/nfr-criteria.md +0 -670
  79. package/.bmad/bmm/testarch/knowledge/playwright-config.md +0 -730
  80. package/.bmad/bmm/testarch/knowledge/probability-impact.md +0 -601
  81. package/.bmad/bmm/testarch/knowledge/risk-governance.md +0 -615
  82. package/.bmad/bmm/testarch/knowledge/selective-testing.md +0 -732
  83. package/.bmad/bmm/testarch/knowledge/selector-resilience.md +0 -527
  84. package/.bmad/bmm/testarch/knowledge/test-healing-patterns.md +0 -644
  85. package/.bmad/bmm/testarch/knowledge/test-levels-framework.md +0 -473
  86. package/.bmad/bmm/testarch/knowledge/test-priorities-matrix.md +0 -373
  87. package/.bmad/bmm/testarch/knowledge/test-quality.md +0 -664
  88. package/.bmad/bmm/testarch/knowledge/timing-debugging.md +0 -372
  89. package/.bmad/bmm/testarch/knowledge/visual-debugging.md +0 -524
  90. package/.bmad/bmm/testarch/tea-index.csv +0 -22
  91. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/instructions.md +0 -112
  92. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/project-context.md +0 -25
  93. package/.bmad/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +0 -26
  94. package/.bmad/bmm/workflows/1-analysis/domain-research/instructions.md +0 -425
  95. package/.bmad/bmm/workflows/1-analysis/domain-research/template.md +0 -180
  96. package/.bmad/bmm/workflows/1-analysis/domain-research/workflow.yaml +0 -28
  97. package/.bmad/bmm/workflows/1-analysis/product-brief/checklist.md +0 -115
  98. package/.bmad/bmm/workflows/1-analysis/product-brief/instructions.md +0 -524
  99. package/.bmad/bmm/workflows/1-analysis/product-brief/template.md +0 -181
  100. package/.bmad/bmm/workflows/1-analysis/product-brief/workflow.yaml +0 -45
  101. package/.bmad/bmm/workflows/1-analysis/research/checklist-deep-prompt.md +0 -144
  102. package/.bmad/bmm/workflows/1-analysis/research/checklist-technical.md +0 -249
  103. package/.bmad/bmm/workflows/1-analysis/research/checklist.md +0 -299
  104. package/.bmad/bmm/workflows/1-analysis/research/claude-code/injections.yaml +0 -114
  105. package/.bmad/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +0 -438
  106. package/.bmad/bmm/workflows/1-analysis/research/instructions-market.md +0 -675
  107. package/.bmad/bmm/workflows/1-analysis/research/instructions-router.md +0 -134
  108. package/.bmad/bmm/workflows/1-analysis/research/instructions-technical.md +0 -534
  109. package/.bmad/bmm/workflows/1-analysis/research/template-deep-prompt.md +0 -94
  110. package/.bmad/bmm/workflows/1-analysis/research/template-market.md +0 -347
  111. package/.bmad/bmm/workflows/1-analysis/research/template-technical.md +0 -245
  112. package/.bmad/bmm/workflows/1-analysis/research/workflow.yaml +0 -44
  113. package/.bmad/bmm/workflows/2-plan-workflows/create-epics-and-stories/epics-template.md +0 -80
  114. package/.bmad/bmm/workflows/2-plan-workflows/create-epics-and-stories/instructions.md +0 -616
  115. package/.bmad/bmm/workflows/2-plan-workflows/create-epics-and-stories/workflow.yaml +0 -53
  116. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +0 -310
  117. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +0 -1308
  118. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -145
  119. package/.bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +0 -61
  120. package/.bmad/bmm/workflows/2-plan-workflows/prd/checklist.md +0 -346
  121. package/.bmad/bmm/workflows/2-plan-workflows/prd/domain-complexity.csv +0 -13
  122. package/.bmad/bmm/workflows/2-plan-workflows/prd/instructions.md +0 -703
  123. package/.bmad/bmm/workflows/2-plan-workflows/prd/prd-template.md +0 -204
  124. package/.bmad/bmm/workflows/2-plan-workflows/prd/project-types.csv +0 -11
  125. package/.bmad/bmm/workflows/2-plan-workflows/prd/workflow.yaml +0 -52
  126. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +0 -217
  127. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +0 -74
  128. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions-generate-stories.md +0 -436
  129. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +0 -980
  130. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/tech-spec-template.md +0 -181
  131. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +0 -90
  132. package/.bmad/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +0 -58
  133. package/.bmad/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +0 -321
  134. package/.bmad/bmm/workflows/3-solutioning/architecture/architecture-template.md +0 -103
  135. package/.bmad/bmm/workflows/3-solutioning/architecture/checklist.md +0 -240
  136. package/.bmad/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +0 -222
  137. package/.bmad/bmm/workflows/3-solutioning/architecture/instructions.md +0 -768
  138. package/.bmad/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +0 -13
  139. package/.bmad/bmm/workflows/3-solutioning/architecture/workflow.yaml +0 -55
  140. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/checklist.md +0 -169
  141. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/instructions.md +0 -332
  142. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/template.md +0 -146
  143. package/.bmad/bmm/workflows/3-solutioning/implementation-readiness/workflow.yaml +0 -62
  144. package/.bmad/bmm/workflows/4-implementation/code-review/backlog_template.md +0 -12
  145. package/.bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -22
  146. package/.bmad/bmm/workflows/4-implementation/code-review/instructions.md +0 -398
  147. package/.bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -60
  148. package/.bmad/bmm/workflows/4-implementation/correct-course/checklist.md +0 -279
  149. package/.bmad/bmm/workflows/4-implementation/correct-course/instructions.md +0 -206
  150. package/.bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -56
  151. package/.bmad/bmm/workflows/4-implementation/create-story/checklist.md +0 -240
  152. package/.bmad/bmm/workflows/4-implementation/create-story/instructions.md +0 -256
  153. package/.bmad/bmm/workflows/4-implementation/create-story/template.md +0 -51
  154. package/.bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -71
  155. package/.bmad/bmm/workflows/4-implementation/dev-story/checklist.md +0 -38
  156. package/.bmad/bmm/workflows/4-implementation/dev-story/instructions.md +0 -267
  157. package/.bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -56
  158. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/checklist.md +0 -17
  159. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/instructions.md +0 -164
  160. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/template.md +0 -76
  161. package/.bmad/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +0 -57
  162. package/.bmad/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1443
  163. package/.bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -56
  164. package/.bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -33
  165. package/.bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -234
  166. package/.bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
  167. package/.bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -49
  168. package/.bmad/bmm/workflows/4-implementation/story-context/checklist.md +0 -16
  169. package/.bmad/bmm/workflows/4-implementation/story-context/context-template.xml +0 -34
  170. package/.bmad/bmm/workflows/4-implementation/story-context/instructions.md +0 -209
  171. package/.bmad/bmm/workflows/4-implementation/story-context/workflow.yaml +0 -61
  172. package/.bmad/bmm/workflows/4-implementation/story-done/instructions.md +0 -111
  173. package/.bmad/bmm/workflows/4-implementation/story-done/workflow.yaml +0 -26
  174. package/.bmad/bmm/workflows/4-implementation/story-ready/instructions.md +0 -117
  175. package/.bmad/bmm/workflows/4-implementation/story-ready/workflow.yaml +0 -23
  176. package/.bmad/bmm/workflows/document-project/checklist.md +0 -245
  177. package/.bmad/bmm/workflows/document-project/documentation-requirements.csv +0 -12
  178. package/.bmad/bmm/workflows/document-project/instructions.md +0 -222
  179. package/.bmad/bmm/workflows/document-project/templates/deep-dive-template.md +0 -345
  180. package/.bmad/bmm/workflows/document-project/templates/index-template.md +0 -169
  181. package/.bmad/bmm/workflows/document-project/templates/project-overview-template.md +0 -103
  182. package/.bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
  183. package/.bmad/bmm/workflows/document-project/templates/source-tree-template.md +0 -135
  184. package/.bmad/bmm/workflows/document-project/workflow.yaml +0 -29
  185. package/.bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
  186. package/.bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  187. package/.bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
  188. package/.bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  189. package/.bmad/bmm/workflows/frame-expert/_shared/excalidraw-helpers.md +0 -127
  190. package/.bmad/bmm/workflows/frame-expert/_shared/excalidraw-library.json +0 -90
  191. package/.bmad/bmm/workflows/frame-expert/_shared/excalidraw-templates.yaml +0 -127
  192. package/.bmad/bmm/workflows/frame-expert/_shared/validate-json-instructions.md +0 -79
  193. package/.bmad/bmm/workflows/frame-expert/create-dataflow/checklist.md +0 -39
  194. package/.bmad/bmm/workflows/frame-expert/create-dataflow/instructions.md +0 -131
  195. package/.bmad/bmm/workflows/frame-expert/create-dataflow/workflow.yaml +0 -23
  196. package/.bmad/bmm/workflows/frame-expert/create-diagram/checklist.md +0 -43
  197. package/.bmad/bmm/workflows/frame-expert/create-diagram/instructions.md +0 -142
  198. package/.bmad/bmm/workflows/frame-expert/create-diagram/workflow.yaml +0 -24
  199. package/.bmad/bmm/workflows/frame-expert/create-flowchart/checklist.md +0 -49
  200. package/.bmad/bmm/workflows/frame-expert/create-flowchart/instructions.md +0 -242
  201. package/.bmad/bmm/workflows/frame-expert/create-flowchart/workflow.yaml +0 -27
  202. package/.bmad/bmm/workflows/frame-expert/create-wireframe/checklist.md +0 -38
  203. package/.bmad/bmm/workflows/frame-expert/create-wireframe/instructions.md +0 -133
  204. package/.bmad/bmm/workflows/frame-expert/create-wireframe/workflow.yaml +0 -23
  205. package/.bmad/bmm/workflows/techdoc/documentation-standards.md +0 -262
  206. package/.bmad/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -363
  207. package/.bmad/bmm/workflows/testarch/atdd/checklist.md +0 -373
  208. package/.bmad/bmm/workflows/testarch/atdd/instructions.md +0 -785
  209. package/.bmad/bmm/workflows/testarch/atdd/workflow.yaml +0 -45
  210. package/.bmad/bmm/workflows/testarch/automate/checklist.md +0 -580
  211. package/.bmad/bmm/workflows/testarch/automate/instructions.md +0 -1303
  212. package/.bmad/bmm/workflows/testarch/automate/workflow.yaml +0 -52
  213. package/.bmad/bmm/workflows/testarch/ci/checklist.md +0 -246
  214. package/.bmad/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -165
  215. package/.bmad/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -128
  216. package/.bmad/bmm/workflows/testarch/ci/instructions.md +0 -517
  217. package/.bmad/bmm/workflows/testarch/ci/workflow.yaml +0 -45
  218. package/.bmad/bmm/workflows/testarch/framework/checklist.md +0 -321
  219. package/.bmad/bmm/workflows/testarch/framework/instructions.md +0 -455
  220. package/.bmad/bmm/workflows/testarch/framework/workflow.yaml +0 -47
  221. package/.bmad/bmm/workflows/testarch/nfr-assess/checklist.md +0 -405
  222. package/.bmad/bmm/workflows/testarch/nfr-assess/instructions.md +0 -722
  223. package/.bmad/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -443
  224. package/.bmad/bmm/workflows/testarch/nfr-assess/workflow.yaml +0 -47
  225. package/.bmad/bmm/workflows/testarch/test-design/checklist.md +0 -234
  226. package/.bmad/bmm/workflows/testarch/test-design/instructions.md +0 -782
  227. package/.bmad/bmm/workflows/testarch/test-design/test-design-template.md +0 -285
  228. package/.bmad/bmm/workflows/testarch/test-design/workflow.yaml +0 -48
  229. package/.bmad/bmm/workflows/testarch/test-review/checklist.md +0 -470
  230. package/.bmad/bmm/workflows/testarch/test-review/instructions.md +0 -608
  231. package/.bmad/bmm/workflows/testarch/test-review/test-review-template.md +0 -388
  232. package/.bmad/bmm/workflows/testarch/test-review/workflow.yaml +0 -46
  233. package/.bmad/bmm/workflows/testarch/trace/checklist.md +0 -654
  234. package/.bmad/bmm/workflows/testarch/trace/instructions.md +0 -1045
  235. package/.bmad/bmm/workflows/testarch/trace/trace-template.md +0 -673
  236. package/.bmad/bmm/workflows/testarch/trace/workflow.yaml +0 -55
  237. package/.bmad/bmm/workflows/workflow-status/init/instructions.md +0 -334
  238. package/.bmad/bmm/workflows/workflow-status/init/workflow.yaml +0 -28
  239. package/.bmad/bmm/workflows/workflow-status/instructions.md +0 -388
  240. package/.bmad/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +0 -138
  241. package/.bmad/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +0 -126
  242. package/.bmad/bmm/workflows/workflow-status/paths/game-design.yaml +0 -52
  243. package/.bmad/bmm/workflows/workflow-status/paths/method-brownfield.yaml +0 -122
  244. package/.bmad/bmm/workflows/workflow-status/paths/method-greenfield.yaml +0 -113
  245. package/.bmad/bmm/workflows/workflow-status/paths/quick-flow-brownfield.yaml +0 -58
  246. package/.bmad/bmm/workflows/workflow-status/paths/quick-flow-greenfield.yaml +0 -47
  247. package/.bmad/bmm/workflows/workflow-status/project-levels.yaml +0 -59
  248. package/.bmad/bmm/workflows/workflow-status/workflow-status-template.yaml +0 -24
  249. package/.bmad/bmm/workflows/workflow-status/workflow.yaml +0 -28
  250. package/.bmad/core/agents/bmad-master.md +0 -72
  251. package/.bmad/core/agents/bmad-web-orchestrator.agent.xml +0 -113
  252. package/.bmad/core/config.yaml +0 -11
  253. package/.bmad/core/tasks/adv-elicit-methods.csv +0 -39
  254. package/.bmad/core/tasks/advanced-elicitation-methods.csv +0 -21
  255. package/.bmad/core/tasks/advanced-elicitation.xml +0 -106
  256. package/.bmad/core/tasks/index-docs.xml +0 -65
  257. package/.bmad/core/tasks/validate-workflow.xml +0 -89
  258. package/.bmad/core/tasks/workflow.xml +0 -270
  259. package/.bmad/core/tools/shard-doc.xml +0 -109
  260. package/.bmad/core/workflows/brainstorming/README.md +0 -261
  261. package/.bmad/core/workflows/brainstorming/brain-methods.csv +0 -36
  262. package/.bmad/core/workflows/brainstorming/instructions.md +0 -315
  263. package/.bmad/core/workflows/brainstorming/template.md +0 -106
  264. package/.bmad/core/workflows/brainstorming/workflow.yaml +0 -38
  265. package/.bmad/core/workflows/party-mode/instructions.md +0 -203
  266. package/.bmad/core/workflows/party-mode/workflow.yaml +0 -28
  267. package/.bmad/docs/claude-code-instructions.md +0 -25
  268. package/.claude/commands/BMad/analyst.md +0 -88
  269. package/.claude/commands/BMad/architect.md +0 -89
  270. package/.claude/commands/BMad/bmad-master.md +0 -114
  271. package/.claude/commands/BMad/bmad-orchestrator.md +0 -151
  272. package/.claude/commands/BMad/dev.md +0 -85
  273. package/.claude/commands/BMad/pm.md +0 -88
  274. package/.claude/commands/BMad/po.md +0 -83
  275. package/.claude/commands/BMad/qa.md +0 -91
  276. package/.claude/commands/BMad/sm.md +0 -69
  277. package/.claude/commands/BMad/tasks/advanced-elicitation.md +0 -123
  278. package/.claude/commands/BMad/tasks/apply-qa-fixes.md +0 -154
  279. package/.claude/commands/BMad/tasks/brownfield-create-epic.md +0 -166
  280. package/.claude/commands/BMad/tasks/brownfield-create-story.md +0 -153
  281. package/.claude/commands/BMad/tasks/correct-course.md +0 -76
  282. package/.claude/commands/BMad/tasks/create-brownfield-story.md +0 -318
  283. package/.claude/commands/BMad/tasks/create-deep-research-prompt.md +0 -284
  284. package/.claude/commands/BMad/tasks/create-doc.md +0 -107
  285. package/.claude/commands/BMad/tasks/create-next-story.md +0 -118
  286. package/.claude/commands/BMad/tasks/document-project.md +0 -349
  287. package/.claude/commands/BMad/tasks/execute-checklist.md +0 -92
  288. package/.claude/commands/BMad/tasks/facilitate-brainstorming-session.md +0 -142
  289. package/.claude/commands/BMad/tasks/generate-ai-frontend-prompt.md +0 -57
  290. package/.claude/commands/BMad/tasks/index-docs.md +0 -179
  291. package/.claude/commands/BMad/tasks/kb-mode-interaction.md +0 -81
  292. package/.claude/commands/BMad/tasks/nfr-assess.md +0 -349
  293. package/.claude/commands/BMad/tasks/qa-gate.md +0 -167
  294. package/.claude/commands/BMad/tasks/review-story.md +0 -320
  295. package/.claude/commands/BMad/tasks/risk-profile.md +0 -359
  296. package/.claude/commands/BMad/tasks/shard-doc.md +0 -191
  297. package/.claude/commands/BMad/tasks/test-design.md +0 -180
  298. package/.claude/commands/BMad/tasks/trace-requirements.md +0 -270
  299. package/.claude/commands/BMad/tasks/validate-next-story.md +0 -140
  300. package/.claude/commands/BMad/ux-expert.md +0 -73
  301. package/.claude/commands/bmad/bmm/agents/analyst.md +0 -14
  302. package/.claude/commands/bmad/bmm/agents/architect.md +0 -14
  303. package/.claude/commands/bmad/bmm/agents/dev.md +0 -14
  304. package/.claude/commands/bmad/bmm/agents/frame-expert.md +0 -14
  305. package/.claude/commands/bmad/bmm/agents/pm.md +0 -14
  306. package/.claude/commands/bmad/bmm/agents/sm.md +0 -14
  307. package/.claude/commands/bmad/bmm/agents/tea.md +0 -14
  308. package/.claude/commands/bmad/bmm/agents/tech-writer.md +0 -14
  309. package/.claude/commands/bmad/bmm/agents/ux-designer.md +0 -14
  310. package/.claude/commands/bmad/bmm/workflows/architecture.md +0 -13
  311. package/.claude/commands/bmad/bmm/workflows/brainstorm-project.md +0 -13
  312. package/.claude/commands/bmad/bmm/workflows/code-review.md +0 -13
  313. package/.claude/commands/bmad/bmm/workflows/correct-course.md +0 -13
  314. package/.claude/commands/bmad/bmm/workflows/create-dataflow.md +0 -13
  315. package/.claude/commands/bmad/bmm/workflows/create-diagram.md +0 -13
  316. package/.claude/commands/bmad/bmm/workflows/create-epics-and-stories.md +0 -13
  317. package/.claude/commands/bmad/bmm/workflows/create-flowchart.md +0 -13
  318. package/.claude/commands/bmad/bmm/workflows/create-story.md +0 -13
  319. package/.claude/commands/bmad/bmm/workflows/create-ux-design.md +0 -13
  320. package/.claude/commands/bmad/bmm/workflows/create-wireframe.md +0 -13
  321. package/.claude/commands/bmad/bmm/workflows/dev-story.md +0 -13
  322. package/.claude/commands/bmad/bmm/workflows/document-project.md +0 -13
  323. package/.claude/commands/bmad/bmm/workflows/domain-research.md +0 -13
  324. package/.claude/commands/bmad/bmm/workflows/epic-tech-context.md +0 -13
  325. package/.claude/commands/bmad/bmm/workflows/implementation-readiness.md +0 -13
  326. package/.claude/commands/bmad/bmm/workflows/prd.md +0 -13
  327. package/.claude/commands/bmad/bmm/workflows/product-brief.md +0 -13
  328. package/.claude/commands/bmad/bmm/workflows/research.md +0 -13
  329. package/.claude/commands/bmad/bmm/workflows/retrospective.md +0 -13
  330. package/.claude/commands/bmad/bmm/workflows/sprint-planning.md +0 -13
  331. package/.claude/commands/bmad/bmm/workflows/story-context.md +0 -13
  332. package/.claude/commands/bmad/bmm/workflows/story-done.md +0 -13
  333. package/.claude/commands/bmad/bmm/workflows/story-ready.md +0 -13
  334. package/.claude/commands/bmad/bmm/workflows/tech-spec.md +0 -13
  335. package/.claude/commands/bmad/bmm/workflows/workflow-init.md +0 -13
  336. package/.claude/commands/bmad/bmm/workflows/workflow-status.md +0 -13
  337. package/.claude/commands/bmad/core/agents/bmad-master.md +0 -14
  338. package/.claude/commands/bmad/core/tasks/advanced-elicitation.md +0 -9
  339. package/.claude/commands/bmad/core/tasks/index-docs.md +0 -9
  340. package/.claude/commands/bmad/core/tools/shard-doc.md +0 -9
  341. package/.claude/commands/bmad/core/workflows/brainstorming.md +0 -13
  342. package/.claude/commands/bmad/core/workflows/party-mode.md +0 -13
  343. package/.claude/github-star-reminder.txt +0 -1
  344. package/.claude/hooks/bmad-party-manager.sh +0 -225
  345. package/.claude/hooks/stop.sh +0 -221
  346. package/.claude/piper-voices-dir.txt +0 -1
  347. package/.claude/plugins/bmad-voices-enabled.flag +0 -0
  348. package/.mcp.json +0 -88
  349. package/RELEASE_NOTES_v2.4.0_DRAFT.md +0 -116
  350. package/RELEASE_NOTES_v2.4.1_DRAFT.md +0 -61
  351. package/docs/2025-11-15_15-14-33.snagx +0 -0
  352. package/docs/Screenshot 2025-11-15 151325.png +0 -0
  353. package/docs/Screenshot 2025-11-15 151432.png +0 -0
  354. package/docs/macos-piper-issue.md +0 -172
  355. package/docs/stargazer-cms-prd.md +0 -1918
  356. package/docs/whatsapp-plugin-github-issue.md +0 -393
  357. package/docs/whatsapp-tts-plugin-feasibility.md +0 -418
  358. package/docs/whatsapp-tts-standalone-plugin.md +0 -628
  359. package/github-profile-draft.md +0 -57
  360. package/linkedin/vibe-coding-and-pulseaudio.md +0 -121
  361. package/mcp-server/agentvibes.db +0 -0
  362. package/scripts/audio-tunnel.config +0 -17
  363. package/v4-backup/.bmad-core/agent-teams/team-all.yaml +0 -15
  364. package/v4-backup/.bmad-core/agent-teams/team-fullstack.yaml +0 -19
  365. package/v4-backup/.bmad-core/agent-teams/team-ide-minimal.yaml +0 -11
  366. package/v4-backup/.bmad-core/agent-teams/team-no-ui.yaml +0 -14
  367. package/v4-backup/.bmad-core/agents/analyst.md +0 -84
  368. package/v4-backup/.bmad-core/agents/architect.md +0 -85
  369. package/v4-backup/.bmad-core/agents/bmad-master.md +0 -110
  370. package/v4-backup/.bmad-core/agents/bmad-orchestrator.md +0 -147
  371. package/v4-backup/.bmad-core/agents/dev.md +0 -81
  372. package/v4-backup/.bmad-core/agents/pm.md +0 -84
  373. package/v4-backup/.bmad-core/agents/po.md +0 -79
  374. package/v4-backup/.bmad-core/agents/qa.md +0 -87
  375. package/v4-backup/.bmad-core/agents/sm.md +0 -65
  376. package/v4-backup/.bmad-core/agents/ux-expert.md +0 -69
  377. package/v4-backup/.bmad-core/checklists/architect-checklist.md +0 -440
  378. package/v4-backup/.bmad-core/checklists/change-checklist.md +0 -184
  379. package/v4-backup/.bmad-core/checklists/pm-checklist.md +0 -372
  380. package/v4-backup/.bmad-core/checklists/po-master-checklist.md +0 -434
  381. package/v4-backup/.bmad-core/checklists/story-dod-checklist.md +0 -96
  382. package/v4-backup/.bmad-core/checklists/story-draft-checklist.md +0 -155
  383. package/v4-backup/.bmad-core/core-config.yaml +0 -22
  384. package/v4-backup/.bmad-core/data/bmad-kb.md +0 -809
  385. package/v4-backup/.bmad-core/data/brainstorming-techniques.md +0 -38
  386. package/v4-backup/.bmad-core/data/elicitation-methods.md +0 -156
  387. package/v4-backup/.bmad-core/data/technical-preferences.md +0 -5
  388. package/v4-backup/.bmad-core/data/test-levels-framework.md +0 -148
  389. package/v4-backup/.bmad-core/data/test-priorities-matrix.md +0 -174
  390. package/v4-backup/.bmad-core/enhanced-ide-development-workflow.md +0 -248
  391. package/v4-backup/.bmad-core/install-manifest.yaml +0 -230
  392. package/v4-backup/.bmad-core/tasks/advanced-elicitation.md +0 -119
  393. package/v4-backup/.bmad-core/tasks/apply-qa-fixes.md +0 -150
  394. package/v4-backup/.bmad-core/tasks/brownfield-create-epic.md +0 -162
  395. package/v4-backup/.bmad-core/tasks/brownfield-create-story.md +0 -149
  396. package/v4-backup/.bmad-core/tasks/correct-course.md +0 -72
  397. package/v4-backup/.bmad-core/tasks/create-brownfield-story.md +0 -314
  398. package/v4-backup/.bmad-core/tasks/create-deep-research-prompt.md +0 -280
  399. package/v4-backup/.bmad-core/tasks/create-doc.md +0 -103
  400. package/v4-backup/.bmad-core/tasks/create-next-story.md +0 -114
  401. package/v4-backup/.bmad-core/tasks/document-project.md +0 -345
  402. package/v4-backup/.bmad-core/tasks/execute-checklist.md +0 -88
  403. package/v4-backup/.bmad-core/tasks/facilitate-brainstorming-session.md +0 -138
  404. package/v4-backup/.bmad-core/tasks/generate-ai-frontend-prompt.md +0 -53
  405. package/v4-backup/.bmad-core/tasks/index-docs.md +0 -175
  406. package/v4-backup/.bmad-core/tasks/kb-mode-interaction.md +0 -77
  407. package/v4-backup/.bmad-core/tasks/nfr-assess.md +0 -345
  408. package/v4-backup/.bmad-core/tasks/qa-gate.md +0 -163
  409. package/v4-backup/.bmad-core/tasks/review-story.md +0 -316
  410. package/v4-backup/.bmad-core/tasks/risk-profile.md +0 -355
  411. package/v4-backup/.bmad-core/tasks/shard-doc.md +0 -187
  412. package/v4-backup/.bmad-core/tasks/test-design.md +0 -176
  413. package/v4-backup/.bmad-core/tasks/trace-requirements.md +0 -266
  414. package/v4-backup/.bmad-core/tasks/validate-next-story.md +0 -136
  415. package/v4-backup/.bmad-core/templates/architecture-tmpl.yaml +0 -651
  416. package/v4-backup/.bmad-core/templates/brainstorming-output-tmpl.yaml +0 -156
  417. package/v4-backup/.bmad-core/templates/brownfield-architecture-tmpl.yaml +0 -477
  418. package/v4-backup/.bmad-core/templates/brownfield-prd-tmpl.yaml +0 -281
  419. package/v4-backup/.bmad-core/templates/competitor-analysis-tmpl.yaml +0 -307
  420. package/v4-backup/.bmad-core/templates/front-end-architecture-tmpl.yaml +0 -219
  421. package/v4-backup/.bmad-core/templates/front-end-spec-tmpl.yaml +0 -350
  422. package/v4-backup/.bmad-core/templates/fullstack-architecture-tmpl.yaml +0 -824
  423. package/v4-backup/.bmad-core/templates/market-research-tmpl.yaml +0 -253
  424. package/v4-backup/.bmad-core/templates/prd-tmpl.yaml +0 -203
  425. package/v4-backup/.bmad-core/templates/project-brief-tmpl.yaml +0 -222
  426. package/v4-backup/.bmad-core/templates/qa-gate-tmpl.yaml +0 -103
  427. package/v4-backup/.bmad-core/templates/story-tmpl.yaml +0 -138
  428. package/v4-backup/.bmad-core/user-guide.md +0 -577
  429. package/v4-backup/.bmad-core/utils/bmad-doc-template.md +0 -327
  430. package/v4-backup/.bmad-core/utils/workflow-management.md +0 -71
  431. package/v4-backup/.bmad-core/workflows/brownfield-fullstack.yaml +0 -298
  432. package/v4-backup/.bmad-core/workflows/brownfield-service.yaml +0 -188
  433. package/v4-backup/.bmad-core/workflows/brownfield-ui.yaml +0 -198
  434. package/v4-backup/.bmad-core/workflows/greenfield-fullstack.yaml +0 -241
  435. package/v4-backup/.bmad-core/workflows/greenfield-service.yaml +0 -207
  436. package/v4-backup/.bmad-core/workflows/greenfield-ui.yaml +0 -236
  437. package/v4-backup/.bmad-core/working-in-the-brownfield.md +0 -606
@@ -1,524 +0,0 @@
1
- # Visual Debugging and Developer Ergonomics
2
-
3
- ## Principle
4
-
5
- Fast feedback loops and transparent debugging artifacts are critical for maintaining test reliability and developer confidence. Visual debugging tools (trace viewers, screenshots, videos, HAR files) turn cryptic test failures into actionable insights, reducing triage time from hours to minutes.
6
-
7
- ## Rationale
8
-
9
- **The Problem**: CI failures often provide minimal context—a timeout, a selector mismatch, or a network error—forcing developers to reproduce issues locally (if they can). This wastes time and discourages test maintenance.
10
-
11
- **The Solution**: Capture rich debugging artifacts **only on failure** to balance storage costs with diagnostic value. Modern tools like Playwright Trace Viewer, Cypress Debug UI, and HAR recordings provide interactive, time-travel debugging that reveals exactly what the test saw at each step.
12
-
13
- **Why This Matters**:
14
-
15
- - Reduces failure triage time by 80-90% (visual context vs logs alone)
16
- - Enables debugging without local reproduction
17
- - Improves test maintenance confidence (clear failure root cause)
18
- - Catches timing/race conditions that are hard to reproduce locally
19
-
20
- ## Pattern Examples
21
-
22
- ### Example 1: Playwright Trace Viewer Configuration (Production Pattern)
23
-
24
- **Context**: Capture traces on first retry only (balances storage and diagnostics)
25
-
26
- **Implementation**:
27
-
28
- ```typescript
29
- // playwright.config.ts
30
- import { defineConfig } from '@playwright/test';
31
-
32
- export default defineConfig({
33
- use: {
34
- // Visual debugging artifacts (space-efficient)
35
- trace: 'on-first-retry', // Only when test fails once
36
- screenshot: 'only-on-failure', // Not on success
37
- video: 'retain-on-failure', // Delete on pass
38
-
39
- // Context for debugging
40
- baseURL: process.env.BASE_URL || 'http://localhost:3000',
41
-
42
- // Timeout context
43
- actionTimeout: 15_000, // 15s for clicks/fills
44
- navigationTimeout: 30_000, // 30s for page loads
45
- },
46
-
47
- // CI-specific artifact retention
48
- reporter: [
49
- ['html', { outputFolder: 'playwright-report', open: 'never' }],
50
- ['junit', { outputFile: 'results.xml' }],
51
- ['list'], // Console output
52
- ],
53
-
54
- // Failure handling
55
- retries: process.env.CI ? 2 : 0, // Retry in CI to capture trace
56
- workers: process.env.CI ? 1 : undefined,
57
- });
58
- ```
59
-
60
- **Opening and Using Trace Viewer**:
61
-
62
- ```bash
63
- # After test failure in CI, download trace artifact
64
- # Then open locally:
65
- npx playwright show-trace path/to/trace.zip
66
-
67
- # Or serve trace viewer:
68
- npx playwright show-report
69
- ```
70
-
71
- **Key Features to Use in Trace Viewer**:
72
-
73
- 1. **Timeline**: See each action (click, navigate, assertion) with timing
74
- 2. **Snapshots**: Hover over timeline to see DOM state at that moment
75
- 3. **Network Tab**: Inspect all API calls, headers, payloads, timing
76
- 4. **Console Tab**: View console.log/error messages
77
- 5. **Source Tab**: See test code with execution markers
78
- 6. **Metadata**: Browser, OS, test duration, screenshots
79
-
80
- **Why This Works**:
81
-
82
- - `on-first-retry` avoids capturing traces for flaky passes (saves storage)
83
- - Screenshots + video give visual context without trace overhead
84
- - Interactive timeline makes timing issues obvious (race conditions, slow API)
85
-
86
- ---
87
-
88
- ### Example 2: HAR File Recording for Network Debugging
89
-
90
- **Context**: Capture all network activity for reproducible API debugging
91
-
92
- **Implementation**:
93
-
94
- ```typescript
95
- // tests/e2e/checkout-with-har.spec.ts
96
- import { test, expect } from '@playwright/test';
97
- import path from 'path';
98
-
99
- test.describe('Checkout Flow with HAR Recording', () => {
100
- test('should complete payment with full network capture', async ({ page, context }) => {
101
- // Start HAR recording BEFORE navigation
102
- await context.routeFromHAR(path.join(__dirname, '../fixtures/checkout.har'), {
103
- url: '**/api/**', // Only capture API calls
104
- update: true, // Update HAR if file exists
105
- });
106
-
107
- await page.goto('/checkout');
108
-
109
- // Interact with page
110
- await page.getByTestId('payment-method').selectOption('credit-card');
111
- await page.getByTestId('card-number').fill('4242424242424242');
112
- await page.getByTestId('submit-payment').click();
113
-
114
- // Wait for payment confirmation
115
- await expect(page.getByTestId('success-message')).toBeVisible();
116
-
117
- // HAR file saved to fixtures/checkout.har
118
- // Contains all network requests/responses for replay
119
- });
120
- });
121
- ```
122
-
123
- **Using HAR for Deterministic Mocking**:
124
-
125
- ```typescript
126
- // tests/e2e/checkout-replay-har.spec.ts
127
- import { test, expect } from '@playwright/test';
128
- import path from 'path';
129
-
130
- test('should replay checkout flow from HAR', async ({ page, context }) => {
131
- // Replay network from HAR (no real API calls)
132
- await context.routeFromHAR(path.join(__dirname, '../fixtures/checkout.har'), {
133
- url: '**/api/**',
134
- update: false, // Read-only mode
135
- });
136
-
137
- await page.goto('/checkout');
138
-
139
- // Same test, but network responses come from HAR file
140
- await page.getByTestId('payment-method').selectOption('credit-card');
141
- await page.getByTestId('card-number').fill('4242424242424242');
142
- await page.getByTestId('submit-payment').click();
143
-
144
- await expect(page.getByTestId('success-message')).toBeVisible();
145
- });
146
- ```
147
-
148
- **Key Points**:
149
-
150
- - **`update: true`** records new HAR or updates existing (for flaky API debugging)
151
- - **`update: false`** replays from HAR (deterministic, no real API)
152
- - Filter by URL pattern (`**/api/**`) to avoid capturing static assets
153
- - HAR files are human-readable JSON (easy to inspect/modify)
154
-
155
- **When to Use HAR**:
156
-
157
- - Debugging flaky tests caused by API timing/responses
158
- - Creating deterministic mocks for integration tests
159
- - Analyzing third-party API behavior (Stripe, Auth0)
160
- - Reproducing production issues locally (record HAR in staging)
161
-
162
- ---
163
-
164
- ### Example 3: Custom Artifact Capture (Console Logs + Network on Failure)
165
-
166
- **Context**: Capture additional debugging context automatically on test failure
167
-
168
- **Implementation**:
169
-
170
- ```typescript
171
- // playwright/support/fixtures/debug-fixture.ts
172
- import { test as base } from '@playwright/test';
173
- import fs from 'fs';
174
- import path from 'path';
175
-
176
- type DebugFixture = {
177
- captureDebugArtifacts: () => Promise<void>;
178
- };
179
-
180
- export const test = base.extend<DebugFixture>({
181
- captureDebugArtifacts: async ({ page }, use, testInfo) => {
182
- const consoleLogs: string[] = [];
183
- const networkRequests: Array<{ url: string; status: number; method: string }> = [];
184
-
185
- // Capture console messages
186
- page.on('console', (msg) => {
187
- consoleLogs.push(`[${msg.type()}] ${msg.text()}`);
188
- });
189
-
190
- // Capture network requests
191
- page.on('request', (request) => {
192
- networkRequests.push({
193
- url: request.url(),
194
- method: request.method(),
195
- status: 0, // Will be updated on response
196
- });
197
- });
198
-
199
- page.on('response', (response) => {
200
- const req = networkRequests.find((r) => r.url === response.url());
201
- if (req) req.status = response.status();
202
- });
203
-
204
- await use(async () => {
205
- // This function can be called manually in tests
206
- // But it also runs automatically on failure via afterEach
207
- });
208
-
209
- // After test completes, save artifacts if failed
210
- if (testInfo.status !== testInfo.expectedStatus) {
211
- const artifactDir = path.join(testInfo.outputDir, 'debug-artifacts');
212
- fs.mkdirSync(artifactDir, { recursive: true });
213
-
214
- // Save console logs
215
- fs.writeFileSync(path.join(artifactDir, 'console.log'), consoleLogs.join('\n'), 'utf-8');
216
-
217
- // Save network summary
218
- fs.writeFileSync(path.join(artifactDir, 'network.json'), JSON.stringify(networkRequests, null, 2), 'utf-8');
219
-
220
- console.log(`Debug artifacts saved to: ${artifactDir}`);
221
- }
222
- },
223
- });
224
- ```
225
-
226
- **Usage in Tests**:
227
-
228
- ```typescript
229
- // tests/e2e/payment-with-debug.spec.ts
230
- import { test, expect } from '../support/fixtures/debug-fixture';
231
-
232
- test('payment flow captures debug artifacts on failure', async ({ page, captureDebugArtifacts }) => {
233
- await page.goto('/checkout');
234
-
235
- // Test will automatically capture console + network on failure
236
- await page.getByTestId('submit-payment').click();
237
- await expect(page.getByTestId('success-message')).toBeVisible({ timeout: 5000 });
238
-
239
- // If this fails, console.log and network.json saved automatically
240
- });
241
- ```
242
-
243
- **CI Integration (GitHub Actions)**:
244
-
245
- ```yaml
246
- # .github/workflows/e2e.yml
247
- name: E2E Tests with Artifacts
248
- on: [push, pull_request]
249
-
250
- jobs:
251
- test:
252
- runs-on: ubuntu-latest
253
- steps:
254
- - uses: actions/checkout@v4
255
- - uses: actions/setup-node@v4
256
- with:
257
- node-version-file: '.nvmrc'
258
-
259
- - name: Install dependencies
260
- run: npm ci
261
-
262
- - name: Run Playwright tests
263
- run: npm run test:e2e
264
- continue-on-error: true # Capture artifacts even on failure
265
-
266
- - name: Upload test artifacts on failure
267
- if: failure()
268
- uses: actions/upload-artifact@v4
269
- with:
270
- name: playwright-artifacts
271
- path: |
272
- test-results/
273
- playwright-report/
274
- retention-days: 30
275
- ```
276
-
277
- **Key Points**:
278
-
279
- - Fixtures automatically capture context without polluting test code
280
- - Only saves artifacts on failure (storage-efficient)
281
- - CI uploads artifacts for post-mortem analysis
282
- - `continue-on-error: true` ensures artifact upload even when tests fail
283
-
284
- ---
285
-
286
- ### Example 4: Accessibility Debugging Integration (axe-core in Trace Viewer)
287
-
288
- **Context**: Catch accessibility regressions during visual debugging
289
-
290
- **Implementation**:
291
-
292
- ```typescript
293
- // playwright/support/fixtures/a11y-fixture.ts
294
- import { test as base } from '@playwright/test';
295
- import AxeBuilder from '@axe-core/playwright';
296
-
297
- type A11yFixture = {
298
- checkA11y: () => Promise<void>;
299
- };
300
-
301
- export const test = base.extend<A11yFixture>({
302
- checkA11y: async ({ page }, use) => {
303
- await use(async () => {
304
- // Run axe accessibility scan
305
- const results = await new AxeBuilder({ page }).analyze();
306
-
307
- // Attach results to test report (visible in trace viewer)
308
- if (results.violations.length > 0) {
309
- console.log(`Found ${results.violations.length} accessibility violations:`);
310
- results.violations.forEach((violation) => {
311
- console.log(`- [${violation.impact}] ${violation.id}: ${violation.description}`);
312
- console.log(` Help: ${violation.helpUrl}`);
313
- });
314
-
315
- throw new Error(`Accessibility violations found: ${results.violations.length}`);
316
- }
317
- });
318
- },
319
- });
320
- ```
321
-
322
- **Usage with Visual Debugging**:
323
-
324
- ```typescript
325
- // tests/e2e/checkout-a11y.spec.ts
326
- import { test, expect } from '../support/fixtures/a11y-fixture';
327
-
328
- test('checkout page is accessible', async ({ page, checkA11y }) => {
329
- await page.goto('/checkout');
330
-
331
- // Verify page loaded
332
- await expect(page.getByRole('heading', { name: 'Checkout' })).toBeVisible();
333
-
334
- // Run accessibility check
335
- await checkA11y();
336
-
337
- // If violations found, test fails and trace captures:
338
- // - Screenshot showing the problematic element
339
- // - Console log with violation details
340
- // - Network tab showing any failed resource loads
341
- });
342
- ```
343
-
344
- **Trace Viewer Benefits**:
345
-
346
- - **Screenshot shows visual context** of accessibility issue (contrast, missing labels)
347
- - **Console tab shows axe-core violations** with impact level and helpUrl
348
- - **DOM snapshot** allows inspecting ARIA attributes at failure point
349
- - **Network tab** reveals if icon fonts or images failed (common a11y issue)
350
-
351
- **Cypress Equivalent**:
352
-
353
- ```javascript
354
- // cypress/support/commands.ts
355
- import 'cypress-axe';
356
-
357
- Cypress.Commands.add('checkA11y', (context = null, options = {}) => {
358
- cy.injectAxe(); // Inject axe-core
359
- cy.checkA11y(context, options, (violations) => {
360
- if (violations.length) {
361
- cy.task('log', `Found ${violations.length} accessibility violations`);
362
- violations.forEach((violation) => {
363
- cy.task('log', `- [${violation.impact}] ${violation.id}: ${violation.description}`);
364
- });
365
- }
366
- });
367
- });
368
-
369
- // tests/e2e/checkout-a11y.cy.ts
370
- describe('Checkout Accessibility', () => {
371
- it('should have no a11y violations', () => {
372
- cy.visit('/checkout');
373
- cy.injectAxe();
374
- cy.checkA11y();
375
- // On failure, Cypress UI shows:
376
- // - Screenshot of page
377
- // - Console log with violation details
378
- // - Network tab with API calls
379
- });
380
- });
381
- ```
382
-
383
- **Key Points**:
384
-
385
- - Accessibility checks integrate seamlessly with visual debugging
386
- - Violations are captured in trace viewer/Cypress UI automatically
387
- - Provides actionable links (helpUrl) to fix issues
388
- - Screenshots show visual context (contrast, layout)
389
-
390
- ---
391
-
392
- ### Example 5: Time-Travel Debugging Workflow (Playwright Inspector)
393
-
394
- **Context**: Debug tests interactively with step-through execution
395
-
396
- **Implementation**:
397
-
398
- ```typescript
399
- // tests/e2e/checkout-debug.spec.ts
400
- import { test, expect } from '@playwright/test';
401
-
402
- test('debug checkout flow step-by-step', async ({ page }) => {
403
- // Set breakpoint by uncommenting this:
404
- // await page.pause()
405
-
406
- await page.goto('/checkout');
407
-
408
- // Use Playwright Inspector to:
409
- // 1. Step through each action
410
- // 2. Inspect DOM at each step
411
- // 3. View network calls per action
412
- // 4. Take screenshots manually
413
-
414
- await page.getByTestId('payment-method').selectOption('credit-card');
415
-
416
- // Pause here to inspect form state
417
- // await page.pause()
418
-
419
- await page.getByTestId('card-number').fill('4242424242424242');
420
- await page.getByTestId('submit-payment').click();
421
-
422
- await expect(page.getByTestId('success-message')).toBeVisible();
423
- });
424
- ```
425
-
426
- **Running with Inspector**:
427
-
428
- ```bash
429
- # Open Playwright Inspector (GUI debugger)
430
- npx playwright test --debug
431
-
432
- # Or use headed mode with slowMo
433
- npx playwright test --headed --slow-mo=1000
434
-
435
- # Debug specific test
436
- npx playwright test checkout-debug.spec.ts --debug
437
-
438
- # Set environment variable for persistent debugging
439
- PWDEBUG=1 npx playwright test
440
- ```
441
-
442
- **Inspector Features**:
443
-
444
- 1. **Step-through execution**: Click "Next" to execute one action at a time
445
- 2. **DOM inspector**: Hover over elements to see selectors
446
- 3. **Network panel**: See API calls with timing
447
- 4. **Console panel**: View console.log output
448
- 5. **Pick locator**: Click element in browser to get selector
449
- 6. **Record mode**: Record interactions to generate test code
450
-
451
- **Common Debugging Patterns**:
452
-
453
- ```typescript
454
- // Pattern 1: Debug selector issues
455
- test('debug selector', async ({ page }) => {
456
- await page.goto('/dashboard');
457
- await page.pause(); // Inspector opens
458
-
459
- // In Inspector console, test selectors:
460
- // page.getByTestId('user-menu') ✅
461
- // page.getByRole('button', { name: 'Profile' }) ✅
462
- // page.locator('.btn-primary') ❌ (fragile)
463
- });
464
-
465
- // Pattern 2: Debug timing issues
466
- test('debug network timing', async ({ page }) => {
467
- await page.goto('/dashboard');
468
-
469
- // Set up network listener BEFORE interaction
470
- const responsePromise = page.waitForResponse('**/api/users');
471
- await page.getByTestId('load-users').click();
472
-
473
- await page.pause(); // Check network panel for timing
474
-
475
- const response = await responsePromise;
476
- expect(response.status()).toBe(200);
477
- });
478
-
479
- // Pattern 3: Debug state changes
480
- test('debug state mutation', async ({ page }) => {
481
- await page.goto('/cart');
482
-
483
- // Check initial state
484
- await expect(page.getByTestId('cart-count')).toHaveText('0');
485
-
486
- await page.pause(); // Inspect DOM
487
-
488
- await page.getByTestId('add-to-cart').click();
489
-
490
- await page.pause(); // Inspect DOM again (compare state)
491
-
492
- await expect(page.getByTestId('cart-count')).toHaveText('1');
493
- });
494
- ```
495
-
496
- **Key Points**:
497
-
498
- - `page.pause()` opens Inspector at that exact moment
499
- - Inspector shows DOM state, network activity, console at pause point
500
- - "Pick locator" feature helps find robust selectors
501
- - Record mode generates test code from manual interactions
502
-
503
- ---
504
-
505
- ## Visual Debugging Checklist
506
-
507
- Before deploying tests to CI, ensure:
508
-
509
- - [ ] **Artifact configuration**: `trace: 'on-first-retry'`, `screenshot: 'only-on-failure'`, `video: 'retain-on-failure'`
510
- - [ ] **CI artifact upload**: GitHub Actions/GitLab CI configured to upload `test-results/` and `playwright-report/`
511
- - [ ] **HAR recording**: Set up for flaky API tests (record once, replay deterministically)
512
- - [ ] **Custom debug fixtures**: Console logs + network summary captured on failure
513
- - [ ] **Accessibility integration**: axe-core violations visible in trace viewer
514
- - [ ] **Trace viewer docs**: README explains how to open traces locally (`npx playwright show-trace`)
515
- - [ ] **Inspector workflow**: Document `--debug` flag for interactive debugging
516
- - [ ] **Storage optimization**: Artifacts deleted after 30 days (CI retention policy)
517
-
518
- ## Integration Points
519
-
520
- - **Used in workflows**: `*framework` (initial setup), `*ci` (artifact upload), `*test-review` (validate artifact config)
521
- - **Related fragments**: `playwright-config.md` (artifact configuration), `ci-burn-in.md` (CI artifact upload), `test-quality.md` (debugging best practices)
522
- - **Tools**: Playwright Trace Viewer, Cypress Debug UI, axe-core, HAR files
523
-
524
- _Source: Playwright official docs, Murat testing philosophy (visual debugging manifesto), SEON production debugging patterns_
@@ -1,22 +0,0 @@
1
- id,name,description,tags,fragment_file
2
- fixture-architecture,Fixture Architecture,"Composable fixture patterns (pure function → fixture → merge) and reuse rules","fixtures,architecture,playwright,cypress",knowledge/fixture-architecture.md
3
- network-first,Network-First Safeguards,"Intercept-before-navigate workflow, HAR capture, deterministic waits, edge mocking","network,stability,playwright,cypress",knowledge/network-first.md
4
- data-factories,Data Factories and API Setup,"Factories with overrides, API seeding, cleanup discipline","data,factories,setup,api",knowledge/data-factories.md
5
- component-tdd,Component TDD Loop,"Red→green→refactor workflow, provider isolation, accessibility assertions","component-testing,tdd,ui",knowledge/component-tdd.md
6
- playwright-config,Playwright Config Guardrails,"Environment switching, timeout standards, artifact outputs","playwright,config,env",knowledge/playwright-config.md
7
- ci-burn-in,CI and Burn-In Strategy,"Staged jobs, shard orchestration, burn-in loops, artifact policy","ci,automation,flakiness",knowledge/ci-burn-in.md
8
- selective-testing,Selective Test Execution,"Tag/grep usage, spec filters, diff-based runs, promotion rules","risk-based,selection,strategy",knowledge/selective-testing.md
9
- feature-flags,Feature Flag Governance,"Enum management, targeting helpers, cleanup, release checklists","feature-flags,governance,launchdarkly",knowledge/feature-flags.md
10
- contract-testing,Contract Testing Essentials,"Pact publishing, provider verification, resilience coverage","contract-testing,pact,api",knowledge/contract-testing.md
11
- email-auth,Email Authentication Testing,"Magic link extraction, state preservation, caching, negative flows","email-authentication,security,workflow",knowledge/email-auth.md
12
- error-handling,Error Handling Checks,"Scoped exception handling, retry validation, telemetry logging","resilience,error-handling,stability",knowledge/error-handling.md
13
- visual-debugging,Visual Debugging Toolkit,"Trace viewer usage, artifact expectations, accessibility integration","debugging,dx,tooling",knowledge/visual-debugging.md
14
- risk-governance,Risk Governance,"Scoring matrix, category ownership, gate decision rules","risk,governance,gates",knowledge/risk-governance.md
15
- probability-impact,Probability and Impact Scale,"Shared definitions for scoring matrix and gate thresholds","risk,scoring,scale",knowledge/probability-impact.md
16
- test-quality,Test Quality Definition of Done,"Execution limits, isolation rules, green criteria","quality,definition-of-done,tests",knowledge/test-quality.md
17
- nfr-criteria,NFR Review Criteria,"Security, performance, reliability, maintainability status definitions","nfr,assessment,quality",knowledge/nfr-criteria.md
18
- test-levels,Test Levels Framework,"Guidelines for choosing unit, integration, or end-to-end coverage","testing,levels,selection",knowledge/test-levels-framework.md
19
- test-priorities,Test Priorities Matrix,"P0–P3 criteria, coverage targets, execution ordering","testing,prioritization,risk",knowledge/test-priorities-matrix.md
20
- test-healing-patterns,Test Healing Patterns,"Common failure patterns and automated fixes","healing,debugging,patterns",knowledge/test-healing-patterns.md
21
- selector-resilience,Selector Resilience,"Robust selector strategies and debugging techniques","selectors,locators,debugging",knowledge/selector-resilience.md
22
- timing-debugging,Timing Debugging,"Race condition identification and deterministic wait fixes","timing,async,debugging",knowledge/timing-debugging.md
@@ -1,112 +0,0 @@
1
- # Brainstorm Project - Workflow Instructions
2
-
3
- ```xml
4
- <critical>The workflow execution engine is governed by: {project_root}/.bmad/core/tasks/workflow.xml</critical>
5
- <critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
6
- <critical>Communicate all responses in {communication_language}</critical>
7
- <critical>This is a meta-workflow that orchestrates the CIS brainstorming workflow with project-specific context</critical>
8
- <critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
9
- <critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
10
-
11
- <workflow>
12
-
13
- <step n="1" goal="Validate workflow readiness" tag="workflow-status">
14
- <action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
15
-
16
- <check if="status file not found">
17
- <output>No workflow status file found. Brainstorming is optional - you can continue without status tracking.</output>
18
- <action>Set standalone_mode = true</action>
19
- </check>
20
-
21
- <check if="status file found">
22
- <action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
23
- <action>Parse workflow_status section</action>
24
- <action>Check status of "brainstorm-project" workflow</action>
25
- <action>Get project_level from YAML metadata</action>
26
- <action>Find first non-completed workflow (next expected workflow)</action>
27
-
28
- <check if="brainstorm-project status is file path (already completed)">
29
- <output>⚠️ Brainstorming session already completed: {{brainstorm-project status}}</output>
30
- <ask>Re-running will create a new session. Continue? (y/n)</ask>
31
- <check if="n">
32
- <output>Exiting. Use workflow-status to see your next step.</output>
33
- <action>Exit workflow</action>
34
- </check>
35
- </check>
36
-
37
- <check if="brainstorm-project is not the next expected workflow (anything after brainstorm-project is completed already)">
38
- <output>⚠️ Next expected workflow: {{next_workflow}}. Brainstorming is out of sequence.</output>
39
- <ask>Continue with brainstorming anyway? (y/n)</ask>
40
- <check if="n">
41
- <output>Exiting. Run {{next_workflow}} instead.</output>
42
- <action>Exit workflow</action>
43
- </check>
44
- </check>
45
-
46
- <action>Set standalone_mode = false</action>
47
- </check>
48
- </step>
49
-
50
- <step n="2" goal="Load project brainstorming context">
51
- <action>Read the project context document from: {project_context}</action>
52
- <action>This context provides project-specific guidance including:
53
- - Focus areas for project ideation
54
- - Key considerations for software/product projects
55
- - Recommended techniques for project brainstorming
56
- - Output structure guidance
57
- </action>
58
- </step>
59
-
60
- <step n="3" goal="Invoke core brainstorming with project context">
61
- <action>Execute the CIS brainstorming workflow with project context</action>
62
- <invoke-workflow path="{core_brainstorming}" data="{project_context}">
63
- The CIS brainstorming workflow will:
64
- - Present interactive brainstorming techniques menu
65
- - Guide the user through selected ideation methods
66
- - Generate and capture brainstorming session results
67
- - Save output to: {output_folder}/brainstorming-session-results-{{date}}.md
68
- </invoke-workflow>
69
- </step>
70
-
71
- <step n="4" goal="Update status and complete" tag="workflow-status">
72
- <check if="standalone_mode != true">
73
- <action>Load the FULL file: {output_folder}/bmm-workflow-status.yaml</action>
74
- <action>Find workflow_status key "brainstorm-project"</action>
75
- <critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
76
- <action>Update workflow_status["brainstorm-project"] = "{output_folder}/bmm-brainstorming-session-{{date}}.md"</action>
77
- <action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
78
-
79
- <action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
80
- <action>Determine next agent from path file based on next workflow</action>
81
- </check>
82
-
83
- <output>**✅ Brainstorming Session Complete, {user_name}!**
84
-
85
- **Session Results:**
86
-
87
- - Brainstorming results saved to: {output_folder}/bmm-brainstorming-session-{{date}}.md
88
-
89
- {{#if standalone_mode != true}}
90
- **Status Updated:**
91
-
92
- - Progress tracking updated
93
-
94
- **Next Steps:**
95
-
96
- - **Next required:** {{next_workflow}} ({{next_agent}} agent)
97
- - **Optional:** You can run other analysis workflows (research, product-brief) before proceeding
98
-
99
- Check status anytime with: `workflow-status`
100
- {{else}}
101
- **Next Steps:**
102
-
103
- Since no workflow is in progress:
104
-
105
- - Refer to the BMM workflow guide if unsure what to do next
106
- - Or run `workflow-init` to create a workflow path and get guided next steps
107
- {{/if}}
108
- </output>
109
- </step>
110
-
111
- </workflow>
112
- ```
@@ -1,25 +0,0 @@
1
- # Project Brainstorming Context
2
-
3
- This context guide provides project-specific considerations for brainstorming sessions focused on software and product development.
4
-
5
- ## Session Focus Areas
6
-
7
- When brainstorming for projects, consider exploring:
8
-
9
- - **User Problems and Pain Points** - What challenges do users face?
10
- - **Feature Ideas and Capabilities** - What could the product do?
11
- - **Technical Approaches** - How might we build it?
12
- - **User Experience** - How will users interact with it?
13
- - **Business Model and Value** - How does it create value?
14
- - **Market Differentiation** - What makes it unique?
15
- - **Technical Risks and Challenges** - What could go wrong?
16
- - **Success Metrics** - How will we measure success?
17
-
18
- ## Integration with Project Workflow
19
-
20
- Brainstorming sessions typically feed into:
21
-
22
- - **Product Briefs** - Initial product vision and strategy
23
- - **PRDs** - Detailed requirements documents
24
- - **Technical Specifications** - Architecture and implementation plans
25
- - **Research Activities** - Areas requiring further investigation