workflow builder understand existing_workflows tag for web bundles, and cleanup comtinues

This commit is contained in:
Brian Madison
2025-10-16 07:24:38 -05:00
parent 73ba7afa90
commit a28a350e14
22 changed files with 73 additions and 28 deletions

View File

@@ -52,6 +52,8 @@
- [ ] validation/checklist file listed in web_bundle_files (if exists)
- [ ] All data files (CSV, JSON, YAML) listed in web_bundle_files
- [ ] All <invoke-workflow> called workflows have their .yaml files in web_bundle_files
- [ ] **CRITICAL**: If workflow invokes other workflows, existing_workflows field is present
- [ ] existing_workflows maps workflow variables to bmad/-relative paths correctly
- [ ] All files referenced in instructions <action> tags listed in web_bundle_files
- [ ] No files listed in web_bundle_files that don't exist
- [ ] Web bundle metadata (name, description, author) matches top-level metadata

View File

@@ -145,6 +145,11 @@ Display summary:
<action>Scan instructions.md for <invoke-workflow> tags</action>
<action>Extract workflow paths from invocations</action>
<action>Verify each called workflow.yaml is in web_bundle_files</action>
<action>**CRITICAL**: Check if existing_workflows field is present when workflows are invoked</action>
<action>If <invoke-workflow> calls exist, existing_workflows MUST map workflow variables to paths</action>
<action>Example: If instructions use {core_brainstorming}, web_bundle needs:
existing_workflows: - core_brainstorming: "bmad/core/workflows/brainstorming/workflow.yaml"
</action>
**File Reference Scan:**
<action>Scan instructions.md for file references in <action> tags</action>

View File

@@ -379,13 +379,43 @@ web_bundle:
- 'bmad/{module}/workflows/{workflow}/template.md'
- 'bmad/{module}/workflows/{workflow}/data.csv'
# Add every single file referenced anywhere
# CRITICAL: If this workflow invokes other workflows, use existing_workflows
# This signals the bundler to recursively include those workflows' web_bundles
existing_workflows:
- workflow_variable_name: 'bmad/path/to/workflow.yaml'
```
**Example with existing_workflows:**
```yaml
web_bundle:
name: 'brainstorm-game'
description: 'Game brainstorming with CIS workflow'
author: 'BMad'
instructions: 'bmad/bmm/workflows/brainstorm-game/instructions.md'
template: false
web_bundle_files:
- 'bmad/bmm/workflows/brainstorm-game/instructions.md'
- 'bmad/mmm/workflows/brainstorm-game/game-context.md'
- 'bmad/core/workflows/brainstorming/workflow.yaml'
existing_workflows:
- core_brainstorming: 'bmad/core/workflows/brainstorming/workflow.yaml'
```
**What existing_workflows does:**
- Tells the bundler this workflow invokes another workflow
- Bundler recursively includes the invoked workflow's entire web_bundle
- Essential for meta-workflows that orchestrate other workflows
- Maps workflow variable names to their bmad/-relative paths
<action>Validate web bundle completeness:</action>
- Ensure no {config_source} variables remain
- Verify all file paths are listed
- Check that paths are bmad/-relative
- If workflow uses <invoke-workflow>, add to existing_workflows
<template-output>web_bundle_config</template-output>
</step>

View File

@@ -146,7 +146,12 @@ If creating new web bundle:
- Any included files
5. Scan template.md for any includes
6. Create complete web_bundle_files array
7. Generate web_bundle section
7. **CRITICAL**: Check for <invoke-workflow> calls in instructions:
- If workflow invokes other workflows, add existing_workflows field
- Maps workflow variable name to bmad/-relative path
- Signals bundler to recursively include invoked workflow's web_bundle
- Example: `existing_workflows: - core_brainstorming: "bmad/core/workflows/brainstorming/workflow.yaml"`
8. Generate web_bundle section
If updating existing web bundle:

View File

@@ -1,5 +1,6 @@
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
<critical>Communicate all responses in {communication_language}</critical>
<critical>This is a meta-workflow that orchestrates the CIS brainstorming workflow with game-specific context and additional game design techniques</critical>
<workflow>
@@ -84,7 +85,7 @@ What would you like to do?</ask>
- **{{date}}**: Completed brainstorm-game workflow. Generated game brainstorming session results saved to {output_folder}/brainstorming-session-results-{{date}}.md. Next: Review game ideas and consider running research or game-brief workflows.
```
<output>**✅ Game Brainstorming Session Complete**
<output>**✅ Game Brainstorming Session Complete, {user_name}!**
**Session Results:**
@@ -108,7 +109,7 @@ Check status anytime with: `workflow-status`
</check>
<check if="status file not found">
<output>**✅ Game Brainstorming Session Complete**
<output>**✅ Game Brainstorming Session Complete, {user_name}!**
**Session Results:**

View File

@@ -28,7 +28,6 @@ web_bundle:
author: "BMad"
instructions: "bmad/bmm/workflows/1-analysis/brainstorm-game/instructions.md"
template: false
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/1-analysis/brainstorm-game/instructions.md"
- "bmad/bmm/workflows/1-analysis/brainstorm-game/game-context.md"

View File

@@ -3,6 +3,7 @@
````xml
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {installed_path}/workflow.yaml</critical>
<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>
<workflow>
@@ -77,7 +78,7 @@ What would you like to do?</ask>
- **{{date}}**: Completed brainstorm-project workflow. Generated brainstorming session results saved to {output_folder}/brainstorming-session-results-{{date}}.md. Next: Review ideas and consider running research or product-brief workflows.
```
<output>**✅ Brainstorming Session Complete**
<output>**✅ Brainstorming Session Complete, {user_name}!**
**Session Results:**
- Brainstorming results saved to: {output_folder}/brainstorming-session-results-{{date}}.md
@@ -98,7 +99,7 @@ Check status anytime with: `workflow-status`
</check>
<check if="status file not found">
<output>**✅ Brainstorming Session Complete**
<output>**✅ Brainstorming Session Complete, {user_name}!**
**Session Results:**
- Brainstorming results saved to: {output_folder}/brainstorming-session-results-{{date}}.md

View File

@@ -27,7 +27,6 @@ web_bundle:
author: "BMad"
instructions: "bmad/bmm/workflows/1-analysis/brainstorm-project/instructions.md"
template: false
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/1-analysis/brainstorm-project/instructions.md"
- "bmad/bmm/workflows/1-analysis/brainstorm-project/project-context.md"

View File

@@ -38,7 +38,6 @@ web_bundle:
instructions: "bmad/bmm/workflows/1-analysis/product-brief/instructions.md"
validation: "bmad/bmm/workflows/1-analysis/product-brief/checklist.md"
template: "bmad/bmm/workflows/1-analysis/game-brief/template.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/1-analysis/game-brief/template.md"
- "bmad/bmm/workflows/1-analysis/game-brief/instructions.md"

View File

@@ -37,7 +37,6 @@ web_bundle:
instructions: "bmad/bmm/workflows/1-analysis/product-brief/instructions.md"
validation: "bmad/bmm/workflows/1-analysis/product-brief/checklist.md"
template: "bmad/bmm/workflows/1-analysis/product-brief/template.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/1-analysis/product-brief/template.md"
- "bmad/bmm/workflows/1-analysis/product-brief/instructions.md"

View File

@@ -155,7 +155,6 @@ web_bundle:
author: "BMad"
instructions: "bmad/bmm/workflows/1-analysis/research/instructions-router.md" # Router loads specific instruction sets
validation: "bmad/bmm/workflows/1-analysis/research/checklist.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/1-analysis/research/instructions-router.md"
- "bmad/bmm/workflows/1-analysis/research/instructions-market.md"

View File

@@ -56,7 +56,6 @@ web_bundle:
description: "Game Design Document workflow for all game project levels - from small prototypes to full AAA games. Generates comprehensive GDD with game mechanics, systems, progression, and implementation guidance."
author: "BMad"
instructions: "bmad/bmm/workflows/2-plan-workflows/gdd/instructions-gdd.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/2-plan-workflows/gdd/instructions-gdd.md"
- "bmad/bmm/workflows/2-plan-workflows/gdd/gdd-template.md"

View File

@@ -44,7 +44,6 @@ web_bundle:
description: "Narrative design workflow for story-driven games and applications. Creates comprehensive narrative documentation including story structure, character arcs, dialogue systems, and narrative implementation guidance."
author: "BMad"
instructions: "bmad/bmm/workflows/2-plan-workflows/narrative/instructions-narrative.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/2-plan-workflows/narrative/instructions-narrative.md"
- "bmad/bmm/workflows/2-plan-workflows/narrative/narrative-template.md"

View File

@@ -37,7 +37,6 @@ web_bundle:
description: "Unified PRD workflow for project levels 2-4. Produces strategic PRD and tactical epic breakdown. Hands off to solution-architecture workflow for technical design. Note: Level 0-1 use tech-spec workflow."
author: "BMad"
instructions: "bmad/bmm/workflows/2-plan-workflows/prd/instructions.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/2-plan-workflows/prd/instructions.md"
- "bmad/bmm/workflows/2-plan-workflows/prd/prd-template.md"

View File

@@ -59,7 +59,6 @@ web_bundle:
description: "Technical specification workflow for Level 0-1 projects. Creates focused tech spec with story generation. Level 0: tech-spec + user story. Level 1: tech-spec + epic/stories."
author: "BMad"
instructions: "bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions.md"
- "bmad/bmm/workflows/2-plan-workflows/tech-spec/instructions-level0-story.md"

View File

@@ -52,7 +52,6 @@ web_bundle:
description: "UX/UI specification workflow for defining user experience and interface design. Creates comprehensive UX documentation including wireframes, user flows, component specifications, and design system guidelines."
author: "BMad"
instructions: "bmad/bmm/workflows/2-plan-workflows/ux/instructions-ux.md"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/bmm/workflows/2-plan-workflows/ux/instructions-ux.md"
- "bmad/bmm/workflows/2-plan-workflows/ux/ux-spec-template.md"

View File

@@ -35,8 +35,6 @@ web_bundle:
author: "BMad"
instructions: "bmad/cis/workflows/design-thinking/instructions.md"
template: "bmad/cis/workflows/design-thinking/template.md"
design_methods: "bmad/cis/workflows/design-thinking/design-methods.csv"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/cis/workflows/design-thinking/instructions.md"
- "bmad/cis/workflows/design-thinking/template.md"

View File

@@ -35,8 +35,6 @@ web_bundle:
author: "BMad"
instructions: "bmad/cis/workflows/innovation-strategy/instructions.md"
template: "bmad/cis/workflows/innovation-strategy/template.md"
innovation_frameworks: "bmad/cis/workflows/innovation-strategy/innovation-frameworks.csv"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/cis/workflows/innovation-strategy/instructions.md"
- "bmad/cis/workflows/innovation-strategy/template.md"

View File

@@ -35,8 +35,6 @@ web_bundle:
author: "BMad"
instructions: "bmad/cis/workflows/problem-solving/instructions.md"
template: "bmad/cis/workflows/problem-solving/template.md"
solving_methods: "bmad/cis/workflows/problem-solving/solving-methods.csv"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/cis/workflows/problem-solving/instructions.md"
- "bmad/cis/workflows/problem-solving/template.md"

View File

@@ -5,6 +5,7 @@
<workflow>
<critical>The workflow execution engine is governed by: {project_root}/bmad/core/tasks/workflow.xml</critical>
<critical>You MUST have already loaded and processed: {project_root}/bmad/cis/workflows/storytelling/workflow.yaml</critical>
<critical>Communicate all responses in {communication_language}</critical>
<step n="1" goal="Story Context Setup">
@@ -249,10 +250,11 @@ Polish and plan forward:
<ask>What parts of the story feel strongest?</ask>
<ask>What areas could use more refinement?</ask>
<ask>What's the key resolution or call to action for your story?</ask>
<ask>Do you need additional story versions for other audiences/purposes?</ask>
<ask>How will you test this story with your audience?</ask>
<template-output>refinement_opportunities, additional_versions, feedback_plan</template-output>
<template-output>resolution, refinement_opportunities, additional_versions, feedback_plan</template-output>
</step>
@@ -266,6 +268,9 @@ Compile all story components into the structured template:
4. Verify tone and voice consistency
5. Fill all template placeholders with actual content
<action>Write final story document to {output_folder}/story-{{date}}.md</action>
<action>Confirm completion with: "Story complete, {user_name}! Your narrative has been saved to {output_folder}/story-{{date}}.md"</action>
<template-output>agent_role, agent_name, user_name, date</template-output>
</step>

View File

@@ -35,9 +35,7 @@ web_bundle:
author: "BMad"
instructions: "bmad/cis/workflows/storytelling/instructions.md"
template: "bmad/cis/workflows/storytelling/template.md"
story_frameworks: "bmad/cis/workflows/storytelling/story-types.csv"
use_advanced_elicitation: true
web_bundle_files:
- "bmad/cis/workflows/storytelling/instructions.md"
- "bmad/cis/workflows/storytelling/template.md"
- "bmad/cis/workflows/storytelling/story-frameworks.csv"
- "bmad/cis/workflows/storytelling/story-types.csv"

View File

@@ -104,12 +104,26 @@ date: system-generated
### Progress:
- Status: Pending
- Workflows Completed: 0/42
- Status: ⚙️ IN PROGRESS
- Workflows Completed: 14/35 (40%)
### Completed Workflows:
_None yet_
**CIS Module (4/4 - 100% complete):**
1. ✅ storytelling - Fixed: removed use_advanced_elicitation bloat, removed duplicate story_frameworks, fixed web_bundle filename (story-frameworks.csv → story-types.csv), added missing {{resolution}} template-output, added {communication_language} and {user_name} usage
2. ✅ problem-solving - Fixed: removed use_advanced_elicitation bloat, removed duplicate solving_methods
3. ✅ design-thinking - Fixed: removed use_advanced_elicitation bloat, removed duplicate design_methods
4. ✅ innovation-strategy - Fixed: removed use_advanced_elicitation bloat, removed duplicate innovation_frameworks
**BMM Module (10/30 cleaned so far):** 5. ✅ brainstorm-game - Fixed: removed use_advanced_elicitation bloat 6. ✅ brainstorm-project - Fixed: removed use_advanced_elicitation bloat 7. ✅ game-brief - Fixed: removed use_advanced_elicitation bloat 8. ✅ product-brief - Fixed: removed use_advanced_elicitation bloat 9. ✅ research - Fixed: removed use_advanced_elicitation bloat 10. ✅ gdd - Fixed: removed use_advanced_elicitation bloat 11. ✅ narrative - Fixed: removed use_advanced_elicitation bloat 12. ✅ prd - Fixed: removed use_advanced_elicitation bloat 13. ✅ tech-spec (2-plan) - Fixed: removed use_advanced_elicitation bloat 14. ✅ ux - Fixed: removed use_advanced_elicitation bloat
**Common Issues Found:**
- `use_advanced_elicitation: true` bloat in web_bundle (not used in instructions) - Fixed in 14 workflows (4 CIS + 10 BMM)
- Duplicate data file variables between top-level and web_bundle - Fixed in 4 CIS workflows
- Missing template-output tags for template variables - Fixed in storytelling (1)
- Underutilization of {communication_language} and {user_name} config variables - Enhanced in storytelling (1)
---