Initial commit of the L'Ami Fiduciaire SaaS platform built on Laravel 12, Vue 3, Inertia.js 2, and Tailwind CSS 4. Story 0.1 (rename folders to declarations in database) is implemented and code-reviewed: migration, rollback, and 6 Pest tests all passing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
128 lines
4.0 KiB
Markdown
128 lines
4.0 KiB
Markdown
---
|
|
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...**
|