6.7 KiB
6.7 KiB
Build Module Validation Checklist
Module Identity and Metadata
Basic Information
- Module code follows kebab-case convention (e.g., "rpg-toolkit")
- Module name is descriptive and title-cased
- Module purpose is clearly defined (1-2 sentences)
- Target audience is identified
- Version number follows semantic versioning (e.g., "1.0.0")
- Author information is present
Naming Consistency
- Module code used consistently throughout all files
- No naming conflicts with existing modules
- All paths use consistent module code references
Directory Structure
Source Directories (bmad/{module-code}/)
/agentsdirectory created (even if empty)/workflowsdirectory created (even if empty)/tasksdirectory exists (if tasks planned)/templatesdirectory exists (if templates used)/datadirectory exists (if data files needed)/_module-installer/install-config.yamlpresent (defines configuration questions)README.mdpresent with documentation
Installed Module Structure (generated in target after installation)
/agentsdirectory for compiled agents/workflowsdirectory for workflow instances/datadirectory for user dataconfig.yamlgenerated from install-config.yaml during installation
Component Planning
Agents
- At least one agent defined or planned
- Agent purposes are distinct and clear
- Agent types (Simple/Expert/Module) identified
- No significant overlap between agents
- Primary agent is identified
Workflows
- At least one workflow defined or planned
- Workflow purposes are clear
- Workflow types identified (Document/Action/Interactive)
- Primary workflow is identified
- Workflow complexity is appropriate
Tasks (if applicable)
- Tasks have single, clear purposes
- Tasks don't duplicate workflow functionality
- Task files follow naming conventions
Configuration Files
Installation Configuration (install-config.yaml)
install-config.yamlexists in_module-installer- Module metadata present (code, name, version)
- Configuration questions defined for user input
- Default values provided for all questions
- Prompt text is clear and helpful
- Result templates use proper variable substitution
- Paths use proper variables ({project-root}, {value}, etc.)
Generated Config (config.yaml in target)
- Generated during installation from install-config.yaml
- Contains all user-provided configuration values
- Module metadata included
- No config.yaml should exist in source module
Installation Infrastructure
Installer Files
- Install configuration validates against schema
- All source paths exist or are marked as templates
- Destination paths use correct variables
- Optional vs required steps clearly marked
installer.js (if present)
- Main
installModulefunction exists - Error handling implemented
- Console logging for user feedback
- Exports correct function names
- Placeholder code replaced with actual logic (or logged as TODO)
External Assets (if any)
- Asset files exist in assets directory
- Copy destinations are valid
- Permissions requirements documented
Documentation
README.md
- Module overview section present
- Installation instructions included
- Component listing with descriptions
- Quick start guide provided
- Configuration options documented
- At least one usage example
- Directory structure shown
- Author and date information
Component Documentation
- Each agent has purpose documentation
- Each workflow has description
- Tasks are documented (if present)
- Examples demonstrate typical usage
Development Roadmap
- TODO.md or roadmap section exists
- Planned components listed
- Development phases identified
- Quick commands for adding components
Integration
Cross-component References
- Agents reference correct workflow paths
- Workflows reference correct task paths
- All internal paths use module variables
- External dependencies declared
Module Boundaries
- Module scope is well-defined
- No feature creep into other domains
- Clear separation from other modules
Quality Checks
Completeness
- At least one functional component (not all placeholders)
- Core functionality is implementable
- Module provides clear value
Consistency
- Formatting consistent across files
- Variable naming follows conventions
- Communication style appropriate for domain
Scalability
- Structure supports future growth
- Component organization is logical
- No hard-coded limits
Testing and Validation
Structural Validation
- YAML files parse without errors
- JSON files (if any) are valid
- XML files (if any) are well-formed
- No syntax errors in JavaScript files
Path Validation
- All referenced paths exist or are clearly marked as TODO
- Variable substitutions are correct
- No absolute paths (unless intentional)
Installation Testing
- Installation steps can be simulated
- No circular dependencies
- Uninstall process defined (if complex)
Final Checks
Ready for Use
- Module can be installed without errors
- At least one component is functional
- User can understand how to get started
- Next steps are clear
Professional Quality
- No placeholder text remains (unless marked TODO)
- No obvious typos or grammar issues
- Professional tone throughout
- Contact/support information provided
Issues Found
Critical Issues
Warnings
Improvements
Missing Components
Module Complexity Assessment
Complexity Rating
- Simple (1-2 agents, 2-3 workflows)
- Standard (3-5 agents, 5-10 workflows)
- Complex (5+ agents, 10+ workflows)
Readiness Level
- Prototype (Basic structure, mostly placeholders)
- Alpha (Core functionality works)
- Beta (Most features complete, needs testing)
- Release (Full functionality, documented)
Sign-off
Module Name: ******__****** Module Code: ******__****** Version: ******__****** Validated By: ******__****** Date: ******__****** Status: ⬜ Pass / ⬜ Pass with Issues / ⬜ Fail