6.1 KiB
6.1 KiB
Audit Workflow - Validation Checklist
Structure
- workflow.yaml file loads without YAML syntax errors
- instructions.md file exists and is properly formatted
- template.md file exists (if document workflow) with valid markdown
- All critical headers present in instructions (workflow engine reference, workflow.yaml reference)
- Workflow type correctly identified (document/action/interactive/autonomous/meta)
- All referenced files actually exist at specified paths
- No placeholder text remains (like {TITLE}, {WORKFLOW_CODE}, TODO, etc.)
Standard Config Block
- workflow.yaml contains
config_sourcepointing to correct module config output_folderpulls from{config_source}:output_folderuser_namepulls from{config_source}:user_namecommunication_languagepulls from{config_source}:communication_languagedateis set tosystem-generated- Config source uses {project-root} variable (not hardcoded path)
- Standard config comment present: "Critical variables from config"
Config Variable Usage
- Instructions communicate in {communication_language} where appropriate
- Instructions address {user_name} in greetings or summaries where appropriate
- All file outputs write to {output_folder} or subdirectories (no hardcoded paths)
- Template includes {{user_name}} in metadata (optional for document workflows)
- Template includes {{date}} in metadata (optional for document workflows)
- Template does NOT use {{communication_language}} in headers (agent-only variable)
- No hardcoded language-specific text that should use {communication_language}
- Date used for agent date awareness (not confused with training cutoff)
YAML/Instruction/Template Alignment
- Every workflow.yaml variable (excluding standard config) is used in instructions OR template
- No unused yaml fields present (bloat removed)
- No duplicate fields between top-level and web_bundle section
- All template variables ({{variable}}) have corresponding yaml definitions OR tags
- All tags have corresponding template variables (if document workflow)
- Template variables use snake_case naming convention
- Variable names are descriptive (not abbreviated like {{puj}} instead of {{primary_user_journey}})
- No hardcoded values in instructions that should be yaml variables
Web Bundle Validation (if applicable)
- web_bundle section present if workflow needs deployment
- All paths in web_bundle use bmad/-relative format (NOT {project-root})
- No {config_source} variables in web_bundle section
- instructions file listed in web_bundle_files array
- template file listed in web_bundle_files (if document workflow)
- validation/checklist file listed in web_bundle_files (if exists)
- All data files (CSV, JSON, YAML) listed in web_bundle_files
- All 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 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
Template Validation (if document workflow)
- Template variables match tags in instructions exactly
- All required sections present in template structure
- Template uses {{variable}} syntax (double curly braces)
- Template variables use snake_case (not camelCase or PascalCase)
- Standard metadata header format correct (optional usage of {{date}}, {{user_name}})
- No placeholders remain in template (like {SECTION_NAME})
- Template structure matches document purpose
Instructions Quality
- Each step has n="X" attribute with sequential numbering
- Each step has goal="clear goal statement" attribute
- Optional steps marked with optional="true"
- Repeating steps have appropriate repeat attribute (repeat="3", repeat="for-each-X", repeat="until-approved")
- Conditional steps have if="condition" attribute
- XML tags used correctly (, , , , , )
- No nested tag references in content (use "action tags" not " tags")
- Tag references use descriptive text without angle brackets for clarity
- No conditional execution antipattern (no self-closing tags)
- Single conditionals use (inline)
- Multiple conditionals use ... (wrapper block with closing tag)
- Steps are focused (single goal per step)
- Instructions are specific with limits ("Write 1-2 paragraphs" not "Write about")
- Examples provided where helpful
- tags save checkpoints for document workflows
- Flow control is logical and clear
Bloat Detection
- Bloat percentage under 10% (unused yaml fields / total fields)
- No commented-out variables that should be removed
- No duplicate metadata between sections
- No variables defined but never referenced
- No redundant configuration that duplicates web_bundle
Final Validation
Critical Issues (Must fix immediately)
List any critical issues found:
- Issue 1:
- Issue 2:
- Issue 3:
Important Issues (Should fix soon)
List any important issues found:
- Issue 1:
- Issue 2:
- Issue 3:
Cleanup Recommendations (Nice to have)
List any cleanup recommendations:
- Recommendation 1:
- Recommendation 2:
- Recommendation 3:
Audit Summary
Total Checks: 72 Passed: _ / 72 Failed: _ / 72 Pass Rate: _%
Recommendation:
- Pass Rate ≥ 95%: Excellent - Ready for production
- Pass Rate 85-94%: Good - Minor fixes needed
- Pass Rate 70-84%: Fair - Important issues to address
- Pass Rate < 70%: Poor - Significant work required
Audit Completed: {{date}} Auditor: Audit Workflow (BMAD v6)