ma-agents 3.6.2 → 3.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (951) hide show
  1. package/CONTRIBUTING.md +139 -0
  2. package/README.md +27 -11
  3. package/bin/cli.js +34 -10
  4. package/docs/deployment/vllm-nemotron.md +4 -2
  5. package/lib/.bmad-extension-plugin.build-1264-1777348888201/.claude-plugin/marketplace.json +109 -0
  6. package/lib/{bmad-extension → .bmad-extension-plugin.build-1264-1777348888201/skills}/module-help.csv +5 -5
  7. package/lib/.bmad-extension-plugin.build-1264-1777348888201/skills/module.yaml +20 -0
  8. package/lib/.bmad-extension-plugin.build-24696-1777348768444/.claude-plugin/marketplace.json +109 -0
  9. package/lib/.bmad-extension-plugin.build-24696-1777348768444/skills/module-help.csv +62 -0
  10. package/lib/.bmad-extension-plugin.build-24696-1777348768444/skills/module.yaml +20 -0
  11. package/lib/.bmad-extension-plugin.build-25428-1777348694953/.claude-plugin/marketplace.json +109 -0
  12. package/lib/.bmad-extension-plugin.build-25428-1777348694953/skills/module-help.csv +62 -0
  13. package/lib/.bmad-extension-plugin.build-25428-1777348694953/skills/module.yaml +20 -0
  14. package/lib/agents.js +36 -6
  15. package/lib/bmad-cache/bmb/.claude-plugin/marketplace.json +4 -11
  16. package/lib/bmad-cache/bmb/README.md +1 -1
  17. package/lib/bmad-cache/bmb/_git_preserved/index +0 -0
  18. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.idx +0 -0
  19. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/{pack-554778ad4e7254827618ebd2497c3f4bce9054a4.pack → pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.pack} +0 -0
  20. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.rev +0 -0
  21. package/lib/bmad-cache/bmb/_git_preserved/packed-refs +1 -1
  22. package/lib/bmad-cache/bmb/_git_preserved/refs/heads/main +1 -1
  23. package/lib/bmad-cache/bmb/_git_preserved/refs/tags/v1.7.0 +1 -0
  24. package/lib/bmad-cache/bmb/_git_preserved/shallow +1 -1
  25. package/lib/bmad-cache/bmb/package-lock.json +2 -2
  26. package/lib/bmad-cache/bmb/package.json +2 -7
  27. package/lib/bmad-cache/bmb/skills/bmad-agent-builder/assets/customize-template.toml +62 -0
  28. package/lib/bmad-cache/bmb/skills/bmad-agent-builder/assets/sample-customize-analyst.toml +87 -0
  29. package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/customize-template.toml +56 -0
  30. package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/sample-customize-product-brief.toml +51 -0
  31. package/lib/bmad-cache/bmb/tools/validate-doc-links.cjs +6 -1
  32. package/lib/bmad-cache/bmb/website/astro.config.mjs +5 -1
  33. package/lib/bmad-cache/cache-manifest.json +13 -11
  34. package/lib/bmad-cache/cis/.claude-plugin/marketplace.json +1 -1
  35. package/lib/bmad-cache/cis/README.md +1 -1
  36. package/lib/bmad-cache/cis/_git_preserved/index +0 -0
  37. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.idx +0 -0
  38. package/lib/bmad-cache/cis/_git_preserved/objects/pack/{pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.pack → pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.pack} +0 -0
  39. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.rev +0 -0
  40. package/lib/bmad-cache/cis/_git_preserved/packed-refs +1 -1
  41. package/lib/bmad-cache/cis/_git_preserved/refs/heads/main +1 -1
  42. package/lib/bmad-cache/cis/_git_preserved/shallow +1 -1
  43. package/lib/bmad-cache/cis/package.json +1 -1
  44. package/lib/bmad-cache/cis/src/module.yaml +49 -0
  45. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-brainstorming-coach/customize.toml +38 -0
  46. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-creative-problem-solver/customize.toml +38 -0
  47. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-design-thinking-coach/customize.toml +39 -0
  48. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-innovation-strategist/customize.toml +38 -0
  49. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-presentation-master/customize.toml +73 -0
  50. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-storyteller/customize.toml +60 -0
  51. package/lib/bmad-cache/cis/src/skills/bmad-cis-design-thinking/customize.toml +41 -0
  52. package/lib/bmad-cache/cis/src/skills/bmad-cis-innovation-strategy/customize.toml +41 -0
  53. package/lib/bmad-cache/cis/src/skills/bmad-cis-problem-solving/customize.toml +42 -0
  54. package/lib/bmad-cache/cis/src/skills/bmad-cis-storytelling/customize.toml +41 -0
  55. package/lib/bmad-cache/cis/tools/build-docs.mjs +8 -0
  56. package/lib/bmad-cache/cis/website/astro.config.mjs +34 -4
  57. package/lib/bmad-cache/cis/website/src/content/config.ts +2 -1
  58. package/lib/bmad-cache/cis/website/src/content/i18n/zh-CN.json +28 -0
  59. package/lib/bmad-cache/cis/website/src/lib/locales.mjs +27 -0
  60. package/lib/bmad-cache/gds/.claude-plugin/marketplace.json +7 -6
  61. package/lib/bmad-cache/gds/README.md +5 -3
  62. package/lib/bmad-cache/gds/_git_preserved/index +0 -0
  63. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.idx +0 -0
  64. package/lib/bmad-cache/gds/_git_preserved/objects/pack/{pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.pack → pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.pack} +0 -0
  65. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.rev +0 -0
  66. package/lib/bmad-cache/gds/_git_preserved/packed-refs +1 -1
  67. package/lib/bmad-cache/gds/_git_preserved/refs/heads/main +1 -1
  68. package/lib/bmad-cache/gds/_git_preserved/shallow +1 -1
  69. package/lib/bmad-cache/gds/package.json +1 -1
  70. package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/customize.toml +57 -0
  71. package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/customize.toml +59 -0
  72. package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/customize.toml +129 -0
  73. package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/customize.toml +60 -0
  74. package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/customize.toml +65 -0
  75. package/lib/bmad-cache/gds/src/module-help.csv +4 -4
  76. package/lib/bmad-cache/gds/src/module.yaml +43 -1
  77. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/customize.toml +41 -0
  78. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/customize.toml +41 -0
  79. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/customize.toml +41 -0
  80. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/customize.toml +41 -0
  81. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/customize.toml +41 -0
  82. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-prd/customize.toml +41 -0
  83. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/customize.toml +41 -0
  84. package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-gdd/customize.toml +41 -0
  85. package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-prd/customize.toml +41 -0
  86. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/customize.toml +41 -0
  87. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/data/genre-complexity.csv +26 -0
  88. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/customize.toml +41 -0
  89. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/domain-complexity.csv +15 -0
  90. package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/project-types.csv +11 -0
  91. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/customize.toml +41 -0
  92. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/customize.toml +41 -0
  93. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/customize.toml +41 -0
  94. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/customize.toml +41 -0
  95. package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/customize.toml +41 -0
  96. package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/customize.toml +41 -0
  97. package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/customize.toml +41 -0
  98. package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/customize.toml +41 -0
  99. package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/customize.toml +41 -0
  100. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/customize.toml +41 -0
  101. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/customize.toml +41 -0
  102. package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/customize.toml +41 -0
  103. package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/customize.toml +41 -0
  104. package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/customize.toml +41 -0
  105. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/customize.toml +41 -0
  106. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/customize.toml +41 -0
  107. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/customize.toml +41 -0
  108. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/customize.toml +41 -0
  109. package/lib/bmad-cache/gds/src/workflows/gds-document-project/customize.toml +41 -0
  110. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/customize.toml +41 -0
  111. package/lib/bmad-cache/tea/.claude-plugin/marketplace.json +1 -1
  112. package/lib/bmad-cache/tea/.github/CODE_OF_CONDUCT.md +128 -0
  113. package/lib/bmad-cache/tea/.github/FUNDING.yaml +15 -0
  114. package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/config.yaml +11 -0
  115. package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/feature_request.md +70 -0
  116. package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/issue.md +61 -0
  117. package/lib/bmad-cache/tea/.github/workflows/docs.yaml +66 -0
  118. package/lib/bmad-cache/tea/.github/workflows/manual-release.yaml +216 -0
  119. package/lib/bmad-cache/tea/.github/workflows/quality.yaml +117 -0
  120. package/lib/bmad-cache/tea/.vscode/settings.json +47 -0
  121. package/lib/bmad-cache/tea/README.md +63 -55
  122. package/lib/bmad-cache/tea/_git_preserved/index +0 -0
  123. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.idx +0 -0
  124. package/lib/bmad-cache/tea/_git_preserved/objects/pack/{pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.pack → pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.pack} +0 -0
  125. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.rev +0 -0
  126. package/lib/bmad-cache/tea/_git_preserved/packed-refs +1 -1
  127. package/lib/bmad-cache/tea/_git_preserved/refs/heads/main +1 -1
  128. package/lib/bmad-cache/tea/_git_preserved/shallow +1 -1
  129. package/lib/bmad-cache/tea/docs/explanation/engagement-models.md +1 -1
  130. package/lib/bmad-cache/tea/docs/explanation/tea-overview.md +1 -1
  131. package/lib/bmad-cache/tea/docs/glossary/index.md +1 -1
  132. package/lib/bmad-cache/tea/docs/how-to/customization/extend-tea-with-custom-workflows.md +29 -0
  133. package/lib/bmad-cache/tea/docs/how-to/workflows/run-trace.md +27 -20
  134. package/lib/bmad-cache/tea/docs/how-to/workflows/teach-me-testing.md +2 -2
  135. package/lib/bmad-cache/tea/docs/reference/commands.md +3 -3
  136. package/lib/bmad-cache/tea/docs/reference/troubleshooting.md +36 -0
  137. package/lib/bmad-cache/tea/docs/tutorials/learn-testing-tea-academy.md +1 -1
  138. package/lib/bmad-cache/tea/package-lock.json +2 -2
  139. package/lib/bmad-cache/tea/package.json +3 -3
  140. package/lib/bmad-cache/tea/src/agents/bmad-tea/SKILL.md +54 -44
  141. package/lib/bmad-cache/tea/src/agents/bmad-tea/customize.toml +104 -0
  142. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/contract-testing.md +32 -15
  143. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-broker-webhooks.md +237 -0
  144. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  145. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-mcp.md +1 -0
  146. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  147. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-overview.md +15 -12
  148. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  149. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
  150. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-module-setup.md +122 -0
  151. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-providers.md +155 -0
  152. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-risk-guidance.md +114 -0
  153. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-template-matchers.md +160 -0
  154. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  155. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-timeout-error.md +130 -0
  156. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-waiting-querying.md +167 -0
  157. package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/tea-index.csv +13 -4
  158. package/lib/bmad-cache/tea/src/module.yaml +8 -0
  159. package/lib/bmad-cache/tea/src/workflows/testarch/README.md +5 -3
  160. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/SKILL.md +124 -1
  161. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/checklist.md +3 -2
  162. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/customize.toml +40 -0
  163. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/instructions.md +7 -0
  164. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01-init.md +1 -1
  165. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01b-continue.md +1 -1
  166. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-02-assess.md +1 -1
  167. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-01.md +1 -1
  168. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-02.md +1 -1
  169. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-03.md +1 -1
  170. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-04.md +1 -1
  171. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-05.md +1 -1
  172. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-06.md +1 -1
  173. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-07.md +1 -1
  174. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-05-completion.md +8 -0
  175. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-01-assess-workflow.md +2 -2
  176. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-02-apply-edits.md +9 -1
  177. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-v/step-v-01-validate.md +12 -3
  178. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/SKILL.md +80 -1
  179. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/customize.toml +40 -0
  180. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/instructions.md +2 -2
  181. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/contract-testing.md +32 -15
  182. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-broker-webhooks.md +237 -0
  183. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  184. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-mcp.md +1 -0
  185. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  186. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-overview.md +15 -12
  187. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  188. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
  189. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-module-setup.md +122 -0
  190. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-providers.md +155 -0
  191. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-risk-guidance.md +114 -0
  192. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-template-matchers.md +160 -0
  193. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  194. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-timeout-error.md +130 -0
  195. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-waiting-querying.md +167 -0
  196. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/tea-index.csv +13 -4
  197. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-01-preflight-and-context.md +3 -3
  198. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-02-generation-mode.md +1 -1
  199. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-03-test-strategy.md +1 -1
  200. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04-generate-tests.md +1 -1
  201. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04a-subagent-api-failing.md +1 -1
  202. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04c-aggregate.md +1 -1
  203. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-05-validate-and-complete.md +8 -0
  204. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-01-assess.md +1 -1
  205. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-02-apply-edit.md +8 -0
  206. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-v/step-01-validate.md +9 -1
  207. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/SKILL.md +80 -1
  208. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/customize.toml +40 -0
  209. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/instructions.md +2 -2
  210. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/contract-testing.md +18 -2
  211. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-broker-webhooks.md +237 -0
  212. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  213. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-mcp.md +1 -0
  214. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  215. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  216. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-module-setup.md +122 -0
  217. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-providers.md +155 -0
  218. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-risk-guidance.md +114 -0
  219. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-template-matchers.md +160 -0
  220. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  221. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-timeout-error.md +130 -0
  222. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-waiting-querying.md +167 -0
  223. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/tea-index.csv +12 -4
  224. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-01-preflight-and-context.md +1 -1
  225. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-02-identify-targets.md +1 -1
  226. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03-generate-tests.md +1 -1
  227. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03a-subagent-api.md +9 -1
  228. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03c-aggregate.md +1 -1
  229. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-04-validate-and-summarize.md +8 -0
  230. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-01-assess.md +1 -1
  231. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-02-apply-edit.md +8 -0
  232. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-v/step-01-validate.md +9 -1
  233. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/SKILL.md +80 -1
  234. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/customize.toml +40 -0
  235. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/instructions.md +2 -2
  236. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/contract-testing.md +18 -2
  237. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-broker-webhooks.md +237 -0
  238. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  239. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-mcp.md +1 -0
  240. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  241. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  242. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-module-setup.md +122 -0
  243. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-providers.md +155 -0
  244. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-risk-guidance.md +114 -0
  245. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-template-matchers.md +160 -0
  246. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  247. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-timeout-error.md +130 -0
  248. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-waiting-querying.md +167 -0
  249. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/tea-index.csv +12 -4
  250. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-01-preflight.md +1 -1
  251. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-02-generate-pipeline.md +15 -7
  252. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-03-configure-quality-gates.md +7 -2
  253. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-04-validate-and-summary.md +8 -0
  254. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-01-assess.md +1 -1
  255. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-02-apply-edit.md +8 -0
  256. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-v/step-01-validate.md +9 -1
  257. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/SKILL.md +80 -1
  258. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/customize.toml +40 -0
  259. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/instructions.md +2 -2
  260. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/contract-testing.md +18 -2
  261. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-broker-webhooks.md +237 -0
  262. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  263. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-mcp.md +1 -0
  264. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  265. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  266. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-module-setup.md +122 -0
  267. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-providers.md +155 -0
  268. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-risk-guidance.md +114 -0
  269. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-template-matchers.md +160 -0
  270. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  271. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-timeout-error.md +130 -0
  272. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-waiting-querying.md +167 -0
  273. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/tea-index.csv +12 -4
  274. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-01-preflight.md +1 -1
  275. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-02-select-framework.md +1 -1
  276. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-03-scaffold-framework.md +11 -7
  277. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-04-docs-and-scripts.md +1 -1
  278. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-05-validate-and-summary.md +8 -0
  279. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-01-assess.md +1 -1
  280. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-02-apply-edit.md +8 -0
  281. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-v/step-01-validate.md +9 -1
  282. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/SKILL.md +80 -1
  283. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/customize.toml +40 -0
  284. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/instructions.md +2 -2
  285. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/contract-testing.md +18 -2
  286. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-broker-webhooks.md +237 -0
  287. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  288. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-mcp.md +1 -0
  289. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  290. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  291. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-module-setup.md +122 -0
  292. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-providers.md +155 -0
  293. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-risk-guidance.md +114 -0
  294. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-template-matchers.md +160 -0
  295. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  296. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-timeout-error.md +130 -0
  297. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-waiting-querying.md +167 -0
  298. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/tea-index.csv +12 -4
  299. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md +1 -1
  300. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-02-define-thresholds.md +1 -1
  301. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-03-gather-evidence.md +1 -1
  302. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04-evaluate-and-score.md +1 -1
  303. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +1 -1
  304. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-05-generate-report.md +8 -0
  305. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-01-assess.md +1 -1
  306. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-02-apply-edit.md +8 -0
  307. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-v/step-01-validate.md +9 -1
  308. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/SKILL.md +82 -1
  309. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/customize.toml +40 -0
  310. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/instructions.md +2 -2
  311. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/contract-testing.md +18 -2
  312. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-broker-webhooks.md +237 -0
  313. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  314. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-mcp.md +1 -0
  315. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  316. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  317. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-module-setup.md +122 -0
  318. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-providers.md +155 -0
  319. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-risk-guidance.md +114 -0
  320. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-template-matchers.md +160 -0
  321. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  322. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-timeout-error.md +130 -0
  323. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-waiting-querying.md +167 -0
  324. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/tea-index.csv +12 -4
  325. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01-detect-mode.md +7 -1
  326. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01b-resume.md +29 -15
  327. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-02-load-context.md +7 -1
  328. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-03-risk-and-testability.md +7 -1
  329. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-04-coverage-plan.md +7 -1
  330. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-05-generate-output.md +14 -0
  331. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-01-assess.md +1 -1
  332. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-02-apply-edit.md +8 -0
  333. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-v/step-01-validate.md +9 -1
  334. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-architecture-template.md +3 -0
  335. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-qa-template.md +3 -0
  336. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-template.md +3 -0
  337. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/SKILL.md +80 -1
  338. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/customize.toml +40 -0
  339. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/instructions.md +2 -2
  340. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/contract-testing.md +18 -2
  341. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-broker-webhooks.md +237 -0
  342. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  343. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-mcp.md +1 -0
  344. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  345. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  346. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-module-setup.md +122 -0
  347. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-providers.md +155 -0
  348. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-risk-guidance.md +114 -0
  349. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-template-matchers.md +160 -0
  350. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  351. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-timeout-error.md +130 -0
  352. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-waiting-querying.md +167 -0
  353. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/tea-index.csv +12 -4
  354. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-01-load-context.md +3 -3
  355. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-02-discover-tests.md +1 -1
  356. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03-quality-evaluation.md +1 -1
  357. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03a-subagent-determinism.md +43 -0
  358. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03f-aggregate-scores.md +1 -1
  359. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-04-generate-report.md +8 -0
  360. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-01-assess.md +1 -1
  361. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-02-apply-edit.md +8 -0
  362. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-v/step-01-validate.md +9 -1
  363. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/SKILL.md +82 -1
  364. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/checklist.md +42 -18
  365. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/customize.toml +40 -0
  366. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/instructions.md +6 -4
  367. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/contract-testing.md +18 -2
  368. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-broker-webhooks.md +237 -0
  369. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-consumer-framework-setup.md +134 -12
  370. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-mcp.md +1 -0
  371. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
  372. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
  373. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-module-setup.md +122 -0
  374. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-providers.md +155 -0
  375. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-risk-guidance.md +114 -0
  376. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-template-matchers.md +160 -0
  377. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-testing-fundamentals.md +42 -0
  378. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-timeout-error.md +130 -0
  379. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-waiting-querying.md +167 -0
  380. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/tea-index.csv +12 -4
  381. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01-load-context.md +74 -13
  382. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01b-resume.md +1 -1
  383. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-02-discover-tests.md +24 -4
  384. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-03-map-criteria.md +15 -11
  385. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-04-analyze-gaps.md +210 -3
  386. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-05-gate-decision.md +477 -62
  387. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-01-assess.md +1 -1
  388. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-02-apply-edit.md +8 -0
  389. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-v/step-01-validate.md +9 -1
  390. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/trace-template.md +10 -2
  391. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow-plan.md +14 -11
  392. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.yaml +24 -0
  393. package/lib/bmad-cache/tea/test/test-installation-components.js +210 -66
  394. package/lib/bmad-cache/tea/test/test-knowledge-base.js +6 -1
  395. package/lib/bmad-cache/tea/test/test-release-metadata.js +71 -0
  396. package/lib/bmad-cache/tea/tools/validate-agent-schema.js +73 -0
  397. package/lib/bmad-customize/bmm-qa.customize.yaml +1 -1
  398. package/lib/bmad-extension/.claude-plugin/marketplace.json.template +117 -0
  399. package/lib/bmad-extension/skills/ma-agent-cyber/.gitkeep +0 -0
  400. package/lib/bmad-extension/skills/ma-agent-cyber/SKILL.md +49 -0
  401. package/lib/bmad-extension/skills/ma-agent-cyber/bmad-skill-manifest.yaml +11 -0
  402. package/lib/bmad-extension/skills/ma-agent-devops/.gitkeep +0 -0
  403. package/lib/bmad-extension/skills/ma-agent-devops/SKILL.md +49 -0
  404. package/lib/bmad-extension/skills/ma-agent-devops/bmad-skill-manifest.yaml +11 -0
  405. package/lib/bmad-extension/skills/ma-agent-ml/.gitkeep +0 -0
  406. package/lib/bmad-extension/skills/ma-agent-ml/SKILL.md +59 -0
  407. package/lib/bmad-extension/skills/ma-agent-ml/bmad-skill-manifest.yaml +11 -0
  408. package/lib/bmad-extension/skills/ma-agent-sqa/.gitkeep +0 -0
  409. package/lib/bmad-extension/skills/ma-agent-sqa/SKILL.md +59 -0
  410. package/lib/bmad-extension/skills/ma-agent-sqa/bmad-skill-manifest.yaml +11 -0
  411. package/lib/bmad-extension/skills/ma-agent-sre/.gitkeep +0 -0
  412. package/lib/bmad-extension/skills/ma-agent-sre/SKILL.md +49 -0
  413. package/lib/bmad-extension/skills/ma-agent-sre/bmad-skill-manifest.yaml +11 -0
  414. package/lib/bmad-extension/skills/module-help.csv +62 -0
  415. package/lib/bmad-extension/skills/module.yaml +20 -0
  416. package/lib/bmad-extension-plugin/.claude-plugin/marketplace.json +109 -0
  417. package/lib/bmad-extension-plugin/skills/add-sprint/SKILL.md +175 -0
  418. package/lib/bmad-extension-plugin/skills/add-sprint/bmad-skill-manifest.yaml +3 -0
  419. package/lib/bmad-extension-plugin/skills/add-to-sprint/SKILL.md +243 -0
  420. package/lib/bmad-extension-plugin/skills/add-to-sprint/bmad-skill-manifest.yaml +3 -0
  421. package/lib/bmad-extension-plugin/skills/bmad-dev-story/SKILL.md +6 -0
  422. package/lib/bmad-extension-plugin/skills/bmad-dev-story/bmad-skill-manifest.yaml +3 -0
  423. package/lib/bmad-extension-plugin/skills/bmad-dev-story/checklist.md +80 -0
  424. package/lib/bmad-extension-plugin/skills/bmad-dev-story/workflow.md +509 -0
  425. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/SKILL.md +6 -0
  426. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/bmad-skill-manifest.yaml +3 -0
  427. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/checklist.md +74 -0
  428. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/sprint-status-template.yaml +89 -0
  429. package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/workflow.md +372 -0
  430. package/lib/bmad-extension-plugin/skills/bmad-sprint-status/SKILL.md +6 -0
  431. package/lib/bmad-extension-plugin/skills/bmad-sprint-status/bmad-skill-manifest.yaml +3 -0
  432. package/lib/bmad-extension-plugin/skills/bmad-sprint-status/workflow.md +434 -0
  433. package/lib/bmad-extension-plugin/skills/cleanup-done/.gitkeep +0 -0
  434. package/lib/bmad-extension-plugin/skills/cleanup-done/SKILL.md +215 -0
  435. package/lib/bmad-extension-plugin/skills/cleanup-done/bmad-skill-manifest.yaml +3 -0
  436. package/lib/bmad-extension-plugin/skills/close-sprint/.gitkeep +0 -0
  437. package/lib/bmad-extension-plugin/skills/close-sprint/SKILL.md +379 -0
  438. package/lib/bmad-extension-plugin/skills/close-sprint/bmad-skill-manifest.yaml +3 -0
  439. package/lib/bmad-extension-plugin/skills/create-bug-story/.gitkeep +0 -0
  440. package/lib/bmad-extension-plugin/skills/create-bug-story/SKILL.md +195 -0
  441. package/lib/bmad-extension-plugin/skills/create-bug-story/bmad-skill-manifest.yaml +3 -0
  442. package/lib/bmad-extension-plugin/skills/cyber-generate-certs/.gitkeep +0 -0
  443. package/lib/bmad-extension-plugin/skills/cyber-generate-certs/SKILL.md +27 -0
  444. package/lib/bmad-extension-plugin/skills/cyber-generate-certs/bmad-skill-manifest.yaml +3 -0
  445. package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/.gitkeep +0 -0
  446. package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/SKILL.md +29 -0
  447. package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/bmad-skill-manifest.yaml +3 -0
  448. package/lib/bmad-extension-plugin/skills/cyber-security-audit/.gitkeep +0 -0
  449. package/lib/bmad-extension-plugin/skills/cyber-security-audit/SKILL.md +27 -0
  450. package/lib/bmad-extension-plugin/skills/cyber-security-audit/bmad-skill-manifest.yaml +3 -0
  451. package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/.gitkeep +0 -0
  452. package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/SKILL.md +28 -0
  453. package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/bmad-skill-manifest.yaml +3 -0
  454. package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/.gitkeep +0 -0
  455. package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/SKILL.md +23 -0
  456. package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/bmad-skill-manifest.yaml +3 -0
  457. package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/.gitkeep +0 -0
  458. package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/SKILL.md +22 -0
  459. package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/bmad-skill-manifest.yaml +3 -0
  460. package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/.gitkeep +0 -0
  461. package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/SKILL.md +28 -0
  462. package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/bmad-skill-manifest.yaml +3 -0
  463. package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/.gitkeep +0 -0
  464. package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/SKILL.md +27 -0
  465. package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/bmad-skill-manifest.yaml +3 -0
  466. package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/.gitkeep +0 -0
  467. package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/SKILL.md +27 -0
  468. package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/bmad-skill-manifest.yaml +3 -0
  469. package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/.gitkeep +0 -0
  470. package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/SKILL.md +26 -0
  471. package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/bmad-skill-manifest.yaml +3 -0
  472. package/lib/bmad-extension-plugin/skills/devops-manage-helm/.gitkeep +0 -0
  473. package/lib/bmad-extension-plugin/skills/devops-manage-helm/SKILL.md +28 -0
  474. package/lib/bmad-extension-plugin/skills/devops-manage-helm/bmad-skill-manifest.yaml +3 -0
  475. package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/.gitkeep +0 -0
  476. package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/SKILL.md +24 -0
  477. package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/bmad-skill-manifest.yaml +3 -0
  478. package/lib/bmad-extension-plugin/skills/generate-backlog/.gitkeep +0 -0
  479. package/lib/bmad-extension-plugin/skills/generate-backlog/SKILL.md +195 -0
  480. package/lib/bmad-extension-plugin/skills/generate-backlog/bmad-skill-manifest.yaml +3 -0
  481. package/lib/bmad-extension-plugin/skills/ma-agent-cyber/.gitkeep +0 -0
  482. package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/ma-agent-cyber}/SKILL.md +1 -1
  483. package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/ma-agent-cyber}/bmad-skill-manifest.yaml +1 -1
  484. package/lib/bmad-extension-plugin/skills/ma-agent-devops/.gitkeep +0 -0
  485. package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/ma-agent-devops}/SKILL.md +1 -1
  486. package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/ma-agent-devops}/bmad-skill-manifest.yaml +1 -1
  487. package/lib/bmad-extension-plugin/skills/ma-agent-ml/.gitkeep +0 -0
  488. package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/ma-agent-ml}/SKILL.md +1 -1
  489. package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/ma-agent-ml}/bmad-skill-manifest.yaml +1 -1
  490. package/lib/bmad-extension-plugin/skills/ma-agent-sqa/.gitkeep +0 -0
  491. package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/ma-agent-sqa}/SKILL.md +1 -1
  492. package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/ma-agent-sqa}/bmad-skill-manifest.yaml +1 -1
  493. package/lib/bmad-extension-plugin/skills/ma-agent-sre/.gitkeep +0 -0
  494. package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/ma-agent-sre}/SKILL.md +1 -1
  495. package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/ma-agent-sre}/bmad-skill-manifest.yaml +1 -1
  496. package/lib/bmad-extension-plugin/skills/mil498-ocd/.gitkeep +0 -0
  497. package/lib/bmad-extension-plugin/skills/mil498-ocd/SKILL.md +30 -0
  498. package/lib/bmad-extension-plugin/skills/mil498-ocd/bmad-skill-manifest.yaml +5 -0
  499. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/01-discover-project-artifacts.md +26 -0
  500. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/02-load-template.md +10 -0
  501. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/03-generate-document.md +90 -0
  502. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/04-validate.md +14 -0
  503. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/05-review.md +15 -0
  504. package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/06-save.md +15 -0
  505. package/lib/bmad-extension-plugin/skills/mil498-ocd/template.md +169 -0
  506. package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/.gitkeep +0 -0
  507. package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/SKILL.md +105 -0
  508. package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/bmad-skill-manifest.yaml +5 -0
  509. package/lib/bmad-extension-plugin/skills/mil498-sdd/.gitkeep +0 -0
  510. package/lib/bmad-extension-plugin/skills/mil498-sdd/SKILL.md +30 -0
  511. package/lib/bmad-extension-plugin/skills/mil498-sdd/bmad-skill-manifest.yaml +5 -0
  512. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/01-discover-project-artifacts.md +50 -0
  513. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/02-load-template.md +10 -0
  514. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/03-generate-document.md +98 -0
  515. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/04-validate.md +16 -0
  516. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/05-review.md +15 -0
  517. package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/06-save.md +19 -0
  518. package/lib/bmad-extension-plugin/skills/mil498-sdd/template.md +163 -0
  519. package/lib/bmad-extension-plugin/skills/mil498-sdp/.gitkeep +0 -0
  520. package/lib/bmad-extension-plugin/skills/mil498-sdp/SKILL.md +30 -0
  521. package/lib/bmad-extension-plugin/skills/mil498-sdp/bmad-skill-manifest.yaml +5 -0
  522. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/01-discover-project-artifacts.md +32 -0
  523. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/02-load-template.md +10 -0
  524. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/03-generate-document.md +187 -0
  525. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/04-validate.md +13 -0
  526. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/05-review.md +15 -0
  527. package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/06-save.md +14 -0
  528. package/lib/bmad-extension-plugin/skills/mil498-sdp/template.md +307 -0
  529. package/lib/bmad-extension-plugin/skills/mil498-srs/.gitkeep +0 -0
  530. package/lib/bmad-extension-plugin/skills/mil498-srs/SKILL.md +30 -0
  531. package/lib/bmad-extension-plugin/skills/mil498-srs/bmad-skill-manifest.yaml +5 -0
  532. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/01-discover-project-artifacts.md +42 -0
  533. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/02-load-template.md +10 -0
  534. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/03-generate-document.md +100 -0
  535. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/04-validate.md +16 -0
  536. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/05-review.md +15 -0
  537. package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/06-save.md +18 -0
  538. package/lib/bmad-extension-plugin/skills/mil498-srs/template.md +219 -0
  539. package/lib/bmad-extension-plugin/skills/mil498-ssdd/.gitkeep +0 -0
  540. package/lib/bmad-extension-plugin/skills/mil498-ssdd/SKILL.md +32 -0
  541. package/lib/bmad-extension-plugin/skills/mil498-ssdd/bmad-skill-manifest.yaml +5 -0
  542. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/01-discover-project-artifacts.md +32 -0
  543. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/02-load-template.md +10 -0
  544. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/03-csci-discovery-interview.md +43 -0
  545. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/04-generate-document.md +96 -0
  546. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/05-validate.md +18 -0
  547. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/06-review.md +16 -0
  548. package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/07-save.md +16 -0
  549. package/lib/bmad-extension-plugin/skills/mil498-ssdd/template.md +154 -0
  550. package/lib/bmad-extension-plugin/skills/mil498-sss/.gitkeep +0 -0
  551. package/lib/bmad-extension-plugin/skills/mil498-sss/SKILL.md +31 -0
  552. package/lib/bmad-extension-plugin/skills/mil498-sss/bmad-skill-manifest.yaml +5 -0
  553. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/01-discover-project-artifacts.md +31 -0
  554. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/02-load-template.md +10 -0
  555. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/03-generate-document.md +108 -0
  556. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/04-validate.md +16 -0
  557. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/05-review.md +15 -0
  558. package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/06-save.md +15 -0
  559. package/lib/bmad-extension-plugin/skills/mil498-sss/template.md +225 -0
  560. package/lib/bmad-extension-plugin/skills/mil498-std/.gitkeep +0 -0
  561. package/lib/bmad-extension-plugin/skills/mil498-std/SKILL.md +30 -0
  562. package/lib/bmad-extension-plugin/skills/mil498-std/bmad-skill-manifest.yaml +5 -0
  563. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/01-discover-project-artifacts.md +42 -0
  564. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/02-load-template.md +10 -0
  565. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/03-generate-document.md +117 -0
  566. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/04-validate.md +15 -0
  567. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/05-review.md +15 -0
  568. package/lib/bmad-extension-plugin/skills/mil498-std/prompts/06-save.md +15 -0
  569. package/lib/bmad-extension-plugin/skills/mil498-std/template.md +188 -0
  570. package/lib/bmad-extension-plugin/skills/ml-advise/.gitkeep +0 -0
  571. package/lib/bmad-extension-plugin/skills/ml-advise/SKILL.md +76 -0
  572. package/lib/bmad-extension-plugin/skills/ml-advise/bmad-skill-manifest.yaml +3 -0
  573. package/lib/bmad-extension-plugin/skills/ml-advise/skill.json +7 -0
  574. package/lib/bmad-extension-plugin/skills/ml-analysis/.gitkeep +0 -0
  575. package/lib/bmad-extension-plugin/skills/ml-analysis/SKILL.md +60 -0
  576. package/lib/bmad-extension-plugin/skills/ml-analysis/bmad-skill-manifest.yaml +3 -0
  577. package/lib/bmad-extension-plugin/skills/ml-analysis/skill.json +7 -0
  578. package/lib/bmad-extension-plugin/skills/ml-architecture/.gitkeep +0 -0
  579. package/lib/bmad-extension-plugin/skills/ml-architecture/SKILL.md +55 -0
  580. package/lib/bmad-extension-plugin/skills/ml-architecture/bmad-skill-manifest.yaml +3 -0
  581. package/lib/bmad-extension-plugin/skills/ml-architecture/skill.json +7 -0
  582. package/lib/bmad-extension-plugin/skills/ml-detailed-design/.gitkeep +0 -0
  583. package/lib/bmad-extension-plugin/skills/ml-detailed-design/SKILL.md +67 -0
  584. package/lib/bmad-extension-plugin/skills/ml-detailed-design/bmad-skill-manifest.yaml +3 -0
  585. package/lib/bmad-extension-plugin/skills/ml-detailed-design/skill.json +7 -0
  586. package/lib/bmad-extension-plugin/skills/ml-eda/.gitkeep +0 -0
  587. package/lib/bmad-extension-plugin/skills/ml-eda/SKILL.md +56 -0
  588. package/lib/bmad-extension-plugin/skills/ml-eda/bmad-skill-manifest.yaml +3 -0
  589. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/baseline_classifier.py +522 -0
  590. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/class_weights_calculator.py +295 -0
  591. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/clustering_explorer.py +383 -0
  592. package/lib/bmad-extension-plugin/skills/ml-eda/scripts/eda_analyzer.py +654 -0
  593. package/lib/bmad-extension-plugin/skills/ml-eda/skill.json +7 -0
  594. package/lib/bmad-extension-plugin/skills/ml-experiment/.gitkeep +0 -0
  595. package/lib/bmad-extension-plugin/skills/ml-experiment/SKILL.md +74 -0
  596. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/advanced_trainer_configs.py +430 -0
  597. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/quick_trainer_setup.py +233 -0
  598. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_datamodule.py +219 -0
  599. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_gnn_module.py +341 -0
  600. package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_lightning_module.py +158 -0
  601. package/lib/bmad-extension-plugin/skills/ml-experiment/bmad-skill-manifest.yaml +3 -0
  602. package/lib/bmad-extension-plugin/skills/ml-experiment/skill.json +7 -0
  603. package/lib/bmad-extension-plugin/skills/ml-hparam/.gitkeep +0 -0
  604. package/lib/bmad-extension-plugin/skills/ml-hparam/SKILL.md +81 -0
  605. package/lib/bmad-extension-plugin/skills/ml-hparam/bmad-skill-manifest.yaml +3 -0
  606. package/lib/bmad-extension-plugin/skills/ml-hparam/skill.json +7 -0
  607. package/lib/bmad-extension-plugin/skills/ml-ideation/.gitkeep +0 -0
  608. package/lib/bmad-extension-plugin/skills/ml-ideation/SKILL.md +50 -0
  609. package/lib/bmad-extension-plugin/skills/ml-ideation/bmad-skill-manifest.yaml +3 -0
  610. package/lib/bmad-extension-plugin/skills/ml-ideation/scripts/validate_ml_prd.py +287 -0
  611. package/lib/bmad-extension-plugin/skills/ml-ideation/skill.json +7 -0
  612. package/lib/bmad-extension-plugin/skills/ml-infra/.gitkeep +0 -0
  613. package/lib/bmad-extension-plugin/skills/ml-infra/SKILL.md +58 -0
  614. package/lib/bmad-extension-plugin/skills/ml-infra/bmad-skill-manifest.yaml +3 -0
  615. package/lib/bmad-extension-plugin/skills/ml-infra/skill.json +7 -0
  616. package/lib/bmad-extension-plugin/skills/ml-retrospective/.gitkeep +0 -0
  617. package/lib/bmad-extension-plugin/skills/ml-retrospective/SKILL.md +63 -0
  618. package/lib/bmad-extension-plugin/skills/ml-retrospective/bmad-skill-manifest.yaml +3 -0
  619. package/lib/bmad-extension-plugin/skills/ml-retrospective/skill.json +7 -0
  620. package/lib/bmad-extension-plugin/skills/ml-revision/.gitkeep +0 -0
  621. package/lib/bmad-extension-plugin/skills/ml-revision/SKILL.md +82 -0
  622. package/lib/bmad-extension-plugin/skills/ml-revision/bmad-skill-manifest.yaml +3 -0
  623. package/lib/bmad-extension-plugin/skills/ml-revision/skill.json +7 -0
  624. package/lib/bmad-extension-plugin/skills/ml-techspec/.gitkeep +0 -0
  625. package/lib/bmad-extension-plugin/skills/ml-techspec/SKILL.md +80 -0
  626. package/lib/bmad-extension-plugin/skills/ml-techspec/bmad-skill-manifest.yaml +3 -0
  627. package/lib/bmad-extension-plugin/skills/ml-techspec/skill.json +7 -0
  628. package/lib/bmad-extension-plugin/skills/modify-sprint/.gitkeep +0 -0
  629. package/lib/bmad-extension-plugin/skills/modify-sprint/SKILL.md +311 -0
  630. package/lib/bmad-extension-plugin/skills/modify-sprint/bmad-skill-manifest.yaml +3 -0
  631. package/lib/bmad-extension-plugin/skills/module-help.csv +62 -0
  632. package/lib/bmad-extension-plugin/skills/module.yaml +20 -0
  633. package/lib/bmad-extension-plugin/skills/prioritize-backlog/.gitkeep +0 -0
  634. package/lib/bmad-extension-plugin/skills/prioritize-backlog/SKILL.md +217 -0
  635. package/lib/bmad-extension-plugin/skills/prioritize-backlog/bmad-skill-manifest.yaml +3 -0
  636. package/lib/bmad-extension-plugin/skills/project-context-expansion/.gitkeep +0 -0
  637. package/lib/bmad-extension-plugin/skills/project-context-expansion/SKILL.md +238 -0
  638. package/lib/bmad-extension-plugin/skills/project-context-expansion/bmad-skill-manifest.yaml +3 -0
  639. package/lib/bmad-extension-plugin/skills/remove-from-sprint/.gitkeep +0 -0
  640. package/lib/bmad-extension-plugin/skills/remove-from-sprint/SKILL.md +184 -0
  641. package/lib/bmad-extension-plugin/skills/remove-from-sprint/bmad-skill-manifest.yaml +3 -0
  642. package/lib/bmad-extension-plugin/skills/sprint-status-view/.gitkeep +0 -0
  643. package/lib/bmad-extension-plugin/skills/sprint-status-view/SKILL.md +177 -0
  644. package/lib/bmad-extension-plugin/skills/sprint-status-view/bmad-skill-manifest.yaml +3 -0
  645. package/lib/bmad-extension-plugin/skills/sqa-audit/.gitkeep +0 -0
  646. package/lib/bmad-extension-plugin/skills/sqa-audit/SKILL.md +279 -0
  647. package/lib/bmad-extension-plugin/skills/sqa-audit/bmad-skill-manifest.yaml +3 -0
  648. package/lib/bmad-extension-plugin/skills/sqa-ieee12207/.gitkeep +0 -0
  649. package/lib/bmad-extension-plugin/skills/sqa-ieee12207/SKILL.md +374 -0
  650. package/lib/bmad-extension-plugin/skills/sqa-ieee12207/bmad-skill-manifest.yaml +3 -0
  651. package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/.gitkeep +0 -0
  652. package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/SKILL.md +244 -0
  653. package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/bmad-skill-manifest.yaml +3 -0
  654. package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/.gitkeep +0 -0
  655. package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/SKILL.md +32 -0
  656. package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/bmad-skill-manifest.yaml +3 -0
  657. package/lib/bmad-extension-plugin/skills/sre-check-secrets/.gitkeep +0 -0
  658. package/lib/bmad-extension-plugin/skills/sre-check-secrets/SKILL.md +23 -0
  659. package/lib/bmad-extension-plugin/skills/sre-check-secrets/bmad-skill-manifest.yaml +3 -0
  660. package/lib/bmad-extension-plugin/skills/sre-check-system-status/.gitkeep +0 -0
  661. package/lib/bmad-extension-plugin/skills/sre-check-system-status/SKILL.md +27 -0
  662. package/lib/bmad-extension-plugin/skills/sre-check-system-status/bmad-skill-manifest.yaml +3 -0
  663. package/lib/bmad-extension-plugin/skills/sre-day-2-ops/.gitkeep +0 -0
  664. package/lib/bmad-extension-plugin/skills/sre-day-2-ops/SKILL.md +26 -0
  665. package/lib/bmad-extension-plugin/skills/sre-day-2-ops/bmad-skill-manifest.yaml +3 -0
  666. package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/.gitkeep +0 -0
  667. package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/SKILL.md +28 -0
  668. package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/bmad-skill-manifest.yaml +3 -0
  669. package/lib/bmad-extension-plugin/skills/sre-fix-deployments/.gitkeep +0 -0
  670. package/lib/bmad-extension-plugin/skills/sre-fix-deployments/SKILL.md +25 -0
  671. package/lib/bmad-extension-plugin/skills/sre-fix-deployments/bmad-skill-manifest.yaml +3 -0
  672. package/lib/bmad-extension-plugin/skills/sre-gitops-status/.gitkeep +0 -0
  673. package/lib/bmad-extension-plugin/skills/sre-gitops-status/SKILL.md +25 -0
  674. package/lib/bmad-extension-plugin/skills/sre-gitops-status/bmad-skill-manifest.yaml +3 -0
  675. package/lib/bmad.js +1379 -372
  676. package/lib/installer.js +362 -2
  677. package/package.json +23 -5
  678. package/scripts/build-bmad-cache.js +250 -47
  679. package/scripts/build-plugin.js +574 -0
  680. package/.ma-agents.json +0 -10
  681. package/AGENTS.md +0 -97
  682. package/AiAudit.md +0 -12
  683. package/DEVELOPMENT.md +0 -173
  684. package/MANIFEST.yaml +0 -3
  685. package/_bmad-output/implementation-artifacts/16-4-validation-report.md +0 -79
  686. package/_bmad-output/implementation-artifacts/17-10-rework-generate-backlog.md +0 -237
  687. package/_bmad-output/implementation-artifacts/17-11-rework-add-to-sprint.md +0 -339
  688. package/_bmad-output/implementation-artifacts/17-12-rework-remove-from-sprint.md +0 -348
  689. package/_bmad-output/implementation-artifacts/17-13-rework-sprint-status-view.md +0 -383
  690. package/_bmad-output/implementation-artifacts/17-14-rework-cleanup-done.md +0 -348
  691. package/_bmad-output/implementation-artifacts/17-15-rework-bmad-sprint-planning.md +0 -385
  692. package/_bmad-output/implementation-artifacts/17-16-rework-add-sprint.md +0 -362
  693. package/_bmad-output/implementation-artifacts/17-17-rework-modify-sprint.md +0 -477
  694. package/_bmad-output/implementation-artifacts/17-18-rework-bmad-dev-story.md +0 -377
  695. package/_bmad-output/implementation-artifacts/17-19-rework-story-status-lookup.md +0 -301
  696. package/_bmad-output/implementation-artifacts/17-20-rework-bmad-sprint-status.md +0 -508
  697. package/_bmad-output/implementation-artifacts/17-21-new-close-sprint.md +0 -455
  698. package/_bmad-output/implementation-artifacts/17-22-jira-adapter-pattern.md +0 -325
  699. package/_bmad-output/implementation-artifacts/17-23-migration-deprecation-old-files.md +0 -403
  700. package/_bmad-output/implementation-artifacts/17-24-rework-prioritize-backlog.md +0 -344
  701. package/_bmad-output/implementation-artifacts/17-9-unified-sprint-status-schema.md +0 -279
  702. package/_bmad-output/implementation-artifacts/19-1-knowledge-graph-core-library.md +0 -239
  703. package/_bmad-output/implementation-artifacts/19-2-graph-emission-create-prd.md +0 -171
  704. package/_bmad-output/implementation-artifacts/19-3-graph-emission-create-architecture-epics.md +0 -179
  705. package/_bmad-output/implementation-artifacts/19-4-graph-emission-create-story-remaining.md +0 -190
  706. package/_bmad-output/implementation-artifacts/19-5-open-graph-skill.md +0 -213
  707. package/_bmad-output/implementation-artifacts/19-6-interactive-visualization-renderer.md +0 -259
  708. package/_bmad-output/implementation-artifacts/19-7-llm-writability-validation-tests.md +0 -280
  709. package/_bmad-output/implementation-artifacts/21-1-install-time-profile-prompt.md +0 -181
  710. package/_bmad-output/implementation-artifacts/21-10-profile-reconfigure.md +0 -161
  711. package/_bmad-output/implementation-artifacts/21-11-profile-uninstall.md +0 -150
  712. package/_bmad-output/implementation-artifacts/21-2-universal-instruction-block-expansion.md +0 -253
  713. package/_bmad-output/implementation-artifacts/21-3-roomodes-template-bmad-modes.md +0 -229
  714. package/_bmad-output/implementation-artifacts/21-4-agents-md-template-opencode.md +0 -275
  715. package/_bmad-output/implementation-artifacts/21-5-clinerules-template-extension.md +0 -221
  716. package/_bmad-output/implementation-artifacts/21-6-onprem-layered-guardrails.md +0 -287
  717. package/_bmad-output/implementation-artifacts/21-7-bmad-persona-phase-prefix.md +0 -258
  718. package/_bmad-output/implementation-artifacts/21-8-vllm-reference-doc-readme.md +0 -158
  719. package/_bmad-output/implementation-artifacts/21-9-tests-validation.md +0 -368
  720. package/_bmad-output/implementation-artifacts/4-1-vs-agent-registry-entry.md +0 -173
  721. package/_bmad-output/implementation-artifacts/4-2-vs-skill-template-format.md +0 -129
  722. package/_bmad-output/implementation-artifacts/5-5-explicit-parameter-passing.md +0 -274
  723. package/_bmad-output/implementation-artifacts/5-6-fix-space-in-path-bug.md +0 -186
  724. package/_bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md +0 -144
  725. package/_bmad-output/implementation-artifacts/7-2-installer-pipeline-tests.md +0 -132
  726. package/_bmad-output/implementation-artifacts/7-3-bmad-pipeline-tests.md +0 -119
  727. package/_bmad-output/implementation-artifacts/7-4-cli-command-routing-tests.md +0 -162
  728. package/_bmad-output/implementation-artifacts/bug-bmad-recompile-fails-on-airgapped-network.md +0 -112
  729. package/_bmad-output/implementation-artifacts/bug-experimentalwarning-about-commonjs-loading-es-module-during-install.md +0 -57
  730. package/_bmad-output/implementation-artifacts/deferred-work.md +0 -9
  731. package/_bmad-output/implementation-artifacts/done/1-1-ci-cd-yes-flag.md +0 -200
  732. package/_bmad-output/implementation-artifacts/done/10-1-ensure-bmad-output-not-gitignored.md +0 -172
  733. package/_bmad-output/implementation-artifacts/done/10-2-document-bmad-output-policy.md +0 -102
  734. package/_bmad-output/implementation-artifacts/done/11-1-auto-bug-detection-skill.md +0 -119
  735. package/_bmad-output/implementation-artifacts/done/11-2-bug-story-extension-workflow.md +0 -132
  736. package/_bmad-output/implementation-artifacts/done/11-3-integrate-bug-detection-code-review.md +0 -111
  737. package/_bmad-output/implementation-artifacts/done/12-1-add-sprint-workflow.md +0 -126
  738. package/_bmad-output/implementation-artifacts/done/12-2-add-to-sprint-workflow.md +0 -137
  739. package/_bmad-output/implementation-artifacts/done/12-3-modify-sprint-workflow.md +0 -127
  740. package/_bmad-output/implementation-artifacts/done/12-4-sprint-status-assigned-items.md +0 -129
  741. package/_bmad-output/implementation-artifacts/done/13-1-project-context-template-and-generator.md +0 -179
  742. package/_bmad-output/implementation-artifacts/done/13-2-install-pipeline-integration.md +0 -138
  743. package/_bmad-output/implementation-artifacts/done/13-3-bmad-critical-actions-update.md +0 -150
  744. package/_bmad-output/implementation-artifacts/done/13-4-retrospective-expansion-trigger.md +0 -128
  745. package/_bmad-output/implementation-artifacts/done/13-5-document-project-context-generation.md +0 -118
  746. package/_bmad-output/implementation-artifacts/done/15-1-bump-bmad-method-to-6-2-1.md +0 -132
  747. package/_bmad-output/implementation-artifacts/done/15-2-restructure-extension-module.md +0 -174
  748. package/_bmad-output/implementation-artifacts/done/15-3-convert-custom-agents-to-skill-folders.md +0 -183
  749. package/_bmad-output/implementation-artifacts/done/15-4-convert-mil498-workflows-to-skill-md.md +0 -252
  750. package/_bmad-output/implementation-artifacts/done/15-5-convert-sre-devops-cyber-workflows.md +0 -232
  751. package/_bmad-output/implementation-artifacts/done/15-6-separate-built-in-agent-customizations.md +0 -163
  752. package/_bmad-output/implementation-artifacts/done/15-7-migration-detection-and-upgrade-path.md +0 -133
  753. package/_bmad-output/implementation-artifacts/done/15-8-validate-migrated-agents-and-workflows.md +0 -172
  754. package/_bmad-output/implementation-artifacts/done/15-8-validation-report.md +0 -342
  755. package/_bmad-output/implementation-artifacts/done/16-1-repository-layout-wizard.md +0 -223
  756. package/_bmad-output/implementation-artifacts/done/16-2-config-storage-and-cross-reference.md +0 -180
  757. package/_bmad-output/implementation-artifacts/done/16-3-project-context-multi-repo-section.md +0 -136
  758. package/_bmad-output/implementation-artifacts/done/16-4-validate-cross-repo-path-resolution.md +0 -137
  759. package/_bmad-output/implementation-artifacts/done/16-4-validation-report.md +0 -79
  760. package/_bmad-output/implementation-artifacts/done/16-5-fix-config-lost-on-update.md +0 -110
  761. package/_bmad-output/implementation-artifacts/done/16-6-repo-sync-check-skill.md +0 -116
  762. package/_bmad-output/implementation-artifacts/done/16-7-portable-path-storage.md +0 -109
  763. package/_bmad-output/implementation-artifacts/done/16-8-cicd-remote-mode.md +0 -97
  764. package/_bmad-output/implementation-artifacts/done/16-9-reconfigure-layout-workflow.md +0 -125
  765. package/_bmad-output/implementation-artifacts/done/17-1-sprint-entity-model.md +0 -322
  766. package/_bmad-output/implementation-artifacts/done/17-2-flat-backlog-model.md +0 -264
  767. package/_bmad-output/implementation-artifacts/done/17-3-bug-as-story-type.md +0 -208
  768. package/_bmad-output/implementation-artifacts/done/17-4-backlog-to-sprint-workflow.md +0 -209
  769. package/_bmad-output/implementation-artifacts/done/17-5-sprint-to-backlog-workflow.md +0 -221
  770. package/_bmad-output/implementation-artifacts/done/17-6-done-item-cleanup.md +0 -273
  771. package/_bmad-output/implementation-artifacts/done/17-7-multi-criteria-prioritization.md +0 -235
  772. package/_bmad-output/implementation-artifacts/done/17-8-rework-sprint-status-display.md +0 -285
  773. package/_bmad-output/implementation-artifacts/done/2-1-cpp-coding-standards-skill.md +0 -188
  774. package/_bmad-output/implementation-artifacts/done/2-2-csharp-coding-standards-skill.md +0 -211
  775. package/_bmad-output/implementation-artifacts/done/2-3-python-coding-standards-skill.md +0 -189
  776. package/_bmad-output/implementation-artifacts/done/3-1-skill-scaffolding-tool.md +0 -184
  777. package/_bmad-output/implementation-artifacts/done/3-2-skill-validation-tool.md +0 -178
  778. package/_bmad-output/implementation-artifacts/done/3-3-mandatory-skill-designation.md +0 -136
  779. package/_bmad-output/implementation-artifacts/done/3-4-bmad-persona-customization-tooling.md +0 -141
  780. package/_bmad-output/implementation-artifacts/done/3-5-specialized-agent-development-tooling.md +0 -145
  781. package/_bmad-output/implementation-artifacts/done/5-1-bmad-method-direct-dependency.md +0 -188
  782. package/_bmad-output/implementation-artifacts/done/5-2-bmad-cache-build-script.md +0 -219
  783. package/_bmad-output/implementation-artifacts/done/5-3-pre-populate-bmad-cache.md +0 -234
  784. package/_bmad-output/implementation-artifacts/done/5-4-validate-bundled-installation.md +0 -274
  785. package/_bmad-output/implementation-artifacts/done/6-1-methodology-presentation-bundle.md +0 -173
  786. package/_bmad-output/implementation-artifacts/done/8-1-move-instruction-injection-to-top.md +0 -131
  787. package/_bmad-output/implementation-artifacts/done/8-2-agent-aware-injection-strategy.md +0 -124
  788. package/_bmad-output/implementation-artifacts/done/8-3-create-bmad-extension-module.md +0 -187
  789. package/_bmad-output/implementation-artifacts/done/8-4-integration-verification.md +0 -102
  790. package/_bmad-output/implementation-artifacts/done/8-5-per-agent-enforcement-hooks-research.md +0 -126
  791. package/_bmad-output/implementation-artifacts/done/8-6-context-persistence-research.md +0 -101
  792. package/_bmad-output/implementation-artifacts/done/9-1-register-opencode-agent.md +0 -73
  793. package/_bmad-output/implementation-artifacts/done/9-2-json-merge-injection.md +0 -91
  794. package/_bmad-output/implementation-artifacts/done/9-3-json-merge-existing.md +0 -113
  795. package/_bmad-output/implementation-artifacts/done/9-4-json-error-handling.md +0 -90
  796. package/_bmad-output/implementation-artifacts/epic-11-12-shared-guardrails.md +0 -53
  797. package/_bmad-output/implementation-artifacts/epic-15-adversarial-fixes.md +0 -287
  798. package/_bmad-output/implementation-artifacts/epic-16-adversarial-review.md +0 -49
  799. package/_bmad-output/implementation-artifacts/epic-16-edge-case-review.md +0 -230
  800. package/_bmad-output/implementation-artifacts/epic-17-adversarial-review.md +0 -37
  801. package/_bmad-output/implementation-artifacts/epic-17-edge-case-review.md +0 -140
  802. package/_bmad-output/implementation-artifacts/sprint-status.yaml +0 -139
  803. package/_bmad-output/planning-artifacts/adapter-pattern-spec.md +0 -508
  804. package/_bmad-output/planning-artifacts/architecture.md +0 -2023
  805. package/_bmad-output/planning-artifacts/domain-research-roocode-2026-03-31.md +0 -295
  806. package/_bmad-output/planning-artifacts/epics.md +0 -4232
  807. package/_bmad-output/planning-artifacts/mil498-workflow-audit.md +0 -290
  808. package/_bmad-output/planning-artifacts/prd.md +0 -811
  809. package/_bmad-output/planning-artifacts/product-brief-agents-2026-03-08.md +0 -214
  810. package/_bmad-output/planning-artifacts/sprint-status-schema.md +0 -506
  811. package/_bmad-output/planning-artifacts/validation-report-prd-2026-04-07.md +0 -330
  812. package/_bmad-output/project-context.md +0 -47
  813. package/agents.code-workspace +0 -11
  814. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-554778ad4e7254827618ebd2497c3f4bce9054a4.idx +0 -0
  815. package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-554778ad4e7254827618ebd2497c3f4bce9054a4.rev +0 -0
  816. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.idx +0 -0
  817. package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.rev +0 -0
  818. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-brainstorming-coach/bmad-skill-manifest.yaml +0 -11
  819. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-creative-problem-solver/bmad-skill-manifest.yaml +0 -11
  820. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-design-thinking-coach/bmad-skill-manifest.yaml +0 -11
  821. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-innovation-strategist/bmad-skill-manifest.yaml +0 -11
  822. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-presentation-master/bmad-skill-manifest.yaml +0 -11
  823. package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-storyteller/bmad-skill-manifest.yaml +0 -11
  824. package/lib/bmad-cache/cis/src/skills/bmad-cis-design-thinking/bmad-skill-manifest.yaml +0 -1
  825. package/lib/bmad-cache/cis/src/skills/bmad-cis-innovation-strategy/bmad-skill-manifest.yaml +0 -1
  826. package/lib/bmad-cache/cis/src/skills/bmad-cis-problem-solving/bmad-skill-manifest.yaml +0 -1
  827. package/lib/bmad-cache/cis/src/skills/bmad-cis-storytelling/bmad-skill-manifest.yaml +0 -1
  828. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.idx +0 -0
  829. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.rev +0 -0
  830. package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/bmad-skill-manifest.yaml +0 -11
  831. package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/bmad-skill-manifest.yaml +0 -11
  832. package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/bmad-skill-manifest.yaml +0 -11
  833. package/lib/bmad-cache/gds/src/agents/gds-agent-game-qa/bmad-skill-manifest.yaml +0 -11
  834. package/lib/bmad-cache/gds/src/agents/gds-agent-game-scrum-master/bmad-skill-manifest.yaml +0 -11
  835. package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/bmad-skill-manifest.yaml +0 -11
  836. package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/bmad-skill-manifest.yaml +0 -11
  837. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/bmad-skill-manifest.yaml +0 -1
  838. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/bmad-skill-manifest.yaml +0 -1
  839. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/bmad-skill-manifest.yaml +0 -9
  840. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/bmad-skill-manifest.yaml +0 -1
  841. package/lib/bmad-cache/gds/src/workflows/2-design/create-prd/bmad-skill-manifest.yaml +0 -14
  842. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/bmad-skill-manifest.yaml +0 -1
  843. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/bmad-skill-manifest.yaml +0 -1
  844. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/bmad-skill-manifest.yaml +0 -1
  845. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/bmad-skill-manifest.yaml +0 -1
  846. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/bmad-skill-manifest.yaml +0 -1
  847. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/bmad-skill-manifest.yaml +0 -1
  848. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/bmad-skill-manifest.yaml +0 -1
  849. package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/bmad-skill-manifest.yaml +0 -1
  850. package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/bmad-skill-manifest.yaml +0 -1
  851. package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/bmad-skill-manifest.yaml +0 -1
  852. package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/bmad-skill-manifest.yaml +0 -1
  853. package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/bmad-skill-manifest.yaml +0 -1
  854. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/bmad-skill-manifest.yaml +0 -1
  855. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/bmad-skill-manifest.yaml +0 -1
  856. package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/bmad-skill-manifest.yaml +0 -1
  857. package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/bmad-skill-manifest.yaml +0 -1
  858. package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/bmad-skill-manifest.yaml +0 -1
  859. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/bmad-skill-manifest.yaml +0 -1
  860. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/bmad-skill-manifest.yaml +0 -1
  861. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/bmad-skill-manifest.yaml +0 -1
  862. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/bmad-skill-manifest.yaml +0 -1
  863. package/lib/bmad-cache/gds/src/workflows/gds-document-project/bmad-skill-manifest.yaml +0 -1
  864. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/bmad-skill-manifest.yaml +0 -1
  865. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev-new-preview/bmad-skill-manifest.yaml +0 -1
  866. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-spec/bmad-skill-manifest.yaml +0 -1
  867. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.idx +0 -0
  868. package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.rev +0 -0
  869. package/lib/bmad-cache/tea/_git_preserved/refs/tags/v1.10.0 +0 -1
  870. package/lib/bmad-cache/tea/src/agents/bmad-tea/bmad-skill-manifest.yaml +0 -14
  871. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/bmad-skill-manifest.yaml +0 -1
  872. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/workflow.md +0 -90
  873. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/bmad-skill-manifest.yaml +0 -1
  874. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/workflow.md +0 -41
  875. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/bmad-skill-manifest.yaml +0 -1
  876. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/workflow.md +0 -41
  877. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/bmad-skill-manifest.yaml +0 -1
  878. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/workflow.md +0 -41
  879. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/bmad-skill-manifest.yaml +0 -1
  880. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/workflow.md +0 -41
  881. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/bmad-skill-manifest.yaml +0 -1
  882. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow.md +0 -41
  883. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/bmad-skill-manifest.yaml +0 -1
  884. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/workflow.md +0 -41
  885. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/bmad-skill-manifest.yaml +0 -1
  886. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/workflow.md +0 -41
  887. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/bmad-skill-manifest.yaml +0 -1
  888. package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.md +0 -41
  889. package/lib/bmad-customizations/bmm-demerzel.customize.yaml +0 -36
  890. package/lib/bmad-customizations/demerzel.md +0 -32
  891. package/lib/bmad-customize/bmm-quick-flow-solo-dev.customize.yaml +0 -8
  892. package/lib/bmad-extension/module.yaml +0 -5
  893. package/out.txt +0 -0
  894. package/test/agent-injection-strategy.test.js +0 -129
  895. package/test/agents-md.test.js +0 -398
  896. package/test/bmad-extension.test.js +0 -283
  897. package/test/bmad-output-policy.test.js +0 -119
  898. package/test/bmad-persona-phase-prefix.test.js +0 -271
  899. package/test/bmad-version-bump.test.js +0 -313
  900. package/test/build-bmad-args.test.js +0 -368
  901. package/test/cicd-remote-mode.test.js +0 -224
  902. package/test/clinerules.test.js +0 -339
  903. package/test/config-layout.test.js +0 -230
  904. package/test/config-lost-on-update.test.js +0 -363
  905. package/test/config-storage.test.js +0 -275
  906. package/test/convert-agents-to-skills.test.js +0 -255
  907. package/test/create-agent.test.js +0 -232
  908. package/test/cross-repo-validation.test.js +0 -201
  909. package/test/enforcement-hooks.test.js +0 -324
  910. package/test/experimental-warning.test.js +0 -314
  911. package/test/extension-module-restructure.test.js +0 -407
  912. package/test/fixtures/README.md +0 -74
  913. package/test/fixtures/empty-project/README.md +0 -5
  914. package/test/fixtures/empty-project/package.json +0 -5
  915. package/test/fixtures/onprem-profile-baseline/.gitkeep +0 -2
  916. package/test/fixtures/standard-profile-baseline/.gitkeep +0 -2
  917. package/test/generate-project-context.test.js +0 -483
  918. package/test/instruction-block.test.js +0 -388
  919. package/test/instruction-injection.test.js +0 -336
  920. package/test/integration-verification.test.js +0 -433
  921. package/test/migration-validation.test.js +0 -506
  922. package/test/migration.test.js +0 -832
  923. package/test/offline-recompile.test.js +0 -267
  924. package/test/onprem-injection.test.js +0 -441
  925. package/test/onprem-layer.test.js +0 -419
  926. package/test/opencode-agent.test.js +0 -150
  927. package/test/opencode-json-error.test.js +0 -260
  928. package/test/opencode-json-injection.test.js +0 -264
  929. package/test/opencode-json-merge.test.js +0 -318
  930. package/test/portable-paths.test.js +0 -268
  931. package/test/profile.test.js +0 -301
  932. package/test/reconfigure.test.js +0 -436
  933. package/test/repo-layout.test.js +0 -246
  934. package/test/roo-code-agent.test.js +0 -166
  935. package/test/roo-code-injection.test.js +0 -172
  936. package/test/roomodes.test.js +0 -343
  937. package/test/skill-authoring.test.js +0 -272
  938. package/test/skill-customize-agent.test.js +0 -253
  939. package/test/skill-mandatory.test.js +0 -235
  940. package/test/skill-validation.test.js +0 -378
  941. package/test/story-15-5-workflow-skills.test.js +0 -311
  942. package/test/uninstall.test.js +0 -402
  943. package/test/yes-flag.test.js +0 -200
  944. /package/lib/bmad-cache/gds/src/{gametest → agents/gds-agent-game-dev/gametest}/qa-index.csv +0 -0
  945. /package/lib/bmad-cache/gds/src/workflows/2-design/{create-prd → gds-create-prd}/data/domain-complexity.csv +0 -0
  946. /package/lib/bmad-cache/gds/src/workflows/2-design/{create-prd → gds-create-prd}/data/project-types.csv +0 -0
  947. /package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/add-sprint}/.gitkeep +0 -0
  948. /package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/add-to-sprint}/.gitkeep +0 -0
  949. /package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/bmad-dev-story}/.gitkeep +0 -0
  950. /package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/bmad-sprint-planning}/.gitkeep +0 -0
  951. /package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/bmad-sprint-status}/.gitkeep +0 -0
@@ -1,506 +0,0 @@
1
- #!/usr/bin/env node
2
- /**
3
- * Story 15.8: Validate Migrated Agents and Workflows
4
- *
5
- * Comprehensive validation that all migrated agents and workflows from
6
- * Stories 15.1-15.7 function correctly and preserve functional equivalence.
7
- *
8
- * Uses Node.js assert (no test frameworks). Covers all 6 acceptance criteria.
9
- */
10
- 'use strict';
11
-
12
- const assert = require('assert');
13
- const fs = require('fs');
14
- const path = require('path');
15
-
16
- let passed = 0;
17
- let failed = 0;
18
- const errors = [];
19
-
20
- function test(name, fn) {
21
- try {
22
- fn();
23
- console.log(` \u2713 ${name}`);
24
- passed++;
25
- } catch (err) {
26
- console.error(` \u2717 ${name}: ${err.message}`);
27
- failed++;
28
- errors.push({ name, error: err.message });
29
- }
30
- }
31
-
32
- const ROOT = path.join(__dirname, '..');
33
- const EXT_DIR = path.join(ROOT, 'lib', 'bmad-extension');
34
- const SKILLS_DIR = path.join(EXT_DIR, 'skills');
35
- const CUSTOM_SRC = path.join(ROOT, 'lib', 'bmad-customizations');
36
- const WORKFLOW_SRC = path.join(ROOT, 'lib', 'bmad-workflows');
37
- const TEMPLATE_SRC = path.join(ROOT, 'lib', 'mil498-templates');
38
- const CUSTOMIZE_DIR = path.join(ROOT, 'lib', 'bmad-customize');
39
-
40
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
41
- // Task 1: Validate custom agent personas (AC #1)
42
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
43
-
44
- console.log('\nTask 1: Validate custom agent personas (AC #1)\n');
45
-
46
- const AGENTS = [
47
- {
48
- id: 'sre', folder: 'bmad-ma-agent-sre', name: 'Alex',
49
- role: 'Site Reliability Engineer',
50
- identity: 'Seasoned SRE with expertise in Kubernetes',
51
- style: 'Calm, data-driven, and systematic',
52
- principles: ['Automation over manual effort', 'Monitor everything that matters', 'Blame-free post-mortems']
53
- },
54
- {
55
- id: 'devops', folder: 'bmad-ma-agent-devops', name: 'Amit',
56
- role: 'DevOps Engineer',
57
- identity: 'DevOps veteran with extensive experience in cloud-native technologies',
58
- style: 'Collaborative, efficiency-minded, and tech-forward',
59
- principles: ['Version control everything', 'Immutable infrastructure is better', 'Continuous improvement of the feedback loop']
60
- },
61
- {
62
- id: 'cyber', folder: 'bmad-ma-agent-cyber', name: 'Yael',
63
- role: 'Cyber Security Analyst',
64
- identity: 'Cyber security expert with deep knowledge of OWASP Top 10',
65
- style: 'Analytical, precise, and cautious',
66
- principles: ['Security is a process, not a product', 'Favor Defense in Depth', 'Prioritize mitigations based on risk']
67
- },
68
- {
69
- id: 'sqa', folder: 'bmad-ma-agent-sqa', name: 'Gad',
70
- role: 'Software Quality Assurance Engineer and Defense Standards Expert',
71
- identity: 'Experienced quality professional with deep expertise in SQA auditing',
72
- style: 'Clear, precise, and structured for SQA work',
73
- principles: ['Quality is everyone\'s responsibility but the SQA auditor\'s job to verify', 'Traceability from requirement to code', 'Process compliance prevents defects', 'Evidence matters more than opinions']
74
- },
75
- ];
76
-
77
- for (const agent of AGENTS) {
78
- const skillMd = fs.readFileSync(path.join(SKILLS_DIR, agent.folder, 'SKILL.md'), 'utf-8');
79
-
80
- test(`1.${AGENTS.indexOf(agent) + 1}a: ${agent.name} (${agent.id}) agent skill folder exists`, () => {
81
- assert.ok(fs.existsSync(path.join(SKILLS_DIR, agent.folder)), `${agent.folder}/ must exist`);
82
- });
83
-
84
- test(`1.${AGENTS.indexOf(agent) + 1}b: ${agent.name} persona role matches original`, () => {
85
- assert.ok(skillMd.includes(agent.role), `SKILL.md must contain role: "${agent.role}"`);
86
- });
87
-
88
- test(`1.${AGENTS.indexOf(agent) + 1}c: ${agent.name} persona identity matches original`, () => {
89
- assert.ok(skillMd.includes(agent.identity), `SKILL.md must contain identity fragment: "${agent.identity}"`);
90
- });
91
-
92
- test(`1.${AGENTS.indexOf(agent) + 1}d: ${agent.name} communication style matches original`, () => {
93
- assert.ok(skillMd.includes(agent.style), `SKILL.md must contain style: "${agent.style}"`);
94
- });
95
-
96
- test(`1.${AGENTS.indexOf(agent) + 1}e: ${agent.name} principles preserved`, () => {
97
- for (const p of agent.principles) {
98
- assert.ok(skillMd.includes(p), `SKILL.md must contain principle: "${p}"`);
99
- }
100
- });
101
-
102
- test(`1.${AGENTS.indexOf(agent) + 1}f: ${agent.name} activation sequence preserved`, () => {
103
- assert.ok(skillMd.includes('Activation Sequence'), 'SKILL.md must have Activation Sequence section');
104
- assert.ok(skillMd.includes('config.yaml'), 'activation must reference config.yaml');
105
- assert.ok(skillMd.includes('{user_name}'), 'activation must reference {user_name}');
106
- assert.ok(skillMd.includes('{communication_language}'), 'activation must reference {communication_language}');
107
- assert.ok(skillMd.includes('STOP and WAIT for user input'), 'activation must include STOP instruction');
108
- });
109
-
110
- test(`1.${AGENTS.indexOf(agent) + 1}g: ${agent.name} has bmad-skill-manifest.yaml`, () => {
111
- const manifestPath = path.join(SKILLS_DIR, agent.folder, 'bmad-skill-manifest.yaml');
112
- assert.ok(fs.existsSync(manifestPath), 'bmad-skill-manifest.yaml must exist');
113
- const manifest = fs.readFileSync(manifestPath, 'utf-8');
114
- assert.ok(manifest.includes('type: agent'), 'manifest must declare type: agent');
115
- assert.ok(manifest.includes(`name: ${agent.folder}`), `manifest must have name: ${agent.folder}`);
116
- assert.ok(manifest.includes('module: ma-skills'), 'manifest must reference module: ma-skills');
117
- });
118
- }
119
-
120
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
121
- // Task 2: Validate agent menu routing (AC #2)
122
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
123
-
124
- console.log('\nTask 2: Validate agent menu routing (AC #2)\n');
125
-
126
- const AGENT_MENUS = {
127
- 'bmad-ma-agent-sre': {
128
- agent: 'SRE/Alex',
129
- items: [
130
- { cmd: 'HC', skill: 'sre-health-check', exists: false, note: 'pre-existing: workflow never implemented in source' },
131
- { cmd: 'FD', skill: 'sre-fix-deployments', exists: true },
132
- { cmd: 'PO', skill: 'sre-performance-opt', exists: false, note: 'pre-existing: workflow never implemented in source' },
133
- ]
134
- },
135
- 'bmad-ma-agent-devops': {
136
- agent: 'DevOps/Amit',
137
- items: [
138
- { cmd: 'CO', skill: 'devops-configure-infrastructure', exists: true },
139
- { cmd: 'PL', skill: 'devops-optimize-pipelines', exists: false, note: 'pre-existing: workflow never implemented in source' },
140
- { cmd: 'MH', skill: 'devops-manage-helm', exists: true },
141
- ]
142
- },
143
- 'bmad-ma-agent-cyber': {
144
- agent: 'Cyber/Yael',
145
- items: [
146
- { cmd: 'VS', skill: 'cyber-vulnerability-scan', exists: true },
147
- { cmd: 'SA', skill: 'cyber-security-audit', exists: true },
148
- { cmd: 'TM', skill: 'cyber-threat-modeling', exists: false, note: 'pre-existing: workflow never implemented in source' },
149
- ]
150
- },
151
- 'bmad-ma-agent-sqa': {
152
- agent: 'SQA+MIL-498/Gad',
153
- items: [
154
- { cmd: 'AU', skill: 'sqa-audit', exists: true },
155
- { cmd: 'IC', skill: 'sqa-ieee12207', exists: true },
156
- { cmd: 'RQ', skill: 'sqa-requirements-quality', exists: true },
157
- { cmd: 'GS', skill: 'mil498-srs', exists: true },
158
- { cmd: 'GD', skill: 'mil498-sdd', exists: true },
159
- { cmd: 'GP', skill: 'mil498-sdp', exists: true },
160
- { cmd: 'GO', skill: 'mil498-ocd', exists: true },
161
- { cmd: 'SS', skill: 'mil498-sss', exists: true },
162
- { cmd: 'GT', skill: 'mil498-std', exists: true },
163
- { cmd: 'SD', skill: 'mil498-ssdd', exists: true },
164
- { cmd: 'MR', skill: 'mil498-requirement-quality', exists: true },
165
- ]
166
- },
167
- };
168
-
169
- for (const [folder, menu] of Object.entries(AGENT_MENUS)) {
170
- const skillMd = fs.readFileSync(path.join(SKILLS_DIR, folder, 'SKILL.md'), 'utf-8');
171
-
172
- for (const item of menu.items) {
173
- test(`2: ${menu.agent} menu [${item.cmd}] references skill "${item.skill}" in SKILL.md`, () => {
174
- assert.ok(skillMd.includes(item.skill),
175
- `SKILL.md must reference skill "${item.skill}" for menu item ${item.cmd}`);
176
- });
177
-
178
- if (item.exists) {
179
- test(`2: ${menu.agent} menu [${item.cmd}] skill folder "${item.skill}" exists`, () => {
180
- assert.ok(fs.existsSync(path.join(SKILLS_DIR, item.skill)),
181
- `skills/${item.skill}/ must exist`);
182
- });
183
- } else {
184
- test(`2: ${menu.agent} menu [${item.cmd}] skill "${item.skill}" not in skills/ (${item.note})`, () => {
185
- // Documenting pre-existing gap: menu references workflow that was never implemented
186
- assert.ok(!fs.existsSync(path.join(SKILLS_DIR, item.skill)),
187
- `skills/${item.skill}/ should NOT exist (pre-existing gap from source)`);
188
- });
189
- }
190
- }
191
- }
192
-
193
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
194
- // Task 3: Validate MIL-498 DID conversion (AC #3, #4)
195
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
196
-
197
- console.log('\nTask 3: Validate MIL-498 DID conversion (AC #3, #4)\n');
198
-
199
- const MIL498_DIDS = [
200
- { id: 'ocd', template: 'OCD.md', steps: 6 },
201
- { id: 'sdd', template: 'SDD.md', steps: 6 },
202
- { id: 'sdp', template: 'SDP.md', steps: 6 },
203
- { id: 'srs', template: 'SRS.md', steps: 6 },
204
- { id: 'ssdd', template: 'SSDD.md', steps: 7 }, // SSDD has extra CSCI discovery step
205
- { id: 'sss', template: 'SSS.md', steps: 6 },
206
- { id: 'std', template: 'STD.md', steps: 6 },
207
- ];
208
-
209
- for (const did of MIL498_DIDS) {
210
- const skillFolder = `mil498-${did.id}`;
211
- const skillDir = path.join(SKILLS_DIR, skillFolder);
212
-
213
- test(`3.${MIL498_DIDS.indexOf(did) + 1}a: ${skillFolder} template is byte-identical to original`, () => {
214
- const skillTemplate = fs.readFileSync(path.join(skillDir, 'template.md'), 'utf-8');
215
- const origTemplate = fs.readFileSync(path.join(TEMPLATE_SRC, did.template), 'utf-8');
216
- assert.strictEqual(skillTemplate, origTemplate,
217
- `${skillFolder}/template.md must be byte-identical to lib/mil498-templates/${did.template}`);
218
- });
219
-
220
- test(`3.${MIL498_DIDS.indexOf(did) + 1}b: ${skillFolder} has ${did.steps} step files in prompts/`, () => {
221
- const promptsDir = path.join(skillDir, 'prompts');
222
- assert.ok(fs.existsSync(promptsDir), `${skillFolder}/prompts/ must exist`);
223
- const stepFiles = fs.readdirSync(promptsDir).filter(f => f.endsWith('.md')).sort();
224
- assert.strictEqual(stepFiles.length, did.steps,
225
- `Expected ${did.steps} step files, found ${stepFiles.length}: ${stepFiles.join(', ')}`);
226
- });
227
-
228
- test(`3.${MIL498_DIDS.indexOf(did) + 1}c: ${skillFolder} step files are numbered sequentially`, () => {
229
- const promptsDir = path.join(skillDir, 'prompts');
230
- const stepFiles = fs.readdirSync(promptsDir).filter(f => f.endsWith('.md')).sort();
231
- for (let i = 0; i < stepFiles.length; i++) {
232
- const expectedPrefix = String(i + 1).padStart(2, '0');
233
- assert.ok(stepFiles[i].startsWith(expectedPrefix),
234
- `Step ${i + 1} should start with "${expectedPrefix}", got "${stepFiles[i]}"`);
235
- }
236
- });
237
-
238
- test(`3.${MIL498_DIDS.indexOf(did) + 1}d: ${skillFolder} step order matches original instructions.md`, () => {
239
- // Verify the step names correspond to the original instructions.md step headings
240
- // Note: SSDD has Step 2.5 (fractional), so match both integer and fractional step numbers
241
- const origInstructions = fs.readFileSync(
242
- path.join(WORKFLOW_SRC, 'mil498', did.id, 'instructions.md'), 'utf-8');
243
- const stepHeadings = origInstructions.match(/^## Step [\d.]+ — .+$/gm) || [];
244
- assert.strictEqual(stepHeadings.length, did.steps,
245
- `Original instructions.md should have ${did.steps} steps, found: ${stepHeadings.map(h => h.substring(0, 30)).join('; ')}`);
246
- });
247
-
248
- test(`3.${MIL498_DIDS.indexOf(did) + 1}e: ${skillFolder} SKILL.md references all step files`, () => {
249
- const skillMd = fs.readFileSync(path.join(skillDir, 'SKILL.md'), 'utf-8');
250
- assert.ok(skillMd.includes('prompts/'), 'SKILL.md must reference prompts/ directory');
251
- });
252
-
253
- test(`3.${MIL498_DIDS.indexOf(did) + 1}f: ${skillFolder} has bmad-skill-manifest.yaml`, () => {
254
- const manifest = fs.readFileSync(path.join(skillDir, 'bmad-skill-manifest.yaml'), 'utf-8');
255
- assert.ok(manifest.includes(`name: ${skillFolder}`), `manifest must have name: ${skillFolder}`);
256
- assert.ok(manifest.includes('module: ma-skills'), 'manifest must reference module: ma-skills');
257
- });
258
- }
259
-
260
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
261
- // Task 4: Validate SRE/DevOps/Cyber workflow conversion (AC #5)
262
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
263
-
264
- console.log('\nTask 4: Validate SRE/DevOps/Cyber workflow conversion (AC #5)\n');
265
-
266
- const PLAYBOOKS = [
267
- // SRE (7)
268
- { skill: 'sre-check-deployment-status', source: 'sre/check-deployment-status.md' },
269
- { skill: 'sre-check-secrets', source: 'sre/check-secrets.md' },
270
- { skill: 'sre-check-system-status', source: 'sre/check-system-status.md' },
271
- { skill: 'sre-day-2-ops', source: 'sre/day-2-ops.md' },
272
- { skill: 'sre-deployment-strategies', source: 'sre/deployment-strategies.md' },
273
- { skill: 'sre-fix-deployments', source: 'sre/fix-deployments.md' },
274
- { skill: 'sre-gitops-status', source: 'sre/gitops-status.md' },
275
- // DevOps (5)
276
- { skill: 'devops-configure-infrastructure', source: 'devops/configure-infrastructure.md' },
277
- { skill: 'devops-disconnected-deployment', source: 'devops/disconnected-deployment.md' },
278
- { skill: 'devops-docker-compose-setup', source: 'devops/docker-compose-setup.md' },
279
- { skill: 'devops-manage-helm', source: 'devops/manage-helm.md' },
280
- { skill: 'devops-sign-docker-image', source: 'devops/sign-docker-image.md' },
281
- // Cyber (7)
282
- { skill: 'cyber-generate-certs', source: 'cyber/generate-certs.md' },
283
- { skill: 'cyber-immunity-estimation', source: 'cyber/immunity-estimation.md' },
284
- { skill: 'cyber-security-audit', source: 'cyber/security-audit.md' },
285
- { skill: 'cyber-vault-secrets', source: 'cyber/vault-secrets.md' },
286
- { skill: 'cyber-verify-docker-users', source: 'cyber/verify-docker-users.md' },
287
- { skill: 'cyber-verify-image-signature', source: 'cyber/verify-image-signature.md' },
288
- { skill: 'cyber-vulnerability-scan', source: 'cyber/vulnerability-scan.md' },
289
- ];
290
-
291
- for (const pb of PLAYBOOKS) {
292
- test(`4a: ${pb.skill} skill folder exists with SKILL.md`, () => {
293
- assert.ok(fs.existsSync(path.join(SKILLS_DIR, pb.skill, 'SKILL.md')),
294
- `skills/${pb.skill}/SKILL.md must exist`);
295
- });
296
-
297
- test(`4b: ${pb.skill} content preserves original verbatim (only frontmatter added)`, () => {
298
- const skillContent = fs.readFileSync(path.join(SKILLS_DIR, pb.skill, 'SKILL.md'), 'utf-8');
299
- const origContent = fs.readFileSync(path.join(WORKFLOW_SRC, pb.source), 'utf-8');
300
-
301
- // SKILL.md = YAML frontmatter + original content
302
- // Strip frontmatter (between first two --- lines) and compare
303
- const afterFrontmatter = skillContent.replace(/^---[\s\S]*?---\n+/, '');
304
- // Normalize line endings (CRLF -> LF) and trailing whitespace for comparison
305
- const normalizedSkill = afterFrontmatter.replace(/\r\n/g, '\n').replace(/\s+$/g, '');
306
- const normalizedOrig = origContent.replace(/\r\n/g, '\n').replace(/\s+$/g, '');
307
- assert.strictEqual(normalizedSkill, normalizedOrig,
308
- `${pb.skill}/SKILL.md body must match ${pb.source} (frontmatter stripped)`);
309
- });
310
-
311
- test(`4c: ${pb.skill} has bmad-skill-manifest.yaml`, () => {
312
- const manifestPath = path.join(SKILLS_DIR, pb.skill, 'bmad-skill-manifest.yaml');
313
- assert.ok(fs.existsSync(manifestPath), 'bmad-skill-manifest.yaml must exist');
314
- const manifest = fs.readFileSync(manifestPath, 'utf-8');
315
- assert.ok(manifest.includes('module: ma-skills'), 'manifest must reference module: ma-skills');
316
- });
317
- }
318
-
319
- // Extension workflows (6)
320
- console.log('\nTask 4 continued: Extension workflow conversion\n');
321
-
322
- const EXT_WORKFLOWS = [
323
- 'add-sprint', 'add-to-sprint', 'create-bug-story',
324
- 'modify-sprint', 'project-context-expansion', 'sprint-status-view',
325
- ];
326
-
327
- for (const wf of EXT_WORKFLOWS) {
328
- test(`4d: ${wf} extension skill folder exists with SKILL.md`, () => {
329
- assert.ok(fs.existsSync(path.join(SKILLS_DIR, wf, 'SKILL.md')),
330
- `skills/${wf}/SKILL.md must exist`);
331
- });
332
-
333
- test(`4e: ${wf} has bmad-skill-manifest.yaml`, () => {
334
- const manifestPath = path.join(SKILLS_DIR, wf, 'bmad-skill-manifest.yaml');
335
- assert.ok(fs.existsSync(manifestPath), 'bmad-skill-manifest.yaml must exist');
336
- });
337
- }
338
-
339
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
340
- // Task 5: Validate module structure (AC #6)
341
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
342
-
343
- console.log('\nTask 5: Validate module structure (AC #6)\n');
344
-
345
- test('5.1: module.yaml has code: ma-skills', () => {
346
- const content = fs.readFileSync(path.join(EXT_DIR, 'module.yaml'), 'utf-8');
347
- assert.ok(content.includes('code: ma-skills'), 'module.yaml must have code: ma-skills');
348
- });
349
-
350
- test('5.2: module.yaml has extends-module: bmm', () => {
351
- const content = fs.readFileSync(path.join(EXT_DIR, 'module.yaml'), 'utf-8');
352
- assert.ok(content.includes('extends-module: bmm'), 'module.yaml must declare extends-module: bmm');
353
- });
354
-
355
- test('5.3: skills/ contains exactly 61 skill folders', () => {
356
- const folders = fs.readdirSync(SKILLS_DIR).filter(f =>
357
- fs.statSync(path.join(SKILLS_DIR, f)).isDirectory());
358
- assert.strictEqual(folders.length, 61,
359
- `Expected 61 skill folders, found ${folders.length}: ${folders.join(', ')}`);
360
- });
361
-
362
- test('5.4: every skill folder has SKILL.md', () => {
363
- const folders = fs.readdirSync(SKILLS_DIR).filter(f =>
364
- fs.statSync(path.join(SKILLS_DIR, f)).isDirectory());
365
- for (const folder of folders) {
366
- assert.ok(fs.existsSync(path.join(SKILLS_DIR, folder, 'SKILL.md')),
367
- `skills/${folder}/SKILL.md must exist`);
368
- }
369
- });
370
-
371
- test('5.5: every skill folder has bmad-skill-manifest.yaml', () => {
372
- const folders = fs.readdirSync(SKILLS_DIR).filter(f =>
373
- fs.statSync(path.join(SKILLS_DIR, f)).isDirectory());
374
- for (const folder of folders) {
375
- assert.ok(fs.existsSync(path.join(SKILLS_DIR, folder, 'bmad-skill-manifest.yaml')),
376
- `skills/${folder}/bmad-skill-manifest.yaml must exist`);
377
- }
378
- });
379
-
380
- test('5.6: module-help.csv exists and lists all 61 skills', () => {
381
- const csv = fs.readFileSync(path.join(EXT_DIR, 'module-help.csv'), 'utf-8');
382
- const lines = csv.split('\n').filter(l => l.trim() && !l.startsWith('module,'));
383
- // Should have a line for each of the 61 skills (header excluded)
384
- assert.strictEqual(lines.length, 61,
385
- `Expected 61 data rows in module-help.csv, found ${lines.length}`);
386
- });
387
-
388
- test('5.7: module-help.csv references module code ma-skills', () => {
389
- const csv = fs.readFileSync(path.join(EXT_DIR, 'module-help.csv'), 'utf-8');
390
- const dataLines = csv.split('\n').filter(l => l.trim() && !l.startsWith('module,'));
391
- for (const line of dataLines) {
392
- assert.ok(line.startsWith('ma-skills,'),
393
- `Every data row must start with "ma-skills,", found: "${line.substring(0, 30)}..."`);
394
- }
395
- });
396
-
397
- test('5.8: skill folder breakdown: 5 agents + 8 mil498 + 7 sre + 5 devops + 7 cyber + 12 ml + 17 extension (14 workflow + 3 sqa)', () => {
398
- const folders = fs.readdirSync(SKILLS_DIR).filter(f =>
399
- fs.statSync(path.join(SKILLS_DIR, f)).isDirectory());
400
-
401
- const agents = folders.filter(f => f.startsWith('bmad-ma-agent-'));
402
- const mil498 = folders.filter(f => f.startsWith('mil498-'));
403
- const sre = folders.filter(f => f.startsWith('sre-'));
404
- const devops = folders.filter(f => f.startsWith('devops-'));
405
- const cyber = folders.filter(f => f.startsWith('cyber-'));
406
- const ml = folders.filter(f => f.startsWith('ml-'));
407
- const ext = folders.filter(f =>
408
- !f.startsWith('bmad-ma-agent-') && !f.startsWith('mil498-') &&
409
- !f.startsWith('sre-') && !f.startsWith('devops-') && !f.startsWith('cyber-') &&
410
- !f.startsWith('ml-'));
411
-
412
- assert.strictEqual(agents.length, 5, `Expected 5 agent folders, found ${agents.length}`);
413
- assert.strictEqual(mil498.length, 8, `Expected 8 mil498 folders, found ${mil498.length}`);
414
- assert.strictEqual(sre.length, 7, `Expected 7 sre folders, found ${sre.length}`);
415
- assert.strictEqual(devops.length, 5, `Expected 5 devops folders, found ${devops.length}`);
416
- assert.strictEqual(cyber.length, 7, `Expected 7 cyber folders, found ${cyber.length}`);
417
- assert.strictEqual(ml.length, 12, `Expected 12 ml folders, found ${ml.length}`);
418
- assert.strictEqual(ext.length, 17, `Expected 17 extension folders, found ${ext.length}`);
419
- });
420
-
421
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
422
- // Task 6: Validate deployment pipeline (AC #1-#5)
423
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
424
-
425
- console.log('\nTask 6: Validate deployment pipeline\n');
426
-
427
- test('6.1: bmad.js exports migration detection functions', () => {
428
- const bmad = require('../lib/bmad');
429
- assert.ok(typeof bmad.detectMigrationNeed === 'function', 'detectMigrationNeed must be exported');
430
- assert.ok(typeof bmad.backupCustomizations === 'function', 'backupCustomizations must be exported');
431
- assert.ok(typeof bmad.restoreCustomizations === 'function', 'restoreCustomizations must be exported');
432
- assert.ok(typeof bmad.mergeUserCustomizations === 'function', 'mergeUserCustomizations must be exported');
433
- assert.ok(typeof bmad.cleanupLegacyArtifacts === 'function', 'cleanupLegacyArtifacts must be exported');
434
- });
435
-
436
- test('6.2: bmad.js applyCustomizations is exported', () => {
437
- const bmad = require('../lib/bmad');
438
- assert.ok(typeof bmad.applyCustomizations === 'function', 'applyCustomizations must be exported');
439
- });
440
-
441
- test('6.3: lib/bmad-customize/ has exactly 10 built-in agent files', () => {
442
- assert.ok(fs.existsSync(CUSTOMIZE_DIR), 'lib/bmad-customize/ must exist');
443
- const files = fs.readdirSync(CUSTOMIZE_DIR).filter(f => f.endsWith('.customize.yaml'));
444
- assert.strictEqual(files.length, 10, `Expected 10 built-in agent files, found ${files.length}`);
445
- });
446
-
447
- const BUILTIN_AGENTS = [
448
- 'bmm-pm', 'bmm-architect', 'bmm-dev', 'bmm-qa',
449
- 'bmm-sm', 'bmm-tech-writer', 'bmm-ux-designer', 'bmm-bmad-master'
450
- ];
451
-
452
- for (const agentId of BUILTIN_AGENTS) {
453
- test(`6.4: lib/bmad-customize/${agentId}.customize.yaml exists`, () => {
454
- assert.ok(fs.existsSync(path.join(CUSTOMIZE_DIR, `${agentId}.customize.yaml`)),
455
- `${agentId}.customize.yaml must exist in lib/bmad-customize/`);
456
- });
457
- }
458
-
459
- test('6.5: built-in agent customize.yaml files have critical_actions', () => {
460
- for (const agentId of BUILTIN_AGENTS) {
461
- const content = fs.readFileSync(path.join(CUSTOMIZE_DIR, `${agentId}.customize.yaml`), 'utf-8');
462
- assert.ok(content.includes('critical_actions:'),
463
- `${agentId}.customize.yaml must have critical_actions section`);
464
- }
465
- });
466
-
467
- test('6.6: bmad.js has extension deployment stage markers in correct order', () => {
468
- const bmadSrc = fs.readFileSync(path.join(ROOT, 'lib', 'bmad.js'), 'utf-8');
469
- const recompileIdx = bmadSrc.indexOf('STAGE:RECOMPILE');
470
- const extensionIdx = bmadSrc.indexOf('STAGE:EXTENSION');
471
- const workflowIdx = bmadSrc.indexOf('STAGE:WORKFLOWS');
472
-
473
- assert.ok(recompileIdx > 0, 'STAGE:RECOMPILE marker must exist');
474
- assert.ok(extensionIdx > 0, 'STAGE:EXTENSION marker must exist');
475
- assert.ok(workflowIdx > 0, 'STAGE:WORKFLOWS marker must exist');
476
- assert.ok(extensionIdx > recompileIdx, 'extension must come after recompile');
477
- assert.ok(extensionIdx < workflowIdx, 'extension must come before workflows');
478
- });
479
-
480
- test('6.7: bmad.js references bmad-extension source dir', () => {
481
- const bmadSrc = fs.readFileSync(path.join(ROOT, 'lib', 'bmad.js'), 'utf-8');
482
- assert.ok(bmadSrc.includes("'bmad-extension'"), 'must reference bmad-extension');
483
- assert.ok(bmadSrc.includes("'ma-agents-skills'"), 'must reference ma-agents-skills');
484
- });
485
-
486
- test('6.8: detectMigrationNeed returns correct results for fresh install', () => {
487
- const bmad = require('../lib/bmad');
488
- const os = require('os');
489
- const result = bmad.detectMigrationNeed(path.join(os.tmpdir(), 'nonexistent-dir-' + Date.now()));
490
- assert.strictEqual(result.action, 'install');
491
- assert.strictEqual(result.migrate, false);
492
- });
493
-
494
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
495
- // Summary
496
- // ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
497
-
498
- console.log(`\n${'='.repeat(60)}`);
499
- console.log(`Story 15.8 Validation: ${passed} passed, ${failed} failed`);
500
- if (errors.length > 0) {
501
- console.log('\nFailures:');
502
- for (const { name, error } of errors) {
503
- console.log(` ${name}: ${error}`);
504
- }
505
- }
506
- process.exit(failed > 0 ? 1 : 0);