fix: ChatBubble crash and DeepSeek API compatibility
- Fix ChatBubble to handle non-string content with String() wrapper - Fix API route to use generateText for non-streaming requests - Add @ai-sdk/openai-compatible for non-OpenAI providers (DeepSeek, etc.) - Use Chat Completions API instead of Responses API for compatible providers - Update ChatBubble tests and fix component exports to kebab-case - Remove stale PascalCase ChatBubble.tsx file
This commit is contained in:
136
_bmad/bmb/workflows/agent/steps-v/v-02e-validate-sidecar.md
Normal file
136
_bmad/bmb/workflows/agent/steps-v/v-02e-validate-sidecar.md
Normal file
@@ -0,0 +1,136 @@
|
||||
---
|
||||
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'
|
||||
expertValidation: ../data/expert-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 Expert type) against BMAD standards as defined in expertValidation.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 expertValidation 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 expertValidation.md rules (for Expert agents)
|
||||
- 📊 Append findings to validation report
|
||||
- 🚫 FORBIDDEN to present menu
|
||||
|
||||
## EXECUTION PROTOCOLS
|
||||
|
||||
- 🎯 Load expertValidation.md reference
|
||||
- 🎯 Load the actual agent file for validation
|
||||
- 📊 Validate sidecar if Expert type, skip for Simple/Module
|
||||
- 💾 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 `{expertValidation}`, `{criticalActions}`, `{validationReport}`, and `{agentFile}`.
|
||||
|
||||
### 2. Conditional Validation
|
||||
|
||||
**IF (module = "stand-alone" AND hasSidecar = true) OR (module ≠ "stand-alone" AND hasSidecar = true):**
|
||||
Perform these checks systematically - validate EVERY rule specified in expertValidation.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
|
||||
- [ ] 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 file exists at referenced path
|
||||
- [ ] Check path format is correct (relative/absolute as expected)
|
||||
- [ ] Validate no broken path references
|
||||
|
||||
#### D. Critical Actions File Validation (if present)
|
||||
- [ ] critical-actions.md file exists
|
||||
- [ ] File has proper frontmatter
|
||||
- [ ] Actions section is present and not empty
|
||||
- [ ] No critical sections missing
|
||||
- [ ] File content is complete (not just placeholder)
|
||||
|
||||
#### E. Module Files Validation (if present)
|
||||
- [ ] Module files exist at referenced paths
|
||||
- [ ] Each module file has proper frontmatter
|
||||
- [ ] Module file content is complete
|
||||
- [ ] No empty or placeholder module files
|
||||
|
||||
#### F. 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 expert agent requirements
|
||||
|
||||
**IF (module = "stand-alone" AND hasSidecar = false):**
|
||||
- [ ] Mark sidecar validation as N/A
|
||||
- [ ] Confirm no sidecar-folder path in metadata
|
||||
- [ ] Confirm no sidecar references in menu handlers
|
||||
|
||||
### 3. Append Findings to Report
|
||||
|
||||
Append to `{validationReport}`:
|
||||
|
||||
```markdown
|
||||
### Sidecar Validation
|
||||
|
||||
**Status:** {✅ PASS / ⚠️ WARNING / ❌ FAIL / N/A}
|
||||
|
||||
**Agent Type:** {simple|expert|module with sidecar}
|
||||
|
||||
**Checks:**
|
||||
- [ ] metadata.sidecar-folder present (Expert only)
|
||||
- [ ] sidecar-path format correct
|
||||
- [ ] Sidecar files exist at specified path
|
||||
- [ ] All referenced files present
|
||||
- [ ] No broken path references
|
||||
|
||||
**Detailed Findings:**
|
||||
|
||||
*PASSING (for Expert agents):*
|
||||
{List of passing checks}
|
||||
|
||||
*WARNINGS:*
|
||||
{List of non-blocking issues}
|
||||
|
||||
*FAILURES:*
|
||||
{List of blocking issues that must be fixed}
|
||||
|
||||
*N/A (for Simple agents):*
|
||||
N/A - Agent is Simple type (module = "stand-alone" + hasSidecar: false, no sidecar required)
|
||||
```
|
||||
|
||||
### 4. Auto-Advance
|
||||
|
||||
Load and execute `{nextStepFile}` immediately.
|
||||
|
||||
---
|
||||
|
||||
**Compiling validation summary...**
|
||||
Reference in New Issue
Block a user