bmad-stella 1.0.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/.github/FORK_GUIDE.md +106 -0
- package/.github/FUNDING.yaml +15 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +32 -0
- package/.github/ISSUE_TEMPLATE/feature_request.md +22 -0
- package/.github/workflows/discord.yaml +26 -0
- package/.github/workflows/format-check.yaml +44 -0
- package/.github/workflows/manual-release.yaml +174 -0
- package/.github/workflows/pr-validation.yaml +55 -0
- package/.husky/pre-commit +3 -0
- package/.vscode/settings.json +69 -0
- package/CHANGELOG.md +686 -0
- package/CONTRIBUTING.md +243 -0
- package/LICENSE +26 -0
- package/PR-opencode-agents-generator.md +40 -0
- package/README.md +159 -0
- package/REVIEWER-AGENT-SIMPLE.md +66 -0
- package/bmad-core/agent-teams/team-all.yaml +15 -0
- package/bmad-core/agent-teams/team-fullstack.yaml +19 -0
- package/bmad-core/agent-teams/team-ide-minimal.yaml +11 -0
- package/bmad-core/agent-teams/team-no-ui.yaml +14 -0
- package/bmad-core/agents/analyst.md +84 -0
- package/bmad-core/agents/architect.md +85 -0
- package/bmad-core/agents/bmad-master.md +110 -0
- package/bmad-core/agents/bmad-orchestrator.md +147 -0
- package/bmad-core/agents/dev.md +96 -0
- package/bmad-core/agents/planner.md +86 -0
- package/bmad-core/agents/pm.md +84 -0
- package/bmad-core/agents/po.md +79 -0
- package/bmad-core/agents/qa.md +80 -0
- package/bmad-core/agents/reviewer.md +61 -0
- package/bmad-core/agents/sm.md +65 -0
- package/bmad-core/agents/ux-expert.md +69 -0
- package/bmad-core/checklists/architect-checklist.md +440 -0
- package/bmad-core/checklists/change-checklist.md +184 -0
- package/bmad-core/checklists/planner-validation-checklist.md +167 -0
- package/bmad-core/checklists/pm-checklist.md +372 -0
- package/bmad-core/checklists/po-master-checklist.md +434 -0
- package/bmad-core/checklists/story-dod-checklist.md +96 -0
- package/bmad-core/checklists/story-draft-checklist.md +155 -0
- package/bmad-core/checklists/task-dod-checklist.md +110 -0
- package/bmad-core/core-config.yaml +26 -0
- package/bmad-core/data/bmad-kb.md +809 -0
- package/bmad-core/data/brainstorming-techniques.md +38 -0
- package/bmad-core/data/elicitation-methods.md +156 -0
- package/bmad-core/data/technical-preferences.md +5 -0
- package/bmad-core/data/test-levels-framework.md +148 -0
- package/bmad-core/data/test-priorities-matrix.md +174 -0
- package/bmad-core/tasks/advanced-elicitation.md +119 -0
- package/bmad-core/tasks/apply-qa-fixes.md +150 -0
- package/bmad-core/tasks/brownfield-create-epic.md +162 -0
- package/bmad-core/tasks/brownfield-create-story.md +149 -0
- package/bmad-core/tasks/correct-course.md +72 -0
- package/bmad-core/tasks/create-brownfield-story.md +314 -0
- package/bmad-core/tasks/create-deep-research-prompt.md +280 -0
- package/bmad-core/tasks/create-implementation-plan.md +298 -0
- package/bmad-core/tasks/create-next-story.md +114 -0
- package/bmad-core/tasks/decompose-task.md +162 -0
- package/bmad-core/tasks/document-project.md +345 -0
- package/bmad-core/tasks/facilitate-brainstorming-session.md +138 -0
- package/bmad-core/tasks/generate-ai-frontend-prompt.md +53 -0
- package/bmad-core/tasks/identify-dependencies.md +347 -0
- package/bmad-core/tasks/implement-test.md +188 -0
- package/bmad-core/tasks/index-docs.md +175 -0
- package/bmad-core/tasks/kb-mode-interaction.md +77 -0
- package/bmad-core/tasks/nfr-assess.md +345 -0
- package/bmad-core/tasks/qa-gate.md +163 -0
- package/bmad-core/tasks/review-and-improve.md +95 -0
- package/bmad-core/tasks/review-story.md +316 -0
- package/bmad-core/tasks/risk-profile.md +355 -0
- package/bmad-core/tasks/shard-doc.md +187 -0
- package/bmad-core/tasks/test-design.md +176 -0
- package/bmad-core/tasks/trace-requirements.md +266 -0
- package/bmad-core/tasks/validate-next-story.md +136 -0
- package/bmad-core/templates/architecture-tmpl.yaml +651 -0
- package/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
- package/bmad-core/templates/brownfield-architecture-tmpl.yaml +477 -0
- package/bmad-core/templates/brownfield-prd-tmpl.yaml +281 -0
- package/bmad-core/templates/competitor-analysis-tmpl.yaml +307 -0
- package/bmad-core/templates/front-end-architecture-tmpl.yaml +219 -0
- package/bmad-core/templates/front-end-spec-tmpl.yaml +350 -0
- package/bmad-core/templates/fullstack-architecture-tmpl.yaml +824 -0
- package/bmad-core/templates/implementation-plan-tmpl.yaml +224 -0
- package/bmad-core/templates/market-research-tmpl.yaml +253 -0
- package/bmad-core/templates/prd-tmpl.yaml +203 -0
- package/bmad-core/templates/project-brief-tmpl.yaml +222 -0
- package/bmad-core/templates/qa-gate-tmpl.yaml +103 -0
- package/bmad-core/templates/story-tmpl.yaml +138 -0
- package/bmad-core/workflows/brownfield-fullstack.yaml +298 -0
- package/bmad-core/workflows/brownfield-service.yaml +188 -0
- package/bmad-core/workflows/brownfield-ui.yaml +198 -0
- package/bmad-core/workflows/greenfield-fullstack.yaml +241 -0
- package/bmad-core/workflows/greenfield-service.yaml +207 -0
- package/bmad-core/workflows/greenfield-ui.yaml +236 -0
- package/common/tasks/create-doc.md +103 -0
- package/common/tasks/execute-checklist.md +88 -0
- package/common/utils/bmad-doc-template.md +327 -0
- package/common/utils/workflow-management.md +71 -0
- package/dist/agents/analyst.txt +2907 -0
- package/dist/agents/architect.txt +3567 -0
- package/dist/agents/bmad-master.txt +8828 -0
- package/dist/agents/bmad-orchestrator.txt +1520 -0
- package/dist/agents/dev.txt +576 -0
- package/dist/agents/pm.txt +2226 -0
- package/dist/agents/po.txt +1359 -0
- package/dist/agents/qa.txt +2001 -0
- package/dist/agents/sm.txt +667 -0
- package/dist/agents/ux-expert.txt +703 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.txt +2386 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.txt +1627 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.txt +822 -0
- package/dist/expansion-packs/bmad-2d-phaser-game-dev/teams/phaser-2d-nodejs-game-team.txt +11008 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.txt +4031 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.txt +3717 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.txt +456 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.txt +982 -0
- package/dist/expansion-packs/bmad-2d-unity-game-dev/teams/unity-2d-game-team.txt +15450 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/beta-reader.txt +921 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/book-critic.txt +81 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/character-psychologist.txt +886 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/cover-designer.txt +85 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/dialog-specialist.txt +903 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/editor.txt +837 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/genre-specialist.txt +989 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/narrative-designer.txt +888 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/plot-architect.txt +1173 -0
- package/dist/expansion-packs/bmad-creative-writing/agents/world-builder.txt +914 -0
- package/dist/expansion-packs/bmad-creative-writing/teams/agent-team.txt +6511 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/bmad-orchestrator.txt +1513 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-analyst.txt +3190 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-architect.txt +4499 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-designer.txt +3925 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-developer.txt +666 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-pm.txt +2381 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-po.txt +1612 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-qa.txt +1741 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-sm.txt +1208 -0
- package/dist/expansion-packs/bmad-godot-game-dev/agents/game-ux-expert.txt +958 -0
- package/dist/expansion-packs/bmad-godot-game-dev/teams/godot-game-team.txt +27717 -0
- package/dist/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.txt +2087 -0
- package/dist/teams/team-all.txt +12911 -0
- package/dist/teams/team-fullstack.txt +10477 -0
- package/dist/teams/team-ide-minimal.txt +5299 -0
- package/dist/teams/team-no-ui.txt +9029 -0
- package/docs/GUIDING-PRINCIPLES.md +91 -0
- package/docs/core-architecture.md +219 -0
- package/docs/enhanced-ide-development-workflow.md +248 -0
- package/docs/expansion-packs.md +200 -0
- package/docs/flattener.md +91 -0
- package/docs/how-to-contribute-with-pull-requests.md +158 -0
- package/docs/stella-user-guide.md +637 -0
- package/docs/user-guide.md +577 -0
- package/docs/versioning-and-releases.md +155 -0
- package/docs/versions.md +48 -0
- package/docs/working-in-the-brownfield.md +606 -0
- package/eslint.config.mjs +119 -0
- package/expansion-packs/README.md +3 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/agent-teams/phaser-2d-nodejs-game-team.yaml +14 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-designer.md +73 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-developer.md +80 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/agents/game-sm.md +66 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-design-checklist.md +203 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/checklists/game-story-dod-checklist.md +162 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/config.yaml +9 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/data/bmad-kb.md +252 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/data/development-guidelines.md +649 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/advanced-elicitation.md +112 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/create-game-story.md +218 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/tasks/game-design-brainstorming.md +292 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-architecture-tmpl.yaml +614 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-brief-tmpl.yaml +357 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-design-doc-tmpl.yaml +344 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/game-story-tmpl.yaml +254 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/templates/level-design-doc-tmpl.yaml +485 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-dev-greenfield.yaml +184 -0
- package/expansion-packs/bmad-2d-phaser-game-dev/workflows/game-prototype.yaml +176 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agent-teams/unity-2d-game-team.yaml +15 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-architect.md +82 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-designer.md +79 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-developer.md +80 -0
- package/expansion-packs/bmad-2d-unity-game-dev/agents/game-sm.md +67 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-architect-checklist.md +393 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-change-checklist.md +205 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-design-checklist.md +203 -0
- package/expansion-packs/bmad-2d-unity-game-dev/checklists/game-story-dod-checklist.md +126 -0
- package/expansion-packs/bmad-2d-unity-game-dev/config.yaml +7 -0
- package/expansion-packs/bmad-2d-unity-game-dev/data/bmad-kb.md +771 -0
- package/expansion-packs/bmad-2d-unity-game-dev/data/development-guidelines.md +588 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/advanced-elicitation.md +112 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/correct-course-game.md +143 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/create-game-story.md +186 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/game-design-brainstorming.md +292 -0
- package/expansion-packs/bmad-2d-unity-game-dev/tasks/validate-game-story.md +202 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-architecture-tmpl.yaml +1031 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-brief-tmpl.yaml +357 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-design-doc-tmpl.yaml +706 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/game-story-tmpl.yaml +257 -0
- package/expansion-packs/bmad-2d-unity-game-dev/templates/level-design-doc-tmpl.yaml +485 -0
- package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-dev-greenfield.yaml +184 -0
- package/expansion-packs/bmad-2d-unity-game-dev/workflows/game-prototype.yaml +176 -0
- package/expansion-packs/bmad-creative-writing/README.md +146 -0
- package/expansion-packs/bmad-creative-writing/agent-teams/agent-team.yaml +20 -0
- package/expansion-packs/bmad-creative-writing/agents/beta-reader.md +94 -0
- package/expansion-packs/bmad-creative-writing/agents/book-critic.md +40 -0
- package/expansion-packs/bmad-creative-writing/agents/character-psychologist.md +93 -0
- package/expansion-packs/bmad-creative-writing/agents/cover-designer.md +46 -0
- package/expansion-packs/bmad-creative-writing/agents/dialog-specialist.md +92 -0
- package/expansion-packs/bmad-creative-writing/agents/editor.md +93 -0
- package/expansion-packs/bmad-creative-writing/agents/genre-specialist.md +95 -0
- package/expansion-packs/bmad-creative-writing/agents/narrative-designer.md +93 -0
- package/expansion-packs/bmad-creative-writing/agents/plot-architect.md +95 -0
- package/expansion-packs/bmad-creative-writing/agents/world-builder.md +94 -0
- package/expansion-packs/bmad-creative-writing/checklists/beta-feedback-closure-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/character-consistency-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/comedic-timing-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/cyberpunk-aesthetic-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/ebook-formatting-checklist.md +21 -0
- package/expansion-packs/bmad-creative-writing/checklists/epic-poetry-meter-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/fantasy-magic-system-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/foreshadowing-payoff-checklist.md +22 -0
- package/expansion-packs/bmad-creative-writing/checklists/genre-tropes-checklist.md +22 -0
- package/expansion-packs/bmad-creative-writing/checklists/historical-accuracy-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/horror-suspense-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/kdp-cover-ready-checklist.md +25 -0
- package/expansion-packs/bmad-creative-writing/checklists/line-edit-quality-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/marketing-copy-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/mystery-clue-trail-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/orbital-mechanics-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/plot-structure-checklist.md +59 -0
- package/expansion-packs/bmad-creative-writing/checklists/publication-readiness-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/romance-emotional-beats-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/scene-quality-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/scifi-technology-plausibility-checklist.md +22 -0
- package/expansion-packs/bmad-creative-writing/checklists/sensitivity-representation-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/steampunk-gadget-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/thriller-pacing-stakes-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/timeline-continuity-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/world-building-continuity-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/checklists/ya-appropriateness-checklist.md +23 -0
- package/expansion-packs/bmad-creative-writing/config.yaml +12 -0
- package/expansion-packs/bmad-creative-writing/data/bmad-kb.md +209 -0
- package/expansion-packs/bmad-creative-writing/data/story-structures.md +67 -0
- package/expansion-packs/bmad-creative-writing/docs/brief.md +212 -0
- package/expansion-packs/bmad-creative-writing/tasks/advanced-elicitation.md +119 -0
- package/expansion-packs/bmad-creative-writing/tasks/analyze-reader-feedback.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/analyze-story-structure.md +67 -0
- package/expansion-packs/bmad-creative-writing/tasks/assemble-kdp-package.md +29 -0
- package/expansion-packs/bmad-creative-writing/tasks/brainstorm-premise.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/build-world.md +24 -0
- package/expansion-packs/bmad-creative-writing/tasks/character-depth-pass.md +22 -0
- package/expansion-packs/bmad-creative-writing/tasks/create-doc.md +103 -0
- package/expansion-packs/bmad-creative-writing/tasks/create-draft-section.md +26 -0
- package/expansion-packs/bmad-creative-writing/tasks/critical-review.md +26 -0
- package/expansion-packs/bmad-creative-writing/tasks/develop-character.md +24 -0
- package/expansion-packs/bmad-creative-writing/tasks/execute-checklist.md +88 -0
- package/expansion-packs/bmad-creative-writing/tasks/expand-premise.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/expand-synopsis.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/final-polish.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/generate-cover-brief.md +25 -0
- package/expansion-packs/bmad-creative-writing/tasks/generate-cover-prompts.md +26 -0
- package/expansion-packs/bmad-creative-writing/tasks/generate-scene-list.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/incorporate-feedback.md +25 -0
- package/expansion-packs/bmad-creative-writing/tasks/outline-scenes.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/provide-feedback.md +24 -0
- package/expansion-packs/bmad-creative-writing/tasks/publish-chapter.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/quick-feedback.md +22 -0
- package/expansion-packs/bmad-creative-writing/tasks/select-next-arc.md +23 -0
- package/expansion-packs/bmad-creative-writing/tasks/workshop-dialog.md +64 -0
- package/expansion-packs/bmad-creative-writing/templates/beta-feedback-form.yaml +97 -0
- package/expansion-packs/bmad-creative-writing/templates/chapter-draft-tmpl.yaml +82 -0
- package/expansion-packs/bmad-creative-writing/templates/character-profile-tmpl.yaml +92 -0
- package/expansion-packs/bmad-creative-writing/templates/cover-design-brief-tmpl.yaml +98 -0
- package/expansion-packs/bmad-creative-writing/templates/premise-brief-tmpl.yaml +78 -0
- package/expansion-packs/bmad-creative-writing/templates/scene-list-tmpl.yaml +55 -0
- package/expansion-packs/bmad-creative-writing/templates/story-outline-tmpl.yaml +96 -0
- package/expansion-packs/bmad-creative-writing/templates/world-guide-tmpl.yaml +89 -0
- package/expansion-packs/bmad-creative-writing/workflows/book-cover-design-workflow.md +218 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-greenfield-workflow.yaml +56 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-serial-workflow.yaml +50 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-snowflake-workflow.yaml +69 -0
- package/expansion-packs/bmad-creative-writing/workflows/novel-writing.yaml +91 -0
- package/expansion-packs/bmad-creative-writing/workflows/screenplay-development.yaml +85 -0
- package/expansion-packs/bmad-creative-writing/workflows/series-planning.yaml +78 -0
- package/expansion-packs/bmad-creative-writing/workflows/short-story-creation.yaml +64 -0
- package/expansion-packs/bmad-godot-game-dev/README.md +244 -0
- package/expansion-packs/bmad-godot-game-dev/agent-teams/godot-game-team.yaml +18 -0
- package/expansion-packs/bmad-godot-game-dev/agents/bmad-orchestrator.md +147 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-analyst.md +84 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-architect.md +146 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-designer.md +78 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-developer.md +124 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-pm.md +82 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-po.md +115 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-qa.md +159 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-sm.md +66 -0
- package/expansion-packs/bmad-godot-game-dev/agents/game-ux-expert.md +75 -0
- package/expansion-packs/bmad-godot-game-dev/checklists/game-architect-checklist.md +377 -0
- package/expansion-packs/bmad-godot-game-dev/checklists/game-change-checklist.md +250 -0
- package/expansion-packs/bmad-godot-game-dev/checklists/game-design-checklist.md +225 -0
- package/expansion-packs/bmad-godot-game-dev/checklists/game-po-checklist.md +448 -0
- package/expansion-packs/bmad-godot-game-dev/checklists/game-story-dod-checklist.md +202 -0
- package/expansion-packs/bmad-godot-game-dev/config.yaml +30 -0
- package/expansion-packs/bmad-godot-game-dev/data/bmad-kb.md +811 -0
- package/expansion-packs/bmad-godot-game-dev/data/brainstorming-techniques.md +36 -0
- package/expansion-packs/bmad-godot-game-dev/data/development-guidelines.md +893 -0
- package/expansion-packs/bmad-godot-game-dev/data/elicitation-methods.md +156 -0
- package/expansion-packs/bmad-godot-game-dev/data/technical-preferences.md +3 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/advanced-elicitation.md +110 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/apply-qa-fixes.md +224 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/brownfield-create-epic.md +162 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/brownfield-create-story.md +149 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/correct-course-game.md +159 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/create-deep-research-prompt.md +278 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/create-doc.md +103 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/create-game-story.md +202 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/document-project.md +343 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/execute-checklist.md +88 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/facilitate-brainstorming-session.md +136 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/game-brownfield-create-epic.md +160 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/game-brownfield-create-story.md +147 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/game-design-brainstorming.md +290 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/game-risk-profile.md +368 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/game-test-design.md +219 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/generate-ai-frontend-prompt.md +51 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/kb-mode-interaction.md +77 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/review-game-story.md +364 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/shard-doc.md +187 -0
- package/expansion-packs/bmad-godot-game-dev/tasks/validate-game-story.md +208 -0
- package/expansion-packs/bmad-godot-game-dev/templates/brainstorming-output-tmpl.yaml +156 -0
- package/expansion-packs/bmad-godot-game-dev/templates/brownfield-prd-tmpl.yaml +281 -0
- package/expansion-packs/bmad-godot-game-dev/templates/competitor-analysis-tmpl.yaml +306 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-architecture-tmpl.yaml +1111 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-brief-tmpl.yaml +356 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-design-doc-tmpl.yaml +724 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-prd-tmpl.yaml +209 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-qa-gate-tmpl.yaml +186 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-story-tmpl.yaml +406 -0
- package/expansion-packs/bmad-godot-game-dev/templates/game-ui-spec-tmpl.yaml +601 -0
- package/expansion-packs/bmad-godot-game-dev/templates/level-design-doc-tmpl.yaml +620 -0
- package/expansion-packs/bmad-godot-game-dev/templates/market-research-tmpl.yaml +418 -0
- package/expansion-packs/bmad-godot-game-dev/utils/bmad-doc-template.md +327 -0
- package/expansion-packs/bmad-godot-game-dev/utils/workflow-management.md +71 -0
- package/expansion-packs/bmad-godot-game-dev/workflows/game-dev-greenfield.yaml +245 -0
- package/expansion-packs/bmad-godot-game-dev/workflows/game-prototype.yaml +213 -0
- package/expansion-packs/bmad-infrastructure-devops/README.md +147 -0
- package/expansion-packs/bmad-infrastructure-devops/agents/infra-devops-platform.md +73 -0
- package/expansion-packs/bmad-infrastructure-devops/checklists/infrastructure-checklist.md +486 -0
- package/expansion-packs/bmad-infrastructure-devops/config.yaml +10 -0
- package/expansion-packs/bmad-infrastructure-devops/data/bmad-kb.md +307 -0
- package/expansion-packs/bmad-infrastructure-devops/tasks/review-infrastructure.md +161 -0
- package/expansion-packs/bmad-infrastructure-devops/tasks/validate-infrastructure.md +155 -0
- package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-architecture-tmpl.yaml +425 -0
- package/expansion-packs/bmad-infrastructure-devops/templates/infrastructure-platform-from-arch-tmpl.yaml +630 -0
- package/package.json +116 -0
- package/prettier.config.mjs +32 -0
- package/tools/bmad-npx-wrapper.js +39 -0
- package/tools/builders/web-builder.js +675 -0
- package/tools/bump-all-versions.js +115 -0
- package/tools/bump-expansion-version.js +90 -0
- package/tools/cli.js +152 -0
- package/tools/flattener/aggregate.js +76 -0
- package/tools/flattener/binary.js +80 -0
- package/tools/flattener/discovery.js +71 -0
- package/tools/flattener/files.js +35 -0
- package/tools/flattener/ignoreRules.js +178 -0
- package/tools/flattener/main.js +568 -0
- package/tools/flattener/projectRoot.js +206 -0
- package/tools/flattener/prompts.js +44 -0
- package/tools/flattener/stats.helpers.js +395 -0
- package/tools/flattener/stats.js +80 -0
- package/tools/flattener/test-matrix.js +413 -0
- package/tools/flattener/xml.js +88 -0
- package/tools/implement-fork-friendly-ci.sh +229 -0
- package/tools/installer/README.md +8 -0
- package/tools/installer/bin/bmad.js +633 -0
- package/tools/installer/config/ide-agent-config.yaml +58 -0
- package/tools/installer/config/install.config.yaml +184 -0
- package/tools/installer/lib/config-loader.js +257 -0
- package/tools/installer/lib/dependency-manager.js +383 -0
- package/tools/installer/lib/file-manager.js +394 -0
- package/tools/installer/lib/ide-base-setup.js +228 -0
- package/tools/installer/lib/ide-setup.js +2461 -0
- package/tools/installer/lib/installer.js +2094 -0
- package/tools/installer/lib/memory-profiler.js +225 -0
- package/tools/installer/lib/module-manager.js +114 -0
- package/tools/installer/lib/resource-locator.js +308 -0
- package/tools/installer/package.json +47 -0
- package/tools/lib/dependency-resolver.js +175 -0
- package/tools/lib/yaml-utils.js +29 -0
- package/tools/md-assets/web-agent-startup-instructions.md +39 -0
- package/tools/preview-release-notes.js +66 -0
- package/tools/setup-hooks.sh +37 -0
- package/tools/shared/bannerArt.js +105 -0
- package/tools/sync-installer-version.js +32 -0
- package/tools/sync-version.sh +23 -0
- package/tools/update-expansion-version.js +53 -0
- package/tools/upgraders/v3-to-v4-upgrader.js +673 -0
- package/tools/version-bump.js +94 -0
- package/tools/yaml-format.js +253 -0
|
@@ -0,0 +1,298 @@
|
|
|
1
|
+
<!-- Powered by Stella Development Team -->
|
|
2
|
+
|
|
3
|
+
# Create Implementation Plan Task
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
To transform JIRA tickets (features, bugs, migrations) into comprehensive, actionable implementation plans that provide junior developers with all the technical details, step-by-step tasks, and context needed to implement the solution without additional research. This task handles variable input quality - from complete requirements to just ticket titles or screenshots.
|
|
8
|
+
|
|
9
|
+
## CRITICAL RULES
|
|
10
|
+
|
|
11
|
+
**FILE LOCATION DISCOVERY:** When file locations are needed, ALWAYS ASK the user first which approach they prefer:
|
|
12
|
+
|
|
13
|
+
1. **User provides paths:** User can directly specify full file paths if they know them
|
|
14
|
+
|
|
15
|
+
2. **System scans codebase:** Use Glob/Grep to search and detect relevant files if user doesn't know exact locations
|
|
16
|
+
- **Get search hints first:** Ask user for helpful hints to narrow the search (e.g., "Look in services folder", "Related to authentication", "Files with 'payment' in name", "Backend API files")
|
|
17
|
+
- **Check project structure docs:** ALWAYS read `bmad-docs/architecture/project-structure.md` (or `project-structure.md`) FIRST to understand file locations and naming conventions
|
|
18
|
+
- **Perform targeted search:** Use hints + structure knowledge to create focused Glob/Grep searches instead of broad codebase scans
|
|
19
|
+
|
|
20
|
+
## SEQUENTIAL Task Execution (Do not proceed until current Task is complete)
|
|
21
|
+
|
|
22
|
+
### 0. Load Core Configuration
|
|
23
|
+
|
|
24
|
+
- Load `{root}/core-config.yaml` from the project root
|
|
25
|
+
- If the file does not exist, HALT and inform the user: "core-config.yaml not found. This file is required for planning. Please add and configure core-config.yaml before proceeding."
|
|
26
|
+
- Extract key configurations: `devLoadAlwaysFiles`, `architecture.*`, `devStoryLocation`
|
|
27
|
+
|
|
28
|
+
### 1. Analyze JIRA Ticket Input
|
|
29
|
+
|
|
30
|
+
#### 1.1 Determine Input Type and Extract Information
|
|
31
|
+
|
|
32
|
+
- **If input is a .md file:** Read the file completely
|
|
33
|
+
- **If input is a screenshot:** Analyze the image to extract ticket details
|
|
34
|
+
- **If input is plain text:** Use the provided description or title
|
|
35
|
+
|
|
36
|
+
#### 1.2 Extract Core Ticket Information
|
|
37
|
+
|
|
38
|
+
Extract the following (or derive if missing):
|
|
39
|
+
|
|
40
|
+
- **Ticket Number:** Required for filename (e.g., PROJ-123)
|
|
41
|
+
- **Ticket Type:** Identify as Feature, Bug, or Migration
|
|
42
|
+
- **Title:** The ticket summary
|
|
43
|
+
- **Description:** Full description if available
|
|
44
|
+
- **Requirements:** Explicit requirements if provided
|
|
45
|
+
- **Acceptance Criteria:** Explicit ACs if provided (if not, you'll derive them later)
|
|
46
|
+
- **Additional Context:** Screenshots, examples, error messages, stack traces
|
|
47
|
+
|
|
48
|
+
#### 1.3 Alert User on Input Quality
|
|
49
|
+
|
|
50
|
+
Based on what's available, inform the user:
|
|
51
|
+
|
|
52
|
+
- "✓ Complete ticket with requirements and acceptance criteria"
|
|
53
|
+
- "⚠ Partial information - will derive requirements and acceptance criteria"
|
|
54
|
+
- "⚠ Minimal information (title only) - will need to ask clarifying questions"
|
|
55
|
+
|
|
56
|
+
### 2. Clarify Missing Information (If Needed)
|
|
57
|
+
|
|
58
|
+
If critical information is missing, ask the user targeted questions:
|
|
59
|
+
|
|
60
|
+
**For Features:**
|
|
61
|
+
|
|
62
|
+
- What is the expected user workflow?
|
|
63
|
+
- What are the key functional requirements?
|
|
64
|
+
- Are there specific UI/UX requirements?
|
|
65
|
+
- What data needs to be captured/displayed?
|
|
66
|
+
- Are there integration requirements?
|
|
67
|
+
- **Which files need modification?** (Offer both options as per CRITICAL RULES)
|
|
68
|
+
|
|
69
|
+
**For Bugs:**
|
|
70
|
+
|
|
71
|
+
- What is the expected behavior vs. actual behavior?
|
|
72
|
+
- Can you provide steps to reproduce?
|
|
73
|
+
- What is the impact and severity?
|
|
74
|
+
- Are there error messages or stack traces?
|
|
75
|
+
- **Which files contain the bug?** (Offer both options as per CRITICAL RULES)
|
|
76
|
+
|
|
77
|
+
**For Migrations:**
|
|
78
|
+
|
|
79
|
+
- What is being migrated (code, data, infrastructure)?
|
|
80
|
+
- What is the source and target state?
|
|
81
|
+
- Are there data transformation requirements?
|
|
82
|
+
- What is the rollback strategy?
|
|
83
|
+
- Are there dependencies on other systems?
|
|
84
|
+
|
|
85
|
+
**For Database Changes (All Ticket Types):**
|
|
86
|
+
|
|
87
|
+
- Does this work require any database table updates or creation?
|
|
88
|
+
- **If uncertain, ASK the user** - better to clarify than assume
|
|
89
|
+
- If YES:
|
|
90
|
+
- **Database migration tasks must be handled by the user** (add in tasks list but tell user to do this)
|
|
91
|
+
- If specific fields to add to a model or a new model structure are NOT specified in the ticket info/requirements:
|
|
92
|
+
- **Ask the user to specify the fields to be added or the model structure** (field names, types, constraints, relationships)
|
|
93
|
+
- **If uncertain about any database-related details, ALWAYS ask the user** - do not make assumptions or proceed silently
|
|
94
|
+
- Document the model/table changes needed in the Technical Approach sectio
|
|
95
|
+
|
|
96
|
+
**CRITICAL:** Only ask essential questions. Use your senior developer judgment to infer reasonable details when possible.
|
|
97
|
+
|
|
98
|
+
### 3. Gather Architecture Context
|
|
99
|
+
|
|
100
|
+
#### 3.1 Determine Architecture Reading Strategy
|
|
101
|
+
|
|
102
|
+
- **If `architectureVersion: >= v4` and `architectureSharded: true`**: Read `{architectureShardedLocation}/index.md` then follow structured reading order below
|
|
103
|
+
- **Else**: Use monolithic `architectureFile` for similar sections
|
|
104
|
+
- **Fallback**: If no `architecture/` folder exists, check for `Claude.md` in project root for architecture and project information
|
|
105
|
+
|
|
106
|
+
#### 3.2 Read Architecture Documents Based on Ticket Type
|
|
107
|
+
|
|
108
|
+
**For ALL Tickets:** tech-stack.md, unified-project-structure.md, coding-standards.md
|
|
109
|
+
|
|
110
|
+
**For Backend/API Tickets, additionally:** data-models.md, database-schema.md, backend-architecture.md, rest-api-spec.md, external-apis.md
|
|
111
|
+
|
|
112
|
+
**For Frontend/UI Tickets, additionally:** frontend-architecture.md, components.md, core-workflows.md, data-models.md
|
|
113
|
+
|
|
114
|
+
**For Full-Stack Tickets:** Read both Backend and Frontend sections above
|
|
115
|
+
|
|
116
|
+
**For Bug Fixes:** Focus on architecture relevant to affected components, error handling patterns, logging and debugging guidelines
|
|
117
|
+
|
|
118
|
+
**For Migrations:** Review current architecture of affected components, deployment and infrastructure docs, data models if data migration involved
|
|
119
|
+
|
|
120
|
+
#### 3.3 Extract Ticket-Specific Technical Details
|
|
121
|
+
|
|
122
|
+
Extract ONLY information directly relevant to implementing this ticket. Do NOT invent new libraries, patterns, or standards not in the source documents.
|
|
123
|
+
|
|
124
|
+
Extract:
|
|
125
|
+
|
|
126
|
+
- Specific data models, schemas, or structures the ticket will use
|
|
127
|
+
- API endpoints to implement or consume
|
|
128
|
+
- Component specifications for UI elements
|
|
129
|
+
- File paths and naming conventions for new code
|
|
130
|
+
- Security or performance considerations affecting the ticket
|
|
131
|
+
- Dependencies and third-party libraries
|
|
132
|
+
|
|
133
|
+
ALWAYS cite source documents: `[Source: architecture/{filename}.md#{section}]`
|
|
134
|
+
|
|
135
|
+
### 4. Handle Dependency Analysis (If Available)
|
|
136
|
+
|
|
137
|
+
**Check and Load:**
|
|
138
|
+
|
|
139
|
+
- Check if `bmad-docs/temporary/{ticket-no}-dependency-tmp.md` exists
|
|
140
|
+
- If exists: Read and extract all dependency information (technical, infrastructure, third-party, data dependencies, blockers, risks)
|
|
141
|
+
- If not exists: Proceed without pre-analyzed dependencies
|
|
142
|
+
|
|
143
|
+
**After Planning Completion:**
|
|
144
|
+
|
|
145
|
+
- If all dependencies addressed: Delete `bmad-docs/temporary/{ticket-no}-dependency-tmp.md`
|
|
146
|
+
- If ticket will be decomposed into subtasks: Keep file with remaining dependencies for future subtasks
|
|
147
|
+
- Document cleanup action in implementation plan
|
|
148
|
+
|
|
149
|
+
### 5. Derive or Validate Acceptance Criteria
|
|
150
|
+
|
|
151
|
+
Based on ticket type and information gathered:
|
|
152
|
+
|
|
153
|
+
**If acceptance criteria are provided:** Validate they are complete and testable
|
|
154
|
+
|
|
155
|
+
**If NOT provided, derive them:**
|
|
156
|
+
|
|
157
|
+
**For Features:**
|
|
158
|
+
|
|
159
|
+
- Functional requirements (what the feature does)
|
|
160
|
+
- UI/UX requirements (how it looks/behaves)
|
|
161
|
+
- Data validation requirements
|
|
162
|
+
- Integration requirements
|
|
163
|
+
- Performance requirements (if applicable)
|
|
164
|
+
- Security requirements (if applicable)
|
|
165
|
+
|
|
166
|
+
**For Bugs:**
|
|
167
|
+
|
|
168
|
+
- Reproduce the bug consistently
|
|
169
|
+
- Verify root cause is identified
|
|
170
|
+
- Implement fix that addresses root cause
|
|
171
|
+
- Verify fix doesn't introduce regressions
|
|
172
|
+
- Add tests to prevent recurrence
|
|
173
|
+
|
|
174
|
+
**For Migrations:**
|
|
175
|
+
|
|
176
|
+
- Successful migration of all affected components/data
|
|
177
|
+
- No data loss or corruption
|
|
178
|
+
- Backward compatibility maintained (if required)
|
|
179
|
+
- Rollback successfully tested
|
|
180
|
+
- Performance maintained or improved
|
|
181
|
+
|
|
182
|
+
### 6. Define Technical Approach and Decisions
|
|
183
|
+
|
|
184
|
+
As a senior developer, document the complete technical approach:
|
|
185
|
+
|
|
186
|
+
#### 6.1 Overall Strategy
|
|
187
|
+
|
|
188
|
+
- Implementation strategy and major components affected
|
|
189
|
+
- Technology/framework choices and design patterns to apply
|
|
190
|
+
- Component design and data flow (only if complex interactions)
|
|
191
|
+
- API design or database schema changes (if applicable)
|
|
192
|
+
- State management approach (if applicable)
|
|
193
|
+
|
|
194
|
+
#### 6.2 File Structure Planning
|
|
195
|
+
|
|
196
|
+
**🚨 REMINDER:** Follow the FILE LOCATION DISCOVERY approach from CRITICAL RULES (offer both options to user).
|
|
197
|
+
|
|
198
|
+
- **New files to create** (with full paths) - **AS Project Structure**
|
|
199
|
+
- **Existing files to modify** - **Use FILE LOCATION DISCOVERY approach**
|
|
200
|
+
- **Files to delete** (for migrations) - **Use FILE LOCATION DISCOVERY approach**
|
|
201
|
+
- **Directory structure changes**
|
|
202
|
+
|
|
203
|
+
#### 6.3 Code Patterns and Technical Details
|
|
204
|
+
|
|
205
|
+
Extract relevant patterns and specifications from architecture documents:
|
|
206
|
+
|
|
207
|
+
- Specific patterns and examples to follow from architecture docs
|
|
208
|
+
- Security or performance considerations
|
|
209
|
+
- Integration points and third-party libraries
|
|
210
|
+
|
|
211
|
+
**CRITICAL:**
|
|
212
|
+
|
|
213
|
+
- Every technical detail MUST cite source: `[Source: architecture/{filename}.md#{section}]`
|
|
214
|
+
- Do not invent information - only include what was extracted from architecture docs or derived from requirements
|
|
215
|
+
- Keep focused on essential information directly relevant to this ticket
|
|
216
|
+
|
|
217
|
+
#### 6.4 Dependencies and Risks (Only if Applicable)
|
|
218
|
+
|
|
219
|
+
Include this subsection ONLY if there are actual dependencies, blockers, or risks to document. It will be in `Dependencies and Risks` section of the template, not subsection of `Technical Approach`.
|
|
220
|
+
|
|
221
|
+
**If dependency file was loaded (Step 4):**
|
|
222
|
+
|
|
223
|
+
- Integrate all dependencies from the analysis file
|
|
224
|
+
- Incorporate identified blockers with severity levels
|
|
225
|
+
- Add any additional dependencies or blockers discovered during planning
|
|
226
|
+
- Document mitigation strategies for high-risk items
|
|
227
|
+
|
|
228
|
+
**If no dependency file exists but risks/dependencies identified:**
|
|
229
|
+
|
|
230
|
+
- Identify technical dependencies
|
|
231
|
+
- Note potential blockers with severity
|
|
232
|
+
- Highlight areas of uncertainty requiring investigation
|
|
233
|
+
|
|
234
|
+
**If no dependencies or risks:** Skip this subsection entirely
|
|
235
|
+
|
|
236
|
+
### 7. Create Implementation Task List
|
|
237
|
+
|
|
238
|
+
**🚨 REMINDER:** Follow the FILE LOCATION DISCOVERY approach from CRITICAL RULES for all file paths.
|
|
239
|
+
|
|
240
|
+
Break down implementation into sequential tasks with checkboxes. Reference acceptance criteria (AC: #).
|
|
241
|
+
|
|
242
|
+
**Granularity Based on Complexity:**
|
|
243
|
+
|
|
244
|
+
- **Simple ticket (1-2 story points):** 3-5 tasks with minimal subtasks
|
|
245
|
+
- **Medium ticket (3-5 story points):** 5-8 tasks with subtasks
|
|
246
|
+
- **Complex ticket (8+ story points):** 8-12 tasks with subtasks
|
|
247
|
+
|
|
248
|
+
**Task Guidelines:**
|
|
249
|
+
|
|
250
|
+
- Tasks should be logical implementation steps, not overly granular
|
|
251
|
+
- DO NOT include code snippets in tasks
|
|
252
|
+
- Avoid micro-tasks like "create file X" or "add import statement"
|
|
253
|
+
- Group related implementation steps into meaningful tasks
|
|
254
|
+
- Reference architecture docs where applicable [Source: {doc}]
|
|
255
|
+
|
|
256
|
+
**Task Categories to Include:**
|
|
257
|
+
|
|
258
|
+
1. Setup/preparation (if needed)
|
|
259
|
+
2. Core implementation (main features)
|
|
260
|
+
3. Integration (connecting components)
|
|
261
|
+
4. Error handling
|
|
262
|
+
5. **Testing (always include these 2 final tasks):**
|
|
263
|
+
- Write and run temporary unit tests, then delete
|
|
264
|
+
- Perform manual testing
|
|
265
|
+
|
|
266
|
+
### 8. Populate Implementation Plan Template
|
|
267
|
+
|
|
268
|
+
- Use `{root}/templates/implementation-plan-tmpl.yaml` structure
|
|
269
|
+
- Fill all sections completely:
|
|
270
|
+
- Status (set to "Draft - Awaiting Review")
|
|
271
|
+
- Ticket Information (number, type, title, description, original source)
|
|
272
|
+
- Requirements (explicit or derived)
|
|
273
|
+
- Acceptance Criteria (derived or provided)
|
|
274
|
+
- Technical Approach (overall strategy, file locations, code patterns with citations, component design if complex)
|
|
275
|
+
- Dependencies and Risks (if applicable)
|
|
276
|
+
- Tasks / Subtasks (with checkboxes, including 2 testing tasks at the end)
|
|
277
|
+
- Change Log (initialize with creation entry)
|
|
278
|
+
- Dev Agent Record (leave empty - dev agent will populate with Agent Model Used and File List only)
|
|
279
|
+
- Feedback (leave empty initially)
|
|
280
|
+
|
|
281
|
+
### 9. Implementation Plan Completion and Review
|
|
282
|
+
|
|
283
|
+
- Review all sections for completeness and accuracy
|
|
284
|
+
- Verify all technical details include source citations
|
|
285
|
+
- Ensure tasks align with requirements, acceptance criteria, and architecture constraints
|
|
286
|
+
- Create directory if not exists: `/bmad-docs/impl-plan/`
|
|
287
|
+
- Update plan status to "Draft - Awaiting Review" and save as: `bmad-docs/impl-plan/{{ticket_number}}-{{ticket_title_short}}.md`
|
|
288
|
+
- Provide summary to user including:
|
|
289
|
+
- **Plan created:** `bmad-docs/impl-plan//{{ticket_number}}-{{ticket_title_short}}.md`
|
|
290
|
+
- **Tasks / Subtasks:** Total count of main tasks and subtasks and Checklist Tasks
|
|
291
|
+
- **Summary:** Brief overview of acceptance criteria and key technical decisions
|
|
292
|
+
- Any deviations or conflicts noted between task and architecture
|
|
293
|
+
- **Dependencies/Risks:** If any were identified
|
|
294
|
+
- **Next Steps:** "Please review the plan. Use \*refine-plan to provide feedback, or approve to proceed with implementation."
|
|
295
|
+
- HALT and await user to:
|
|
296
|
+
- Approve the plan (ready for dev agent)
|
|
297
|
+
- Request refinements (use \*refine-plan command)
|
|
298
|
+
- Ask questions or provide additional context
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# Create Next Story Task
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
To identify the next logical story based on project progress and epic definitions, and then to prepare a comprehensive, self-contained, and actionable story file using the `Story Template`. This task ensures the story is enriched with all necessary technical context, requirements, and acceptance criteria, making it ready for efficient implementation by a Developer Agent with minimal need for additional research or finding its own context.
|
|
8
|
+
|
|
9
|
+
## SEQUENTIAL Task Execution (Do not proceed until current Task is complete)
|
|
10
|
+
|
|
11
|
+
### 0. Load Core Configuration and Check Workflow
|
|
12
|
+
|
|
13
|
+
- Load `{root}/core-config.yaml` from the project root
|
|
14
|
+
- If the file does not exist, HALT and inform the user: "core-config.yaml not found. This file is required for story creation. You can either: 1) Copy it from GITHUB bmad-core/core-config.yaml and configure it for your project OR 2) Run the BMad installer against your project to upgrade and add the file automatically. Please add and configure core-config.yaml before proceeding."
|
|
15
|
+
- Extract key configurations: `devStoryLocation`, `prd.*`, `architecture.*`, `workflow.*`
|
|
16
|
+
|
|
17
|
+
### 1. Identify Next Story for Preparation
|
|
18
|
+
|
|
19
|
+
#### 1.1 Locate Epic Files and Review Existing Stories
|
|
20
|
+
|
|
21
|
+
- Based on `prdSharded` from config, locate epic files (sharded location/pattern or monolithic PRD sections)
|
|
22
|
+
- If `devStoryLocation` has story files, load the highest `{epicNum}.{storyNum}.story.md` file
|
|
23
|
+
- **If highest story exists:**
|
|
24
|
+
- Verify status is 'Done'. If not, alert user: "ALERT: Found incomplete story! File: {lastEpicNum}.{lastStoryNum}.story.md Status: [current status] You should fix this story first, but would you like to accept risk & override to create the next story in draft?"
|
|
25
|
+
- If proceeding, select next sequential story in the current epic
|
|
26
|
+
- If epic is complete, prompt user: "Epic {epicNum} Complete: All stories in Epic {epicNum} have been completed. Would you like to: 1) Begin Epic {epicNum + 1} with story 1 2) Select a specific story to work on 3) Cancel story creation"
|
|
27
|
+
- **CRITICAL**: NEVER automatically skip to another epic. User MUST explicitly instruct which story to create.
|
|
28
|
+
- **If no story files exist:** The next story is ALWAYS 1.1 (first story of first epic)
|
|
29
|
+
- Announce the identified story to the user: "Identified next story for preparation: {epicNum}.{storyNum} - {Story Title}"
|
|
30
|
+
|
|
31
|
+
### 2. Gather Story Requirements and Previous Story Context
|
|
32
|
+
|
|
33
|
+
- Extract story requirements from the identified epic file
|
|
34
|
+
- If previous story exists, review Dev Agent Record sections for:
|
|
35
|
+
- Completion Notes and Debug Log References
|
|
36
|
+
- Implementation deviations and technical decisions
|
|
37
|
+
- Challenges encountered and lessons learned
|
|
38
|
+
- Extract relevant insights that inform the current story's preparation
|
|
39
|
+
|
|
40
|
+
### 3. Gather Architecture Context
|
|
41
|
+
|
|
42
|
+
#### 3.1 Determine Architecture Reading Strategy
|
|
43
|
+
|
|
44
|
+
- **If `architectureVersion: >= v4` and `architectureSharded: true`**: Read `{architectureShardedLocation}/index.md` then follow structured reading order below
|
|
45
|
+
- **Else**: Use monolithic `architectureFile` for similar sections
|
|
46
|
+
|
|
47
|
+
#### 3.2 Read Architecture Documents Based on Story Type
|
|
48
|
+
|
|
49
|
+
**For ALL Stories:** tech-stack.md, unified-project-structure.md, coding-standards.md, testing-strategy.md
|
|
50
|
+
|
|
51
|
+
**For Backend/API Stories, additionally:** data-models.md, database-schema.md, backend-architecture.md, rest-api-spec.md, external-apis.md
|
|
52
|
+
|
|
53
|
+
**For Frontend/UI Stories, additionally:** frontend-architecture.md, components.md, core-workflows.md, data-models.md
|
|
54
|
+
|
|
55
|
+
**For Full-Stack Stories:** Read both Backend and Frontend sections above
|
|
56
|
+
|
|
57
|
+
#### 3.3 Extract Story-Specific Technical Details
|
|
58
|
+
|
|
59
|
+
Extract ONLY information directly relevant to implementing the current story. Do NOT invent new libraries, patterns, or standards not in the source documents.
|
|
60
|
+
|
|
61
|
+
Extract:
|
|
62
|
+
|
|
63
|
+
- Specific data models, schemas, or structures the story will use
|
|
64
|
+
- API endpoints the story must implement or consume
|
|
65
|
+
- Component specifications for UI elements in the story
|
|
66
|
+
- File paths and naming conventions for new code
|
|
67
|
+
- Testing requirements specific to the story's features
|
|
68
|
+
- Security or performance considerations affecting the story
|
|
69
|
+
|
|
70
|
+
ALWAYS cite source documents: `[Source: architecture/{filename}.md#{section}]`
|
|
71
|
+
|
|
72
|
+
### 4. Verify Project Structure Alignment
|
|
73
|
+
|
|
74
|
+
- Cross-reference story requirements with Project Structure Guide from `bmad-docs/architecture/unified-project-structure.md`
|
|
75
|
+
- Ensure file paths, component locations, or module names align with defined structures
|
|
76
|
+
- Document any structural conflicts in "Project Structure Notes" section within the story draft
|
|
77
|
+
|
|
78
|
+
### 5. Populate Story Template with Full Context
|
|
79
|
+
|
|
80
|
+
- Create new story file: `{devStoryLocation}/{epicNum}.{storyNum}.story.md` using Story Template
|
|
81
|
+
- Fill in basic story information: Title, Status (Draft), Story statement, Acceptance Criteria from Epic
|
|
82
|
+
- **`Dev Notes` section (CRITICAL):**
|
|
83
|
+
- CRITICAL: This section MUST contain ONLY information extracted from architecture documents. NEVER invent or assume technical details.
|
|
84
|
+
- Include ALL relevant technical details from Steps 2-3, organized by category:
|
|
85
|
+
- **Previous Story Insights**: Key learnings from previous story
|
|
86
|
+
- **Data Models**: Specific schemas, validation rules, relationships [with source references]
|
|
87
|
+
- **API Specifications**: Endpoint details, request/response formats, auth requirements [with source references]
|
|
88
|
+
- **Component Specifications**: UI component details, props, state management [with source references]
|
|
89
|
+
- **File Locations**: Exact paths where new code should be created based on project structure
|
|
90
|
+
- **Testing Requirements**: Specific test cases or strategies from testing-strategy.md
|
|
91
|
+
- **Technical Constraints**: Version requirements, performance considerations, security rules
|
|
92
|
+
- Every technical detail MUST include its source reference: `[Source: architecture/{filename}.md#{section}]`
|
|
93
|
+
- If information for a category is not found in the architecture docs, explicitly state: "No specific guidance found in architecture docs"
|
|
94
|
+
- **`Tasks / Subtasks` section:**
|
|
95
|
+
- Generate detailed, sequential list of technical tasks based ONLY on: Epic Requirements, Story AC, Reviewed Architecture Information
|
|
96
|
+
- Each task must reference relevant architecture documentation
|
|
97
|
+
- Include unit testing as explicit subtasks based on the Testing Strategy
|
|
98
|
+
- Link tasks to ACs where applicable (e.g., `Task 1 (AC: 1, 3)`)
|
|
99
|
+
- Add notes on project structure alignment or discrepancies found in Step 4
|
|
100
|
+
|
|
101
|
+
### 6. Story Draft Completion and Review
|
|
102
|
+
|
|
103
|
+
- Review all sections for completeness and accuracy
|
|
104
|
+
- Verify all source references are included for technical details
|
|
105
|
+
- Ensure tasks align with both epic requirements and architecture constraints
|
|
106
|
+
- Update status to "Draft" and save the story file
|
|
107
|
+
- Execute `{root}/tasks/execute-checklist` `{root}/checklists/story-draft-checklist`
|
|
108
|
+
- Provide summary to user including:
|
|
109
|
+
- Story created: `{devStoryLocation}/{epicNum}.{storyNum}.story.md`
|
|
110
|
+
- Status: Draft
|
|
111
|
+
- Key technical components included from architecture docs
|
|
112
|
+
- Any deviations or conflicts noted between epic and architecture
|
|
113
|
+
- Checklist Results
|
|
114
|
+
- Next steps: For Complex stories, suggest the user carefully review the story draft and also optionally have the PO run the task `{root}/tasks/validate-next-story`
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
<!-- Powered by Stella Development Team -->
|
|
2
|
+
|
|
3
|
+
# Decompose Task
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
To break down a complex task into smaller, manageable subtasks that are easier to understand, implement, and track. This task helps when a single task is too large or involves multiple concerns that should be separated for clarity.
|
|
8
|
+
|
|
9
|
+
## Task Execution
|
|
10
|
+
|
|
11
|
+
### 1. Understand the Complex Task
|
|
12
|
+
|
|
13
|
+
#### 1.1 Analyze the Task Description
|
|
14
|
+
|
|
15
|
+
- Read the task description provided by the user
|
|
16
|
+
- Identify the main objective or goal
|
|
17
|
+
- Understand the context (feature, bug fix, migration, etc.)
|
|
18
|
+
- Note any constraints or requirements
|
|
19
|
+
|
|
20
|
+
#### 1.2 Gather Context
|
|
21
|
+
|
|
22
|
+
Ask the user for additional context if needed:
|
|
23
|
+
|
|
24
|
+
- What is the technical scope?
|
|
25
|
+
- Are there specific files or components involved?
|
|
26
|
+
- Are there dependencies or integration points?
|
|
27
|
+
- What is the expected outcome?
|
|
28
|
+
|
|
29
|
+
### 2. Identify Task Components
|
|
30
|
+
|
|
31
|
+
Break down the complex task into logical components:
|
|
32
|
+
|
|
33
|
+
#### 2.1 Identify Distinct Concerns
|
|
34
|
+
|
|
35
|
+
Look for:
|
|
36
|
+
|
|
37
|
+
- **Setup/Preparation** - Configuration, dependencies, scaffolding
|
|
38
|
+
- **Data Layer** - Models, schemas, database changes
|
|
39
|
+
- **Business Logic** - Core functionality, algorithms, processing
|
|
40
|
+
- **API/Interface** - Endpoints, routes, public interfaces
|
|
41
|
+
- **UI/Components** - Frontend elements, views, displays
|
|
42
|
+
- **Integration** - Connecting with external systems or services
|
|
43
|
+
- **Error Handling** - Validation, error cases, edge cases
|
|
44
|
+
- **Testing** - Unit tests, integration tests, test data
|
|
45
|
+
- **Documentation** - Code comments, API docs, user docs
|
|
46
|
+
- **Cleanup** - Refactoring, optimization, removing old code
|
|
47
|
+
|
|
48
|
+
#### 2.2 Determine Logical Sequence
|
|
49
|
+
|
|
50
|
+
Order components by:
|
|
51
|
+
|
|
52
|
+
- Dependencies (what must come first)
|
|
53
|
+
- Complexity (simple to complex, or vice versa if building confidence)
|
|
54
|
+
- Risk (high-risk items first for early validation)
|
|
55
|
+
- Logical flow (natural progression of work)
|
|
56
|
+
|
|
57
|
+
### 3. Create Subtask Breakdown
|
|
58
|
+
|
|
59
|
+
For each identified component, create specific subtasks:
|
|
60
|
+
|
|
61
|
+
#### 3.1 Subtask Characteristics
|
|
62
|
+
|
|
63
|
+
Each subtask should be:
|
|
64
|
+
|
|
65
|
+
- **Atomic** - Focused on one specific thing
|
|
66
|
+
- **Clear** - Obvious what needs to be done
|
|
67
|
+
- **Completable** - Can be finished in a reasonable time
|
|
68
|
+
- **Testable** - Can verify it's done correctly
|
|
69
|
+
- **Specific** - Includes file paths, function names, technical details
|
|
70
|
+
|
|
71
|
+
#### 3.2 Subtask Format
|
|
72
|
+
|
|
73
|
+
Use checkbox format:
|
|
74
|
+
|
|
75
|
+
```
|
|
76
|
+
- [ ] Parent Task: [High-level description]
|
|
77
|
+
- [ ] Subtask 1: [Specific action with technical detail]
|
|
78
|
+
- [ ] Subtask 2: [Specific action with technical detail]
|
|
79
|
+
- [ ] Subtask 3: [Specific action with technical detail]
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
#### 3.3 Include Technical Details
|
|
83
|
+
|
|
84
|
+
For each subtask, include:
|
|
85
|
+
|
|
86
|
+
- **File paths** - Where the work happens
|
|
87
|
+
- **Specific actions** - What exactly to do
|
|
88
|
+
- **Technical patterns** - How to do it (if non-obvious)
|
|
89
|
+
- **Dependencies** - What must be done first
|
|
90
|
+
- **Expected outcome** - What success looks like
|
|
91
|
+
|
|
92
|
+
### 4. Example Decompositions
|
|
93
|
+
|
|
94
|
+
#### Example 1: Complex Task - "Implement user authentication in .NET API"
|
|
95
|
+
|
|
96
|
+
**Decomposed:**
|
|
97
|
+
|
|
98
|
+
```
|
|
99
|
+
- [ ] Implement user authentication system
|
|
100
|
+
- [ ] Create User entity in `Models/User.cs` with properties: Id, Email, PasswordHash, CreatedAt
|
|
101
|
+
- [ ] Add ApplicationDbContext in `Data/ApplicationDbContext.cs` with Users DbSet
|
|
102
|
+
- [ ] Create IAuthService interface and AuthService implementation in `Services/AuthService.cs`
|
|
103
|
+
- [ ] Implement password hashing using ASP.NET Core Identity PasswordHasher
|
|
104
|
+
- [ ] Add JWT token generation in `Services/TokenService.cs` using JwtSecurityTokenHandler
|
|
105
|
+
- [ ] Configure JWT authentication in `Program.cs` (AddAuthentication, AddJwtBearer)
|
|
106
|
+
- [ ] Create AuthController in `Controllers/AuthController.cs` with Register and Login endpoints
|
|
107
|
+
- [ ] Add [Authorize] attribute support and configure authorization policies
|
|
108
|
+
- [ ] Create unit tests for AuthService in `Tests/Services/AuthServiceTests.cs`
|
|
109
|
+
- [ ] Create integration tests for auth endpoints in `Tests/Integration/AuthControllerTests.cs`
|
|
110
|
+
- [ ] Update API documentation with authentication flow and JWT usage
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
#### Example 2: Bug Task - "Fix data corruption in CSV export feature"
|
|
114
|
+
|
|
115
|
+
**Decomposed:**
|
|
116
|
+
|
|
117
|
+
```
|
|
118
|
+
- [ ] Fix data corruption bug in CSV export (PROJ-456)
|
|
119
|
+
- [ ] Reproduce bug with test data in `Tests/TestData/ExportTestData.json`
|
|
120
|
+
- [ ] Add logging in `Services/ExportService.cs` using ILogger to trace data flow
|
|
121
|
+
- [ ] Identify root cause (suspected: encoding issue in CSV generation)
|
|
122
|
+
- [ ] Fix encoding issue in `Utils/CsvGenerator.cs` (use UTF8 with BOM via Encoding.UTF8)
|
|
123
|
+
- [ ] Add input sanitization using StringBuilder.Replace for special characters
|
|
124
|
+
- [ ] Create regression test in `Tests/Integration/ExportServiceTests.cs` with problematic data
|
|
125
|
+
- [ ] Verify fix with original reporter's data set
|
|
126
|
+
- [ ] Update error handling to return ProblemDetails with clear messages if encoding fails
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### 5. Validate Decomposition
|
|
130
|
+
|
|
131
|
+
Check that the decomposition is:
|
|
132
|
+
|
|
133
|
+
- [ ] **Complete** - All aspects of the complex task are covered
|
|
134
|
+
- [ ] **Non-overlapping** - Subtasks don't duplicate work
|
|
135
|
+
- [ ] **Properly sequenced** - Dependencies are respected
|
|
136
|
+
- [ ] **Appropriate granularity** - Not too fine, not too coarse
|
|
137
|
+
- [ ] **Actionable** - Junior developer could implement each subtask
|
|
138
|
+
- [ ] **Includes testing** - Test tasks are part of the breakdown
|
|
139
|
+
|
|
140
|
+
### 6. Present Decomposition to User
|
|
141
|
+
|
|
142
|
+
Provide the decomposed task breakdown with:
|
|
143
|
+
|
|
144
|
+
- **Original Complex Task:** [Description]
|
|
145
|
+
- **Decomposed into:** [N] subtasks
|
|
146
|
+
- **Estimated Complexity:** [Simple/Moderate/Complex]
|
|
147
|
+
- **Key Components:** [List main areas covered]
|
|
148
|
+
- **Suggested Sequence:** [Any important ordering notes]
|
|
149
|
+
- **Decomposed Task List:**
|
|
150
|
+
```
|
|
151
|
+
[Paste the complete task breakdown with checkboxes]
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
### 7. Refine if Needed
|
|
155
|
+
|
|
156
|
+
If user requests changes: adjust granularity (break down further or combine), reorder subtasks, add more technical detail, include additional testing/documentation tasks, or clarify ambiguous subtasks.
|
|
157
|
+
|
|
158
|
+
## Notes
|
|
159
|
+
|
|
160
|
+
- This task can be used standalone or as part of the plan-implementation workflow
|
|
161
|
+
- Decomposition helps identify hidden complexity early and makes estimation more accurate
|
|
162
|
+
- Each subtask should be small enough to complete and verify independently
|