mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
## Core Workflow Engine Enhancements
### discover_inputs Protocol (MAJOR)
- Added reusable `discover_inputs` protocol to workflow.xml for intelligent file loading
- Supports three loading strategies:
- FULL_LOAD: Load all shards for PRD, Architecture, UX (changed pattern from /index.md to /*/*.md)
- SELECTIVE_LOAD: Load specific shard via template variable (e.g., epic-{{epic_num}}.md)
- INDEX_GUIDED: Load index, analyze TOC, intelligently load relevant docs (with "DO NOT BE LAZY" mandate)
- Auto-discovers whole vs sharded documents with proper fallback
- Provides transparent reporting of loaded content with file counts
- Invoked via <invoke-protocol name="discover_inputs" /> tag in workflow instructions
### Advanced Elicitation Improvements
- Renamed adv-elicit.xml to advanced-elicitation.xml for clarity
- Updated all references across agents and commands
### Shard Document Tool Enhancement
- Added Step 6: Handle Original Document with three options:
- [d] Delete - Remove original (recommended, prevents confusion)
- [m] Move to archive - Backup original to archive folder
- [k] Keep - Warning about defeating sharding purpose
- Prevents issue where both whole and sharded versions exist, confusing discover_inputs protocol
## BMM Module - Input File Pattern Standardization
### Phase 1 - Analysis (1 workflow)
- product-brief: Added load_strategy (FULL_LOAD for research/brainstorming, INDEX_GUIDED for document_project)
- Updated instructions.md to use invoke-protocol, replaced manual fuzzy matching
### Phase 2 - Planning (4 workflows)
- prd: Added load_strategy, updated instructions to reference {product_brief_content}, {research_content}
- create-ux-design: Added load_strategy, removed fuzzy matching from instructions
- tech-spec: Added load_strategy for brownfield context discovery
- All epics patterns updated to support SELECTIVE_LOAD for specific epic shards
### Phase 3 - Solutioning (2 workflows)
- architecture: Added load_strategy, updated instructions to use pre-loaded {prd_content}, {epics_content}, {ux_design_content}
- solutioning-gate-check: Added load_strategy, replaced manual discovery with protocol invocation
### Phase 4 - Implementation (8 workflows)
- code-review: Added load_strategy, fixed sharded patterns to /*/*.md, added step 1.5 for protocol
- correct-course: Added complete input_file_patterns section (was missing), added step 0.5
- create-story: Added load_strategy, updated to SELECTIVE_LOAD for epics, added step 1.5
- dev-story: Added complete input_file_patterns section (was missing), added step 0.5
- epic-tech-context: Added load_strategy, updated PRD extraction to use {prd_content}, added step 1.5
- retrospective: Added load_strategy for architecture/prd (FULL_LOAD), epics (SELECTIVE_LOAD), added step 0.5
- sprint-planning: Fixed sharded pattern to load ALL epics (/*/*.md), added step 0.5
- story-context: Added load_strategy, updated doc collection to reference pre-loaded content, added step 1.5
### Sprint Artifacts Path Corrections
- story-done: Added missing sprint_artifacts variable, fixed sprint_status path from {context_dir} to {sprint_artifacts}
- story-ready: Added missing sprint_artifacts variable
- story-context: Fixed undefined {context_dir} -> {sprint_artifacts}
- correct-course: Added sprint_artifacts and sprint_status variables
## BMGD Module - Phase 4 Production Workflows (NEW)
Added complete Phase 4 implementation workflows for game development:
- code-review: Senior developer review for completed game features
- correct-course: Sprint change management for game projects
- create-story: Story generation for game mechanics/features
- dev-story: Feature implementation workflow
- epic-tech-context: Technical spec generation per game epic
- retrospective: Epic completion review and lessons learned
- sprint-planning: Game development sprint status tracking
- story-context: Dynamic context assembly for game stories
- story-done: Story completion workflow
- story-ready: Story readiness workflow
All BMGD workflows follow BMM patterns with game-specific adaptations.
## Agent Updates
### BMM Agents
- Updated all 7 BMM agents (analyst, architect, dev, pm, sm, tea, tech-writer, ux-designer)
- Standardized web bundle configurations
### BMGD Agents
- Updated 4 game development agents (game-architect, game-designer, game-dev, game-scrum-master)
- Aligned with BMM agent structure
### CIS Agents
- Updated 5 creative intelligence agents for consistency
## Documentation & Configuration
- Updated CHANGELOG.md with Phase 4 workflow additions
- Updated files-manifest.csv and task-manifest.csv
- Updated .claude commands for all agents
- Fixed formatting issues from previous commits
## Breaking Changes
NONE - All changes are backward compatible. Workflows without input_file_patterns continue to work.
Workflows with input_file_patterns now benefit from intelligent auto-loading.
## Migration Notes
Existing workflows can gradually adopt discover_inputs protocol by:
1. Adding load_strategy to existing input_file_patterns in workflow.yaml
2. Adding <invoke-protocol name="discover_inputs" /> step in instructions.md
3. Replacing manual file loading with references to {pattern_name_content} variables
6.2 KiB
6.2 KiB
Convert Legacy - Validation Checklist
Pre-Conversion Validation
Source Analysis
- Original v4 file(s) fully loaded and parsed
- Item type correctly identified (agent/template/task/module)
- All dependencies documented and accounted for
- No critical content overlooked in source files
Conversion Completeness
For Agent Conversions
Content Preservation
- Agent name, id, title, and icon transferred
- All persona elements mapped to v6 structure
- All commands converted to v6 menu array (YAML)
- Dependencies properly referenced or converted
- Activation instructions adapted to v6 patterns
v6 Compliance (YAML Format)
- Valid YAML structure with proper indentation
- agent.metadata has all required fields (id, name, title, icon, module)
- agent.persona has all sections (role, identity, communication_style, principles)
- agent.menu uses proper handlers (workflow, action, exec, tmpl, data)
- agent.critical_actions array present when needed
- agent.prompts defined for any action: "#id" references
- File extension is .agent.yaml (will be compiled to .md later)
Best Practices
- Commands use appropriate workflow references instead of direct task calls
- File paths use {project-root} variables
- Config values use {config_source}: pattern
- Agent follows naming conventions (kebab-case for files)
- ALL paths reference {project-root}/.bmad/{{module}}/ locations, NOT src/
- exec, data, run-workflow commands point to final BMAD installation paths
For Template/Workflow Conversions
Content Preservation
- Template metadata (name, description, output) transferred
- All sections converted to workflow steps
- Section hierarchy maintained in instructions
- Variables ({{var}}) preserved in template.md
- Elicitation points (elicit: true) REMOVED
- Conditional sections preserved with if="" attributes
- Repeatable sections converted to repeat="" attributes
v6 Compliance
- workflow.yaml follows structure from workflow-creation-guide.md
- instructions.md has critical headers referencing workflow engine
- Steps numbered sequentially with clear goals
- Template variables match between instructions and template.md
- Proper use of XML tags (, , , )
- File structure follows v6 pattern (folder with yaml/md files)
Best Practices
- Steps are focused with single goals
- Instructions are specific ("Write 1-2 paragraphs" not "Write about")
- Examples provided where helpful
- Limits set where appropriate ("3-5 items maximum")
- Save checkpoints with at logical points
- Variables use descriptive snake_case names
For Task Conversions
Content Preservation
- Task logic fully captured in workflow instructions
- Execution flow maintained
- User interaction points preserved
- Decision trees converted to workflow logic
- All processing steps accounted for
- Document generation patterns identified and preserved
Type Determination
- Workflow type correctly identified (document/action/interactive/meta)
- If generates documents, template.md created
- If performs actions only, marked as action workflow
- Output patterns properly analyzed
v6 Compliance
- Converted to proper workflow format (not standalone task)
- Follows workflow execution engine patterns
- Interactive elements use proper v6 tags
- Flow control uses v6 patterns (goto, check, loop)
- 1-9 elicitation menus converted to v6 elicitation
- Critical notices preserved in workflow.yaml
- YOLO mode converted to appropriate v6 patterns
Module-Level Validation
Structure
- Module follows v6 directory structure
- All components in correct locations:
- Agents in /agents/
- Workflows in /workflows/
- Data files in appropriate locations
- Config files properly formatted
Integration
- Cross-references between components work
- Workflow invocations use correct paths
- Data file references are valid
- No broken dependencies
Technical Validation
Syntax and Format
- YAML files have valid syntax (no parsing errors)
- XML structures properly formed and closed
- Markdown files render correctly
- File encoding is UTF-8
- Line endings consistent (LF)
Path Resolution
- All file paths resolve correctly
- Variable substitutions work ({project-root}, {installed_path}, etc.)
- Config references load properly
- No hardcoded absolute paths (unless intentional)
Functional Validation
Execution Testing
- Converted item can be loaded without errors
- Agents activate properly when invoked
- Workflows execute through completion
- User interaction points function correctly
- Output generation works as expected
Behavioral Validation
- Converted item behaves similarly to v4 version
- Core functionality preserved
- User experience maintains or improves
- No functionality regression
Documentation and Cleanup
Documentation
- Conversion report generated with all changes
- Any manual adjustments documented
- Known limitations or differences noted
- Migration instructions provided if needed
Post-Conversion
- Original v4 files archived (if requested)
- File permissions set correctly
- Git tracking updated if applicable
- User informed of new locations
Final Verification
Quality Assurance
- Converted item follows ALL v6 best practices
- Code/config is clean and maintainable
- No TODO or FIXME items remain
- Ready for production use
User Acceptance
- User reviewed conversion output
- User tested basic functionality
- User approved final result
- Any user feedback incorporated
Notes Section
Conversion Issues Found:
List any issues encountered during validation
Manual Interventions Required:
Document any manual fixes needed
Recommendations:
Suggestions for further improvements or considerations
Validation Result: [ ] PASSED / [ ] FAILED
Validator: {{user_name}} Date: {{date}} Items Converted: {{conversion_summary}}