Brian Madison 48cf5c8056 feat(workflows): Implement intelligent file discovery protocol and Phase 4 BMGD workflows
## 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
2025-11-12 19:18:38 -06:00

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}}