Initial commit: BMAD framework + Story 1.1 Component Trait Definition

Features:
- BMAD (Build Modular AI-driven Development) framework setup
- BMM, BMB, CIS, Core modules configured
- Story 1.1: Component trait with error handling
- Workspace Cargo.toml with components crate
- 31 tests passing (19 unit + 12 doc tests)

Technical:
- Component trait with compute_residuals, jacobian_entries, n_equations
- ComponentError enum with thiserror
- JacobianBuilder for sparse matrix construction
- Object-safe trait supporting Box<dyn Component>
- Comprehensive documentation and examples
This commit is contained in:
Sepehr
2026-02-14 13:44:32 +01:00
parent 22dd012a74
commit 1fdfefe631
634 changed files with 70435 additions and 0 deletions

View File

@@ -0,0 +1,137 @@
---
name: 'v-01-load-review'
description: 'Load agent and initialize validation report'
nextStepFile: './v-02a-validate-metadata.md'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
agentMetadata: ../data/agent-metadata.md
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
---
# Validate Step 1: Load Agent for Review
## STEP GOAL:
Load the existing agent file and initialize a validation report to track all findings.
## MANDATORY EXECUTION RULES:
- 📖 CRITICAL: Read the complete step file before taking any action
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Load the complete agent file
- 📊 Create validation report tracking document
- 🚫 FORBIDDEN to proceed without user confirming correct agent
## EXECUTION PROTOCOLS:
- 🎯 Load the complete agent YAML file
- 📊 Parse and display agent summary
- 💾 Create validation report document
- 🚫 FORBIDDEN to proceed without user confirmation
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load Agent File
Read the complete YAML from the agent file path provided by the user.
Check the metadata to determine agent configuration:
- **module**: `stand-alone` or module code (bmm, cis, bmgd, etc.)
- **hasSidecar**: `true` or `false`
### 2. Display Agent Summary
```markdown
## Agent to Validate: {agent-name}
**Configuration:** Agent {WITH|WITHOUT} sidecar
**hasSidecar:** {true|false}
**module:** {module-value}
**File:** {agent-file-path}
### Current Structure:
**Persona:** {character count} characters
**Commands:** {count} commands
**Critical Actions:** {count} actions (if hasSidecar: true)
**Sidecar:** {present|not present}
```
### 3. Create Validation Report
Initialize the validation report:
```markdown
---
agentName: '{agent-name}'
hasSidecar: {true|false}
module: '{module-value}'
agentFile: '{agent-file-path}'
validationDate: '{YYYY-MM-DD}'
stepsCompleted:
- v-01-load-review.md
---
# Validation Report: {agent-name}
## Agent Overview
**Name:** {agent-name}
**hasSidecar:** {true|false}
**module:** {module-value}
**File:** {agent-file-path}
---
## Validation Findings
*This section will be populated by validation steps*
```
Write to `{validationReport}`.
### 4. Present MENU OPTIONS
Display: "**Is this the correct agent to validate and is it identified as the proper configuration?** [A] Advanced Elicitation [P] Party Mode [C] Yes, Begin Validation"
#### Menu Handling Logic:
- IF A: Execute {advancedElicitationTask}, and when finished redisplay the menu
- IF P: Execute {partyModeWorkflow}, and when finished redisplay the menu
- IF C: Save to {validationReport}, then only then load, read entire file, then execute {nextStepFile}
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#4-present-menu-options)
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- ONLY proceed to next step when user selects 'C'
- After other menu items execution, return to this menu
## CRITICAL STEP COMPLETION NOTE
ONLY WHEN [C continue option] is selected and [agent loaded and report created], will you then load and read fully `{nextStepFile}` to execute and begin validation.
---
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
- Agent file loaded successfully
- Validation report created
- User confirmed correct agent
### ❌ SYSTEM FAILURE:
- Failed to load agent file
- Report not created
- Proceeded without user confirmation
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.

View File

@@ -0,0 +1,116 @@
---
name: 'v-02a-validate-metadata'
description: 'Validate metadata and append to report'
nextStepFile: './v-02b-validate-persona.md'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
agentMetadata: ../data/agent-metadata.md
agentFile: '{agent-file-path}'
---
# Validate Step 2a: Validate Metadata
## STEP GOAL
Validate the agent's metadata properties against BMAD standards as defined in agentMetadata.md. Append findings to validation report and auto-advance.
## MANDATORY EXECUTION RULES
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: Read validationReport and agentMetadata first
- 🔄 CRITICAL: Load the actual agent file to validate metadata
- 🚫 NO MENU - append findings and auto-advance
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Validate metadata against agentMetadata.md rules
- 📊 Append findings to validation report
- 🚫 FORBIDDEN to present menu
## EXECUTION PROTOCOLS
- 🎯 Load agentMetadata.md reference
- 🎯 Load the actual agent file for validation
- 📊 Validate all metadata fields
- 💾 Append findings to validation report
- ➡️ Auto-advance to next validation step
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load References
Read `{agentMetadata}`, `{validationReport}`, and `{agentFile}`.
### 2. Validate Metadata
Perform these checks systematically - validate EVERY rule specified in agentMetadata.md:
1. **Required Fields Existence**
- [ ] id: Present and non-empty
- [ ] name: Present and non-empty (display name)
- [ ] title: Present and non-empty
- [ ] icon: Present (emoji or symbol)
- [ ] module: Present and valid format
- [ ] hasSidecar: Present (boolean, if applicable)
2. **Format Validation**
- [ ] id: Uses kebab-case, no spaces, unique identifier
- [ ] name: Clear display name for UI
- [ ] title: Concise functional description
- [ ] icon: Appropriate emoji or unicode symbol
- [ ] module: Either a 3-4 letter module code OR 'stand-alone'
- [ ] hasSidecar: Boolean value, matches actual agent structure
3. **Content Quality**
- [ ] id: Unique and descriptive
- [ ] name: Clear and user-friendly
- [ ] title: Accurately describes agent's function
- [ ] icon: Visually representative of agent's purpose
- [ ] module: Correctly identifies module membership
- [ ] hasSidecar: Correctly indicates if agent uses sidecar files
4. **Agent Type Consistency**
- [ ] If hasSidecar: true, sidecar folder path must be specified
- [ ] If module is a module code, agent is a module agent
- [ ] If module is 'stand-alone', agent is not part of a module
- [ ] No conflicting type indicators
### 3. Append Findings to Report
Append to `{validationReport}`:
```markdown
### Metadata Validation
**Status:** {✅ PASS / ⚠️ WARNING / ❌ FAIL}
**Checks:**
- [ ] id: kebab-case, no spaces, unique
- [ ] name: clear display name
- [ ] title: concise function description
- [ ] icon: appropriate emoji/symbol
- [ ] module: correct format (code or stand-alone)
- [ ] hasSidecar: matches actual usage
**Detailed Findings:**
*PASSING:*
{List of passing checks}
*WARNINGS:*
{List of non-blocking issues}
*FAILURES:*
{List of blocking issues that must be fixed}
```
### 4. Auto-Advance
Load and execute `{nextStepFile}` immediately.
---
**Validating persona...**

View File

@@ -0,0 +1,124 @@
---
name: 'v-02b-validate-persona'
description: 'Validate persona and append to report'
nextStepFile: './v-02c-validate-menu.md'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
personaProperties: ../data/persona-properties.md
principlesCrafting: ../data/principles-crafting.md
agentFile: '{agent-file-path}'
---
# Validate Step 2b: Validate Persona
## STEP GOAL
Validate the agent's persona against BMAD standards as defined in personaProperties.md and principlesCrafting.md. Append findings to validation report and auto-advance.
## MANDATORY EXECUTION RULES
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: Read validationReport and persona references first
- 🔄 CRITICAL: Load the actual agent file to validate persona
- 🚫 NO MENU - append findings and auto-advance
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Validate persona against personaProperties.md rules
- 📊 Append findings to validation report
- 🚫 FORBIDDEN to present menu
## EXECUTION PROTOCOLS
- 🎯 Load personaProperties.md and principlesCrafting.md
- 🎯 Load the actual agent file for validation
- 📊 Validate persona fields
- 💾 Append findings to validation report
- ➡️ Auto-advance to next validation step
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load References
Read `{personaProperties}`, `{principlesCrafting}`, `{validationReport}`, and `{agentFile}`.
### 2. Validate Persona
Perform these checks systematically - validate EVERY rule specified in personaProperties.md:
1. **Required Fields Existence**
- [ ] role: Present, clear, and specific
- [ ] identity: Present and defines who the agent is
- [ ] communication_style: Present and appropriate to role
- [ ] principles: Present as array, not empty (if applicable)
2. **Content Quality - Role**
- [ ] Role is specific (not generic like "assistant")
- [ ] Role aligns with agent's purpose and menu items
- [ ] Role is achievable within LLM capabilities
- [ ] Role scope is appropriate (not too broad/narrow)
3. **Content Quality - Identity**
- [ ] Identity clearly defines the agent's character
- [ ] Identity is consistent with the role
- [ ] Identity provides context for behavior
- [ ] Identity is not generic or cliché
4. **Content Quality - Communication Style**
- [ ] Communication style is clearly defined
- [ ] Style matches the role and target users
- [ ] Style is consistent throughout the definition
- [ ] Style examples or guidance provided if nuanced
- [ ] Style focuses on speech patterns only (not behavior)
5. **Content Quality - Principles**
- [ ] Principles are actionable (not vague platitudes)
- [ ] Principles guide behavior and decisions
- [ ] Principles are consistent with role
- [ ] 3-7 principles recommended (not overwhelming)
- [ ] Each principle is clear and specific
- [ ] First principle activates domain knowledge
6. **Consistency Checks**
- [ ] Role, identity, communication_style, principles all align
- [ ] No contradictions between principles
- [ ] Persona supports the menu items defined
- [ ] Language and terminology consistent
### 3. Append Findings to Report
Append to `{validationReport}`:
```markdown
### Persona Validation
**Status:** {✅ PASS / ⚠️ WARNING / ❌ FAIL}
**Checks:**
- [ ] role: specific, not generic
- [ ] identity: defines who agent is
- [ ] communication_style: speech patterns only
- [ ] principles: first principle activates domain knowledge
**Detailed Findings:**
*PASSING:*
{List of passing checks}
*WARNINGS:*
{List of non-blocking issues}
*FAILURES:*
{List of blocking issues that must be fixed}
```
### 4. Auto-Advance
Load and execute `{nextStepFile}` immediately.
---
**Validating menu structure...**

View File

@@ -0,0 +1,127 @@
---
name: 'v-02c-validate-menu'
description: 'Validate menu structure and append to report'
nextStepFile: './v-02d-validate-structure.md'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
agentMenuPatterns: ../data/agent-menu-patterns.md
agentFile: '{agent-file-path}'
---
# Validate Step 2c: Validate Menu
## STEP GOAL
Validate the agent's command menu structure against BMAD standards as defined in agentMenuPatterns.md. Append findings to validation report and auto-advance.
## MANDATORY EXECUTION RULES
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: Read validationReport and agentMenuPatterns first
- 🔄 CRITICAL: Load the actual agent file to validate menu
- 🚫 NO MENU - append findings and auto-advance
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Validate menu against agentMenuPatterns.md rules
- 📊 Append findings to validation report
- 🚫 FORBIDDEN to present menu
## EXECUTION PROTOCOLS
- 🎯 Load agentMenuPatterns.md reference
- 🎯 Load the actual agent file for validation
- 📊 Validate commands and menu
- 💾 Append findings to validation report
- ➡️ Auto-advance to next validation step
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load References
Read `{agentMenuPatterns}`, `{validationReport}`, and `{agentFile}`.
### 2. Validate Menu
Perform these checks systematically - validate EVERY rule specified in agentMenuPatterns.md:
1. **Menu Structure**
- [ ] Menu section exists and is properly formatted
- [ ] At least one menu item defined (unless intentionally tool-less)
- [ ] Menu items follow proper YAML structure
- [ ] Each item has required fields (trigger, description, action)
2. **Menu Item Requirements**
For each menu item:
- [ ] trigger: Present, follows `XX or fuzzy match on command` format
- [ ] description: Clear and concise, starts with `[XX]` code
- [ ] action: Prompt reference (#id) or inline instruction
3. **Trigger Format Validation**
- [ ] Format: `XX or fuzzy match on command-name` (XX = 2-letter code)
- [ ] Codes are unique within agent
- [ ] No reserved codes used: MH, CH, PM, DA
4. **Description Format Validation**
- [ ] Descriptions start with `[XX]` code
- [ ] Code in description matches trigger code
- [ ] Descriptions are clear and descriptive
5. **Action Handler Validation**
- [ ] If `action: '#prompt-id'`, corresponding prompt exists
- [ ] If `action: 'inline text'`, instruction is complete and clear
6. **Alignment Checks**
- [ ] Menu items align with agent's role/purpose
- [ ] Menu items are appropriate for target users
- [ ] Menu scope is appropriate (not too sparse/overloaded)
7. **Configuration Specific Menu Handler Validation**
- [ ] Determine hasSidecar from metadata
- [ ] For hasSidecar: true:
- [ ] Menu handlers MAY reference sidecar files using correct path format
- [ ] Sidecar references use: `{project-root}/_bmad/_memory/{sidecar-folder}/...`
- [ ] For hasSidecar: false:
- [ ] Menu handlers MUST NOT have sidecar file links
- [ ] Menu handlers use only internal references (#) or inline prompts
### 3. Append Findings to Report
Append to `{validationReport}`:
```markdown
### Menu Validation
**Status:** {✅ PASS / ⚠️ WARNING / ❌ FAIL}
**hasSidecar:** {true|false}
**Checks:**
- [ ] Triggers follow `XX or fuzzy match on command` format
- [ ] Descriptions start with `[XX]` code
- [ ] No reserved codes (MH, CH, PM, DA)
- [ ] Action handlers valid (#prompt-id or inline)
- [ ] Configuration appropriate menu links
**Detailed Findings:**
*PASSING:*
{List of passing checks}
*WARNINGS:*
{List of non-blocking issues}
*FAILURES:*
{List of blocking issues that must be fixed}
```
### 4. Auto-Advance
Load and execute `{nextStepFile}` immediately.
---
**Validating YAML structure...**

View File

@@ -0,0 +1,134 @@
---
name: 'v-02d-validate-structure'
description: 'Validate YAML structure and append to report'
nextStepFile: './v-02e-validate-sidecar.md'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
agentValidation: ../data/agent-validation.md
agentCompilation: ../data/agent-compilation.md
agentFile: '{agent-file-path}'
---
# Validate Step 2d: Validate Structure
## STEP GOAL
Validate the agent's YAML structure and completeness against BMAD standards as defined in agentCompilation.md. Append findings to validation report and auto-advance.
## MANDATORY EXECUTION RULES
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: Read validationReport and agentCompilation first
- 🔄 CRITICAL: Load the actual agent file to validate structure
- 🚫 NO MENU - append findings and auto-advance
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Validate structure against agentCompilation.md rules
- 📊 Append findings to validation report
- 🚫 FORBIDDEN to present menu
## EXECUTION PROTOCOLS
- 🎯 Load agentCompilation.md reference
- 🎯 Load the actual agent file for validation
- 📊 Validate YAML structure
- 💾 Append findings to validation report
- ➡️ Auto-advance to next validation step
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load References
Read `{agentCompilation}`, `{agentValidation}`, `{validationReport}`, and `{agentFile}`.
### 2. Validate Structure
Perform these checks systematically - validate EVERY rule specified in agentCompilation.md:
#### A. YAML Syntax Validation
- [ ] Parse YAML without errors
- [ ] Check indentation consistency (2-space standard)
- [ ] Validate proper escaping of special characters
- [ ] Verify no duplicate keys in any section
#### B. Frontmatter Validation
- [ ] All required fields present (name, description, version, etc.)
- [ ] Field values are correct type (string, boolean, array)
- [ ] No empty required fields
- [ ] Proper array formatting with dashes
- [ ] Boolean fields are actual booleans (not strings)
#### C. Section Completeness
- [ ] All required sections present based on hasSidecar value
- [ ] Sections not empty unless explicitly optional
- [ ] Proper markdown heading hierarchy (##, ###)
- [ ] No orphaned content without section headers
#### D. Field-Level Validation
- [ ] Path references exist and are valid
- [ ] Array fields properly formatted
- [ ] No malformed YAML structures
- [ ] File references use correct path format
#### E. Agent Configuration Specific Checks
**For Agents WITHOUT Sidecar (hasSidecar is false):**
- [ ] No sidecar requirements
- [ ] No sidecar-folder path in metadata
- [ ] If critical_actions present, no sidecar file references
- [ ] Menu handlers use only internal references (#) or inline prompts
- [ ] Total size under ~250 lines (unless justified)
**For Agents WITH Sidecar (hasSidecar is true):**
- [ ] hasSidecar flag set correctly in metadata
- [ ] Sidecar folder path specified in metadata
- [ ] critical_actions section present with minimum requirements:
- [ ] Loads sidecar memories
- [ ] Loads sidecar instructions
- [ ] Restricts file access to sidecar folder
- [ ] All critical_actions reference correct `{project-root}/_bmad/_memory/` paths
- [ ] Menu handlers that update sidecar use correct path format
### 3. Append Findings to Report
Append to `{validationReport}`:
```markdown
### Structure Validation
**Status:** {✅ PASS / ⚠️ WARNING / ❌ FAIL}
**Configuration:** Agent {WITH|WITHOUT} sidecar
**hasSidecar:** {true|false}
**Checks:**
- [ ] Valid YAML syntax
- [ ] Required fields present (name, description, persona, menu)
- [ ] Field types correct (arrays, strings, booleans)
- [ ] Consistent 2-space indentation
- [ ] Configuration appropriate structure
**Detailed Findings:**
*PASSING:*
{List of passing checks}
*WARNINGS:*
{List of non-blocking issues}
*FAILURES:*
{List of blocking issues that must be fixed}
```
### 4. Auto-Advance
Load and execute `{nextStepFile}` immediately.
---
**Validating sidecar structure...**

View File

@@ -0,0 +1,134 @@
---
name: 'v-02e-validate-sidecar'
description: 'Validate sidecar structure and append to report'
nextStepFile: './v-03-summary.md'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
agentValidation: ../data/agent-validation.md
criticalActions: ../data/critical-actions.md
agentFile: '{agent-file-path}'
sidecarFolder: '{agent-sidecar-folder}'
---
# Validate Step 2e: Validate Sidecar
## STEP GOAL
Validate the agent's sidecar structure (if hasSidecar: true) against BMAD standards as defined in agentValidation.md. Append findings to validation report and auto-advance.
## MANDATORY EXECUTION RULES
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: Read validationReport and agentValidation first
- 🔄 CRITICAL: Load the actual agent file to check for sidecar
- 🚫 NO MENU - append findings and auto-advance
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Validate sidecar against agentValidation.md rules (for agents with sidecar)
- 📊 Append findings to validation report
- 🚫 FORBIDDEN to present menu
## EXECUTION PROTOCOLS
- 🎯 Load agentValidation.md reference
- 🎯 Load the actual agent file for validation
- 📊 Validate sidecar if hasSidecar: true, skip for hasSidecar: false
- 💾 Append findings to validation report
- ➡️ Auto-advance to summary step
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load References
Read `{agentValidation}`, `{criticalActions}`, `{validationReport}`, and `{agentFile}`.
### 2. Conditional Validation
**IF hasSidecar = true:**
Perform these checks systematically - validate EVERY rule specified in agentValidation.md:
#### A. Sidecar Folder Validation
- [ ] Sidecar folder exists at specified path
- [ ] Sidecar folder is accessible and readable
- [ ] Sidecar folder path in metadata matches actual location
- [ ] Folder naming follows convention: `{agent-name}-sidecar`
#### B. Sidecar File Inventory
- [ ] List all files in sidecar folder
- [ ] Verify expected files are present (memories.md, instructions.md recommended)
- [ ] Check for unexpected files
- [ ] Validate file names follow conventions
#### C. Path Reference Validation
For each sidecar path reference in agent YAML:
- [ ] Extract path from YAML reference
- [ ] Verify path format is correct: `{project-root}/_bmad/_memory/{sidecar-folder}/...`
- [ ] `{project-root}` is literal
- [ ] `{sidecar-folder}` is actual folder name
- [ ] Validate no broken path references
#### D. Critical Actions Validation (MANDATORY for hasSidecar: true)
- [ ] critical_actions section exists in agent YAML
- [ ] Contains at minimum 3 actions
- [ ] Loads sidecar memories: `{project-root}/_bmad/_memory/{sidecar-folder}/memories.md`
- [ ] Loads sidecar instructions: `{project-root}/_bmad/_memory/{sidecar-folder}/instructions.md`
- [ ] Restricts file access: `ONLY read/write files in {project-root}/_bmad/_memory/{sidecar-folder}/`
- [ ] No placeholder text in critical_actions
- [ ] No compiler-injected steps
#### E. Sidecar Structure Completeness
- [ ] All referenced sidecar files present
- [ ] No orphaned references (files referenced but not present)
- [ ] No unreferenced files (files present but not referenced)
- [ ] File structure matches agent requirements
**IF hasSidecar = false:**
- [ ] Mark sidecar validation as N/A
- [ ] Confirm no sidecar-folder path in metadata
- [ ] Confirm no sidecar references in critical_actions (if present)
- [ ] Confirm no sidecar references in menu handlers
### 3. Append Findings to Report
Append to `{validationReport}`:
```markdown
### Sidecar Validation
**Status:** {✅ PASS / ⚠️ WARNING / ❌ FAIL / N/A}
**hasSidecar:** {true|false}
**Checks:**
- [ ] metadata.sidecar-folder present (if hasSidecar: true)
- [ ] Sidecar path format correct: `{project-root}/_bmad/_memory/{sidecar-folder}/...`
- [ ] Sidecar files exist at specified path (if hasSidecar: true)
- [ ] All referenced files present
- [ ] No broken path references
**Detailed Findings:**
*PASSING (for agents WITH sidecar):*
{List of passing checks}
*WARNINGS:*
{List of non-blocking issues}
*FAILURES:*
{List of blocking issues that must be fixed}
*N/A (for agents WITHOUT sidecar):*
N/A - Agent has hasSidecar: false, no sidecar required
```
### 4. Auto-Advance
Load and execute `{nextStepFile}` immediately.
---
**Compiling validation summary...**

View File

@@ -0,0 +1,104 @@
---
name: 'v-03-summary'
description: 'Display complete validation report and offer next steps'
validationReport: '{bmb_creations_output_folder}/validation-report-{agent-name}.md'
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
---
# Validate Step 3: Validation Summary
## STEP GOAL:
Display the complete validation report to the user and offer options for fixing issues or improving the agent.
## MANDATORY EXECUTION RULES:
- 📖 CRITICAL: Read the complete step file before taking any action
- 🔄 CRITICAL: Read validationReport to display findings
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
### Step-Specific Rules:
- 🎯 Display complete validation report clearly
- 📊 Offer options for fixing issues
- 💬 Present next step choices
## EXECUTION PROTOCOLS:
- 🎯 Read validation report to collect all findings
- 📊 Display organized summary
- 💾 Allow user to decide next steps
## MANDATORY SEQUENCE
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
### 1. Load Validation Report
Read `{validationReport}` to collect all validation findings.
### 2. Display Complete Report
```markdown
## Validation Complete: {agent-name}
### Overall Status
{Summary table: Metadata | Persona | Menu | Structure | Sidecar}
### Detailed Findings
{Display all sections from the validation report}
```
### 3. Present Next Steps
"What would you like to do?
**[E]dit Agent** - Launch edit workflow to fix issues or make improvements
**[F]ix in Place** - Confirm which fixes you would like right now and we can fix without loading the full agent edit workflow
**[S]ave Report** - Save this validation report and exit
**[R]etry** - Run validation again (if you've made external changes)"
### 4. Present MENU OPTIONS
Display: "**Select an Option:** [A] Advanced Elicitation [P] Party Mode [E] Edit Agent [S] Save & Exit [R] Retry Validation"
#### Menu Handling Logic:
- IF A: Execute {advancedElicitationTask}, and when finished redisplay the menu
- IF P: Execute {partyModeWorkflow}, and when finished redisplay the menu
- IF E: Inform user they can launch edit workflow with the same agent file, then redisplay menu
- IF F; Attempt to make users desired fixes without loading the full edit workflow
- IF S: Save final report to {validationReport} and end workflow
- IF R: Restart validation from step v-01
- IF Any other comments or queries: help user respond then [Redisplay Menu Options](#4-present-menu-options)
#### EXECUTION RULES:
- ALWAYS halt and wait for user input after presenting menu
- User can chat or ask questions - always respond and then end with display again of the menu options
## CRITICAL STEP COMPLETION NOTE
The validation workflow is complete when user selects [S] to save the report, or [E] to proceed to edit workflow.
---
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
### ✅ SUCCESS:
- Complete validation report displayed
- All findings clearly organized
- User offered clear next steps
### ❌ SYSTEM FAILURE:
- Findings not displayed to user
- No clear next steps offered
**Master Rule:** Skipping steps, optimizing sequences, or not following exact instructions is FORBIDDEN and constitutes SYSTEM FAILURE.