22 KiB
Retrospective - Epic Completion Review Instructions
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/retrospective/workflow.yaml Communicate all responses in {communication_language} and language MUST be tailored to {user_skill_level} Generate all documents in {document_output_language}
DOCUMENT OUTPUT: Retrospective analysis. Concise insights, lessons learned, action items. User skill level ({user_skill_level}) affects conversation style ONLY, not retrospective content. FACILITATION NOTES:
- Scrum Master facilitates this retrospective
- Psychological safety is paramount - NO BLAME
- Focus on systems, processes, and learning
- Everyone contributes with specific examples preferred
- Action items must be achievable with clear ownership
- Two-part format: (1) Epic Review + (2) Next Epic Preparation
Verify epic completion status:
Load the FULL file: {output_folder}/sprint-status.yaml Read ALL development_status entries
Find all stories for epic {{epic_number}}:
- Look for keys starting with "{{epic_number}}-" (e.g., "1-1-", "1-2-", etc.)
- Exclude epic key itself ("epic-{{epic_number}}")
- Exclude retrospective key ("epic-{{epic_number}}-retrospective")
Count total stories found for this epic Count stories with status = "done" Collect list of pending story keys (status != "done") Determine if complete: true if all stories are done, false otherwise
⚠️ Epic {{epic_number}} is not yet complete for retrospectiveEpic Status:
- Total Stories: {{total_stories}}
- Completed (Done): {{done_stories}}
- Pending: {{pending_count}}
Pending Stories: {{pending_story_list}}
Options:
- Complete remaining stories before running retrospective
- Continue with partial retrospective (not recommended)
- Run sprint-planning to refresh story tracking
Epic is incomplete. Continue anyway? (yes/no)
HALTSet {{partial_retrospective}} = true
✅ Epic {{epic_number}} is complete - all {{done_stories}} stories done!Ready to proceed with retrospective.
Load the completed epic from: {output_folder}/prd/epic-{{epic_number}}.md Extract epic details:
- Epic title and goals
- Success criteria
- Planned stories and story points
- Estimated sprint duration
- Business objectives
Find all stories for this epic in {output_folder}/stories/ For each story, extract: - Story number and title - Completion status - Story points (if tracked) - Actual completion date - Dev Agent Record notes - TEA Results and testing outcomes - PO Notes and acceptance - Blockers encountered and resolution - Technical debt incurred
Calculate epic metrics: - Completed stories vs. total planned - Actual story points delivered vs. planned - Actual sprints taken vs. estimated - Velocity (points per sprint) - Blocker count - Technical debt items logged
Review epic goals and compare actual outcomes vs. planned Note any scope changes or descoped items Document key architectural decisions made during epic Identify technical debt incurred and why
Identify the next epic in sequence Load next epic from: {output_folder}/prd/epic-{{next_epic_number}}.md Analyze next epic for: - Epic title and objectives - Planned stories and complexity - Dependencies on completed epic work - New technical requirements or capabilities needed - Potential risks or unknownsIdentify dependencies on completed work:
- What components from Epic {{completed_number}} does Epic {{next_number}} rely on?
- Are all prerequisites complete and stable?
- Any incomplete work that creates blocking dependencies?
Note potential gaps or preparation needed:
- Technical setup required (infrastructure, tools, libraries)
- Knowledge gaps to fill (research, training, spikes)
- Refactoring needed before starting next epic
- Documentation or specifications to create
Check for technical prerequisites:
- APIs or integrations that must be ready
- Data migrations or schema changes needed
- Testing infrastructure requirements
- Deployment or environment setup
🔄 TEAM RETROSPECTIVE - Epic {{epic_number}}: {{epic_title}}
Scrum Master facilitating
═══════════════════════════════════════════════════════════
EPIC {{epic_number}} SUMMARY:
Delivery Metrics:
- Completed: {{completed_stories}}/{{total_stories}} stories ({{completion_percentage}}%)
- Velocity: {{actual_points}} story points (planned: {{planned_points}})
- Duration: {{actual_sprints}} sprints (planned: {{planned_sprints}})
- Average velocity: {{points_per_sprint}} points/sprint
Quality and Technical:
- Blockers encountered: {{blocker_count}}
- Technical debt items: {{debt_count}}
- Test coverage: {{coverage_info}}
- Production incidents: {{incident_count}}
Business Outcomes:
- Goals achieved: {{goals_met}}/{{total_goals}}
- Success criteria: {{criteria_status}}
- Stakeholder feedback: {{feedback_summary}}
═══════════════════════════════════════════════════════════
NEXT EPIC PREVIEW: Epic {{next_number}}: {{next_epic_title}}
Dependencies on Epic {{epic_number}}:
{{list_dependencies}}
Preparation Needed:
{{list_preparation_gaps}}
Technical Prerequisites:
{{list_technical_prereqs}}
═══════════════════════════════════════════════════════════
Team assembled for reflection:
{{list_agents_based_on_story_records}}
Focus Areas:
1. Learning from Epic {{epic_number}} execution
2. Preparing for Epic {{next_number}} success
Load agent configurations from {agent-manifest} Ensure key roles present from the {agent_manifest}: Product Owner, Scrum Master (facilitating the retro), Devs, Testing or QA, Architect, Analyst
Scrum Master facilitates Part 1: Reviewing the completed epic through natural, psychologically safe discussion Create space for each agent to share their perspective in their unique voice and communication style, grounded in actual story data and outcomes Maintain psychological safety throughout - focus on learning and systems, not blame or individual performanceGuide the retrospective conversation to naturally surface key themes across three dimensions:
1. Successes and Strengths: Facilitate discussion that helps agents share what worked well during the epic - encourage specific examples from completed stories, effective practices, velocity achievements, collaboration wins, and smart technical decisions Draw out concrete examples: "Can you share a specific story where that approach worked well?"
2. Challenges and Growth Areas: Create safe space for agents to explore challenges encountered - guide them to discuss blockers, process friction, technical debt decisions, and coordination issues with curiosity rather than judgment Probe for root causes: "What made that challenging? What pattern do we see here?" Keep focus on systems and processes, not individuals
3. Insights and Learning: Help the team articulate what they learned from this epic - facilitate discovery of patterns to repeat or avoid, skills gained, and process improvements worth trying Connect insights to future application: "How might this insight help us in future epics?"
For each agent participating (loaded from {agent_manifest}):
- Let them speak naturally in their role's voice and communication style
- Encourage grounding in specific story records, metrics, and real outcomes
- Allow themes to emerge organically rather than forcing a rigid structure
- Follow interesting threads with adaptive questions
- Balance celebration with honest assessment
As facilitator, actively synthesize common themes and patterns as the discussion unfolds Notice when multiple agents mention similar issues or successes - call these out to deepen the team's shared understanding Ensure every voice is heard, inviting quieter agents to contribute
Scrum Master facilitates Part 2: Preparing for the next epic through forward-looking exploration Shift the team's focus from reflection to readiness - guide each agent to explore preparation needs from their domain perspectiveFacilitate discovery across critical preparation dimensions:
Dependencies and Continuity: Guide agents to explore connections between the completed epic and the upcoming one - help them identify what components, decisions, or work from Epic {{completed_number}} the next epic relies upon Probe for gaps: "What needs to be in place before we can start Epic {{next_number}}?" Surface hidden dependencies: "Are there integration points we need to verify?"
Readiness and Setup: Facilitate discussion about what preparation work is needed before the next epic can begin successfully - technical setup, knowledge development, refactoring, documentation, or infrastructure Draw out specific needs: "What do you need to feel ready to start Epic {{next_number}}?" Identify knowledge gaps: "What do we need to learn or research before diving in?"
Risks and Mitigation: Create space for agents to voice concerns and uncertainties about the upcoming epic based on what they learned from this one Explore proactively: "Based on Epic {{completed_number}}, what concerns do you have about Epic {{next_number}}?" Develop mitigation thinking: "What could we do now to reduce that risk?" Identify early warning signs: "How will we know if we're heading for that problem again?"
For each agent participating:
- Let them share preparation needs in their natural voice
- Encourage domain-specific insights (Architect on technical setup, PM on requirements clarity, etc.)
- Follow interesting preparation threads with adaptive questions
- Help agents build on each other's observations
- Surface quick wins that could de-risk the epic early
As facilitator, identify dependencies between preparation tasks as they emerge Notice when preparation items from different agents connect or conflict - explore these intersections Build a shared understanding of what "ready to start Epic {{next_number}}" actually means
Scrum Master identifies patterns across all agent feedback Synthesizes common themes into team agreements Creates specific, achievable action items with clear ownership Develops preparation sprint tasks if significant setup neededPresent comprehensive action plan:
═══════════════════════════════════════════════════════════
📝 EPIC {{completed_number}} ACTION ITEMS:
Process Improvements:
1. {{action_item}} (Owner: {{agent}}, By: {{timeline}})
2. {{action_item}} (Owner: {{agent}}, By: {{timeline}})
3. {{action_item}} (Owner: {{agent}}, By: {{timeline}})
Technical Debt:
1. {{debt_item}} (Owner: {{agent}}, Priority: {{high/medium/low}})
2. {{debt_item}} (Owner: {{agent}}, Priority: {{high/medium/low}})
Documentation:
1. {{doc_need}} (Owner: {{agent}}, By: {{timeline}})
Team Agreements:
- {{agreement_1}}
- {{agreement_2}}
- {{agreement_3}}
═══════════════════════════════════════════════════════════
🚀 EPIC {{next_number}} PREPARATION SPRINT:
Technical Setup:
[ ] {{setup_task}} (Owner: {{agent}}, Est: {{hours/days}})
[ ] {{setup_task}} (Owner: {{agent}}, Est: {{hours/days}})
Knowledge Development:
[ ] {{research_task}} (Owner: {{agent}}, Est: {{hours/days}})
[ ] {{spike_task}} (Owner: {{agent}}, Est: {{hours/days}})
Cleanup/Refactoring:
[ ] {{refactor_task}} (Owner: {{agent}}, Est: {{hours/days}})
[ ] {{cleanup_task}} (Owner: {{agent}}, Est: {{hours/days}})
Documentation:
[ ] {{doc_task}} (Owner: {{agent}}, Est: {{hours/days}})
Total Estimated Effort: {{total_hours}} hours ({{total_days}} days)
═══════════════════════════════════════════════════════════
⚠️ CRITICAL PATH:
Blockers to Resolve Before Epic {{next_number}}:
1. {{critical_item}} (Owner: {{agent}}, Must complete by: {{date}})
2. {{critical_item}} (Owner: {{agent}}, Must complete by: {{date}})
Dependencies Timeline:
{{timeline_visualization_of_critical_dependencies}}
Risk Mitigation:
- {{risk}}: {{mitigation_strategy}}
- {{risk}}: {{mitigation_strategy}}
Ensure every action item has clear owner and timeline Prioritize preparation tasks by dependencies and criticality Identify which tasks can run in parallel vs. sequential
Scrum Master leads a thoughtful exploration of whether Epic {{completed_number}} is truly complete and the team is ready for Epic {{next_number}} Approach this as discovery, not interrogation - help user surface any concerns or unfinished elements that could impact the next epicGuide a conversation exploring the completeness of Epic {{completed_number}} across critical dimensions:
Testing and Quality: Explore the testing state of the epic - help user assess whether quality verification is truly complete Ask thoughtfully: "Walk me through the testing that's been done for Epic {{completed_number}}. Does anything still need verification?" Probe for gaps: "Are you confident the epic is production-ready from a quality perspective?" Add to Critical Path: Complete necessary testing before Epic {{next_number}}
Deployment and Release: Understand where the epic currently stands in the deployment pipeline Explore: "What's the deployment status for Epic {{completed_number}}? Is it live, scheduled, or still pending?" If not yet deployed, clarify timeline: "When is deployment planned? Does that timing work for starting Epic {{next_number}}?" Add to Critical Path: Deploy Epic {{completed_number}} with clear timeline
Stakeholder Acceptance: Guide user to reflect on business validation and stakeholder satisfaction Ask: "Have stakeholders seen and accepted the Epic {{completed_number}} deliverables? Any feedback pending?" Probe for risk: "Is there anything about stakeholder acceptance that could affect Epic {{next_number}}?" Add to Critical Path: Obtain stakeholder acceptance before proceeding
Technical Health: Create space for honest assessment of codebase stability after the epic Explore: "How does the codebase feel after Epic {{completed_number}}? Stable and maintainable, or are there concerns?" If concerns arise, probe deeper: "What's causing those concerns? What would it take to address them?" Document concerns and add to Preparation Sprint: Address stability issues before Epic {{next_number}}
Unresolved Blockers: Help user surface any lingering issues that could create problems for the next epic Ask: "Are there any unresolved blockers or technical issues from Epic {{completed_number}} that we need to address before moving forward?" Explore impact: "How would these blockers affect Epic {{next_number}} if left unresolved?" Document blockers and add to Critical Path with appropriate priority
Synthesize the readiness discussion into a clear picture of what must happen before Epic {{next_number}} can safely begin Summarize any critical items identified and ensure user agrees with the assessment
Scrum Master closes the retrospective with summary and next stepsPresent closure summary:
═══════════════════════════════════════════════════════════
✅ RETROSPECTIVE COMPLETE
Epic {{completed_number}}: {{epic_title}} - REVIEWED
Key Takeaways:
- {{key_lesson_1}}
- {{key_lesson_2}}
- {{key_lesson_3}}
Action Items Committed: {{action_count}}
Preparation Tasks Defined: {{prep_task_count}}
Critical Path Items: {{critical_count}}
═══════════════════════════════════════════════════════════
🎯 NEXT STEPS:
1. Execute Preparation Sprint (Est: {{prep_days}} days)
2. Complete Critical Path items before Epic {{next_number}}
3. Review action items in next standup
4. Begin Epic {{next_number}} planning when preparation complete
═══════════════════════════════════════════════════════════
Scrum Master: "Great work team! We learned a lot from Epic {{completed_number}}.
Let's use these insights to make Epic {{next_number}} even better.
See you at sprint planning once prep work is done!"
Save retrospective summary to: {output_folder}/retrospectives/epic-{{completed_number}}-retro-{{date}}.md
Load the FULL file: {output_folder}/sprint-status.yaml Find development_status key "epic-{{completed_number}}-retrospective" Verify current status is "optional" (expected previous state) Update development_status["epic-{{completed_number}}-retrospective"] = "completed" Save file, preserving ALL comments and structure including STATUS DEFINITIONS ✅ Retrospective marked as completed in sprint-status.yamlRetrospective key: epic-{{completed_number}}-retrospective Status: optional → completed
⚠️ Could not update retrospective status: epic-{{completed_number}}-retrospective not foundRetrospective document was saved, but sprint-status.yaml may need manual update.
Confirm all action items have been captured Remind user to schedule prep sprint if needed **✅ Retrospective Complete, {user_name}!**Epic Review:
- Epic {{completed_number}}: {{epic_title}} reviewed
- Retrospective Status: completed
- Retrospective saved: {output_folder}/retrospectives/epic-{{completed_number}}-retro-{{date}}.md
- Action Items: {{action_count}}
- Preparation Tasks: {{prep_task_count}}
- Critical Path Items: {{critical_count}}
Next Steps:
- Review retrospective summary: {output_folder}/retrospectives/epic-{{completed_number}}-retro-{{date}}.md
- Execute preparation sprint (Est: {{prep_days}} days)
- Complete critical path items before Epic {{next_number}}
- Begin Epic {{next_number}} planning when preparation complete
- Load PM agent and run
epic-tech-contextfor next epic - Or continue with existing contexted epics
- Load PM agent and run