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:
@@ -0,0 +1,247 @@
|
||||
---
|
||||
name: 'step-e-01-discovery'
|
||||
description: 'Discovery & Understanding - Understand what user wants to edit and detect PRD format'
|
||||
|
||||
# File references (ONLY variables used in this step)
|
||||
altStepFile: './step-e-01b-legacy-conversion.md'
|
||||
prdPurpose: '{project-root}/src/modules/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md'
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
partyModeWorkflow: '{project-root}/_bmad/core/workflows/party-mode/workflow.md'
|
||||
---
|
||||
|
||||
# Step E-1: Discovery & Understanding
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Understand what the user wants to edit in the PRD, detect PRD format/type, check for validation report guidance, and route appropriately.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- 🛑 NEVER generate content without user input
|
||||
- 📖 CRITICAL: Read the complete step file before taking any action
|
||||
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- ✅ You are a Validation Architect and PRD Improvement Specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring analytical expertise and improvement guidance
|
||||
- ✅ User brings domain knowledge and edit requirements
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on discovering user intent and PRD format
|
||||
- 🚫 FORBIDDEN to make any edits yet
|
||||
- 💬 Approach: Inquisitive and analytical, understanding before acting
|
||||
- 🚪 This is a branch step - may route to legacy conversion
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Discover user's edit requirements
|
||||
- 🎯 Auto-detect validation reports in PRD folder (use as guide)
|
||||
- 🎯 Load validation report if provided (use as guide)
|
||||
- 🎯 Detect PRD format (BMAD/legacy)
|
||||
- 🎯 Route appropriately based on format
|
||||
- 💾 Document discoveries for next step
|
||||
- 🚫 FORBIDDEN to proceed without understanding requirements
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Available context: PRD file to edit, optional validation report, auto-detected validation reports
|
||||
- Focus: User intent discovery and format detection only
|
||||
- Limits: Don't edit yet, don't validate yet
|
||||
- Dependencies: None - this is first edit step
|
||||
|
||||
## MANDATORY SEQUENCE
|
||||
|
||||
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
|
||||
|
||||
### 1. Load PRD Purpose Standards
|
||||
|
||||
Load and read the complete file at:
|
||||
`{prdPurpose}` (data/prd-purpose.md)
|
||||
|
||||
This file defines what makes a great BMAD PRD. Internalize this understanding - it will guide improvement recommendations.
|
||||
|
||||
### 2. Discover PRD to Edit
|
||||
|
||||
"**PRD Edit Workflow**
|
||||
|
||||
Which PRD would you like to edit?
|
||||
|
||||
Please provide the path to the PRD file you want to edit."
|
||||
|
||||
**Wait for user to provide PRD path.**
|
||||
|
||||
### 3. Validate PRD Exists and Load
|
||||
|
||||
Once PRD path is provided:
|
||||
- Check if PRD file exists at specified path
|
||||
- If not found: "I cannot find a PRD at that path. Please check the path and try again."
|
||||
- If found: Load the complete PRD file including frontmatter
|
||||
|
||||
### 4. Check for Existing Validation Report
|
||||
|
||||
**Check if validation report exists in the PRD folder:**
|
||||
|
||||
```bash
|
||||
# Look for most recent validation report in the PRD folder
|
||||
ls -t {prd_folder_path}/validation-report-*.md 2>/dev/null | head -1
|
||||
```
|
||||
|
||||
**If validation report found:**
|
||||
|
||||
Display:
|
||||
"**📋 Found Validation Report**
|
||||
|
||||
I found a validation report from {validation_date} in the PRD folder.
|
||||
|
||||
This report contains findings from previous validation checks and can help guide our edits to fix known issues.
|
||||
|
||||
**Would you like to:**
|
||||
- **[U] Use validation report** - Load it to guide and prioritize edits
|
||||
- **[S] Skip** - Proceed with manual edit discovery"
|
||||
|
||||
**Wait for user input.**
|
||||
|
||||
**IF U (Use validation report):**
|
||||
- Load the validation report file
|
||||
- Extract findings, issues, and improvement suggestions
|
||||
- Note: "Validation report loaded - will use it to guide prioritized improvements"
|
||||
- Continue to step 5
|
||||
|
||||
**IF S (Skip) or no validation report found:**
|
||||
- Note: "Proceeding with manual edit discovery"
|
||||
- Continue to step 5
|
||||
|
||||
**If no validation report found:**
|
||||
- Note: "No validation report found in PRD folder"
|
||||
- Continue to step 5 without asking user
|
||||
|
||||
### 5. Ask About Validation Report
|
||||
|
||||
"**Do you have a validation report to guide edits?**
|
||||
|
||||
If you've run the validation workflow on this PRD, I can use that report to guide improvements and prioritize changes.
|
||||
|
||||
Validation report path (or type 'none'):"
|
||||
|
||||
**Wait for user input.**
|
||||
|
||||
**If validation report path provided:**
|
||||
- Load the validation report
|
||||
- Extract findings, severity, improvement suggestions
|
||||
- Note: "Validation report loaded - will use it to guide prioritized improvements"
|
||||
|
||||
**If no validation report:**
|
||||
- Note: "Proceeding with manual edit discovery"
|
||||
- Continue to step 6
|
||||
|
||||
### 6. Discover Edit Requirements
|
||||
|
||||
"**What would you like to edit in this PRD?**
|
||||
|
||||
Please describe the changes you want to make. For example:
|
||||
- Fix specific issues (information density, implementation leakage, etc.)
|
||||
- Add missing sections or content
|
||||
- Improve structure and flow
|
||||
- Convert to BMAD format (if legacy PRD)
|
||||
- General improvements
|
||||
- Other changes
|
||||
|
||||
**Describe your edit goals:**"
|
||||
|
||||
**Wait for user to describe their requirements.**
|
||||
|
||||
### 7. Detect PRD Format
|
||||
|
||||
Analyze the loaded PRD:
|
||||
|
||||
**Extract all ## Level 2 headers** from PRD
|
||||
|
||||
**Check for BMAD PRD core sections:**
|
||||
1. Executive Summary
|
||||
2. Success Criteria
|
||||
3. Product Scope
|
||||
4. User Journeys
|
||||
5. Functional Requirements
|
||||
6. Non-Functional Requirements
|
||||
|
||||
**Classify format:**
|
||||
- **BMAD Standard:** 5-6 core sections present
|
||||
- **BMAD Variant:** 3-4 core sections present, generally follows BMAD patterns
|
||||
- **Legacy (Non-Standard):** Fewer than 3 core sections, does not follow BMAD structure
|
||||
|
||||
### 8. Route Based on Format and Context
|
||||
|
||||
**IF validation report provided OR PRD is BMAD Standard/Variant:**
|
||||
|
||||
Display: "**Edit Requirements Understood**
|
||||
|
||||
**PRD Format:** {classification}
|
||||
{If validation report: "**Validation Guide:** Yes - will use validation report findings"}
|
||||
**Edit Goals:** {summary of user's requirements}
|
||||
|
||||
**Proceeding to deep review and analysis...**"
|
||||
|
||||
Load and execute next step (step-e-02-review.md)
|
||||
|
||||
**IF PRD is Legacy (Non-Standard) AND no validation report:**
|
||||
|
||||
Display: "**Format Detected:** Legacy PRD
|
||||
|
||||
This PRD does not follow BMAD standard structure (only {count}/6 core sections present).
|
||||
|
||||
**Your edit goals:** {user's requirements}
|
||||
|
||||
**How would you like to proceed?**"
|
||||
|
||||
Present MENU OPTIONS below for user selection
|
||||
|
||||
### 9. Present MENU OPTIONS (Legacy PRDs Only)
|
||||
|
||||
**[C] Convert to BMAD Format** - Convert PRD to BMAD standard structure, then apply your edits
|
||||
**[E] Edit As-Is** - Apply your edits without converting the format
|
||||
**[X] Exit** - Exit and review conversion options
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input
|
||||
- Only proceed based on user selection
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF C (Convert): Load, read entire file, then execute {altStepFile} (step-e-01b-legacy-conversion.md)
|
||||
- IF E (Edit As-Is): Display "Proceeding with edits..." then load next step
|
||||
- IF X (Exit): Display summary and exit
|
||||
- IF Any other: help user, then redisplay menu
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- User's edit requirements clearly understood
|
||||
- Auto-detected validation reports loaded and analyzed (when found)
|
||||
- Manual validation report loaded and analyzed (if provided)
|
||||
- PRD format detected correctly
|
||||
- BMAD PRDs proceed directly to review step
|
||||
- Legacy PRDs pause and present conversion options
|
||||
- User can choose conversion path or edit as-is
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Not discovering user's edit requirements
|
||||
- Not auto-detecting validation reports in PRD folder
|
||||
- Not loading validation report when provided (auto or manual)
|
||||
- Missing format detection
|
||||
- Not pausing for legacy PRDs without guidance
|
||||
- Auto-proceeding without understanding intent
|
||||
|
||||
**Master Rule:** Understand before editing. Detect format early so we can guide users appropriately. Auto-detect and use validation reports for prioritized improvements.
|
||||
@@ -0,0 +1,208 @@
|
||||
---
|
||||
name: 'step-e-01b-legacy-conversion'
|
||||
description: 'Legacy PRD Conversion Assessment - Analyze legacy PRD and propose conversion strategy'
|
||||
|
||||
# File references (ONLY variables used in this step)
|
||||
nextStepFile: './step-e-02-review.md'
|
||||
prdFile: '{prd_file_path}'
|
||||
prdPurpose: '{project-root}/src/modules/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md'
|
||||
---
|
||||
|
||||
# Step E-1B: Legacy PRD Conversion Assessment
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Analyze legacy PRD against BMAD standards, identify gaps, propose conversion strategy, and let user choose how to proceed.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- 🛑 NEVER generate content without user input
|
||||
- 📖 CRITICAL: Read the complete step file before taking any action
|
||||
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- ✅ You are a Validation Architect and PRD Improvement Specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring BMAD standards expertise and conversion guidance
|
||||
- ✅ User brings domain knowledge and edit requirements
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on conversion assessment and proposal
|
||||
- 🚫 FORBIDDEN to perform conversion yet (that comes in edit step)
|
||||
- 💬 Approach: Analytical gap analysis with clear recommendations
|
||||
- 🚪 This is a branch step - user chooses conversion path
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Analyze legacy PRD against BMAD standard
|
||||
- 💾 Identify gaps and estimate conversion effort
|
||||
- 📖 Present conversion options with effort estimates
|
||||
- 🚫 FORBIDDEN to proceed without user selection
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Available context: Legacy PRD, user's edit requirements, prd-purpose standards
|
||||
- Focus: Conversion assessment only (not actual conversion)
|
||||
- Limits: Don't convert yet, don't validate yet
|
||||
- Dependencies: Step e-01 detected legacy format and routed here
|
||||
|
||||
## MANDATORY SEQUENCE
|
||||
|
||||
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
|
||||
|
||||
### 1. Attempt Sub-Process Assessment
|
||||
|
||||
**Try to use Task tool with sub-agent:**
|
||||
|
||||
"Perform legacy PRD conversion assessment:
|
||||
|
||||
**Load the PRD and prd-purpose.md**
|
||||
|
||||
**For each BMAD PRD section, analyze:**
|
||||
1. Does PRD have this section? (Executive Summary, Success Criteria, Product Scope, User Journeys, Functional Requirements, Non-Functional Requirements)
|
||||
2. If present: Is it complete and well-structured?
|
||||
3. If missing: What content exists that could migrate to this section?
|
||||
4. Effort to create/complete: Minimal / Moderate / Significant
|
||||
|
||||
**Identify:**
|
||||
- Core sections present: {count}/6
|
||||
- Content gaps in each section
|
||||
- Overall conversion effort: Quick / Moderate / Substantial
|
||||
- Recommended approach: Full restructuring vs targeted improvements
|
||||
|
||||
Return conversion assessment with gap analysis and effort estimate."
|
||||
|
||||
**Graceful degradation (if no Task tool):**
|
||||
- Manually check PRD for each BMAD section
|
||||
- Note what's present and what's missing
|
||||
- Estimate conversion effort
|
||||
- Identify best conversion approach
|
||||
|
||||
### 2. Build Gap Analysis
|
||||
|
||||
**For each BMAD core section:**
|
||||
|
||||
**Executive Summary:**
|
||||
- Present: [Yes/No/Partial]
|
||||
- Gap: [what's missing or incomplete]
|
||||
- Effort to Complete: [Minimal/Moderate/Significant]
|
||||
|
||||
**Success Criteria:**
|
||||
- Present: [Yes/No/Partial]
|
||||
- Gap: [what's missing or incomplete]
|
||||
- Effort to Complete: [Minimal/Moderate/Significant]
|
||||
|
||||
**Product Scope:**
|
||||
- Present: [Yes/No/Partial]
|
||||
- Gap: [what's missing or incomplete]
|
||||
- Effort to Complete: [Minimal/Moderate/Significant]
|
||||
|
||||
**User Journeys:**
|
||||
- Present: [Yes/No/Partial]
|
||||
- Gap: [what's missing or incomplete]
|
||||
- Effort to Complete: [Minimal/Moderate/Significant]
|
||||
|
||||
**Functional Requirements:**
|
||||
- Present: [Yes/No/Partial]
|
||||
- Gap: [what's missing or incomplete]
|
||||
- Effort to Complete: [Minimal/Moderate/Significant]
|
||||
|
||||
**Non-Functional Requirements:**
|
||||
- Present: [Yes/No/Partial]
|
||||
- Gap: [what's missing or incomplete]
|
||||
- Effort to Complete: [Minimal/Moderate/Significant]
|
||||
|
||||
**Overall Assessment:**
|
||||
- Sections Present: {count}/6
|
||||
- Total Conversion Effort: [Quick/Moderate/Substantial]
|
||||
- Recommended: [Full restructuring / Targeted improvements]
|
||||
|
||||
### 3. Present Conversion Assessment
|
||||
|
||||
Display:
|
||||
|
||||
"**Legacy PRD Conversion Assessment**
|
||||
|
||||
**Current PRD Structure:**
|
||||
- Core sections present: {count}/6
|
||||
{List which sections are present/missing}
|
||||
|
||||
**Gap Analysis:**
|
||||
|
||||
{Present gap analysis table showing each section's status and effort}
|
||||
|
||||
**Overall Conversion Effort:** {effort level}
|
||||
|
||||
**Your Edit Goals:**
|
||||
{Reiterate user's stated edit requirements}
|
||||
|
||||
**Recommendation:**
|
||||
{Based on effort and user goals, recommend best approach}
|
||||
|
||||
**How would you like to proceed?**"
|
||||
|
||||
### 4. Present MENU OPTIONS
|
||||
|
||||
**[R] Restructure to BMAD** - Full conversion to BMAD format, then apply your edits
|
||||
**[I] Targeted Improvements** - Apply your edits to existing structure without restructuring
|
||||
**[E] Edit & Restructure** - Do both: convert format AND apply your edits
|
||||
**[X] Exit** - Review assessment and decide
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input
|
||||
- Only proceed based on user selection
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF R (Restructure): Note conversion mode, then load next step
|
||||
- IF I (Targeted): Note targeted mode, then load next step
|
||||
- IF E (Edit & Restructure): Note both mode, then load next step
|
||||
- IF X (Exit): Display summary, exit
|
||||
|
||||
### 5. Document Conversion Strategy
|
||||
|
||||
Store conversion decision for next step:
|
||||
|
||||
- **Conversion mode:** [Full restructuring / Targeted improvements / Both]
|
||||
- **Edit requirements:** [user's requirements from step e-01]
|
||||
- **Gap analysis:** [summary of gaps identified]
|
||||
|
||||
Display: "**Conversion Strategy Documented**
|
||||
|
||||
Mode: {conversion mode}
|
||||
Edit goals: {summary}
|
||||
|
||||
**Proceeding to deep review...**"
|
||||
|
||||
Load and execute {nextStepFile} (step-e-02-review.md)
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- All 6 BMAD core sections analyzed for gaps
|
||||
- Effort estimates provided for each section
|
||||
- Overall conversion effort assessed correctly
|
||||
- Clear recommendation provided based on effort and user goals
|
||||
- User chooses conversion strategy (restructure/targeted/both)
|
||||
- Conversion strategy documented for next step
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Not analyzing all 6 core sections
|
||||
- Missing effort estimates
|
||||
- Not providing clear recommendation
|
||||
- Auto-proceeding without user selection
|
||||
- Not documenting conversion strategy
|
||||
|
||||
**Master Rule:** Legacy PRDs need conversion assessment so users understand the work involved and can choose the best approach.
|
||||
@@ -0,0 +1,249 @@
|
||||
---
|
||||
name: 'step-e-02-review'
|
||||
description: 'Deep Review & Analysis - Thoroughly review existing PRD and prepare detailed change plan'
|
||||
|
||||
# File references (ONLY variables used in this step)
|
||||
nextStepFile: './step-e-03-edit.md'
|
||||
prdFile: '{prd_file_path}'
|
||||
validationReport: '{validation_report_path}' # If provided
|
||||
prdPurpose: '{project-root}/src/modules/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md'
|
||||
advancedElicitationTask: '{project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml'
|
||||
---
|
||||
|
||||
# Step E-2: Deep Review & Analysis
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Thoroughly review the existing PRD, analyze validation report findings (if provided), and prepare a detailed change plan before editing.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- 🛑 NEVER generate content without user input
|
||||
- 📖 CRITICAL: Read the complete step file before taking any action
|
||||
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- ✅ You are a Validation Architect and PRD Improvement Specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring analytical expertise and improvement planning
|
||||
- ✅ User brings domain knowledge and approval authority
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on review and analysis, not editing yet
|
||||
- 🚫 FORBIDDEN to make changes to PRD in this step
|
||||
- 💬 Approach: Thorough analysis with user confirmation on plan
|
||||
- 🚪 This is a middle step - user confirms plan before proceeding
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Load and analyze validation report (if provided)
|
||||
- 🎯 Deep review of entire PRD
|
||||
- 🎯 Map validation findings to specific sections
|
||||
- 🎯 Prepare detailed change plan
|
||||
- 💬 Get user confirmation on plan
|
||||
- 🚫 FORBIDDEN to proceed to edit without user approval
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Available context: PRD file, validation report (if provided), user requirements from step e-01
|
||||
- Focus: Analysis and planning only (no editing)
|
||||
- Limits: Don't change PRD yet, don't validate yet
|
||||
- Dependencies: Step e-01 completed - requirements and format known
|
||||
|
||||
## MANDATORY SEQUENCE
|
||||
|
||||
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
|
||||
|
||||
### 1. Attempt Sub-Process Deep Review
|
||||
|
||||
**Try to use Task tool with sub-agent:**
|
||||
|
||||
"Perform deep PRD review and change planning:
|
||||
|
||||
**Context from step e-01:**
|
||||
- User's edit requirements: {user_requirements}
|
||||
- PRD format: {BMAD/legacy}
|
||||
- Validation report provided: {yes/no}
|
||||
- Conversion mode: {restructure/targeted/both} (if legacy)
|
||||
|
||||
**IF validation report provided:**
|
||||
1. Extract all findings from validation report
|
||||
2. Map findings to specific PRD sections
|
||||
3. Prioritize by severity: Critical > Warning > Informational
|
||||
4. For each critical issue: identify specific fix needed
|
||||
5. For user's manual edit goals: identify where in PRD to apply
|
||||
|
||||
**IF no validation report:**
|
||||
1. Read entire PRD thoroughly
|
||||
2. Analyze against BMAD standards (from prd-purpose.md)
|
||||
3. Identify issues in:
|
||||
- Information density (anti-patterns)
|
||||
- Structure and flow
|
||||
- Completeness (missing sections/content)
|
||||
- Measurability (unmeasurable requirements)
|
||||
- Traceability (broken chains)
|
||||
- Implementation leakage
|
||||
4. Map user's edit goals to specific sections
|
||||
|
||||
**Output:**
|
||||
- Section-by-section analysis
|
||||
- Specific changes needed for each section
|
||||
- Prioritized action list
|
||||
- Recommended order for applying changes
|
||||
|
||||
Return detailed change plan with section breakdown."
|
||||
|
||||
**Graceful degradation (if no Task tool):**
|
||||
- Manually read PRD sections
|
||||
- Manually analyze validation report findings (if provided)
|
||||
- Build section-by-section change plan
|
||||
- Prioritize changes by severity/user goals
|
||||
|
||||
### 2. Build Change Plan
|
||||
|
||||
**Organize by PRD section:**
|
||||
|
||||
**For each section (in order):**
|
||||
- **Current State:** Brief description of what exists
|
||||
- **Issues Identified:** [List from validation report or manual analysis]
|
||||
- **Changes Needed:** [Specific changes required]
|
||||
- **Priority:** [Critical/High/Medium/Low]
|
||||
- **User Requirements Met:** [Which user edit goals address this section]
|
||||
|
||||
**Include:**
|
||||
- Sections to add (if missing)
|
||||
- Sections to update (if present but needs work)
|
||||
- Content to remove (if incorrect/leakage)
|
||||
- Structure changes (if reformatting needed)
|
||||
|
||||
### 3. Prepare Change Plan Summary
|
||||
|
||||
**Summary sections:**
|
||||
|
||||
**Changes by Type:**
|
||||
- **Additions:** {count} sections to add
|
||||
- **Updates:** {count} sections to update
|
||||
- **Removals:** {count} items to remove
|
||||
- **Restructuring:** {yes/no} if format conversion needed
|
||||
|
||||
**Priority Distribution:**
|
||||
- **Critical:** {count} changes (must fix)
|
||||
- **High:** {count} changes (important)
|
||||
- **Medium:** {count} changes (nice to have)
|
||||
- **Low:** {count} changes (optional)
|
||||
|
||||
**Estimated Effort:**
|
||||
[Quick/Moderate/Substantial] based on scope and complexity
|
||||
|
||||
### 4. Present Change Plan to User
|
||||
|
||||
Display:
|
||||
|
||||
"**Deep Review Complete - Change Plan**
|
||||
|
||||
**PRD Analysis:**
|
||||
{Brief summary of PRD current state}
|
||||
|
||||
{If validation report provided:}
|
||||
**Validation Findings:**
|
||||
{count} issues identified: {critical} critical, {warning} warnings
|
||||
|
||||
**Your Edit Requirements:**
|
||||
{summary of what user wants to edit}
|
||||
|
||||
**Proposed Change Plan:**
|
||||
|
||||
**By Section:**
|
||||
{Present section-by-section breakdown}
|
||||
|
||||
**By Priority:**
|
||||
- Critical: {count} items
|
||||
- High: {count} items
|
||||
- Medium: {count} items
|
||||
|
||||
**Estimated Effort:** {effort level}
|
||||
|
||||
**Questions:**
|
||||
1. Does this change plan align with what you had in mind?
|
||||
2. Any sections I should add/remove/reprioritize?
|
||||
3. Any concerns before I proceed with edits?
|
||||
|
||||
**Review the plan and let me know if you'd like any adjustments.**"
|
||||
|
||||
### 5. Get User Confirmation
|
||||
|
||||
Wait for user to review and provide feedback.
|
||||
|
||||
**If user wants adjustments:**
|
||||
- Discuss requested changes
|
||||
- Revise change plan accordingly
|
||||
- Represent for confirmation
|
||||
|
||||
**If user approves:**
|
||||
- Note: "Change plan approved. Proceeding to edit step."
|
||||
- Continue to step 6
|
||||
|
||||
### 6. Document Approved Plan
|
||||
|
||||
Store approved change plan for next step:
|
||||
|
||||
- **Approved changes:** Section-by-section list
|
||||
- **Priority order:** Sequence to apply changes
|
||||
- **User confirmed:** Yes
|
||||
|
||||
Display: "**Change Plan Approved**
|
||||
|
||||
{Brief summary of approved plan}
|
||||
|
||||
**Proceeding to edit step...**"
|
||||
|
||||
Load and execute {nextStepFile} (step-e-03-edit.md)
|
||||
|
||||
### 7. Present MENU OPTIONS (If User Wants Discussion)
|
||||
|
||||
**[A] Advanced Elicitation** - Get additional perspectives on change plan
|
||||
**[P] Party Mode** - Discuss with team for more ideas
|
||||
**[C] Continue to Edit** - Proceed with approved plan
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input
|
||||
- Only proceed to edit when user selects 'C'
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF A: Execute {advancedElicitationTask}, then return to discussion
|
||||
- IF P: Execute {partyModeWorkflow}, then return to discussion
|
||||
- IF C: Document approval, then load {nextStepFile}
|
||||
- IF Any other: discuss, then redisplay menu
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- Validation report findings fully analyzed (if provided)
|
||||
- Deep PRD review completed systematically
|
||||
- Change plan built section-by-section
|
||||
- Changes prioritized by severity/user goals
|
||||
- User presented with clear plan
|
||||
- User confirms or adjusts plan
|
||||
- Approved plan documented for next step
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Not analyzing validation report findings (if provided)
|
||||
- Superficial review instead of deep analysis
|
||||
- Missing section-by-section breakdown
|
||||
- Not prioritizing changes
|
||||
- Proceeding without user approval
|
||||
|
||||
**Master Rule:** Plan before editing. Thorough analysis ensures we make the right changes in the right order. User approval prevents misalignment.
|
||||
@@ -0,0 +1,253 @@
|
||||
---
|
||||
name: 'step-e-03-edit'
|
||||
description: 'Edit & Update - Apply changes to PRD following approved change plan'
|
||||
|
||||
# File references (ONLY variables used in this step)
|
||||
nextStepFile: './step-e-04-complete.md'
|
||||
prdFile: '{prd_file_path}'
|
||||
prdPurpose: '{project-root}/src/modules/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md'
|
||||
---
|
||||
|
||||
# Step E-3: Edit & Update
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Apply changes to the PRD following the approved change plan from step e-02, including content updates, structure improvements, and format conversion if needed.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- 🛑 ALWAYS generate content WITH user input/approval
|
||||
- 📖 CRITICAL: Read the complete step file before taking any action
|
||||
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- ✅ You are a Validation Architect and PRD Improvement Specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring analytical expertise and precise editing skills
|
||||
- ✅ User brings domain knowledge and approval authority
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on implementing approved changes from step e-02
|
||||
- 🚫 FORBIDDEN to make changes beyond the approved plan
|
||||
- 💬 Approach: Methodical, section-by-section execution
|
||||
- 🚪 This is a middle step - user can request adjustments
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Follow approved change plan systematically
|
||||
- 💾 Edit PRD content according to plan
|
||||
- 📖 Update frontmatter as needed
|
||||
- 🚫 FORBIDDEN to proceed without completion
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Available context: PRD file, approved change plan from step e-02, prd-purpose standards
|
||||
- Focus: Implementing changes from approved plan only
|
||||
- Limits: Don't add changes beyond plan, don't validate yet
|
||||
- Dependencies: Step e-02 completed - plan approved by user
|
||||
|
||||
## MANDATORY SEQUENCE
|
||||
|
||||
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
|
||||
|
||||
### 1. Retrieve Approved Change Plan
|
||||
|
||||
From step e-02, retrieve:
|
||||
- **Approved changes:** Section-by-section list
|
||||
- **Priority order:** Sequence to apply changes
|
||||
- **User requirements:** Edit goals from step e-01
|
||||
|
||||
Display: "**Starting PRD Edits**
|
||||
|
||||
**Change Plan:** {summary}
|
||||
**Total Changes:** {count}
|
||||
**Estimated Effort:** {effort level}
|
||||
|
||||
**Proceeding with edits section by section...**"
|
||||
|
||||
### 2. Attempt Sub-Process Edits (For Complex Changes)
|
||||
|
||||
**Try to use Task tool with sub-agent for major sections:**
|
||||
|
||||
"Execute PRD edits for {section_name}:
|
||||
|
||||
**Context:**
|
||||
- Section to edit: {section_name}
|
||||
- Current content: {existing content}
|
||||
- Changes needed: {specific changes from plan}
|
||||
- BMAD PRD standards: Load from prd-purpose.md
|
||||
|
||||
**Tasks:**
|
||||
1. Read current PRD section
|
||||
2. Apply specified changes
|
||||
3. Ensure BMAD PRD principles compliance:
|
||||
- High information density (no filler)
|
||||
- Measurable requirements
|
||||
- Clear structure
|
||||
- Proper markdown formatting
|
||||
4. Return updated section content
|
||||
|
||||
Apply changes and return updated section."
|
||||
|
||||
**Graceful degradation (if no Task tool):**
|
||||
- Perform edits directly in current context
|
||||
- Load PRD section, apply changes, save
|
||||
|
||||
### 3. Execute Changes Section-by-Section
|
||||
|
||||
**For each section in approved plan (in priority order):**
|
||||
|
||||
**a) Load current section**
|
||||
- Read the current PRD section content
|
||||
- Note what exists
|
||||
|
||||
**b) Apply changes per plan**
|
||||
- Additions: Create new sections with proper content
|
||||
- Updates: Modify existing content per plan
|
||||
- Removals: Remove specified content
|
||||
- Restructuring: Reformat content to BMAD standard
|
||||
|
||||
**c) Update PRD file**
|
||||
- Apply changes to PRD
|
||||
- Save updated PRD
|
||||
- Verify changes applied correctly
|
||||
|
||||
**Display progress after each section:**
|
||||
"**Section Updated:** {section_name}
|
||||
Changes: {brief summary}
|
||||
{More sections remaining...}"
|
||||
|
||||
### 4. Handle Restructuring (If Needed)
|
||||
|
||||
**If conversion mode is "Full restructuring" or "Both":**
|
||||
|
||||
**For restructuring:**
|
||||
- Reorganize PRD to BMAD standard structure
|
||||
- Ensure proper ## Level 2 headers
|
||||
- Reorder sections logically
|
||||
- Update PRD frontmatter to match BMAD format
|
||||
|
||||
**Follow BMAD PRD structure:**
|
||||
1. Executive Summary
|
||||
2. Success Criteria
|
||||
3. Product Scope
|
||||
4. User Journeys
|
||||
5. Domain Requirements (if applicable)
|
||||
6. Innovation Analysis (if applicable)
|
||||
7. Project-Type Requirements
|
||||
8. Functional Requirements
|
||||
9. Non-Functional Requirements
|
||||
|
||||
Display: "**PRD Restructured**
|
||||
BMAD standard structure applied.
|
||||
{Sections added/reordered}"
|
||||
|
||||
### 5. Update PRD Frontmatter
|
||||
|
||||
**Ensure frontmatter is complete and accurate:**
|
||||
|
||||
```yaml
|
||||
---
|
||||
workflowType: 'prd'
|
||||
workflow: 'create' # or 'validate' or 'edit'
|
||||
classification:
|
||||
domain: '{domain}'
|
||||
projectType: '{project_type}'
|
||||
complexity: '{complexity}'
|
||||
inputDocuments: [list of input documents]
|
||||
stepsCompleted: ['step-e-01-discovery', 'step-e-02-review', 'step-e-03-edit']
|
||||
lastEdited: '{current_date}'
|
||||
editHistory:
|
||||
- date: '{current_date}'
|
||||
changes: '{summary of changes}'
|
||||
---
|
||||
```
|
||||
|
||||
**Update frontmatter accordingly.**
|
||||
|
||||
### 6. Final Review of Changes
|
||||
|
||||
**Load complete updated PRD**
|
||||
|
||||
**Verify:**
|
||||
- All approved changes applied correctly
|
||||
- PRD structure is sound
|
||||
- No unintended modifications
|
||||
- Frontmatter is accurate
|
||||
|
||||
**If issues found:**
|
||||
- Fix them now
|
||||
- Note corrections made
|
||||
|
||||
**If user wants adjustments:**
|
||||
- Accept feedback and make adjustments
|
||||
- Re-verify after adjustments
|
||||
|
||||
### 7. Confirm Completion
|
||||
|
||||
Display:
|
||||
|
||||
"**PRD Edits Complete**
|
||||
|
||||
**Changes Applied:** {count} sections modified
|
||||
**PRD Updated:** {prd_file_path}
|
||||
|
||||
**Summary of Changes:**
|
||||
{Brief bullet list of major changes}
|
||||
|
||||
**PRD is ready for:**
|
||||
- Use in downstream workflows (UX, Architecture)
|
||||
- Validation (if not yet validated)
|
||||
|
||||
**What would you like to do next?**"
|
||||
|
||||
### 8. Present MENU OPTIONS
|
||||
|
||||
**[V] Run Validation** - Execute full validation workflow (steps-v/step-v-01-discovery.md)
|
||||
**[S] Summary Only** - End with summary of changes (no validation)
|
||||
**[A] Adjust** - Make additional edits
|
||||
**[X] Exit** - Exit edit workflow
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input
|
||||
- Only proceed based on user selection
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- IF V (Validate): Display "Starting validation workflow..." then load and execute steps-v/step-v-01-discovery.md
|
||||
- IF S (Summary): Present edit summary and exit
|
||||
- IF A (Adjust): Accept additional requirements, loop back to editing
|
||||
- IF X (Exit): Display summary and exit
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- All approved changes from step e-02 applied correctly
|
||||
- Changes executed in planned priority order
|
||||
- Restructuring completed (if needed)
|
||||
- Frontmatter updated accurately
|
||||
- Final verification confirms changes
|
||||
- User can proceed to validation or exit with summary
|
||||
- Option to run validation seamlessly integrates edit and validate modes
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Making changes beyond approved plan
|
||||
- Not following priority order
|
||||
- Missing restructuring (if conversion mode)
|
||||
- Not updating frontmatter
|
||||
- No final verification
|
||||
- Not saving updated PRD
|
||||
|
||||
**Master Rule:** Execute the plan exactly as approved. PRD is now ready for validation or downstream use. Validation integration ensures quality.
|
||||
@@ -0,0 +1,168 @@
|
||||
---
|
||||
name: 'step-e-04-complete'
|
||||
description: 'Complete & Validate - Present options for next steps including full validation'
|
||||
|
||||
# File references (ONLY variables used in this step)
|
||||
prdFile: '{prd_file_path}'
|
||||
validationWorkflow: './steps-v/step-v-01-discovery.md'
|
||||
---
|
||||
|
||||
# Step E-4: Complete & Validate
|
||||
|
||||
## STEP GOAL:
|
||||
|
||||
Present summary of completed edits and offer next steps including seamless integration with validation workflow.
|
||||
|
||||
## MANDATORY EXECUTION RULES (READ FIRST):
|
||||
|
||||
### Universal Rules:
|
||||
|
||||
- 🛑 ALWAYS generate content WITH user input/approval
|
||||
- 📖 CRITICAL: Read the complete step file before taking any action
|
||||
- 🔄 CRITICAL: When loading next step with 'C', ensure entire file is read
|
||||
- 📋 YOU ARE A FACILITATOR, not a content generator
|
||||
- ✅ YOU MUST ALWAYS SPEAK OUTPUT In your Agent communication style with the config `{communication_language}`
|
||||
|
||||
### Role Reinforcement:
|
||||
|
||||
- ✅ You are a Validation Architect and PRD Improvement Specialist
|
||||
- ✅ If you already have been given communication or persona patterns, continue to use those while playing this new role
|
||||
- ✅ We engage in collaborative dialogue, not command-response
|
||||
- ✅ You bring synthesis and summary expertise
|
||||
- ✅ User chooses next actions
|
||||
|
||||
### Step-Specific Rules:
|
||||
|
||||
- 🎯 Focus ONLY on presenting summary and options
|
||||
- 🚫 FORBIDDEN to make additional changes
|
||||
- 💬 Approach: Clear, concise summary with actionable options
|
||||
- 🚪 This is the final edit step - no more edits
|
||||
|
||||
## EXECUTION PROTOCOLS:
|
||||
|
||||
- 🎯 Compile summary of all changes made
|
||||
- 🎯 Present options clearly with expected outcomes
|
||||
- 📖 Route to validation if user chooses
|
||||
- 🚫 FORBIDDEN to proceed without user selection
|
||||
|
||||
## CONTEXT BOUNDARIES:
|
||||
|
||||
- Available context: Updated PRD file, edit history from step e-03
|
||||
- Focus: Summary and options only (no more editing)
|
||||
- Limits: Don't make changes, just present options
|
||||
- Dependencies: Step e-03 completed - all edits applied
|
||||
|
||||
## MANDATORY SEQUENCE
|
||||
|
||||
**CRITICAL:** Follow this sequence exactly. Do not skip, reorder, or improvise unless user explicitly requests a change.
|
||||
|
||||
### 1. Compile Edit Summary
|
||||
|
||||
From step e-03 change execution, compile:
|
||||
|
||||
**Changes Made:**
|
||||
- Sections added: {list with names}
|
||||
- Sections updated: {list with names}
|
||||
- Content removed: {list}
|
||||
- Structure changes: {description}
|
||||
|
||||
**Edit Details:**
|
||||
- Total sections affected: {count}
|
||||
- Mode: {restructure/targeted/both}
|
||||
- Priority addressed: {Critical/High/Medium/Low}
|
||||
|
||||
**PRD Status:**
|
||||
- Format: {BMAD Standard / BMAD Variant / Legacy (converted)}
|
||||
- Completeness: {assessment}
|
||||
- Ready for: {downstream use cases}
|
||||
|
||||
### 2. Present Completion Summary
|
||||
|
||||
Display:
|
||||
|
||||
"**✓ PRD Edit Complete**
|
||||
|
||||
**Updated PRD:** {prd_file_path}
|
||||
|
||||
**Changes Summary:**
|
||||
{Present bulleted list of major changes}
|
||||
|
||||
**Edit Mode:** {mode}
|
||||
**Sections Modified:** {count}
|
||||
|
||||
**PRD Format:** {format}
|
||||
|
||||
**PRD is now ready for:**
|
||||
- Downstream workflows (UX Design, Architecture)
|
||||
- Validation to ensure quality
|
||||
- Production use
|
||||
|
||||
**What would you like to do next?**"
|
||||
|
||||
### 3. Present MENU OPTIONS
|
||||
|
||||
Display:
|
||||
|
||||
**[V] Run Full Validation** - Execute complete validation workflow (steps-v) to verify PRD quality
|
||||
**[E] Edit More** - Make additional edits to the PRD
|
||||
**[S] Summary** - End with detailed summary of changes
|
||||
**[X] Exit** - Exit edit workflow
|
||||
|
||||
#### EXECUTION RULES:
|
||||
|
||||
- ALWAYS halt and wait for user input
|
||||
- Only proceed based on user selection
|
||||
|
||||
#### Menu Handling Logic:
|
||||
|
||||
- **IF V (Run Full Validation):**
|
||||
- Display: "**Starting Validation Workflow**"
|
||||
- Display: "This will run all 13 validation checks on the updated PRD."
|
||||
- Display: "Preparing to validate: {prd_file_path}"
|
||||
- Display: "**Proceeding to validation...**"
|
||||
- Load, read entire file, then execute {validationWorkflow} (steps-v/step-v-01-discovery.md)
|
||||
- Note: This hands off to the validation workflow which will run its complete 13-step process
|
||||
|
||||
- **IF E (Edit More):**
|
||||
- Display: "**Additional Edits**"
|
||||
- Ask: "What additional edits would you like to make?"
|
||||
- Accept input, then display: "**Returning to edit step...**"
|
||||
- Load and execute step-e-03-edit.md again
|
||||
|
||||
- **IF S (Summary):**
|
||||
- Display detailed summary including:
|
||||
- Complete list of all changes made
|
||||
- Before/after comparison (key improvements)
|
||||
- Recommendations for next steps
|
||||
- Display: "**Edit Workflow Complete**"
|
||||
- Exit
|
||||
|
||||
- **IF X (Exit):**
|
||||
- Display summary
|
||||
- Display: "**Edit Workflow Complete**"
|
||||
- Exit
|
||||
|
||||
- **IF Any other:** Help user, then redisplay menu
|
||||
|
||||
---
|
||||
|
||||
## 🚨 SYSTEM SUCCESS/FAILURE METRICS
|
||||
|
||||
### ✅ SUCCESS:
|
||||
|
||||
- Complete edit summary compiled accurately
|
||||
- All changes clearly documented
|
||||
- Options presented with clear expectations
|
||||
- Validation option seamlessly integrates with steps-v workflow
|
||||
- User can validate, edit more, or exit
|
||||
- Clean handoff to validation workflow (if chosen)
|
||||
- Edit workflow completes properly
|
||||
|
||||
### ❌ SYSTEM FAILURE:
|
||||
|
||||
- Missing changes in summary
|
||||
- Not offering validation option
|
||||
- Not documenting completion properly
|
||||
- No clear handoff to validation workflow
|
||||
|
||||
**Master Rule:** Edit workflow seamlessly integrates with validation. User can edit → validate → edit again → validate again in iterative improvement cycle.
|
||||
Reference in New Issue
Block a user