The workflow execution engine is governed by: {project-root}/_bmad/core/tasks/workflow.xml You MUST have already loaded and processed: {project-root}/_bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml
Strategy: Sprint planning needs ALL epics and stories to build complete status tracking.
Epic Discovery Process:
epics.md, bmm-epics.md, or any *epic*.md fileepics/index.mdindex.md to understand the document structureepic-1.md, epic-2.md, etc.)Fuzzy matching: Be flexible with document names - users may use variations like epics.md, bmm-epics.md, user-stories.md, etc.
Communicate in {communication_language} with {user_name}
Look for all files matching {epics_pattern} in {epics_location}
Could be a single epics.md file or multiple epic-1.md, epic-2.md files
For each epic file found, extract:
## Epic 1: or ## Epic 2:### Story 1.1: User AuthenticationEpic.Story: Title to kebab-case key: epic-story-titleStory ID Conversion Rules:
### Story 1.1: User Authentication1-1user-authentication1-1-user-authenticationBuild complete inventory of all epics and stories from all epic files
<invoke-protocol name="discover_inputs" />
<note>After discovery, these content variables are available: {epics_content} (all epics loaded - uses FULL_LOAD strategy)</note>
For each epic found, create entries in this order:
epic-{num}, Default status: backlog{epic}-{story}-{title}, Default status: backlogepic-{num}-retrospective, Default status: optionalExample structure:
development_status:
epic-1: backlog
1-1-user-authentication: backlog
1-2-account-management: backlog
epic-1-retrospective: optional
For each story, detect current status by checking files:
Story file detection:
{story_location_absolute}/{story-key}.md (e.g., stories/1-1-user-authentication.md)ready-for-devPreservation rule:
{status_file} exists and has more advanced status, preserve itdone to ready-for-dev)Status Flow Reference:
backlog → in-progress → donebacklog → ready-for-dev → in-progress → review → doneoptional ↔ done
Create or update {status_file} with:
File Structure:
# generated: {date}
# project: {project_name}
# project_key: {project_key}
# tracking_system: {tracking_system}
# story_location: {story_location}
# STATUS DEFINITIONS:
# ==================
# Epic Status:
# - backlog: Epic not yet started
# - in-progress: Epic actively being worked on
# - done: All stories in epic completed
#
# Epic Status Transitions:
# - backlog → in-progress: Automatically when first story is created (via create-story)
# - in-progress → done: Manually when all stories reach 'done' status
#
# Story Status:
# - backlog: Story only exists in epic file
# - ready-for-dev: Story file created in stories folder
# - in-progress: Developer actively working on implementation
# - review: Ready for code review (via Dev's code-review workflow)
# - done: Story completed
#
# Retrospective Status:
# - optional: Can be completed but not required
# - done: Retrospective has been completed
#
# WORKFLOW NOTES:
# ===============
# - Epic transitions to 'in-progress' automatically when first story is created
# - Stories can be worked in parallel if team capacity allows
# - SM typically creates next story after previous one is 'done' to incorporate learnings
# - Dev moves story to 'review', then runs code-review (fresh context, different LLM recommended)
generated: { date }
project: { project_name }
project_key: { project_key }
tracking_system: { tracking_system }
story_location: { story_location }
development_status:
# All epics, stories, and retrospectives in order
Write the complete sprint status YAML to {status_file} CRITICAL: Metadata appears TWICE - once as comments (#) for documentation, once as YAML key:value fields for parsing Ensure all items are ordered: epic, its stories, its retrospective, next epic...
Perform validation checks:
Count totals:
Display completion summary to {user_name} in {communication_language}:
Sprint Status Generated Successfully
Next Steps:
Epic Status Flow:
backlog → in-progress → done
Story Status Flow:
backlog → ready-for-dev → in-progress → review → done
stories/1-3-plant-naming.md)Retrospective Status:
optional ↔ done
in-progress when starting work on its first storyin-progress if team capacity allowsreview before donedone to incorporate learnings