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.
- package/CONTRIBUTING.md +139 -0
- package/README.md +27 -11
- package/bin/cli.js +34 -10
- package/docs/deployment/vllm-nemotron.md +4 -2
- package/lib/.bmad-extension-plugin.build-1264-1777348888201/.claude-plugin/marketplace.json +109 -0
- package/lib/{bmad-extension → .bmad-extension-plugin.build-1264-1777348888201/skills}/module-help.csv +5 -5
- package/lib/.bmad-extension-plugin.build-1264-1777348888201/skills/module.yaml +20 -0
- package/lib/.bmad-extension-plugin.build-24696-1777348768444/.claude-plugin/marketplace.json +109 -0
- package/lib/.bmad-extension-plugin.build-24696-1777348768444/skills/module-help.csv +62 -0
- package/lib/.bmad-extension-plugin.build-24696-1777348768444/skills/module.yaml +20 -0
- package/lib/.bmad-extension-plugin.build-25428-1777348694953/.claude-plugin/marketplace.json +109 -0
- package/lib/.bmad-extension-plugin.build-25428-1777348694953/skills/module-help.csv +62 -0
- package/lib/.bmad-extension-plugin.build-25428-1777348694953/skills/module.yaml +20 -0
- package/lib/agents.js +36 -6
- package/lib/bmad-cache/bmb/.claude-plugin/marketplace.json +4 -11
- package/lib/bmad-cache/bmb/README.md +1 -1
- package/lib/bmad-cache/bmb/_git_preserved/index +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.idx +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/{pack-554778ad4e7254827618ebd2497c3f4bce9054a4.pack → pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.pack} +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-6ecd9fc6445b1281449c5ec49a6c5794708e662e.rev +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/bmb/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/bmb/_git_preserved/refs/tags/v1.7.0 +1 -0
- package/lib/bmad-cache/bmb/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/bmb/package-lock.json +2 -2
- package/lib/bmad-cache/bmb/package.json +2 -7
- package/lib/bmad-cache/bmb/skills/bmad-agent-builder/assets/customize-template.toml +62 -0
- package/lib/bmad-cache/bmb/skills/bmad-agent-builder/assets/sample-customize-analyst.toml +87 -0
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/customize-template.toml +56 -0
- package/lib/bmad-cache/bmb/skills/bmad-workflow-builder/assets/sample-customize-product-brief.toml +51 -0
- package/lib/bmad-cache/bmb/tools/validate-doc-links.cjs +6 -1
- package/lib/bmad-cache/bmb/website/astro.config.mjs +5 -1
- package/lib/bmad-cache/cache-manifest.json +13 -11
- package/lib/bmad-cache/cis/.claude-plugin/marketplace.json +1 -1
- package/lib/bmad-cache/cis/README.md +1 -1
- package/lib/bmad-cache/cis/_git_preserved/index +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.idx +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/{pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.pack → pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.pack} +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-cad8ff313ea5db860ddcc7780f03917dcba1da8d.rev +0 -0
- package/lib/bmad-cache/cis/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/cis/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/cis/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/cis/package.json +1 -1
- package/lib/bmad-cache/cis/src/module.yaml +49 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-brainstorming-coach/customize.toml +38 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-creative-problem-solver/customize.toml +38 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-design-thinking-coach/customize.toml +39 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-innovation-strategist/customize.toml +38 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-presentation-master/customize.toml +73 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-storyteller/customize.toml +60 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-design-thinking/customize.toml +41 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-innovation-strategy/customize.toml +41 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-problem-solving/customize.toml +42 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-storytelling/customize.toml +41 -0
- package/lib/bmad-cache/cis/tools/build-docs.mjs +8 -0
- package/lib/bmad-cache/cis/website/astro.config.mjs +34 -4
- package/lib/bmad-cache/cis/website/src/content/config.ts +2 -1
- package/lib/bmad-cache/cis/website/src/content/i18n/zh-CN.json +28 -0
- package/lib/bmad-cache/cis/website/src/lib/locales.mjs +27 -0
- package/lib/bmad-cache/gds/.claude-plugin/marketplace.json +7 -6
- package/lib/bmad-cache/gds/README.md +5 -3
- package/lib/bmad-cache/gds/_git_preserved/index +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.idx +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/{pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.pack → pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.pack} +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-c1322f7c8531a89dc4f3f34c4955d194f286c1e6.rev +0 -0
- package/lib/bmad-cache/gds/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/gds/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/gds/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/gds/package.json +1 -1
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/customize.toml +57 -0
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/customize.toml +59 -0
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/customize.toml +129 -0
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/customize.toml +60 -0
- package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/customize.toml +65 -0
- package/lib/bmad-cache/gds/src/module-help.csv +4 -4
- package/lib/bmad-cache/gds/src/module.yaml +43 -1
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-prd/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-gdd/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-edit-prd/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-gdd/data/genre-complexity.csv +26 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/domain-complexity.csv +15 -0
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-validate-prd/data/project-types.csv +11 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gds-document-project/customize.toml +41 -0
- package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/customize.toml +41 -0
- package/lib/bmad-cache/tea/.claude-plugin/marketplace.json +1 -1
- package/lib/bmad-cache/tea/.github/CODE_OF_CONDUCT.md +128 -0
- package/lib/bmad-cache/tea/.github/FUNDING.yaml +15 -0
- package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/config.yaml +11 -0
- package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/feature_request.md +70 -0
- package/lib/bmad-cache/tea/.github/ISSUE_TEMPLATE/issue.md +61 -0
- package/lib/bmad-cache/tea/.github/workflows/docs.yaml +66 -0
- package/lib/bmad-cache/tea/.github/workflows/manual-release.yaml +216 -0
- package/lib/bmad-cache/tea/.github/workflows/quality.yaml +117 -0
- package/lib/bmad-cache/tea/.vscode/settings.json +47 -0
- package/lib/bmad-cache/tea/README.md +63 -55
- package/lib/bmad-cache/tea/_git_preserved/index +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.idx +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/{pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.pack → pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.pack} +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-9b16db8eb5022c18cef1f0a27d63b6e0f4bc2b2a.rev +0 -0
- package/lib/bmad-cache/tea/_git_preserved/packed-refs +1 -1
- package/lib/bmad-cache/tea/_git_preserved/refs/heads/main +1 -1
- package/lib/bmad-cache/tea/_git_preserved/shallow +1 -1
- package/lib/bmad-cache/tea/docs/explanation/engagement-models.md +1 -1
- package/lib/bmad-cache/tea/docs/explanation/tea-overview.md +1 -1
- package/lib/bmad-cache/tea/docs/glossary/index.md +1 -1
- package/lib/bmad-cache/tea/docs/how-to/customization/extend-tea-with-custom-workflows.md +29 -0
- package/lib/bmad-cache/tea/docs/how-to/workflows/run-trace.md +27 -20
- package/lib/bmad-cache/tea/docs/how-to/workflows/teach-me-testing.md +2 -2
- package/lib/bmad-cache/tea/docs/reference/commands.md +3 -3
- package/lib/bmad-cache/tea/docs/reference/troubleshooting.md +36 -0
- package/lib/bmad-cache/tea/docs/tutorials/learn-testing-tea-academy.md +1 -1
- package/lib/bmad-cache/tea/package-lock.json +2 -2
- package/lib/bmad-cache/tea/package.json +3 -3
- package/lib/bmad-cache/tea/src/agents/bmad-tea/SKILL.md +54 -44
- package/lib/bmad-cache/tea/src/agents/bmad-tea/customize.toml +104 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/contract-testing.md +32 -15
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-overview.md +15 -12
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/agents/bmad-tea/resources/tea-index.csv +13 -4
- package/lib/bmad-cache/tea/src/module.yaml +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/README.md +5 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/SKILL.md +124 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/checklist.md +3 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/instructions.md +7 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01-init.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-01b-continue.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-02-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-01.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-02.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-03.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-04.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-05.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-06.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-04-session-07.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-c/step-05-completion.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-01-assess-workflow.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-e/step-e-02-apply-edits.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/steps-v/step-v-01-validate.md +12 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/SKILL.md +80 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/contract-testing.md +32 -15
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-overview.md +15 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/pactjs-utils-zod-to-pact.md +262 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/resources/tea-index.csv +13 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-01-preflight-and-context.md +3 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-02-generation-mode.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-03-test-strategy.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04-generate-tests.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04a-subagent-api-failing.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-04c-aggregate.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-c/step-05-validate-and-complete.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/SKILL.md +80 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-01-preflight-and-context.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-02-identify-targets.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03-generate-tests.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03a-subagent-api.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-03c-aggregate.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-c/step-04-validate-and-summarize.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/SKILL.md +80 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-01-preflight.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-02-generate-pipeline.md +15 -7
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-03-configure-quality-gates.md +7 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-c/step-04-validate-and-summary.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/SKILL.md +80 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-01-preflight.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-02-select-framework.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-03-scaffold-framework.md +11 -7
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-04-docs-and-scripts.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-c/step-05-validate-and-summary.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/SKILL.md +80 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-01-load-context.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-02-define-thresholds.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-03-gather-evidence.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04-evaluate-and-score.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-04e-aggregate-nfr.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-c/step-05-generate-report.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/SKILL.md +82 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01-detect-mode.md +7 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-01b-resume.md +29 -15
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-02-load-context.md +7 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-03-risk-and-testability.md +7 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-04-coverage-plan.md +7 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-c/step-05-generate-output.md +14 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-architecture-template.md +3 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-qa-template.md +3 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/test-design-template.md +3 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/SKILL.md +80 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/instructions.md +2 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-01-load-context.md +3 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-02-discover-tests.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03-quality-evaluation.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03a-subagent-determinism.md +43 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-03f-aggregate-scores.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-c/step-04-generate-report.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/SKILL.md +82 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/checklist.md +42 -18
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/customize.toml +40 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/instructions.md +6 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/contract-testing.md +18 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-broker-webhooks.md +237 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-consumer-framework-setup.md +134 -12
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pact-mcp.md +1 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pactjs-utils-consumer-helpers.md +111 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/pactjs-utils-provider-verifier.md +83 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-module-setup.md +122 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-providers.md +155 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-risk-guidance.md +114 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-template-matchers.md +160 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-testing-fundamentals.md +42 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-timeout-error.md +130 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/knowledge/webhook-waiting-querying.md +167 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/resources/tea-index.csv +12 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01-load-context.md +74 -13
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-01b-resume.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-02-discover-tests.md +24 -4
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-03-map-criteria.md +15 -11
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-04-analyze-gaps.md +210 -3
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-c/step-05-gate-decision.md +477 -62
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-01-assess.md +1 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-e/step-02-apply-edit.md +8 -0
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/steps-v/step-01-validate.md +9 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/trace-template.md +10 -2
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow-plan.md +14 -11
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.yaml +24 -0
- package/lib/bmad-cache/tea/test/test-installation-components.js +210 -66
- package/lib/bmad-cache/tea/test/test-knowledge-base.js +6 -1
- package/lib/bmad-cache/tea/test/test-release-metadata.js +71 -0
- package/lib/bmad-cache/tea/tools/validate-agent-schema.js +73 -0
- package/lib/bmad-customize/bmm-qa.customize.yaml +1 -1
- package/lib/bmad-extension/.claude-plugin/marketplace.json.template +117 -0
- package/lib/bmad-extension/skills/ma-agent-cyber/.gitkeep +0 -0
- package/lib/bmad-extension/skills/ma-agent-cyber/SKILL.md +49 -0
- package/lib/bmad-extension/skills/ma-agent-cyber/bmad-skill-manifest.yaml +11 -0
- package/lib/bmad-extension/skills/ma-agent-devops/.gitkeep +0 -0
- package/lib/bmad-extension/skills/ma-agent-devops/SKILL.md +49 -0
- package/lib/bmad-extension/skills/ma-agent-devops/bmad-skill-manifest.yaml +11 -0
- package/lib/bmad-extension/skills/ma-agent-ml/.gitkeep +0 -0
- package/lib/bmad-extension/skills/ma-agent-ml/SKILL.md +59 -0
- package/lib/bmad-extension/skills/ma-agent-ml/bmad-skill-manifest.yaml +11 -0
- package/lib/bmad-extension/skills/ma-agent-sqa/.gitkeep +0 -0
- package/lib/bmad-extension/skills/ma-agent-sqa/SKILL.md +59 -0
- package/lib/bmad-extension/skills/ma-agent-sqa/bmad-skill-manifest.yaml +11 -0
- package/lib/bmad-extension/skills/ma-agent-sre/.gitkeep +0 -0
- package/lib/bmad-extension/skills/ma-agent-sre/SKILL.md +49 -0
- package/lib/bmad-extension/skills/ma-agent-sre/bmad-skill-manifest.yaml +11 -0
- package/lib/bmad-extension/skills/module-help.csv +62 -0
- package/lib/bmad-extension/skills/module.yaml +20 -0
- package/lib/bmad-extension-plugin/.claude-plugin/marketplace.json +109 -0
- package/lib/bmad-extension-plugin/skills/add-sprint/SKILL.md +175 -0
- package/lib/bmad-extension-plugin/skills/add-sprint/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/add-to-sprint/SKILL.md +243 -0
- package/lib/bmad-extension-plugin/skills/add-to-sprint/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/bmad-dev-story/SKILL.md +6 -0
- package/lib/bmad-extension-plugin/skills/bmad-dev-story/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/bmad-dev-story/checklist.md +80 -0
- package/lib/bmad-extension-plugin/skills/bmad-dev-story/workflow.md +509 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/SKILL.md +6 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/checklist.md +74 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/sprint-status-template.yaml +89 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-planning/workflow.md +372 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-status/SKILL.md +6 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-status/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/bmad-sprint-status/workflow.md +434 -0
- package/lib/bmad-extension-plugin/skills/cleanup-done/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cleanup-done/SKILL.md +215 -0
- package/lib/bmad-extension-plugin/skills/cleanup-done/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/close-sprint/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/close-sprint/SKILL.md +379 -0
- package/lib/bmad-extension-plugin/skills/close-sprint/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/create-bug-story/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/create-bug-story/SKILL.md +195 -0
- package/lib/bmad-extension-plugin/skills/create-bug-story/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-generate-certs/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-generate-certs/SKILL.md +27 -0
- package/lib/bmad-extension-plugin/skills/cyber-generate-certs/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/SKILL.md +29 -0
- package/lib/bmad-extension-plugin/skills/cyber-immunity-estimation/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-security-audit/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-security-audit/SKILL.md +27 -0
- package/lib/bmad-extension-plugin/skills/cyber-security-audit/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/SKILL.md +28 -0
- package/lib/bmad-extension-plugin/skills/cyber-vault-secrets/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/SKILL.md +23 -0
- package/lib/bmad-extension-plugin/skills/cyber-verify-docker-users/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/SKILL.md +22 -0
- package/lib/bmad-extension-plugin/skills/cyber-verify-image-signature/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/SKILL.md +28 -0
- package/lib/bmad-extension-plugin/skills/cyber-vulnerability-scan/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/SKILL.md +27 -0
- package/lib/bmad-extension-plugin/skills/devops-configure-infrastructure/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/SKILL.md +27 -0
- package/lib/bmad-extension-plugin/skills/devops-disconnected-deployment/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/SKILL.md +26 -0
- package/lib/bmad-extension-plugin/skills/devops-docker-compose-setup/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/devops-manage-helm/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/devops-manage-helm/SKILL.md +28 -0
- package/lib/bmad-extension-plugin/skills/devops-manage-helm/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/SKILL.md +24 -0
- package/lib/bmad-extension-plugin/skills/devops-sign-docker-image/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/generate-backlog/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/generate-backlog/SKILL.md +195 -0
- package/lib/bmad-extension-plugin/skills/generate-backlog/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ma-agent-cyber/.gitkeep +0 -0
- package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/ma-agent-cyber}/SKILL.md +1 -1
- package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/ma-agent-cyber}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension-plugin/skills/ma-agent-devops/.gitkeep +0 -0
- package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/ma-agent-devops}/SKILL.md +1 -1
- package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/ma-agent-devops}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension-plugin/skills/ma-agent-ml/.gitkeep +0 -0
- package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/ma-agent-ml}/SKILL.md +1 -1
- package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/ma-agent-ml}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension-plugin/skills/ma-agent-sqa/.gitkeep +0 -0
- package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/ma-agent-sqa}/SKILL.md +1 -1
- package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/ma-agent-sqa}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension-plugin/skills/ma-agent-sre/.gitkeep +0 -0
- package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/ma-agent-sre}/SKILL.md +1 -1
- package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/ma-agent-sre}/bmad-skill-manifest.yaml +1 -1
- package/lib/bmad-extension-plugin/skills/mil498-ocd/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/SKILL.md +30 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/01-discover-project-artifacts.md +26 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/03-generate-document.md +90 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/04-validate.md +14 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/05-review.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/prompts/06-save.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-ocd/template.md +169 -0
- package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/SKILL.md +105 -0
- package/lib/bmad-extension-plugin/skills/mil498-requirement-quality/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/SKILL.md +30 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/01-discover-project-artifacts.md +50 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/03-generate-document.md +98 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/04-validate.md +16 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/05-review.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/prompts/06-save.md +19 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdd/template.md +163 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/SKILL.md +30 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/01-discover-project-artifacts.md +32 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/03-generate-document.md +187 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/04-validate.md +13 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/05-review.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/prompts/06-save.md +14 -0
- package/lib/bmad-extension-plugin/skills/mil498-sdp/template.md +307 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/SKILL.md +30 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/01-discover-project-artifacts.md +42 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/03-generate-document.md +100 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/04-validate.md +16 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/05-review.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/prompts/06-save.md +18 -0
- package/lib/bmad-extension-plugin/skills/mil498-srs/template.md +219 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/SKILL.md +32 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/01-discover-project-artifacts.md +32 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/03-csci-discovery-interview.md +43 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/04-generate-document.md +96 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/05-validate.md +18 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/06-review.md +16 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/prompts/07-save.md +16 -0
- package/lib/bmad-extension-plugin/skills/mil498-ssdd/template.md +154 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/SKILL.md +31 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/01-discover-project-artifacts.md +31 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/03-generate-document.md +108 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/04-validate.md +16 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/05-review.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/prompts/06-save.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-sss/template.md +225 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/SKILL.md +30 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/bmad-skill-manifest.yaml +5 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/prompts/01-discover-project-artifacts.md +42 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/prompts/02-load-template.md +10 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/prompts/03-generate-document.md +117 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/prompts/04-validate.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/prompts/05-review.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/prompts/06-save.md +15 -0
- package/lib/bmad-extension-plugin/skills/mil498-std/template.md +188 -0
- package/lib/bmad-extension-plugin/skills/ml-advise/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-advise/SKILL.md +76 -0
- package/lib/bmad-extension-plugin/skills/ml-advise/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-advise/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-analysis/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-analysis/SKILL.md +60 -0
- package/lib/bmad-extension-plugin/skills/ml-analysis/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-analysis/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-architecture/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-architecture/SKILL.md +55 -0
- package/lib/bmad-extension-plugin/skills/ml-architecture/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-architecture/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-detailed-design/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-detailed-design/SKILL.md +67 -0
- package/lib/bmad-extension-plugin/skills/ml-detailed-design/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-detailed-design/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/SKILL.md +56 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/scripts/baseline_classifier.py +522 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/scripts/class_weights_calculator.py +295 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/scripts/clustering_explorer.py +383 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/scripts/eda_analyzer.py +654 -0
- package/lib/bmad-extension-plugin/skills/ml-eda/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/SKILL.md +74 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/assets/advanced_trainer_configs.py +430 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/assets/quick_trainer_setup.py +233 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_datamodule.py +219 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_gnn_module.py +341 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/assets/template_lightning_module.py +158 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-experiment/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-hparam/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-hparam/SKILL.md +81 -0
- package/lib/bmad-extension-plugin/skills/ml-hparam/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-hparam/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-ideation/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-ideation/SKILL.md +50 -0
- package/lib/bmad-extension-plugin/skills/ml-ideation/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-ideation/scripts/validate_ml_prd.py +287 -0
- package/lib/bmad-extension-plugin/skills/ml-ideation/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-infra/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-infra/SKILL.md +58 -0
- package/lib/bmad-extension-plugin/skills/ml-infra/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-infra/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-retrospective/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-retrospective/SKILL.md +63 -0
- package/lib/bmad-extension-plugin/skills/ml-retrospective/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-retrospective/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-revision/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-revision/SKILL.md +82 -0
- package/lib/bmad-extension-plugin/skills/ml-revision/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-revision/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/ml-techspec/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/ml-techspec/SKILL.md +80 -0
- package/lib/bmad-extension-plugin/skills/ml-techspec/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/ml-techspec/skill.json +7 -0
- package/lib/bmad-extension-plugin/skills/modify-sprint/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/modify-sprint/SKILL.md +311 -0
- package/lib/bmad-extension-plugin/skills/modify-sprint/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/module-help.csv +62 -0
- package/lib/bmad-extension-plugin/skills/module.yaml +20 -0
- package/lib/bmad-extension-plugin/skills/prioritize-backlog/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/prioritize-backlog/SKILL.md +217 -0
- package/lib/bmad-extension-plugin/skills/prioritize-backlog/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/project-context-expansion/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/project-context-expansion/SKILL.md +238 -0
- package/lib/bmad-extension-plugin/skills/project-context-expansion/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/remove-from-sprint/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/remove-from-sprint/SKILL.md +184 -0
- package/lib/bmad-extension-plugin/skills/remove-from-sprint/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sprint-status-view/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sprint-status-view/SKILL.md +177 -0
- package/lib/bmad-extension-plugin/skills/sprint-status-view/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sqa-audit/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sqa-audit/SKILL.md +279 -0
- package/lib/bmad-extension-plugin/skills/sqa-audit/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sqa-ieee12207/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sqa-ieee12207/SKILL.md +374 -0
- package/lib/bmad-extension-plugin/skills/sqa-ieee12207/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/SKILL.md +244 -0
- package/lib/bmad-extension-plugin/skills/sqa-requirements-quality/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/SKILL.md +32 -0
- package/lib/bmad-extension-plugin/skills/sre-check-deployment-status/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-check-secrets/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-check-secrets/SKILL.md +23 -0
- package/lib/bmad-extension-plugin/skills/sre-check-secrets/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-check-system-status/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-check-system-status/SKILL.md +27 -0
- package/lib/bmad-extension-plugin/skills/sre-check-system-status/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-day-2-ops/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-day-2-ops/SKILL.md +26 -0
- package/lib/bmad-extension-plugin/skills/sre-day-2-ops/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/SKILL.md +28 -0
- package/lib/bmad-extension-plugin/skills/sre-deployment-strategies/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-fix-deployments/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-fix-deployments/SKILL.md +25 -0
- package/lib/bmad-extension-plugin/skills/sre-fix-deployments/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad-extension-plugin/skills/sre-gitops-status/.gitkeep +0 -0
- package/lib/bmad-extension-plugin/skills/sre-gitops-status/SKILL.md +25 -0
- package/lib/bmad-extension-plugin/skills/sre-gitops-status/bmad-skill-manifest.yaml +3 -0
- package/lib/bmad.js +1379 -372
- package/lib/installer.js +362 -2
- package/package.json +23 -5
- package/scripts/build-bmad-cache.js +250 -47
- package/scripts/build-plugin.js +574 -0
- package/.ma-agents.json +0 -10
- package/AGENTS.md +0 -97
- package/AiAudit.md +0 -12
- package/DEVELOPMENT.md +0 -173
- package/MANIFEST.yaml +0 -3
- package/_bmad-output/implementation-artifacts/16-4-validation-report.md +0 -79
- package/_bmad-output/implementation-artifacts/17-10-rework-generate-backlog.md +0 -237
- package/_bmad-output/implementation-artifacts/17-11-rework-add-to-sprint.md +0 -339
- package/_bmad-output/implementation-artifacts/17-12-rework-remove-from-sprint.md +0 -348
- package/_bmad-output/implementation-artifacts/17-13-rework-sprint-status-view.md +0 -383
- package/_bmad-output/implementation-artifacts/17-14-rework-cleanup-done.md +0 -348
- package/_bmad-output/implementation-artifacts/17-15-rework-bmad-sprint-planning.md +0 -385
- package/_bmad-output/implementation-artifacts/17-16-rework-add-sprint.md +0 -362
- package/_bmad-output/implementation-artifacts/17-17-rework-modify-sprint.md +0 -477
- package/_bmad-output/implementation-artifacts/17-18-rework-bmad-dev-story.md +0 -377
- package/_bmad-output/implementation-artifacts/17-19-rework-story-status-lookup.md +0 -301
- package/_bmad-output/implementation-artifacts/17-20-rework-bmad-sprint-status.md +0 -508
- package/_bmad-output/implementation-artifacts/17-21-new-close-sprint.md +0 -455
- package/_bmad-output/implementation-artifacts/17-22-jira-adapter-pattern.md +0 -325
- package/_bmad-output/implementation-artifacts/17-23-migration-deprecation-old-files.md +0 -403
- package/_bmad-output/implementation-artifacts/17-24-rework-prioritize-backlog.md +0 -344
- package/_bmad-output/implementation-artifacts/17-9-unified-sprint-status-schema.md +0 -279
- package/_bmad-output/implementation-artifacts/19-1-knowledge-graph-core-library.md +0 -239
- package/_bmad-output/implementation-artifacts/19-2-graph-emission-create-prd.md +0 -171
- package/_bmad-output/implementation-artifacts/19-3-graph-emission-create-architecture-epics.md +0 -179
- package/_bmad-output/implementation-artifacts/19-4-graph-emission-create-story-remaining.md +0 -190
- package/_bmad-output/implementation-artifacts/19-5-open-graph-skill.md +0 -213
- package/_bmad-output/implementation-artifacts/19-6-interactive-visualization-renderer.md +0 -259
- package/_bmad-output/implementation-artifacts/19-7-llm-writability-validation-tests.md +0 -280
- package/_bmad-output/implementation-artifacts/21-1-install-time-profile-prompt.md +0 -181
- package/_bmad-output/implementation-artifacts/21-10-profile-reconfigure.md +0 -161
- package/_bmad-output/implementation-artifacts/21-11-profile-uninstall.md +0 -150
- package/_bmad-output/implementation-artifacts/21-2-universal-instruction-block-expansion.md +0 -253
- package/_bmad-output/implementation-artifacts/21-3-roomodes-template-bmad-modes.md +0 -229
- package/_bmad-output/implementation-artifacts/21-4-agents-md-template-opencode.md +0 -275
- package/_bmad-output/implementation-artifacts/21-5-clinerules-template-extension.md +0 -221
- package/_bmad-output/implementation-artifacts/21-6-onprem-layered-guardrails.md +0 -287
- package/_bmad-output/implementation-artifacts/21-7-bmad-persona-phase-prefix.md +0 -258
- package/_bmad-output/implementation-artifacts/21-8-vllm-reference-doc-readme.md +0 -158
- package/_bmad-output/implementation-artifacts/21-9-tests-validation.md +0 -368
- package/_bmad-output/implementation-artifacts/4-1-vs-agent-registry-entry.md +0 -173
- package/_bmad-output/implementation-artifacts/4-2-vs-skill-template-format.md +0 -129
- package/_bmad-output/implementation-artifacts/5-5-explicit-parameter-passing.md +0 -274
- package/_bmad-output/implementation-artifacts/5-6-fix-space-in-path-bug.md +0 -186
- package/_bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md +0 -144
- package/_bmad-output/implementation-artifacts/7-2-installer-pipeline-tests.md +0 -132
- package/_bmad-output/implementation-artifacts/7-3-bmad-pipeline-tests.md +0 -119
- package/_bmad-output/implementation-artifacts/7-4-cli-command-routing-tests.md +0 -162
- package/_bmad-output/implementation-artifacts/bug-bmad-recompile-fails-on-airgapped-network.md +0 -112
- package/_bmad-output/implementation-artifacts/bug-experimentalwarning-about-commonjs-loading-es-module-during-install.md +0 -57
- package/_bmad-output/implementation-artifacts/deferred-work.md +0 -9
- package/_bmad-output/implementation-artifacts/done/1-1-ci-cd-yes-flag.md +0 -200
- package/_bmad-output/implementation-artifacts/done/10-1-ensure-bmad-output-not-gitignored.md +0 -172
- package/_bmad-output/implementation-artifacts/done/10-2-document-bmad-output-policy.md +0 -102
- package/_bmad-output/implementation-artifacts/done/11-1-auto-bug-detection-skill.md +0 -119
- package/_bmad-output/implementation-artifacts/done/11-2-bug-story-extension-workflow.md +0 -132
- package/_bmad-output/implementation-artifacts/done/11-3-integrate-bug-detection-code-review.md +0 -111
- package/_bmad-output/implementation-artifacts/done/12-1-add-sprint-workflow.md +0 -126
- package/_bmad-output/implementation-artifacts/done/12-2-add-to-sprint-workflow.md +0 -137
- package/_bmad-output/implementation-artifacts/done/12-3-modify-sprint-workflow.md +0 -127
- package/_bmad-output/implementation-artifacts/done/12-4-sprint-status-assigned-items.md +0 -129
- package/_bmad-output/implementation-artifacts/done/13-1-project-context-template-and-generator.md +0 -179
- package/_bmad-output/implementation-artifacts/done/13-2-install-pipeline-integration.md +0 -138
- package/_bmad-output/implementation-artifacts/done/13-3-bmad-critical-actions-update.md +0 -150
- package/_bmad-output/implementation-artifacts/done/13-4-retrospective-expansion-trigger.md +0 -128
- package/_bmad-output/implementation-artifacts/done/13-5-document-project-context-generation.md +0 -118
- package/_bmad-output/implementation-artifacts/done/15-1-bump-bmad-method-to-6-2-1.md +0 -132
- package/_bmad-output/implementation-artifacts/done/15-2-restructure-extension-module.md +0 -174
- package/_bmad-output/implementation-artifacts/done/15-3-convert-custom-agents-to-skill-folders.md +0 -183
- package/_bmad-output/implementation-artifacts/done/15-4-convert-mil498-workflows-to-skill-md.md +0 -252
- package/_bmad-output/implementation-artifacts/done/15-5-convert-sre-devops-cyber-workflows.md +0 -232
- package/_bmad-output/implementation-artifacts/done/15-6-separate-built-in-agent-customizations.md +0 -163
- package/_bmad-output/implementation-artifacts/done/15-7-migration-detection-and-upgrade-path.md +0 -133
- package/_bmad-output/implementation-artifacts/done/15-8-validate-migrated-agents-and-workflows.md +0 -172
- package/_bmad-output/implementation-artifacts/done/15-8-validation-report.md +0 -342
- package/_bmad-output/implementation-artifacts/done/16-1-repository-layout-wizard.md +0 -223
- package/_bmad-output/implementation-artifacts/done/16-2-config-storage-and-cross-reference.md +0 -180
- package/_bmad-output/implementation-artifacts/done/16-3-project-context-multi-repo-section.md +0 -136
- package/_bmad-output/implementation-artifacts/done/16-4-validate-cross-repo-path-resolution.md +0 -137
- package/_bmad-output/implementation-artifacts/done/16-4-validation-report.md +0 -79
- package/_bmad-output/implementation-artifacts/done/16-5-fix-config-lost-on-update.md +0 -110
- package/_bmad-output/implementation-artifacts/done/16-6-repo-sync-check-skill.md +0 -116
- package/_bmad-output/implementation-artifacts/done/16-7-portable-path-storage.md +0 -109
- package/_bmad-output/implementation-artifacts/done/16-8-cicd-remote-mode.md +0 -97
- package/_bmad-output/implementation-artifacts/done/16-9-reconfigure-layout-workflow.md +0 -125
- package/_bmad-output/implementation-artifacts/done/17-1-sprint-entity-model.md +0 -322
- package/_bmad-output/implementation-artifacts/done/17-2-flat-backlog-model.md +0 -264
- package/_bmad-output/implementation-artifacts/done/17-3-bug-as-story-type.md +0 -208
- package/_bmad-output/implementation-artifacts/done/17-4-backlog-to-sprint-workflow.md +0 -209
- package/_bmad-output/implementation-artifacts/done/17-5-sprint-to-backlog-workflow.md +0 -221
- package/_bmad-output/implementation-artifacts/done/17-6-done-item-cleanup.md +0 -273
- package/_bmad-output/implementation-artifacts/done/17-7-multi-criteria-prioritization.md +0 -235
- package/_bmad-output/implementation-artifacts/done/17-8-rework-sprint-status-display.md +0 -285
- package/_bmad-output/implementation-artifacts/done/2-1-cpp-coding-standards-skill.md +0 -188
- package/_bmad-output/implementation-artifacts/done/2-2-csharp-coding-standards-skill.md +0 -211
- package/_bmad-output/implementation-artifacts/done/2-3-python-coding-standards-skill.md +0 -189
- package/_bmad-output/implementation-artifacts/done/3-1-skill-scaffolding-tool.md +0 -184
- package/_bmad-output/implementation-artifacts/done/3-2-skill-validation-tool.md +0 -178
- package/_bmad-output/implementation-artifacts/done/3-3-mandatory-skill-designation.md +0 -136
- package/_bmad-output/implementation-artifacts/done/3-4-bmad-persona-customization-tooling.md +0 -141
- package/_bmad-output/implementation-artifacts/done/3-5-specialized-agent-development-tooling.md +0 -145
- package/_bmad-output/implementation-artifacts/done/5-1-bmad-method-direct-dependency.md +0 -188
- package/_bmad-output/implementation-artifacts/done/5-2-bmad-cache-build-script.md +0 -219
- package/_bmad-output/implementation-artifacts/done/5-3-pre-populate-bmad-cache.md +0 -234
- package/_bmad-output/implementation-artifacts/done/5-4-validate-bundled-installation.md +0 -274
- package/_bmad-output/implementation-artifacts/done/6-1-methodology-presentation-bundle.md +0 -173
- package/_bmad-output/implementation-artifacts/done/8-1-move-instruction-injection-to-top.md +0 -131
- package/_bmad-output/implementation-artifacts/done/8-2-agent-aware-injection-strategy.md +0 -124
- package/_bmad-output/implementation-artifacts/done/8-3-create-bmad-extension-module.md +0 -187
- package/_bmad-output/implementation-artifacts/done/8-4-integration-verification.md +0 -102
- package/_bmad-output/implementation-artifacts/done/8-5-per-agent-enforcement-hooks-research.md +0 -126
- package/_bmad-output/implementation-artifacts/done/8-6-context-persistence-research.md +0 -101
- package/_bmad-output/implementation-artifacts/done/9-1-register-opencode-agent.md +0 -73
- package/_bmad-output/implementation-artifacts/done/9-2-json-merge-injection.md +0 -91
- package/_bmad-output/implementation-artifacts/done/9-3-json-merge-existing.md +0 -113
- package/_bmad-output/implementation-artifacts/done/9-4-json-error-handling.md +0 -90
- package/_bmad-output/implementation-artifacts/epic-11-12-shared-guardrails.md +0 -53
- package/_bmad-output/implementation-artifacts/epic-15-adversarial-fixes.md +0 -287
- package/_bmad-output/implementation-artifacts/epic-16-adversarial-review.md +0 -49
- package/_bmad-output/implementation-artifacts/epic-16-edge-case-review.md +0 -230
- package/_bmad-output/implementation-artifacts/epic-17-adversarial-review.md +0 -37
- package/_bmad-output/implementation-artifacts/epic-17-edge-case-review.md +0 -140
- package/_bmad-output/implementation-artifacts/sprint-status.yaml +0 -139
- package/_bmad-output/planning-artifacts/adapter-pattern-spec.md +0 -508
- package/_bmad-output/planning-artifacts/architecture.md +0 -2023
- package/_bmad-output/planning-artifacts/domain-research-roocode-2026-03-31.md +0 -295
- package/_bmad-output/planning-artifacts/epics.md +0 -4232
- package/_bmad-output/planning-artifacts/mil498-workflow-audit.md +0 -290
- package/_bmad-output/planning-artifacts/prd.md +0 -811
- package/_bmad-output/planning-artifacts/product-brief-agents-2026-03-08.md +0 -214
- package/_bmad-output/planning-artifacts/sprint-status-schema.md +0 -506
- package/_bmad-output/planning-artifacts/validation-report-prd-2026-04-07.md +0 -330
- package/_bmad-output/project-context.md +0 -47
- package/agents.code-workspace +0 -11
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-554778ad4e7254827618ebd2497c3f4bce9054a4.idx +0 -0
- package/lib/bmad-cache/bmb/_git_preserved/objects/pack/pack-554778ad4e7254827618ebd2497c3f4bce9054a4.rev +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.idx +0 -0
- package/lib/bmad-cache/cis/_git_preserved/objects/pack/pack-39c4fd66f4e0eb3f4d93665318df04cd356b0297.rev +0 -0
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-brainstorming-coach/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-creative-problem-solver/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-design-thinking-coach/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-innovation-strategist/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-presentation-master/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/cis/src/skills/bmad-cis-agent-storyteller/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/cis/src/skills/bmad-cis-design-thinking/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/cis/src/skills/bmad-cis-innovation-strategy/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/cis/src/skills/bmad-cis-problem-solving/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/cis/src/skills/bmad-cis-storytelling/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.idx +0 -0
- package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-ac967149d58fba215d07238ad8881bdbdad5c9c3.rev +0 -0
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-qa/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-scrum-master/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/bmad-skill-manifest.yaml +0 -11
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/bmad-skill-manifest.yaml +0 -9
- package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/2-design/create-prd/bmad-skill-manifest.yaml +0 -14
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-gdd/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-ux-design/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gds-document-project/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev-new-preview/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-spec/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.idx +0 -0
- package/lib/bmad-cache/tea/_git_preserved/objects/pack/pack-e75385cd52b693dbb8a3b2afb50058952543b3a2.rev +0 -0
- package/lib/bmad-cache/tea/_git_preserved/refs/tags/v1.10.0 +0 -1
- package/lib/bmad-cache/tea/src/agents/bmad-tea/bmad-skill-manifest.yaml +0 -14
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-teach-me-testing/workflow.md +0 -90
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-atdd/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-automate/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-ci/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-framework/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-nfr/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-design/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-test-review/workflow.md +0 -41
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/bmad-skill-manifest.yaml +0 -1
- package/lib/bmad-cache/tea/src/workflows/testarch/bmad-testarch-trace/workflow.md +0 -41
- package/lib/bmad-customizations/bmm-demerzel.customize.yaml +0 -36
- package/lib/bmad-customizations/demerzel.md +0 -32
- package/lib/bmad-customize/bmm-quick-flow-solo-dev.customize.yaml +0 -8
- package/lib/bmad-extension/module.yaml +0 -5
- package/out.txt +0 -0
- package/test/agent-injection-strategy.test.js +0 -129
- package/test/agents-md.test.js +0 -398
- package/test/bmad-extension.test.js +0 -283
- package/test/bmad-output-policy.test.js +0 -119
- package/test/bmad-persona-phase-prefix.test.js +0 -271
- package/test/bmad-version-bump.test.js +0 -313
- package/test/build-bmad-args.test.js +0 -368
- package/test/cicd-remote-mode.test.js +0 -224
- package/test/clinerules.test.js +0 -339
- package/test/config-layout.test.js +0 -230
- package/test/config-lost-on-update.test.js +0 -363
- package/test/config-storage.test.js +0 -275
- package/test/convert-agents-to-skills.test.js +0 -255
- package/test/create-agent.test.js +0 -232
- package/test/cross-repo-validation.test.js +0 -201
- package/test/enforcement-hooks.test.js +0 -324
- package/test/experimental-warning.test.js +0 -314
- package/test/extension-module-restructure.test.js +0 -407
- package/test/fixtures/README.md +0 -74
- package/test/fixtures/empty-project/README.md +0 -5
- package/test/fixtures/empty-project/package.json +0 -5
- package/test/fixtures/onprem-profile-baseline/.gitkeep +0 -2
- package/test/fixtures/standard-profile-baseline/.gitkeep +0 -2
- package/test/generate-project-context.test.js +0 -483
- package/test/instruction-block.test.js +0 -388
- package/test/instruction-injection.test.js +0 -336
- package/test/integration-verification.test.js +0 -433
- package/test/migration-validation.test.js +0 -506
- package/test/migration.test.js +0 -832
- package/test/offline-recompile.test.js +0 -267
- package/test/onprem-injection.test.js +0 -441
- package/test/onprem-layer.test.js +0 -419
- package/test/opencode-agent.test.js +0 -150
- package/test/opencode-json-error.test.js +0 -260
- package/test/opencode-json-injection.test.js +0 -264
- package/test/opencode-json-merge.test.js +0 -318
- package/test/portable-paths.test.js +0 -268
- package/test/profile.test.js +0 -301
- package/test/reconfigure.test.js +0 -436
- package/test/repo-layout.test.js +0 -246
- package/test/roo-code-agent.test.js +0 -166
- package/test/roo-code-injection.test.js +0 -172
- package/test/roomodes.test.js +0 -343
- package/test/skill-authoring.test.js +0 -272
- package/test/skill-customize-agent.test.js +0 -253
- package/test/skill-mandatory.test.js +0 -235
- package/test/skill-validation.test.js +0 -378
- package/test/story-15-5-workflow-skills.test.js +0 -311
- package/test/uninstall.test.js +0 -402
- package/test/yes-flag.test.js +0 -200
- /package/lib/bmad-cache/gds/src/{gametest → agents/gds-agent-game-dev/gametest}/qa-index.csv +0 -0
- /package/lib/bmad-cache/gds/src/workflows/2-design/{create-prd → gds-create-prd}/data/domain-complexity.csv +0 -0
- /package/lib/bmad-cache/gds/src/workflows/2-design/{create-prd → gds-create-prd}/data/project-types.csv +0 -0
- /package/lib/{bmad-extension/skills/bmad-ma-agent-cyber → bmad-extension-plugin/skills/add-sprint}/.gitkeep +0 -0
- /package/lib/{bmad-extension/skills/bmad-ma-agent-devops → bmad-extension-plugin/skills/add-to-sprint}/.gitkeep +0 -0
- /package/lib/{bmad-extension/skills/bmad-ma-agent-ml → bmad-extension-plugin/skills/bmad-dev-story}/.gitkeep +0 -0
- /package/lib/{bmad-extension/skills/bmad-ma-agent-sqa → bmad-extension-plugin/skills/bmad-sprint-planning}/.gitkeep +0 -0
- /package/lib/{bmad-extension/skills/bmad-ma-agent-sre → bmad-extension-plugin/skills/bmad-sprint-status}/.gitkeep +0 -0
|
@@ -1,144 +0,0 @@
|
|
|
1
|
-
# Story 7.1: Set Up Test Framework and First Tests for agents.js
|
|
2
|
-
|
|
3
|
-
Status: ready-for-dev
|
|
4
|
-
|
|
5
|
-
<!-- Note: Validation is optional. Run validate-create-story for quality check before dev-story. -->
|
|
6
|
-
|
|
7
|
-
## Story
|
|
8
|
-
|
|
9
|
-
As a **developer**,
|
|
10
|
-
I want a test framework configured with initial tests for the agent registry module,
|
|
11
|
-
So that agent configuration changes are verified automatically.
|
|
12
|
-
|
|
13
|
-
## Acceptance Criteria
|
|
14
|
-
|
|
15
|
-
1. **Given** Node.js built-in test runner is configured in `package.json`
|
|
16
|
-
**When** `npm test` is executed
|
|
17
|
-
**Then** tests run and report results (exit 0 on pass, non-zero on failure)
|
|
18
|
-
|
|
19
|
-
2. **Given** tests exist for `agents.js`
|
|
20
|
-
**When** the test suite runs
|
|
21
|
-
**Then** it verifies:
|
|
22
|
-
- All 11 agents are registered with required fields (`id`, `name`, `version`, `category`, `description`, `getProjectPath`, `getGlobalPath`, `fileExtension`, `template`, `instructionFiles`)
|
|
23
|
-
- `getProjectPath()` returns a string containing the agent's expected directory name
|
|
24
|
-
- `getGlobalPath()` returns a valid path for the current OS
|
|
25
|
-
- `resourceMap` is defined for agents that need it (currently only `cline`)
|
|
26
|
-
- No duplicate agent `id` values exist in the registry
|
|
27
|
-
- `getAgent(id)` returns the correct agent object
|
|
28
|
-
- `getAllAgents()` returns all 11 agents
|
|
29
|
-
- `getAgentsByCategory('ide')` returns 7 agents, `getAgentsByCategory('bmad')` returns 4 agents
|
|
30
|
-
|
|
31
|
-
## Tasks / Subtasks
|
|
32
|
-
|
|
33
|
-
- [ ] Task 1: Configure Node.js built-in test runner (AC: #1)
|
|
34
|
-
- [ ] 1.1: Replace the current placeholder test script in `package.json:11` with `node --test tests/`
|
|
35
|
-
- [ ] 1.2: Verify `node --test` works with the project's minimum Node.js version (`>=16.0.0` per `package.json:33`) — Note: `node --test` requires Node 18+. If minimum version must stay at 16, consider `node --test tests/*.test.js` with a version check
|
|
36
|
-
- [ ] 1.3: Create `tests/` directory at project root
|
|
37
|
-
- [ ] 1.4: Run `npm test` — verify it discovers and runs test files (even if empty initially)
|
|
38
|
-
- [ ] Task 2: Write agents.js tests (AC: #2)
|
|
39
|
-
- [ ] 2.1: Create `tests/agents.test.js`
|
|
40
|
-
- [ ] 2.2: Test: `getAllAgents()` returns exactly 11 agents
|
|
41
|
-
- [ ] 2.3: Test: every agent has all required fields (`id`, `name`, `version`, `category`, `description`, `getProjectPath`, `getGlobalPath`, `fileExtension`, `template`, `instructionFiles`)
|
|
42
|
-
- [ ] 2.4: Test: `getProjectPath()` returns a string for each agent
|
|
43
|
-
- [ ] 2.5: Test: `getGlobalPath()` returns a string for each agent
|
|
44
|
-
- [ ] 2.6: Test: no duplicate `id` values across agents
|
|
45
|
-
- [ ] 2.7: Test: `getAgent('claude-code')` returns agent with `name: 'Claude Code'`
|
|
46
|
-
- [ ] 2.8: Test: `getAgent('nonexistent')` returns `undefined`
|
|
47
|
-
- [ ] 2.9: Test: `getAgentsByCategory('ide')` returns 7 agents
|
|
48
|
-
- [ ] 2.10: Test: `getAgentsByCategory('bmad')` returns 4 agents
|
|
49
|
-
- [ ] 2.11: Test: `cline` agent has `resourceMap` with `references` and `assets` keys
|
|
50
|
-
- [ ] 2.12: Test: agents without `resourceMap` don't have the property (or it's undefined)
|
|
51
|
-
- [ ] 2.13: Test: all `instructionFiles` entries are non-empty strings
|
|
52
|
-
|
|
53
|
-
## Dev Notes
|
|
54
|
-
|
|
55
|
-
### Architecture Compliance
|
|
56
|
-
|
|
57
|
-
- **Test location:** `tests/` directory at project root, mirroring source structure. Co-located tests are not used. [Source: architecture.md#Structure-Patterns]
|
|
58
|
-
- **No new runtime dependencies:** The test runner is built into Node.js. No Jest, Mocha, or Vitest needed. [Source: architecture.md#Anti-Patterns]
|
|
59
|
-
- **Test framework decision:** Architecture recommends Node.js built-in test runner (no dependencies, aligns with minimal approach). [Source: architecture.md#Infrastructure-Deployment]
|
|
60
|
-
|
|
61
|
-
### Node.js Built-in Test Runner
|
|
62
|
-
|
|
63
|
-
Use `node:test` module (available since Node 18.x, stable in Node 20+):
|
|
64
|
-
|
|
65
|
-
```javascript
|
|
66
|
-
const { describe, it } = require('node:test');
|
|
67
|
-
const assert = require('node:assert');
|
|
68
|
-
const { getAgent, getAllAgents, getAgentsByCategory } = require('../lib/agents');
|
|
69
|
-
|
|
70
|
-
describe('agents registry', () => {
|
|
71
|
-
it('should have 11 agents', () => {
|
|
72
|
-
assert.strictEqual(getAllAgents().length, 11);
|
|
73
|
-
});
|
|
74
|
-
});
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Run with: `node --test tests/`
|
|
78
|
-
|
|
79
|
-
### Node.js Version Consideration
|
|
80
|
-
|
|
81
|
-
Current `package.json` specifies `"node": ">=16.0.0"`. The built-in test runner requires Node 18+. Options:
|
|
82
|
-
1. **Recommended:** Bump minimum to `>=18.0.0` (Node 16 EOL was September 2023 — well past)
|
|
83
|
-
2. **Alternative:** Keep >=16 but note tests require 18+ (add check in test script)
|
|
84
|
-
|
|
85
|
-
### Current Test Script
|
|
86
|
-
|
|
87
|
-
The existing `package.json` test script is a placeholder:
|
|
88
|
-
```json
|
|
89
|
-
"test": "node -e \"const {listSkills,listAgents}=require('./lib/installer'); console.log('Skills:',listSkills().length,'Agents:',listAgents().length)\""
|
|
90
|
-
```
|
|
91
|
-
This should be replaced with the proper test runner command.
|
|
92
|
-
|
|
93
|
-
### Exported Functions from agents.js
|
|
94
|
-
|
|
95
|
-
From [agents.js:256-272](lib/agents.js#L256-L272):
|
|
96
|
-
- `getAgent(agentId)` — returns single agent by id
|
|
97
|
-
- `getAllAgents()` — returns full array (11 agents)
|
|
98
|
-
- `getAgentsByCategory(category)` — filtered by 'ide' or 'bmad'
|
|
99
|
-
|
|
100
|
-
### Agent Registry Schema (from actual code)
|
|
101
|
-
|
|
102
|
-
Every agent object has these fields (verified from [agents.js:17-253](lib/agents.js#L17-L253)):
|
|
103
|
-
- `id` (string) — unique identifier (e.g., 'claude-code', 'copilot')
|
|
104
|
-
- `name` (string) — display name (e.g., 'Claude Code', 'GitHub Copilot')
|
|
105
|
-
- `version` (string) — semver (e.g., '1.0.0')
|
|
106
|
-
- `category` (string) — 'ide' or 'bmad'
|
|
107
|
-
- `description` (string) — brief description
|
|
108
|
-
- `getProjectPath` (function) — returns project-level skills directory path
|
|
109
|
-
- `getGlobalPath` (function) — returns global/user-level skills directory path
|
|
110
|
-
- `fileExtension` (string) — '.md' for all current agents
|
|
111
|
-
- `template` (string) — 'claude-code', 'cline', or 'generic'
|
|
112
|
-
- `instructionFiles` (array of strings) — instruction file paths
|
|
113
|
-
|
|
114
|
-
Optional:
|
|
115
|
-
- `resourceMap` (object) — only on `cline` agent (maps 'references' → 'docs', 'assets' → 'templates')
|
|
116
|
-
|
|
117
|
-
### Critical Guardrails
|
|
118
|
-
|
|
119
|
-
- **No new npm dependencies** — use Node.js built-in `node:test` and `node:assert` only
|
|
120
|
-
- **Tests must not modify the file system** — agents.js is pure data + functions, no side effects
|
|
121
|
-
- **Do not modify `lib/agents.js`** — tests should validate existing behavior, not change it
|
|
122
|
-
|
|
123
|
-
### Project Structure Notes
|
|
124
|
-
|
|
125
|
-
- Files to create: `tests/agents.test.js`
|
|
126
|
-
- Files to modify: `package.json` (update test script, optionally bump engine version)
|
|
127
|
-
- No changes to `lib/` source files
|
|
128
|
-
|
|
129
|
-
### References
|
|
130
|
-
|
|
131
|
-
- [Source: _bmad-output/planning-artifacts/epics.md#Epic-7] — Story 7.1 definition
|
|
132
|
-
- [Source: _bmad-output/planning-artifacts/architecture.md#Structure-Patterns] — Tests directory location
|
|
133
|
-
- [Source: _bmad-output/planning-artifacts/architecture.md#Infrastructure-Deployment] — Test framework recommendation
|
|
134
|
-
- [Source: lib/agents.js] — Agent registry (11 agents, 272 lines, 3 exported functions)
|
|
135
|
-
|
|
136
|
-
## Dev Agent Record
|
|
137
|
-
|
|
138
|
-
### Agent Model Used
|
|
139
|
-
|
|
140
|
-
### Debug Log References
|
|
141
|
-
|
|
142
|
-
### Completion Notes List
|
|
143
|
-
|
|
144
|
-
### File List
|
|
@@ -1,132 +0,0 @@
|
|
|
1
|
-
# Story 7.2: Add Tests for installer.js Core Operations
|
|
2
|
-
|
|
3
|
-
Status: ready-for-dev
|
|
4
|
-
|
|
5
|
-
<!-- Note: Validation is optional. Run validate-create-story for quality check before dev-story. -->
|
|
6
|
-
<!-- Dependency: Story 7-1 must be completed first (test framework setup) -->
|
|
7
|
-
|
|
8
|
-
## Story
|
|
9
|
-
|
|
10
|
-
As a **developer**,
|
|
11
|
-
I want tests covering the installer engine's core operations,
|
|
12
|
-
So that skill installation, manifest management, and MANIFEST.yaml generation are protected against regressions.
|
|
13
|
-
|
|
14
|
-
## Acceptance Criteria
|
|
15
|
-
|
|
16
|
-
1. **Given** tests exist for `installer.js`
|
|
17
|
-
**When** the test suite runs
|
|
18
|
-
**Then** it verifies:
|
|
19
|
-
- Skill discovery scans the `skills/` directory and finds all valid skills
|
|
20
|
-
- Template resolution follows priority chain (agent-specific → generic → SKILL.md)
|
|
21
|
-
- Manifest read/write operations are atomic (no partial states)
|
|
22
|
-
- MANIFEST.yaml generation produces valid YAML from installed skills
|
|
23
|
-
- Additive-only installation does not remove existing agent configurations (NFR5)
|
|
24
|
-
|
|
25
|
-
2. **Given** a test skill directory is set up in a temp directory
|
|
26
|
-
**When** install operations are tested
|
|
27
|
-
**Then** files are written to the temp directory, not actual agent config directories
|
|
28
|
-
|
|
29
|
-
## Tasks / Subtasks
|
|
30
|
-
|
|
31
|
-
- [ ] Task 1: Create test fixtures (AC: #2)
|
|
32
|
-
- [ ] 1.1: Create `tests/fixtures/` directory for test skill data
|
|
33
|
-
- [ ] 1.2: Create a minimal test skill: `tests/fixtures/test-skill/skill.json` + `SKILL.md`
|
|
34
|
-
- [ ] 1.3: Create a test skill with templates: `tests/fixtures/test-skill-with-templates/` including `templates/claude-code.md` and `templates/generic.md`
|
|
35
|
-
- [ ] 1.4: Create a test skill with resources: `tests/fixtures/test-skill-with-resources/` including `references/` and `assets/` directories
|
|
36
|
-
- [ ] Task 2: Test skill discovery functions (AC: #1)
|
|
37
|
-
- [ ] 2.1: Create `tests/installer.test.js`
|
|
38
|
-
- [ ] 2.2: Test: `listSkills()` returns an array of skill objects (currently 28 skills)
|
|
39
|
-
- [ ] 2.3: Test: each skill object has required fields from `skill.json` (name, version, description, category)
|
|
40
|
-
- [ ] 2.4: Test: `listAgents()` returns the same as `getAllAgents()` from agents.js
|
|
41
|
-
- [ ] 2.5: Test: `getInstalledSkillInfo()` returns null/undefined for non-installed skills
|
|
42
|
-
- [ ] Task 3: Test manifest operations (AC: #1)
|
|
43
|
-
- [ ] 3.1: Test: `readManifest()` returns empty manifest for non-existent path
|
|
44
|
-
- [ ] 3.2: Test: `writeManifest()` creates valid JSON file
|
|
45
|
-
- [ ] 3.3: Test: `ensureManifest()` creates manifest entry for agent+scope
|
|
46
|
-
- [ ] 3.4: Test: `getManifestAgents()` returns agent IDs from manifest
|
|
47
|
-
- [ ] 3.5: Test: manifest write → read roundtrip preserves data
|
|
48
|
-
- [ ] 3.6: All manifest tests use `os.tmpdir()` temp directory, cleaned up after
|
|
49
|
-
- [ ] Task 4: Test MANIFEST.yaml generation (AC: #1)
|
|
50
|
-
- [ ] 4.1: Test: `generateSkillsManifest()` produces a file ending in `.yaml`
|
|
51
|
-
- [ ] 4.2: Test: generated MANIFEST.yaml content includes skill names and metadata
|
|
52
|
-
- [ ] 4.3: Use temp directory for generation output
|
|
53
|
-
- [ ] Task 5: Test semver comparison (AC: #1)
|
|
54
|
-
- [ ] 5.1: Test: `compareSemver('1.0.0', '1.0.0')` returns 0
|
|
55
|
-
- [ ] 5.2: Test: `compareSemver('1.0.0', '2.0.0')` returns -1
|
|
56
|
-
- [ ] 5.3: Test: `compareSemver('2.0.0', '1.0.0')` returns 1
|
|
57
|
-
- [ ] 5.4: Test: `compareSemver('1.0.1', '1.0.0')` returns 1
|
|
58
|
-
|
|
59
|
-
## Dev Notes
|
|
60
|
-
|
|
61
|
-
### Architecture Compliance
|
|
62
|
-
|
|
63
|
-
- **Test location:** `tests/installer.test.js` in the tests directory [Source: architecture.md#Structure-Patterns]
|
|
64
|
-
- **Temp directory isolation:** All file-writing tests must use `os.tmpdir()` or `fs.mkdtempSync()`. Never write to actual agent config directories or the project's `skills/` directory during tests. [Source: AC #2]
|
|
65
|
-
- **No mocking the database:** Tests should use real file system operations in temp directories, not mocked fs. [Source: architecture.md — integration test philosophy]
|
|
66
|
-
|
|
67
|
-
### installer.js Exported Functions
|
|
68
|
-
|
|
69
|
-
From [installer.js:10-591](lib/installer.js) — 16 functions, key ones for testing:
|
|
70
|
-
|
|
71
|
-
**Pure/stateless (easy to test):**
|
|
72
|
-
- `listSkills()` (line 178) — scans `skills/` directory, returns array of skill metadata
|
|
73
|
-
- `listAgents()` (line 204) — delegates to agents.js `getAllAgents()`
|
|
74
|
-
- `compareSemver(a, b)` (line 166) — pure comparison function
|
|
75
|
-
- `getPackageVersion()` (line 10) — reads package.json version
|
|
76
|
-
|
|
77
|
-
**Manifest operations (need temp dir):**
|
|
78
|
-
- `readManifest(installPath)` (line 17) — reads `.ma-agents.json`
|
|
79
|
-
- `writeManifest(installPath, manifest)` (line 29) — writes `.ma-agents.json`
|
|
80
|
-
- `ensureManifest(installPath, agentId, scope)` (line 34) — creates manifest structure
|
|
81
|
-
- `getManifestAgents(manifest)` (line 59) — extracts agent IDs from manifest
|
|
82
|
-
- `getInstalledSkillInfo(installPath, skillId)` (line 67) — reads installed skill version
|
|
83
|
-
|
|
84
|
-
**File-writing operations (need temp dir + careful isolation):**
|
|
85
|
-
- `generateSkillsManifest(installPath)` (line 75) — generates MANIFEST.yaml
|
|
86
|
-
- `performInstall(skillId, skill, agent, installPath)` (line 210) — copies skill files
|
|
87
|
-
- `installSkill(skillId, agentIds, ...)` (line 278) — full install orchestration
|
|
88
|
-
|
|
89
|
-
**Note:** `performInstall` and `installSkill` involve complex file operations and agent path resolution. Consider testing these in Story 7.2 only at the unit level (manifest + discovery), deferring full integration install tests if they require too much setup.
|
|
90
|
-
|
|
91
|
-
### Test Fixture Skill Schema
|
|
92
|
-
|
|
93
|
-
Minimal `skill.json` for test fixtures:
|
|
94
|
-
```json
|
|
95
|
-
{
|
|
96
|
-
"name": "test-skill",
|
|
97
|
-
"version": "1.0.0",
|
|
98
|
-
"description": "Test skill for automated testing",
|
|
99
|
-
"category": "testing",
|
|
100
|
-
"tags": ["test"],
|
|
101
|
-
"always_load": false
|
|
102
|
-
}
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
### Critical Guardrails
|
|
106
|
-
|
|
107
|
-
- **Never write to real agent directories** — all file operations in temp dirs only
|
|
108
|
-
- **Clean up temp dirs after each test** — use `t.after()` or `after()` hooks
|
|
109
|
-
- **No new npm dependencies** — use `node:test`, `node:assert`, `node:fs`, `node:os`, `node:path`
|
|
110
|
-
- **Do not modify `lib/installer.js`** — tests validate existing behavior
|
|
111
|
-
|
|
112
|
-
### Project Structure Notes
|
|
113
|
-
|
|
114
|
-
- Files to create: `tests/installer.test.js`, `tests/fixtures/test-skill/` (skill.json + SKILL.md), `tests/fixtures/test-skill-with-templates/`
|
|
115
|
-
- No changes to `lib/` source files
|
|
116
|
-
|
|
117
|
-
### References
|
|
118
|
-
|
|
119
|
-
- [Source: _bmad-output/planning-artifacts/epics.md#Epic-7] — Story 7.2 definition
|
|
120
|
-
- [Source: _bmad-output/planning-artifacts/architecture.md#Structure-Patterns] — Test directory structure
|
|
121
|
-
- [Source: lib/installer.js] — Installer module (591 lines, 16 functions)
|
|
122
|
-
- [Source: _bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md] — Prerequisite story
|
|
123
|
-
|
|
124
|
-
## Dev Agent Record
|
|
125
|
-
|
|
126
|
-
### Agent Model Used
|
|
127
|
-
|
|
128
|
-
### Debug Log References
|
|
129
|
-
|
|
130
|
-
### Completion Notes List
|
|
131
|
-
|
|
132
|
-
### File List
|
|
@@ -1,119 +0,0 @@
|
|
|
1
|
-
# Story 7.3: Add Tests for bmad.js Pipeline Ordering
|
|
2
|
-
|
|
3
|
-
Status: ready-for-dev
|
|
4
|
-
|
|
5
|
-
<!-- Note: Validation is optional. Run validate-create-story for quality check before dev-story. -->
|
|
6
|
-
<!-- Dependency: Story 7-1 must be completed first (test framework setup) -->
|
|
7
|
-
|
|
8
|
-
## Story
|
|
9
|
-
|
|
10
|
-
As a **developer**,
|
|
11
|
-
I want tests verifying the BMAD pipeline executes stages in strict order,
|
|
12
|
-
So that customization ordering bugs are caught before release.
|
|
13
|
-
|
|
14
|
-
## Acceptance Criteria
|
|
15
|
-
|
|
16
|
-
1. **Given** tests exist for `bmad.js`
|
|
17
|
-
**When** the test suite runs
|
|
18
|
-
**Then** it verifies:
|
|
19
|
-
- The 6-stage BMAD pipeline executes in correct order
|
|
20
|
-
- YAML configs are applied before recompile
|
|
21
|
-
- Workflows, templates, and agents are applied after recompile
|
|
22
|
-
- Pipeline failure at any stage prevents subsequent stages from executing
|
|
23
|
-
|
|
24
|
-
## Tasks / Subtasks
|
|
25
|
-
|
|
26
|
-
- [ ] Task 1: Analyze bmad.js for testable functions (AC: #1)
|
|
27
|
-
- [ ] 1.1: Map the 6-stage BMAD pipeline stages in `applyCustomizations()` (line 59)
|
|
28
|
-
- [ ] 1.2: Identify which functions are exported vs internal
|
|
29
|
-
- [ ] 1.3: Determine testability — `bmad.js` calls `npx bmad-method install` as a subprocess; tests must NOT trigger real BMAD installs
|
|
30
|
-
- [ ] 1.4: Decide approach: test internal logic without triggering `child_process.exec` calls, or mock the exec calls
|
|
31
|
-
- [ ] Task 2: Create bmad.js tests (AC: #1)
|
|
32
|
-
- [ ] 2.1: Create `tests/bmad.test.js`
|
|
33
|
-
- [ ] 2.2: Test: `isBmadInstalled()` returns false for empty directory (use temp dir)
|
|
34
|
-
- [ ] 2.3: Test: `isBmadInstalled()` returns true for directory containing `_bmad/` folder
|
|
35
|
-
- [ ] 2.4: Test: exported functions exist (`installBmad`, `updateBmad`, `applyCustomizations`, `isBmadInstalled`, `registerMilWorkflows`)
|
|
36
|
-
- [ ] 2.5: Test: `applyCustomizations()` processes config files in correct order (YAML configs before workflows/templates/agents)
|
|
37
|
-
- [ ] 2.6: Test: customization file discovery — verify `fs.readdirSync` on `lib/bmad-customizations/` returns expected files
|
|
38
|
-
- [ ] 2.7: Test: `lib/bmad-workflows/` directory exists and contains expected workflow content
|
|
39
|
-
- [ ] 2.8: Test: `lib/mil498-templates/` directory exists and contains template files
|
|
40
|
-
- [ ] Task 3: Test pipeline ordering logic (AC: #1)
|
|
41
|
-
- [ ] 3.1: Verify the `applyCustomizations()` function processes in this order:
|
|
42
|
-
1. YAML config files (`.customize.yaml`)
|
|
43
|
-
2. Recompile trigger
|
|
44
|
-
3. Workflow customizations
|
|
45
|
-
4. Template customizations
|
|
46
|
-
5. Agent customizations
|
|
47
|
-
- [ ] 3.2: Create a spy/tracker to verify execution order without triggering real file copies
|
|
48
|
-
- [ ] 3.3: Test that the function signature matches expected parameters: `(projectRoot, modules, tools, selectedAgentIds)`
|
|
49
|
-
|
|
50
|
-
## Dev Notes
|
|
51
|
-
|
|
52
|
-
### Architecture Compliance
|
|
53
|
-
|
|
54
|
-
- **Test location:** `tests/bmad.test.js` [Source: architecture.md#Structure-Patterns]
|
|
55
|
-
- **Pipeline ordering is critical:** The 6-stage BMAD pipeline (NFR8) has strict ordering requirements. YAML configs MUST be applied before recompile, and workflows/templates/agents MUST be applied after. [Source: architecture.md#Pipeline-Architecture]
|
|
56
|
-
- **No real BMAD installs:** Tests must NOT call `npx bmad-method install` — this would modify the actual project's `_bmad/` directory. [Source: test isolation principle]
|
|
57
|
-
|
|
58
|
-
### bmad.js Module Structure
|
|
59
|
-
|
|
60
|
-
From [bmad.js:1-250](lib/bmad.js) — 250 lines, 5 exported functions:
|
|
61
|
-
|
|
62
|
-
```
|
|
63
|
-
isBmadInstalled(projectRoot) — line 9 — checks for _bmad/ directory
|
|
64
|
-
installBmad(modules, tools, projectRoot) — line 13 — runs npx bmad-method install
|
|
65
|
-
updateBmad(modules, tools, projectRoot) — line 36 — runs npx bmad-method update
|
|
66
|
-
applyCustomizations(projectRoot, ...) — line 59 — 6-stage pipeline
|
|
67
|
-
registerMilWorkflows(projectRoot) — line 170 — MIL-498 workflow registration
|
|
68
|
-
```
|
|
69
|
-
|
|
70
|
-
### Testing Challenge: Subprocess Calls
|
|
71
|
-
|
|
72
|
-
`installBmad()` and `updateBmad()` spawn child processes via `exec('npx bmad-method install ...')`. These functions are **not suitable for unit testing** without mocking `child_process`.
|
|
73
|
-
|
|
74
|
-
**Approach options:**
|
|
75
|
-
1. **Test only pure logic:** Focus on `isBmadInstalled()`, file discovery in `applyCustomizations()`, and function signatures. Skip subprocess-dependent functions.
|
|
76
|
-
2. **Mock child_process:** Intercept `exec` calls to verify command construction without executing. More complex but validates the pipeline.
|
|
77
|
-
3. **Hybrid:** Test what we can without mocking, defer subprocess testing to integration tests.
|
|
78
|
-
|
|
79
|
-
**Recommended:** Option 1 (pure logic) for this story. Focus on `isBmadInstalled()`, customization file discovery, and pipeline stage ordering verification.
|
|
80
|
-
|
|
81
|
-
### Pipeline Stage Ordering in applyCustomizations()
|
|
82
|
-
|
|
83
|
-
The function at line 59 applies customizations in this order:
|
|
84
|
-
1. Config YAML files → `lib/bmad-customizations/` configs
|
|
85
|
-
2. Recompile step → triggers BMAD recompile
|
|
86
|
-
3. Workflows → `lib/bmad-workflows/` content
|
|
87
|
-
4. Templates → `lib/mil498-templates/` content
|
|
88
|
-
5. Agent files → agent customize.yaml files
|
|
89
|
-
|
|
90
|
-
Verify ordering by checking the function's code flow, not by executing it.
|
|
91
|
-
|
|
92
|
-
### Critical Guardrails
|
|
93
|
-
|
|
94
|
-
- **Never trigger real BMAD installs** during tests — no `npx bmad-method` execution
|
|
95
|
-
- **Use temp directories** for `isBmadInstalled()` tests
|
|
96
|
-
- **No new npm dependencies** — use `node:test` and `node:assert` only
|
|
97
|
-
- **Do not modify `lib/bmad.js`** — tests validate existing behavior
|
|
98
|
-
|
|
99
|
-
### Project Structure Notes
|
|
100
|
-
|
|
101
|
-
- Files to create: `tests/bmad.test.js`
|
|
102
|
-
- No changes to `lib/` source files
|
|
103
|
-
|
|
104
|
-
### References
|
|
105
|
-
|
|
106
|
-
- [Source: _bmad-output/planning-artifacts/epics.md#Epic-7] — Story 7.3 definition
|
|
107
|
-
- [Source: _bmad-output/planning-artifacts/architecture.md#Pipeline-Architecture] — BMAD 6-stage pipeline, NFR8
|
|
108
|
-
- [Source: lib/bmad.js] — BMAD module (250 lines, 5 exported functions)
|
|
109
|
-
- [Source: _bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md] — Prerequisite story
|
|
110
|
-
|
|
111
|
-
## Dev Agent Record
|
|
112
|
-
|
|
113
|
-
### Agent Model Used
|
|
114
|
-
|
|
115
|
-
### Debug Log References
|
|
116
|
-
|
|
117
|
-
### Completion Notes List
|
|
118
|
-
|
|
119
|
-
### File List
|
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
# Story 7.4: Add Tests for cli.js Command Routing
|
|
2
|
-
|
|
3
|
-
Status: ready-for-dev
|
|
4
|
-
|
|
5
|
-
<!-- Note: Validation is optional. Run validate-create-story for quality check before dev-story. -->
|
|
6
|
-
<!-- Dependency: Story 7-1 must be completed first (test framework setup) -->
|
|
7
|
-
|
|
8
|
-
## Story
|
|
9
|
-
|
|
10
|
-
As a **developer**,
|
|
11
|
-
I want tests covering CLI command parsing and routing,
|
|
12
|
-
So that command-line argument handling is verified automatically.
|
|
13
|
-
|
|
14
|
-
## Acceptance Criteria
|
|
15
|
-
|
|
16
|
-
1. **Given** tests exist for `cli.js`
|
|
17
|
-
**When** the test suite runs
|
|
18
|
-
**Then** it verifies:
|
|
19
|
-
- Known commands (install, list, status, uninstall) route correctly
|
|
20
|
-
- Unknown commands produce helpful error messages
|
|
21
|
-
- Flag parsing (`--yes`, `--force`, `--agent`) extracts values correctly
|
|
22
|
-
- Help output is displayed for `--help` flag
|
|
23
|
-
- Version output is displayed for `--version` flag
|
|
24
|
-
|
|
25
|
-
## Tasks / Subtasks
|
|
26
|
-
|
|
27
|
-
- [ ] Task 1: Analyze cli.js testability (AC: #1)
|
|
28
|
-
- [ ] 1.1: Map the command routing in `main()` function (line 523)
|
|
29
|
-
- [ ] 1.2: Identify `parseFlags(args)` function (line 107) — this is a pure function, directly testable
|
|
30
|
-
- [ ] 1.3: Identify which functions can be tested without triggering interactive prompts or real installs
|
|
31
|
-
- [ ] 1.4: Note: `cli.js` is the `bin` entry point — it calls `main()` on require. Tests must NOT require cli.js directly or it will execute. Import specific functions or test via subprocess.
|
|
32
|
-
- [ ] Task 2: Test flag parsing (AC: #1)
|
|
33
|
-
- [ ] 2.1: Create `tests/cli.test.js`
|
|
34
|
-
- [ ] 2.2: **Challenge:** `parseFlags()` is not exported — it's internal to cli.js. Options:
|
|
35
|
-
- Option A: Export `parseFlags` from cli.js for testing (minor, safe change)
|
|
36
|
-
- Option B: Test via subprocess: `node bin/cli.js --help` and verify output
|
|
37
|
-
- Option C: Extract `parseFlags` to a shared utility (over-engineering for this story)
|
|
38
|
-
- [ ] 2.3: If Option A: Test `parseFlags(['--yes'])` returns `{ yes: true }`
|
|
39
|
-
- [ ] 2.4: If Option A: Test `parseFlags(['--force'])` returns `{ force: true }`
|
|
40
|
-
- [ ] 2.5: If Option A: Test `parseFlags(['--agent', 'claude-code'])` returns `{ agent: 'claude-code' }`
|
|
41
|
-
- [ ] 2.6: If Option A: Test `parseFlags([])` returns empty/default flags
|
|
42
|
-
- [ ] Task 3: Test CLI commands via subprocess (AC: #1)
|
|
43
|
-
- [ ] 3.1: Test: `node bin/cli.js --help` exits 0 and outputs usage info
|
|
44
|
-
- [ ] 3.2: Test: `node bin/cli.js --version` exits 0 and outputs version matching `package.json` version
|
|
45
|
-
- [ ] 3.3: Test: `node bin/cli.js list` exits 0 and outputs skill/agent listings
|
|
46
|
-
- [ ] 3.4: Test: `node bin/cli.js list --skills` exits 0 and outputs skill names
|
|
47
|
-
- [ ] 3.5: Test: `node bin/cli.js list --agents` exits 0 and outputs agent names
|
|
48
|
-
- [ ] 3.6: Test: `node bin/cli.js unknowncommand` exits non-zero or outputs help/error
|
|
49
|
-
- [ ] 3.7: Use `child_process.execSync` or `child_process.exec` for subprocess testing
|
|
50
|
-
- [ ] Task 4: Test help and version output content (AC: #1)
|
|
51
|
-
- [ ] 4.1: Test: help output contains key command names (install, list, status, uninstall)
|
|
52
|
-
- [ ] 4.2: Test: version output matches `require('../package.json').version`
|
|
53
|
-
|
|
54
|
-
## Dev Notes
|
|
55
|
-
|
|
56
|
-
### Architecture Compliance
|
|
57
|
-
|
|
58
|
-
- **Test location:** `tests/cli.test.js` [Source: architecture.md#Structure-Patterns]
|
|
59
|
-
- **CLI entry point hazard:** `bin/cli.js` calls `main()` at the bottom of the file. Requiring it directly would trigger the CLI. Tests must either:
|
|
60
|
-
1. Test via subprocess (`child_process.exec('node bin/cli.js ...')`)
|
|
61
|
-
2. Or export specific functions and guard `main()` behind `require.main === module` check
|
|
62
|
-
- **No real installs:** CLI tests must not trigger `install` or `uninstall` operations
|
|
63
|
-
|
|
64
|
-
### cli.js Module Structure
|
|
65
|
-
|
|
66
|
-
From [cli.js:1-565](bin/cli.js) — 565 lines, key functions:
|
|
67
|
-
|
|
68
|
-
**Display functions (no side effects beyond console output):**
|
|
69
|
-
- `showHelp()` (line 13) — prints usage info
|
|
70
|
-
- `showSkills()` (line 42) — lists skills
|
|
71
|
-
- `showAgents()` (line 51) — lists agents
|
|
72
|
-
- `showStatus(args)` (line 70) — shows install status
|
|
73
|
-
|
|
74
|
-
**Parsing functions (pure logic, most testable):**
|
|
75
|
-
- `parseFlags(args)` (line 107) — extracts --yes, --force, --agent, --skill, --scope, --path flags
|
|
76
|
-
|
|
77
|
-
**Command handlers (orchestrate operations, harder to test):**
|
|
78
|
-
- `handleInstall(args)` (line 425) — install command handler
|
|
79
|
-
- `handleUninstall(args)` (line 453) — uninstall command handler
|
|
80
|
-
- `installWizard(...)` (line 130) — interactive install flow
|
|
81
|
-
- `interactiveMode()` (line 480) — interactive menu
|
|
82
|
-
- `main()` (line 523) — entry point, routes commands
|
|
83
|
-
|
|
84
|
-
### parseFlags() Function Detail
|
|
85
|
-
|
|
86
|
-
From [cli.js:107-127](bin/cli.js#L107-L127):
|
|
87
|
-
```javascript
|
|
88
|
-
function parseFlags(args) {
|
|
89
|
-
// Parses: --yes, --force, --agent <name>, --skill <name>, --scope <scope>, --path <path>
|
|
90
|
-
// Returns object with extracted values
|
|
91
|
-
}
|
|
92
|
-
```
|
|
93
|
-
|
|
94
|
-
This is the best candidate for direct unit testing if exported.
|
|
95
|
-
|
|
96
|
-
### Subprocess Testing Pattern
|
|
97
|
-
|
|
98
|
-
```javascript
|
|
99
|
-
const { execSync } = require('node:child_process');
|
|
100
|
-
const { describe, it } = require('node:test');
|
|
101
|
-
const assert = require('node:assert');
|
|
102
|
-
|
|
103
|
-
describe('CLI commands', () => {
|
|
104
|
-
it('--help should exit 0 and show usage', () => {
|
|
105
|
-
const output = execSync('node bin/cli.js --help', { encoding: 'utf-8' });
|
|
106
|
-
assert.ok(output.includes('Usage'));
|
|
107
|
-
});
|
|
108
|
-
|
|
109
|
-
it('--version should show package version', () => {
|
|
110
|
-
const output = execSync('node bin/cli.js --version', { encoding: 'utf-8' });
|
|
111
|
-
const { version } = require('../package.json');
|
|
112
|
-
assert.ok(output.includes(version));
|
|
113
|
-
});
|
|
114
|
-
});
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
### Minimal Source Change Option
|
|
118
|
-
|
|
119
|
-
To test `parseFlags()` directly, a small change to `cli.js` may be needed:
|
|
120
|
-
|
|
121
|
-
```javascript
|
|
122
|
-
// At bottom of cli.js, replace direct main() call:
|
|
123
|
-
if (require.main === module) {
|
|
124
|
-
main();
|
|
125
|
-
}
|
|
126
|
-
|
|
127
|
-
// And export testable functions:
|
|
128
|
-
module.exports = { parseFlags };
|
|
129
|
-
```
|
|
130
|
-
|
|
131
|
-
This is a minimal, safe change that enables direct testing while preserving CLI behavior. Discuss with reviewer if this is acceptable or if subprocess-only testing is preferred.
|
|
132
|
-
|
|
133
|
-
### Critical Guardrails
|
|
134
|
-
|
|
135
|
-
- **Never trigger real installs** — only test non-destructive commands (list, help, version, status)
|
|
136
|
-
- **No interactive prompts in tests** — avoid commands that trigger `prompts` library
|
|
137
|
-
- **subprocess tests must have timeout** — prevent hanging tests
|
|
138
|
-
- **No new npm dependencies** — use `node:test`, `node:assert`, `node:child_process`
|
|
139
|
-
- **Minimal changes to `bin/cli.js`** — only `require.main` guard and optional exports if needed
|
|
140
|
-
|
|
141
|
-
### Project Structure Notes
|
|
142
|
-
|
|
143
|
-
- Files to create: `tests/cli.test.js`
|
|
144
|
-
- Files to potentially modify: `bin/cli.js` (add `require.main` guard + export parseFlags — minimal change)
|
|
145
|
-
- No changes to `lib/` source files
|
|
146
|
-
|
|
147
|
-
### References
|
|
148
|
-
|
|
149
|
-
- [Source: _bmad-output/planning-artifacts/epics.md#Epic-7] — Story 7.4 definition
|
|
150
|
-
- [Source: _bmad-output/planning-artifacts/architecture.md#Structure-Patterns] — Test directory structure
|
|
151
|
-
- [Source: bin/cli.js] — CLI module (565 lines, 10 functions, entry point)
|
|
152
|
-
- [Source: _bmad-output/implementation-artifacts/7-1-test-infrastructure-setup.md] — Prerequisite story
|
|
153
|
-
|
|
154
|
-
## Dev Agent Record
|
|
155
|
-
|
|
156
|
-
### Agent Model Used
|
|
157
|
-
|
|
158
|
-
### Debug Log References
|
|
159
|
-
|
|
160
|
-
### Completion Notes List
|
|
161
|
-
|
|
162
|
-
### File List
|