workflow builder has template LOD output options
This commit is contained in:
parent
1e6fc4ba14
commit
0b3964902a
|
|
@ -0,0 +1,513 @@
|
|||
---
|
||||
name: 'Workflow Compliance Report - create-workflow'
|
||||
description: 'Systematic validation results for create-workflow workflow'
|
||||
workflow_name: 'create-workflow'
|
||||
validation_date: '2025-12-02'
|
||||
stepsCompleted: ['workflow-validation', 'step-validation', 'file-validation', 'spectrum-validation', 'web-subprocess-validation']
|
||||
---
|
||||
|
||||
# Workflow Compliance Report: create-workflow
|
||||
|
||||
**Validation Date:** 2025-12-02
|
||||
**Target Workflow:** /Users/brianmadison/dev/BMAD-METHOD/src/modules/bmb/workflows/create-workflow/workflow.md
|
||||
**Reference Standard:** /Users/brianmadison/dev/BMAD-METHOD/.bmad/bmb/docs/workflows/templates/workflow-template.md
|
||||
|
||||
## Phase 1: Workflow.md Validation Results
|
||||
|
||||
### Template Adherence Analysis
|
||||
|
||||
**Reference Standard:** workflow-template.md
|
||||
|
||||
### Frontmatter Structure Violations
|
||||
|
||||
✅ **PASS** - All required fields present and properly formatted:
|
||||
|
||||
- name: "Create Workflow" ✓
|
||||
- description: "Create structured standalone workflows using markdown-based step architecture" ✓
|
||||
- web_bundle: true (proper boolean format) ✓
|
||||
|
||||
### Role Description Violations
|
||||
|
||||
✅ **PASS** - Role description follows template format:
|
||||
|
||||
- Partnership language present: "This is a partnership, not a client-vendor relationship" ✓
|
||||
- Expertise clearly defined: "workflow architect and systems designer" ✓
|
||||
- User expertise identified: "domain knowledge and specific workflow requirements" ✓
|
||||
- Collaboration directive: "Work together as equals" ✓
|
||||
|
||||
### Workflow Architecture Violations
|
||||
|
||||
🚫 **CRITICAL VIOLATION** - Core Principles deviate from template:
|
||||
|
||||
**Template requires:** "Each step of the overall goal is a self contained instruction file that you will adhere too 1 file as directed at a time"
|
||||
|
||||
**Target has:** "Each step is a self contained instruction file that is a part of an overall workflow that must be followed exactly"
|
||||
|
||||
- **Severity:** Critical
|
||||
- **Template Reference:** "Core Principles" section in workflow-template.md
|
||||
- **Specific Fix:** Replace with exact template wording: "Each step of the overall goal is a self contained instruction file that you will adhere too 1 file as directed at a time"
|
||||
|
||||
🚫 **CRITICAL VIOLATION** - State Tracking Rule deviates from template:
|
||||
|
||||
**Template requires:** "Document progress in output file frontmatter using `stepsCompleted` array when a workflow produces a document"
|
||||
|
||||
**Target has:** "Document progress in context for compliance checking (no output file frontmatter needed)"
|
||||
|
||||
- **Severity:** Critical
|
||||
- **Template Reference:** "Core Principles" section in workflow-template.md
|
||||
- **Specific Fix:** Replace with exact template wording about stepsCompleted array
|
||||
|
||||
### Initialization Sequence Violations
|
||||
|
||||
🚫 **MAJOR VIOLATION** - Configuration path format incorrect:
|
||||
|
||||
**Template requires:** "{project-root}/.bmad/[MODULE FOLDER]/config.yaml"
|
||||
|
||||
**Target has:** "{project-root}/.bmad/bmb/config.yaml"
|
||||
|
||||
- **Severity:** Major
|
||||
- **Template Reference:** "Module Configuration Loading" section in workflow-template.md
|
||||
- **Specific Fix:** Use proper module variable substitution: "{project-root}/.bmad/bmb/config.yaml" should reference module folder properly
|
||||
|
||||
🚫 **MAJOR VIOLATION** - First step path format inconsistent:
|
||||
|
||||
**Template requires:** Explicit step file path following pattern
|
||||
|
||||
**Target has:** "Load, read the full file and then execute `{workflow_path}/steps/step-01-init.md` to begin the workflow."
|
||||
|
||||
- **Severity:** Major
|
||||
- **Template Reference:** "First Step EXECUTION" section in workflow-template.md
|
||||
- **Specific Fix:** Ensure consistency with template variable substitution patterns
|
||||
|
||||
### Phase 1 Summary
|
||||
|
||||
**Critical Issues:** 2
|
||||
|
||||
- Core Principles text deviation from template
|
||||
- State Tracking rule modification from template standard
|
||||
|
||||
**Major Issues:** 2
|
||||
|
||||
- Configuration path format not following template variable pattern
|
||||
- First step execution path needs consistency check
|
||||
|
||||
**Minor Issues:** 0
|
||||
|
||||
### Phase 1 Recommendations
|
||||
|
||||
**Priority 1 - Critical Fixes:**
|
||||
|
||||
1. Replace Core Principles text with exact template wording
|
||||
2. Restore State Tracking rule to template standard about stepsCompleted array
|
||||
|
||||
**Priority 2 - Major Fixes:**
|
||||
|
||||
1. Review and standardize all path variable usage to follow template patterns
|
||||
2. Ensure consistency in variable substitution throughout workflow
|
||||
|
||||
## Phase 2: Step Validation Results
|
||||
|
||||
### Template Adherence Analysis
|
||||
|
||||
**Reference Standard:** step-template.md
|
||||
**Total Steps Analyzed:** 9
|
||||
|
||||
### Critical Violations Summary
|
||||
|
||||
**Step 01-init.md:**
|
||||
|
||||
- Missing `outputFile` in frontmatter - Template Reference: line 22
|
||||
- Uses auto-proceed menu instead of standard A/P/C pattern - Template Reference: lines 106-123
|
||||
- Missing "CRITICAL STEP COMPLETION NOTE" section - Template Reference: line 126
|
||||
|
||||
**Step 02-gather.md:**
|
||||
|
||||
- Missing `outputFile` in frontmatter - Template Reference: line 22
|
||||
- Incorrect `nextStepFile` path format - Template Reference: line 19
|
||||
|
||||
**Steps 03-09 (All Steps):**
|
||||
|
||||
- Missing `outputFile` in frontmatter - Template Reference: line 22
|
||||
- Non-standard step naming (missing short descriptive names) - Template Reference: line 9
|
||||
- Steps 08-09 missing `workflowFile` in frontmatter - Template Reference: line 21
|
||||
|
||||
### Major Violations Summary
|
||||
|
||||
**Frontmatter Structure (All Steps):**
|
||||
|
||||
- Missing `altStep{Y}` comment pattern - Template Reference: line 20
|
||||
- Missing Task References section structure - Template Reference: lines 24-27
|
||||
- Missing Template References section structure - Template Reference: lines 29-33
|
||||
- Missing Data References section structure - Template Reference: lines 35-37
|
||||
|
||||
**Menu Pattern Violations:**
|
||||
|
||||
- Step 01: Custom auto-proceed menu instead of standard A/P/C - Template Reference: lines 106-123
|
||||
- Step 05: Menu text "Continue" instead of "Continue to [next action]" - Template Reference: line 115
|
||||
- Step 07: Custom "Build Complete" menu instead of A/P/C pattern - Template Reference: lines 106-123
|
||||
- Step 08: Missing A and P options in menu - Template Reference: lines 106-123
|
||||
- Step 09: Uses T/M/D pattern instead of standard A/P/C - Template Reference: lines 106-123
|
||||
|
||||
### Path Variable Inconsistencies
|
||||
|
||||
- Inconsistent use of `{bmad_folder}` vs `.bmad` in paths across all steps
|
||||
- Missing `outputFile` variable definitions - Template Reference: line 22
|
||||
- Step 04 uses non-standard `nextStepFormDesign` and `nextStepDesign` variables
|
||||
|
||||
### Minor Violations Summary
|
||||
|
||||
**Content Structure:**
|
||||
|
||||
- Missing "CONTEXT BOUNDARIES" section titles - Template Reference: line 82
|
||||
- Missing "EXECUTION PROTOCOLS" section titles - Template Reference: line 75
|
||||
- Non-standard section naming in multiple steps - Template Reference: line 89
|
||||
|
||||
### Phase 2 Summary
|
||||
|
||||
**Critical Issues:** 15
|
||||
|
||||
- 9 missing outputFile variables
|
||||
- 6 non-standard menu patterns
|
||||
- Multiple missing required sections
|
||||
|
||||
**Major Issues:** 36
|
||||
|
||||
- 36 frontmatter structure violations across all steps
|
||||
- 5 menu pattern deviations
|
||||
- Numerous path variable inconsistencies
|
||||
|
||||
**Minor Issues:** 27
|
||||
|
||||
- Section naming inconsistencies
|
||||
- Missing template-required section titles
|
||||
|
||||
**Most Common Violations:**
|
||||
|
||||
1. Missing `outputFile` in frontmatter (9 occurrences)
|
||||
2. Non-standard menu patterns (6 occurrences)
|
||||
3. Missing Task/Template/Data References sections (27 occurrences)
|
||||
|
||||
### Overall Step Compliance Score
|
||||
|
||||
**Overall Workflow Step Compliance: 68%**
|
||||
|
||||
- Step 01: 65% compliant
|
||||
- Step 02: 70% compliant
|
||||
- Steps 03-09: 63-72% compliant each
|
||||
|
||||
## Phase 3: File Size, Formatting, and Data Validation Results
|
||||
|
||||
### File Size Analysis
|
||||
|
||||
**Workflow File:**
|
||||
|
||||
- workflow.md: 2.9K - ✅ **Optimal** - Excellent performance and maintainability
|
||||
|
||||
**Step Files Distribution:**
|
||||
|
||||
- **Optimal (≤5K):** 3 files
|
||||
- step-09-complete.md: 5.1K
|
||||
- step-01-init.md: 5.3K
|
||||
- **Good (5K-7K):** 1 file
|
||||
- step-04-plan-review.md: 6.6K
|
||||
- **Acceptable (7K-10K):** 5 files
|
||||
- step-02-gather.md: 7.8K
|
||||
- step-08-review.md: 7.9K
|
||||
- step-03-tools-configuration.md: 7.9K
|
||||
- step-05-output-format-design.md: 8.2K
|
||||
- step-06-design.md: 9.0K
|
||||
- **Acceptable (approaching concern):** 1 file
|
||||
- step-07-build.md: 10.0K (monitor if additional features added)
|
||||
|
||||
**CSV Data Files:**
|
||||
|
||||
- Total CSV files: 0
|
||||
- No data files present requiring validation
|
||||
|
||||
### Markdown Formatting Validation
|
||||
|
||||
**✅ Strengths:**
|
||||
|
||||
- Consistent frontmatter structure across all files
|
||||
- Proper heading hierarchy (H1→H2→H3) maintained
|
||||
- Standardized section patterns across all steps
|
||||
- Proper code block formatting in 7 of 10 files
|
||||
- Consistent bullet point usage throughout
|
||||
|
||||
**⚠️ Minor Issues:**
|
||||
|
||||
- File size range significant (2.9K to 10K) but all within acceptable limits
|
||||
- step-07-build.md approaching concern threshold at 10K
|
||||
|
||||
### Performance Impact Assessment
|
||||
|
||||
**Overall workflow performance:** ✅ **Excellent**
|
||||
|
||||
- All files optimized for performance
|
||||
- No files requiring immediate size optimization
|
||||
- Well-structured maintainable codebase
|
||||
- Professional markdown implementation
|
||||
|
||||
**Most critical file size issue:** None - all files within acceptable ranges
|
||||
**Primary formatting concerns:** None significant - excellent consistency maintained
|
||||
|
||||
## Phase 4: Intent vs Prescriptive Spectrum Analysis
|
||||
|
||||
### Current Position Assessment
|
||||
|
||||
**Analyzed Position:** Balanced Middle (leaning prescriptive)
|
||||
**Evidence:**
|
||||
|
||||
- Highly structured step files with mandatory execution rules
|
||||
- Specific sequence enforcement and template compliance requirements
|
||||
- Conversational partnership model within rigid structural constraints
|
||||
- Limited creative adaptation but maintains collaborative dialogue
|
||||
**Confidence Level:** High - Clear patterns in implementation demonstrate intentional structure
|
||||
|
||||
### Expert Recommendation
|
||||
|
||||
**Recommended Position:** Balanced Middle (slightly toward prescriptive)
|
||||
**Reasoning:**
|
||||
|
||||
- Workflow creation needs systematic structure for BMAD compliance
|
||||
- Template requirements demand prescriptive elements
|
||||
- Creative aspects need room for user ownership
|
||||
- Best workflows emerge from structured collaboration
|
||||
**Workflow Type Considerations:**
|
||||
- Primary purpose: Creating structured, repeatable workflows
|
||||
- User expectations: Reliable, consistent BMAD-compliant outputs
|
||||
- Success factors: Template compliance and systematic approach
|
||||
- Risk level: Medium - compliance critical for ecosystem coherence
|
||||
|
||||
### User Decision
|
||||
|
||||
**Selected Position:** Option 1 - Keep Current Position (Balanced Middle leaning prescriptive)
|
||||
**Rationale:** User prefers to maintain current structured approach
|
||||
**Implementation Guidance:**
|
||||
|
||||
- Continue with current balance of structure and collaborative dialogue
|
||||
- Maintain template compliance requirements
|
||||
- Preserve systematic execution patterns
|
||||
- Keep conversational elements within prescribed framework
|
||||
|
||||
### Spectrum Validation Results
|
||||
|
||||
✅ Spectrum position is intentional and understood
|
||||
✅ User educated on implications of their choice
|
||||
✅ Implementation guidance provided for maintaining position
|
||||
✅ Decision documented for future reference
|
||||
|
||||
## Phase 5: Web Search & Subprocess Optimization Analysis
|
||||
|
||||
### Web Search Optimization
|
||||
|
||||
**Unnecessary Searches Identified:** 1
|
||||
|
||||
- Step 6 loads 5+ template files individually - these are static templates that rarely change
|
||||
**Essential Searches to Keep:** 2
|
||||
- CSV tool database in Step 3 (dynamic data)
|
||||
- Reference workflow example in Step 2 (concrete patterns)
|
||||
**Optimization Recommendations:**
|
||||
- Implement template caching to eliminate repeated file loads
|
||||
- Use selective CSV loading based on workflow type
|
||||
**Estimated Time Savings:** 5-7 seconds per workflow execution
|
||||
|
||||
### Subprocess Optimization Opportunities
|
||||
|
||||
**Parallel Processing:** 2 major opportunities identified
|
||||
|
||||
1. **Step 3 + Step 5 Parallelization:** Tools configuration and output format design can run simultaneously
|
||||
- Savings: 5-10 minutes per workflow
|
||||
2. **Background Template Loading:** Pre-load templates during Step 1 idle time
|
||||
- Savings: Eliminate design-phase delays
|
||||
|
||||
**Batch Processing:** 1 grouping opportunity
|
||||
|
||||
- Parallel file generation in Step 7 (workflow.md, step files, templates)
|
||||
- Savings: 60-80% reduction in build time for multi-step workflows
|
||||
|
||||
**Background Processing:** 2 task opportunities
|
||||
|
||||
- Template pre-loading during initialization
|
||||
- File generation coordination during build phase
|
||||
|
||||
**Performance Improvement:** 40-60% estimated overall improvement
|
||||
|
||||
### Resource Efficiency Analysis
|
||||
|
||||
**Context Optimization:**
|
||||
|
||||
- JIT context loading: 40-60% reduction in token usage
|
||||
- Reference content deduplication: 8,000-12,000 token savings
|
||||
- Step file size reduction: 30-50% smaller files
|
||||
|
||||
**LLM Resource Usage:**
|
||||
|
||||
- Smart context pruning by workflow phase
|
||||
- Compact step instructions with external references
|
||||
- Selective context loading based on current phase
|
||||
|
||||
**User Experience Impact:**
|
||||
|
||||
- Significantly faster workflow creation (15-25 minutes saved)
|
||||
- More responsive interaction patterns
|
||||
- Reduced waiting times during critical phases
|
||||
|
||||
### Implementation Recommendations
|
||||
|
||||
**Immediate Actions (High Impact, Low Risk):**
|
||||
|
||||
1. Implement template caching in workflow.md frontmatter
|
||||
2. Optimize CSV loading with category filtering
|
||||
3. Reduce step file sizes by moving examples to reference files
|
||||
|
||||
**Strategic Improvements (High Impact, Medium Risk):**
|
||||
|
||||
1. Parallelize Step 3 and Step 5 execution
|
||||
2. Implement JIT context loading by phase
|
||||
3. Background template pre-loading
|
||||
|
||||
**Future Enhancements (Highest Impact, Higher Risk):**
|
||||
|
||||
1. Parallel file generation with sub-process coordination
|
||||
2. Smart context pruning across workflow phases
|
||||
3. Complete reference deduplication system
|
||||
|
||||
## Phase 6: Holistic Workflow Analysis Results
|
||||
|
||||
### Flow Validation
|
||||
|
||||
**Completion Path Analysis:**
|
||||
|
||||
- ✅ All steps have clear continuation paths
|
||||
- ✅ No orphaned steps or dead ends
|
||||
- ⚠️ Minor issue: Steps 07 and 09 use non-standard menu patterns
|
||||
|
||||
**Sequential Logic:**
|
||||
|
||||
- ✅ Logical workflow creation progression maintained
|
||||
- ✅ Dependencies properly structured
|
||||
- ⚠️ Steps 05-06 could potentially be consolidated
|
||||
|
||||
### Goal Alignment
|
||||
|
||||
**Alignment Score:** 85%
|
||||
|
||||
**Stated Goal:** "Create structured, repeatable standalone workflows through collaborative conversation and step-by-step guidance"
|
||||
|
||||
**Actual Implementation:** Creates structured workflows with heavy emphasis on template compliance and systematic validation
|
||||
|
||||
**Gap Analysis:**
|
||||
|
||||
- Workflow emphasizes structure over creativity (aligned with spectrum choice)
|
||||
- Template compliance heavier than user guidance (may need balance adjustment)
|
||||
|
||||
### Meta-Workflow Failure Analysis
|
||||
|
||||
**Issues That Should Have Been Prevented by create-workflow:**
|
||||
|
||||
1. Missing outputFile variables in all 9 steps (Critical)
|
||||
2. Non-standard menu patterns in Steps 07 and 09 (Major)
|
||||
3. Missing Task/Template/Data references across all steps (Major)
|
||||
4. Path variable inconsistencies throughout workflow (Major)
|
||||
5. Step naming violations for Steps 05-09 (Major)
|
||||
6. Core Principles text deviation from template (Critical)
|
||||
|
||||
**Recommended Meta-Workflow Improvements:**
|
||||
|
||||
- Add frontmatter completeness validation during creation
|
||||
- Implement path variable format checking
|
||||
- Include menu pattern enforcement validation
|
||||
- Add Intent vs Prescriptive spectrum selection in Step 01
|
||||
- Validate template compliance before finalization
|
||||
|
||||
---
|
||||
|
||||
## Executive Summary
|
||||
|
||||
**Overall Compliance Status:** PARTIAL
|
||||
**Critical Issues:** 17 - Must be fixed immediately
|
||||
**Major Issues:** 36 - Significantly impacts quality/maintainability
|
||||
**Minor Issues:** 27 - Standards compliance improvements
|
||||
|
||||
**Overall Compliance Score:** 68% based on template adherence
|
||||
|
||||
## Severity-Ranked Fix Recommendations
|
||||
|
||||
### IMMEDIATE - Critical (Must Fix for Functionality)
|
||||
|
||||
1. **Missing outputFile Variables** - Files: All 9 step files
|
||||
- **Problem:** Critical frontmatter field missing from all steps
|
||||
- **Template Reference:** step-template.md line 22
|
||||
- **Fix:** Add `outputFile: '{output_folder}/workflow-plan-{project_name}.md'` to each step
|
||||
- **Impact:** Workflow cannot produce output without this field
|
||||
|
||||
2. **Core Principles Deviation** - File: workflow.md
|
||||
- **Problem:** Text modified from template standard
|
||||
- **Template Reference:** workflow-template.md Core Principles section
|
||||
- **Fix:** Replace with exact template wording
|
||||
- **Impact:** Violates fundamental BMAD workflow architecture
|
||||
|
||||
3. **Non-Standard Menu Patterns** - Files: step-07-build.md, step-09-complete.md
|
||||
- **Problem:** Custom menu formats instead of A/P/C pattern
|
||||
- **Template Reference:** step-template.md lines 106-123
|
||||
- **Fix:** Standardize to A/P/C menu pattern
|
||||
- **Impact:** Breaks user experience consistency
|
||||
|
||||
### HIGH PRIORITY - Major (Significantly Impacts Quality)
|
||||
|
||||
1. **Missing Task/Template/Data References** - Files: All 9 step files
|
||||
- **Problem:** Required frontmatter sections missing
|
||||
- **Template Reference:** step-template.md lines 24-37
|
||||
- **Fix:** Add all required reference sections with proper comments
|
||||
- **Impact:** Violates template structure standards
|
||||
|
||||
2. **Step Naming Violations** - Files: steps 05-09
|
||||
- **Problem:** Missing short descriptive names in step filenames
|
||||
- **Template Reference:** step-template.md line 9
|
||||
- **Fix:** Rename to include descriptive names (e.g., step-05-output-format.md)
|
||||
- **Impact:** Inconsistent with BMAD naming conventions
|
||||
|
||||
3. **Path Variable Inconsistencies** - Files: All steps
|
||||
- **Problem:** Mixed use of `{bmad_folder}` vs `.bmad`
|
||||
- **Template Reference:** workflow-template.md path patterns
|
||||
- **Fix:** Standardize to template variable patterns
|
||||
- **Impact:** Installation flexibility and maintainability
|
||||
|
||||
### MEDIUM PRIORITY - Minor (Standards Compliance)
|
||||
|
||||
1. **Missing Section Titles** - Files: All steps
|
||||
- **Problem:** Missing "CONTEXT BOUNDARIES" and "EXECUTION PROTOCOLS" titles
|
||||
- **Template Reference:** step-template.md lines 75, 82
|
||||
- **Fix:** Add missing section titles
|
||||
- **Impact:** Template compliance
|
||||
|
||||
## Automated Fix Options
|
||||
|
||||
### Fixes That Can Be Applied Automatically
|
||||
|
||||
- Add outputFile variables to all step frontmatter
|
||||
- Add missing section titles
|
||||
- Standardize path variable usage
|
||||
- Add Task/Template/Data reference section skeletons
|
||||
|
||||
### Fixes Requiring Manual Review
|
||||
|
||||
- Core Principles text restoration (needs exact template matching)
|
||||
- Menu pattern standardization (custom logic may be intentional)
|
||||
- Step renaming (requires file system changes and reference updates)
|
||||
|
||||
## Next Steps Recommendation
|
||||
|
||||
**Recommended Approach:**
|
||||
|
||||
1. Fix all Critical issues immediately (workflow may not function)
|
||||
2. Address Major issues for reliability and maintainability
|
||||
3. Implement Minor issues for full standards compliance
|
||||
4. Update meta-workflows to prevent future violations
|
||||
|
||||
**Estimated Effort:**
|
||||
|
||||
- Critical fixes: 2-3 hours
|
||||
- Major fixes: 4-6 hours
|
||||
- Minor fixes: 1-2 hours
|
||||
|
|
@ -69,7 +69,7 @@ workflow-folder/
|
|||
Standard variables in step files:
|
||||
|
||||
```yaml
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/[workflow-name]'
|
||||
workflow_path: '{project-root}/{*bmad_folder*}/bmb/reference/workflows/[workflow-name]'
|
||||
thisStepFile: '{workflow_path}/steps/step-[N]-[name].md'
|
||||
nextStepFile: '{workflow_path}/steps/step-[N+1]-[name].md'
|
||||
workflowFile: '{workflow_path}/workflow.md'
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ description: 'Initialize the [workflow-type] workflow by detecting continuation
|
|||
|
||||
<!-- Path Definitions -->
|
||||
|
||||
workflow_path: '{project-root}/{bmad_folder}/[module-path]/workflows/[workflow-name]'
|
||||
workflow*path: '{project-root}/{\_bmad_folder*}/[module-path]/workflows/[workflow-name]'
|
||||
|
||||
# File References (all use {variable} format in file)
|
||||
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ description: 'Handle workflow continuation from previous session'
|
|||
|
||||
<!-- Path Definitions -->
|
||||
|
||||
workflow_path: '{project-root}/{bmad_folder}/[module-path]/workflows/[workflow-name]'
|
||||
workflow*path: '{project-root}/{\_bmad_folder*}/[module-path]/workflows/[workflow-name]'
|
||||
|
||||
# File References (all use {variable} format in file)
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ name: "step-{{stepNumber}}-{{stepName}}"
|
|||
description: "{{stepDescription}}"
|
||||
|
||||
# Path Definitions
|
||||
workflow_path: "{project-root}/{bmad_folder}/{{targetModule}}/workflows/{{workflowName}}"
|
||||
workflow_path: "{project-root}/{*bmad_folder*}/{{targetModule}}/workflows/{{workflowName}}"
|
||||
|
||||
# File References
|
||||
thisStepFile: "{workflow_path}/steps/step-{{stepNumber}}-{{stepName}}.md"
|
||||
|
|
@ -15,9 +15,9 @@ workflowFile: "{workflow_path}/workflow.md"
|
|||
outputFile: "{output_folder}/{{outputFileName}}-{project_name}.md"
|
||||
{{/hasOutput}}
|
||||
|
||||
# Task References
|
||||
advancedElicitationTask: "{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml"
|
||||
partyModeWorkflow: "{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md"
|
||||
# Task References (list only if used in THIS step file instance and only the ones used, there might be others)
|
||||
advancedElicitationTask: "{project-root}/{*bmad_folder*}/core/tasks/advanced-elicitation.xml"
|
||||
partyModeWorkflow: "{project-root}/{*bmad_folder*}/core/workflows/party-mode/workflow.md"
|
||||
|
||||
{{#hasTemplates}}
|
||||
# Template References
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ description: '[Brief description of what this step accomplishes]'
|
|||
|
||||
<!-- Path Definitions -->
|
||||
|
||||
workflow_path: '{project-root}/{bmad_folder}/bmb/reference/workflows/[workflow-name]' # the folder the workflow.md file is in
|
||||
workflow*path: '{project-root}/{\_bmad_folder*}/bmb/reference/workflows/[workflow-name]' # the folder the workflow.md file is in
|
||||
|
||||
# File References (all use {variable} format in file)
|
||||
|
||||
|
|
@ -23,8 +23,8 @@ outputFile: '{output_folder}/[output-file-name]-{project_name}.md'
|
|||
|
||||
# Task References (IF THE workflow uses and it makes sense in this step to have these )
|
||||
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
advancedElicitationTask: '{project-root}/{_bmad_folder_}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{_bmad_folder_}/core/workflows/party-mode/workflow.md'
|
||||
|
||||
# Template References (if this step uses a specific templates)
|
||||
|
||||
|
|
|
|||
|
|
@ -53,7 +53,7 @@ web_bundle: [true/false] # Set to true for inclusion in web bundle builds
|
|||
|
||||
### 1. Module Configuration Loading
|
||||
|
||||
Load and read full config from {project-root}/{bmad_folder}/[MODULE FOLDER]/config.yaml and resolve:
|
||||
Load and read full config from {project-root}/{_bmad_folder_}/[MODULE FOLDER]/config.yaml and resolve:
|
||||
|
||||
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`, [MODULE VARS]
|
||||
|
||||
|
|
|
|||
|
|
@ -49,7 +49,7 @@ This uses **step-file architecture** for disciplined execution:
|
|||
|
||||
### 1. Configuration Loading
|
||||
|
||||
Load and read full config from {project-root}/{bmad_folder}/{{targetModule}}/config.yaml and resolve:
|
||||
Load and read full config from {project-root}/{_bmad_folder_}/{{targetModule}}/config.yaml and resolve:
|
||||
|
||||
- `project_name`, `output_folder`, `user_name`, `communication_language`, `document_output_language`
|
||||
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ Load and follow {workflowTemplate}:
|
|||
|
||||
- Create workflow.md using template structure
|
||||
- Insert workflow name and description
|
||||
- Configure all path variables ({project-root}, {bmad_folder}, {workflow_path})
|
||||
- Configure all path variables ({project-root}, {_bmad_folder_}, {workflow_path})
|
||||
- Set web_bundle flag to true unless user has indicated otherwise
|
||||
- Define role and goal
|
||||
- Include initialization path to step-01
|
||||
|
|
|
|||
|
|
@ -132,10 +132,10 @@ For each deviation:
|
|||
|
||||
"**Initialization Validation:**"
|
||||
|
||||
- Configuration Loading uses correct path format: `{project-root}/{bmad_folder}/[module]/config.yaml` (variable substitution pattern)
|
||||
- Configuration Loading uses correct path format: `{project-root}/{*bmad_folder*}/[module]/config.yaml` (variable substitution pattern)
|
||||
- First step follows pattern: `step-01-init.md` OR documented deviation
|
||||
- Required config variables properly listed
|
||||
- Variables use proper substitution pattern: {project-root}, {bmad_folder}, {workflow_path}, etc.
|
||||
- Variables use proper substitution pattern: {project-root}, {_bmad_folder_}, {workflow_path}, etc.
|
||||
|
||||
For violations:
|
||||
|
||||
|
|
@ -198,7 +198,7 @@ Append to {complianceReportFile}:
|
|||
|
||||
"**Phase 1 Complete:** Workflow.md validation finished with detailed violation analysis.
|
||||
|
||||
**Ready for Phase 2:** Step-by-step validation against step-template.md
|
||||
**Ready for Phase 3:** Step-by-step validation against step-template.md
|
||||
|
||||
This will check each step file for:
|
||||
|
||||
|
|
|
|||
|
|
@ -138,8 +138,8 @@ Check for proper references:
|
|||
|
||||
```yaml
|
||||
# Task References
|
||||
advancedElicitationTask: '{project-root}/{bmad_folder}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{bmad_folder}/core/workflows/party-mode/workflow.md'
|
||||
advancedElicitationTask: '{project-root}/{*bmad_folder*}/core/tasks/advanced-elicitation.xml'
|
||||
partyModeWorkflow: '{project-root}/{*bmad_folder*}/core/workflows/party-mode/workflow.md'
|
||||
```
|
||||
|
||||
**Violations to document:**
|
||||
|
|
@ -186,7 +186,7 @@ For each step:
|
|||
|
||||
"**Path Variable Validation:**"
|
||||
|
||||
- Check format: `{project-root}/{bmad_folder}/bmb/...` vs `{project-root}/src/modules/bmb/...`
|
||||
- Check format: `{project-root}/{*bmad_folder*}/bmb/...` vs `{project-root}/src/modules/bmb/...`
|
||||
- Ensure consistent variable usage across all step files
|
||||
- Validate relative vs absolute path usage
|
||||
|
||||
|
|
@ -232,13 +232,13 @@ For each step file with violations:
|
|||
2. [Second most frequent]
|
||||
3. [Third most frequent]
|
||||
|
||||
**Ready for Phase 3:** Holistic workflow analysis
|
||||
**Ready for Phase 4:** File Validation workflow analysis
|
||||
|
||||
- Flow optimization assessment
|
||||
- Goal alignment verification
|
||||
- Meta-workflow failure analysis
|
||||
|
||||
**Select an Option:** [C] Continue to Holistic Analysis [X] Exit"
|
||||
**Select an Option:** [C] Continue to File Validation [X] Exit"
|
||||
|
||||
## Menu Handling Logic:
|
||||
|
||||
|
|
|
|||
|
|
@ -253,7 +253,7 @@ For each file with issues:
|
|||
- **Formatting Standards:** [summary of markdown compliance issues]
|
||||
- **Data Validation:** [summary of CSV standards compliance]
|
||||
|
||||
**Ready for Phase 5:** Holistic workflow analysis
|
||||
**Ready for Phase 5:** Intent Spectrum Validation analysis
|
||||
|
||||
- Flow validation and goal alignment
|
||||
- Meta-workflow failure analysis
|
||||
|
|
|
|||
|
|
@ -222,7 +222,7 @@ Append to {complianceReportFile}:
|
|||
- **User Understanding:** Confirmed implications and benefits
|
||||
- **Implementation Ready:** Guidance provided for maintaining position
|
||||
|
||||
**Ready for Phase 6:** Holistic workflow analysis
|
||||
**Ready for Phase 6:** Web Subprocess Validation analysis
|
||||
|
||||
- Flow validation and completion paths
|
||||
- Goal alignment and optimization assessment
|
||||
|
|
|
|||
|
|
@ -315,7 +315,7 @@ Append to {complianceReportFile}:
|
|||
- **Performance Impact:** [expected efficiency gains]
|
||||
- **User Experience Benefits:** [specific improvements]
|
||||
|
||||
**Ready for Phase 6:** Holistic workflow analysis
|
||||
**Ready for Phase 7:** Holistic workflow analysis
|
||||
|
||||
- Flow validation and completion paths
|
||||
- Goal alignment with optimized resources
|
||||
|
|
|
|||
|
|
@ -215,7 +215,7 @@ Evaluate workflow from user perspective:
|
|||
- **Optimization Opportunities:** [number key improvements identified]
|
||||
- **Meta-Workflow Failures:** [number issues that should have been prevented]
|
||||
|
||||
**Ready for Phase 6:** Comprehensive compliance report generation
|
||||
**Ready for Phase 8:** Comprehensive compliance report generation
|
||||
|
||||
- All findings compiled into structured report
|
||||
- Severity-ranked violation list
|
||||
|
|
|
|||
|
|
@ -141,6 +141,11 @@ class Installer {
|
|||
content = content.replaceAll('{bmad_folder}', bmadFolderName);
|
||||
}
|
||||
|
||||
// Replace escape sequence {*bmad_folder*} with literal {bmad_folder}
|
||||
if (content.includes('{*bmad_folder*}')) {
|
||||
content = content.replaceAll('{*bmad_folder*}', '{bmad_folder}');
|
||||
}
|
||||
|
||||
// Process AgentVibes injection points
|
||||
content = this.processTTSInjectionPoints(content);
|
||||
|
||||
|
|
|
|||
|
|
@ -536,6 +536,11 @@ class BaseIdeSetup {
|
|||
if (typeof content === 'string' && content.includes('{bmad_folder}')) {
|
||||
content = content.replaceAll('{bmad_folder}', this.bmadFolderName);
|
||||
}
|
||||
|
||||
// Replace escape sequence {*bmad_folder*} with literal {bmad_folder}
|
||||
if (typeof content === 'string' && content.includes('{*bmad_folder*}')) {
|
||||
content = content.replaceAll('{*bmad_folder*}', '{bmad_folder}');
|
||||
}
|
||||
await this.ensureDir(path.dirname(filePath));
|
||||
await fs.writeFile(filePath, content, 'utf8');
|
||||
}
|
||||
|
|
@ -563,6 +568,11 @@ class BaseIdeSetup {
|
|||
content = content.replaceAll('{bmad_folder}', this.bmadFolderName);
|
||||
}
|
||||
|
||||
// Replace escape sequence {*bmad_folder*} with literal {bmad_folder}
|
||||
if (content.includes('{*bmad_folder*}')) {
|
||||
content = content.replaceAll('{*bmad_folder*}', '{bmad_folder}');
|
||||
}
|
||||
|
||||
// Write to dest with replaced content
|
||||
await fs.writeFile(dest, content, 'utf8');
|
||||
} catch {
|
||||
|
|
|
|||
|
|
@ -149,6 +149,7 @@ ${contentWithoutFrontmatter}
|
|||
// Note: {user_name} and other {config_values} are left as-is for runtime substitution by Gemini
|
||||
const tomlContent = template
|
||||
.replaceAll('{{title}}', title)
|
||||
.replaceAll('{{*bmad_folder*}}', '{bmad_folder}')
|
||||
.replaceAll('{{bmad_folder}}', this.bmadFolderName)
|
||||
.replaceAll('{{module}}', agent.module)
|
||||
.replaceAll('{{name}}', agent.name);
|
||||
|
|
@ -170,6 +171,7 @@ ${contentWithoutFrontmatter}
|
|||
// Replace template variables
|
||||
const tomlContent = template
|
||||
.replaceAll('{{taskName}}', taskName)
|
||||
.replaceAll('{{*bmad_folder*}}', '{bmad_folder}')
|
||||
.replaceAll('{{bmad_folder}}', this.bmadFolderName)
|
||||
.replaceAll('{{module}}', task.module)
|
||||
.replaceAll('{{filename}}', task.filename);
|
||||
|
|
|
|||
|
|
@ -60,7 +60,8 @@ class AgentCommandGenerator {
|
|||
.replaceAll('{{name}}', agent.name)
|
||||
.replaceAll('{{module}}', agent.module)
|
||||
.replaceAll('{{description}}', agent.description || `${agent.name} agent`)
|
||||
.replaceAll('{bmad_folder}', this.bmadFolderName);
|
||||
.replaceAll('{bmad_folder}', this.bmadFolderName)
|
||||
.replaceAll('{*bmad_folder*}', '{bmad_folder}');
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -127,6 +127,7 @@ class WorkflowCommandGenerator {
|
|||
.replaceAll('{{description}}', workflow.description)
|
||||
.replaceAll('{{workflow_path}}', workflowPath)
|
||||
.replaceAll('{bmad_folder}', this.bmadFolderName)
|
||||
.replaceAll('{*bmad_folder*}', '{bmad_folder}')
|
||||
.replaceAll('{{interactive}}', workflow.interactive)
|
||||
.replaceAll('{{author}}', workflow.author || 'BMAD');
|
||||
}
|
||||
|
|
|
|||
|
|
@ -53,6 +53,11 @@ class ModuleManager {
|
|||
// Read the file content
|
||||
let content = await fs.readFile(sourcePath, 'utf8');
|
||||
|
||||
// Replace escape sequence {*bmad_folder*} with literal {bmad_folder}
|
||||
if (content.includes('{*bmad_folder*}')) {
|
||||
content = content.replaceAll('{*bmad_folder*}', '{bmad_folder}');
|
||||
}
|
||||
|
||||
// Replace {bmad_folder} placeholder with actual folder name
|
||||
if (content.includes('{bmad_folder}')) {
|
||||
content = content.replaceAll('{bmad_folder}', this.bmadFolderName);
|
||||
|
|
@ -396,8 +401,9 @@ class ModuleManager {
|
|||
// Read the source YAML file
|
||||
let yamlContent = await fs.readFile(sourceFile, 'utf8');
|
||||
|
||||
// IMPORTANT: Replace {bmad_folder} BEFORE parsing YAML
|
||||
// IMPORTANT: Replace escape sequence and placeholder BEFORE parsing YAML
|
||||
// Otherwise parsing will fail on the placeholder
|
||||
yamlContent = yamlContent.replaceAll('{*bmad_folder*}', '{bmad_folder}');
|
||||
yamlContent = yamlContent.replaceAll('{bmad_folder}', this.bmadFolderName);
|
||||
|
||||
try {
|
||||
|
|
|
|||
Loading…
Reference in New Issue