From 5d5062e5d746a49e0aba742a0de06a5e2627c6eb Mon Sep 17 00:00:00 2001 From: lihang Date: Sun, 7 Dec 2025 18:23:00 +0800 Subject: [PATCH] fix(bmm): fix workflow continuation bugs and clean up invalid references MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Bug Fixes ### 1. Workflow Continuation (lastStep not updated) - Add lastStep update instructions to all step files: - PRD workflow (10 steps) - Product Brief workflow (4 steps) - UX Design workflow (12 steps) - Add frontmatter to product-brief.template.md - Add lastStep field to ux-design-template.md - Fix YAML variable format in PRD step-01-init.md (quoted to prevent Prettier issues) ### 2. stepsCompleted Array Errors - step-09-functional.md: [1-8] → [1-9] - step-10-nonfunctional.md: [1-9] → [1-10] ### 3. Invalid Workflow References Cleanup Remove non-existent workflow references missed in #1047: story-context removed from: - quick-spec-flow.md - troubleshooting.md - workflows-implementation.md validate-architecture removed from: - daily-standup.xml - troubleshooting.md - method-greenfield.yaml - method-brownfield.yaml - enterprise-greenfield.yaml - enterprise-brownfield.yaml 🤖 Generated with [Claude Code](https://claude.ai/code) Co-authored-by: Claude --- src/modules/bmm/docs/quick-spec-flow.md | 38 ++++++------------- src/modules/bmm/docs/troubleshooting.md | 32 ++++------------ .../bmm/docs/workflows-implementation.md | 7 ++-- src/modules/bmm/tasks/daily-standup.xml | 2 +- .../product-brief/product-brief.template.md | 7 ++++ .../product-brief/steps/step-01-init.md | 2 +- .../product-brief/steps/step-01b-continue.md | 3 +- .../product-brief/steps/step-02-vision.md | 4 +- .../product-brief/steps/step-03-users.md | 4 +- .../product-brief/steps/step-04-metrics.md | 4 +- .../product-brief/steps/step-05-scope.md | 4 +- .../product-brief/steps/step-06-complete.md | 1 + .../create-ux-design/steps/step-01-init.md | 2 +- .../steps/step-01b-continue.md | 13 ++++++- .../steps/step-02-discovery.md | 1 + .../steps/step-03-core-experience.md | 1 + .../steps/step-04-emotional-response.md | 1 + .../steps/step-05-inspiration.md | 1 + .../steps/step-06-design-system.md | 1 + .../steps/step-07-defining-experience.md | 1 + .../steps/step-08-visual-foundation.md | 1 + .../steps/step-09-design-directions.md | 1 + .../steps/step-10-user-journeys.md | 1 + .../steps/step-11-component-strategy.md | 1 + .../steps/step-12-ux-patterns.md | 1 + .../steps/step-13-responsive-accessibility.md | 1 + .../create-ux-design/ux-design-template.md | 2 + .../prd/steps/step-01-init.md | 10 ++--- .../prd/steps/step-02-discovery.md | 1 + .../prd/steps/step-03-success.md | 1 + .../prd/steps/step-04-journeys.md | 1 + .../prd/steps/step-05-domain.md | 1 + .../prd/steps/step-06-innovation.md | 1 + .../prd/steps/step-07-project-type.md | 1 + .../prd/steps/step-08-scoping.md | 1 + .../prd/steps/step-09-functional.md | 3 +- .../prd/steps/step-10-nonfunctional.md | 3 +- .../paths/enterprise-brownfield.yaml | 5 --- .../paths/enterprise-greenfield.yaml | 5 --- .../paths/method-brownfield.yaml | 5 --- .../paths/method-greenfield.yaml | 6 --- 41 files changed, 84 insertions(+), 97 deletions(-) diff --git a/src/modules/bmm/docs/quick-spec-flow.md b/src/modules/bmm/docs/quick-spec-flow.md index cd3d5b15..bbae51bc 100644 --- a/src/modules/bmm/docs/quick-spec-flow.md +++ b/src/modules/bmm/docs/quick-spec-flow.md @@ -377,12 +377,6 @@ Checks: Quick Spec Flow works seamlessly with all Phase 4 implementation workflows: -### story-context (SM Agent) - -- ✅ Recognizes tech-spec.md as authoritative source -- ✅ Extracts context from tech-spec (replaces PRD) -- ✅ Generates XML context for complex scenarios - ### create-story (SM Agent) - ✅ Can work with tech-spec.md instead of PRD @@ -405,17 +399,17 @@ Quick Spec Flow works seamlessly with all Phase 4 implementation workflows: ## Comparison: Quick Spec vs Full BMM -| Aspect | Quick Flow Track | BMad Method/Enterprise Tracks | -| --------------------- | ---------------------------- | ---------------------------------- | -| **Setup** | None (standalone) | workflow-init recommended | -| **Planning Docs** | tech-spec.md only | Product Brief → PRD → Architecture | -| **Time to Code** | Minutes | Hours to days | -| **Best For** | Bug fixes, small features | New products, major features | -| **Context Discovery** | Automatic | Manual + guided | -| **Story Context** | Optional (tech-spec is rich) | Required (generated from PRD) | -| **Validation** | Auto-validates everything | Manual validation steps | -| **Brownfield** | Auto-analyzes and conforms | Manual documentation required | -| **Conventions** | Auto-detects and confirms | Document in PRD/Architecture | +| Aspect | Quick Flow Track | BMad Method/Enterprise Tracks | +| --------------------- | -------------------------- | ---------------------------------- | +| **Setup** | None (standalone) | workflow-init recommended | +| **Planning Docs** | tech-spec.md only | Product Brief → PRD → Architecture | +| **Time to Code** | Minutes | Hours to days | +| **Best For** | Bug fixes, small features | New products, major features | +| **Context Discovery** | Automatic | Manual + guided | +| **Story Context** | Included in create-story | Included in create-story | +| **Validation** | Auto-validates everything | Manual validation steps | +| **Brownfield** | Auto-analyzes and conforms | Manual documentation required | +| **Conventions** | Auto-detects and confirms | Document in PRD/Architecture | --- @@ -529,10 +523,6 @@ Quick Spec Flow is **fully standalone**: **A:** No problem! You can always transition to BMad Method by running workflow-init and create-prd. Your tech-spec becomes input for the PRD. -### Q: Do I need story-context for every story? - -**A:** Usually no! Tech-spec is comprehensive enough for most Quick Flow projects. Only use story-context for complex edge cases. - ### Q: Can I skip validation? **A:** No, validation always runs automatically. But it's fast and catches issues early! @@ -564,11 +554,7 @@ Starter templates save hours of setup time. Let Quick Spec Flow find the best on When validation runs, read the scores. They tell you if your spec is production-ready. -### 5. **Story Context is Optional** - -For single changes, try going directly to dev-story first. Only add story-context if you hit complexity. - -### 6. **Keep Single Changes Truly Atomic** +### 5. **Keep Single Changes Truly Atomic** If your "single change" needs 3+ files, it might be a multi-story feature. Let the workflow guide you. diff --git a/src/modules/bmm/docs/troubleshooting.md b/src/modules/bmm/docs/troubleshooting.md index a3cd63bf..6ec850a3 100644 --- a/src/modules/bmm/docs/troubleshooting.md +++ b/src/modules/bmm/docs/troubleshooting.md @@ -195,8 +195,8 @@ workflow-init asks: "Is this work in progress or previous effort?" 1. Check spelling/format - Use exact workflow name or menu shortcut (`*prd` not `*PRD`) 2. Verify agent has workflow: - PM agent: prd, tech-spec - - Architect agent: create-architecture, validate-architecture - - SM agent: sprint-planning, create-story, story-context + - Architect agent: create-architecture, implementation-readiness + - SM agent: sprint-planning, create-story 3. Try menu number instead of name 4. Check you're using correct agent for workflow @@ -219,23 +219,6 @@ workflow-init asks: "Is this work in progress or previous effort?" 3. **Run in Phase 4 only** - Ensure Phase 2/3 complete first 4. **Check file paths** - Epic files should be in correct output folder -### Problem: story-context generates empty or wrong context - -**Symptoms:** - -- Context file created but has no useful content -- Context doesn't reference existing code -- Missing technical guidance - -**Solution:** - -1. **Run epic-tech-context first** - story-context builds on epic context -2. **Check story file exists** - Verify story was created by create-story -3. **For brownfield**: - - Ensure document-project was run - - Verify docs/index.md exists with codebase context -4. **Try regenerating** - Sometimes needs fresh attempt with more specific story details - --- ## Context and Documentation Issues @@ -362,7 +345,7 @@ For most brownfield projects, **Deep scan is sufficient**. 1. **For brownfield**: - Ensure document-project captured existing architecture - Review architecture docs before implementing -2. **Check story-context** - Should document integration points +2. **Check story files created by create-story** - Should include integration context 3. **In tech-spec/architecture** - Explicitly document: - Which existing modules to modify - What APIs/services to integrate with @@ -384,7 +367,7 @@ For most brownfield projects, **Deep scan is sufficient**. - Should detect existing patterns - Asks for confirmation before proceeding 2. **Review documentation** - Ensure document-project captured patterns -3. **Use story-context** - Injects pattern guidance per story +3. **Use create-story workflow** - It loads context from existing documentation 4. **Add to code-review checklist**: - Pattern adherence - Convention consistency @@ -460,8 +443,7 @@ To change locations, edit config.yaml then re-run workflows. 2. **Some workflows auto-update**: - sprint-planning creates file - epic-tech-context changes epic to "contexted" - - create-story changes story to "drafted" - - story-context changes to "ready-for-dev" + - create-story changes story to "drafted" then "ready-for-dev" - dev-story may auto-update (check workflow) 3. **Re-run sprint-planning** to resync if needed @@ -545,8 +527,8 @@ To change locations, edit config.yaml then re-run workflows. - Read docs/architecture.md (from document-project) - Understand current system design 3. **For Level 3-4**: - - Run validate-architecture workflow before planning - - Use integration-planning workflow + - Run implementation-readiness workflow before implementation + - Use create-architecture workflow for integration planning 4. **Explicitly document integration strategy** in architecture: - How new components fit existing structure - What modifications needed to existing code diff --git a/src/modules/bmm/docs/workflows-implementation.md b/src/modules/bmm/docs/workflows-implementation.md index b0cf9bb2..10ff34bd 100644 --- a/src/modules/bmm/docs/workflows-implementation.md +++ b/src/modules/bmm/docs/workflows-implementation.md @@ -154,10 +154,9 @@ Dependencies: Story 1.2 (DONE) ✅ **Recommendation:** Run `create-story` to generate Story 1.3 After create-story: -1. Run story-context -2. Run dev-story -3. Run code-review -4. Run story-done +1. Run dev-story +2. Run code-review +3. Run story-done ``` See: [workflow-status instructions](../workflows/workflow-status/instructions.md) diff --git a/src/modules/bmm/tasks/daily-standup.xml b/src/modules/bmm/tasks/daily-standup.xml index d41c362c..2bd64d46 100644 --- a/src/modules/bmm/tasks/daily-standup.xml +++ b/src/modules/bmm/tasks/daily-standup.xml @@ -64,7 +64,7 @@ Primary: Sarah (PO), Bob (SM), James (Dev) Secondary: Murat (TEA) - + Primary: Winston (Architect), James (Dev), Murat (TEA) Secondary: Sarah (PO) diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/product-brief.template.md b/src/modules/bmm/workflows/1-analysis/product-brief/product-brief.template.md index 2e70cb95..3c631a4e 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/product-brief.template.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/product-brief.template.md @@ -1,3 +1,10 @@ +--- +stepsCompleted: [] +inputDocuments: [] +workflowType: 'product-brief' +lastStep: 0 +--- + # Product Brief: {{project_name}} **Date:** {{date}} diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01-init.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01-init.md index ab2af7ce..5020401d 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01-init.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01-init.md @@ -49,7 +49,7 @@ Initialize the product brief workflow by detecting continuation state and settin - 🎯 Show your analysis of current state before taking any action - 💾 Initialize document structure and update frontmatter appropriately -- 📖 Set up frontmatter `stepsCompleted: [1]` before loading next step +- 📖 Set up frontmatter `stepsCompleted: [1]` and `lastStep: 1` before loading next step - 🚫 FORBIDDEN to load next step until user selects 'C' (Continue) ## CONTEXT BOUNDARIES: diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01b-continue.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01b-continue.md index 01b228ca..fae89674 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01b-continue.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-01b-continue.md @@ -104,7 +104,8 @@ Based on `lastStep` value, determine which step to load next: - If `lastStep = 1` → Load `./step-02-vision.md` - If `lastStep = 2` → Load `./step-03-users.md` - If `lastStep = 3` → Load `./step-04-metrics.md` -- Continue this pattern for all steps +- If `lastStep = 4` → Load `./step-05-scope.md` +- If `lastStep = 5` → Load `./step-06-complete.md` - If `lastStep = 6` → Workflow already complete ### 5. Handle Workflow Completion diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-02-vision.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-02-vision.md index af1d60cc..a77e0cc1 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-02-vision.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-02-vision.md @@ -162,7 +162,7 @@ Prepare the following structure for document append: - IF A: Execute {advancedElicitationTask} with current vision content to dive deeper and refine - IF P: Execute {partyModeWorkflow} to bring different perspectives to positioning and differentiation -- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2], then only then load, read entire file, then execute {nextStepFile} +- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2] and lastStep: 2, then only then load, read entire file, then execute {nextStepFile} - IF Any other comments or queries: help user respond then [Redisplay Menu Options](#7-present-menu-options) #### EXECUTION RULES: @@ -188,7 +188,7 @@ ONLY WHEN [C continue option] is selected and [vision content finalized and save - Executive summary that captures the product essence - A/P/C menu presented and handled correctly with proper task execution - Content properly appended to document when C selected -- Frontmatter updated with stepsCompleted: [1, 2] +- Frontmatter updated with stepsCompleted: [1, 2] and lastStep: 2 ### ❌ SYSTEM FAILURE: diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-03-users.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-03-users.md index 8c9edf10..77c8c652 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-03-users.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-03-users.md @@ -165,7 +165,7 @@ Prepare the following structure for document append: - IF A: Execute {advancedElicitationTask} with current user content to dive deeper into personas and journeys - IF P: Execute {partyModeWorkflow} to bring different perspectives to validate user understanding -- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2, 3], then only then load, read entire file, then execute {nextStepFile} +- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2, 3] and lastStep: 3, then only then load, read entire file, then execute {nextStepFile} - IF Any other comments or queries: help user respond then [Redisplay Menu Options](#6-present-menu-options) #### EXECUTION RULES: @@ -191,7 +191,7 @@ ONLY WHEN [C continue option] is selected and [user personas finalized and saved - User segments that align with product vision and problem statement - A/P/C menu presented and handled correctly with proper task execution - Content properly appended to document when C selected -- Frontmatter updated with stepsCompleted: [1, 2, 3] +- Frontmatter updated with stepsCompleted: [1, 2, 3] and lastStep: 3 ### ❌ SYSTEM FAILURE: diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-04-metrics.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-04-metrics.md index 18b39fd2..f13e358a 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-04-metrics.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-04-metrics.md @@ -168,7 +168,7 @@ Prepare the following structure for document append: - IF A: Execute {advancedElicitationTask} with current metrics content to dive deeper into success metric insights - IF P: Execute {partyModeWorkflow} to bring different perspectives to validate comprehensive metrics -- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2, 3, 4], then only then load, read entire file, then execute {nextStepFile} +- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2, 3, 4] and lastStep: 4, then only then load, read entire file, then execute {nextStepFile} - IF Any other comments or queries: help user respond then [Redisplay Menu Options](#7-present-menu-options) #### EXECUTION RULES: @@ -194,7 +194,7 @@ ONLY WHEN [C continue option] is selected and [success metrics finalized and sav - Metrics that connect user value to business success - A/P/C menu presented and handled correctly with proper task execution - Content properly appended to document when C selected -- Frontmatter updated with stepsCompleted: [1, 2, 3, 4] +- Frontmatter updated with stepsCompleted: [1, 2, 3, 4] and lastStep: 4 ### ❌ SYSTEM FAILURE: diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-05-scope.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-05-scope.md index e3429021..64e00aee 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-05-scope.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-05-scope.md @@ -182,7 +182,7 @@ Prepare the following structure for document append: - IF A: Execute {advancedElicitationTask} with current scope content to optimize scope definition - IF P: Execute {partyModeWorkflow} to bring different perspectives to validate MVP scope -- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2, 3, 4, 5], then only then load, read entire file, then execute {nextStepFile} +- IF C: Save content to {outputFile}, update frontmatter with stepsCompleted: [1, 2, 3, 4, 5] and lastStep: 5, then only then load, read entire file, then execute {nextStepFile} - IF Any other comments or queries: help user respond then [Redisplay Menu Options](#7-present-menu-options) #### EXECUTION RULES: @@ -208,7 +208,7 @@ ONLY WHEN [C continue option] is selected and [MVP scope finalized and saved to - Future vision that inspires while maintaining focus on MVP - A/P/C menu presented and handled correctly with proper task execution - Content properly appended to document when C selected -- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5] +- Frontmatter updated with stepsCompleted: [1, 2, 3, 4, 5] and lastStep: 5 ### ❌ SYSTEM FAILURE: diff --git a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-06-complete.md b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-06-complete.md index 6d7239ef..f23ebf5e 100644 --- a/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-06-complete.md +++ b/src/modules/bmm/workflows/1-analysis/product-brief/steps/step-06-complete.md @@ -87,6 +87,7 @@ Update the main workflow status file: - Check if `{output_folder}/bmm-workflow-status.yaml` exists - If not, create it with basic structure - Update workflow_status["product-brief"] = `{outputFile}` +- Update output document frontmatter: `lastStep: 6` - Add completion timestamp and metadata - Save file, preserving all comments and structure diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md index ea0435b4..e926cbd0 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md @@ -15,7 +15,7 @@ - 🎯 Show your analysis before taking any action - 💾 Initialize document and update frontmatter -- 📖 Set up frontmatter `stepsCompleted: [1]` before loading next step +- 📖 Set up frontmatter `stepsCompleted: [1]` and `lastStep: 1` before loading next step - 🚫 FORBIDDEN to load next step until setup is complete ## CONTEXT BOUNDARIES: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md index 84933913..db35b210 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md @@ -74,8 +74,17 @@ Based on `lastStep` value, determine which step to load next: - If `lastStep = 1` → Load `./step-02-discovery.md` - If `lastStep = 2` → Load `./step-03-core-experience.md` - If `lastStep = 3` → Load `./step-04-emotional-response.md` -- Continue this pattern for all steps -- If `lastStep` indicates final step → Workflow already complete +- If `lastStep = 4` → Load `./step-05-inspiration.md` +- If `lastStep = 5` → Load `./step-06-design-system.md` +- If `lastStep = 6` → Load `./step-07-defining-experience.md` +- If `lastStep = 7` → Load `./step-08-visual-foundation.md` +- If `lastStep = 8` → Load `./step-09-design-directions.md` +- If `lastStep = 9` → Load `./step-10-user-journeys.md` +- If `lastStep = 10` → Load `./step-11-component-strategy.md` +- If `lastStep = 11` → Load `./step-12-ux-patterns.md` +- If `lastStep = 12` → Load `./step-13-responsive-accessibility.md` +- If `lastStep = 13` → Load `./step-14-complete.md` +- If `lastStep = 14` → Workflow already complete ### 5. Present Continuation Options diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md index 540994d0..3bfa90b9 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md @@ -172,6 +172,7 @@ Show the generated project understanding content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2]` +- Update frontmatter: `lastStep: 2` - Load `./step-03-core-experience.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md index b24dceb2..28d37385 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md @@ -178,6 +178,7 @@ Show the generated core experience content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3]` +- Update frontmatter: `lastStep: 3` - Load `./step-04-emotional-response.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md index 85d75864..9ab44422 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md @@ -181,6 +181,7 @@ Show the generated emotional response content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4]` +- Update frontmatter: `lastStep: 4` - Load `./step-05-inspiration.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md index d575178d..4f94ad5c 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md @@ -196,6 +196,7 @@ Show the generated inspiration analysis content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5]` +- Update frontmatter: `lastStep: 5` - Load `./step-06-design-system.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md index 87009183..b5479d20 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md @@ -214,6 +214,7 @@ Show the generated design system content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6]` +- Update frontmatter: `lastStep: 6` - Load `./step-07-defining-experience.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md index 09173626..0b1323e7 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md @@ -216,6 +216,7 @@ Show the generated defining experience content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7]` +- Update frontmatter: `lastStep: 7` - Load `./step-08-visual-foundation.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md index 364f5ac6..619b9757 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md @@ -186,6 +186,7 @@ Show the generated visual foundation content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8]` +- Update frontmatter: `lastStep: 8` - Load `./step-09-design-directions.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md index 185e5e83..1d771c62 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md @@ -186,6 +186,7 @@ Show the generated design direction content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]` +- Update frontmatter: `lastStep: 9` - Load `./step-10-user-journeys.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md index 5f9ff973..6c118114 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md @@ -204,6 +204,7 @@ Show the generated user journey content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]` +- Update frontmatter: `lastStep: 10` - Load `./step-11-component-strategy.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md index 96dcec31..6c7aa57d 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md @@ -210,6 +210,7 @@ Show the generated component strategy content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]` +- Update frontmatter: `lastStep: 11` - Load `./step-12-ux-patterns.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md index 99ea7dba..1127cf26 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md @@ -199,6 +199,7 @@ Show the generated UX patterns content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]` +- Update frontmatter: `lastStep: 12` - Load `./step-13-responsive-accessibility.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md index ffb28e91..7b43bb49 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md @@ -226,6 +226,7 @@ Show the generated responsive and accessibility content and present choices: - Append the final content to `{output_folder}/ux-design-specification.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]` +- Update frontmatter: `lastStep: 13` - Load `./step-14-complete.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md index aeed9dc5..eeba8077 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +++ b/src/modules/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md @@ -1,6 +1,8 @@ --- stepsCompleted: [] inputDocuments: [] +workflowType: 'ux-design' +lastStep: 0 --- # UX Design Specification {{project_name}} diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md index d0a29cad..75cd2856 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-01-init.md @@ -156,10 +156,10 @@ projectDocsCount = 0 stepsCompleted: [] inputDocuments: [] documentCounts: - briefs: { { briefCount } } - research: { { researchCount } } - brainstorming: { { brainstormingCount } } - projectDocs: { { projectDocsCount } } + briefs: '{{briefCount}}' + research: '{{researchCount}}' + brainstorming: '{{brainstormingCount}}' + projectDocs: '{{projectDocsCount}}' workflowType: 'prd' lastStep: 0 project_name: '{{project_name}}' @@ -202,7 +202,7 @@ Display menu after setup report: #### Menu Handling Logic: -- IF C: Update frontmatter with `stepsCompleted: [1]`, then load, read entire file, then execute {nextStepFile} +- IF C: Update frontmatter with `stepsCompleted: [1]` and `lastStep: 1`, then load, read entire file, then execute {nextStepFile} - IF user provides additional files: Load them, update inputDocuments and documentCounts, redisplay report - IF user asks questions: Answer and redisplay menu diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md index c4be410a..805dd381 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-02-discovery.md @@ -374,6 +374,7 @@ Show the generated content to the user and present: - Append the final content to `{outputFile}` - Update frontmatter: `stepsCompleted: [1, 2]` +- Update frontmatter: `lastStep: 2` - Load `{nextStepFile}` ## CRITICAL STEP COMPLETION NOTE diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md index 9c8f125c..c8d8af88 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-03-success.md @@ -246,6 +246,7 @@ Show the generated content and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3]` +- Update frontmatter: `lastStep: 3` - Load `./step-04-journeys.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md index e9b2d137..c04d794a 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-04-journeys.md @@ -240,6 +240,7 @@ Show the generated journey content and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4]` +- Update frontmatter: `lastStep: 4` - Load `{project-root}/{bmad_folder}/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md` (or determine if step is optional based on domain complexity) ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md index 5fd01fc9..dd225965 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-05-domain.md @@ -225,6 +225,7 @@ Show the generated domain content and present choices: - Append the content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5]` +- Update frontmatter: `lastStep: 5` - Load `{project-root}/{bmad_folder}/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md index 45e33c09..618a2c02 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-06-innovation.md @@ -204,6 +204,7 @@ Show the generated innovation content and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6]` +- Update frontmatter: `lastStep: 6` - Load `{project-root}/{bmad_folder}/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md` ## NO INNOVATION DETECTED: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md index af887c16..6b3a5844 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-07-project-type.md @@ -200,6 +200,7 @@ Show the generated project-type content and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7]` +- Update frontmatter: `lastStep: 7` - Load `{project-root}/{bmad_folder}/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md index a2fe4602..9d26515d 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-08-scoping.md @@ -261,6 +261,7 @@ Show the scoping decisions and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8]` +- Update frontmatter: `lastStep: 8` - Load `./step-09-functional.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md index 66f83fb4..96156126 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-09-functional.md @@ -36,7 +36,7 @@ partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workf - 🎯 Show your analysis before taking any action - ⚠️ Present A/P/C menu after generating functional requirements - 💾 ONLY save when user chooses C (Continue) -- 📖 Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8]` before loading next step +- 📖 Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]` before loading next step - 🚫 FORBIDDEN to load next step until C is selected ## COLLABORATION MENUS (A/P/C): @@ -227,6 +227,7 @@ Show the generated functional requirements and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]` +- Update frontmatter: `lastStep: 9` - Load `{project-root}/{bmad_folder}/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md index a99f0e0c..60e6c6da 100644 --- a/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md +++ b/src/modules/bmm/workflows/2-plan-workflows/prd/steps/step-10-nonfunctional.md @@ -36,7 +36,7 @@ partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workf - 🎯 Show your analysis before taking any action - ⚠️ Present A/P/C menu after generating NFR content - 💾 ONLY save when user chooses C (Continue) -- 📖 Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9]` before loading next step +- 📖 Update frontmatter `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]` before loading next step - 🚫 FORBIDDEN to load next step until C is selected ## COLLABORATION MENUS (A/P/C): @@ -227,6 +227,7 @@ Show the generated NFR content and present choices: - Append the final content to `{output_folder}/prd.md` - Update frontmatter: `stepsCompleted: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]` +- Update frontmatter: `lastStep: 10` - Load `{project-root}/{bmad_folder}/bmm/workflows/2-plan-workflows/prd/steps/step-11-complete.md` ## APPEND TO DOCUMENT: diff --git a/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml b/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml index 5064030d..d6429cd3 100644 --- a/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +++ b/src/modules/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml @@ -100,11 +100,6 @@ phases: # output: "DevOps strategy for brownfield deployment" # note: "Future workflow - optional extended enterprise workflow for CI/CD integration, deployment strategy, monitoring" - - id: "validate-architecture" - recommended: true - agent: "architect" - command: "validate-architecture" - - id: "implementation-readiness" required: true agent: "architect" diff --git a/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml b/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml index 94757114..56ddb4dd 100644 --- a/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +++ b/src/modules/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml @@ -82,11 +82,6 @@ phases: # output: "DevOps pipeline and infrastructure plan" # note: "Future workflow - optional extended enterprise workflow for CI/CD, deployment, monitoring" - - id: "validate-architecture" - recommended: true - agent: "architect" - command: "validate-architecture" - - id: "create-epics-and-stories" required: true agent: "pm" diff --git a/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml b/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml index 67ee6cd0..3b5a7195 100644 --- a/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml +++ b/src/modules/bmm/workflows/workflow-status/paths/method-brownfield.yaml @@ -84,11 +84,6 @@ phases: output: "System-level testability review" note: "Testability assessment before gate check - auto-detects system-level mode" - - id: "validate-architecture" - optional: true - agent: "architect" - command: "validate-architecture" - - id: "implementation-readiness" required: true agent: "architect" diff --git a/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml b/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml index aca183e9..9e34e791 100644 --- a/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml +++ b/src/modules/bmm/workflows/workflow-status/paths/method-greenfield.yaml @@ -73,12 +73,6 @@ phases: output: "System-level testability review" note: "Testability assessment before gate check - auto-detects system-level mode" - - id: "validate-architecture" - optional: true - agent: "architect" - command: "validate-architecture" - note: "Quality check for architecture completeness" - - id: "implementation-readiness" required: true agent: "architect"