bmad-method 6.0.0-alpha.0 → 6.0.0-alpha.2
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/.claude/commands/bmad/bmb/agents/bmad-builder.md +70 -0
- package/.claude/commands/bmad/bmb/workflows/README.md +67 -0
- package/.claude/commands/bmad/bmb/workflows/audit-workflow.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/convert-legacy.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/create-agent.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/create-module.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/create-workflow.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/edit-agent.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/edit-module.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/edit-workflow.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/module-brief.md +15 -0
- package/.claude/commands/bmad/bmb/workflows/redoc.md +15 -0
- package/.claude/commands/bmad/bmd/agents/cli-chief.md +108 -0
- package/.claude/commands/bmad/bmd/agents/doc-keeper.md +115 -0
- package/.claude/commands/bmad/bmd/agents/release-chief.md +109 -0
- package/.claude/commands/bmad/core/agents/bmad-master.md +71 -0
- package/.claude/commands/bmad/core/tasks/index-docs.md +9 -0
- package/.claude/commands/bmad/core/tools/shard-doc.md +9 -0
- package/.claude/commands/bmad/core/workflows/README.md +27 -0
- package/.claude/commands/bmad/core/workflows/brainstorming.md +15 -0
- package/.claude/commands/bmad/core/workflows/party-mode.md +15 -0
- package/.claude/hooks/bmad-tts-injector.sh +415 -0
- package/.claude/hooks/bmad-voice-manager.sh +511 -0
- package/.claude/hooks/check-output-style.sh +112 -0
- package/.claude/hooks/download-extra-voices.sh +244 -0
- package/.claude/hooks/github-star-reminder.sh +154 -0
- package/.claude/hooks/language-manager.sh +392 -0
- package/.claude/hooks/learn-manager.sh +475 -0
- package/.claude/hooks/personality-manager.sh +438 -0
- package/.claude/hooks/piper-download-voices.sh +165 -0
- package/.claude/hooks/piper-installer.sh +178 -0
- package/.claude/hooks/piper-multispeaker-registry.sh +165 -0
- package/.claude/hooks/piper-voice-manager.sh +293 -0
- package/.claude/hooks/play-tts-elevenlabs.sh +404 -0
- package/.claude/hooks/play-tts-piper.sh +338 -0
- package/.claude/hooks/play-tts.sh +100 -0
- package/.claude/hooks/provider-commands.sh +540 -0
- package/.claude/hooks/provider-manager.sh +298 -0
- package/.claude/hooks/replay-target-audio.sh +95 -0
- package/.claude/hooks/sentiment-manager.sh +201 -0
- package/.claude/hooks/speed-manager.sh +291 -0
- package/.claude/hooks/voice-manager.sh +594 -0
- package/.claude/hooks/voices-config.sh +70 -0
- package/.claude/settings.local.json +41 -0
- package/.github/ISSUE_TEMPLATE/config.yaml +4 -0
- package/.github/ISSUE_TEMPLATE/idea_submission.md +2 -2
- package/.github/workflows/{format-check.yaml → lint.yaml} +19 -1
- package/.prettierignore +2 -0
- package/CHANGELOG.md +8 -2
- package/CONTRIBUTING.md +1 -0
- package/README.md +263 -0
- package/bmad/_cfg/agent-manifest.csv +7 -0
- package/bmad/_cfg/agents/bmb-bmad-builder.customize.yaml +42 -0
- package/bmad/_cfg/agents/bmd-cli-chief.customize.yaml +32 -0
- package/bmad/_cfg/agents/bmd-doc-keeper.customize.yaml +42 -0
- package/bmad/_cfg/agents/bmd-release-chief.customize.yaml +42 -0
- package/bmad/_cfg/agents/core-bmad-master.customize.yaml +42 -0
- package/bmad/_cfg/files-manifest.csv +83 -0
- package/bmad/_cfg/manifest.yaml +12 -0
- package/bmad/_cfg/task-manifest.csv +5 -0
- package/bmad/_cfg/tool-manifest.csv +2 -0
- package/bmad/_cfg/workflow-manifest.csv +15 -0
- package/bmad/bmb/README.md +132 -0
- package/bmad/bmb/agents/bmad-builder.md +70 -0
- package/bmad/bmb/config.yaml +14 -0
- package/bmad/bmb/workflows/audit-workflow/checklist.md +143 -0
- package/bmad/bmb/workflows/audit-workflow/instructions.md +341 -0
- package/bmad/bmb/workflows/audit-workflow/template.md +118 -0
- package/bmad/bmb/workflows/audit-workflow/workflow.yaml +23 -0
- package/bmad/bmb/workflows/audit-workflow/workflow.yaml.bak +21 -0
- package/bmad/bmb/workflows/convert-legacy/README.md +262 -0
- package/bmad/bmb/workflows/convert-legacy/checklist.md +205 -0
- package/bmad/bmb/workflows/convert-legacy/instructions.md +377 -0
- package/bmad/bmb/workflows/convert-legacy/workflow.yaml +32 -0
- package/bmad/bmb/workflows/create-agent/README.md +320 -0
- package/bmad/bmb/workflows/create-agent/agent-architecture.md +419 -0
- package/bmad/bmb/workflows/create-agent/agent-architecture.md.bak +412 -0
- package/bmad/bmb/workflows/create-agent/agent-command-patterns.md +759 -0
- package/bmad/bmb/workflows/create-agent/agent-command-patterns.md.bak +759 -0
- package/bmad/bmb/workflows/create-agent/agent-types.md +292 -0
- package/bmad/bmb/workflows/create-agent/brainstorm-context.md +174 -0
- package/bmad/bmb/workflows/create-agent/checklist.md +62 -0
- package/bmad/bmb/workflows/create-agent/communication-styles.md +202 -0
- package/bmad/bmb/workflows/create-agent/instructions.md +430 -0
- package/bmad/bmb/workflows/create-agent/workflow.yaml +37 -0
- package/bmad/bmb/workflows/create-module/README.md +220 -0
- package/bmad/bmb/workflows/create-module/README.md.bak +218 -0
- package/bmad/bmb/workflows/create-module/brainstorm-context.md +137 -0
- package/bmad/bmb/workflows/create-module/checklist.md +244 -0
- package/bmad/bmb/workflows/create-module/checklist.md.bak +245 -0
- package/bmad/bmb/workflows/create-module/installer-templates/install-config.yaml +92 -0
- package/bmad/bmb/workflows/create-module/installer-templates/installer.js +231 -0
- package/bmad/bmb/workflows/create-module/installer-templates/installer.js.bak +231 -0
- package/bmad/bmb/workflows/create-module/instructions.md +581 -0
- package/bmad/bmb/workflows/create-module/instructions.md.bak +521 -0
- package/bmad/bmb/workflows/create-module/module-structure.md +366 -0
- package/bmad/bmb/workflows/create-module/module-structure.md.bak +310 -0
- package/bmad/bmb/workflows/create-module/workflow.yaml +42 -0
- package/bmad/bmb/workflows/create-module/workflow.yaml.bak +40 -0
- package/bmad/bmb/workflows/create-workflow/README.md +277 -0
- package/bmad/bmb/workflows/create-workflow/brainstorm-context.md +197 -0
- package/bmad/bmb/workflows/create-workflow/checklist.md +94 -0
- package/bmad/bmb/workflows/create-workflow/instructions.md +716 -0
- package/bmad/bmb/workflows/create-workflow/workflow-creation-guide.md +1150 -0
- package/bmad/bmb/workflows/create-workflow/workflow-template/checklist.md +24 -0
- package/bmad/bmb/workflows/create-workflow/workflow-template/instructions.md +13 -0
- package/bmad/bmb/workflows/create-workflow/workflow-template/template.md +9 -0
- package/bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml +39 -0
- package/bmad/bmb/workflows/create-workflow/workflow-template/workflow.yaml.bak +39 -0
- package/bmad/bmb/workflows/create-workflow/workflow.yaml +40 -0
- package/bmad/bmb/workflows/create-workflow/workflow.yaml.bak +38 -0
- package/bmad/bmb/workflows/edit-agent/README.md +112 -0
- package/bmad/bmb/workflows/edit-agent/checklist.md +112 -0
- package/bmad/bmb/workflows/edit-agent/instructions.md +290 -0
- package/bmad/bmb/workflows/edit-agent/workflow.yaml +33 -0
- package/bmad/bmb/workflows/edit-module/README.md +187 -0
- package/bmad/bmb/workflows/edit-module/checklist.md +165 -0
- package/bmad/bmb/workflows/edit-module/instructions.md +339 -0
- package/bmad/bmb/workflows/edit-module/workflow.yaml +34 -0
- package/bmad/bmb/workflows/edit-workflow/README.md +119 -0
- package/bmad/bmb/workflows/edit-workflow/checklist.md +70 -0
- package/bmad/bmb/workflows/edit-workflow/instructions.md +342 -0
- package/bmad/bmb/workflows/edit-workflow/workflow.yaml +27 -0
- package/bmad/bmb/workflows/edit-workflow/workflow.yaml.bak +25 -0
- package/bmad/bmb/workflows/module-brief/README.md +264 -0
- package/bmad/bmb/workflows/module-brief/checklist.md +116 -0
- package/bmad/bmb/workflows/module-brief/instructions.md +267 -0
- package/bmad/bmb/workflows/module-brief/template.md +275 -0
- package/bmad/bmb/workflows/module-brief/workflow.yaml +29 -0
- package/bmad/bmb/workflows/module-brief/workflow.yaml.bak +27 -0
- package/bmad/bmb/workflows/redoc/README.md +87 -0
- package/bmad/bmb/workflows/redoc/checklist.md +99 -0
- package/bmad/bmb/workflows/redoc/instructions.md +265 -0
- package/bmad/bmb/workflows/redoc/workflow.yaml +32 -0
- package/bmad/bmb/workflows/redoc/workflow.yaml.bak +31 -0
- package/bmad/bmd/README.md +193 -0
- package/bmad/bmd/README.md.bak +193 -0
- package/bmad/bmd/agents/cli-chief-sidecar/instructions.md +102 -0
- package/bmad/bmd/agents/cli-chief-sidecar/instructions.md.bak +102 -0
- package/bmad/bmd/agents/cli-chief-sidecar/knowledge/README.md +68 -0
- package/bmad/bmd/agents/cli-chief-sidecar/knowledge/README.md.bak +68 -0
- package/bmad/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md +123 -0
- package/bmad/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md.bak +123 -0
- package/bmad/bmd/agents/cli-chief-sidecar/memories.md +53 -0
- package/bmad/bmd/agents/cli-chief-sidecar/memories.md.bak +53 -0
- package/bmad/bmd/agents/cli-chief.md +108 -0
- package/bmad/bmd/agents/cli-chief.md.bak +108 -0
- package/bmad/bmd/agents/doc-keeper-sidecar/instructions.md +177 -0
- package/bmad/bmd/agents/doc-keeper-sidecar/instructions.md.bak +177 -0
- package/bmad/bmd/agents/doc-keeper-sidecar/knowledge/README.md +81 -0
- package/bmad/bmd/agents/doc-keeper-sidecar/knowledge/README.md.bak +81 -0
- package/bmad/bmd/agents/doc-keeper-sidecar/memories.md +88 -0
- package/bmad/bmd/agents/doc-keeper-sidecar/memories.md.bak +88 -0
- package/bmad/bmd/agents/doc-keeper.md +115 -0
- package/bmad/bmd/agents/doc-keeper.md.bak +115 -0
- package/bmad/bmd/agents/release-chief-sidecar/instructions.md +164 -0
- package/bmad/bmd/agents/release-chief-sidecar/instructions.md.bak +164 -0
- package/bmad/bmd/agents/release-chief-sidecar/knowledge/README.md +82 -0
- package/bmad/bmd/agents/release-chief-sidecar/knowledge/README.md.bak +82 -0
- package/bmad/bmd/agents/release-chief-sidecar/memories.md +73 -0
- package/bmad/bmd/agents/release-chief-sidecar/memories.md.bak +73 -0
- package/bmad/bmd/agents/release-chief.md +109 -0
- package/bmad/bmd/agents/release-chief.md.bak +109 -0
- package/bmad/bmd/config.yaml +10 -0
- package/bmad/core/agents/bmad-master.md +71 -0
- package/bmad/core/agents/bmad-web-orchestrator.agent.xml +122 -0
- package/bmad/core/config.yaml +9 -0
- package/bmad/core/tasks/adv-elicit-methods.csv +39 -0
- package/{src/core/tasks/adv-elicit.md → bmad/core/tasks/adv-elicit.xml} +6 -11
- package/{src/core/tasks/index-docs.md → bmad/core/tasks/index-docs.xml} +6 -10
- package/{src/core/tasks/validate-workflow.md → bmad/core/tasks/validate-workflow.xml} +4 -7
- package/bmad/core/tasks/workflow.xml +174 -0
- package/bmad/core/tools/shard-doc.xml +100 -0
- package/{src/modules/cis → bmad/core}/workflows/brainstorming/README.md +2 -2
- package/{src/modules/cis → bmad/core}/workflows/brainstorming/instructions.md +26 -22
- package/{src/modules/cis → bmad/core}/workflows/brainstorming/template.md +2 -2
- package/{src/modules/cis → bmad/core}/workflows/brainstorming/workflow.yaml +16 -3
- package/bmad/core/workflows/party-mode/instructions.md +188 -0
- package/bmad/core/workflows/party-mode/workflow.yaml +23 -0
- package/bmad/docs/claude-code-instructions.md +25 -0
- package/bmad/docs/codex-instructions.md +21 -0
- package/bmd/README.md +193 -0
- package/bmd/agents/cli-chief-sidecar/instructions.md +102 -0
- package/bmd/agents/cli-chief-sidecar/knowledge/README.md +68 -0
- package/bmd/agents/cli-chief-sidecar/knowledge/cli-reference.md +123 -0
- package/bmd/agents/cli-chief-sidecar/memories.md +53 -0
- package/bmd/agents/cli-chief.agent.yaml +126 -0
- package/bmd/agents/doc-keeper-sidecar/instructions.md +177 -0
- package/bmd/agents/doc-keeper-sidecar/knowledge/README.md +81 -0
- package/bmd/agents/doc-keeper-sidecar/memories.md +88 -0
- package/bmd/agents/doc-keeper.agent.yaml +137 -0
- package/bmd/agents/release-chief-sidecar/instructions.md +164 -0
- package/bmd/agents/release-chief-sidecar/knowledge/README.md +82 -0
- package/bmd/agents/release-chief-sidecar/memories.md +73 -0
- package/bmd/agents/release-chief.agent.yaml +127 -0
- package/bmd/bmad-custom-module-installer-plan.md +1176 -0
- package/bmd/config.yaml +12 -0
- package/docs/bmad-brownfield-guide.md +1260 -0
- package/docs/conversion-report-shard-doc-2025-10-26.md +188 -0
- package/docs/ide-info/auggie.md +2 -2
- package/docs/ide-info/claude-code.md +4 -4
- package/docs/ide-info/codex.md +9 -20
- package/docs/ide-info/opencode.md +24 -0
- package/docs/installers-bundlers/ide-injections.md +0 -10
- package/docs/installers-bundlers/installers-modules-platforms-reference.md +22 -50
- package/docs/v4-to-v6-upgrade.md +225 -0
- package/eslint.config.mjs +4 -2
- package/package.json +11 -6
- package/src/core/_module-installer/{install-menu-config.yaml → install-config.yaml} +8 -4
- package/src/core/_module-installer/installer.js +1 -1
- package/src/core/agents/bmad-master.agent.yaml +39 -0
- package/src/core/agents/bmad-web-orchestrator.agent.xml +122 -0
- package/src/core/tasks/adv-elicit.xml +104 -0
- package/src/core/tasks/index-docs.xml +65 -0
- package/src/core/tasks/validate-workflow.xml +89 -0
- package/src/core/tasks/{workflow.md → workflow.xml} +42 -17
- package/src/core/tools/shard-doc.xml +100 -0
- package/src/core/workflows/brainstorming/README.md +271 -0
- package/src/core/workflows/brainstorming/brain-methods.csv +36 -0
- package/src/core/workflows/brainstorming/instructions.md +314 -0
- package/src/core/workflows/brainstorming/template.md +102 -0
- package/src/core/workflows/brainstorming/workflow.yaml +43 -0
- package/src/core/workflows/party-mode/instructions.md +30 -23
- package/src/core/workflows/party-mode/workflow.yaml +7 -8
- package/src/modules/bmb/README.md +132 -0
- package/src/modules/bmb/_module-installer/install-config.yaml +26 -0
- package/src/modules/bmb/agents/bmad-builder.agent.yaml +58 -0
- package/src/modules/bmb/workflows/audit-workflow/checklist.md +143 -0
- package/src/modules/bmb/workflows/audit-workflow/instructions.md +341 -0
- package/src/modules/bmb/workflows/audit-workflow/template.md +118 -0
- package/src/modules/bmb/workflows/audit-workflow/workflow.yaml +25 -0
- package/src/modules/bmb/workflows/convert-legacy/README.md +32 -32
- package/src/modules/bmb/workflows/convert-legacy/checklist.md +21 -20
- package/src/modules/bmb/workflows/convert-legacy/instructions.md +130 -81
- package/src/modules/bmb/workflows/convert-legacy/workflow.yaml +7 -8
- package/src/modules/bmb/workflows/create-agent/README.md +96 -44
- package/src/modules/bmb/workflows/create-agent/agent-architecture.md +58 -51
- package/src/modules/bmb/workflows/create-agent/agent-command-patterns.md +153 -151
- package/src/modules/bmb/workflows/create-agent/agent-types.md +137 -22
- package/src/modules/bmb/workflows/create-agent/brainstorm-context.md +4 -4
- package/src/modules/bmb/workflows/create-agent/checklist.md +30 -102
- package/src/modules/bmb/workflows/create-agent/communication-styles.md +22 -60
- package/src/modules/bmb/workflows/create-agent/instructions.md +309 -219
- package/src/modules/bmb/workflows/create-agent/workflow.yaml +24 -14
- package/src/modules/bmb/workflows/create-module/README.md +23 -21
- package/src/modules/bmb/workflows/create-module/brainstorm-context.md +1 -1
- package/src/modules/bmb/workflows/create-module/checklist.md +20 -21
- package/src/modules/bmb/workflows/create-module/installer-templates/install-config.yaml +92 -0
- package/src/modules/bmb/workflows/create-module/installer-templates/installer.js +1 -1
- package/src/modules/bmb/workflows/create-module/instructions.md +309 -237
- package/src/modules/bmb/workflows/create-module/module-structure.md +104 -48
- package/src/modules/bmb/workflows/create-module/workflow.yaml +14 -17
- package/src/modules/bmb/workflows/create-workflow/README.md +68 -7
- package/src/modules/bmb/workflows/create-workflow/brainstorm-context.md +4 -4
- package/src/modules/bmb/workflows/create-workflow/checklist.md +22 -0
- package/src/modules/bmb/workflows/create-workflow/instructions.md +496 -47
- package/src/modules/bmb/workflows/create-workflow/workflow-creation-guide.md +753 -59
- package/src/modules/bmb/workflows/create-workflow/workflow-template/instructions.md +4 -3
- package/src/modules/bmb/workflows/create-workflow/workflow-template/workflow.yaml +30 -0
- package/src/modules/bmb/workflows/create-workflow/workflow.yaml +11 -11
- package/src/modules/bmb/workflows/edit-agent/README.md +112 -0
- package/src/modules/bmb/workflows/edit-agent/checklist.md +112 -0
- package/src/modules/bmb/workflows/edit-agent/instructions.md +290 -0
- package/src/modules/bmb/workflows/edit-agent/workflow.yaml +35 -0
- package/src/modules/bmb/workflows/edit-module/README.md +187 -0
- package/src/modules/bmb/workflows/edit-module/checklist.md +165 -0
- package/src/modules/bmb/workflows/edit-module/instructions.md +339 -0
- package/src/modules/bmb/workflows/edit-module/workflow.yaml +36 -0
- package/src/modules/bmb/workflows/edit-workflow/README.md +58 -2
- package/src/modules/bmb/workflows/edit-workflow/instructions.md +289 -117
- package/src/modules/bmb/workflows/edit-workflow/workflow.yaml +5 -10
- package/src/modules/bmb/workflows/module-brief/README.md +16 -16
- package/src/modules/bmb/workflows/module-brief/checklist.md +4 -4
- package/src/modules/bmb/workflows/module-brief/instructions.md +9 -7
- package/src/modules/bmb/workflows/module-brief/template.md +9 -9
- package/src/modules/bmb/workflows/module-brief/workflow.yaml +5 -4
- package/src/modules/bmb/workflows/redoc/checklist.md +2 -2
- package/src/modules/bmb/workflows/redoc/instructions.md +20 -10
- package/src/modules/bmb/workflows/redoc/workflow.yaml +5 -4
- package/src/modules/bmm/README.md +141 -0
- package/src/modules/bmm/_module-installer/install-config.yaml +74 -0
- package/src/modules/bmm/_module-installer/installer.js +1 -1
- package/src/modules/bmm/_module-installer/platform-specifics/claude-code.js +1 -1
- package/src/modules/bmm/_module-installer/platform-specifics/windsurf.js +1 -1
- package/src/modules/bmm/agents/analyst.agent.yaml +43 -0
- package/src/modules/bmm/agents/architect.agent.yaml +41 -0
- package/src/modules/bmm/agents/dev.agent.yaml +43 -0
- package/src/modules/bmm/agents/game-architect.agent.yaml +35 -0
- package/src/modules/bmm/agents/game-designer.agent.yaml +47 -0
- package/src/modules/bmm/agents/game-dev.agent.yaml +39 -0
- package/src/modules/bmm/agents/pm.agent.yaml +50 -0
- package/src/modules/bmm/agents/sm.agent.yaml +67 -0
- package/src/modules/bmm/agents/tea.agent.yaml +59 -0
- package/src/modules/bmm/agents/ux-designer.agent.yaml +33 -0
- package/src/modules/bmm/sub-modules/claude-code/injections.yaml +1 -1
- package/src/modules/bmm/sub-modules/claude-code/readme.md +1 -1
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{api-documenter.md → bmad-analysis/api-documenter.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{codebase-analyzer.md → bmad-analysis/codebase-analyzer.md} +19 -1
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{data-analyst.md → bmad-analysis/data-analyst.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{pattern-detector.md → bmad-analysis/pattern-detector.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{dependency-mapper.md → bmad-planning/dependency-mapper.md} +16 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{epic-optimizer.md → bmad-planning/epic-optimizer.md} +15 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{technical-decisions-curator.md → bmad-planning/technical-decisions-curator.md} +24 -2
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{trend-spotter.md → bmad-planning/trend-spotter.md} +16 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{user-journey-mapper.md → bmad-planning/user-journey-mapper.md} +22 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{user-researcher.md → bmad-planning/user-researcher.md} +16 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{market-researcher.md → bmad-research/market-researcher.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{tech-debt-auditor.md → bmad-research/tech-debt-auditor.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{document-reviewer.md → bmad-review/document-reviewer.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{technical-evaluator.md → bmad-review/technical-evaluator.md} +17 -0
- package/src/modules/bmm/sub-modules/claude-code/sub-agents/{test-coverage-analyzer.md → bmad-review/test-coverage-analyzer.md} +17 -0
- package/src/modules/bmm/tasks/{daily-standup.md → daily-standup.xml} +21 -27
- package/src/modules/bmm/tasks/{retrospective.md → retrospective.xml} +22 -28
- package/src/modules/bmm/teams/team-fullstack.yaml +11 -0
- package/src/modules/bmm/teams/team-gamedev.yaml +5 -0
- package/src/modules/bmm/testarch/README.md +311 -0
- package/src/modules/bmm/testarch/knowledge/ci-burn-in.md +675 -0
- package/src/modules/bmm/testarch/knowledge/component-tdd.md +486 -0
- package/src/modules/bmm/testarch/knowledge/contract-testing.md +957 -0
- package/src/modules/bmm/testarch/knowledge/data-factories.md +500 -0
- package/src/modules/bmm/testarch/knowledge/email-auth.md +721 -0
- package/src/modules/bmm/testarch/knowledge/error-handling.md +725 -0
- package/src/modules/bmm/testarch/knowledge/feature-flags.md +750 -0
- package/src/modules/bmm/testarch/knowledge/fixture-architecture.md +401 -0
- package/src/modules/bmm/testarch/knowledge/network-first.md +486 -0
- package/src/modules/bmm/testarch/knowledge/nfr-criteria.md +670 -0
- package/src/modules/bmm/testarch/knowledge/playwright-config.md +730 -0
- package/src/modules/bmm/testarch/knowledge/probability-impact.md +601 -0
- package/src/modules/bmm/testarch/knowledge/risk-governance.md +615 -0
- package/src/modules/bmm/testarch/knowledge/selective-testing.md +732 -0
- package/src/modules/bmm/testarch/knowledge/selector-resilience.md +527 -0
- package/src/modules/bmm/testarch/knowledge/test-healing-patterns.md +644 -0
- package/src/modules/bmm/testarch/knowledge/test-levels-framework.md +473 -0
- package/src/modules/bmm/testarch/knowledge/test-priorities-matrix.md +373 -0
- package/src/modules/bmm/testarch/knowledge/test-quality.md +664 -0
- package/src/modules/bmm/testarch/knowledge/timing-debugging.md +372 -0
- package/src/modules/bmm/testarch/knowledge/visual-debugging.md +524 -0
- package/src/modules/bmm/testarch/tea-index.csv +22 -0
- package/src/modules/bmm/workflows/1-analysis/brainstorm-game/README.md +38 -0
- package/src/modules/bmm/workflows/1-analysis/brainstorm-game/game-context.md +3 -3
- package/src/modules/bmm/workflows/1-analysis/brainstorm-game/instructions.md +74 -12
- package/src/modules/bmm/workflows/1-analysis/brainstorm-game/workflow.yaml +22 -3
- package/src/modules/bmm/workflows/1-analysis/brainstorm-project/README.md +29 -0
- package/src/modules/bmm/workflows/1-analysis/brainstorm-project/instructions.md +61 -8
- package/src/modules/bmm/workflows/1-analysis/brainstorm-project/project-context.md +4 -4
- package/src/modules/bmm/workflows/1-analysis/brainstorm-project/workflow.yaml +21 -3
- package/src/modules/bmm/workflows/1-analysis/game-brief/README.md +5 -5
- package/src/modules/bmm/workflows/1-analysis/game-brief/checklist.md +2 -2
- package/src/modules/bmm/workflows/1-analysis/game-brief/instructions.md +151 -311
- package/src/modules/bmm/workflows/1-analysis/game-brief/template.md +2 -2
- package/src/modules/bmm/workflows/1-analysis/game-brief/workflow.yaml +16 -6
- package/src/modules/bmm/workflows/1-analysis/product-brief/README.md +4 -4
- package/src/modules/bmm/workflows/1-analysis/product-brief/checklist.md +2 -2
- package/src/modules/bmm/workflows/1-analysis/product-brief/instructions.md +147 -179
- package/src/modules/bmm/workflows/1-analysis/product-brief/template.md +4 -4
- package/src/modules/bmm/workflows/1-analysis/product-brief/workflow.yaml +16 -6
- package/src/modules/bmm/workflows/1-analysis/research/README.md +3 -3
- package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-competitor-analyzer.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-market-researcher.md +2 -2
- package/src/modules/bmm/workflows/1-analysis/research/claude-code/sub-agents/bmm-trend-spotter.md +2 -2
- package/src/modules/bmm/workflows/1-analysis/research/instructions-deep-prompt.md +80 -17
- package/src/modules/bmm/workflows/1-analysis/research/instructions-market.md +71 -11
- package/src/modules/bmm/workflows/1-analysis/research/instructions-router.md +72 -38
- package/src/modules/bmm/workflows/1-analysis/research/instructions-technical.md +73 -14
- package/src/modules/bmm/workflows/1-analysis/research/template-deep-prompt.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/research/template-market.md +1 -1
- package/src/modules/bmm/workflows/1-analysis/research/workflow.yaml +21 -121
- package/src/modules/bmm/workflows/2-plan-workflows/README.md +258 -0
- package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/checklist.md +310 -0
- package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/instructions.md +1283 -0
- package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +145 -0
- package/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/workflow.yaml +42 -0
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/README.md +16 -16
- package/src/modules/bmm/workflows/2-plan-workflows/gdd/checklist.md +148 -0
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/action-platformer.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/adventure.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/card-game.md +2 -2
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/fighting.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/horror.md +2 -2
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/idle-incremental.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/moba.md +4 -4
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/party-game.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/racing.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/rhythm.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/roguelike.md +2 -2
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/rpg.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/sandbox.md +4 -4
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/shooter.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/simulation.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/sports.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/strategy.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/survival.md +2 -2
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/text-based.md +3 -3
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/tower-defense.md +5 -5
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/turn-based-tactics.md +4 -4
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/visual-novel.md +1 -1
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/gdd-template.md +6 -12
- package/src/modules/bmm/workflows/2-plan-workflows/gdd/instructions-gdd.md +475 -0
- package/src/modules/bmm/workflows/2-plan-workflows/gdd/workflow.yaml +67 -0
- package/src/modules/bmm/workflows/2-plan-workflows/narrative/checklist.md +139 -0
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/narrative/instructions-narrative.md +52 -12
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/narrative/narrative-template.md +8 -8
- package/src/modules/bmm/workflows/2-plan-workflows/narrative/workflow.yaml +38 -0
- package/src/modules/bmm/workflows/2-plan-workflows/prd/checklist.md +117 -0
- package/src/modules/bmm/workflows/2-plan-workflows/prd/epics-template.md +63 -0
- package/src/modules/bmm/workflows/2-plan-workflows/prd/instructions.md +449 -0
- package/src/modules/bmm/workflows/2-plan-workflows/prd/prd-template.md +62 -0
- package/src/modules/bmm/workflows/2-plan-workflows/prd/workflow.yaml +46 -0
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/checklist.md +107 -0
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/epics-template.md +11 -0
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md +167 -0
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions-level1-stories.md +278 -0
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/instructions.md +269 -0
- package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/tech-spec/tech-spec-template.md +0 -4
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/user-story-template.md +56 -0
- package/src/modules/bmm/workflows/2-plan-workflows/tech-spec/workflow.yaml +52 -0
- package/src/modules/bmm/workflows/3-solutioning/README.md +1 -565
- package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-patterns.yaml +347 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/architecture-template.md +103 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/checklist.md +244 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/decision-catalog.yaml +222 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/instructions.md +703 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/pattern-categories.csv +13 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/readme.md +318 -0
- package/src/modules/bmm/workflows/3-solutioning/architecture/workflow.yaml +54 -0
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/README.md +177 -0
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/checklist.md +175 -0
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/instructions.md +273 -0
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/template.md +146 -0
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/validation-criteria.yaml +189 -0
- package/src/modules/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml +40 -0
- package/src/modules/bmm/workflows/4-implementation/README.md +221 -0
- package/src/modules/bmm/workflows/4-implementation/{review-story → code-review}/README.md +4 -7
- package/src/modules/bmm/workflows/4-implementation/code-review/instructions.md +391 -0
- package/src/modules/bmm/workflows/4-implementation/code-review/workflow.yaml +56 -0
- package/src/modules/bmm/workflows/4-implementation/correct-course/README.md +73 -0
- package/src/modules/bmm/workflows/4-implementation/correct-course/checklist.md +5 -5
- package/src/modules/bmm/workflows/4-implementation/correct-course/instructions.md +64 -53
- package/src/modules/bmm/workflows/4-implementation/correct-course/workflow.yaml +10 -0
- package/src/modules/bmm/workflows/4-implementation/create-story/README.md +117 -30
- package/src/modules/bmm/workflows/4-implementation/create-story/checklist.md +240 -39
- package/src/modules/bmm/workflows/4-implementation/create-story/instructions.md +193 -22
- package/src/modules/bmm/workflows/4-implementation/create-story/template.md +2 -8
- package/src/modules/bmm/workflows/4-implementation/create-story/workflow.yaml +11 -34
- package/src/modules/bmm/workflows/4-implementation/dev-story/AUDIT-REPORT.md +367 -0
- package/src/modules/bmm/workflows/4-implementation/dev-story/README.md +189 -67
- package/src/modules/bmm/workflows/4-implementation/dev-story/checklist.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/dev-story/instructions.md +215 -40
- package/src/modules/bmm/workflows/4-implementation/dev-story/workflow.yaml +12 -37
- package/src/modules/bmm/workflows/{3-solutioning/tech-spec → 4-implementation/epic-tech-context}/README.md +6 -6
- package/src/modules/bmm/workflows/{3-solutioning/tech-spec → 4-implementation/epic-tech-context}/checklist.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/epic-tech-context/instructions.md +160 -0
- package/src/modules/bmm/workflows/{3-solutioning/tech-spec → 4-implementation/epic-tech-context}/template.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/epic-tech-context/workflow.yaml +34 -0
- package/src/modules/bmm/workflows/4-implementation/retrospective/README.md +77 -0
- package/src/modules/bmm/workflows/4-implementation/retrospective/instructions.md +236 -148
- package/src/modules/bmm/workflows/4-implementation/retrospective/workflow.yaml +8 -4
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/README.md +156 -0
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/checklist.md +33 -0
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/instructions.md +221 -0
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +55 -0
- package/src/modules/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +41 -0
- package/src/modules/bmm/workflows/4-implementation/story-context/README.md +1 -1
- package/src/modules/bmm/workflows/4-implementation/story-context/instructions.md +146 -21
- package/src/modules/bmm/workflows/4-implementation/story-context/workflow.yaml +8 -32
- package/src/modules/bmm/workflows/4-implementation/story-done/instructions.md +111 -0
- package/src/modules/bmm/workflows/4-implementation/story-done/workflow.yaml +27 -0
- package/src/modules/bmm/workflows/4-implementation/story-ready/instructions.md +117 -0
- package/src/modules/bmm/workflows/4-implementation/story-ready/workflow.yaml +27 -0
- package/src/modules/bmm/workflows/README.md +577 -0
- package/src/modules/bmm/workflows/document-project/README.md +444 -0
- package/src/modules/bmm/workflows/document-project/checklist.md +245 -0
- package/src/modules/bmm/workflows/document-project/documentation-requirements.csv +12 -0
- package/src/modules/bmm/workflows/document-project/instructions.md +222 -0
- package/src/modules/bmm/workflows/document-project/templates/README.md +38 -0
- package/src/modules/bmm/workflows/document-project/templates/deep-dive-template.md +345 -0
- package/src/modules/bmm/workflows/document-project/templates/index-template.md +169 -0
- package/src/modules/bmm/workflows/document-project/templates/project-overview-template.md +103 -0
- package/src/modules/bmm/workflows/document-project/templates/project-scan-report-schema.json +160 -0
- package/src/modules/bmm/workflows/document-project/templates/source-tree-template.md +135 -0
- package/src/modules/bmm/workflows/document-project/workflow.yaml +36 -0
- package/src/modules/bmm/workflows/document-project/workflows/deep-dive-instructions.md +298 -0
- package/src/modules/bmm/workflows/document-project/workflows/deep-dive.yaml +31 -0
- package/src/modules/bmm/workflows/document-project/workflows/full-scan-instructions.md +1106 -0
- package/src/modules/bmm/workflows/document-project/workflows/full-scan.yaml +31 -0
- package/src/modules/bmm/workflows/testarch/README.md +26 -0
- package/src/modules/bmm/workflows/testarch/atdd/README.md +672 -0
- package/src/modules/bmm/workflows/testarch/atdd/atdd-checklist-template.md +363 -0
- package/src/modules/bmm/workflows/testarch/atdd/checklist.md +373 -0
- package/src/modules/bmm/workflows/testarch/atdd/instructions.md +785 -0
- package/src/modules/bmm/workflows/testarch/atdd/workflow.yaml +54 -0
- package/src/modules/bmm/workflows/testarch/automate/README.md +869 -0
- package/src/modules/bmm/workflows/testarch/automate/checklist.md +580 -0
- package/src/modules/bmm/workflows/testarch/automate/instructions.md +1303 -0
- package/src/modules/bmm/workflows/testarch/automate/workflow.yaml +63 -0
- package/src/modules/bmm/workflows/testarch/ci/README.md +493 -0
- package/src/modules/bmm/workflows/testarch/ci/checklist.md +246 -0
- package/src/modules/bmm/workflows/testarch/ci/github-actions-template.yaml +165 -0
- package/src/modules/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +128 -0
- package/src/modules/bmm/workflows/testarch/ci/instructions.md +517 -0
- package/src/modules/bmm/workflows/testarch/ci/workflow.yaml +55 -0
- package/src/modules/bmm/workflows/testarch/framework/README.md +340 -0
- package/src/modules/bmm/workflows/testarch/framework/checklist.md +321 -0
- package/src/modules/bmm/workflows/testarch/framework/instructions.md +455 -0
- package/src/modules/bmm/workflows/testarch/framework/workflow.yaml +55 -0
- package/src/modules/bmm/workflows/testarch/nfr-assess/README.md +469 -0
- package/src/modules/bmm/workflows/testarch/nfr-assess/checklist.md +405 -0
- package/src/modules/bmm/workflows/testarch/nfr-assess/instructions.md +722 -0
- package/src/modules/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +443 -0
- package/src/modules/bmm/workflows/testarch/nfr-assess/workflow.yaml +58 -0
- package/src/modules/bmm/workflows/testarch/test-design/README.md +493 -0
- package/src/modules/bmm/workflows/testarch/test-design/checklist.md +234 -0
- package/src/modules/bmm/workflows/testarch/test-design/instructions.md +621 -0
- package/src/modules/bmm/workflows/testarch/test-design/test-design-template.md +285 -0
- package/src/modules/bmm/workflows/testarch/test-design/workflow.yaml +54 -0
- package/src/modules/bmm/workflows/testarch/test-review/README.md +775 -0
- package/src/modules/bmm/workflows/testarch/test-review/checklist.md +470 -0
- package/src/modules/bmm/workflows/testarch/test-review/instructions.md +608 -0
- package/src/modules/bmm/workflows/testarch/test-review/test-review-template.md +388 -0
- package/src/modules/bmm/workflows/testarch/test-review/workflow.yaml +55 -0
- package/src/modules/bmm/workflows/testarch/trace/README.md +802 -0
- package/src/modules/bmm/workflows/testarch/trace/checklist.md +654 -0
- package/src/modules/bmm/workflows/testarch/trace/instructions.md +1045 -0
- package/src/modules/bmm/workflows/testarch/trace/trace-template.md +673 -0
- package/src/modules/bmm/workflows/testarch/trace/workflow.yaml +68 -0
- package/src/modules/bmm/workflows/workflow-status/README.md +241 -0
- package/src/modules/bmm/workflows/workflow-status/init/instructions.md +297 -0
- package/src/modules/bmm/workflows/workflow-status/init/workflow.yaml +28 -0
- package/src/modules/bmm/workflows/workflow-status/instructions.md +324 -0
- package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-0.yaml +54 -0
- package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-1.yaml +58 -0
- package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-2.yaml +76 -0
- package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-3.yaml +95 -0
- package/src/modules/bmm/workflows/workflow-status/paths/brownfield-level-4.yaml +88 -0
- package/src/modules/bmm/workflows/workflow-status/paths/game-design.yaml +75 -0
- package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-0.yaml +45 -0
- package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-1.yaml +49 -0
- package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-2.yaml +78 -0
- package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-3.yaml +73 -0
- package/src/modules/bmm/workflows/workflow-status/paths/greenfield-level-4.yaml +75 -0
- package/src/modules/bmm/workflows/workflow-status/project-levels.yaml +59 -0
- package/src/modules/bmm/workflows/workflow-status/workflow-status-template.md +30 -0
- package/src/modules/bmm/workflows/workflow-status/workflow.yaml +30 -0
- package/src/modules/cis/_module-installer/installer.js +1 -1
- package/src/modules/cis/agents/brainstorming-coach.agent.yaml +23 -0
- package/src/modules/cis/agents/creative-problem-solver.agent.yaml +23 -0
- package/src/modules/cis/agents/design-thinking-coach.agent.yaml +23 -0
- package/src/modules/cis/agents/innovation-strategist.agent.yaml +23 -0
- package/src/modules/cis/agents/storyteller.agent.yaml +23 -0
- package/src/modules/cis/workflows/design-thinking/design-methods.csv +1 -1
- package/src/modules/cis/workflows/design-thinking/instructions.md +1 -1
- package/src/modules/cis/workflows/design-thinking/workflow.yaml +14 -0
- package/src/modules/cis/workflows/innovation-strategy/innovation-frameworks.csv +2 -2
- package/src/modules/cis/workflows/innovation-strategy/instructions.md +1 -1
- package/src/modules/cis/workflows/innovation-strategy/template.md +4 -4
- package/src/modules/cis/workflows/innovation-strategy/workflow.yaml +14 -0
- package/src/modules/cis/workflows/problem-solving/instructions.md +1 -1
- package/src/modules/cis/workflows/problem-solving/solving-methods.csv +6 -6
- package/src/modules/cis/workflows/problem-solving/template.md +3 -3
- package/src/modules/cis/workflows/problem-solving/workflow.yaml +14 -0
- package/src/modules/cis/workflows/storytelling/instructions.md +35 -27
- package/src/modules/cis/workflows/storytelling/template.md +2 -2
- package/src/modules/cis/workflows/storytelling/workflow.yaml +14 -0
- package/src/utility/models/agent-activation-ide.xml +3 -3
- package/src/utility/models/agent-activation-web.xml +60 -0
- package/src/utility/models/agent-in-team-activation.xml +3 -0
- package/src/utility/models/fragments/activation-rules.xml +8 -0
- package/src/utility/models/fragments/activation-steps.xml +15 -0
- package/src/utility/models/fragments/handler-action.xml +4 -0
- package/src/utility/models/fragments/handler-data.xml +5 -0
- package/src/utility/models/fragments/handler-exec.xml +5 -0
- package/src/utility/models/fragments/handler-tmpl.xml +5 -0
- package/src/utility/models/fragments/handler-validate-workflow.xml +7 -0
- package/src/utility/models/fragments/handler-workflow.xml +9 -0
- package/src/utility/models/fragments/menu-handlers.xml +6 -0
- package/src/utility/models/fragments/web-bundle-activation-steps.xml +32 -0
- package/src/utility/templates/agent.customize.template.yaml +42 -0
- package/test/README.md +295 -0
- package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +29 -0
- package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +21 -0
- package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +19 -0
- package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +30 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/metadata/core-agent-with-module.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +24 -0
- package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/metadata/module-agent-missing-module.agent.yaml +25 -0
- package/test/fixtures/agent-schema/invalid/metadata/wrong-module-value.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +26 -0
- package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/persona/principles-as-string.agent.yaml +23 -0
- package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +28 -0
- package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +30 -0
- package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +5 -0
- package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +27 -0
- package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +11 -0
- package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +19 -0
- package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +18 -0
- package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +21 -0
- package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +26 -0
- package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +30 -0
- package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +21 -0
- package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +39 -0
- package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +33 -0
- package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +23 -0
- package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +21 -0
- package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +27 -0
- package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +29 -0
- package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +23 -0
- package/test/test-agent-schema.js +387 -0
- package/test/test-cli-integration.sh +159 -0
- package/test/unit-test-schema.js +133 -0
- package/tools/bmad-npx-wrapper.js +38 -0
- package/tools/cli/README.md +590 -0
- package/tools/cli/bmad-cli.js +0 -2
- package/tools/cli/bundlers/bundle-web.js +24 -2
- package/tools/cli/bundlers/test-bundler.js +1 -1
- package/tools/cli/bundlers/web-bundler.js +639 -40
- package/tools/cli/commands/build.js +458 -0
- package/tools/cli/commands/install.js +49 -8
- package/tools/cli/installers/lib/core/config-collector.js +222 -15
- package/tools/cli/installers/lib/core/dependency-resolver.js +5 -1
- package/tools/cli/installers/lib/core/detector.js +80 -14
- package/tools/cli/installers/lib/core/ide-config-manager.js +152 -0
- package/tools/cli/installers/lib/core/installer.js +1175 -150
- package/tools/cli/installers/lib/core/manifest-generator.js +454 -63
- package/tools/cli/installers/lib/core/manifest.js +95 -43
- package/tools/cli/installers/lib/ide/_base-ide.js +311 -20
- package/tools/cli/installers/lib/ide/auggie.js +92 -27
- package/tools/cli/installers/lib/ide/claude-code.js +132 -308
- package/tools/cli/installers/lib/ide/cline.js +149 -227
- package/tools/cli/installers/lib/ide/codex.js +141 -174
- package/tools/cli/installers/lib/ide/crush.js +109 -37
- package/tools/cli/installers/lib/ide/cursor.js +81 -13
- package/tools/cli/installers/lib/ide/gemini.js +24 -28
- package/tools/cli/installers/lib/ide/github-copilot.js +15 -14
- package/tools/cli/installers/lib/ide/manager.js +26 -35
- package/tools/cli/installers/lib/ide/opencode.js +213 -0
- package/tools/cli/installers/lib/ide/qwen.js +172 -70
- package/tools/cli/installers/lib/ide/shared/bmad-artifacts.js +143 -0
- package/tools/cli/installers/lib/ide/shared/module-injections.js +133 -0
- package/tools/cli/installers/lib/ide/task-tool-command-generator.js +119 -0
- package/tools/cli/installers/lib/ide/trae.js +120 -24
- package/tools/cli/installers/lib/ide/windsurf.js +88 -36
- package/tools/cli/installers/lib/ide/workflow-command-generator.js +119 -46
- package/tools/cli/installers/lib/ide/workflow-command-template.md +7 -3
- package/tools/cli/installers/lib/modules/manager.js +123 -7
- package/tools/cli/lib/activation-builder.js +168 -0
- package/tools/cli/lib/agent-analyzer.js +81 -0
- package/tools/cli/lib/agent-party-generator.js +3 -3
- package/tools/cli/lib/ui.js +78 -3
- package/tools/cli/lib/xml-handler.js +46 -1
- package/tools/cli/lib/yaml-xml-builder.js +439 -0
- package/tools/cli/regenerate-manifests.js +1 -1
- package/tools/cli/test-yaml-builder.js +43 -0
- package/tools/format-workflow-md.js +263 -0
- package/tools/platform-codes.yaml +6 -0
- package/tools/schema/agent.js +231 -0
- package/tools/validate-agent-schema.js +110 -0
- package/v6-open-items.md +23 -0
- package/docs/codebase-flattener.md +0 -19
- package/readme.md +0 -216
- package/src/core/agents/bmad-master.md +0 -27
- package/src/core/agents/bmad-web-orchestrator.md +0 -71
- package/src/core/tasks/shard-doc.md +0 -57
- package/src/core/workflows/bmad-init/instructions.md +0 -79
- package/src/core/workflows/bmad-init/workflow.yaml +0 -24
- package/src/modules/bmb/_module-installer/install-menu-config.yaml +0 -16
- package/src/modules/bmb/agents/bmad-builder.md +0 -30
- package/src/modules/bmb/workflows/create-module/installer-templates/install-module-config.yaml +0 -132
- package/src/modules/bmm/_module-installer/install-menu-config.yaml +0 -49
- package/src/modules/bmm/agents/analyst.md +0 -26
- package/src/modules/bmm/agents/architect.md +0 -29
- package/src/modules/bmm/agents/dev.md +0 -61
- package/src/modules/bmm/agents/game-architect.md +0 -26
- package/src/modules/bmm/agents/game-designer.md +0 -27
- package/src/modules/bmm/agents/game-dev.md +0 -28
- package/src/modules/bmm/agents/pm.md +0 -26
- package/src/modules/bmm/agents/po.md +0 -25
- package/src/modules/bmm/agents/sm.md +0 -29
- package/src/modules/bmm/agents/tea.md +0 -32
- package/src/modules/bmm/agents/ux-expert.md +0 -24
- package/src/modules/bmm/teams/team-all.yaml +0 -7
- package/src/modules/bmm/teams/team-dev.yaml +0 -14
- package/src/modules/bmm/testarch/atdd.md +0 -40
- package/src/modules/bmm/testarch/automate.md +0 -38
- package/src/modules/bmm/testarch/ci.md +0 -39
- package/src/modules/bmm/testarch/framework.md +0 -41
- package/src/modules/bmm/testarch/nfr-assess.md +0 -38
- package/src/modules/bmm/testarch/risk-profile.md +0 -38
- package/src/modules/bmm/testarch/tea-commands.csv +0 -11
- package/src/modules/bmm/testarch/tea-gate.md +0 -38
- package/src/modules/bmm/testarch/tea-knowledge.md +0 -275
- package/src/modules/bmm/testarch/test-design.md +0 -39
- package/src/modules/bmm/testarch/test-levels-framework.md +0 -148
- package/src/modules/bmm/testarch/test-priorities-matrix.md +0 -174
- package/src/modules/bmm/testarch/trace-requirements.md +0 -38
- package/src/modules/bmm/workflows/2-plan/README.md +0 -203
- package/src/modules/bmm/workflows/2-plan/checklist.md +0 -369
- package/src/modules/bmm/workflows/2-plan/gdd/instructions-gdd.md +0 -480
- package/src/modules/bmm/workflows/2-plan/instructions-router.md +0 -222
- package/src/modules/bmm/workflows/2-plan/prd/analysis-template.md +0 -53
- package/src/modules/bmm/workflows/2-plan/prd/epics-template.md +0 -18
- package/src/modules/bmm/workflows/2-plan/prd/instructions-lg.md +0 -267
- package/src/modules/bmm/workflows/2-plan/prd/instructions-med.md +0 -251
- package/src/modules/bmm/workflows/2-plan/prd/prd-template.md +0 -73
- package/src/modules/bmm/workflows/2-plan/tech-spec/instructions-sm.md +0 -137
- package/src/modules/bmm/workflows/2-plan/ux/instructions-ux.md +0 -360
- package/src/modules/bmm/workflows/2-plan/ux/ux-spec-template.md +0 -162
- package/src/modules/bmm/workflows/2-plan/workflow.yaml +0 -60
- package/src/modules/bmm/workflows/3-solutioning/ADR-template.md +0 -74
- package/src/modules/bmm/workflows/3-solutioning/checklist.md +0 -170
- package/src/modules/bmm/workflows/3-solutioning/instructions.md +0 -661
- package/src/modules/bmm/workflows/3-solutioning/project-types/backend-questions.md +0 -490
- package/src/modules/bmm/workflows/3-solutioning/project-types/cli-questions.md +0 -337
- package/src/modules/bmm/workflows/3-solutioning/project-types/data-questions.md +0 -472
- package/src/modules/bmm/workflows/3-solutioning/project-types/desktop-questions.md +0 -299
- package/src/modules/bmm/workflows/3-solutioning/project-types/embedded-questions.md +0 -118
- package/src/modules/bmm/workflows/3-solutioning/project-types/extension-questions.md +0 -374
- package/src/modules/bmm/workflows/3-solutioning/project-types/game-questions.md +0 -133
- package/src/modules/bmm/workflows/3-solutioning/project-types/infra-questions.md +0 -484
- package/src/modules/bmm/workflows/3-solutioning/project-types/library-questions.md +0 -146
- package/src/modules/bmm/workflows/3-solutioning/project-types/mobile-questions.md +0 -110
- package/src/modules/bmm/workflows/3-solutioning/project-types/project-types.csv +0 -12
- package/src/modules/bmm/workflows/3-solutioning/project-types/web-questions.md +0 -136
- package/src/modules/bmm/workflows/3-solutioning/tech-spec/instructions.md +0 -73
- package/src/modules/bmm/workflows/3-solutioning/tech-spec/workflow.yaml +0 -51
- package/src/modules/bmm/workflows/3-solutioning/templates/backend-service-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/cli-tool-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/data-pipeline-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/desktop-app-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/embedded-firmware-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-architecture.md +0 -244
- package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-godot-guide.md +0 -428
- package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-unity-guide.md +0 -333
- package/src/modules/bmm/workflows/3-solutioning/templates/game-engine-web-guide.md +0 -528
- package/src/modules/bmm/workflows/3-solutioning/templates/infrastructure-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/library-package-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/mobile-app-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/registry.csv +0 -172
- package/src/modules/bmm/workflows/3-solutioning/templates/web-api-architecture.md +0 -66
- package/src/modules/bmm/workflows/3-solutioning/templates/web-fullstack-architecture.md +0 -277
- package/src/modules/bmm/workflows/3-solutioning/workflow.yaml +0 -65
- package/src/modules/bmm/workflows/4-implementation/review-story/instructions.md +0 -176
- package/src/modules/bmm/workflows/4-implementation/review-story/workflow.yaml +0 -99
- package/src/modules/cis/agents/brainstorming-coach.md +0 -24
- package/src/modules/cis/agents/creative-problem-solver.md +0 -24
- package/src/modules/cis/agents/design-thinking-coach.md +0 -24
- package/src/modules/cis/agents/innovation-strategist.md +0 -24
- package/src/modules/cis/agents/storyteller.md +0 -24
- package/tools/test-agents/captain-kirk-commander.md +0 -110
- package/tools/test-agents/data-operations-android.md +0 -123
- package/tools/test-agents/geordi-chief-engineer.md +0 -135
- package/tools/test-agents/isabella-martinez-ethicist.md +0 -109
- package/tools/test-agents/marcus-thompson-security.md +0 -109
- package/tools/test-agents/maya-patel-pragmatist.md +0 -82
- package/tools/test-agents/picard-diplomat-captain.md +0 -134
- package/tools/test-agents/spock-science-officer.md +0 -124
- package/tools/test-agents/william-smithers-technocrat.md +0 -71
- package/tools/test-agents/zara-chen-designer.md +0 -94
- /package/{src/modules/cis → bmad/core}/workflows/brainstorming/brain-methods.csv +0 -0
- /package/src/modules/bmm/_module-installer/assets/{technical-decisions-template.md → technical-decisions.md} +0 -0
- /package/src/modules/bmm/sub-modules/claude-code/sub-agents/{requirements-analyst.md → bmad-planning/requirements-analyst.md} +0 -0
- /package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/metroidvania.md +0 -0
- /package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types/puzzle.md +0 -0
- /package/src/modules/bmm/workflows/{2-plan → 2-plan-workflows}/gdd/game-types.csv +0 -0
- /package/src/modules/bmm/workflows/4-implementation/{review-story → code-review}/backlog_template.md +0 -0
- /package/src/modules/bmm/workflows/4-implementation/{review-story → code-review}/checklist.md +0 -0
- /package/src/modules/cis/_module-installer/{install-menu-config.yaml → install-config.yaml} +0 -0
|
@@ -0,0 +1,340 @@
|
|
|
1
|
+
# Test Framework Setup Workflow
|
|
2
|
+
|
|
3
|
+
Initializes a production-ready test framework architecture (Playwright or Cypress) with fixtures, helpers, configuration, and industry best practices. This workflow scaffolds the complete testing infrastructure for modern web applications, providing a robust foundation for test automation.
|
|
4
|
+
|
|
5
|
+
## Usage
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
bmad tea *framework
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
The TEA agent runs this workflow when:
|
|
12
|
+
|
|
13
|
+
- Starting a new project that needs test infrastructure
|
|
14
|
+
- Migrating from an older testing approach
|
|
15
|
+
- Setting up testing from scratch
|
|
16
|
+
- Standardizing test architecture across teams
|
|
17
|
+
|
|
18
|
+
## Inputs
|
|
19
|
+
|
|
20
|
+
**Required Context Files:**
|
|
21
|
+
|
|
22
|
+
- **package.json**: Project dependencies and scripts to detect project type and bundler
|
|
23
|
+
|
|
24
|
+
**Optional Context Files:**
|
|
25
|
+
|
|
26
|
+
- **Architecture docs** (architecture.md, tech-spec.md): Informs framework configuration decisions
|
|
27
|
+
- **Existing tests**: Detects current framework to avoid conflicts
|
|
28
|
+
|
|
29
|
+
**Workflow Variables:**
|
|
30
|
+
|
|
31
|
+
- `test_framework`: Auto-detected (playwright/cypress) or manually specified
|
|
32
|
+
- `project_type`: Auto-detected from package.json (react/vue/angular/next/node)
|
|
33
|
+
- `bundler`: Auto-detected from package.json (vite/webpack/rollup/esbuild)
|
|
34
|
+
- `test_dir`: Root test directory (default: `{project-root}/tests`)
|
|
35
|
+
- `use_typescript`: Prefer TypeScript configuration (default: true)
|
|
36
|
+
- `framework_preference`: Auto-detection or force specific framework (default: "auto")
|
|
37
|
+
|
|
38
|
+
## Outputs
|
|
39
|
+
|
|
40
|
+
**Primary Deliverables:**
|
|
41
|
+
|
|
42
|
+
1. **Configuration File**
|
|
43
|
+
- `playwright.config.ts` or `cypress.config.ts` with production-ready settings
|
|
44
|
+
- Timeouts: action 15s, navigation 30s, test 60s
|
|
45
|
+
- Reporters: HTML + JUnit XML
|
|
46
|
+
- Failure-only artifacts (traces, screenshots, videos)
|
|
47
|
+
|
|
48
|
+
2. **Directory Structure**
|
|
49
|
+
|
|
50
|
+
```
|
|
51
|
+
tests/
|
|
52
|
+
├── e2e/ # Test files (organize as needed)
|
|
53
|
+
├── support/ # Framework infrastructure (key pattern)
|
|
54
|
+
│ ├── fixtures/ # Test fixtures with auto-cleanup
|
|
55
|
+
│ │ ├── index.ts # Fixture merging
|
|
56
|
+
│ │ └── factories/ # Data factories (faker-based)
|
|
57
|
+
│ ├── helpers/ # Utility functions
|
|
58
|
+
│ └── page-objects/ # Page object models (optional)
|
|
59
|
+
└── README.md # Setup and usage guide
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**Note**: Test organization (e2e/, api/, integration/, etc.) is flexible. The **support/** folder contains reusable fixtures, helpers, and factories - the core framework pattern.
|
|
63
|
+
|
|
64
|
+
3. **Environment Configuration**
|
|
65
|
+
- `.env.example` with `TEST_ENV`, `BASE_URL`, `API_URL`, auth credentials
|
|
66
|
+
- `.nvmrc` with Node version (LTS)
|
|
67
|
+
|
|
68
|
+
4. **Test Infrastructure**
|
|
69
|
+
- Fixture architecture using `mergeTests` pattern
|
|
70
|
+
- Data factories with auto-cleanup (faker-based)
|
|
71
|
+
- Sample tests demonstrating best practices
|
|
72
|
+
- Helper utilities for common operations
|
|
73
|
+
|
|
74
|
+
5. **Documentation**
|
|
75
|
+
- `tests/README.md` with comprehensive setup instructions
|
|
76
|
+
- Inline comments explaining configuration choices
|
|
77
|
+
- References to TEA knowledge base
|
|
78
|
+
|
|
79
|
+
**Secondary Deliverables:**
|
|
80
|
+
|
|
81
|
+
- Updated `package.json` with minimal test script (`test:e2e`)
|
|
82
|
+
- Sample test demonstrating fixture usage
|
|
83
|
+
- Network-first testing patterns
|
|
84
|
+
- Selector strategy guidance (data-testid)
|
|
85
|
+
|
|
86
|
+
**Validation Safeguards:**
|
|
87
|
+
|
|
88
|
+
- ✅ No existing framework detected (prevents conflicts)
|
|
89
|
+
- ✅ package.json exists and is valid
|
|
90
|
+
- ✅ Framework auto-detection successful or explicit choice provided
|
|
91
|
+
- ✅ Sample test runs successfully
|
|
92
|
+
- ✅ All generated files are syntactically correct
|
|
93
|
+
|
|
94
|
+
## Key Features
|
|
95
|
+
|
|
96
|
+
### Smart Framework Selection
|
|
97
|
+
|
|
98
|
+
- **Auto-detection logic** based on project characteristics:
|
|
99
|
+
- **Playwright** recommended for: Large repos (100+ files), performance-critical apps, multi-browser support, complex debugging needs
|
|
100
|
+
- **Cypress** recommended for: Small teams prioritizing DX, component testing focus, real-time test development
|
|
101
|
+
- Falls back to Playwright as default if uncertain
|
|
102
|
+
|
|
103
|
+
### Production-Ready Patterns
|
|
104
|
+
|
|
105
|
+
- **Fixture Architecture**: Pure function → fixture → `mergeTests` composition pattern
|
|
106
|
+
- **Auto-Cleanup**: Fixtures automatically clean up test data in teardown
|
|
107
|
+
- **Network-First**: Route interception before navigation to prevent race conditions
|
|
108
|
+
- **Failure-Only Artifacts**: Screenshots/videos/traces only captured on failure to reduce storage
|
|
109
|
+
- **Parallel Execution**: Configured for optimal CI performance
|
|
110
|
+
|
|
111
|
+
### Industry Best Practices
|
|
112
|
+
|
|
113
|
+
- **Selector Strategy**: Prescriptive guidance on `data-testid` attributes
|
|
114
|
+
- **Data Factories**: Faker-based factories for realistic test data
|
|
115
|
+
- **Contract Testing**: Recommends Pact for microservices architectures
|
|
116
|
+
- **Error Handling**: Comprehensive timeout and retry configuration
|
|
117
|
+
- **Reporting**: Multiple reporter formats (HTML, JUnit, console)
|
|
118
|
+
|
|
119
|
+
### Knowledge Base Integration
|
|
120
|
+
|
|
121
|
+
Automatically consults TEA knowledge base:
|
|
122
|
+
|
|
123
|
+
- `fixture-architecture.md` - Pure function → fixture → mergeTests pattern
|
|
124
|
+
- `data-factories.md` - Faker-based factories with auto-cleanup
|
|
125
|
+
- `network-first.md` - Network interception before navigation
|
|
126
|
+
- `playwright-config.md` - Playwright-specific best practices
|
|
127
|
+
- `test-config.md` - General configuration guidelines
|
|
128
|
+
|
|
129
|
+
## Integration with Other Workflows
|
|
130
|
+
|
|
131
|
+
**Before framework:**
|
|
132
|
+
|
|
133
|
+
- **prd** (Phase 2): Determines project scope and testing needs
|
|
134
|
+
- **workflow-status**: Verifies project readiness
|
|
135
|
+
|
|
136
|
+
**After framework:**
|
|
137
|
+
|
|
138
|
+
- **ci**: Scaffold CI/CD pipeline using framework configuration
|
|
139
|
+
- **test-design**: Plan test coverage strategy for the project
|
|
140
|
+
- **atdd**: Generate failing acceptance tests using the framework
|
|
141
|
+
|
|
142
|
+
**Coordinates with:**
|
|
143
|
+
|
|
144
|
+
- **architecture** (Phase 3): Aligns test structure with system architecture
|
|
145
|
+
- **tech-spec**: Uses technical specifications to inform test configuration
|
|
146
|
+
|
|
147
|
+
**Updates:**
|
|
148
|
+
|
|
149
|
+
- `bmm-workflow-status.md`: Adds framework initialization to Quality & Testing Progress section
|
|
150
|
+
|
|
151
|
+
## Important Notes
|
|
152
|
+
|
|
153
|
+
### Preflight Checks
|
|
154
|
+
|
|
155
|
+
**Critical requirements** verified before scaffolding:
|
|
156
|
+
|
|
157
|
+
- package.json exists in project root
|
|
158
|
+
- No modern E2E framework already configured
|
|
159
|
+
- Architecture/stack context available
|
|
160
|
+
|
|
161
|
+
If any check fails, workflow **HALTS** and notifies user.
|
|
162
|
+
|
|
163
|
+
### Framework-Specific Guidance
|
|
164
|
+
|
|
165
|
+
**Playwright Advantages:**
|
|
166
|
+
|
|
167
|
+
- Worker parallelism (significantly faster for large suites)
|
|
168
|
+
- Trace viewer (powerful debugging with screenshots, network, console logs)
|
|
169
|
+
- Multi-language support (TypeScript, JavaScript, Python, C#, Java)
|
|
170
|
+
- Built-in API testing capabilities
|
|
171
|
+
- Better handling of multiple browser contexts
|
|
172
|
+
|
|
173
|
+
**Cypress Advantages:**
|
|
174
|
+
|
|
175
|
+
- Superior developer experience (real-time reloading)
|
|
176
|
+
- Excellent for component testing
|
|
177
|
+
- Simpler setup for small teams
|
|
178
|
+
- Better suited for watch mode during development
|
|
179
|
+
|
|
180
|
+
**Avoid Cypress when:**
|
|
181
|
+
|
|
182
|
+
- API chains are heavy and complex
|
|
183
|
+
- Multi-tab/window scenarios are common
|
|
184
|
+
- Worker parallelism is critical for CI performance
|
|
185
|
+
|
|
186
|
+
### Selector Strategy
|
|
187
|
+
|
|
188
|
+
**Always recommend:**
|
|
189
|
+
|
|
190
|
+
- `data-testid` attributes for UI elements (framework-agnostic)
|
|
191
|
+
- `data-cy` attributes if Cypress is chosen (Cypress-specific)
|
|
192
|
+
- Avoid brittle CSS selectors or XPath
|
|
193
|
+
|
|
194
|
+
### Standalone Operation
|
|
195
|
+
|
|
196
|
+
This workflow operates independently:
|
|
197
|
+
|
|
198
|
+
- **No story required**: Can be run at project initialization
|
|
199
|
+
- **No epic context needed**: Works for greenfield and brownfield projects
|
|
200
|
+
- **Autonomous**: Auto-detects configuration and proceeds without user input
|
|
201
|
+
|
|
202
|
+
### Output Summary Format
|
|
203
|
+
|
|
204
|
+
After completion, provides structured summary:
|
|
205
|
+
|
|
206
|
+
```markdown
|
|
207
|
+
## Framework Scaffold Complete
|
|
208
|
+
|
|
209
|
+
**Framework Selected**: Playwright (or Cypress)
|
|
210
|
+
|
|
211
|
+
**Artifacts Created**:
|
|
212
|
+
|
|
213
|
+
- ✅ Configuration file: playwright.config.ts
|
|
214
|
+
- ✅ Directory structure: tests/e2e/, tests/support/
|
|
215
|
+
- ✅ Environment config: .env.example
|
|
216
|
+
- ✅ Node version: .nvmrc
|
|
217
|
+
- ✅ Fixture architecture: tests/support/fixtures/
|
|
218
|
+
- ✅ Data factories: tests/support/fixtures/factories/
|
|
219
|
+
- ✅ Sample tests: tests/e2e/example.spec.ts
|
|
220
|
+
- ✅ Documentation: tests/README.md
|
|
221
|
+
|
|
222
|
+
**Next Steps**:
|
|
223
|
+
|
|
224
|
+
1. Copy .env.example to .env and fill in environment variables
|
|
225
|
+
2. Run npm install to install test dependencies
|
|
226
|
+
3. Run npm run test:e2e to execute sample tests
|
|
227
|
+
4. Review tests/README.md for detailed setup instructions
|
|
228
|
+
|
|
229
|
+
**Knowledge Base References Applied**:
|
|
230
|
+
|
|
231
|
+
- Fixture architecture pattern (pure functions + mergeTests)
|
|
232
|
+
- Data factories with auto-cleanup (faker-based)
|
|
233
|
+
- Network-first testing safeguards
|
|
234
|
+
- Failure-only artifact capture
|
|
235
|
+
```
|
|
236
|
+
|
|
237
|
+
## Validation Checklist
|
|
238
|
+
|
|
239
|
+
After workflow completion, verify:
|
|
240
|
+
|
|
241
|
+
- [ ] Configuration file created and syntactically valid
|
|
242
|
+
- [ ] Directory structure exists with all folders
|
|
243
|
+
- [ ] Environment configuration generated (.env.example, .nvmrc)
|
|
244
|
+
- [ ] Sample tests run successfully (npm run test:e2e)
|
|
245
|
+
- [ ] Documentation complete and accurate (tests/README.md)
|
|
246
|
+
- [ ] No errors or warnings during scaffold
|
|
247
|
+
- [ ] package.json scripts updated correctly
|
|
248
|
+
- [ ] Fixtures and factories follow patterns from knowledge base
|
|
249
|
+
|
|
250
|
+
Refer to `checklist.md` for comprehensive validation criteria.
|
|
251
|
+
|
|
252
|
+
## Example Execution
|
|
253
|
+
|
|
254
|
+
**Scenario 1: New React + Vite project**
|
|
255
|
+
|
|
256
|
+
```bash
|
|
257
|
+
# User runs framework workflow
|
|
258
|
+
bmad tea *framework
|
|
259
|
+
|
|
260
|
+
# TEA detects:
|
|
261
|
+
# - React project (from package.json)
|
|
262
|
+
# - Vite bundler
|
|
263
|
+
# - No existing test framework
|
|
264
|
+
# - 150+ files (recommends Playwright)
|
|
265
|
+
|
|
266
|
+
# TEA scaffolds:
|
|
267
|
+
# - playwright.config.ts with Vite detection
|
|
268
|
+
# - Component testing configuration
|
|
269
|
+
# - React Testing Library helpers
|
|
270
|
+
# - Sample component + E2E tests
|
|
271
|
+
```
|
|
272
|
+
|
|
273
|
+
**Scenario 2: Existing Node.js API project**
|
|
274
|
+
|
|
275
|
+
```bash
|
|
276
|
+
# User runs framework workflow
|
|
277
|
+
bmad tea *framework
|
|
278
|
+
|
|
279
|
+
# TEA detects:
|
|
280
|
+
# - Node.js backend (no frontend framework)
|
|
281
|
+
# - Express framework
|
|
282
|
+
# - Small project (50 files)
|
|
283
|
+
# - API endpoints in routes/
|
|
284
|
+
|
|
285
|
+
# TEA scaffolds:
|
|
286
|
+
# - playwright.config.ts focused on API testing
|
|
287
|
+
# - tests/api/ directory structure
|
|
288
|
+
# - API helper utilities
|
|
289
|
+
# - Sample API tests with auth
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
**Scenario 3: Cypress preferred (explicit)**
|
|
293
|
+
|
|
294
|
+
```bash
|
|
295
|
+
# User sets framework preference
|
|
296
|
+
# (in workflow config: framework_preference: "cypress")
|
|
297
|
+
|
|
298
|
+
bmad tea *framework
|
|
299
|
+
|
|
300
|
+
# TEA scaffolds:
|
|
301
|
+
# - cypress.config.ts
|
|
302
|
+
# - tests/e2e/ with Cypress patterns
|
|
303
|
+
# - Cypress-specific commands
|
|
304
|
+
# - data-cy selector strategy
|
|
305
|
+
```
|
|
306
|
+
|
|
307
|
+
## Troubleshooting
|
|
308
|
+
|
|
309
|
+
**Issue: "Existing test framework detected"**
|
|
310
|
+
|
|
311
|
+
- **Cause**: playwright.config._ or cypress.config._ already exists
|
|
312
|
+
- **Solution**: Use `upgrade-framework` workflow (TBD) or manually remove existing config
|
|
313
|
+
|
|
314
|
+
**Issue: "Cannot detect project type"**
|
|
315
|
+
|
|
316
|
+
- **Cause**: package.json missing or malformed
|
|
317
|
+
- **Solution**: Ensure package.json exists and has valid dependencies
|
|
318
|
+
|
|
319
|
+
**Issue: "Sample test fails to run"**
|
|
320
|
+
|
|
321
|
+
- **Cause**: Missing dependencies or incorrect BASE_URL
|
|
322
|
+
- **Solution**: Run `npm install` and configure `.env` with correct URLs
|
|
323
|
+
|
|
324
|
+
**Issue: "TypeScript compilation errors"**
|
|
325
|
+
|
|
326
|
+
- **Cause**: Missing @types packages or tsconfig misconfiguration
|
|
327
|
+
- **Solution**: Ensure TypeScript and type definitions are installed
|
|
328
|
+
|
|
329
|
+
## Related Workflows
|
|
330
|
+
|
|
331
|
+
- **ci**: Scaffold CI/CD pipeline → [ci/README.md](../ci/README.md)
|
|
332
|
+
- **test-design**: Plan test coverage → [test-design/README.md](../test-design/README.md)
|
|
333
|
+
- **atdd**: Generate acceptance tests → [atdd/README.md](../atdd/README.md)
|
|
334
|
+
- **automate**: Expand regression suite → [automate/README.md](../automate/README.md)
|
|
335
|
+
|
|
336
|
+
## Version History
|
|
337
|
+
|
|
338
|
+
- **v4.0 (BMad v6)**: Pure markdown instructions, enhanced workflow.yaml, comprehensive README
|
|
339
|
+
- **v3.x**: XML format instructions
|
|
340
|
+
- **v2.x**: Legacy task-based approach
|
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
# Test Framework Setup - Validation Checklist
|
|
2
|
+
|
|
3
|
+
This checklist ensures the framework workflow completes successfully and all deliverables meet quality standards.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Prerequisites
|
|
8
|
+
|
|
9
|
+
Before starting the workflow:
|
|
10
|
+
|
|
11
|
+
- [ ] Project root contains valid `package.json`
|
|
12
|
+
- [ ] No existing modern E2E framework detected (`playwright.config.*`, `cypress.config.*`)
|
|
13
|
+
- [ ] Project type identifiable (React, Vue, Angular, Next.js, Node, etc.)
|
|
14
|
+
- [ ] Bundler identifiable (Vite, Webpack, Rollup, esbuild) or not applicable
|
|
15
|
+
- [ ] User has write permissions to create directories and files
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## Process Steps
|
|
20
|
+
|
|
21
|
+
### Step 1: Preflight Checks
|
|
22
|
+
|
|
23
|
+
- [ ] package.json successfully read and parsed
|
|
24
|
+
- [ ] Project type extracted correctly
|
|
25
|
+
- [ ] Bundler identified (or marked as N/A for backend projects)
|
|
26
|
+
- [ ] No framework conflicts detected
|
|
27
|
+
- [ ] Architecture documents located (if available)
|
|
28
|
+
|
|
29
|
+
### Step 2: Framework Selection
|
|
30
|
+
|
|
31
|
+
- [ ] Framework auto-detection logic executed
|
|
32
|
+
- [ ] Framework choice justified (Playwright vs Cypress)
|
|
33
|
+
- [ ] Framework preference respected (if explicitly set)
|
|
34
|
+
- [ ] User notified of framework selection and rationale
|
|
35
|
+
|
|
36
|
+
### Step 3: Directory Structure
|
|
37
|
+
|
|
38
|
+
- [ ] `tests/` root directory created
|
|
39
|
+
- [ ] `tests/e2e/` directory created (or user's preferred structure)
|
|
40
|
+
- [ ] `tests/support/` directory created (critical pattern)
|
|
41
|
+
- [ ] `tests/support/fixtures/` directory created
|
|
42
|
+
- [ ] `tests/support/fixtures/factories/` directory created
|
|
43
|
+
- [ ] `tests/support/helpers/` directory created
|
|
44
|
+
- [ ] `tests/support/page-objects/` directory created (if applicable)
|
|
45
|
+
- [ ] All directories have correct permissions
|
|
46
|
+
|
|
47
|
+
**Note**: Test organization is flexible (e2e/, api/, integration/). The **support/** folder is the key pattern.
|
|
48
|
+
|
|
49
|
+
### Step 4: Configuration Files
|
|
50
|
+
|
|
51
|
+
- [ ] Framework config file created (`playwright.config.ts` or `cypress.config.ts`)
|
|
52
|
+
- [ ] Config file uses TypeScript (if `use_typescript: true`)
|
|
53
|
+
- [ ] Timeouts configured correctly (action: 15s, navigation: 30s, test: 60s)
|
|
54
|
+
- [ ] Base URL configured with environment variable fallback
|
|
55
|
+
- [ ] Trace/screenshot/video set to retain-on-failure
|
|
56
|
+
- [ ] Multiple reporters configured (HTML + JUnit + console)
|
|
57
|
+
- [ ] Parallel execution enabled
|
|
58
|
+
- [ ] CI-specific settings configured (retries, workers)
|
|
59
|
+
- [ ] Config file is syntactically valid (no compilation errors)
|
|
60
|
+
|
|
61
|
+
### Step 5: Environment Configuration
|
|
62
|
+
|
|
63
|
+
- [ ] `.env.example` created in project root
|
|
64
|
+
- [ ] `TEST_ENV` variable defined
|
|
65
|
+
- [ ] `BASE_URL` variable defined with default
|
|
66
|
+
- [ ] `API_URL` variable defined (if applicable)
|
|
67
|
+
- [ ] Authentication variables defined (if applicable)
|
|
68
|
+
- [ ] Feature flag variables defined (if applicable)
|
|
69
|
+
- [ ] `.nvmrc` created with appropriate Node version
|
|
70
|
+
|
|
71
|
+
### Step 6: Fixture Architecture
|
|
72
|
+
|
|
73
|
+
- [ ] `tests/support/fixtures/index.ts` created
|
|
74
|
+
- [ ] Base fixture extended from Playwright/Cypress
|
|
75
|
+
- [ ] Type definitions for fixtures created
|
|
76
|
+
- [ ] mergeTests pattern implemented (if multiple fixtures)
|
|
77
|
+
- [ ] Auto-cleanup logic included in fixtures
|
|
78
|
+
- [ ] Fixture architecture follows knowledge base patterns
|
|
79
|
+
|
|
80
|
+
### Step 7: Data Factories
|
|
81
|
+
|
|
82
|
+
- [ ] At least one factory created (e.g., UserFactory)
|
|
83
|
+
- [ ] Factories use @faker-js/faker for realistic data
|
|
84
|
+
- [ ] Factories track created entities (for cleanup)
|
|
85
|
+
- [ ] Factories implement `cleanup()` method
|
|
86
|
+
- [ ] Factories integrate with fixtures
|
|
87
|
+
- [ ] Factories follow knowledge base patterns
|
|
88
|
+
|
|
89
|
+
### Step 8: Sample Tests
|
|
90
|
+
|
|
91
|
+
- [ ] Example test file created (`tests/e2e/example.spec.ts`)
|
|
92
|
+
- [ ] Test uses fixture architecture
|
|
93
|
+
- [ ] Test demonstrates data factory usage
|
|
94
|
+
- [ ] Test uses proper selector strategy (data-testid)
|
|
95
|
+
- [ ] Test follows Given-When-Then structure
|
|
96
|
+
- [ ] Test includes proper assertions
|
|
97
|
+
- [ ] Network interception demonstrated (if applicable)
|
|
98
|
+
|
|
99
|
+
### Step 9: Helper Utilities
|
|
100
|
+
|
|
101
|
+
- [ ] API helper created (if API testing needed)
|
|
102
|
+
- [ ] Network helper created (if network mocking needed)
|
|
103
|
+
- [ ] Auth helper created (if authentication needed)
|
|
104
|
+
- [ ] Helpers follow functional patterns
|
|
105
|
+
- [ ] Helpers have proper error handling
|
|
106
|
+
|
|
107
|
+
### Step 10: Documentation
|
|
108
|
+
|
|
109
|
+
- [ ] `tests/README.md` created
|
|
110
|
+
- [ ] Setup instructions included
|
|
111
|
+
- [ ] Running tests section included
|
|
112
|
+
- [ ] Architecture overview section included
|
|
113
|
+
- [ ] Best practices section included
|
|
114
|
+
- [ ] CI integration section included
|
|
115
|
+
- [ ] Knowledge base references included
|
|
116
|
+
- [ ] Troubleshooting section included
|
|
117
|
+
|
|
118
|
+
### Step 11: Package.json Updates
|
|
119
|
+
|
|
120
|
+
- [ ] Minimal test script added to package.json: `test:e2e`
|
|
121
|
+
- [ ] Test framework dependency added (if not already present)
|
|
122
|
+
- [ ] Type definitions added (if TypeScript)
|
|
123
|
+
- [ ] Users can extend with additional scripts as needed
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
## Output Validation
|
|
128
|
+
|
|
129
|
+
### Configuration Validation
|
|
130
|
+
|
|
131
|
+
- [ ] Config file loads without errors
|
|
132
|
+
- [ ] Config file passes linting (if linter configured)
|
|
133
|
+
- [ ] Config file uses correct syntax for chosen framework
|
|
134
|
+
- [ ] All paths in config resolve correctly
|
|
135
|
+
- [ ] Reporter output directories exist or are created on test run
|
|
136
|
+
|
|
137
|
+
### Test Execution Validation
|
|
138
|
+
|
|
139
|
+
- [ ] Sample test runs successfully
|
|
140
|
+
- [ ] Test execution produces expected output (pass/fail)
|
|
141
|
+
- [ ] Test artifacts generated correctly (traces, screenshots, videos)
|
|
142
|
+
- [ ] Test report generated successfully
|
|
143
|
+
- [ ] No console errors or warnings during test run
|
|
144
|
+
|
|
145
|
+
### Directory Structure Validation
|
|
146
|
+
|
|
147
|
+
- [ ] All required directories exist
|
|
148
|
+
- [ ] Directory structure matches framework conventions
|
|
149
|
+
- [ ] No duplicate or conflicting directories
|
|
150
|
+
- [ ] Directories accessible with correct permissions
|
|
151
|
+
|
|
152
|
+
### File Integrity Validation
|
|
153
|
+
|
|
154
|
+
- [ ] All generated files are syntactically correct
|
|
155
|
+
- [ ] No placeholder text left in files (e.g., "TODO", "FIXME")
|
|
156
|
+
- [ ] All imports resolve correctly
|
|
157
|
+
- [ ] No hardcoded credentials or secrets in files
|
|
158
|
+
- [ ] All file paths use correct separators for OS
|
|
159
|
+
|
|
160
|
+
---
|
|
161
|
+
|
|
162
|
+
## Quality Checks
|
|
163
|
+
|
|
164
|
+
### Code Quality
|
|
165
|
+
|
|
166
|
+
- [ ] Generated code follows project coding standards
|
|
167
|
+
- [ ] TypeScript types are complete and accurate (no `any` unless necessary)
|
|
168
|
+
- [ ] No unused imports or variables
|
|
169
|
+
- [ ] Consistent code formatting (matches project style)
|
|
170
|
+
- [ ] No linting errors in generated files
|
|
171
|
+
|
|
172
|
+
### Best Practices Compliance
|
|
173
|
+
|
|
174
|
+
- [ ] Fixture architecture follows pure function → fixture → mergeTests pattern
|
|
175
|
+
- [ ] Data factories implement auto-cleanup
|
|
176
|
+
- [ ] Network interception occurs before navigation
|
|
177
|
+
- [ ] Selectors use data-testid strategy
|
|
178
|
+
- [ ] Artifacts only captured on failure
|
|
179
|
+
- [ ] Tests follow Given-When-Then structure
|
|
180
|
+
- [ ] No hard-coded waits or sleeps
|
|
181
|
+
|
|
182
|
+
### Knowledge Base Alignment
|
|
183
|
+
|
|
184
|
+
- [ ] Fixture pattern matches `fixture-architecture.md`
|
|
185
|
+
- [ ] Data factories match `data-factories.md`
|
|
186
|
+
- [ ] Network handling matches `network-first.md`
|
|
187
|
+
- [ ] Config follows `playwright-config.md` or `test-config.md`
|
|
188
|
+
- [ ] Test quality matches `test-quality.md`
|
|
189
|
+
|
|
190
|
+
### Security Checks
|
|
191
|
+
|
|
192
|
+
- [ ] No credentials in configuration files
|
|
193
|
+
- [ ] .env.example contains placeholders, not real values
|
|
194
|
+
- [ ] Sensitive test data handled securely
|
|
195
|
+
- [ ] API keys and tokens use environment variables
|
|
196
|
+
- [ ] No secrets committed to version control
|
|
197
|
+
|
|
198
|
+
---
|
|
199
|
+
|
|
200
|
+
## Integration Points
|
|
201
|
+
|
|
202
|
+
### Status File Integration
|
|
203
|
+
|
|
204
|
+
- [ ] `bmm-workflow-status.md` exists
|
|
205
|
+
- [ ] Framework initialization logged in Quality & Testing Progress section
|
|
206
|
+
- [ ] Status file updated with completion timestamp
|
|
207
|
+
- [ ] Status file shows framework: Playwright or Cypress
|
|
208
|
+
|
|
209
|
+
### Knowledge Base Integration
|
|
210
|
+
|
|
211
|
+
- [ ] Relevant knowledge fragments identified from tea-index.csv
|
|
212
|
+
- [ ] Knowledge fragments successfully loaded
|
|
213
|
+
- [ ] Patterns from knowledge base applied correctly
|
|
214
|
+
- [ ] Knowledge base references included in documentation
|
|
215
|
+
|
|
216
|
+
### Workflow Dependencies
|
|
217
|
+
|
|
218
|
+
- [ ] Can proceed to `ci` workflow after completion
|
|
219
|
+
- [ ] Can proceed to `test-design` workflow after completion
|
|
220
|
+
- [ ] Can proceed to `atdd` workflow after completion
|
|
221
|
+
- [ ] Framework setup compatible with downstream workflows
|
|
222
|
+
|
|
223
|
+
---
|
|
224
|
+
|
|
225
|
+
## Completion Criteria
|
|
226
|
+
|
|
227
|
+
**All of the following must be true:**
|
|
228
|
+
|
|
229
|
+
- [ ] All prerequisite checks passed
|
|
230
|
+
- [ ] All process steps completed without errors
|
|
231
|
+
- [ ] All output validations passed
|
|
232
|
+
- [ ] All quality checks passed
|
|
233
|
+
- [ ] All integration points verified
|
|
234
|
+
- [ ] Sample test executes successfully
|
|
235
|
+
- [ ] User can run `npm run test:e2e` without errors
|
|
236
|
+
- [ ] Documentation is complete and accurate
|
|
237
|
+
- [ ] No critical issues or blockers identified
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
## Post-Workflow Actions
|
|
242
|
+
|
|
243
|
+
**User must complete:**
|
|
244
|
+
|
|
245
|
+
1. [ ] Copy `.env.example` to `.env`
|
|
246
|
+
2. [ ] Fill in environment-specific values in `.env`
|
|
247
|
+
3. [ ] Run `npm install` to install test dependencies
|
|
248
|
+
4. [ ] Run `npm run test:e2e` to verify setup
|
|
249
|
+
5. [ ] Review `tests/README.md` for project-specific guidance
|
|
250
|
+
|
|
251
|
+
**Recommended next workflows:**
|
|
252
|
+
|
|
253
|
+
1. [ ] Run `ci` workflow to set up CI/CD pipeline
|
|
254
|
+
2. [ ] Run `test-design` workflow to plan test coverage
|
|
255
|
+
3. [ ] Run `atdd` workflow when ready to develop stories
|
|
256
|
+
|
|
257
|
+
---
|
|
258
|
+
|
|
259
|
+
## Rollback Procedure
|
|
260
|
+
|
|
261
|
+
If workflow fails and needs to be rolled back:
|
|
262
|
+
|
|
263
|
+
1. [ ] Delete `tests/` directory
|
|
264
|
+
2. [ ] Remove test scripts from package.json
|
|
265
|
+
3. [ ] Delete `.env.example` (if created)
|
|
266
|
+
4. [ ] Delete `.nvmrc` (if created)
|
|
267
|
+
5. [ ] Delete framework config file
|
|
268
|
+
6. [ ] Remove test dependencies from package.json (if added)
|
|
269
|
+
7. [ ] Run `npm install` to clean up node_modules
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
## Notes
|
|
274
|
+
|
|
275
|
+
### Common Issues
|
|
276
|
+
|
|
277
|
+
**Issue**: Config file has TypeScript errors
|
|
278
|
+
|
|
279
|
+
- **Solution**: Ensure `@playwright/test` or `cypress` types are installed
|
|
280
|
+
|
|
281
|
+
**Issue**: Sample test fails to run
|
|
282
|
+
|
|
283
|
+
- **Solution**: Check BASE_URL in .env, ensure app is running
|
|
284
|
+
|
|
285
|
+
**Issue**: Fixture cleanup not working
|
|
286
|
+
|
|
287
|
+
- **Solution**: Verify cleanup() is called in fixture teardown
|
|
288
|
+
|
|
289
|
+
**Issue**: Network interception not working
|
|
290
|
+
|
|
291
|
+
- **Solution**: Ensure route setup occurs before page.goto()
|
|
292
|
+
|
|
293
|
+
### Framework-Specific Considerations
|
|
294
|
+
|
|
295
|
+
**Playwright:**
|
|
296
|
+
|
|
297
|
+
- Requires Node.js 18+
|
|
298
|
+
- Browser binaries auto-installed on first run
|
|
299
|
+
- Trace viewer requires running `npx playwright show-trace`
|
|
300
|
+
|
|
301
|
+
**Cypress:**
|
|
302
|
+
|
|
303
|
+
- Requires Node.js 18+
|
|
304
|
+
- Cypress app opens on first run
|
|
305
|
+
- Component testing requires additional setup
|
|
306
|
+
|
|
307
|
+
### Version Compatibility
|
|
308
|
+
|
|
309
|
+
- [ ] Node.js version matches .nvmrc
|
|
310
|
+
- [ ] Framework version compatible with Node.js version
|
|
311
|
+
- [ ] TypeScript version compatible with framework
|
|
312
|
+
- [ ] All peer dependencies satisfied
|
|
313
|
+
|
|
314
|
+
---
|
|
315
|
+
|
|
316
|
+
**Checklist Complete**: Sign off when all items checked and validated.
|
|
317
|
+
|
|
318
|
+
**Completed by:** **\*\***\_\_\_**\*\***
|
|
319
|
+
**Date:** **\*\***\_\_\_**\*\***
|
|
320
|
+
**Framework:** **\*\***\_\_\_**\*\*** (Playwright / Cypress)
|
|
321
|
+
**Notes:** \***\*\*\*\*\***\*\*\***\*\*\*\*\***\_\_\_\***\*\*\*\*\***\*\*\***\*\*\*\*\***
|