mirror of
https://github.com/bmadcode/BMAD-METHOD.git
synced 2025-12-29 16:14:59 +00:00
refactor: Major v6 epic creation improvements and documentation overhaul
## Key Changes ### 1. Epic Creation Workflow Enhancements - Added user-value focused epic structure principles (NO technical layer breakdown) - Implemented multi-mode detection: CONTINUE, REPLACE, or UPDATE existing epics - Added comprehensive anti-pattern examples showing wrong vs right epic breakdown - Epics now created AFTER architecture for technically-informed story breakdown - Added checkpoint protocol for interactive workflow progression ### 2. Removed Deprecated Solutioning Gate Check - Deleted entire solutioning-gate-check workflow (682 lines) - Replaced by new implementation-readiness workflow - Cleaner separation of concerns in solutioning phase ### 3. PRD Template Simplification - Removed hardcoded "Implementation Planning", "References", and "Next Steps" sections - PRD now focuses purely on requirements, not workflow orchestration - Epics/stories created as separate step after architecture ### 4. Documentation Overhaul (15+ docs updated) - Updated quick-start guide with v6 workflow sequence - Clarified that epics are created AFTER architecture, not during PRD - Updated solutioning docs to reflect implementation-readiness pattern - Improved agents-guide, brownfield-guide, enterprise docs - Enhanced glossary, FAQ, and workflow reference documentation ### 5. Workflow Path Adjustments - All 4 paths updated (enterprise/method × brownfield/greenfield) - Version bumps across BMGD, BMM, and CIS workflow YAMLs - Minor instruction file updates for consistency ### Files Changed - 65 files total: 468 insertions, 978 deletions (net reduction of 510 lines) - 4 files deleted (entire solutioning-gate-check workflow) - 1 new directory added (implementation-readiness placeholder)
This commit is contained in:
@@ -6,6 +6,7 @@
|
||||
<critical>Communicate all responses in {communication_language}</critical>
|
||||
<critical>This is a meta-workflow that orchestrates the CIS brainstorming workflow with project-specific context</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
<critical>Generate all documents in {document_output_language}</critical>
|
||||
<critical>LIVING DOCUMENT: Write to domain-brief.md continuously as you discover - never wait until the end</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
|
||||
@@ -8,6 +8,7 @@
|
||||
<critical>Generate all documents in {document_output_language}</critical>
|
||||
<critical>LIVING DOCUMENT: Write to the document continuously as you discover - never wait until the end</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
## Input Document Discovery
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ input_file_patterns:
|
||||
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
# Module path and component files
|
||||
|
||||
@@ -14,6 +14,7 @@
|
||||
<critical>Add explicit instructions: "If you cannot find reliable data, state 'No verified data found for [X]'"</critical>
|
||||
<critical>Require confidence indicators in prompts: "Mark each claim with confidence level and source quality"</critical>
|
||||
<critical>Include fact-checking instructions: "Distinguish between verified facts, analysis, and speculation"</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
<critical>Clearly label: FACT (sourced data), ANALYSIS (your interpretation), PROJECTION (forecast/speculation)</critical>
|
||||
<critical>After each WebSearch, extract and store source URLs - include them in the report</critical>
|
||||
<critical>If a claim seems suspicious or too convenient, STOP and cross-verify with additional searches</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<!-- IDE-INJECT-POINT: market-research-subagents -->
|
||||
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
<critical>Flag any data you are uncertain about with confidence levels: [High Confidence], [Medium Confidence], [Low Confidence - verify]</critical>
|
||||
<critical>Distinguish clearly between: FACTS (from sources), ANALYSIS (your interpretation), and SPECULATION (educated guesses)</critical>
|
||||
<critical>When using WebSearch results, ALWAYS extract and include the source URL for every claim</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<!-- IDE-INJECT-POINT: research-subagents -->
|
||||
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
<critical>Distinguish: FACT (from official docs/sources), OPINION (from community/reviews), SPECULATION (your analysis)</critical>
|
||||
<critical>If you cannot find current information about a technology, state: "I could not find recent {{current_year}} data on [X]"</critical>
|
||||
<critical>Extract and include source URLs in all technology profiles and comparisons</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
|
||||
@@ -4,16 +4,16 @@
|
||||
<critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
|
||||
<critical>This workflow transforms requirements into BITE-SIZED STORIES for development agents</critical>
|
||||
<critical>EVERY story must be completable by a single dev agent in one focused session</critical>
|
||||
<critical>BMAD METHOD WORKFLOW POSITION: This is the FIRST PASS at epic breakdown</critical>
|
||||
<critical>After this workflow: UX Design will add interaction details → UPDATE epics.md</critical>
|
||||
<critical>After UX: Architecture will add technical decisions → UPDATE epics.md AGAIN</critical>
|
||||
<critical>Phase 4 Implementation pulls context from: PRD + epics.md + UX + Architecture</critical>
|
||||
<critical>⚠️ EPIC STRUCTURE PRINCIPLE: Each epic MUST deliver USER VALUE, not just technical capability. Epics are NOT organized by technical layers (database, API, frontend). Each epic should result in something USERS can actually use or benefit from. Exception: Foundation/setup stories at the start of first epic are acceptable. Another valid exception: API-first epic ONLY when the API itself has standalone value (e.g., will be consumed by third parties or multiple frontends).</critical>
|
||||
<critical>BMAD METHOD WORKFLOW POSITION: This workflow can be invoked at multiple points - after PRD only, after PRD+UX, after PRD+UX+Architecture, or to update existing epics. If epics.md already exists, ASK the user: (1) CONTINUING - previous run was incomplete, (2) REPLACING - starting fresh/discarding old, (3) UPDATING - new planning document created since last epic generation</critical>
|
||||
<critical>This is a LIVING DOCUMENT that evolves through the BMad Method workflow chain</critical>
|
||||
<critical>Phase 4 Implementation pulls context from: PRD + epics.md + UX + Architecture</critical>
|
||||
<critical>Communicate all responses in {communication_language} and adapt to {user_skill_level}</critical>
|
||||
<critical>Generate all documents in {document_output_language}</critical>
|
||||
<critical>LIVING DOCUMENT: Write to epics.md continuously as you work - never wait until the end</critical>
|
||||
<critical>Input documents specified in workflow.yaml input_file_patterns - workflow engine handles fuzzy matching, whole vs sharded document discovery automatically</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
@@ -26,7 +26,6 @@
|
||||
<action>Check if {default_output_file} exists (epics.md)</action>
|
||||
|
||||
<check if="epics.md exists">
|
||||
<action>Set mode = "UPDATE"</action>
|
||||
<action>Load existing epics.md completely</action>
|
||||
<action>Extract existing:
|
||||
- Epic structure and titles
|
||||
@@ -35,15 +34,28 @@
|
||||
- Existing acceptance criteria
|
||||
</action>
|
||||
|
||||
<output>📝 **UPDATE MODE DETECTED**
|
||||
<output>📝 **Existing epics.md found!**
|
||||
|
||||
Found existing epics.md - I'll enhance it with newly available context.
|
||||
|
||||
Existing structure:
|
||||
Current structure:
|
||||
|
||||
- {{epic_count}} epics defined
|
||||
- {{story_count}} total stories
|
||||
</output>
|
||||
|
||||
<ask>What would you like to do?
|
||||
|
||||
1. **CONTINUING** - Previous run was incomplete, continue where we left off
|
||||
2. **REPLACING** - Start fresh, discard existing epic structure
|
||||
3. **UPDATING** - New planning document created (UX/Architecture), enhance existing epics
|
||||
|
||||
Enter your choice (1-3):</ask>
|
||||
|
||||
<action>Set mode based on user choice:
|
||||
|
||||
- Choice 1: mode = "CONTINUE" (resume incomplete work)
|
||||
- Choice 2: mode = "CREATE" (start fresh, ignore existing)
|
||||
- Choice 3: mode = "UPDATE" (enhance with new context)
|
||||
</action>
|
||||
</check>
|
||||
|
||||
<check if="epics.md does not exist">
|
||||
@@ -211,6 +223,31 @@ Name epics based on VALUE, not technical layers:
|
||||
- Good: "User Onboarding", "Content Discovery", "Compliance Framework"
|
||||
- Avoid: "Database Layer", "API Endpoints", "Frontend"
|
||||
|
||||
**⚠️ ANTI-PATTERN EXAMPLES (DO NOT DO THIS):**
|
||||
|
||||
❌ **WRONG - Technical Layer Breakdown:**
|
||||
|
||||
- Epic 1: Database Schema & Models
|
||||
- Epic 2: API Layer / Backend Services
|
||||
- Epic 3: Frontend UI Components
|
||||
- Epic 4: Integration & Testing
|
||||
|
||||
WHY IT'S WRONG: User gets ZERO value until ALL epics complete. No incremental delivery.
|
||||
|
||||
✅ **CORRECT - User Value Breakdown:**
|
||||
|
||||
- Epic 1: Foundation (project setup - necessary exception)
|
||||
- Epic 2: User Authentication (user can register/login - VALUE DELIVERED)
|
||||
- Epic 3: Content Management (user can create/edit content - VALUE DELIVERED)
|
||||
- Epic 4: Social Features (user can share/interact - VALUE DELIVERED)
|
||||
|
||||
WHY IT'S RIGHT: Each epic delivers something users can USE. Incremental value.
|
||||
|
||||
**Valid Exceptions:**
|
||||
|
||||
1. **Foundation Epic**: First epic CAN be setup/infrastructure (greenfield projects need this)
|
||||
2. **API-First Epic**: ONLY valid if the API has standalone value (third-party consumers, multiple frontends, API-as-product). If it's just "backend for our frontend", that's the WRONG pattern.
|
||||
|
||||
Each epic should:
|
||||
|
||||
- Have clear business goal and user value
|
||||
@@ -391,6 +428,34 @@ For each story in epic {{N}}, output variables following this pattern:
|
||||
<template-output>story-title-{{N}}-{{M}}</template-output>
|
||||
</check>
|
||||
|
||||
<action>**EPIC {{N}} REVIEW - Present for Checkpoint:**
|
||||
|
||||
Summarize the COMPLETE epic breakdown:
|
||||
|
||||
**Epic {{N}}: {{epic_title}}**
|
||||
Goal: {{epic_goal}}
|
||||
|
||||
Stories ({{count}} total):
|
||||
{{for each story, show:}}
|
||||
|
||||
- Story {{N}}.{{M}}: {{story_title}}
|
||||
- User Story: As a... I want... So that...
|
||||
- Acceptance Criteria: (BDD format summary)
|
||||
- Prerequisites: {{list}}
|
||||
|
||||
**Review Questions to Consider:**
|
||||
|
||||
- Is the story sequence logical?
|
||||
- Are acceptance criteria clear and testable?
|
||||
- Are there any missing stories for the FRs this epic covers?
|
||||
- Are the stories sized appropriately (single dev agent session)?
|
||||
- FRs covered by this epic: {{FR_list}}
|
||||
|
||||
**NOTE:** At the checkpoint prompt, select [a] for Advanced Elicitation if you want to refine stories, add missing ones, or reorder. Select [c] to approve this epic and continue to the next one.
|
||||
</action>
|
||||
|
||||
<template-output>epic\_{{N}}\_complete_breakdown</template-output>
|
||||
|
||||
</step>
|
||||
|
||||
<step n="4" goal="Review epic breakdown and completion">
|
||||
@@ -445,6 +510,23 @@ The epic breakdown now includes all available context for Phase 4 implementation
|
||||
<check if="mode == 'CREATE'">
|
||||
<action>Review the complete epic breakdown for quality and completeness
|
||||
|
||||
**Validate Epic Structure (USER VALUE CHECK):**
|
||||
|
||||
For each epic, answer: "What can USERS do after this epic is complete that they couldn't do before?"
|
||||
|
||||
- Epic 1: [Must have clear user value OR be Foundation exception]
|
||||
- Epic 2: [Must deliver user-facing capability]
|
||||
- Epic N: [Must deliver user-facing capability]
|
||||
|
||||
⚠️ RED FLAG: If an epic only delivers technical infrastructure (database layer, API without users, component library without features), RESTRUCTURE IT. Each epic should enable users to accomplish something.
|
||||
|
||||
Exception validation:
|
||||
|
||||
- Foundation epic: Acceptable as first epic for greenfield projects
|
||||
- API-first epic: Acceptable ONLY if API has standalone consumers (third-party integrations, multiple frontends, API-as-product)
|
||||
|
||||
If any epic fails this check, restructure before proceeding.
|
||||
|
||||
**Validate FR Coverage:**
|
||||
|
||||
Create FR Coverage Matrix showing each FR mapped to epic(s) and story(ies):
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
<critical>DOCUMENT OUTPUT: Professional, specific, actionable UX design decisions WITH RATIONALE. User skill level ({user_skill_level}) affects conversation style ONLY, not document content.</critical>
|
||||
<critical>Input documents specified in workflow.yaml input_file_patterns - workflow engine handles fuzzy matching, whole vs sharded document discovery automatically</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<step n="0" goal="Validate workflow readiness" tag="workflow-status">
|
||||
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
|
||||
|
||||
@@ -42,7 +42,7 @@ input_file_patterns:
|
||||
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
# Module path and component files
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
<critical>GUIDING PRINCIPLE: Identify what makes this product special and ensure it's reflected throughout the PRD</critical>
|
||||
<critical>Input documents specified in workflow.yaml input_file_patterns - workflow engine handles fuzzy matching, whole vs sharded document discovery automatically</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
|
||||
@@ -199,37 +199,6 @@ _No specific non-functional requirements identified for this project type._
|
||||
|
||||
---
|
||||
|
||||
## Implementation Planning
|
||||
|
||||
### Epic Breakdown Required
|
||||
|
||||
**Next Step:** Run `workflow create-epics-and-stories` to create the implementation breakdown.
|
||||
|
||||
---
|
||||
|
||||
## References
|
||||
|
||||
{{#if product_brief_path}}
|
||||
|
||||
- Product Brief: {{product_brief_path}}
|
||||
{{/if}}
|
||||
{{#if domain_brief_path}}
|
||||
- Domain Brief: {{domain_brief_path}}
|
||||
{{/if}}
|
||||
{{#if research_documents}}
|
||||
- Research: {{research_documents}}
|
||||
{{/if}}
|
||||
|
||||
---
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. **Epic & Story Breakdown** - Run: `workflow epics-stories`
|
||||
2. **UX Design** (if UI) - Run: `workflow ux-design`
|
||||
3. **Architecture** - Run: `workflow create-architecture`
|
||||
|
||||
---
|
||||
|
||||
_This PRD captures the essence of {{project_name}} - {{product_value_summary}}_
|
||||
|
||||
_Created through collaborative discovery between {{user_name}} and AI facilitator._
|
||||
|
||||
@@ -28,7 +28,7 @@
|
||||
### Document Discovery
|
||||
|
||||
- [ ] **Existing documents loaded**: Product brief, research docs found and incorporated (if they exist)
|
||||
- [ ] **Document-project output**: Checked for {output_folder}/docs/index.md (brownfield codebase map)
|
||||
- [ ] **Document-project output**: Checked for {output_folder}/index.md (brownfield codebase map)
|
||||
- [ ] **Sharded documents**: If sharded versions found, ALL sections loaded and synthesized
|
||||
- [ ] **Context summary**: loaded_documents_summary lists all sources used
|
||||
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
# Unified Epic and Story Generation
|
||||
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
<critical>This generates epic + stories for ALL quick-flow projects</critical>
|
||||
|
||||
@@ -13,6 +13,7 @@
|
||||
<critical>DOCUMENT OUTPUT: Technical, precise, definitive. Specific versions only. User skill level ({user_skill_level}) affects conversation style ONLY, not document content.</critical>
|
||||
<critical>Input documents specified in workflow.yaml input_file_patterns - workflow engine handles fuzzy matching, whole vs sharded document discovery automatically</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<step n="0" goal="Validate workflow readiness and detect project level" tag="workflow-status">
|
||||
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
|
||||
@@ -135,7 +136,7 @@ Search for and load (using dual-strategy: whole first, then sharded):
|
||||
- If found: Load completely and extract insights
|
||||
|
||||
3. **Document-Project Output (CRITICAL for brownfield):**
|
||||
- Always check: {output_folder}/docs/index.md
|
||||
- Always check: {output_folder}/index.md
|
||||
- If found: This is the brownfield codebase map - load ALL shards!
|
||||
- Extract: File structure, key modules, existing patterns, naming conventions
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ input_file_patterns:
|
||||
load_strategy: "FULL_LOAD"
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
standalone: true
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
**Purpose**: Validate the architecture document itself is complete, implementable, and provides clear guidance for AI agents.
|
||||
|
||||
**Note**: This checklist validates the ARCHITECTURE DOCUMENT only. For cross-workflow validation (PRD → Architecture → Stories alignment), use the solutioning-gate-check workflow.
|
||||
**Note**: This checklist validates the ARCHITECTURE DOCUMENT only. For cross-workflow validation (PRD → Architecture → Stories alignment), use the implementation-readiness workflow.
|
||||
|
||||
---
|
||||
|
||||
@@ -233,8 +233,8 @@
|
||||
|
||||
---
|
||||
|
||||
**Next Step**: Run the **solutioning-gate-check** workflow to validate alignment between PRD, UX, Architecture, and Stories before beginning implementation.
|
||||
**Next Step**: Run the **implementation-readiness** workflow to validate alignment between PRD, UX, Architecture, and Stories before beginning implementation.
|
||||
|
||||
---
|
||||
|
||||
_This checklist validates architecture document quality only. Use solutioning-gate-check for comprehensive readiness validation._
|
||||
_This checklist validates architecture document quality only. Use implementation-readiness for comprehensive readiness validation._
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
<critical>Input documents specified in workflow.yaml input_file_patterns - workflow engine handles fuzzy matching, whole vs sharded document discovery automatically</critical>
|
||||
<critical>ELICITATION POINTS: After completing each major architectural decision area (identified by template-output tags for decision_record, project_structure, novel_pattern_designs, implementation_patterns, and architecture_document), invoke advanced elicitation to refine decisions before proceeding</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<step n="0" goal="Validate workflow readiness" tag="workflow-status">
|
||||
<action>Check if {output_folder}/bmm-workflow-status.yaml exists</action>
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
# Implementation Ready Check - Workflow Instructions
|
||||
# Implementation Readiness - Workflow Instructions
|
||||
|
||||
<critical>The workflow execution engine is governed by: {project-root}/{bmad_folder}/core/tasks/workflow.xml</critical>
|
||||
<critical>You MUST have already loaded and processed: {project-root}/{bmad_folder}/bmm/workflows/3-solutioning/solutioning-gate-check/workflow.yaml</critical>
|
||||
<critical>You MUST have already loaded and processed: {project-root}/{bmad_folder}/bmm/workflows/3-solutioning/implementation-readiness/workflow.yaml</critical>
|
||||
<critical>Communicate all findings and analysis in {communication_language} throughout the assessment</critical>
|
||||
<critical>Input documents specified in workflow.yaml input_file_patterns - workflow engine handles fuzzy matching, whole vs sharded document discovery automatically</critical>
|
||||
<critical>⚠️ ABSOLUTELY NO TIME ESTIMATES - NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed - what once took teams weeks/months can now be done by one person in hours. DO NOT give ANY time estimates whatsoever.</critical>
|
||||
<critical>⚠️ CHECKPOINT PROTOCOL: After EVERY <template-output> tag, you MUST follow workflow.xml substep 2c: SAVE content to file immediately → SHOW checkpoint separator (━━━━━━━━━━━━━━━━━━━━━━━) → DISPLAY generated content → PRESENT options [a]Advanced Elicitation/[c]Continue/[p]Party-Mode/[y]YOLO → WAIT for user response. Never batch saves or skip checkpoints.</critical>
|
||||
|
||||
<workflow>
|
||||
|
||||
@@ -12,7 +13,7 @@
|
||||
<action>Check if {workflow_status_file} exists</action>
|
||||
|
||||
<check if="status file not found">
|
||||
<output>No workflow status file found. Implementation Ready Check can run standalone or as part of BMM workflow path.</output>
|
||||
<output>No workflow status file found. Implementation Readiness check can run standalone or as part of BMM workflow path.</output>
|
||||
<output>**Recommended:** Run `workflow-init` first for project context tracking and workflow sequencing.</output>
|
||||
<ask>Continue in standalone mode or exit to run workflow-init? (continue/exit)</ask>
|
||||
<check if="continue">
|
||||
@@ -26,14 +27,14 @@
|
||||
<check if="status file found">
|
||||
<action>Load the FULL file: {workflow_status_file}</action>
|
||||
<action>Parse workflow_status section</action>
|
||||
<action>Check status of "solutioning-gate-check" workflow</action>
|
||||
<action>Check status of "implementation-readiness" workflow</action>
|
||||
<action>Get {selected_track} (quick-flow, bmad-method, or enterprise-bmad-method)</action>
|
||||
<action>Find first non-completed workflow (next expected workflow)</action>
|
||||
|
||||
<action>Based on the selected_track, understand what artifacts should exist: - quick-flow: Tech spec and simple stories in an epic only (no PRD, minimal solutioning) - bmad-method and enterprise-bmad-method: PRD, tech spec, epics/stories, architecture, possible UX artifacts</action>
|
||||
<action>Based on the selected_track, understand what artifacts should exist: - quick-flow: Tech spec and simple stories in an epic only (no PRD, minimal solutioning) - bmad-method and enterprise-bmad-method: PRD, UX design, epics/stories, architecture</action>
|
||||
|
||||
<check if="solutioning-gate-check status is file path (already completed)">
|
||||
<output>⚠️ Gate check already completed: {{solutioning-gate-check status}}</output>
|
||||
<check if="implementation-readiness status is file path (already completed)">
|
||||
<output>⚠️ Implementation readiness check already completed: {{implementation-readiness status}}</output>
|
||||
<ask>Re-running will create a new validation report. Continue? (y/n)</ask>
|
||||
<check if="n">
|
||||
<output>Exiting. Use workflow-status to see your next step.</output>
|
||||
@@ -41,9 +42,9 @@
|
||||
</check>
|
||||
</check>
|
||||
|
||||
<check if="solutioning-gate-check is not the next expected workflow">
|
||||
<output>⚠️ Next expected workflow: {{next_workflow}}. Gate check is out of sequence.</output>
|
||||
<ask>Continue with gate check anyway? (y/n)</ask>
|
||||
<check if="implementation-readiness is not the next expected workflow">
|
||||
<output>⚠️ Next expected workflow: {{next_workflow}}. Implementation readiness check is out of sequence.</output>
|
||||
<ask>Continue with readiness check anyway? (y/n)</ask>
|
||||
<check if="n">
|
||||
<output>Exiting. Run {{next_workflow}} instead.</output>
|
||||
<action>Exit workflow</action>
|
||||
@@ -257,25 +258,27 @@
|
||||
<step n="7" goal="Update status and complete" tag="workflow-status">
|
||||
<check if="standalone_mode != true">
|
||||
<action>Load the FULL file: {workflow_status_file}</action>
|
||||
<action>Find workflow_status key "solutioning-gate-check"</action>
|
||||
<action>Find workflow_status key "implementation-readiness"</action>
|
||||
<critical>ONLY write the file path as the status value - no other text, notes, or metadata</critical>
|
||||
<action>Update workflow_status["solutioning-gate-check"] = "{output_folder}/bmm-readiness-assessment-{{date}}.md"</action>
|
||||
<action>Update workflow_status["implementation-readiness"] = "{output_folder}/implementation-readiness-report-{{date}}.md"</action>
|
||||
<action>Save file, preserving ALL comments and structure including STATUS DEFINITIONS</action>
|
||||
|
||||
<action>Find first non-completed workflow in workflow_status (next workflow to do)</action>
|
||||
<action>Determine next agent from path file based on next workflow</action>
|
||||
</check>
|
||||
|
||||
<output>**✅ Implementation Ready Check Complete!**
|
||||
<action>Determine overall readiness status from the readiness_assessment (Ready, Ready with Conditions, or Not Ready)</action>
|
||||
|
||||
<output>**✅ Implementation Readiness Check Complete!**
|
||||
|
||||
**Assessment Report:**
|
||||
|
||||
- Readiness assessment saved to: {output_folder}/bmm-readiness-assessment-{{date}}.md
|
||||
- Readiness assessment saved to: {output_folder}/implementation-readiness-report-{{date}}.md
|
||||
|
||||
{{#if standalone_mode != true}}
|
||||
**Status Updated:**
|
||||
|
||||
- Progress tracking updated: solutioning-gate-check marked complete
|
||||
- Progress tracking updated: implementation-readiness marked complete
|
||||
- Next workflow: {{next_workflow}}
|
||||
{{else}}
|
||||
**Note:** Running in standalone mode (no progress tracking)
|
||||
@@ -297,6 +300,32 @@ Since no workflow is in progress:
|
||||
{{/if}}
|
||||
</output>
|
||||
|
||||
<check if="overall readiness status is Ready OR Ready with Conditions">
|
||||
<output>**🚀 Ready for Implementation!**
|
||||
|
||||
Your project artifacts are aligned and complete. You can now proceed to Phase 4: Implementation.
|
||||
</output>
|
||||
|
||||
<ask>Would you like to run the **sprint-planning** workflow to initialize your sprint tracking and prepare for development? (yes/no)</ask>
|
||||
|
||||
<check if="yes">
|
||||
<action>Inform user that sprint-planning workflow will be invoked</action>
|
||||
<invoke-workflow path="{project-root}/{bmad_folder}/bmm/workflows/4-implementation/sprint-planning/workflow.yaml" />
|
||||
</check>
|
||||
<check if="no">
|
||||
<output>You can run sprint-planning later when ready: `sprint-planning`</output>
|
||||
</check>
|
||||
</check>
|
||||
|
||||
<check if="overall readiness status is Not Ready">
|
||||
<output>**⚠️ Not Ready for Implementation**
|
||||
|
||||
Critical issues must be resolved before proceeding. Review the assessment report and address the identified gaps.
|
||||
|
||||
Once issues are resolved, re-run implementation-readiness to validate again.
|
||||
</output>
|
||||
</check>
|
||||
|
||||
<template-output>status_update_result</template-output>
|
||||
</step>
|
||||
|
||||
@@ -143,4 +143,4 @@ _Minor items for consideration_
|
||||
|
||||
---
|
||||
|
||||
_This readiness assessment was generated using the BMad Method Implementation Ready Check workflow (v6-alpha)_
|
||||
_This readiness assessment was generated using the BMad Method Implementation Readiness workflow (v6-alpha)_
|
||||
@@ -1,7 +1,7 @@
|
||||
# Implementation Ready Check - Workflow Configuration
|
||||
name: solutioning-gate-check
|
||||
description: "Systematically validate that all planning and solutioning phases are complete and properly aligned before transitioning to Phase 4 implementation. Ensures PRD, architecture, and stories are cohesive with no gaps or contradictions."
|
||||
author: "BMad Builder"
|
||||
# Implementation Readiness - Workflow Configuration
|
||||
name: implementation-readiness
|
||||
description: "Validate that PRD, UX Design, Architecture, Epics and Stories are complete and aligned before Phase 4 implementation. Ensures all artifacts cover the MVP requirements with no gaps or contradictions."
|
||||
author: "BMad"
|
||||
|
||||
# Critical variables from config
|
||||
config_source: "{project-root}/{bmad_folder}/bmm/config.yaml"
|
||||
@@ -17,7 +17,7 @@ workflow_paths_dir: "{project-root}/{bmad_folder}/bmm/workflows/workflow-status/
|
||||
workflow_status_file: "{output_folder}/bmm-workflow-status.yaml"
|
||||
|
||||
# Module path and component files
|
||||
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/3-solutioning/solutioning-gate-check"
|
||||
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/3-solutioning/implementation-readiness"
|
||||
template: "{installed_path}/template.md"
|
||||
instructions: "{installed_path}/instructions.md"
|
||||
validation: "{installed_path}/checklist.md"
|
||||
@@ -56,7 +56,7 @@ input_file_patterns:
|
||||
load_strategy: "FULL_LOAD"
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
standalone: true
|
||||
@@ -54,7 +54,7 @@ input_file_patterns:
|
||||
load_strategy: "SELECTIVE_LOAD"
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
standalone: true
|
||||
|
||||
@@ -43,7 +43,7 @@ input_file_patterns:
|
||||
load_strategy: "FULL_LOAD"
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
installed_path: "{project-root}/{bmad_folder}/bmm/workflows/4-implementation/correct-course"
|
||||
|
||||
@@ -45,7 +45,7 @@ input_file_patterns:
|
||||
load_strategy: "SELECTIVE_LOAD"
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
# Workflow components
|
||||
|
||||
@@ -51,7 +51,7 @@ input_file_patterns:
|
||||
load_strategy: "SELECTIVE_LOAD"
|
||||
document_project:
|
||||
description: "Brownfield project documentation (optional)"
|
||||
sharded: "{output_folder}/docs/index.md"
|
||||
sharded: "{output_folder}/index.md"
|
||||
load_strategy: "INDEX_GUIDED"
|
||||
|
||||
# Output configuration
|
||||
|
||||
@@ -30,7 +30,7 @@ The workflow auto-detects which mode to use based on project phase.
|
||||
|
||||
2. **Check workflow-status.yaml**
|
||||
- Read `{output_folder}/bmm-workflow-status.yaml`
|
||||
- If `solutioning-gate-check: required` or `solutioning-gate-check: recommended` → **System-Level Mode** (Phase 3)
|
||||
- If `implementation-readiness: required` or `implementation-readiness: recommended` → **System-Level Mode** (Phase 3)
|
||||
- Otherwise → **Epic-Level Mode** (Phase 4 without sprint status yet)
|
||||
|
||||
3. **Mode-Specific Requirements**
|
||||
|
||||
@@ -121,10 +121,10 @@ phases:
|
||||
command: "create-epics-and-stories"
|
||||
note: "Required: Create final epic breakdown with full context (PRD + UX + Architecture)"
|
||||
|
||||
- id: "solutioning-gate-check"
|
||||
- id: "implementation-readiness"
|
||||
required: true
|
||||
agent: "architect"
|
||||
command: "solutioning-gate-check"
|
||||
command: "implementation-readiness"
|
||||
note: "Critical gate - validates all planning + Epics before touching production system"
|
||||
|
||||
- phase: 3
|
||||
|
||||
@@ -109,10 +109,10 @@ phases:
|
||||
command: "create-epics-and-stories"
|
||||
note: "Required: Create final epic breakdown with full context (PRD + UX + Architecture)"
|
||||
|
||||
- id: "solutioning-gate-check"
|
||||
- id: "implementation-readiness"
|
||||
required: true
|
||||
agent: "architect"
|
||||
command: "solutioning-gate-check"
|
||||
command: "implementation-readiness"
|
||||
note: "Validates all planning artifacts + Epics + testability align before implementation"
|
||||
|
||||
- phase: 3
|
||||
|
||||
@@ -105,11 +105,11 @@ phases:
|
||||
agent: "architect"
|
||||
command: "validate-architecture"
|
||||
|
||||
- id: "solutioning-gate-check"
|
||||
- id: "implementation-readiness"
|
||||
required: true
|
||||
agent: "architect"
|
||||
command: "solutioning-gate-check"
|
||||
note: "Validates PRD + UX + Architecture + Epics (if created) cohesion"
|
||||
command: "implementation-readiness"
|
||||
note: "Validates PRD + UX + Architecture + Epics cohesion before implementation"
|
||||
|
||||
- phase: 3
|
||||
name: "Implementation"
|
||||
|
||||
@@ -96,10 +96,10 @@ phases:
|
||||
command: "validate-architecture"
|
||||
note: "Quality check for architecture completeness"
|
||||
|
||||
- id: "solutioning-gate-check"
|
||||
- id: "implementation-readiness"
|
||||
required: true
|
||||
agent: "architect"
|
||||
command: "solutioning-gate-check"
|
||||
command: "implementation-readiness"
|
||||
note: "Validates PRD + UX + Architecture + Epics + Testability cohesion before implementation"
|
||||
|
||||
- phase: 3
|
||||
|
||||
Reference in New Issue
Block a user