6.1 KiB
| name | description | nextStepFile | targetWorkflowPath | workflowPlanFile | validationReportFile | stepFileRules |
|---|---|---|---|---|---|---|
| step-01-validate | Initialize validation: create report and check file structure & size | ./step-02-frontmatter-validation.md | {bmb_creations_output_folder}/workflows/{new_workflow_name} | {targetWorkflowPath}/workflow-plan-{new_workflow_name}.md | {targetWorkflowPath}/validation-report-{new_workflow_name}.md | ../data/step-file-rules.md |
Validation Step 1: File Structure & Size
STEP GOAL:
To create the validation report and check that the workflow has correct file structure and all step files are within size limits.
MANDATORY EXECUTION RULES (READ FIRST):
Universal Rules:
- 🛑 DO NOT BE LAZY - LOAD AND REVIEW EVERY FILE
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: When loading next step, ensure entire file is read
- ✅ Validation does NOT stop for user input - auto-proceed through all validation steps
Step-Specific Rules:
- 🎯 Create validation report with header structure
- 🚫 DO NOT skip checking any file
- 💬 Append findings to report, then auto-load next step
- 🚪 This is validation - systematic and thorough
EXECUTION PROTOCOLS:
- 🎯 Load and check EVERY file in the workflow
- 💾 Append findings to validation report
- 📖 Save report before loading next validation step
- 🚫 DO NOT halt for user input - validation runs to completion
CONTEXT BOUNDARIES:
- Workflow has been built in steps-c/
- Check the entire folder structure
- Verify all required files exist
- Check file sizes against limits
MANDATORY SEQUENCE
CRITICAL: Follow this sequence exactly. Do not skip or shortcut.
1. Create Validation Report
Create {validationReportFile} with header structure:
---
validationDate: [current date]
workflowName: {new_workflow_name}
workflowPath: {targetWorkflowPath}
validationStatus: IN_PROGRESS
---
# Validation Report: {new_workflow_name}
**Validation Started:** [current date]
**Validator:** BMAD Workflow Validation System
**Standards Version:** BMAD Workflow Standards
---
## File Structure & Size
*Validation in progress...*
## Frontmatter Validation
*Pending...*
## Menu Handling Validation
*Pending...*
## Step Type Validation
*Pending...*
## Output Format Validation
*Pending...*
## Validation Design Check
*Pending...*
## Instruction Style Check
*Pending...*
## Collaborative Experience Check
*Pending...*
## Cohesive Review
*Pending...*
## Summary
*Pending...*
2. Load File Structure Standards
Load {stepFileRules} to understand:
- File size limits (<200 recommended, 250 max)
- Required folder structure
- Required files
3. Check Folder Structure
DO NOT BE LAZY - List EVERY folder and file:
Use bash commands to list the entire structure:
{targetWorkflowPath}/
├── workflow.md
├── steps-c/
│ ├── step-01-init.md
│ ├── step-01b-continue.md (if continuable)
│ ├── step-02-*.md
│ └── ...
├── steps-v/
│ └── [this validation]
├── data/
│ └── [as needed]
└── templates/
└── [as needed]
Check:
- ✅ workflow.md exists
- ✅ steps-c/ folder exists with all step files
- ✅ data/ folder exists (may be empty)
- ✅ templates/ folder exists (may be empty)
- ✅ No unexpected files
- ✅ Folder names follow conventions
4. Check File Sizes
DO NOT BE LAZY - Check EVERY step file:
For each file in steps-c/:
- Read the file
- Count lines
- Check against limits:
- < 200 lines: ✅ Good
- 200-250 lines: ⚠️ Approaching limit
-
250 lines: ❌ Exceeds limit
Check for Large Data Files:
For each file in data/ folder:
- Check file size in lines
- If > 500 lines: ⚠️ WARNING - Large data file detected
- If > 1000 lines: ❌ ERROR - Data file too large for direct loading
For large data files, recommend:
- Create an index/csv/yaml so LLM knows what's available and can load specific sections
- Use sharding technique (core module has sharding tool) to split large files
- Consider if all data is needed or if lookup/reference pattern would work better
Report format:
### File Size Check
| File | Lines | Status |
|------|-------|--------|
| step-01-init.md | 180 | ✅ Good |
| step-02-*.md | 245 | ⚠️ Approaching limit |
| step-03-*.md | 267 | ❌ Exceeds limit - should split |
### Data File Size Check
| Data File | Lines | Status |
|-----------|-------|--------|
| reference-data.csv | 150 | ✅ Good |
| large-data.md | 2500 | ❌ Too large - use sharding or create index |
5. Verify File Presence
From the design in {workflowPlanFile}, verify:
- Every step from design has a corresponding file
- Step files are numbered sequentially
- No gaps in numbering
- Final step exists
6. Append Findings to Report
Replace the "## File Structure & Size" section in {validationReportFile} with actual findings:
## File Structure & Size
### Folder Structure
[Report findings - is structure correct?]
### Files Present
[Report findings - are all required files present?]
### File Size Check
[Table as shown above]
### Issues Found
[List any issues:
- Missing files
- Extra files
- Size violations
- Naming convention violations]
### Status
✅ PASS / ❌ FAIL / ⚠️ WARNINGS
7. Save Report and Auto-Proceed
CRITICAL: Save the validation report BEFORE loading next step.
Then immediately load, read entire file, then execute {nextStepFile}.
Display: "File Structure & Size validation complete. Proceeding to Frontmatter Validation..."
🚨 SYSTEM SUCCESS/FAILURE METRICS
✅ SUCCESS:
- Validation report created with header structure
- EVERY file checked for structure and size
- Findings appended to report
- Report saved before proceeding
- Next validation step loaded
❌ SYSTEM FAILURE:
- Not checking every file
- Skipping size checks
- Not saving report before proceeding
- Halting for user input
Master Rule: Validation is systematic and thorough. DO NOT BE LAZY. Check EVERY file. Auto-proceed through all validation steps.