From ecb6c51244c1ef9495d57fe4a57c8f7df391e85c Mon Sep 17 00:00:00 2001 From: Alex Verkhovsky Date: Sat, 7 Mar 2026 06:08:01 -0700 Subject: [PATCH] refactor(retrospective): convert workflow.yaml + instructions.md to single workflow.md Co-Authored-By: Claude Opus 4.6 --- .../{instructions.md => workflow.md} | 86 ++++++++++++++----- .../retrospective/workflow.yaml | 52 ----------- 2 files changed, 63 insertions(+), 75 deletions(-) rename src/bmm/workflows/4-implementation/retrospective/{instructions.md => workflow.md} (94%) delete mode 100644 src/bmm/workflows/4-implementation/retrospective/workflow.yaml diff --git a/src/bmm/workflows/4-implementation/retrospective/instructions.md b/src/bmm/workflows/4-implementation/retrospective/workflow.md similarity index 94% rename from src/bmm/workflows/4-implementation/retrospective/instructions.md rename to src/bmm/workflows/4-implementation/retrospective/workflow.md index d2bf7e390..cbc502d8b 100644 --- a/src/bmm/workflows/4-implementation/retrospective/instructions.md +++ b/src/bmm/workflows/4-implementation/retrospective/workflow.md @@ -1,31 +1,71 @@ -# Retrospective - Epic Completion Review Instructions +--- +name: retrospective +description: 'Post-epic review to extract lessons and assess success. Use when the user says "run a retrospective" or "lets retro the epic [epic]"' +--- -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} -⚠️ 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. +# Retrospective Workflow - - DOCUMENT OUTPUT: Retrospective analysis. Concise insights, lessons learned, action items. User skill level ({user_skill_level}) affects conversation style ONLY, not retrospective content. +**Goal:** Post-epic review to extract lessons and assess success. -FACILITATION NOTES: +**Your Role:** Scrum Master facilitating retrospective. +- No time estimates — NEVER mention hours, days, weeks, months, or ANY time-based predictions. AI has fundamentally changed development speed. +- 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: + - 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 +- Party mode protocol: + - ALL agent dialogue MUST use format: "Name (Role): dialogue" + - Example: Bob (Scrum Master): "Let's begin..." + - Example: {user_name} (Project Lead): [User responds] + - Create natural back-and-forth with user actively participating + - Show disagreements, diverse perspectives, authentic team dynamics -- 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 +--- -PARTY MODE PROTOCOL: +## INITIALIZATION -- ALL agent dialogue MUST use format: "Name (Role): dialogue" -- Example: Bob (Scrum Master): "Let's begin..." -- Example: {user_name} (Project Lead): [User responds] -- Create natural back-and-forth with user actively participating -- Show disagreements, diverse perspectives, authentic team dynamics - +### Configuration Loading + +Load config from `{project-root}/_bmad/bmm/config.yaml` and resolve: + +- `project_name`, `user_name` +- `communication_language`, `document_output_language` +- `user_skill_level` +- `planning_artifacts`, `implementation_artifacts` +- `date` as system-generated current datetime +- YOU MUST ALWAYS SPEAK OUTPUT in your Agent communication style with the config `{communication_language}` + +### Paths + +- `installed_path` = `{project-root}/_bmad/bmm/workflows/4-implementation/retrospective` +- `sprint_status_file` = `{implementation_artifacts}/sprint-status.yaml` + +### Input Files + +| Input | Description | Path Pattern(s) | Load Strategy | +|-------|-------------|------------------|---------------| +| epics | The completed epic for retrospective | whole: `{planning_artifacts}/*epic*.md`, sharded_index: `{planning_artifacts}/*epic*/index.md`, sharded_single: `{planning_artifacts}/*epic*/epic-{{epic_num}}.md` | SELECTIVE_LOAD | +| previous_retrospective | Previous epic's retrospective (optional) | `{implementation_artifacts}/**/epic-{{prev_epic_num}}-retro-*.md` | SELECTIVE_LOAD | +| architecture | System architecture for context | whole: `{planning_artifacts}/*architecture*.md`, sharded: `{planning_artifacts}/*architecture*/*.md` | FULL_LOAD | +| prd | Product requirements for context | whole: `{planning_artifacts}/*prd*.md`, sharded: `{planning_artifacts}/*prd*/*.md` | FULL_LOAD | +| document_project | Brownfield project documentation (optional) | sharded: `{planning_artifacts}/*.md` | INDEX_GUIDED | + +### Required Inputs + +- `agent_manifest` = `{project-root}/_bmad/_config/agent-manifest.csv` + +### Context + +- `project_context` = `**/project-context.md` (load if exists) + +--- + +## EXECUTION @@ -159,7 +199,7 @@ Bob (Scrum Master): "Perfect. Epic {{epic_number}} is complete and ready for ret - + Load input files according to the Input Files table in INITIALIZATION. For SELECTIVE_LOAD inputs, load only the epic matching {{epic_number}}. For FULL_LOAD inputs, load the complete document. For INDEX_GUIDED inputs, check the index first and load relevant sections. After discovery, these content variables are available: {epics_content} (selective load for this epic), {architecture_content}, {prd_content}, {document_project_content} After discovery, these content variables are available: {epics_content} (selective load for this epic), {architecture_content}, {prd_content}, {document_project_content} diff --git a/src/bmm/workflows/4-implementation/retrospective/workflow.yaml b/src/bmm/workflows/4-implementation/retrospective/workflow.yaml deleted file mode 100644 index 49ac2cc35..000000000 --- a/src/bmm/workflows/4-implementation/retrospective/workflow.yaml +++ /dev/null @@ -1,52 +0,0 @@ -# Retrospective - Epic Completion Review Workflow -name: "retrospective" -description: 'Post-epic review to extract lessons and assess success. Use when the user says "run a retrospective" or "lets retro the epic [epic]"' - -config_source: "{project-root}/_bmad/bmm/config.yaml" -user_name: "{config_source}:user_name" -communication_language: "{config_source}:communication_language" -user_skill_level: "{config_source}:user_skill_level" -document_output_language: "{config_source}:document_output_language" -date: system-generated -planning_artifacts: "{config_source}:planning_artifacts" -implementation_artifacts: "{config_source}:implementation_artifacts" -project_context: "**/project-context.md" - -installed_path: "{project-root}/_bmad/bmm/workflows/4-implementation/retrospective" -template: false -instructions: "{installed_path}/instructions.md" - -required_inputs: - - agent_manifest: "{project-root}/_bmad/_config/agent-manifest.csv" - -# Smart input file references - handles both whole docs and sharded docs -# Priority: Whole document first, then sharded version -# Strategy: SELECTIVE LOAD - only load the completed epic and relevant retrospectives -input_file_patterns: - epics: - description: "The completed epic for retrospective" - whole: "{planning_artifacts}/*epic*.md" - sharded_index: "{planning_artifacts}/*epic*/index.md" - sharded_single: "{planning_artifacts}/*epic*/epic-{{epic_num}}.md" - load_strategy: "SELECTIVE_LOAD" - previous_retrospective: - description: "Previous epic's retrospective (optional)" - pattern: "{implementation_artifacts}/**/epic-{{prev_epic_num}}-retro-*.md" - load_strategy: "SELECTIVE_LOAD" - architecture: - description: "System architecture for context" - whole: "{planning_artifacts}/*architecture*.md" - sharded: "{planning_artifacts}/*architecture*/*.md" - load_strategy: "FULL_LOAD" - prd: - description: "Product requirements for context" - whole: "{planning_artifacts}/*prd*.md" - sharded: "{planning_artifacts}/*prd*/*.md" - load_strategy: "FULL_LOAD" - document_project: - description: "Brownfield project documentation (optional)" - sharded: "{planning_artifacts}/*.md" - load_strategy: "INDEX_GUIDED" - -# Required files -sprint_status_file: "{implementation_artifacts}/sprint-status.yaml"