ma-agents 2.19.2 → 2.20.1

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 (571) hide show
  1. package/agents.code-workspace +11 -0
  2. package/bin/cli.js +250 -151
  3. package/docs/architecture.md +284 -0
  4. package/docs/development-guide.md +122 -0
  5. package/docs/index.md +48 -0
  6. package/docs/project-overview.md +56 -0
  7. package/docs/project-scan-report.json +50 -0
  8. package/docs/source-tree-analysis.md +84 -0
  9. package/docs/validation/bundled-installation-validation.md +52 -0
  10. package/lib/bmad-cache/bmb/.markdownlint-cli2.yaml +35 -0
  11. package/lib/bmad-cache/bmb/.nvmrc +1 -0
  12. package/lib/bmad-cache/bmb/.prettierignore +9 -0
  13. package/lib/bmad-cache/bmb/CNAME +1 -0
  14. package/lib/bmad-cache/bmb/LICENSE +30 -0
  15. package/lib/bmad-cache/bmb/README.md +63 -0
  16. package/lib/bmad-cache/bmb/eslint.config.mjs +141 -0
  17. package/lib/bmad-cache/bmb/package-lock.json +15283 -0
  18. package/lib/bmad-cache/bmb/package.json +96 -0
  19. package/lib/bmad-cache/bmb/prettier.config.mjs +32 -0
  20. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/bmad-manifest.json +62 -0
  21. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/recall_metrics.py +229 -0
  22. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/seed_tracker.py +156 -0
  23. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/symbol_stats.py +162 -0
  24. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/tests/test_recall_metrics.py +115 -0
  25. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/tests/test_seed_tracker.py +140 -0
  26. package/lib/bmad-cache/bmb/samples/bmad-agent-dream-weaver/scripts/tests/test_symbol_stats.py +113 -0
  27. package/lib/bmad-cache/bmb/samples/bmad-excalidraw/bmad-manifest.json +18 -0
  28. package/lib/bmad-cache/bmb/samples/bmad-excalidraw/scripts/generate_excalidraw.py +605 -0
  29. package/lib/bmad-cache/bmb/samples/bmad-excalidraw/scripts/tests/test_generate_excalidraw.py +360 -0
  30. package/lib/bmad-cache/bmb/samples/bmad-excalidraw/scripts/tests/test_validate_excalidraw.py +246 -0
  31. package/lib/bmad-cache/bmb/samples/bmad-excalidraw/scripts/validate_excalidraw.py +264 -0
  32. package/lib/bmad-cache/bmb/src/module-help.csv +7 -0
  33. package/lib/bmad-cache/bmb/src/module.yaml +20 -0
  34. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/bmad-manifest.json +24 -0
  35. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/bmad-skill-manifest.yaml +1 -0
  36. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/bmad-manifest-schema.json +103 -0
  37. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/generate-html-report.py +1002 -0
  38. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/manifest.py +420 -0
  39. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/prepass-execution-deps.py +368 -0
  40. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/prepass-prompt-metrics.py +476 -0
  41. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/prepass-structure-capabilities.py +636 -0
  42. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/scan-path-standards.py +253 -0
  43. package/lib/bmad-cache/bmb/src/skills/bmad-agent-builder/scripts/scan-scripts.py +745 -0
  44. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/bmad-manifest.json +23 -0
  45. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/bmad-skill-manifest.yaml +1 -0
  46. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/bmad-manifest-schema.json +103 -0
  47. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/generate-html-report.py +1002 -0
  48. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/manifest.py +420 -0
  49. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/prepass-execution-deps.py +313 -0
  50. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/prepass-prompt-metrics.py +285 -0
  51. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/prepass-workflow-integrity.py +485 -0
  52. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/scan-path-standards.py +213 -0
  53. package/lib/bmad-cache/bmb/src/skills/bmad-workflow-builder/scripts/scan-scripts.py +745 -0
  54. package/lib/bmad-cache/bmb/tools/build-docs.mjs +448 -0
  55. package/lib/bmad-cache/bmb/tools/validate-file-refs.mjs +657 -0
  56. package/lib/bmad-cache/bmb/website/astro.config.mjs +134 -0
  57. package/lib/bmad-cache/bmb/website/public/favicon.ico +0 -0
  58. package/lib/bmad-cache/bmb/website/public/img/bmad-dark.png +0 -0
  59. package/lib/bmad-cache/bmb/website/public/img/bmad-light.png +0 -0
  60. package/lib/bmad-cache/bmb/website/src/components/Banner.astro +56 -0
  61. package/lib/bmad-cache/bmb/website/src/components/Header.astro +94 -0
  62. package/lib/bmad-cache/bmb/website/src/components/MobileMenuFooter.astro +33 -0
  63. package/lib/bmad-cache/bmb/website/src/content/config.ts +6 -0
  64. package/lib/bmad-cache/bmb/website/src/content/docs +1 -0
  65. package/lib/bmad-cache/bmb/website/src/lib/site-url.mjs +25 -0
  66. package/lib/bmad-cache/bmb/website/src/rehype-base-paths.js +88 -0
  67. package/lib/bmad-cache/bmb/website/src/rehype-markdown-links.js +117 -0
  68. package/lib/bmad-cache/bmb/website/src/styles/custom.css +484 -0
  69. package/lib/bmad-cache/cache-manifest.json +30 -0
  70. package/lib/bmad-cache/cis/.markdownlint-cli2.yaml +35 -0
  71. package/lib/bmad-cache/cis/.nvmrc +1 -0
  72. package/lib/bmad-cache/cis/.prettierignore +9 -0
  73. package/lib/bmad-cache/cis/CNAME +1 -0
  74. package/lib/bmad-cache/cis/LICENSE +26 -0
  75. package/lib/bmad-cache/cis/README.md +105 -0
  76. package/lib/bmad-cache/cis/eslint.config.mjs +141 -0
  77. package/lib/bmad-cache/cis/package.json +92 -0
  78. package/lib/bmad-cache/cis/prettier.config.mjs +32 -0
  79. package/lib/bmad-cache/cis/src/agents/brainstorming-coach.agent.yaml +21 -0
  80. package/lib/bmad-cache/cis/src/agents/creative-problem-solver.agent.yaml +21 -0
  81. package/lib/bmad-cache/cis/src/agents/design-thinking-coach.agent.yaml +21 -0
  82. package/lib/bmad-cache/cis/src/agents/innovation-strategist.agent.yaml +21 -0
  83. package/lib/bmad-cache/cis/src/agents/presentation-master.agent.yaml +53 -0
  84. package/lib/bmad-cache/cis/src/agents/storyteller/storyteller.agent.yaml +25 -0
  85. package/lib/bmad-cache/cis/src/module-help.csv +6 -0
  86. package/lib/bmad-cache/cis/src/module.yaml +27 -0
  87. package/lib/bmad-cache/cis/src/teams/creative-squad.yaml +7 -0
  88. package/lib/bmad-cache/cis/src/teams/default-party.csv +12 -0
  89. package/lib/bmad-cache/cis/src/workflows/README.md +175 -0
  90. package/lib/bmad-cache/cis/src/workflows/bmad-cis-design-thinking/bmad-skill-manifest.yaml +1 -0
  91. package/lib/bmad-cache/cis/src/workflows/bmad-cis-design-thinking/design-methods.csv +31 -0
  92. package/lib/bmad-cache/cis/src/workflows/bmad-cis-innovation-strategy/bmad-skill-manifest.yaml +1 -0
  93. package/lib/bmad-cache/cis/src/workflows/bmad-cis-innovation-strategy/innovation-frameworks.csv +31 -0
  94. package/lib/bmad-cache/cis/src/workflows/bmad-cis-problem-solving/bmad-skill-manifest.yaml +1 -0
  95. package/lib/bmad-cache/cis/src/workflows/bmad-cis-problem-solving/solving-methods.csv +31 -0
  96. package/lib/bmad-cache/cis/src/workflows/bmad-cis-storytelling/bmad-skill-manifest.yaml +1 -0
  97. package/lib/bmad-cache/cis/src/workflows/bmad-cis-storytelling/story-types.csv +26 -0
  98. package/lib/bmad-cache/cis/tools/build-docs.mjs +448 -0
  99. package/lib/bmad-cache/cis/website/astro.config.mjs +134 -0
  100. package/lib/bmad-cache/cis/website/public/favicon.ico +0 -0
  101. package/lib/bmad-cache/cis/website/public/img/bmad-dark.png +0 -0
  102. package/lib/bmad-cache/cis/website/public/img/bmad-light.png +0 -0
  103. package/lib/bmad-cache/cis/website/src/components/Banner.astro +56 -0
  104. package/lib/bmad-cache/cis/website/src/components/Header.astro +94 -0
  105. package/lib/bmad-cache/cis/website/src/components/MobileMenuFooter.astro +33 -0
  106. package/lib/bmad-cache/cis/website/src/content/config.ts +6 -0
  107. package/lib/bmad-cache/cis/website/src/content/docs +1 -0
  108. package/lib/bmad-cache/cis/website/src/lib/site-url.mjs +25 -0
  109. package/lib/bmad-cache/cis/website/src/rehype-base-paths.js +88 -0
  110. package/lib/bmad-cache/cis/website/src/rehype-markdown-links.js +117 -0
  111. package/lib/bmad-cache/cis/website/src/styles/custom.css +484 -0
  112. package/lib/bmad-cache/gds/.markdownlint-cli2.yaml +35 -0
  113. package/lib/bmad-cache/gds/.nvmrc +1 -0
  114. package/lib/bmad-cache/gds/.prettierignore +9 -0
  115. package/lib/bmad-cache/gds/CNAME +1 -0
  116. package/lib/bmad-cache/gds/LICENSE +26 -0
  117. package/lib/bmad-cache/gds/README.md +121 -0
  118. package/lib/bmad-cache/gds/eslint.config.mjs +141 -0
  119. package/lib/bmad-cache/gds/package.json +92 -0
  120. package/lib/bmad-cache/gds/prettier.config.mjs +32 -0
  121. package/lib/bmad-cache/gds/src/agents/game-architect.agent.yaml +44 -0
  122. package/lib/bmad-cache/gds/src/agents/game-designer.agent.yaml +45 -0
  123. package/lib/bmad-cache/gds/src/agents/game-dev.agent.yaml +49 -0
  124. package/lib/bmad-cache/gds/src/agents/game-qa.agent.yaml +63 -0
  125. package/lib/bmad-cache/gds/src/agents/game-scrum-master.agent.yaml +52 -0
  126. package/lib/bmad-cache/gds/src/agents/game-solo-dev.agent.yaml +53 -0
  127. package/lib/bmad-cache/gds/src/agents/tech-writer/tech-writer.agent.yaml +45 -0
  128. package/lib/bmad-cache/gds/src/gametest/qa-index.csv +18 -0
  129. package/lib/bmad-cache/gds/src/module-help.csv +35 -0
  130. package/lib/bmad-cache/gds/src/module.yaml +71 -0
  131. package/lib/bmad-cache/gds/src/teams/default-party.csv +12 -0
  132. package/lib/bmad-cache/gds/src/teams/team-gamedev.yaml +29 -0
  133. package/lib/bmad-cache/gds/src/workflows/1-preproduction/brainstorm-game/bmad-skill-manifest.yaml +3 -0
  134. package/lib/bmad-cache/gds/src/workflows/1-preproduction/brainstorm-game/game-brain-methods.csv +26 -0
  135. package/lib/bmad-cache/gds/src/workflows/1-preproduction/game-brief/bmad-skill-manifest.yaml +3 -0
  136. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/bmad-skill-manifest.yaml +9 -0
  137. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/bmad-skill-manifest.yaml +1 -0
  138. package/lib/bmad-cache/gds/src/workflows/2-design/create-prd/bmad-skill-manifest.yaml +14 -0
  139. package/lib/bmad-cache/gds/src/workflows/2-design/create-prd/data/domain-complexity.csv +15 -0
  140. package/lib/bmad-cache/gds/src/workflows/2-design/create-prd/data/project-types.csv +11 -0
  141. package/lib/bmad-cache/gds/src/workflows/2-design/gdd/bmad-skill-manifest.yaml +3 -0
  142. package/lib/bmad-cache/gds/src/workflows/2-design/gdd/game-types.csv +25 -0
  143. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/bmad-skill-manifest.yaml +1 -0
  144. package/lib/bmad-cache/gds/src/workflows/2-design/narrative/bmad-skill-manifest.yaml +3 -0
  145. package/lib/bmad-cache/gds/src/workflows/3-technical/check-implementation-readiness/bmad-skill-manifest.yaml +3 -0
  146. package/lib/bmad-cache/gds/src/workflows/3-technical/create-epics-and-stories/bmad-skill-manifest.yaml +3 -0
  147. package/lib/bmad-cache/gds/src/workflows/3-technical/game-architecture/architecture-patterns.yaml +507 -0
  148. package/lib/bmad-cache/gds/src/workflows/3-technical/game-architecture/bmad-skill-manifest.yaml +3 -0
  149. package/lib/bmad-cache/gds/src/workflows/3-technical/game-architecture/decision-catalog.yaml +340 -0
  150. package/lib/bmad-cache/gds/src/workflows/3-technical/game-architecture/engine-mcps.yaml +270 -0
  151. package/lib/bmad-cache/gds/src/workflows/3-technical/game-architecture/pattern-categories.csv +13 -0
  152. package/lib/bmad-cache/gds/src/workflows/3-technical/generate-project-context/bmad-skill-manifest.yaml +3 -0
  153. package/lib/bmad-cache/gds/src/workflows/4-production/code-review/bmad-skill-manifest.yaml +3 -0
  154. package/lib/bmad-cache/gds/src/workflows/4-production/correct-course/bmad-skill-manifest.yaml +3 -0
  155. package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/bmad-skill-manifest.yaml +1 -0
  156. package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/bmad-skill-manifest.yaml +1 -0
  157. package/lib/bmad-cache/gds/src/workflows/4-production/retrospective/bmad-skill-manifest.yaml +3 -0
  158. package/lib/bmad-cache/gds/src/workflows/4-production/sprint-planning/bmad-skill-manifest.yaml +3 -0
  159. package/lib/bmad-cache/gds/src/workflows/4-production/sprint-planning/sprint-status-template.yaml +55 -0
  160. package/lib/bmad-cache/gds/src/workflows/4-production/sprint-status/bmad-skill-manifest.yaml +3 -0
  161. package/lib/bmad-cache/gds/src/workflows/document-project/bmad-skill-manifest.yaml +3 -0
  162. package/lib/bmad-cache/gds/src/workflows/document-project/documentation-requirements.csv +12 -0
  163. package/lib/bmad-cache/gds/src/workflows/document-project/templates/project-scan-report-schema.json +160 -0
  164. package/lib/bmad-cache/gds/src/workflows/gametest/automate/bmad-skill-manifest.yaml +3 -0
  165. package/lib/bmad-cache/gds/src/workflows/gametest/e2e-scaffold/bmad-skill-manifest.yaml +3 -0
  166. package/lib/bmad-cache/gds/src/workflows/gametest/performance/bmad-skill-manifest.yaml +3 -0
  167. package/lib/bmad-cache/gds/src/workflows/gametest/playtest-plan/bmad-skill-manifest.yaml +3 -0
  168. package/lib/bmad-cache/gds/src/workflows/gametest/test-design/bmad-skill-manifest.yaml +3 -0
  169. package/lib/bmad-cache/gds/src/workflows/gametest/test-framework/bmad-skill-manifest.yaml +3 -0
  170. package/lib/bmad-cache/gds/src/workflows/gametest/test-review/bmad-skill-manifest.yaml +3 -0
  171. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/bmad-skill-manifest.yaml +4 -0
  172. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev-new-preview/bmad-skill-manifest.yaml +4 -0
  173. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/quick-spec/bmad-skill-manifest.yaml +3 -0
  174. package/lib/bmad-cache/gds/tools/build-docs.mjs +450 -0
  175. package/lib/bmad-cache/gds/website/astro.config.mjs +134 -0
  176. package/lib/bmad-cache/gds/website/public/favicon.ico +0 -0
  177. package/lib/bmad-cache/gds/website/public/img/bmad-dark.png +0 -0
  178. package/lib/bmad-cache/gds/website/public/img/bmad-light.png +0 -0
  179. package/lib/bmad-cache/gds/website/src/components/Banner.astro +56 -0
  180. package/lib/bmad-cache/gds/website/src/components/Header.astro +94 -0
  181. package/lib/bmad-cache/gds/website/src/components/MobileMenuFooter.astro +33 -0
  182. package/lib/bmad-cache/gds/website/src/content/config.ts +6 -0
  183. package/lib/bmad-cache/gds/website/src/content/docs +1 -0
  184. package/lib/bmad-cache/gds/website/src/lib/site-url.mjs +25 -0
  185. package/lib/bmad-cache/gds/website/src/rehype-base-paths.js +88 -0
  186. package/lib/bmad-cache/gds/website/src/rehype-markdown-links.js +117 -0
  187. package/lib/bmad-cache/gds/website/src/styles/custom.css +484 -0
  188. package/lib/bmad-cache/tea/.coderabbit.yaml +40 -0
  189. package/lib/bmad-cache/tea/.husky/pre-commit +20 -0
  190. package/lib/bmad-cache/tea/.markdownlint-cli2.yaml +36 -0
  191. package/lib/bmad-cache/tea/.nvmrc +1 -0
  192. package/lib/bmad-cache/tea/.prettierignore +9 -0
  193. package/lib/bmad-cache/tea/CHANGELOG.md +253 -0
  194. package/lib/bmad-cache/tea/CONTRIBUTING.md +268 -0
  195. package/lib/bmad-cache/tea/LICENSE +26 -0
  196. package/lib/bmad-cache/tea/README.md +371 -0
  197. package/lib/bmad-cache/tea/SECURITY.md +85 -0
  198. package/lib/bmad-cache/tea/docs/404.md +20 -0
  199. package/lib/bmad-cache/tea/docs/MIGRATION.md +488 -0
  200. package/lib/bmad-cache/tea/docs/explanation/engagement-models.md +767 -0
  201. package/lib/bmad-cache/tea/docs/explanation/fixture-architecture.md +484 -0
  202. package/lib/bmad-cache/tea/docs/explanation/knowledge-base-system.md +601 -0
  203. package/lib/bmad-cache/tea/docs/explanation/network-first-patterns.md +884 -0
  204. package/lib/bmad-cache/tea/docs/explanation/risk-based-testing.md +628 -0
  205. package/lib/bmad-cache/tea/docs/explanation/step-file-architecture.md +599 -0
  206. package/lib/bmad-cache/tea/docs/explanation/subagent-architecture.md +189 -0
  207. package/lib/bmad-cache/tea/docs/explanation/tea-overview.md +474 -0
  208. package/lib/bmad-cache/tea/docs/explanation/test-quality-standards.md +965 -0
  209. package/lib/bmad-cache/tea/docs/explanation/testing-as-engineering.md +115 -0
  210. package/lib/bmad-cache/tea/docs/glossary/index.md +160 -0
  211. package/lib/bmad-cache/tea/docs/how-to/brownfield/use-tea-for-enterprise.md +571 -0
  212. package/lib/bmad-cache/tea/docs/how-to/brownfield/use-tea-with-existing-tests.md +631 -0
  213. package/lib/bmad-cache/tea/docs/how-to/customization/configure-browser-automation.md +243 -0
  214. package/lib/bmad-cache/tea/docs/how-to/customization/integrate-playwright-utils.md +846 -0
  215. package/lib/bmad-cache/tea/docs/how-to/workflows/run-atdd.md +464 -0
  216. package/lib/bmad-cache/tea/docs/how-to/workflows/run-automate.md +693 -0
  217. package/lib/bmad-cache/tea/docs/how-to/workflows/run-nfr-assess.md +731 -0
  218. package/lib/bmad-cache/tea/docs/how-to/workflows/run-test-design.md +144 -0
  219. package/lib/bmad-cache/tea/docs/how-to/workflows/run-test-review.md +634 -0
  220. package/lib/bmad-cache/tea/docs/how-to/workflows/run-trace.md +959 -0
  221. package/lib/bmad-cache/tea/docs/how-to/workflows/setup-ci.md +763 -0
  222. package/lib/bmad-cache/tea/docs/how-to/workflows/setup-test-framework.md +122 -0
  223. package/lib/bmad-cache/tea/docs/how-to/workflows/teach-me-testing.md +302 -0
  224. package/lib/bmad-cache/tea/docs/index.md +74 -0
  225. package/lib/bmad-cache/tea/docs/reference/commands.md +353 -0
  226. package/lib/bmad-cache/tea/docs/reference/configuration.md +1122 -0
  227. package/lib/bmad-cache/tea/docs/reference/knowledge-base.md +404 -0
  228. package/lib/bmad-cache/tea/docs/reference/troubleshooting.md +788 -0
  229. package/lib/bmad-cache/tea/docs/tutorials/learn-testing-tea-academy.md +266 -0
  230. package/lib/bmad-cache/tea/docs/tutorials/tea-lite-quickstart.md +465 -0
  231. package/lib/bmad-cache/tea/eslint.config.mjs +141 -0
  232. package/lib/bmad-cache/tea/package-lock.json +16046 -0
  233. package/lib/bmad-cache/tea/package.json +118 -0
  234. package/lib/bmad-cache/tea/prettier.config.mjs +32 -0
  235. package/lib/bmad-cache/tea/src/agents/tea.agent.yaml +67 -0
  236. package/lib/bmad-cache/tea/src/module-help.csv +10 -0
  237. package/lib/bmad-cache/tea/src/module.yaml +299 -0
  238. package/lib/bmad-cache/tea/src/teams/default-party.csv +2 -0
  239. package/lib/bmad-cache/tea/src/testarch/knowledge/adr-quality-readiness-checklist.md +377 -0
  240. package/lib/bmad-cache/tea/src/testarch/knowledge/api-request.md +563 -0
  241. package/lib/bmad-cache/tea/src/testarch/knowledge/api-testing-patterns.md +915 -0
  242. package/lib/bmad-cache/tea/src/testarch/knowledge/auth-session.md +548 -0
  243. package/lib/bmad-cache/tea/src/testarch/knowledge/burn-in.md +273 -0
  244. package/lib/bmad-cache/tea/src/testarch/knowledge/ci-burn-in.md +717 -0
  245. package/lib/bmad-cache/tea/src/testarch/knowledge/component-tdd.md +486 -0
  246. package/lib/bmad-cache/tea/src/testarch/knowledge/contract-testing.md +1050 -0
  247. package/lib/bmad-cache/tea/src/testarch/knowledge/data-factories.md +500 -0
  248. package/lib/bmad-cache/tea/src/testarch/knowledge/email-auth.md +721 -0
  249. package/lib/bmad-cache/tea/src/testarch/knowledge/error-handling.md +725 -0
  250. package/lib/bmad-cache/tea/src/testarch/knowledge/feature-flags.md +750 -0
  251. package/lib/bmad-cache/tea/src/testarch/knowledge/file-utils.md +456 -0
  252. package/lib/bmad-cache/tea/src/testarch/knowledge/fixture-architecture.md +401 -0
  253. package/lib/bmad-cache/tea/src/testarch/knowledge/fixtures-composition.md +382 -0
  254. package/lib/bmad-cache/tea/src/testarch/knowledge/intercept-network-call.md +426 -0
  255. package/lib/bmad-cache/tea/src/testarch/knowledge/log.md +426 -0
  256. package/lib/bmad-cache/tea/src/testarch/knowledge/network-error-monitor.md +401 -0
  257. package/lib/bmad-cache/tea/src/testarch/knowledge/network-first.md +486 -0
  258. package/lib/bmad-cache/tea/src/testarch/knowledge/network-recorder.md +527 -0
  259. package/lib/bmad-cache/tea/src/testarch/knowledge/nfr-criteria.md +670 -0
  260. package/lib/bmad-cache/tea/src/testarch/knowledge/overview.md +286 -0
  261. package/lib/bmad-cache/tea/src/testarch/knowledge/pact-consumer-di.md +310 -0
  262. package/lib/bmad-cache/tea/src/testarch/knowledge/pact-consumer-framework-setup.md +635 -0
  263. package/lib/bmad-cache/tea/src/testarch/knowledge/pact-mcp.md +204 -0
  264. package/lib/bmad-cache/tea/src/testarch/knowledge/pactjs-utils-consumer-helpers.md +270 -0
  265. package/lib/bmad-cache/tea/src/testarch/knowledge/pactjs-utils-overview.md +216 -0
  266. package/lib/bmad-cache/tea/src/testarch/knowledge/pactjs-utils-provider-verifier.md +315 -0
  267. package/lib/bmad-cache/tea/src/testarch/knowledge/pactjs-utils-request-filter.md +224 -0
  268. package/lib/bmad-cache/tea/src/testarch/knowledge/playwright-cli.md +165 -0
  269. package/lib/bmad-cache/tea/src/testarch/knowledge/playwright-config.md +730 -0
  270. package/lib/bmad-cache/tea/src/testarch/knowledge/probability-impact.md +601 -0
  271. package/lib/bmad-cache/tea/src/testarch/knowledge/recurse.md +421 -0
  272. package/lib/bmad-cache/tea/src/testarch/knowledge/risk-governance.md +615 -0
  273. package/lib/bmad-cache/tea/src/testarch/knowledge/selective-testing.md +732 -0
  274. package/lib/bmad-cache/tea/src/testarch/knowledge/selector-resilience.md +527 -0
  275. package/lib/bmad-cache/tea/src/testarch/knowledge/test-healing-patterns.md +644 -0
  276. package/lib/bmad-cache/tea/src/testarch/knowledge/test-levels-framework.md +473 -0
  277. package/lib/bmad-cache/tea/src/testarch/knowledge/test-priorities-matrix.md +373 -0
  278. package/lib/bmad-cache/tea/src/testarch/knowledge/test-quality.md +664 -0
  279. package/lib/bmad-cache/tea/src/testarch/knowledge/timing-debugging.md +372 -0
  280. package/lib/bmad-cache/tea/src/testarch/knowledge/visual-debugging.md +524 -0
  281. package/lib/bmad-cache/tea/src/testarch/tea-index.csv +43 -0
  282. package/lib/bmad-cache/tea/src/workflows/testarch/README.md +74 -0
  283. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/SKILL.md +6 -0
  284. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/bmad-skill-manifest.yaml +1 -0
  285. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/checklist.md +197 -0
  286. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/curriculum.yaml +129 -0
  287. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/quiz-questions.yaml +206 -0
  288. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/role-paths.yaml +136 -0
  289. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/session-content-map.yaml +207 -0
  290. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/data/tea-resources-index.yaml +359 -0
  291. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/instructions.md +130 -0
  292. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01-init.md +235 -0
  293. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01b-continue.md +147 -0
  294. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-02-assess.md +258 -0
  295. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-03-session-menu.md +219 -0
  296. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-01.md +460 -0
  297. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-02.md +465 -0
  298. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-03.md +301 -0
  299. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-04.md +234 -0
  300. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-05.md +234 -0
  301. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-06.md +209 -0
  302. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-07.md +212 -0
  303. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-05-completion.md +339 -0
  304. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-01-assess-workflow.md +141 -0
  305. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-02-apply-edits.md +122 -0
  306. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-v/step-v-01-validate.md +263 -0
  307. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/templates/certificate-template.md +86 -0
  308. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/templates/progress-template.yaml +95 -0
  309. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/templates/session-notes-template.md +83 -0
  310. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/workflow-plan-teach-me-testing.md +950 -0
  311. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/workflow.md +90 -0
  312. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/SKILL.md +6 -0
  313. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/atdd-checklist-template.md +371 -0
  314. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/bmad-skill-manifest.yaml +1 -0
  315. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/checklist.md +374 -0
  316. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/instructions.md +45 -0
  317. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-01-preflight-and-context.md +226 -0
  318. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-01b-resume.md +96 -0
  319. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-02-generation-mode.md +125 -0
  320. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-03-test-strategy.md +110 -0
  321. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04-generate-tests.md +334 -0
  322. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04a-subagent-api-failing.md +286 -0
  323. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04b-subagent-e2e-failing.md +244 -0
  324. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04c-aggregate.md +370 -0
  325. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-05-validate-and-complete.md +106 -0
  326. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-01-assess.md +65 -0
  327. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-02-apply-edit.md +60 -0
  328. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-v/step-01-validate.md +67 -0
  329. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/validation-report-20260127-095021.md +73 -0
  330. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/validation-report-20260127-102401.md +116 -0
  331. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/workflow-plan.md +21 -0
  332. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/workflow.md +41 -0
  333. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/workflow.yaml +46 -0
  334. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/SKILL.md +6 -0
  335. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/bmad-skill-manifest.yaml +1 -0
  336. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/checklist.md +611 -0
  337. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/instructions.md +50 -0
  338. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-01-preflight-and-context.md +237 -0
  339. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-01b-resume.md +94 -0
  340. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-02-identify-targets.md +169 -0
  341. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03-generate-tests.md +394 -0
  342. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03a-subagent-api.md +263 -0
  343. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03b-subagent-backend.md +246 -0
  344. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03b-subagent-e2e.md +213 -0
  345. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03c-aggregate.md +393 -0
  346. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-04-validate-and-summarize.md +106 -0
  347. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-01-assess.md +65 -0
  348. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-02-apply-edit.md +60 -0
  349. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-v/step-01-validate.md +67 -0
  350. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/validation-report-20260127-095021.md +72 -0
  351. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/validation-report-20260127-102401.md +114 -0
  352. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/workflow-plan.md +20 -0
  353. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/workflow.md +41 -0
  354. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/workflow.yaml +53 -0
  355. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/SKILL.md +6 -0
  356. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/azure-pipelines-template.yaml +155 -0
  357. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/bmad-skill-manifest.yaml +1 -0
  358. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/checklist.md +289 -0
  359. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/github-actions-template.yaml +328 -0
  360. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/gitlab-ci-template.yaml +158 -0
  361. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/harness-pipeline-template.yaml +159 -0
  362. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/instructions.md +45 -0
  363. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/jenkins-pipeline-template.groovy +129 -0
  364. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-01-preflight.md +158 -0
  365. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-01b-resume.md +110 -0
  366. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-02-generate-pipeline.md +279 -0
  367. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-03-configure-quality-gates.md +135 -0
  368. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-04-validate-and-summary.md +92 -0
  369. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-01-assess.md +65 -0
  370. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-02-apply-edit.md +60 -0
  371. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-v/step-01-validate.md +81 -0
  372. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/validation-report-20260127-095021.md +72 -0
  373. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/validation-report-20260127-102401.md +114 -0
  374. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/workflow-plan.md +20 -0
  375. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/workflow.md +41 -0
  376. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/workflow.yaml +48 -0
  377. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/SKILL.md +6 -0
  378. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/bmad-skill-manifest.yaml +1 -0
  379. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/checklist.md +345 -0
  380. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/instructions.md +45 -0
  381. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-01-preflight.md +132 -0
  382. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-01b-resume.md +116 -0
  383. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-02-select-framework.md +117 -0
  384. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-03-scaffold-framework.md +323 -0
  385. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-04-docs-and-scripts.md +105 -0
  386. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-05-validate-and-summary.md +93 -0
  387. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-01-assess.md +65 -0
  388. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-02-apply-edit.md +60 -0
  389. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-v/step-01-validate.md +67 -0
  390. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/validation-report-20260127-095021.md +73 -0
  391. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/validation-report-20260127-102401.md +116 -0
  392. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/workflow-plan.md +22 -0
  393. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/workflow.md +41 -0
  394. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/workflow.yaml +48 -0
  395. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/SKILL.md +6 -0
  396. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/bmad-skill-manifest.yaml +1 -0
  397. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/checklist.md +407 -0
  398. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/instructions.md +43 -0
  399. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/nfr-report-template.md +470 -0
  400. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md +138 -0
  401. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01b-resume.md +106 -0
  402. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-02-define-thresholds.md +107 -0
  403. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-03-gather-evidence.md +108 -0
  404. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04-evaluate-and-score.md +254 -0
  405. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04a-subagent-security.md +138 -0
  406. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04b-subagent-performance.md +84 -0
  407. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04c-subagent-reliability.md +85 -0
  408. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04d-subagent-scalability.md +88 -0
  409. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +264 -0
  410. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-05-generate-report.md +108 -0
  411. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-01-assess.md +65 -0
  412. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-02-apply-edit.md +60 -0
  413. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-v/step-01-validate.md +67 -0
  414. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/validation-report-20260127-095021.md +73 -0
  415. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/validation-report-20260127-102401.md +116 -0
  416. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow-plan.md +19 -0
  417. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow.md +41 -0
  418. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow.yaml +48 -0
  419. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/SKILL.md +6 -0
  420. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/bmad-skill-manifest.yaml +1 -0
  421. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/checklist.md +464 -0
  422. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/instructions.md +105 -0
  423. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01-detect-mode.md +134 -0
  424. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01b-resume.md +102 -0
  425. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-02-load-context.md +242 -0
  426. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-03-risk-and-testability.md +110 -0
  427. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-04-coverage-plan.md +123 -0
  428. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-05-generate-output.md +222 -0
  429. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-01-assess.md +65 -0
  430. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-02-apply-edit.md +60 -0
  431. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-v/step-01-validate.md +67 -0
  432. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-architecture-template.md +230 -0
  433. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-handoff-template.md +70 -0
  434. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-qa-template.md +396 -0
  435. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-template.md +344 -0
  436. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/validation-report-20260127-095021.md +73 -0
  437. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/validation-report-20260127-102401.md +116 -0
  438. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/workflow-plan.md +22 -0
  439. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/workflow.md +41 -0
  440. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/workflow.yaml +77 -0
  441. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/SKILL.md +6 -0
  442. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/bmad-skill-manifest.yaml +1 -0
  443. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/checklist.md +475 -0
  444. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/instructions.md +45 -0
  445. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-01-load-context.md +197 -0
  446. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-01b-resume.md +104 -0
  447. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-02-discover-tests.md +113 -0
  448. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03-quality-evaluation.md +274 -0
  449. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03a-subagent-determinism.md +214 -0
  450. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03b-subagent-isolation.md +125 -0
  451. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03c-subagent-maintainability.md +102 -0
  452. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03e-subagent-performance.md +117 -0
  453. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03f-aggregate-scores.md +277 -0
  454. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-04-generate-report.md +111 -0
  455. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-01-assess.md +65 -0
  456. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-02-apply-edit.md +60 -0
  457. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-v/step-01-validate.md +67 -0
  458. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/test-review-template.md +387 -0
  459. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/validation-report-20260127-095021.md +72 -0
  460. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/validation-report-20260127-102401.md +114 -0
  461. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/workflow-plan.md +18 -0
  462. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/workflow.md +41 -0
  463. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/workflow.yaml +48 -0
  464. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/SKILL.md +6 -0
  465. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/bmad-skill-manifest.yaml +1 -0
  466. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/checklist.md +647 -0
  467. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/instructions.md +43 -0
  468. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01-load-context.md +105 -0
  469. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01b-resume.md +102 -0
  470. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-02-discover-tests.md +112 -0
  471. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-03-map-criteria.md +97 -0
  472. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-04-analyze-gaps.md +421 -0
  473. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-05-gate-decision.md +266 -0
  474. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-01-assess.md +65 -0
  475. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-02-apply-edit.md +60 -0
  476. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-v/step-01-validate.md +67 -0
  477. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/trace-template.md +708 -0
  478. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/validation-report-20260127-095021.md +73 -0
  479. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/validation-report-20260127-102401.md +116 -0
  480. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow-plan.md +21 -0
  481. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.md +41 -0
  482. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.yaml +56 -0
  483. package/lib/bmad-cache/tea/test/README.md +23 -0
  484. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +27 -0
  485. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +30 -0
  486. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +22 -0
  487. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +20 -0
  488. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +25 -0
  489. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +24 -0
  490. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +25 -0
  491. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
  492. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
  493. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +31 -0
  494. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +25 -0
  495. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +25 -0
  496. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +25 -0
  497. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +25 -0
  498. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
  499. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
  500. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +27 -0
  501. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
  502. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +24 -0
  503. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +27 -0
  504. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +27 -0
  505. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +24 -0
  506. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +29 -0
  507. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +31 -0
  508. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +28 -0
  509. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +28 -0
  510. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
  511. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +28 -0
  512. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
  513. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
  514. package/lib/bmad-cache/tea/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
  515. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +24 -0
  516. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +22 -0
  517. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +27 -0
  518. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +31 -0
  519. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +22 -0
  520. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +38 -0
  521. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +24 -0
  522. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
  523. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +34 -0
  524. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
  525. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +24 -0
  526. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +24 -0
  527. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +24 -0
  528. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
  529. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
  530. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +24 -0
  531. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +24 -0
  532. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +22 -0
  533. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +28 -0
  534. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +30 -0
  535. package/lib/bmad-cache/tea/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +24 -0
  536. package/lib/bmad-cache/tea/test/schema/agent.js +491 -0
  537. package/lib/bmad-cache/tea/test/test-agent-schema.js +387 -0
  538. package/lib/bmad-cache/tea/test/test-installation-components.js +214 -0
  539. package/lib/bmad-cache/tea/test/test-knowledge-base.js +208 -0
  540. package/lib/bmad-cache/tea/test/unit-test-schema.js +133 -0
  541. package/lib/bmad-cache/tea/test/validate-agent-schema.js +110 -0
  542. package/lib/bmad-cache/tea/tools/build-docs.js +575 -0
  543. package/lib/bmad-cache/tea/tools/fix-doc-links.js +288 -0
  544. package/lib/bmad-cache/tea/tools/schema/agent.js +491 -0
  545. package/lib/bmad-cache/tea/tools/validate-agent-schema.js +111 -0
  546. package/lib/bmad-cache/tea/tools/validate-doc-links.js +371 -0
  547. package/lib/bmad-cache/tea/tools/validate-tea-workflow-descriptions.js +122 -0
  548. package/lib/bmad-cache/tea/tools/verify-paths.js +100 -0
  549. package/lib/bmad-cache/tea/website/README.md +137 -0
  550. package/lib/bmad-cache/tea/website/astro.config.mjs +179 -0
  551. package/lib/bmad-cache/tea/website/package-lock.json +6856 -0
  552. package/lib/bmad-cache/tea/website/package.json +24 -0
  553. package/lib/bmad-cache/tea/website/public/favicon.ico +0 -0
  554. package/lib/bmad-cache/tea/website/public/img/tea-logo.svg +7 -0
  555. package/lib/bmad-cache/tea/website/public/robots.txt +37 -0
  556. package/lib/bmad-cache/tea/website/src/components/Banner.astro +59 -0
  557. package/lib/bmad-cache/tea/website/src/components/Header.astro +121 -0
  558. package/lib/bmad-cache/tea/website/src/components/MobileMenuFooter.astro +53 -0
  559. package/lib/bmad-cache/tea/website/src/content/config.ts +6 -0
  560. package/lib/bmad-cache/tea/website/src/content/docs +1 -0
  561. package/lib/bmad-cache/tea/website/src/lib/site-url.js +25 -0
  562. package/lib/bmad-cache/tea/website/src/pages/404.astro +11 -0
  563. package/lib/bmad-cache/tea/website/src/rehype-base-paths.js +89 -0
  564. package/lib/bmad-cache/tea/website/src/rehype-markdown-links.js +117 -0
  565. package/lib/bmad-cache/tea/website/src/styles/custom.css +499 -0
  566. package/lib/bmad-cache/tea/website/tsconfig.json +9 -0
  567. package/lib/bmad.js +76 -10
  568. package/lib/installer.js +23 -1
  569. package/package.json +4 -2
  570. package/scripts/build-bmad-cache.js +288 -0
  571. package/test/yes-flag.test.js +193 -0
@@ -0,0 +1,70 @@
1
+ ---
2
+ title: 'TEA Test Design → BMAD Handoff Document'
3
+ version: '1.0'
4
+ workflowType: 'testarch-test-design-handoff'
5
+ inputDocuments: []
6
+ sourceWorkflow: 'testarch-test-design'
7
+ generatedBy: 'TEA Master Test Architect'
8
+ generatedAt: '{timestamp}'
9
+ projectName: '{project_name}'
10
+ ---
11
+
12
+ # TEA → BMAD Integration Handoff
13
+
14
+ ## Purpose
15
+
16
+ This document bridges TEA's test design outputs with BMAD's epic/story decomposition workflow (`create-epics-and-stories`). It provides structured integration guidance so that quality requirements, risk assessments, and test strategies flow into implementation planning.
17
+
18
+ ## TEA Artifacts Inventory
19
+
20
+ | Artifact | Path | BMAD Integration Point |
21
+ | -------------------- | ------------------------- | ---------------------------------------------------- |
22
+ | Test Design Document | `{test_design_path}` | Epic quality requirements, story acceptance criteria |
23
+ | Risk Assessment | (embedded in test design) | Epic risk classification, story priority |
24
+ | Coverage Strategy | (embedded in test design) | Story test requirements |
25
+
26
+ ## Epic-Level Integration Guidance
27
+
28
+ ### Risk References
29
+
30
+ <!-- TEA will populate: P0/P1 risks that should appear as epic-level quality gates -->
31
+
32
+ ### Quality Gates
33
+
34
+ <!-- TEA will populate: recommended quality gates per epic based on risk assessment -->
35
+
36
+ ## Story-Level Integration Guidance
37
+
38
+ ### P0/P1 Test Scenarios → Story Acceptance Criteria
39
+
40
+ <!-- TEA will populate: critical test scenarios that MUST be acceptance criteria -->
41
+
42
+ ### Data-TestId Requirements
43
+
44
+ <!-- TEA will populate: recommended data-testid attributes for testability -->
45
+
46
+ ## Risk-to-Story Mapping
47
+
48
+ | Risk ID | Category | P×I | Recommended Story/Epic | Test Level |
49
+ | ------- | -------- | --- | ---------------------- | ---------- |
50
+
51
+ <!-- TEA will populate from risk assessment -->
52
+
53
+ ## Recommended BMAD → TEA Workflow Sequence
54
+
55
+ 1. **TEA Test Design** (`TD`) → produces this handoff document
56
+ 2. **BMAD Create Epics & Stories** → consumes this handoff, embeds quality requirements
57
+ 3. **TEA ATDD** (`AT`) → generates acceptance tests per story
58
+ 4. **BMAD Implementation** → developers implement with test-first guidance
59
+ 5. **TEA Automate** (`TA`) → generates full test suite
60
+ 6. **TEA Trace** (`TR`) → validates coverage completeness
61
+
62
+ ## Phase Transition Quality Gates
63
+
64
+ | From Phase | To Phase | Gate Criteria |
65
+ | ------------------- | ------------------- | ------------------------------------------------------ |
66
+ | Test Design | Epic/Story Creation | All P0 risks have mitigation strategy |
67
+ | Epic/Story Creation | ATDD | Stories have acceptance criteria from test design |
68
+ | ATDD | Implementation | Failing acceptance tests exist for all P0/P1 scenarios |
69
+ | Implementation | Test Automation | All acceptance tests pass |
70
+ | Test Automation | Release | Trace matrix shows ≥80% coverage of P0/P1 requirements |
@@ -0,0 +1,396 @@
1
+ ---
2
+ stepsCompleted: []
3
+ lastStep: ''
4
+ lastSaved: ''
5
+ workflowType: 'testarch-test-design'
6
+ inputDocuments: []
7
+ ---
8
+
9
+ # Test Design for QA: {Feature Name}
10
+
11
+ **Purpose:** Test execution recipe for QA team. Defines what to test, how to test it, and what QA needs from other teams.
12
+
13
+ **Date:** {date}
14
+ **Author:** {author}
15
+ **Status:** Draft
16
+ **Project:** {project_name}
17
+
18
+ **Related:** See Architecture doc (test-design-architecture.md) for testability concerns and architectural blockers.
19
+
20
+ ---
21
+
22
+ ## Executive Summary
23
+
24
+ **Scope:** {Brief description of testing scope}
25
+
26
+ **Risk Summary:**
27
+
28
+ - Total Risks: {N} ({X} high-priority score ≥6, {Y} medium, {Z} low)
29
+ - Critical Categories: {Categories with most high-priority risks}
30
+
31
+ **Coverage Summary:**
32
+
33
+ - P0 tests: ~{N} (critical paths, security)
34
+ - P1 tests: ~{N} (important features, integration)
35
+ - P2 tests: ~{N} (edge cases, regression)
36
+ - P3 tests: ~{N} (exploratory, benchmarks)
37
+ - **Total**: ~{N} tests (~{X}-{Y} weeks with 1 QA)
38
+
39
+ ---
40
+
41
+ ## Not in Scope
42
+
43
+ **Components or systems explicitly excluded from this test plan:**
44
+
45
+ | Item | Reasoning | Mitigation |
46
+ | ---------- | --------------------------- | ------------------------------------------------------------------------------- |
47
+ | **{Item}** | {Why excluded from testing} | {How risk is mitigated, e.g., "validated manually", "covered by upstream team"} |
48
+
49
+ **Note:** Items listed here have been reviewed and accepted as out-of-scope by QA, Dev, and PM.
50
+
51
+ ---
52
+
53
+ ## Dependencies & Test Blockers
54
+
55
+ **CRITICAL:** QA cannot proceed without these items from other teams.
56
+
57
+ ### Backend/Architecture Dependencies (Pre-Implementation)
58
+
59
+ **Source:** See Architecture doc "Quick Guide" for detailed mitigation plans
60
+
61
+ 1. **{Dependency 1}** - {Team} - {Timeline}
62
+ - {What QA needs}
63
+ - {Why it blocks testing}
64
+
65
+ 2. **{Dependency 2}** - {Team} - {Timeline}
66
+ - {What QA needs}
67
+ - {Why it blocks testing}
68
+
69
+ ### QA Infrastructure Setup (Pre-Implementation)
70
+
71
+ 1. **Test Data Factories** - QA
72
+ - {Entity} factory with faker-based randomization
73
+ - Auto-cleanup fixtures for parallel safety
74
+
75
+ 2. **Test Environments** - QA
76
+ - Local: {Setup details}
77
+ - CI/CD: {Setup details}
78
+ - Staging: {Setup details}
79
+
80
+ **Example factory pattern:**
81
+
82
+ ```typescript
83
+ import { test } from '@seontechnologies/playwright-utils/api-request/fixtures';
84
+ import { expect } from '@playwright/test';
85
+ import { faker } from '@faker-js/faker';
86
+
87
+ test('example test @p0', async ({ apiRequest }) => {
88
+ const testData = {
89
+ id: `test-${faker.string.uuid()}`,
90
+ email: faker.internet.email(),
91
+ };
92
+
93
+ const { status } = await apiRequest({
94
+ method: 'POST',
95
+ path: '/api/resource',
96
+ body: testData,
97
+ });
98
+
99
+ expect(status).toBe(201);
100
+ });
101
+ ```
102
+
103
+ ---
104
+
105
+ ## Risk Assessment
106
+
107
+ **Note:** Full risk details in Architecture doc. This section summarizes risks relevant to QA test planning.
108
+
109
+ ### High-Priority Risks (Score ≥6)
110
+
111
+ | Risk ID | Category | Description | Score | QA Test Coverage |
112
+ | ---------- | -------- | ------------------- | ----------- | ---------------------------- |
113
+ | **{R-ID}** | {CAT} | {Brief description} | **{Score}** | {How QA validates this risk} |
114
+
115
+ ### Medium/Low-Priority Risks
116
+
117
+ | Risk ID | Category | Description | Score | QA Test Coverage |
118
+ | ------- | -------- | ------------------- | ------- | ---------------------------- |
119
+ | {R-ID} | {CAT} | {Brief description} | {Score} | {How QA validates this risk} |
120
+
121
+ ---
122
+
123
+ ## Entry Criteria
124
+
125
+ **QA testing cannot begin until ALL of the following are met:**
126
+
127
+ - [ ] All requirements and assumptions agreed upon by QA, Dev, PM
128
+ - [ ] Test environments provisioned and accessible
129
+ - [ ] Test data factories ready or seed data available
130
+ - [ ] Pre-implementation blockers resolved (see Dependencies section)
131
+ - [ ] Feature deployed to test environment
132
+ - [ ] {Additional project-specific entry criteria}
133
+
134
+ ## Exit Criteria
135
+
136
+ **Testing phase is complete when ALL of the following are met:**
137
+
138
+ - [ ] All P0 tests passing
139
+ - [ ] All P1 tests passing (or failures triaged and accepted)
140
+ - [ ] No open high-priority / high-severity bugs
141
+ - [ ] Test coverage agreed as sufficient by QA Lead and Dev Lead
142
+ - [ ] Performance baselines met (if applicable)
143
+ - [ ] {Additional project-specific exit criteria}
144
+
145
+ ---
146
+
147
+ ## Project Team (Optional)
148
+
149
+ **Include only if roles/names are known or responsibility mapping is needed; otherwise omit.**
150
+
151
+ | Name | Role | Testing Responsibilities |
152
+ | ------ | --------- | ------------------------------------------------------------- |
153
+ | {Name} | QA Lead | Test strategy, E2E/API test implementation, test review |
154
+ | {Name} | Dev Lead | Unit tests, integration test support, testability hooks |
155
+ | {Name} | PM | Requirements clarification, acceptance criteria, UAT sign-off |
156
+ | {Name} | Architect | Testability review, NFR guidance, environment provisioning |
157
+
158
+ ---
159
+
160
+ ## Test Coverage Plan
161
+
162
+ **IMPORTANT:** P0/P1/P2/P3 = **priority and risk level** (what to focus on if time-constrained), NOT execution timing. See "Execution Strategy" for when tests run.
163
+
164
+ ### P0 (Critical)
165
+
166
+ **Criteria:** Blocks core functionality + High risk (≥6) + No workaround + Affects majority of users
167
+
168
+ | Test ID | Requirement | Test Level | Risk Link | Notes |
169
+ | ---------- | ------------- | ---------- | --------- | ------- |
170
+ | **P0-001** | {Requirement} | {Level} | {R-ID} | {Notes} |
171
+ | **P0-002** | {Requirement} | {Level} | {R-ID} | {Notes} |
172
+
173
+ **Total P0:** ~{N} tests
174
+
175
+ ---
176
+
177
+ ### P1 (High)
178
+
179
+ **Criteria:** Important features + Medium risk (3-4) + Common workflows + Workaround exists but difficult
180
+
181
+ | Test ID | Requirement | Test Level | Risk Link | Notes |
182
+ | ---------- | ------------- | ---------- | --------- | ------- |
183
+ | **P1-001** | {Requirement} | {Level} | {R-ID} | {Notes} |
184
+ | **P1-002** | {Requirement} | {Level} | {R-ID} | {Notes} |
185
+
186
+ **Total P1:** ~{N} tests
187
+
188
+ ---
189
+
190
+ ### P2 (Medium)
191
+
192
+ **Criteria:** Secondary features + Low risk (1-2) + Edge cases + Regression prevention
193
+
194
+ | Test ID | Requirement | Test Level | Risk Link | Notes |
195
+ | ---------- | ------------- | ---------- | --------- | ------- |
196
+ | **P2-001** | {Requirement} | {Level} | {R-ID} | {Notes} |
197
+
198
+ **Total P2:** ~{N} tests
199
+
200
+ ---
201
+
202
+ ### P3 (Low)
203
+
204
+ **Criteria:** Nice-to-have + Exploratory + Performance benchmarks + Documentation validation
205
+
206
+ | Test ID | Requirement | Test Level | Notes |
207
+ | ---------- | ------------- | ---------- | ------- |
208
+ | **P3-001** | {Requirement} | {Level} | {Notes} |
209
+
210
+ **Total P3:** ~{N} tests
211
+
212
+ ---
213
+
214
+ ## Execution Strategy
215
+
216
+ **Philosophy:** Run everything in PRs unless there's significant infrastructure overhead. Playwright with parallelization is extremely fast (100s of tests in ~10-15 min).
217
+
218
+ **Organized by TOOL TYPE:**
219
+
220
+ ### Every PR: Playwright Tests (~10-15 min)
221
+
222
+ **All functional tests** (from any priority level):
223
+
224
+ - All E2E, API, integration, unit tests using Playwright
225
+ - Parallelized across {N} shards
226
+ - Total: ~{N} Playwright tests (includes P0, P1, P2, P3)
227
+
228
+ **Why run in PRs:** Fast feedback, no expensive infrastructure
229
+
230
+ ### Nightly: k6 Performance Tests (~30-60 min)
231
+
232
+ **All performance tests** (from any priority level):
233
+
234
+ - Load, stress, spike, endurance tests
235
+ - Total: ~{N} k6 tests (may include P0, P1, P2)
236
+
237
+ **Why defer to nightly:** Expensive infrastructure (k6 Cloud), long-running (10-40 min per test)
238
+
239
+ ### Weekly: Chaos & Long-Running (~hours)
240
+
241
+ **Special infrastructure tests** (from any priority level):
242
+
243
+ - Multi-region failover (requires AWS Fault Injection Simulator)
244
+ - Disaster recovery (backup restore, 4+ hours)
245
+ - Endurance tests (4+ hours runtime)
246
+
247
+ **Why defer to weekly:** Very expensive infrastructure, very long-running, infrequent validation sufficient
248
+
249
+ **Manual tests** (excluded from automation):
250
+
251
+ - DevOps validation (deployment, monitoring)
252
+ - Finance validation (cost alerts)
253
+ - Documentation validation
254
+
255
+ ---
256
+
257
+ ## QA Effort Estimate
258
+
259
+ **QA test development effort only** (excludes DevOps, Backend, Data Eng, Finance work):
260
+
261
+ | Priority | Count | Effort Range | Notes |
262
+ | --------- | ----- | ------------------ | ------------------------------------------------- |
263
+ | P0 | ~{N} | ~{X}-{Y} weeks | Complex setup (security, performance, multi-step) |
264
+ | P1 | ~{N} | ~{X}-{Y} weeks | Standard coverage (integration, API tests) |
265
+ | P2 | ~{N} | ~{X}-{Y} days | Edge cases, simple validation |
266
+ | P3 | ~{N} | ~{X}-{Y} days | Exploratory, benchmarks |
267
+ | **Total** | ~{N} | **~{X}-{Y} weeks** | **1 QA engineer, full-time** |
268
+
269
+ **Assumptions:**
270
+
271
+ - Includes test design, implementation, debugging, CI integration
272
+ - Excludes ongoing maintenance (~10% effort)
273
+ - Assumes test infrastructure (factories, fixtures) ready
274
+
275
+ **Dependencies from other teams:**
276
+
277
+ - See "Dependencies & Test Blockers" section for what QA needs from Backend, DevOps, Data Eng
278
+
279
+ ---
280
+
281
+ ## Implementation Planning Handoff (Optional)
282
+
283
+ **Include only if this test design produces implementation tasks that must be scheduled.**
284
+
285
+ **Use this to inform implementation planning; if no dedicated QA, assign to Dev owners.**
286
+
287
+ | Work Item | Owner | Target Milestone (Optional) | Dependencies/Notes |
288
+ | ----------- | ------------ | --------------------------- | ------------------ |
289
+ | {Work item} | {QA/Dev/etc} | {Milestone or date} | {Notes} |
290
+ | {Work item} | {QA/Dev/etc} | {Milestone or date} | {Notes} |
291
+
292
+ ---
293
+
294
+ ## Tooling & Access
295
+
296
+ **Include only if non-standard tools or access requests are required.**
297
+
298
+ | Tool or Service | Purpose | Access Required | Status |
299
+ | ----------------- | --------- | --------------- | ----------------- |
300
+ | {Tool or Service} | {Purpose} | {Access needed} | {Ready / Pending} |
301
+ | {Tool or Service} | {Purpose} | {Access needed} | {Ready / Pending} |
302
+
303
+ **Access requests needed (if any):**
304
+
305
+ - [ ] {Access to request}
306
+
307
+ ---
308
+
309
+ ## Interworking & Regression
310
+
311
+ **Services and components impacted by this feature:**
312
+
313
+ | Service/Component | Impact | Regression Scope | Validation Steps |
314
+ | ----------------- | ------------------- | ------------------------------- | ----------------------------- |
315
+ | **{Service}** | {How it's affected} | {What existing tests must pass} | {How to verify no regression} |
316
+
317
+ **Regression test strategy:**
318
+
319
+ - {Describe which existing test suites must pass before release}
320
+ - {Note any cross-team coordination needed for regression validation}
321
+
322
+ ---
323
+
324
+ ## Appendix A: Code Examples & Tagging
325
+
326
+ **Playwright Tags for Selective Execution:**
327
+
328
+ ```typescript
329
+ import { test } from '@seontechnologies/playwright-utils/api-request/fixtures';
330
+ import { expect } from '@playwright/test';
331
+
332
+ // P0 critical test
333
+ test('@P0 @API @Security unauthenticated request returns 401', async ({ apiRequest }) => {
334
+ const { status, body } = await apiRequest({
335
+ method: 'POST',
336
+ path: '/api/endpoint',
337
+ body: { data: 'test' },
338
+ skipAuth: true,
339
+ });
340
+
341
+ expect(status).toBe(401);
342
+ expect(body.error).toContain('unauthorized');
343
+ });
344
+
345
+ // P1 integration test
346
+ test('@P1 @Integration data syncs correctly', async ({ apiRequest }) => {
347
+ // Seed data
348
+ await apiRequest({
349
+ method: 'POST',
350
+ path: '/api/seed',
351
+ body: {
352
+ /* test data */
353
+ },
354
+ });
355
+
356
+ // Validate
357
+ const { status, body } = await apiRequest({
358
+ method: 'GET',
359
+ path: '/api/resource',
360
+ });
361
+
362
+ expect(status).toBe(200);
363
+ expect(body).toHaveProperty('data');
364
+ });
365
+ ```
366
+
367
+ **Run specific tags:**
368
+
369
+ ```bash
370
+ # Run only P0 tests
371
+ npx playwright test --grep @P0
372
+
373
+ # Run P0 + P1 tests
374
+ npx playwright test --grep "@P0|@P1"
375
+
376
+ # Run only security tests
377
+ npx playwright test --grep @Security
378
+
379
+ # Run all Playwright tests in PR (default)
380
+ npx playwright test
381
+ ```
382
+
383
+ ---
384
+
385
+ ## Appendix B: Knowledge Base References
386
+
387
+ - **Risk Governance**: `risk-governance.md` - Risk scoring methodology
388
+ - **Test Priorities Matrix**: `test-priorities-matrix.md` - P0-P3 criteria
389
+ - **Test Levels Framework**: `test-levels-framework.md` - E2E vs API vs Unit selection
390
+ - **Test Quality**: `test-quality.md` - Definition of Done (no hard waits, <300 lines, <1.5 min)
391
+
392
+ ---
393
+
394
+ **Generated by:** BMad TEA Agent
395
+ **Workflow:** `_bmad/tea/testarch/bmad-testarch-test-design`
396
+ **Version:** 4.0 (BMad v6)