bmad-fh 6.0.0-alpha.052779ef

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 (626) hide show
  1. package/.coderabbit.yaml +40 -0
  2. package/.githooks/post-checkout +129 -0
  3. package/.githooks/pre-commit +63 -0
  4. package/.githooks/pre-push +135 -0
  5. package/.github/CODE_OF_CONDUCT.md +128 -0
  6. package/.github/FUNDING.yaml +15 -0
  7. package/.github/ISSUE_TEMPLATE/config.yaml +8 -0
  8. package/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
  9. package/.github/ISSUE_TEMPLATE/issue.md +32 -0
  10. package/.github/scripts/discord-helpers.sh +34 -0
  11. package/.github/workflows/bundle-latest.yaml +330 -0
  12. package/.github/workflows/discord.yaml +90 -0
  13. package/.github/workflows/docs.yaml +63 -0
  14. package/.github/workflows/manual-release.yaml +190 -0
  15. package/.github/workflows/publish-multi-artifact.yaml +54 -0
  16. package/.github/workflows/quality.yaml +115 -0
  17. package/.husky/pre-commit +20 -0
  18. package/.markdownlint-cli2.yaml +41 -0
  19. package/.nvmrc +1 -0
  20. package/.prettierignore +9 -0
  21. package/.vscode/settings.json +97 -0
  22. package/CHANGELOG.md +1394 -0
  23. package/CNAME +1 -0
  24. package/CONTRIBUTING.md +306 -0
  25. package/CONTRIBUTORS.md +32 -0
  26. package/LICENSE +30 -0
  27. package/README.md +126 -0
  28. package/SECURITY.md +85 -0
  29. package/TRADEMARK.md +55 -0
  30. package/Wordmark.png +0 -0
  31. package/banner-bmad-method.png +0 -0
  32. package/docs/404.md +9 -0
  33. package/docs/_README_WORKFLOW_DIAGRAMS.md +40 -0
  34. package/docs/_STYLE_GUIDE.md +367 -0
  35. package/docs/_archive/customize-workflows.md +30 -0
  36. package/docs/_archive/getting-started-bmadv4.md +247 -0
  37. package/docs/_archive/vendor-workflows.md +52 -0
  38. package/docs/downloads.md +72 -0
  39. package/docs/explanation/agents/barry-quick-flow.md +328 -0
  40. package/docs/explanation/agents/index.md +19 -0
  41. package/docs/explanation/architecture/four-phases.md +107 -0
  42. package/docs/explanation/architecture/preventing-agent-conflicts.md +111 -0
  43. package/docs/explanation/architecture/why-solutioning-matters.md +75 -0
  44. package/docs/explanation/bmm/index.md +131 -0
  45. package/docs/explanation/core/index.md +18 -0
  46. package/docs/explanation/core-concepts/agent-roles.md +179 -0
  47. package/docs/explanation/core-concepts/index.md +35 -0
  48. package/docs/explanation/core-concepts/what-are-agents.md +97 -0
  49. package/docs/explanation/core-concepts/what-are-modules.md +85 -0
  50. package/docs/explanation/core-concepts/what-are-workflows.md +204 -0
  51. package/docs/explanation/faq/brownfield-faq.md +73 -0
  52. package/docs/explanation/faq/getting-started-faq.md +67 -0
  53. package/docs/explanation/faq/implementation-faq.md +52 -0
  54. package/docs/explanation/faq/index.md +16 -0
  55. package/docs/explanation/faq/levels-and-tracks-faq.md +52 -0
  56. package/docs/explanation/faq/planning-faq.md +41 -0
  57. package/docs/explanation/faq/tools-faq.md +277 -0
  58. package/docs/explanation/faq/workflows-faq.md +61 -0
  59. package/docs/explanation/features/advanced-elicitation.md +95 -0
  60. package/docs/explanation/features/brainstorming-techniques.md +92 -0
  61. package/docs/explanation/features/party-mode.md +95 -0
  62. package/docs/explanation/features/quick-flow.md +149 -0
  63. package/docs/explanation/features/tea-overview.md +410 -0
  64. package/docs/explanation/features/web-bundles.md +34 -0
  65. package/docs/explanation/philosophy/facilitation-over-generation.md +333 -0
  66. package/docs/explanation/philosophy/testing-as-engineering.md +112 -0
  67. package/docs/explanation/tea/engagement-models.md +710 -0
  68. package/docs/explanation/tea/fixture-architecture.md +457 -0
  69. package/docs/explanation/tea/knowledge-base-system.md +554 -0
  70. package/docs/explanation/tea/network-first-patterns.md +853 -0
  71. package/docs/explanation/tea/risk-based-testing.md +586 -0
  72. package/docs/explanation/tea/test-quality-standards.md +907 -0
  73. package/docs/how-to/brownfield/add-feature-to-existing.md +74 -0
  74. package/docs/how-to/brownfield/document-existing-project.md +66 -0
  75. package/docs/how-to/brownfield/index.md +84 -0
  76. package/docs/how-to/brownfield/quick-fix-in-brownfield.md +77 -0
  77. package/docs/how-to/brownfield/use-tea-for-enterprise.md +526 -0
  78. package/docs/how-to/brownfield/use-tea-with-existing-tests.md +577 -0
  79. package/docs/how-to/customization/customize-agents.md +212 -0
  80. package/docs/how-to/customization/enable-tea-mcp-enhancements.md +424 -0
  81. package/docs/how-to/customization/index.md +23 -0
  82. package/docs/how-to/customization/integrate-playwright-utils.md +813 -0
  83. package/docs/how-to/customization/shard-large-documents.md +101 -0
  84. package/docs/how-to/get-answers-about-bmad.md +102 -0
  85. package/docs/how-to/installation/index.md +12 -0
  86. package/docs/how-to/installation/install-bmad.md +111 -0
  87. package/docs/how-to/installation/install-custom-modules.md +118 -0
  88. package/docs/how-to/installation/upgrade-to-v6.md +131 -0
  89. package/docs/how-to/workflows/bmgd-quick-flow.md +156 -0
  90. package/docs/how-to/workflows/conduct-research.md +97 -0
  91. package/docs/how-to/workflows/create-architecture.md +119 -0
  92. package/docs/how-to/workflows/create-epics-and-stories.md +109 -0
  93. package/docs/how-to/workflows/create-prd.md +91 -0
  94. package/docs/how-to/workflows/create-product-brief.md +94 -0
  95. package/docs/how-to/workflows/create-story.md +102 -0
  96. package/docs/how-to/workflows/create-ux-design.md +100 -0
  97. package/docs/how-to/workflows/implement-story.md +97 -0
  98. package/docs/how-to/workflows/quick-spec.md +122 -0
  99. package/docs/how-to/workflows/run-atdd.md +436 -0
  100. package/docs/how-to/workflows/run-automate.md +653 -0
  101. package/docs/how-to/workflows/run-brainstorming-session.md +73 -0
  102. package/docs/how-to/workflows/run-code-review.md +89 -0
  103. package/docs/how-to/workflows/run-implementation-readiness.md +125 -0
  104. package/docs/how-to/workflows/run-nfr-assess.md +679 -0
  105. package/docs/how-to/workflows/run-sprint-planning.md +94 -0
  106. package/docs/how-to/workflows/run-test-design.md +98 -0
  107. package/docs/how-to/workflows/run-test-review.md +605 -0
  108. package/docs/how-to/workflows/run-trace.md +883 -0
  109. package/docs/how-to/workflows/setup-ci.md +712 -0
  110. package/docs/how-to/workflows/setup-party-mode.md +89 -0
  111. package/docs/how-to/workflows/setup-test-framework.md +98 -0
  112. package/docs/index.md +63 -0
  113. package/docs/migration-guide.md +365 -0
  114. package/docs/multi-scope-guide.md +379 -0
  115. package/docs/plans/multi-scope-parallel-artifacts-plan.md +695 -0
  116. package/docs/reference/agents/index.md +109 -0
  117. package/docs/reference/configuration/core-tasks.md +67 -0
  118. package/docs/reference/configuration/global-config.md +28 -0
  119. package/docs/reference/glossary/index.md +159 -0
  120. package/docs/reference/tea/commands.md +254 -0
  121. package/docs/reference/tea/configuration.md +678 -0
  122. package/docs/reference/tea/knowledge-base.md +340 -0
  123. package/docs/reference/workflows/core-workflows.md +32 -0
  124. package/docs/reference/workflows/document-project.md +73 -0
  125. package/docs/reference/workflows/index.md +12 -0
  126. package/docs/tutorials/getting-started/getting-started-bmadv6.md +246 -0
  127. package/docs/tutorials/getting-started/images/workflow-method-greenfield.excalidraw +5034 -0
  128. package/docs/tutorials/getting-started/images/workflow-method-greenfield.svg +4 -0
  129. package/docs/tutorials/getting-started/images/workflow-overview.jpg +0 -0
  130. package/docs/tutorials/getting-started/tea-lite-quickstart.md +444 -0
  131. package/docs/tutorials/getting-started/workflow-overview.jpg +0 -0
  132. package/eslint.config.mjs +152 -0
  133. package/package.json +117 -0
  134. package/prettier.config.mjs +32 -0
  135. package/src/bmm/_module-installer/installer.js +48 -0
  136. package/src/bmm/_module-installer/platform-specifics/claude-code.js +35 -0
  137. package/src/bmm/_module-installer/platform-specifics/windsurf.js +32 -0
  138. package/src/bmm/agents/analyst.agent.yaml +41 -0
  139. package/src/bmm/agents/architect.agent.yaml +33 -0
  140. package/src/bmm/agents/dev.agent.yaml +38 -0
  141. package/src/bmm/agents/pm.agent.yaml +51 -0
  142. package/src/bmm/agents/quick-flow-solo-dev.agent.yaml +32 -0
  143. package/src/bmm/agents/sm.agent.yaml +47 -0
  144. package/src/bmm/agents/tea.agent.yaml +68 -0
  145. package/src/bmm/agents/tech-writer/tech-writer-sidecar/documentation-standards.md +224 -0
  146. package/src/bmm/agents/tech-writer/tech-writer.agent.yaml +49 -0
  147. package/src/bmm/agents/ux-designer.agent.yaml +30 -0
  148. package/src/bmm/data/README.md +29 -0
  149. package/src/bmm/data/project-context-template.md +40 -0
  150. package/src/bmm/module.yaml +64 -0
  151. package/src/bmm/sub-modules/claude-code/config.yaml +4 -0
  152. package/src/bmm/sub-modules/claude-code/injections.yaml +242 -0
  153. package/src/bmm/sub-modules/claude-code/readme.md +87 -0
  154. package/src/bmm/teams/default-party.csv +21 -0
  155. package/src/bmm/teams/team-fullstack.yaml +12 -0
  156. package/src/bmm/testarch/knowledge/api-request.md +442 -0
  157. package/src/bmm/testarch/knowledge/api-testing-patterns.md +843 -0
  158. package/src/bmm/testarch/knowledge/auth-session.md +552 -0
  159. package/src/bmm/testarch/knowledge/burn-in.md +273 -0
  160. package/src/bmm/testarch/knowledge/ci-burn-in.md +675 -0
  161. package/src/bmm/testarch/knowledge/component-tdd.md +486 -0
  162. package/src/bmm/testarch/knowledge/contract-testing.md +957 -0
  163. package/src/bmm/testarch/knowledge/data-factories.md +500 -0
  164. package/src/bmm/testarch/knowledge/email-auth.md +721 -0
  165. package/src/bmm/testarch/knowledge/error-handling.md +725 -0
  166. package/src/bmm/testarch/knowledge/feature-flags.md +750 -0
  167. package/src/bmm/testarch/knowledge/file-utils.md +463 -0
  168. package/src/bmm/testarch/knowledge/fixture-architecture.md +401 -0
  169. package/src/bmm/testarch/knowledge/fixtures-composition.md +382 -0
  170. package/src/bmm/testarch/knowledge/intercept-network-call.md +430 -0
  171. package/src/bmm/testarch/knowledge/log.md +429 -0
  172. package/src/bmm/testarch/knowledge/network-error-monitor.md +405 -0
  173. package/src/bmm/testarch/knowledge/network-first.md +486 -0
  174. package/src/bmm/testarch/knowledge/network-recorder.md +527 -0
  175. package/src/bmm/testarch/knowledge/nfr-criteria.md +670 -0
  176. package/src/bmm/testarch/knowledge/overview.md +286 -0
  177. package/src/bmm/testarch/knowledge/playwright-config.md +730 -0
  178. package/src/bmm/testarch/knowledge/probability-impact.md +601 -0
  179. package/src/bmm/testarch/knowledge/recurse.md +421 -0
  180. package/src/bmm/testarch/knowledge/risk-governance.md +615 -0
  181. package/src/bmm/testarch/knowledge/selective-testing.md +732 -0
  182. package/src/bmm/testarch/knowledge/selector-resilience.md +527 -0
  183. package/src/bmm/testarch/knowledge/test-healing-patterns.md +644 -0
  184. package/src/bmm/testarch/knowledge/test-levels-framework.md +473 -0
  185. package/src/bmm/testarch/knowledge/test-priorities-matrix.md +373 -0
  186. package/src/bmm/testarch/knowledge/test-quality.md +664 -0
  187. package/src/bmm/testarch/knowledge/timing-debugging.md +372 -0
  188. package/src/bmm/testarch/knowledge/visual-debugging.md +524 -0
  189. package/src/bmm/testarch/tea-index.csv +34 -0
  190. package/src/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +10 -0
  191. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +177 -0
  192. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +161 -0
  193. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +199 -0
  194. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +202 -0
  195. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +205 -0
  196. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +219 -0
  197. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +194 -0
  198. package/src/bmm/workflows/1-analysis/create-product-brief/workflow.md +58 -0
  199. package/src/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +137 -0
  200. package/src/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +229 -0
  201. package/src/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +238 -0
  202. package/src/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +206 -0
  203. package/src/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +234 -0
  204. package/src/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +443 -0
  205. package/src/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +182 -0
  206. package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +237 -0
  207. package/src/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +200 -0
  208. package/src/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +249 -0
  209. package/src/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +259 -0
  210. package/src/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +177 -0
  211. package/src/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +475 -0
  212. package/src/bmm/workflows/1-analysis/research/research.template.md +29 -0
  213. package/src/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +137 -0
  214. package/src/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +239 -0
  215. package/src/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +248 -0
  216. package/src/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +202 -0
  217. package/src/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +239 -0
  218. package/src/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +486 -0
  219. package/src/bmm/workflows/1-analysis/research/workflow.md +173 -0
  220. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +135 -0
  221. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +127 -0
  222. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +190 -0
  223. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +216 -0
  224. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +219 -0
  225. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +234 -0
  226. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +252 -0
  227. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +254 -0
  228. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +224 -0
  229. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +224 -0
  230. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +241 -0
  231. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +248 -0
  232. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +237 -0
  233. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +264 -0
  234. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +228 -0
  235. package/src/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +13 -0
  236. package/src/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +43 -0
  237. package/src/bmm/workflows/2-plan-workflows/prd/data/domain-complexity.csv +13 -0
  238. package/src/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md +197 -0
  239. package/src/bmm/workflows/2-plan-workflows/prd/data/project-types.csv +11 -0
  240. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-01-init.md +191 -0
  241. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-01b-continue.md +153 -0
  242. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-02-discovery.md +224 -0
  243. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-03-success.md +226 -0
  244. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-04-journeys.md +213 -0
  245. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-05-domain.md +207 -0
  246. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-06-innovation.md +226 -0
  247. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-07-project-type.md +237 -0
  248. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-08-scoping.md +228 -0
  249. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-09-functional.md +231 -0
  250. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-10-nonfunctional.md +242 -0
  251. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-11-polish.md +217 -0
  252. package/src/bmm/workflows/2-plan-workflows/prd/steps-c/step-12-complete.md +180 -0
  253. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-01-discovery.md +247 -0
  254. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-01b-legacy-conversion.md +208 -0
  255. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-02-review.md +249 -0
  256. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-03-edit.md +253 -0
  257. package/src/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-04-complete.md +168 -0
  258. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-01-discovery.md +218 -0
  259. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-02-format-detection.md +191 -0
  260. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-02b-parity-check.md +209 -0
  261. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-03-density-validation.md +174 -0
  262. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-04-brief-coverage-validation.md +214 -0
  263. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-05-measurability-validation.md +228 -0
  264. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-06-traceability-validation.md +217 -0
  265. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-07-implementation-leakage-validation.md +205 -0
  266. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-08-domain-compliance-validation.md +243 -0
  267. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-09-project-type-validation.md +263 -0
  268. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-10-smart-validation.md +209 -0
  269. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-11-holistic-quality-validation.md +264 -0
  270. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-12-completeness-validation.md +242 -0
  271. package/src/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-13-report-complete.md +232 -0
  272. package/src/bmm/workflows/2-plan-workflows/prd/templates/prd-template.md +10 -0
  273. package/src/bmm/workflows/2-plan-workflows/prd/validation-report-prd-workflow.md +433 -0
  274. package/src/bmm/workflows/2-plan-workflows/prd/workflow.md +150 -0
  275. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +190 -0
  276. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +178 -0
  277. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +179 -0
  278. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +139 -0
  279. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +252 -0
  280. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +133 -0
  281. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +4 -0
  282. package/src/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +55 -0
  283. package/src/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +12 -0
  284. package/src/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +11 -0
  285. package/src/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +7 -0
  286. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +153 -0
  287. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +164 -0
  288. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +224 -0
  289. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +331 -0
  290. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +318 -0
  291. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +359 -0
  292. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +379 -0
  293. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +359 -0
  294. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +352 -0
  295. package/src/bmm/workflows/3-solutioning/create-architecture/workflow.md +50 -0
  296. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +259 -0
  297. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +233 -0
  298. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +272 -0
  299. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +145 -0
  300. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +57 -0
  301. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +59 -0
  302. package/src/bmm/workflows/4-implementation/code-review/checklist.md +23 -0
  303. package/src/bmm/workflows/4-implementation/code-review/instructions.xml +227 -0
  304. package/src/bmm/workflows/4-implementation/code-review/workflow.yaml +51 -0
  305. package/src/bmm/workflows/4-implementation/correct-course/checklist.md +288 -0
  306. package/src/bmm/workflows/4-implementation/correct-course/instructions.md +206 -0
  307. package/src/bmm/workflows/4-implementation/correct-course/workflow.yaml +60 -0
  308. package/src/bmm/workflows/4-implementation/create-story/checklist.md +358 -0
  309. package/src/bmm/workflows/4-implementation/create-story/instructions.xml +345 -0
  310. package/src/bmm/workflows/4-implementation/create-story/template.md +49 -0
  311. package/src/bmm/workflows/4-implementation/create-story/workflow.yaml +61 -0
  312. package/src/bmm/workflows/4-implementation/dev-story/checklist.md +80 -0
  313. package/src/bmm/workflows/4-implementation/dev-story/instructions.xml +410 -0
  314. package/src/bmm/workflows/4-implementation/dev-story/workflow.yaml +27 -0
  315. package/src/bmm/workflows/4-implementation/retrospective/instructions.md +1443 -0
  316. package/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +58 -0
  317. package/src/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
  318. package/src/bmm/workflows/4-implementation/sprint-planning/instructions.md +225 -0
  319. package/src/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
  320. package/src/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +54 -0
  321. package/src/bmm/workflows/4-implementation/sprint-status/instructions.md +229 -0
  322. package/src/bmm/workflows/4-implementation/sprint-status/workflow.yaml +36 -0
  323. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +156 -0
  324. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +120 -0
  325. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +113 -0
  326. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +113 -0
  327. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +106 -0
  328. package/src/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +140 -0
  329. package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +52 -0
  330. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +189 -0
  331. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +144 -0
  332. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +128 -0
  333. package/src/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +191 -0
  334. package/src/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +74 -0
  335. package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +79 -0
  336. package/src/bmm/workflows/document-project/checklist.md +245 -0
  337. package/src/bmm/workflows/document-project/documentation-requirements.csv +12 -0
  338. package/src/bmm/workflows/document-project/instructions.md +221 -0
  339. package/src/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
  340. package/src/bmm/workflows/document-project/templates/index-template.md +169 -0
  341. package/src/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
  342. package/src/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
  343. package/src/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
  344. package/src/bmm/workflows/document-project/workflow.yaml +30 -0
  345. package/src/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
  346. package/src/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
  347. package/src/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
  348. package/src/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
  349. package/src/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +90 -0
  350. package/src/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +127 -0
  351. package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +39 -0
  352. package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +130 -0
  353. package/src/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +27 -0
  354. package/src/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +43 -0
  355. package/src/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +141 -0
  356. package/src/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +27 -0
  357. package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +49 -0
  358. package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +241 -0
  359. package/src/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +27 -0
  360. package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +38 -0
  361. package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +133 -0
  362. package/src/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +27 -0
  363. package/src/bmm/workflows/generate-project-context/project-context-template.md +21 -0
  364. package/src/bmm/workflows/generate-project-context/steps/step-01-discover.md +184 -0
  365. package/src/bmm/workflows/generate-project-context/steps/step-02-generate.md +318 -0
  366. package/src/bmm/workflows/generate-project-context/steps/step-03-complete.md +278 -0
  367. package/src/bmm/workflows/generate-project-context/workflow.md +49 -0
  368. package/src/bmm/workflows/testarch/atdd/atdd-checklist-template.md +364 -0
  369. package/src/bmm/workflows/testarch/atdd/checklist.md +374 -0
  370. package/src/bmm/workflows/testarch/atdd/instructions.md +806 -0
  371. package/src/bmm/workflows/testarch/atdd/workflow.yaml +47 -0
  372. package/src/bmm/workflows/testarch/automate/checklist.md +582 -0
  373. package/src/bmm/workflows/testarch/automate/instructions.md +1324 -0
  374. package/src/bmm/workflows/testarch/automate/workflow.yaml +54 -0
  375. package/src/bmm/workflows/testarch/ci/checklist.md +248 -0
  376. package/src/bmm/workflows/testarch/ci/github-actions-template.yaml +198 -0
  377. package/src/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +149 -0
  378. package/src/bmm/workflows/testarch/ci/instructions.md +536 -0
  379. package/src/bmm/workflows/testarch/ci/workflow.yaml +47 -0
  380. package/src/bmm/workflows/testarch/framework/checklist.md +321 -0
  381. package/src/bmm/workflows/testarch/framework/instructions.md +481 -0
  382. package/src/bmm/workflows/testarch/framework/workflow.yaml +49 -0
  383. package/src/bmm/workflows/testarch/nfr-assess/checklist.md +407 -0
  384. package/src/bmm/workflows/testarch/nfr-assess/instructions.md +722 -0
  385. package/src/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +445 -0
  386. package/src/bmm/workflows/testarch/nfr-assess/workflow.yaml +49 -0
  387. package/src/bmm/workflows/testarch/test-design/checklist.md +235 -0
  388. package/src/bmm/workflows/testarch/test-design/instructions.md +788 -0
  389. package/src/bmm/workflows/testarch/test-design/test-design-template.md +294 -0
  390. package/src/bmm/workflows/testarch/test-design/workflow.yaml +56 -0
  391. package/src/bmm/workflows/testarch/test-review/checklist.md +472 -0
  392. package/src/bmm/workflows/testarch/test-review/instructions.md +628 -0
  393. package/src/bmm/workflows/testarch/test-review/test-review-template.md +390 -0
  394. package/src/bmm/workflows/testarch/test-review/workflow.yaml +48 -0
  395. package/src/bmm/workflows/testarch/trace/checklist.md +655 -0
  396. package/src/bmm/workflows/testarch/trace/instructions.md +1047 -0
  397. package/src/bmm/workflows/testarch/trace/trace-template.md +675 -0
  398. package/src/bmm/workflows/testarch/trace/workflow.yaml +57 -0
  399. package/src/bmm/workflows/workflow-status/init/instructions.md +346 -0
  400. package/src/bmm/workflows/workflow-status/init/workflow.yaml +30 -0
  401. package/src/bmm/workflows/workflow-status/instructions.md +397 -0
  402. package/src/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +103 -0
  403. package/src/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +100 -0
  404. package/src/bmm/workflows/workflow-status/paths/method-brownfield.yaml +103 -0
  405. package/src/bmm/workflows/workflow-status/paths/method-greenfield.yaml +100 -0
  406. package/src/bmm/workflows/workflow-status/project-levels.yaml +59 -0
  407. package/src/bmm/workflows/workflow-status/workflow-status-template.yaml +24 -0
  408. package/src/bmm/workflows/workflow-status/workflow.yaml +32 -0
  409. package/src/core/_module-installer/installer.js +60 -0
  410. package/src/core/agents/bmad-master.agent.yaml +30 -0
  411. package/src/core/lib/scope/artifact-resolver.js +298 -0
  412. package/src/core/lib/scope/event-logger.js +400 -0
  413. package/src/core/lib/scope/index.js +30 -0
  414. package/src/core/lib/scope/scope-context.js +301 -0
  415. package/src/core/lib/scope/scope-initializer.js +456 -0
  416. package/src/core/lib/scope/scope-manager.js +512 -0
  417. package/src/core/lib/scope/scope-migrator.js +434 -0
  418. package/src/core/lib/scope/scope-sync.js +483 -0
  419. package/src/core/lib/scope/scope-validator.js +294 -0
  420. package/src/core/lib/scope/state-lock.js +336 -0
  421. package/src/core/module.yaml +53 -0
  422. package/src/core/resources/excalidraw/README.md +160 -0
  423. package/src/core/resources/excalidraw/excalidraw-helpers.md +127 -0
  424. package/src/core/resources/excalidraw/library-loader.md +50 -0
  425. package/src/core/resources/excalidraw/validate-json-instructions.md +79 -0
  426. package/src/core/tasks/editorial-review-prose.xml +91 -0
  427. package/src/core/tasks/editorial-review-structure.xml +198 -0
  428. package/src/core/tasks/index-docs.xml +65 -0
  429. package/src/core/tasks/review-adversarial-general.xml +46 -0
  430. package/src/core/tasks/shard-doc.xml +109 -0
  431. package/src/core/tasks/workflow.xml +277 -0
  432. package/src/core/workflows/advanced-elicitation/methods.csv +51 -0
  433. package/src/core/workflows/advanced-elicitation/workflow.xml +117 -0
  434. package/src/core/workflows/brainstorming/brain-methods.csv +62 -0
  435. package/src/core/workflows/brainstorming/steps/step-01-session-setup.md +197 -0
  436. package/src/core/workflows/brainstorming/steps/step-01b-continue.md +122 -0
  437. package/src/core/workflows/brainstorming/steps/step-02a-user-selected.md +225 -0
  438. package/src/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +237 -0
  439. package/src/core/workflows/brainstorming/steps/step-02c-random-selection.md +209 -0
  440. package/src/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +264 -0
  441. package/src/core/workflows/brainstorming/steps/step-03-technique-execution.md +399 -0
  442. package/src/core/workflows/brainstorming/steps/step-04-idea-organization.md +303 -0
  443. package/src/core/workflows/brainstorming/template.md +15 -0
  444. package/src/core/workflows/brainstorming/workflow.md +58 -0
  445. package/src/core/workflows/party-mode/steps/step-01-agent-loading.md +138 -0
  446. package/src/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +187 -0
  447. package/src/core/workflows/party-mode/steps/step-03-graceful-exit.md +157 -0
  448. package/src/core/workflows/party-mode/workflow.md +194 -0
  449. package/src/utility/agent-components/activation-rules.txt +6 -0
  450. package/src/utility/agent-components/activation-steps.txt +28 -0
  451. package/src/utility/agent-components/agent-command-header.md +1 -0
  452. package/src/utility/agent-components/agent.customize.template.yaml +41 -0
  453. package/src/utility/agent-components/handler-action.txt +4 -0
  454. package/src/utility/agent-components/handler-data.txt +5 -0
  455. package/src/utility/agent-components/handler-exec.txt +19 -0
  456. package/src/utility/agent-components/handler-multi.txt +14 -0
  457. package/src/utility/agent-components/handler-tmpl.txt +5 -0
  458. package/src/utility/agent-components/handler-validate-workflow.txt +7 -0
  459. package/src/utility/agent-components/handler-workflow.txt +10 -0
  460. package/src/utility/agent-components/menu-handlers.txt +6 -0
  461. package/test/README.md +295 -0
  462. package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +27 -0
  463. package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +30 -0
  464. package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +22 -0
  465. package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +20 -0
  466. package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +25 -0
  467. package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +24 -0
  468. package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +25 -0
  469. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +25 -0
  470. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +25 -0
  471. package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +31 -0
  472. package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +25 -0
  473. package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +25 -0
  474. package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +25 -0
  475. package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +25 -0
  476. package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
  477. package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
  478. package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +27 -0
  479. package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
  480. package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +24 -0
  481. package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +27 -0
  482. package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +27 -0
  483. package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +24 -0
  484. package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +29 -0
  485. package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +31 -0
  486. package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +28 -0
  487. package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +28 -0
  488. package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
  489. package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +28 -0
  490. package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
  491. package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
  492. package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
  493. package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +24 -0
  494. package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +22 -0
  495. package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +27 -0
  496. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +31 -0
  497. package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +22 -0
  498. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +38 -0
  499. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +24 -0
  500. package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +31 -0
  501. package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +34 -0
  502. package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +24 -0
  503. package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +24 -0
  504. package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +24 -0
  505. package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +24 -0
  506. package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +23 -0
  507. package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +24 -0
  508. package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +24 -0
  509. package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +24 -0
  510. package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +22 -0
  511. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +28 -0
  512. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +30 -0
  513. package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +24 -0
  514. package/test/test-agent-schema.js +387 -0
  515. package/test/test-cli-integration.sh +159 -0
  516. package/test/test-installation-components.js +214 -0
  517. package/test/test-scope-e2e.js +439 -0
  518. package/test/test-scope-system.js +781 -0
  519. package/test/unit-test-schema.js +133 -0
  520. package/tools/bmad-npx-wrapper.js +38 -0
  521. package/tools/build-docs.js +577 -0
  522. package/tools/cli/README.md +7 -0
  523. package/tools/cli/bmad-cli.js +58 -0
  524. package/tools/cli/commands/install.js +87 -0
  525. package/tools/cli/commands/scope.js +474 -0
  526. package/tools/cli/external-official-modules.yaml +41 -0
  527. package/tools/cli/installers/install-messages.yaml +58 -0
  528. package/tools/cli/installers/lib/core/config-collector.js +1079 -0
  529. package/tools/cli/installers/lib/core/custom-module-cache.js +259 -0
  530. package/tools/cli/installers/lib/core/dependency-resolver.js +739 -0
  531. package/tools/cli/installers/lib/core/detector.js +223 -0
  532. package/tools/cli/installers/lib/core/ide-config-manager.js +156 -0
  533. package/tools/cli/installers/lib/core/installer.js +2585 -0
  534. package/tools/cli/installers/lib/core/manifest-generator.js +963 -0
  535. package/tools/cli/installers/lib/core/manifest.js +590 -0
  536. package/tools/cli/installers/lib/custom/handler.js +363 -0
  537. package/tools/cli/installers/lib/ide/_base-ide.js +654 -0
  538. package/tools/cli/installers/lib/ide/antigravity.js +486 -0
  539. package/tools/cli/installers/lib/ide/auggie.js +244 -0
  540. package/tools/cli/installers/lib/ide/claude-code.js +487 -0
  541. package/tools/cli/installers/lib/ide/cline.js +269 -0
  542. package/tools/cli/installers/lib/ide/codex.js +375 -0
  543. package/tools/cli/installers/lib/ide/crush.js +300 -0
  544. package/tools/cli/installers/lib/ide/cursor.js +169 -0
  545. package/tools/cli/installers/lib/ide/gemini.js +301 -0
  546. package/tools/cli/installers/lib/ide/github-copilot.js +383 -0
  547. package/tools/cli/installers/lib/ide/iflow.js +191 -0
  548. package/tools/cli/installers/lib/ide/kilo.js +250 -0
  549. package/tools/cli/installers/lib/ide/kiro-cli.js +326 -0
  550. package/tools/cli/installers/lib/ide/manager.js +244 -0
  551. package/tools/cli/installers/lib/ide/opencode.js +257 -0
  552. package/tools/cli/installers/lib/ide/qwen.js +372 -0
  553. package/tools/cli/installers/lib/ide/roo.js +270 -0
  554. package/tools/cli/installers/lib/ide/rovo-dev.js +290 -0
  555. package/tools/cli/installers/lib/ide/shared/agent-command-generator.js +96 -0
  556. package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +158 -0
  557. package/tools/cli/installers/lib/ide/shared/module-injections.js +136 -0
  558. package/tools/cli/installers/lib/ide/shared/task-tool-command-generator.js +119 -0
  559. package/tools/cli/installers/lib/ide/shared/workflow-command-generator.js +242 -0
  560. package/tools/cli/installers/lib/ide/templates/agent-command-template.md +29 -0
  561. package/tools/cli/installers/lib/ide/templates/gemini-agent-command.toml +14 -0
  562. package/tools/cli/installers/lib/ide/templates/gemini-task-command.toml +12 -0
  563. package/tools/cli/installers/lib/ide/templates/workflow-command-template.md +30 -0
  564. package/tools/cli/installers/lib/ide/templates/workflow-commander.md +45 -0
  565. package/tools/cli/installers/lib/ide/trae.js +313 -0
  566. package/tools/cli/installers/lib/ide/windsurf.js +258 -0
  567. package/tools/cli/installers/lib/message-loader.js +85 -0
  568. package/tools/cli/installers/lib/modules/external-manager.js +133 -0
  569. package/tools/cli/installers/lib/modules/manager.js +1362 -0
  570. package/tools/cli/lib/activation-builder.js +163 -0
  571. package/tools/cli/lib/agent/compiler.js +522 -0
  572. package/tools/cli/lib/agent/installer.js +716 -0
  573. package/tools/cli/lib/agent/template-engine.js +152 -0
  574. package/tools/cli/lib/agent-analyzer.js +109 -0
  575. package/tools/cli/lib/agent-party-generator.js +194 -0
  576. package/tools/cli/lib/cli-utils.js +227 -0
  577. package/tools/cli/lib/config.js +213 -0
  578. package/tools/cli/lib/file-ops.js +204 -0
  579. package/tools/cli/lib/platform-codes.js +116 -0
  580. package/tools/cli/lib/project-root.js +77 -0
  581. package/tools/cli/lib/prompts.js +433 -0
  582. package/tools/cli/lib/ui.js +1591 -0
  583. package/tools/cli/lib/xml-handler.js +177 -0
  584. package/tools/cli/lib/xml-to-markdown.js +82 -0
  585. package/tools/cli/lib/yaml-format.js +245 -0
  586. package/tools/cli/lib/yaml-xml-builder.js +587 -0
  587. package/tools/cli/scripts/migrate-workflows.js +273 -0
  588. package/tools/docs/BUNDLE_DISTRIBUTION_SETUP.md +95 -0
  589. package/tools/docs/index.md +2 -0
  590. package/tools/fix-doc-links.js +288 -0
  591. package/tools/flattener/aggregate.js +76 -0
  592. package/tools/flattener/binary.js +80 -0
  593. package/tools/flattener/discovery.js +71 -0
  594. package/tools/flattener/files.js +35 -0
  595. package/tools/flattener/ignoreRules.js +172 -0
  596. package/tools/flattener/main.js +483 -0
  597. package/tools/flattener/projectRoot.js +201 -0
  598. package/tools/flattener/prompts.js +44 -0
  599. package/tools/flattener/stats.helpers.js +368 -0
  600. package/tools/flattener/stats.js +75 -0
  601. package/tools/flattener/test-matrix.js +409 -0
  602. package/tools/flattener/xml.js +82 -0
  603. package/tools/format-workflow-md.js +263 -0
  604. package/tools/lib/xml-utils.js +13 -0
  605. package/tools/maintainer/review-pr-README.md +55 -0
  606. package/tools/maintainer/review-pr.md +242 -0
  607. package/tools/migrate-custom-module-paths.js +124 -0
  608. package/tools/platform-codes.yaml +157 -0
  609. package/tools/schema/agent.js +493 -0
  610. package/tools/validate-agent-schema.js +110 -0
  611. package/tools/validate-doc-links.js +363 -0
  612. package/tools/validate-svg-changes.sh +356 -0
  613. package/website/README.md +76 -0
  614. package/website/astro.config.mjs +228 -0
  615. package/website/public/favicon.ico +0 -0
  616. package/website/public/img/bmad-dark.png +0 -0
  617. package/website/public/img/bmad-light.png +0 -0
  618. package/website/public/img/logo.svg +4 -0
  619. package/website/public/robots.txt +37 -0
  620. package/website/src/components/Banner.astro +59 -0
  621. package/website/src/components/Header.astro +121 -0
  622. package/website/src/components/MobileMenuFooter.astro +53 -0
  623. package/website/src/content/config.ts +6 -0
  624. package/website/src/lib/site-url.js +25 -0
  625. package/website/src/rehype-markdown-links.js +102 -0
  626. package/website/src/styles/custom.css +485 -0
@@ -0,0 +1,883 @@
1
+ ---
2
+ title: "How to Run Trace with TEA"
3
+ description: Map requirements to tests and make quality gate decisions using TEA's trace workflow
4
+ ---
5
+
6
+ # How to Run Trace with TEA
7
+
8
+ Use TEA's `*trace` workflow for requirements traceability and quality gate decisions. This is a two-phase workflow: Phase 1 analyzes coverage, Phase 2 makes the go/no-go decision.
9
+
10
+ ## When to Use This
11
+
12
+ ### Phase 1: Requirements Traceability
13
+ - Map acceptance criteria to implemented tests
14
+ - Identify coverage gaps
15
+ - Prioritize missing tests
16
+ - Refresh coverage after each story/epic
17
+
18
+ ### Phase 2: Quality Gate Decision
19
+ - Make go/no-go decision for release
20
+ - Validate coverage meets thresholds
21
+ - Document gate decision with evidence
22
+ - Support business-approved waivers
23
+
24
+ ## Prerequisites
25
+
26
+ - BMad Method installed
27
+ - TEA agent available
28
+ - Requirements defined (stories, acceptance criteria, test design)
29
+ - Tests implemented
30
+ - For brownfield: Existing codebase with tests
31
+
32
+ ## Steps
33
+
34
+ ### 1. Run the Trace Workflow
35
+
36
+ ```
37
+ *trace
38
+ ```
39
+
40
+ ### 2. Specify Phase
41
+
42
+ TEA will ask which phase you're running.
43
+
44
+ **Phase 1: Requirements Traceability**
45
+ - Analyze coverage
46
+ - Identify gaps
47
+ - Generate recommendations
48
+
49
+ **Phase 2: Quality Gate Decision**
50
+ - Make PASS/CONCERNS/FAIL/WAIVED decision
51
+ - Requires Phase 1 complete
52
+
53
+ **Typical flow:** Run Phase 1 first, review gaps, then run Phase 2 for gate decision.
54
+
55
+ ---
56
+
57
+ ## Phase 1: Requirements Traceability
58
+
59
+ ### 3. Provide Requirements Source
60
+
61
+ TEA will ask where requirements are defined.
62
+
63
+ **Options:**
64
+
65
+ | Source | Example | Best For |
66
+ | --------------- | ----------------------------- | ---------------------- |
67
+ | **Story file** | `story-profile-management.md` | Single story coverage |
68
+ | **Test design** | `test-design-epic-1.md` | Epic coverage |
69
+ | **PRD** | `PRD.md` | System-level coverage |
70
+ | **Multiple** | All of the above | Comprehensive analysis |
71
+
72
+ **Example Response:**
73
+ ```
74
+ Requirements:
75
+ - story-profile-management.md (acceptance criteria)
76
+ - test-design-epic-1.md (test priorities)
77
+ ```
78
+
79
+ ### 4. Specify Test Location
80
+
81
+ TEA will ask where tests are located.
82
+
83
+ **Example:**
84
+ ```
85
+ Test location: tests/
86
+ Include:
87
+ - tests/api/
88
+ - tests/e2e/
89
+ ```
90
+
91
+ ### 5. Specify Focus Areas (Optional)
92
+
93
+ **Example:**
94
+ ```
95
+ Focus on:
96
+ - Profile CRUD operations
97
+ - Validation scenarios
98
+ - Authorization checks
99
+ ```
100
+
101
+ ### 6. Review Coverage Matrix
102
+
103
+ TEA generates a comprehensive traceability matrix.
104
+
105
+ #### Traceability Matrix (`traceability-matrix.md`):
106
+
107
+ ```markdown
108
+ # Requirements Traceability Matrix
109
+
110
+ **Date:** 2026-01-13
111
+ **Scope:** Epic 1 - User Profile Management
112
+ **Phase:** Phase 1 (Traceability Analysis)
113
+
114
+ ## Coverage Summary
115
+
116
+ | Metric | Count | Percentage |
117
+ | ---------------------- | ----- | ---------- |
118
+ | **Total Requirements** | 15 | 100% |
119
+ | **Full Coverage** | 11 | 73% |
120
+ | **Partial Coverage** | 3 | 20% |
121
+ | **No Coverage** | 1 | 7% |
122
+
123
+ ### By Priority
124
+
125
+ | Priority | Total | Covered | Percentage |
126
+ | -------- | ----- | ------- | ----------------- |
127
+ | **P0** | 5 | 5 | 100% ✅ |
128
+ | **P1** | 6 | 5 | 83% ⚠️ |
129
+ | **P2** | 3 | 1 | 33% ⚠️ |
130
+ | **P3** | 1 | 0 | 0% ✅ (acceptable) |
131
+
132
+ ---
133
+
134
+ ## Detailed Traceability
135
+
136
+ ### ✅ Requirement 1: User can view their profile (P0)
137
+
138
+ **Acceptance Criteria:**
139
+ - User navigates to /profile
140
+ - Profile displays name, email, avatar
141
+ - Data is current (not cached)
142
+
143
+ **Test Coverage:** FULL ✅
144
+
145
+ **Tests:**
146
+ - `tests/e2e/profile-view.spec.ts:15` - "should display profile page with current data"
147
+ - ✅ Navigates to /profile
148
+ - ✅ Verifies name, email visible
149
+ - ✅ Verifies avatar displayed
150
+ - ✅ Validates data freshness via API assertion
151
+
152
+ - `tests/api/profile.spec.ts:8` - "should fetch user profile via API"
153
+ - ✅ Calls GET /api/profile
154
+ - ✅ Validates response schema
155
+ - ✅ Confirms all fields present
156
+
157
+ ---
158
+
159
+ ### ⚠️ Requirement 2: User can edit profile (P0)
160
+
161
+ **Acceptance Criteria:**
162
+ - User clicks "Edit Profile"
163
+ - Can modify name, email, bio
164
+ - Can upload avatar
165
+ - Changes are persisted
166
+ - Success message shown
167
+
168
+ **Test Coverage:** PARTIAL ⚠️
169
+
170
+ **Tests:**
171
+ - `tests/e2e/profile-edit.spec.ts:22` - "should edit and save profile"
172
+ - ✅ Clicks edit button
173
+ - ✅ Modifies name and email
174
+ - ⚠️ **Does NOT test bio field**
175
+ - ❌ **Does NOT test avatar upload**
176
+ - ✅ Verifies persistence
177
+ - ✅ Verifies success message
178
+
179
+ - `tests/api/profile.spec.ts:25` - "should update profile via PATCH"
180
+ - ✅ Calls PATCH /api/profile
181
+ - ✅ Validates update response
182
+ - ⚠️ **Only tests name/email, not bio/avatar**
183
+
184
+ **Missing Coverage:**
185
+ - Bio field not tested in E2E or API
186
+ - Avatar upload not tested
187
+
188
+ **Gap Severity:** HIGH (P0 requirement, critical path)
189
+
190
+ ---
191
+
192
+ ### ✅ Requirement 3: Invalid email shows validation error (P1)
193
+
194
+ **Acceptance Criteria:**
195
+ - Enter invalid email format
196
+ - See error message
197
+ - Cannot save changes
198
+
199
+ **Test Coverage:** FULL ✅
200
+
201
+ **Tests:**
202
+ - `tests/e2e/profile-edit.spec.ts:45` - "should show validation error for invalid email"
203
+ - `tests/api/profile.spec.ts:50` - "should return 400 for invalid email"
204
+
205
+ ---
206
+
207
+ ### ❌ Requirement 15: Profile export as PDF (P2)
208
+
209
+ **Acceptance Criteria:**
210
+ - User clicks "Export Profile"
211
+ - PDF downloads with profile data
212
+
213
+ **Test Coverage:** NONE ❌
214
+
215
+ **Gap Analysis:**
216
+ - **Priority:** P2 (medium)
217
+ - **Risk:** Low (non-critical feature)
218
+ - **Recommendation:** Add in next iteration (not blocking for release)
219
+
220
+ ---
221
+
222
+ ## Gap Prioritization
223
+
224
+ ### Critical Gaps (Must Fix Before Release)
225
+
226
+ | Gap | Requirement | Priority | Risk | Recommendation |
227
+ | --- | ------------------------ | -------- | ---- | ------------------- |
228
+ | 1 | Bio field not tested | P0 | High | Add E2E + API tests |
229
+ | 2 | Avatar upload not tested | P0 | High | Add E2E + API tests |
230
+
231
+ **Estimated Effort:** 3 hours
232
+ **Owner:** QA team
233
+ **Deadline:** Before release
234
+
235
+ ### Non-Critical Gaps (Can Defer)
236
+
237
+ | Gap | Requirement | Priority | Risk | Recommendation |
238
+ | --- | ------------------------- | -------- | ---- | ------------------- |
239
+ | 3 | Profile export not tested | P2 | Low | Add in v1.3 release |
240
+
241
+ **Estimated Effort:** 2 hours
242
+ **Owner:** QA team
243
+ **Deadline:** Next release (February)
244
+
245
+ ---
246
+
247
+ ## Recommendations
248
+
249
+ ### 1. Add Bio Field Tests
250
+
251
+ **Tests Needed (Vanilla Playwright):**
252
+ ```typescript
253
+ // tests/e2e/profile-edit.spec.ts
254
+ test('should edit bio field', async ({ page }) => {
255
+ await page.goto('/profile');
256
+ await page.getByRole('button', { name: 'Edit' }).click();
257
+ await page.getByLabel('Bio').fill('New bio text');
258
+ await page.getByRole('button', { name: 'Save' }).click();
259
+ await expect(page.getByText('New bio text')).toBeVisible();
260
+ });
261
+
262
+ // tests/api/profile.spec.ts
263
+ test('should update bio via API', async ({ request }) => {
264
+ const response = await request.patch('/api/profile', {
265
+ data: { bio: 'Updated bio' }
266
+ });
267
+ expect(response.ok()).toBeTruthy();
268
+ const { bio } = await response.json();
269
+ expect(bio).toBe('Updated bio');
270
+ });
271
+ ```
272
+
273
+ **With Playwright Utils:**
274
+ ```typescript
275
+ // tests/e2e/profile-edit.spec.ts
276
+ import { test } from '../support/fixtures'; // Composed with authToken
277
+
278
+ test('should edit bio field', async ({ page, authToken }) => {
279
+ await page.goto('/profile');
280
+ await page.getByRole('button', { name: 'Edit' }).click();
281
+ await page.getByLabel('Bio').fill('New bio text');
282
+ await page.getByRole('button', { name: 'Save' }).click();
283
+ await expect(page.getByText('New bio text')).toBeVisible();
284
+ });
285
+
286
+ // tests/api/profile.spec.ts
287
+ import { test as base, expect } from '@playwright/test';
288
+ import { test as apiRequestFixture } from '@seontechnologies/playwright-utils/api-request/fixtures';
289
+ import { createAuthFixtures } from '@seontechnologies/playwright-utils/auth-session';
290
+ import { mergeTests } from '@playwright/test';
291
+
292
+ // Merge API request + auth fixtures
293
+ const authFixtureTest = base.extend(createAuthFixtures());
294
+ const test = mergeTests(apiRequestFixture, authFixtureTest);
295
+
296
+ test('should update bio via API', async ({ apiRequest, authToken }) => {
297
+ const { status, body } = await apiRequest({
298
+ method: 'PATCH',
299
+ path: '/api/profile',
300
+ body: { bio: 'Updated bio' },
301
+ headers: { Authorization: `Bearer ${authToken}` }
302
+ });
303
+
304
+ expect(status).toBe(200);
305
+ expect(body.bio).toBe('Updated bio');
306
+ });
307
+ ```
308
+
309
+ **Note:** `authToken` requires auth-session fixture setup. See [Integrate Playwright Utils](/docs/how-to/customization/integrate-playwright-utils.md#auth-session).
310
+
311
+ ### 2. Add Avatar Upload Tests
312
+
313
+ **Tests Needed:**
314
+ ```typescript
315
+ // tests/e2e/profile-edit.spec.ts
316
+ test('should upload avatar image', async ({ page }) => {
317
+ await page.goto('/profile');
318
+ await page.getByRole('button', { name: 'Edit' }).click();
319
+
320
+ // Upload file
321
+ await page.setInputFiles('[type="file"]', 'fixtures/avatar.png');
322
+ await page.getByRole('button', { name: 'Save' }).click();
323
+
324
+ // Verify uploaded image displays
325
+ await expect(page.locator('img[alt="Profile avatar"]')).toBeVisible();
326
+ });
327
+
328
+ // tests/api/profile.spec.ts
329
+ import { test, expect } from '@playwright/test';
330
+ import fs from 'fs/promises';
331
+
332
+ test('should accept valid image upload', async ({ request }) => {
333
+ const response = await request.post('/api/profile/avatar', {
334
+ multipart: {
335
+ file: {
336
+ name: 'avatar.png',
337
+ mimeType: 'image/png',
338
+ buffer: await fs.readFile('fixtures/avatar.png')
339
+ }
340
+ }
341
+ });
342
+ expect(response.ok()).toBeTruthy();
343
+ });
344
+ ```
345
+
346
+ ---
347
+
348
+ ## Next Steps
349
+
350
+ After reviewing traceability:
351
+
352
+ 1. **Fix critical gaps** - Add tests for P0/P1 requirements
353
+ 2. **Run *test-review** - Ensure new tests meet quality standards
354
+ 3. **Run Phase 2** - Make gate decision after gaps addressed
355
+ ```
356
+
357
+ ---
358
+
359
+ ## Phase 2: Quality Gate Decision
360
+
361
+ After Phase 1 coverage analysis is complete, run Phase 2 for the gate decision.
362
+
363
+ **Prerequisites:**
364
+ - Phase 1 traceability matrix complete
365
+ - Test execution results available (must have test results)
366
+
367
+ **Note:** Phase 2 will skip if test execution results aren't provided. The workflow requires actual test run results to make gate decisions.
368
+
369
+ ### 7. Run Phase 2
370
+
371
+ ```
372
+ *trace
373
+ ```
374
+
375
+ Select "Phase 2: Quality Gate Decision"
376
+
377
+ ### 8. Provide Additional Context
378
+
379
+ TEA will ask for:
380
+
381
+ **Gate Type:**
382
+ - Story gate (small release)
383
+ - Epic gate (larger release)
384
+ - Release gate (production deployment)
385
+ - Hotfix gate (emergency fix)
386
+
387
+ **Decision Mode:**
388
+ - **Deterministic** - Rule-based (coverage %, quality scores)
389
+ - **Manual** - Team decision with TEA guidance
390
+
391
+ **Example:**
392
+ ```
393
+ Gate type: Epic gate
394
+ Decision mode: Deterministic
395
+ ```
396
+
397
+ ### 9. Provide Supporting Evidence
398
+
399
+ TEA will request:
400
+
401
+ **Phase 1 Results:**
402
+ ```
403
+ traceability-matrix.md (from Phase 1)
404
+ ```
405
+
406
+ **Test Quality (Optional):**
407
+ ```
408
+ test-review.md (from *test-review)
409
+ ```
410
+
411
+ **NFR Assessment (Optional):**
412
+ ```
413
+ nfr-assessment.md (from *nfr-assess)
414
+ ```
415
+
416
+ ### 10. Review Gate Decision
417
+
418
+ TEA makes evidence-based gate decision and writes to separate file.
419
+
420
+ #### Gate Decision (`gate-decision-{gate_type}-{story_id}.md`):
421
+
422
+ ```markdown
423
+ ---
424
+
425
+ # Phase 2: Quality Gate Decision
426
+
427
+ **Gate Type:** Epic Gate
428
+ **Decision:** PASS ✅
429
+ **Date:** 2026-01-13
430
+ **Approvers:** Product Manager, Tech Lead, QA Lead
431
+
432
+ ## Decision Summary
433
+
434
+ **Verdict:** Ready to release
435
+
436
+ **Evidence:**
437
+ - P0 coverage: 100% (5/5 requirements)
438
+ - P1 coverage: 100% (6/6 requirements)
439
+ - P2 coverage: 33% (1/3 requirements) - acceptable
440
+ - Test quality score: 84/100
441
+ - NFR assessment: PASS
442
+
443
+ ## Coverage Analysis
444
+
445
+ | Priority | Required Coverage | Actual Coverage | Status |
446
+ | -------- | ----------------- | --------------- | --------------------- |
447
+ | **P0** | 100% | 100% | ✅ PASS |
448
+ | **P1** | 90% | 100% | ✅ PASS |
449
+ | **P2** | 50% | 33% | ⚠️ Below (acceptable) |
450
+ | **P3** | 20% | 0% | ✅ PASS (low priority) |
451
+
452
+ **Rationale:**
453
+ - All critical path (P0) requirements fully tested
454
+ - All high-value (P1) requirements fully tested
455
+ - P2 gap (profile export) is low risk and deferred to next release
456
+
457
+ ## Quality Metrics
458
+
459
+ | Metric | Threshold | Actual | Status |
460
+ | ------------------ | --------- | ------ | ------ |
461
+ | P0/P1 Coverage | >95% | 100% | ✅ |
462
+ | Test Quality Score | >80 | 84 | ✅ |
463
+ | NFR Status | PASS | PASS | ✅ |
464
+
465
+ ## Risks and Mitigations
466
+
467
+ ### Accepted Risks
468
+
469
+ **Risk 1: Profile export not tested (P2)**
470
+ - **Impact:** Medium (users can't export profile)
471
+ - **Mitigation:** Feature flag disabled by default
472
+ - **Plan:** Add tests in v1.3 release (February)
473
+ - **Monitoring:** Track feature flag usage
474
+
475
+ ## Approvals
476
+
477
+ - [x] **Product Manager** - Business requirements met (Approved: 2026-01-13)
478
+ - [x] **Tech Lead** - Technical quality acceptable (Approved: 2026-01-13)
479
+ - [x] **QA Lead** - Test coverage sufficient (Approved: 2026-01-13)
480
+
481
+ ## Next Steps
482
+
483
+ ### Deployment
484
+ 1. Merge to main branch
485
+ 2. Deploy to staging
486
+ 3. Run smoke tests in staging
487
+ 4. Deploy to production
488
+ 5. Monitor for 24 hours
489
+
490
+ ### Monitoring
491
+ - Set alerts for profile endpoint (P99 > 200ms)
492
+ - Track error rates (target: <0.1%)
493
+ - Monitor profile export feature flag usage
494
+
495
+ ### Future Work
496
+ - Add profile export tests (v1.3)
497
+ - Expand P2 coverage to 50%
498
+ ```
499
+
500
+ ### Gate Decision Rules
501
+
502
+ TEA uses deterministic rules when decision_mode = "deterministic":
503
+
504
+ | P0 Coverage | P1 Coverage | Overall Coverage | Decision |
505
+ | ----------- | ----------- | ---------------- | ---------------------------- |
506
+ | 100% | ≥90% | ≥80% | **PASS** ✅ |
507
+ | 100% | 80-89% | ≥80% | **CONCERNS** ⚠️ |
508
+ | <100% | Any | Any | **FAIL** ❌ |
509
+ | Any | <80% | Any | **FAIL** ❌ |
510
+ | Any | Any | <80% | **FAIL** ❌ |
511
+ | Any | Any | Any | **WAIVED** ⏭️ (with approval) |
512
+
513
+ **Detailed Rules:**
514
+ - **PASS:** P0=100%, P1≥90%, Overall≥80%
515
+ - **CONCERNS:** P0=100%, P1 80-89%, Overall≥80% (below threshold but not critical)
516
+ - **FAIL:** P0<100% OR P1<80% OR Overall<80% (critical gaps)
517
+
518
+ **PASS** ✅: All criteria met, ready to release
519
+
520
+ **CONCERNS** ⚠️: Some criteria not met, but:
521
+ - Mitigation plan exists
522
+ - Risk is acceptable
523
+ - Team approves proceeding
524
+ - Monitoring in place
525
+
526
+ **FAIL** ❌: Critical criteria not met:
527
+ - P0 requirements not tested
528
+ - Critical security vulnerabilities
529
+ - System is broken
530
+ - Cannot deploy
531
+
532
+ **WAIVED** ⏭️: Business approves proceeding despite concerns:
533
+ - Documented business justification
534
+ - Accepted risks quantified
535
+ - Approver signatures
536
+ - Future plans documented
537
+
538
+ ### Example CONCERNS Decision
539
+
540
+ ```markdown
541
+ ## Decision Summary
542
+
543
+ **Verdict:** CONCERNS ⚠️ - Proceed with monitoring
544
+
545
+ **Evidence:**
546
+ - P0 coverage: 100%
547
+ - P1 coverage: 85% (below 90% target)
548
+ - Test quality: 78/100 (below 80 target)
549
+
550
+ **Gaps:**
551
+ - 1 P1 requirement not tested (avatar upload)
552
+ - Test quality score slightly below threshold
553
+
554
+ **Mitigation:**
555
+ - Avatar upload not critical for v1.2 launch
556
+ - Test quality issues are minor (no flakiness)
557
+ - Monitoring alerts configured
558
+
559
+ **Approvals:**
560
+ - Product Manager: APPROVED (business priority to launch)
561
+ - Tech Lead: APPROVED (technical risk acceptable)
562
+ ```
563
+
564
+ ### Example FAIL Decision
565
+
566
+ ```markdown
567
+ ## Decision Summary
568
+
569
+ **Verdict:** FAIL ❌ - Cannot release
570
+
571
+ **Evidence:**
572
+ - P0 coverage: 60% (below 95% threshold)
573
+ - Critical security vulnerability (CVE-2024-12345)
574
+ - Test quality: 55/100
575
+
576
+ **Blockers:**
577
+ 1. **Login flow not tested** (P0 requirement)
578
+ - Critical path completely untested
579
+ - Must add E2E and API tests
580
+
581
+ 2. **SQL injection vulnerability**
582
+ - Critical security issue
583
+ - Must fix before deployment
584
+
585
+ **Actions Required:**
586
+ 1. Add login tests (QA team, 2 days)
587
+ 2. Fix SQL injection (backend team, 1 day)
588
+ 3. Re-run security scan (DevOps, 1 hour)
589
+ 4. Re-run *trace after fixes
590
+
591
+ **Cannot proceed until all blockers resolved.**
592
+ ```
593
+
594
+ ## What You Get
595
+
596
+ ### Phase 1: Traceability Matrix
597
+ - Requirement-to-test mapping
598
+ - Coverage classification (FULL/PARTIAL/NONE)
599
+ - Gap identification with priorities
600
+ - Actionable recommendations
601
+
602
+ ### Phase 2: Gate Decision
603
+ - Go/no-go verdict (PASS/CONCERNS/FAIL/WAIVED)
604
+ - Evidence summary
605
+ - Approval signatures
606
+ - Next steps and monitoring plan
607
+
608
+ ## Usage Patterns
609
+
610
+ ### Greenfield Projects
611
+
612
+ **Phase 3:**
613
+ ```
614
+ After architecture complete:
615
+ 1. Run *test-design (system-level)
616
+ 2. Run *trace Phase 1 (baseline)
617
+ 3. Use for implementation-readiness gate
618
+ ```
619
+
620
+ **Phase 4:**
621
+ ```
622
+ After each epic/story:
623
+ 1. Run *trace Phase 1 (refresh coverage)
624
+ 2. Identify gaps
625
+ 3. Add missing tests
626
+ ```
627
+
628
+ **Release Gate:**
629
+ ```
630
+ Before deployment:
631
+ 1. Run *trace Phase 1 (final coverage check)
632
+ 2. Run *trace Phase 2 (make gate decision)
633
+ 3. Get approvals
634
+ 4. Deploy (if PASS or WAIVED)
635
+ ```
636
+
637
+ ### Brownfield Projects
638
+
639
+ **Phase 2:**
640
+ ```
641
+ Before planning new work:
642
+ 1. Run *trace Phase 1 (establish baseline)
643
+ 2. Understand existing coverage
644
+ 3. Plan testing strategy
645
+ ```
646
+
647
+ **Phase 4:**
648
+ ```
649
+ After each epic/story:
650
+ 1. Run *trace Phase 1 (refresh)
651
+ 2. Compare to baseline
652
+ 3. Track coverage improvement
653
+ ```
654
+
655
+ **Release Gate:**
656
+ ```
657
+ Before deployment:
658
+ 1. Run *trace Phase 1 (final check)
659
+ 2. Run *trace Phase 2 (gate decision)
660
+ 3. Compare to baseline
661
+ 4. Deploy if coverage maintained or improved
662
+ ```
663
+
664
+ ## Tips
665
+
666
+ ### Run Phase 1 Frequently
667
+
668
+ Don't wait until release gate:
669
+
670
+ ```
671
+ After Story 1: *trace Phase 1 (identify gaps early)
672
+ After Story 2: *trace Phase 1 (refresh)
673
+ After Story 3: *trace Phase 1 (refresh)
674
+ Before Release: *trace Phase 1 + Phase 2 (final gate)
675
+ ```
676
+
677
+ **Benefit:** Catch gaps early when they're cheap to fix.
678
+
679
+ ### Use Coverage Trends
680
+
681
+ Track improvement over time:
682
+
683
+ ```markdown
684
+ ## Coverage Trend
685
+
686
+ | Date | Epic | P0/P1 Coverage | Quality Score | Status |
687
+ | ---------- | -------- | -------------- | ------------- | -------------- |
688
+ | 2026-01-01 | Baseline | 45% | - | Starting point |
689
+ | 2026-01-08 | Epic 1 | 78% | 72 | Improving |
690
+ | 2026-01-15 | Epic 2 | 92% | 84 | Near target |
691
+ | 2026-01-20 | Epic 3 | 100% | 88 | Ready! |
692
+ ```
693
+
694
+ ### Set Coverage Targets by Priority
695
+
696
+ Don't aim for 100% across all priorities:
697
+
698
+ **Recommended Targets:**
699
+ - **P0:** 100% (critical path must be tested)
700
+ - **P1:** 90% (high-value scenarios)
701
+ - **P2:** 50% (nice-to-have features)
702
+ - **P3:** 20% (low-value edge cases)
703
+
704
+ ### Use Classification Strategically
705
+
706
+ **FULL** ✅: Requirement completely tested
707
+ - E2E test covers full user workflow
708
+ - API test validates backend behavior
709
+ - All acceptance criteria covered
710
+
711
+ **PARTIAL** ⚠️: Some aspects tested
712
+ - E2E test exists but missing scenarios
713
+ - API test exists but incomplete
714
+ - Some acceptance criteria not covered
715
+
716
+ **NONE** ❌: No tests exist
717
+ - Requirement identified but not tested
718
+ - May be intentional (low priority) or oversight
719
+
720
+ **Classification helps prioritize:**
721
+ - Fix NONE coverage for P0/P1 requirements first
722
+ - Enhance PARTIAL coverage for P0 requirements
723
+ - Accept PARTIAL or NONE for P2/P3 if time-constrained
724
+
725
+ ### Automate Gate Decisions
726
+
727
+ Use traceability in CI:
728
+
729
+ ```yaml
730
+ # .github/workflows/gate-check.yml
731
+ - name: Check coverage
732
+ run: |
733
+ # Run trace Phase 1
734
+ # Parse coverage percentages
735
+ if [ $P0_COVERAGE -lt 95 ]; then
736
+ echo "P0 coverage below 95%"
737
+ exit 1
738
+ fi
739
+ ```
740
+
741
+ ### Document Waivers Clearly
742
+
743
+ If proceeding with WAIVED:
744
+
745
+ **Required:**
746
+ ```markdown
747
+ ## Waiver Documentation
748
+
749
+ **Waived By:** VP Engineering, Product Lead
750
+ **Date:** 2026-01-15
751
+ **Gate Type:** Release Gate v1.2
752
+
753
+ **Justification:**
754
+ Business critical to launch by Q1 for investor demo.
755
+ Performance concerns acceptable for initial user base.
756
+
757
+ **Conditions:**
758
+ - Set monitoring alerts for P99 > 300ms
759
+ - Plan optimization for v1.3 (due February 28)
760
+ - Monitor user feedback closely
761
+
762
+ **Accepted Risks:**
763
+ - 1% of users may experience 350ms latency
764
+ - Avatar upload feature incomplete
765
+ - Profile export deferred to next release
766
+
767
+ **Quantified Impact:**
768
+ - Affects <100 users at current scale
769
+ - Workaround exists (manual export)
770
+ - Monitoring will catch issues early
771
+
772
+ **Approvals:**
773
+ - VP Engineering: [Signature] Date: 2026-01-15
774
+ - Product Lead: [Signature] Date: 2026-01-15
775
+ - QA Lead: [Signature] Date: 2026-01-15
776
+ ```
777
+
778
+ ## Common Issues
779
+
780
+ ### Too Many Gaps to Fix
781
+
782
+ **Problem:** Phase 1 shows 50 uncovered requirements.
783
+
784
+ **Solution:** Prioritize ruthlessly:
785
+ 1. Fix all P0 gaps (critical path)
786
+ 2. Fix high-risk P1 gaps
787
+ 3. Accept low-risk P1 gaps with mitigation
788
+ 4. Defer all P2/P3 gaps
789
+
790
+ **Don't try to fix everything** - focus on what matters for release.
791
+
792
+ ### Can't Find Test Coverage
793
+
794
+ **Problem:** Tests exist but TEA can't map them to requirements.
795
+
796
+ **Cause:** Tests don't reference requirements.
797
+
798
+ **Solution:** Add traceability comments:
799
+ ```typescript
800
+ test('should display profile', async ({ page }) => {
801
+ // Covers: Requirement 1 - User can view profile
802
+ // Acceptance criteria: Navigate to /profile, see name/email
803
+ await page.goto('/profile');
804
+ await expect(page.getByText('Test User')).toBeVisible();
805
+ });
806
+ ```
807
+
808
+ Or use test IDs:
809
+ ```typescript
810
+ test('[REQ-1] should display profile', async ({ page }) => {
811
+ // Test code...
812
+ });
813
+ ```
814
+
815
+ ### Unclear What "FULL" vs "PARTIAL" Means
816
+
817
+ **FULL** ✅: All acceptance criteria tested
818
+ ```
819
+ Requirement: User can edit profile
820
+ Acceptance criteria:
821
+ - Can modify name ✅ Tested
822
+ - Can modify email ✅ Tested
823
+ - Can upload avatar ✅ Tested
824
+ - Changes persist ✅ Tested
825
+ Result: FULL coverage
826
+ ```
827
+
828
+ **PARTIAL** ⚠️: Some criteria tested, some not
829
+ ```
830
+ Requirement: User can edit profile
831
+ Acceptance criteria:
832
+ - Can modify name ✅ Tested
833
+ - Can modify email ✅ Tested
834
+ - Can upload avatar ❌ Not tested
835
+ - Changes persist ✅ Tested
836
+ Result: PARTIAL coverage (3/4 criteria)
837
+ ```
838
+
839
+ ### Gate Decision Unclear
840
+
841
+ **Problem:** Not sure if PASS or CONCERNS is appropriate.
842
+
843
+ **Guideline:**
844
+
845
+ **Use PASS** ✅ if:
846
+ - All P0 requirements 100% covered
847
+ - P1 requirements >90% covered
848
+ - No critical issues
849
+ - NFRs met
850
+
851
+ **Use CONCERNS** ⚠️ if:
852
+ - P1 coverage 85-90% (close to threshold)
853
+ - Minor quality issues (score 70-79)
854
+ - NFRs have mitigation plans
855
+ - Team agrees risk is acceptable
856
+
857
+ **Use FAIL** ❌ if:
858
+ - P0 coverage <100% (critical path gaps)
859
+ - P1 coverage <85%
860
+ - Critical security/performance issues
861
+ - No mitigation possible
862
+
863
+ **When in doubt, use CONCERNS** and document the risk.
864
+
865
+ ## Related Guides
866
+
867
+ - [How to Run Test Design](/docs/how-to/workflows/run-test-design.md) - Provides requirements for traceability
868
+ - [How to Run Test Review](/docs/how-to/workflows/run-test-review.md) - Quality scores feed gate
869
+ - [How to Run NFR Assessment](/docs/how-to/workflows/run-nfr-assess.md) - NFR status feeds gate
870
+
871
+ ## Understanding the Concepts
872
+
873
+ - [Risk-Based Testing](/docs/explanation/tea/risk-based-testing.md) - Why P0 vs P3 matters
874
+ - [TEA Overview](/docs/explanation/features/tea-overview.md) - Gate decisions in context
875
+
876
+ ## Reference
877
+
878
+ - [Command: *trace](/docs/reference/tea/commands.md#trace) - Full command reference
879
+ - [TEA Configuration](/docs/reference/tea/configuration.md) - Config options
880
+
881
+ ---
882
+
883
+ Generated with [BMad Method](https://bmad-method.org) - TEA (Test Architect)