siesa-agents 2.1.1 → 2.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +83 -83
- package/bin/install.js +400 -399
- package/bin/prepare-publish.js +26 -26
- package/bin/restore-folders.js +26 -26
- package/bmad-core/agent-teams/team-all.yaml +15 -15
- package/bmad-core/agent-teams/team-fullstack.yaml +19 -19
- package/bmad-core/agent-teams/team-ide-minimal.yaml +11 -11
- package/bmad-core/agent-teams/team-no-ui.yaml +14 -14
- package/bmad-core/agents/analyst.md +84 -84
- package/bmad-core/agents/architect.md +94 -94
- package/bmad-core/agents/backend-agent.md +189 -189
- package/bmad-core/agents/bmad-master.md +110 -110
- package/bmad-core/agents/bmad-orchestrator.md +147 -147
- package/bmad-core/agents/dev.md +81 -81
- package/bmad-core/agents/frontend-agent.md +168 -168
- package/bmad-core/agents/pm.md +84 -84
- package/bmad-core/agents/po.md +79 -79
- package/bmad-core/agents/qa.md +91 -91
- package/bmad-core/agents/sm.md +65 -65
- package/bmad-core/agents/ux-expert.md +69 -69
- package/bmad-core/checklists/architect-checklist.md +440 -440
- package/bmad-core/checklists/backend-checklist.md +142 -142
- package/bmad-core/checklists/change-checklist.md +184 -184
- package/bmad-core/checklists/frontend-checklist.md +105 -105
- package/bmad-core/checklists/pm-checklist.md +372 -372
- package/bmad-core/checklists/po-master-checklist.md +434 -434
- package/bmad-core/checklists/story-dod-checklist.md +96 -96
- package/bmad-core/checklists/story-draft-checklist.md +155 -155
- package/bmad-core/core-config.yaml +22 -22
- package/bmad-core/data/backend-standards.md +439 -439
- package/bmad-core/data/bmad-kb.md +809 -809
- package/bmad-core/data/brainstorming-techniques.md +38 -38
- package/bmad-core/data/elicitation-methods.md +156 -156
- package/bmad-core/data/frontend-standards.md +323 -323
- package/bmad-core/data/technical-preferences.md +5 -5
- package/bmad-core/data/test-levels-framework.md +148 -148
- package/bmad-core/data/test-priorities-matrix.md +174 -174
- package/bmad-core/enhanced-ide-development-workflow.md +248 -248
- package/bmad-core/install-manifest.yaml +230 -230
- package/bmad-core/tasks/advanced-elicitation.md +119 -119
- package/bmad-core/tasks/apply-qa-fixes.md +150 -150
- package/bmad-core/tasks/brownfield-create-epic.md +162 -162
- package/bmad-core/tasks/brownfield-create-story.md +149 -149
- package/bmad-core/tasks/correct-course.md +72 -72
- package/bmad-core/tasks/create-brownfield-story.md +314 -314
- package/bmad-core/tasks/create-component.md +102 -102
- package/bmad-core/tasks/create-deep-research-prompt.md +280 -280
- package/bmad-core/tasks/create-doc.md +103 -103
- package/bmad-core/tasks/create-entity.md +132 -132
- package/bmad-core/tasks/create-feature.md +90 -90
- package/bmad-core/tasks/create-next-story.md +114 -114
- package/bmad-core/tasks/create-service.md +117 -117
- package/bmad-core/tasks/create-use-case.md +140 -140
- package/bmad-core/tasks/document-project.md +345 -345
- package/bmad-core/tasks/execute-checklist.md +88 -88
- package/bmad-core/tasks/facilitate-brainstorming-session.md +138 -138
- package/bmad-core/tasks/generate-ai-frontend-prompt.md +53 -53
- package/bmad-core/tasks/index-docs.md +175 -175
- package/bmad-core/tasks/kb-mode-interaction.md +77 -77
- package/bmad-core/tasks/nfr-assess.md +345 -345
- package/bmad-core/tasks/qa-gate.md +163 -163
- package/bmad-core/tasks/review-story.md +316 -316
- package/bmad-core/tasks/risk-profile.md +355 -355
- package/bmad-core/tasks/scaffold-backend.md +110 -110
- package/bmad-core/tasks/scaffold-frontend.md +78 -78
- package/bmad-core/tasks/shard-doc.md +187 -187
- package/bmad-core/tasks/test-design.md +176 -176
- package/bmad-core/tasks/trace-requirements.md +266 -266
- package/bmad-core/tasks/validate-next-story.md +136 -136
- package/bmad-core/templates/architecture-tmpl.yaml +662 -662
- package/bmad-core/templates/brainstorming-output-tmpl.yaml +156 -156
- package/bmad-core/templates/brownfield-architecture-tmpl.yaml +477 -477
- package/bmad-core/templates/brownfield-prd-tmpl.yaml +281 -281
- package/bmad-core/templates/competitor-analysis-tmpl.yaml +307 -307
- package/bmad-core/templates/front-end-architecture-tmpl.yaml +258 -258
- package/bmad-core/templates/front-end-spec-tmpl.yaml +350 -350
- package/bmad-core/templates/fullstack-architecture-tmpl.yaml +824 -824
- package/bmad-core/templates/market-research-tmpl.yaml +253 -253
- package/bmad-core/templates/prd-tmpl.yaml +203 -203
- package/bmad-core/templates/project-brief-tmpl.yaml +222 -222
- package/bmad-core/templates/qa-gate-tmpl.yaml +103 -103
- package/bmad-core/templates/story-tmpl.yaml +138 -138
- package/bmad-core/user-guide.md +530 -530
- package/bmad-core/utils/bmad-doc-template.md +327 -327
- package/bmad-core/utils/workflow-management.md +71 -71
- package/bmad-core/workflows/brownfield-fullstack.yaml +298 -298
- package/bmad-core/workflows/brownfield-service.yaml +188 -188
- package/bmad-core/workflows/brownfield-ui.yaml +198 -198
- package/bmad-core/workflows/greenfield-fullstack.yaml +241 -241
- package/bmad-core/workflows/greenfield-service.yaml +207 -207
- package/bmad-core/workflows/greenfield-ui.yaml +236 -236
- package/bmad-core/working-in-the-brownfield.md +606 -606
- package/claude/commands/BMad/agents/analyst.md +88 -0
- package/claude/commands/BMad/agents/architect.md +89 -0
- package/claude/commands/BMad/agents/backend.md +188 -0
- package/claude/commands/BMad/agents/bmad-master.md +114 -0
- package/claude/commands/BMad/agents/bmad-orchestrator.md +151 -0
- package/claude/commands/BMad/agents/dev.md +85 -0
- package/claude/commands/BMad/agents/frontend.md +151 -0
- package/claude/commands/BMad/agents/pm.md +88 -0
- package/claude/commands/BMad/agents/po.md +83 -0
- package/claude/commands/BMad/agents/qa.md +95 -0
- package/claude/commands/BMad/agents/sm.md +69 -0
- package/claude/commands/BMad/agents/ux-expert.md +73 -0
- package/claude/commands/BMad/tasks/advanced-elicitation.md +123 -0
- package/claude/commands/BMad/tasks/apply-qa-fixes.md +154 -0
- package/claude/commands/BMad/tasks/brownfield-create-epic.md +166 -0
- package/claude/commands/BMad/tasks/brownfield-create-story.md +153 -0
- package/claude/commands/BMad/tasks/correct-course.md +76 -0
- package/claude/commands/BMad/tasks/create-brownfield-story.md +318 -0
- package/claude/commands/BMad/tasks/create-deep-research-prompt.md +284 -0
- package/claude/commands/BMad/tasks/create-doc.md +107 -0
- package/claude/commands/BMad/tasks/create-next-story.md +118 -0
- package/claude/commands/BMad/tasks/document-project.md +349 -0
- package/claude/commands/BMad/tasks/execute-checklist.md +92 -0
- package/claude/commands/BMad/tasks/facilitate-brainstorming-session.md +142 -0
- package/claude/commands/BMad/tasks/generate-ai-frontend-prompt.md +57 -0
- package/claude/commands/BMad/tasks/index-docs.md +179 -0
- package/claude/commands/BMad/tasks/kb-mode-interaction.md +81 -0
- package/claude/commands/BMad/tasks/nfr-assess.md +349 -0
- package/claude/commands/BMad/tasks/qa-gate.md +167 -0
- package/claude/commands/BMad/tasks/review-story.md +320 -0
- package/claude/commands/BMad/tasks/risk-profile.md +359 -0
- package/claude/commands/BMad/tasks/shard-doc.md +191 -0
- package/claude/commands/BMad/tasks/test-design.md +180 -0
- package/claude/commands/BMad/tasks/trace-requirements.md +270 -0
- package/claude/commands/BMad/tasks/validate-next-story.md +140 -0
- package/claude/settings.local.json +20 -0
- package/github/b-mad-expert.md +742 -742
- package/github/chatmodes/analyst.chatmode.md +89 -89
- package/github/chatmodes/architect.chatmode.md +97 -97
- package/github/chatmodes/backend.chatmode.md +194 -194
- package/github/chatmodes/bmad-master.chatmode.md +115 -115
- package/github/chatmodes/bmad-orchestrator.chatmode.md +152 -152
- package/github/chatmodes/dev.chatmode.md +86 -86
- package/github/chatmodes/frontend.chatmode.md +157 -157
- package/github/chatmodes/pm.chatmode.md +89 -89
- package/github/chatmodes/po.chatmode.md +84 -84
- package/github/chatmodes/qa.chatmode.md +96 -96
- package/github/chatmodes/sm.chatmode.md +70 -70
- package/github/chatmodes/ux-expert.chatmode.md +74 -74
- package/index.js +9 -9
- package/package.json +37 -36
- package/vscode/mcp.json +11 -11
- package/vscode/settings.json +12 -12
|
@@ -1,119 +1,119 @@
|
|
|
1
|
-
<!-- Powered by BMAD™ Core -->
|
|
2
|
-
|
|
3
|
-
# Advanced Elicitation Task
|
|
4
|
-
|
|
5
|
-
## Purpose
|
|
6
|
-
|
|
7
|
-
- Provide optional reflective and brainstorming actions to enhance content quality
|
|
8
|
-
- Enable deeper exploration of ideas through structured elicitation techniques
|
|
9
|
-
- Support iterative refinement through multiple analytical perspectives
|
|
10
|
-
- Usable during template-driven document creation or any chat conversation
|
|
11
|
-
|
|
12
|
-
## Usage Scenarios
|
|
13
|
-
|
|
14
|
-
### Scenario 1: Template Document Creation
|
|
15
|
-
|
|
16
|
-
After outputting a section during document creation:
|
|
17
|
-
|
|
18
|
-
1. **Section Review**: Ask user to review the drafted section
|
|
19
|
-
2. **Offer Elicitation**: Present 9 carefully selected elicitation methods
|
|
20
|
-
3. **Simple Selection**: User types a number (0-8) to engage method, or 9 to proceed
|
|
21
|
-
4. **Execute & Loop**: Apply selected method, then re-offer choices until user proceeds
|
|
22
|
-
|
|
23
|
-
### Scenario 2: General Chat Elicitation
|
|
24
|
-
|
|
25
|
-
User can request advanced elicitation on any agent output:
|
|
26
|
-
|
|
27
|
-
- User says "do advanced elicitation" or similar
|
|
28
|
-
- Agent selects 9 relevant methods for the context
|
|
29
|
-
- Same simple 0-9 selection process
|
|
30
|
-
|
|
31
|
-
## Task Instructions
|
|
32
|
-
|
|
33
|
-
### 1. Intelligent Method Selection
|
|
34
|
-
|
|
35
|
-
**Context Analysis**: Before presenting options, analyze:
|
|
36
|
-
|
|
37
|
-
- **Content Type**: Technical specs, user stories, architecture, requirements, etc.
|
|
38
|
-
- **Complexity Level**: Simple, moderate, or complex content
|
|
39
|
-
- **Stakeholder Needs**: Who will use this information
|
|
40
|
-
- **Risk Level**: High-impact decisions vs routine items
|
|
41
|
-
- **Creative Potential**: Opportunities for innovation or alternatives
|
|
42
|
-
|
|
43
|
-
**Method Selection Strategy**:
|
|
44
|
-
|
|
45
|
-
1. **Always Include Core Methods** (choose 3-4):
|
|
46
|
-
- Expand or Contract for Audience
|
|
47
|
-
- Critique and Refine
|
|
48
|
-
- Identify Potential Risks
|
|
49
|
-
- Assess Alignment with Goals
|
|
50
|
-
|
|
51
|
-
2. **Context-Specific Methods** (choose 4-5):
|
|
52
|
-
- **Technical Content**: Tree of Thoughts, ReWOO, Meta-Prompting
|
|
53
|
-
- **User-Facing Content**: Agile Team Perspective, Stakeholder Roundtable
|
|
54
|
-
- **Creative Content**: Innovation Tournament, Escape Room Challenge
|
|
55
|
-
- **Strategic Content**: Red Team vs Blue Team, Hindsight Reflection
|
|
56
|
-
|
|
57
|
-
3. **Always Include**: "Proceed / No Further Actions" as option 9
|
|
58
|
-
|
|
59
|
-
### 2. Section Context and Review
|
|
60
|
-
|
|
61
|
-
When invoked after outputting a section:
|
|
62
|
-
|
|
63
|
-
1. **Provide Context Summary**: Give a brief 1-2 sentence summary of what the user should look for in the section just presented
|
|
64
|
-
|
|
65
|
-
2. **Explain Visual Elements**: If the section contains diagrams, explain them briefly before offering elicitation options
|
|
66
|
-
|
|
67
|
-
3. **Clarify Scope Options**: If the section contains multiple distinct items, inform the user they can apply elicitation actions to:
|
|
68
|
-
- The entire section as a whole
|
|
69
|
-
- Individual items within the section (specify which item when selecting an action)
|
|
70
|
-
|
|
71
|
-
### 3. Present Elicitation Options
|
|
72
|
-
|
|
73
|
-
**Review Request Process:**
|
|
74
|
-
|
|
75
|
-
- Ask the user to review the drafted section
|
|
76
|
-
- In the SAME message, inform them they can suggest direct changes OR select an elicitation method
|
|
77
|
-
- Present 9 intelligently selected methods (0-8) plus "Proceed" (9)
|
|
78
|
-
- Keep descriptions short - just the method name
|
|
79
|
-
- Await simple numeric selection
|
|
80
|
-
|
|
81
|
-
**Action List Presentation Format:**
|
|
82
|
-
|
|
83
|
-
```text
|
|
84
|
-
**Advanced Elicitation Options**
|
|
85
|
-
Choose a number (0-8) or 9 to proceed:
|
|
86
|
-
|
|
87
|
-
0. [Method Name]
|
|
88
|
-
1. [Method Name]
|
|
89
|
-
2. [Method Name]
|
|
90
|
-
3. [Method Name]
|
|
91
|
-
4. [Method Name]
|
|
92
|
-
5. [Method Name]
|
|
93
|
-
6. [Method Name]
|
|
94
|
-
7. [Method Name]
|
|
95
|
-
8. [Method Name]
|
|
96
|
-
9. Proceed / No Further Actions
|
|
97
|
-
```
|
|
98
|
-
|
|
99
|
-
**Response Handling:**
|
|
100
|
-
|
|
101
|
-
- **Numbers 0-8**: Execute the selected method, then re-offer the choice
|
|
102
|
-
- **Number 9**: Proceed to next section or continue conversation
|
|
103
|
-
- **Direct Feedback**: Apply user's suggested changes and continue
|
|
104
|
-
|
|
105
|
-
### 4. Method Execution Framework
|
|
106
|
-
|
|
107
|
-
**Execution Process:**
|
|
108
|
-
|
|
109
|
-
1. **Retrieve Method**: Access the specific elicitation method from the elicitation-methods data file
|
|
110
|
-
2. **Apply Context**: Execute the method from your current role's perspective
|
|
111
|
-
3. **Provide Results**: Deliver insights, critiques, or alternatives relevant to the content
|
|
112
|
-
4. **Re-offer Choice**: Present the same 9 options again until user selects 9 or gives direct feedback
|
|
113
|
-
|
|
114
|
-
**Execution Guidelines:**
|
|
115
|
-
|
|
116
|
-
- **Be Concise**: Focus on actionable insights, not lengthy explanations
|
|
117
|
-
- **Stay Relevant**: Tie all elicitation back to the specific content being analyzed
|
|
118
|
-
- **Identify Personas**: For multi-persona methods, clearly identify which viewpoint is speaking
|
|
119
|
-
- **Maintain Flow**: Keep the process moving efficiently
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# Advanced Elicitation Task
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
- Provide optional reflective and brainstorming actions to enhance content quality
|
|
8
|
+
- Enable deeper exploration of ideas through structured elicitation techniques
|
|
9
|
+
- Support iterative refinement through multiple analytical perspectives
|
|
10
|
+
- Usable during template-driven document creation or any chat conversation
|
|
11
|
+
|
|
12
|
+
## Usage Scenarios
|
|
13
|
+
|
|
14
|
+
### Scenario 1: Template Document Creation
|
|
15
|
+
|
|
16
|
+
After outputting a section during document creation:
|
|
17
|
+
|
|
18
|
+
1. **Section Review**: Ask user to review the drafted section
|
|
19
|
+
2. **Offer Elicitation**: Present 9 carefully selected elicitation methods
|
|
20
|
+
3. **Simple Selection**: User types a number (0-8) to engage method, or 9 to proceed
|
|
21
|
+
4. **Execute & Loop**: Apply selected method, then re-offer choices until user proceeds
|
|
22
|
+
|
|
23
|
+
### Scenario 2: General Chat Elicitation
|
|
24
|
+
|
|
25
|
+
User can request advanced elicitation on any agent output:
|
|
26
|
+
|
|
27
|
+
- User says "do advanced elicitation" or similar
|
|
28
|
+
- Agent selects 9 relevant methods for the context
|
|
29
|
+
- Same simple 0-9 selection process
|
|
30
|
+
|
|
31
|
+
## Task Instructions
|
|
32
|
+
|
|
33
|
+
### 1. Intelligent Method Selection
|
|
34
|
+
|
|
35
|
+
**Context Analysis**: Before presenting options, analyze:
|
|
36
|
+
|
|
37
|
+
- **Content Type**: Technical specs, user stories, architecture, requirements, etc.
|
|
38
|
+
- **Complexity Level**: Simple, moderate, or complex content
|
|
39
|
+
- **Stakeholder Needs**: Who will use this information
|
|
40
|
+
- **Risk Level**: High-impact decisions vs routine items
|
|
41
|
+
- **Creative Potential**: Opportunities for innovation or alternatives
|
|
42
|
+
|
|
43
|
+
**Method Selection Strategy**:
|
|
44
|
+
|
|
45
|
+
1. **Always Include Core Methods** (choose 3-4):
|
|
46
|
+
- Expand or Contract for Audience
|
|
47
|
+
- Critique and Refine
|
|
48
|
+
- Identify Potential Risks
|
|
49
|
+
- Assess Alignment with Goals
|
|
50
|
+
|
|
51
|
+
2. **Context-Specific Methods** (choose 4-5):
|
|
52
|
+
- **Technical Content**: Tree of Thoughts, ReWOO, Meta-Prompting
|
|
53
|
+
- **User-Facing Content**: Agile Team Perspective, Stakeholder Roundtable
|
|
54
|
+
- **Creative Content**: Innovation Tournament, Escape Room Challenge
|
|
55
|
+
- **Strategic Content**: Red Team vs Blue Team, Hindsight Reflection
|
|
56
|
+
|
|
57
|
+
3. **Always Include**: "Proceed / No Further Actions" as option 9
|
|
58
|
+
|
|
59
|
+
### 2. Section Context and Review
|
|
60
|
+
|
|
61
|
+
When invoked after outputting a section:
|
|
62
|
+
|
|
63
|
+
1. **Provide Context Summary**: Give a brief 1-2 sentence summary of what the user should look for in the section just presented
|
|
64
|
+
|
|
65
|
+
2. **Explain Visual Elements**: If the section contains diagrams, explain them briefly before offering elicitation options
|
|
66
|
+
|
|
67
|
+
3. **Clarify Scope Options**: If the section contains multiple distinct items, inform the user they can apply elicitation actions to:
|
|
68
|
+
- The entire section as a whole
|
|
69
|
+
- Individual items within the section (specify which item when selecting an action)
|
|
70
|
+
|
|
71
|
+
### 3. Present Elicitation Options
|
|
72
|
+
|
|
73
|
+
**Review Request Process:**
|
|
74
|
+
|
|
75
|
+
- Ask the user to review the drafted section
|
|
76
|
+
- In the SAME message, inform them they can suggest direct changes OR select an elicitation method
|
|
77
|
+
- Present 9 intelligently selected methods (0-8) plus "Proceed" (9)
|
|
78
|
+
- Keep descriptions short - just the method name
|
|
79
|
+
- Await simple numeric selection
|
|
80
|
+
|
|
81
|
+
**Action List Presentation Format:**
|
|
82
|
+
|
|
83
|
+
```text
|
|
84
|
+
**Advanced Elicitation Options**
|
|
85
|
+
Choose a number (0-8) or 9 to proceed:
|
|
86
|
+
|
|
87
|
+
0. [Method Name]
|
|
88
|
+
1. [Method Name]
|
|
89
|
+
2. [Method Name]
|
|
90
|
+
3. [Method Name]
|
|
91
|
+
4. [Method Name]
|
|
92
|
+
5. [Method Name]
|
|
93
|
+
6. [Method Name]
|
|
94
|
+
7. [Method Name]
|
|
95
|
+
8. [Method Name]
|
|
96
|
+
9. Proceed / No Further Actions
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
**Response Handling:**
|
|
100
|
+
|
|
101
|
+
- **Numbers 0-8**: Execute the selected method, then re-offer the choice
|
|
102
|
+
- **Number 9**: Proceed to next section or continue conversation
|
|
103
|
+
- **Direct Feedback**: Apply user's suggested changes and continue
|
|
104
|
+
|
|
105
|
+
### 4. Method Execution Framework
|
|
106
|
+
|
|
107
|
+
**Execution Process:**
|
|
108
|
+
|
|
109
|
+
1. **Retrieve Method**: Access the specific elicitation method from the elicitation-methods data file
|
|
110
|
+
2. **Apply Context**: Execute the method from your current role's perspective
|
|
111
|
+
3. **Provide Results**: Deliver insights, critiques, or alternatives relevant to the content
|
|
112
|
+
4. **Re-offer Choice**: Present the same 9 options again until user selects 9 or gives direct feedback
|
|
113
|
+
|
|
114
|
+
**Execution Guidelines:**
|
|
115
|
+
|
|
116
|
+
- **Be Concise**: Focus on actionable insights, not lengthy explanations
|
|
117
|
+
- **Stay Relevant**: Tie all elicitation back to the specific content being analyzed
|
|
118
|
+
- **Identify Personas**: For multi-persona methods, clearly identify which viewpoint is speaking
|
|
119
|
+
- **Maintain Flow**: Keep the process moving efficiently
|
|
@@ -1,150 +1,150 @@
|
|
|
1
|
-
<!-- Powered by BMAD™ Core -->
|
|
2
|
-
|
|
3
|
-
# apply-qa-fixes
|
|
4
|
-
|
|
5
|
-
Implement fixes based on QA results (gate and assessments) for a specific story. This task is for the Dev agent to systematically consume QA outputs and apply code/test changes while only updating allowed sections in the story file.
|
|
6
|
-
|
|
7
|
-
## Purpose
|
|
8
|
-
|
|
9
|
-
- Read QA outputs for a story (gate YAML + assessment markdowns)
|
|
10
|
-
- Create a prioritized, deterministic fix plan
|
|
11
|
-
- Apply code and test changes to close gaps and address issues
|
|
12
|
-
- Update only the allowed story sections for the Dev agent
|
|
13
|
-
|
|
14
|
-
## Inputs
|
|
15
|
-
|
|
16
|
-
```yaml
|
|
17
|
-
required:
|
|
18
|
-
- story_id: '{epic}.{story}' # e.g., "2.2"
|
|
19
|
-
- qa_root: from `bmad-core/core-config.yaml` key `qa.qaLocation` (e.g., `docs/project/qa`)
|
|
20
|
-
- story_root: from `bmad-core/core-config.yaml` key `devStoryLocation` (e.g., `docs/project/stories`)
|
|
21
|
-
|
|
22
|
-
optional:
|
|
23
|
-
- story_title: '{title}' # derive from story H1 if missing
|
|
24
|
-
- story_slug: '{slug}' # derive from title (lowercase, hyphenated) if missing
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
## QA Sources to Read
|
|
28
|
-
|
|
29
|
-
- Gate (YAML): `{qa_root}/gates/{epic}.{story}-*.yml`
|
|
30
|
-
- If multiple, use the most recent by modified time
|
|
31
|
-
- Assessments (Markdown):
|
|
32
|
-
- Test Design: `{qa_root}/assessments/{epic}.{story}-test-design-*.md`
|
|
33
|
-
- Traceability: `{qa_root}/assessments/{epic}.{story}-trace-*.md`
|
|
34
|
-
- Risk Profile: `{qa_root}/assessments/{epic}.{story}-risk-*.md`
|
|
35
|
-
- NFR Assessment: `{qa_root}/assessments/{epic}.{story}-nfr-*.md`
|
|
36
|
-
|
|
37
|
-
## Prerequisites
|
|
38
|
-
|
|
39
|
-
- Repository builds and tests run locally (Deno 2)
|
|
40
|
-
- Lint and test commands available:
|
|
41
|
-
- `deno lint`
|
|
42
|
-
- `deno test -A`
|
|
43
|
-
|
|
44
|
-
## Process (Do not skip steps)
|
|
45
|
-
|
|
46
|
-
### 0) Load Core Config & Locate Story
|
|
47
|
-
|
|
48
|
-
- Read `bmad-core/core-config.yaml` and resolve `qa_root` and `story_root`
|
|
49
|
-
- Locate story file in `{story_root}/{epic}.{story}.*.md`
|
|
50
|
-
- HALT if missing and ask for correct story id/path
|
|
51
|
-
|
|
52
|
-
### 1) Collect QA Findings
|
|
53
|
-
|
|
54
|
-
- Parse the latest gate YAML:
|
|
55
|
-
- `gate` (PASS|CONCERNS|FAIL|WAIVED)
|
|
56
|
-
- `top_issues[]` with `id`, `severity`, `finding`, `suggested_action`
|
|
57
|
-
- `nfr_validation.*.status` and notes
|
|
58
|
-
- `trace` coverage summary/gaps
|
|
59
|
-
- `test_design.coverage_gaps[]`
|
|
60
|
-
- `risk_summary.recommendations.must_fix[]` (if present)
|
|
61
|
-
- Read any present assessment markdowns and extract explicit gaps/recommendations
|
|
62
|
-
|
|
63
|
-
### 2) Build Deterministic Fix Plan (Priority Order)
|
|
64
|
-
|
|
65
|
-
Apply in order, highest priority first:
|
|
66
|
-
|
|
67
|
-
1. High severity items in `top_issues` (security/perf/reliability/maintainability)
|
|
68
|
-
2. NFR statuses: all FAIL must be fixed → then CONCERNS
|
|
69
|
-
3. Test Design `coverage_gaps` (prioritize P0 scenarios if specified)
|
|
70
|
-
4. Trace uncovered requirements (AC-level)
|
|
71
|
-
5. Risk `must_fix` recommendations
|
|
72
|
-
6. Medium severity issues, then low
|
|
73
|
-
|
|
74
|
-
Guidance:
|
|
75
|
-
|
|
76
|
-
- Prefer tests closing coverage gaps before/with code changes
|
|
77
|
-
- Keep changes minimal and targeted; follow project architecture and TS/Deno rules
|
|
78
|
-
|
|
79
|
-
### 3) Apply Changes
|
|
80
|
-
|
|
81
|
-
- Implement code fixes per plan
|
|
82
|
-
- Add missing tests to close coverage gaps (unit first; integration where required by AC)
|
|
83
|
-
- Keep imports centralized via `deps.ts` (see `docs/project/typescript-rules.md`)
|
|
84
|
-
- Follow DI boundaries in `src/core/di.ts` and existing patterns
|
|
85
|
-
|
|
86
|
-
### 4) Validate
|
|
87
|
-
|
|
88
|
-
- Run `deno lint` and fix issues
|
|
89
|
-
- Run `deno test -A` until all tests pass
|
|
90
|
-
- Iterate until clean
|
|
91
|
-
|
|
92
|
-
### 5) Update Story (Allowed Sections ONLY)
|
|
93
|
-
|
|
94
|
-
CRITICAL: Dev agent is ONLY authorized to update these sections of the story file. Do not modify any other sections (e.g., QA Results, Story, Acceptance Criteria, Dev Notes, Testing):
|
|
95
|
-
|
|
96
|
-
- Tasks / Subtasks Checkboxes (mark any fix subtask you added as done)
|
|
97
|
-
- Dev Agent Record →
|
|
98
|
-
- Agent Model Used (if changed)
|
|
99
|
-
- Debug Log References (commands/results, e.g., lint/tests)
|
|
100
|
-
- Completion Notes List (what changed, why, how)
|
|
101
|
-
- File List (all added/modified/deleted files)
|
|
102
|
-
- Change Log (new dated entry describing applied fixes)
|
|
103
|
-
- Status (see Rule below)
|
|
104
|
-
|
|
105
|
-
Status Rule:
|
|
106
|
-
|
|
107
|
-
- If gate was PASS and all identified gaps are closed → set `Status: Ready for Done`
|
|
108
|
-
- Otherwise → set `Status: Ready for Review` and notify QA to re-run the review
|
|
109
|
-
|
|
110
|
-
### 6) Do NOT Edit Gate Files
|
|
111
|
-
|
|
112
|
-
- Dev does not modify gate YAML. If fixes address issues, request QA to re-run `review-story` to update the gate
|
|
113
|
-
|
|
114
|
-
## Blocking Conditions
|
|
115
|
-
|
|
116
|
-
- Missing `bmad-core/core-config.yaml`
|
|
117
|
-
- Story file not found for `story_id`
|
|
118
|
-
- No QA artifacts found (neither gate nor assessments)
|
|
119
|
-
- HALT and request QA to generate at least a gate file (or proceed only with clear developer-provided fix list)
|
|
120
|
-
|
|
121
|
-
## Completion Checklist
|
|
122
|
-
|
|
123
|
-
- deno lint: 0 problems
|
|
124
|
-
- deno test -A: all tests pass
|
|
125
|
-
- All high severity `top_issues` addressed
|
|
126
|
-
- NFR FAIL → resolved; CONCERNS minimized or documented
|
|
127
|
-
- Coverage gaps closed or explicitly documented with rationale
|
|
128
|
-
- Story updated (allowed sections only) including File List and Change Log
|
|
129
|
-
- Status set according to Status Rule
|
|
130
|
-
|
|
131
|
-
## Example: Story 2.2
|
|
132
|
-
|
|
133
|
-
Given gate `docs/project/qa/gates/2.2-*.yml` shows
|
|
134
|
-
|
|
135
|
-
- `coverage_gaps`: Back action behavior untested (AC2)
|
|
136
|
-
- `coverage_gaps`: Centralized dependencies enforcement untested (AC4)
|
|
137
|
-
|
|
138
|
-
Fix plan:
|
|
139
|
-
|
|
140
|
-
- Add a test ensuring the Toolkit Menu "Back" action returns to Main Menu
|
|
141
|
-
- Add a static test verifying imports for service/view go through `deps.ts`
|
|
142
|
-
- Re-run lint/tests and update Dev Agent Record + File List accordingly
|
|
143
|
-
|
|
144
|
-
## Key Principles
|
|
145
|
-
|
|
146
|
-
- Deterministic, risk-first prioritization
|
|
147
|
-
- Minimal, maintainable changes
|
|
148
|
-
- Tests validate behavior and close gaps
|
|
149
|
-
- Strict adherence to allowed story update areas
|
|
150
|
-
- Gate ownership remains with QA; Dev signals readiness via Status
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# apply-qa-fixes
|
|
4
|
+
|
|
5
|
+
Implement fixes based on QA results (gate and assessments) for a specific story. This task is for the Dev agent to systematically consume QA outputs and apply code/test changes while only updating allowed sections in the story file.
|
|
6
|
+
|
|
7
|
+
## Purpose
|
|
8
|
+
|
|
9
|
+
- Read QA outputs for a story (gate YAML + assessment markdowns)
|
|
10
|
+
- Create a prioritized, deterministic fix plan
|
|
11
|
+
- Apply code and test changes to close gaps and address issues
|
|
12
|
+
- Update only the allowed story sections for the Dev agent
|
|
13
|
+
|
|
14
|
+
## Inputs
|
|
15
|
+
|
|
16
|
+
```yaml
|
|
17
|
+
required:
|
|
18
|
+
- story_id: '{epic}.{story}' # e.g., "2.2"
|
|
19
|
+
- qa_root: from `bmad-core/core-config.yaml` key `qa.qaLocation` (e.g., `docs/project/qa`)
|
|
20
|
+
- story_root: from `bmad-core/core-config.yaml` key `devStoryLocation` (e.g., `docs/project/stories`)
|
|
21
|
+
|
|
22
|
+
optional:
|
|
23
|
+
- story_title: '{title}' # derive from story H1 if missing
|
|
24
|
+
- story_slug: '{slug}' # derive from title (lowercase, hyphenated) if missing
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## QA Sources to Read
|
|
28
|
+
|
|
29
|
+
- Gate (YAML): `{qa_root}/gates/{epic}.{story}-*.yml`
|
|
30
|
+
- If multiple, use the most recent by modified time
|
|
31
|
+
- Assessments (Markdown):
|
|
32
|
+
- Test Design: `{qa_root}/assessments/{epic}.{story}-test-design-*.md`
|
|
33
|
+
- Traceability: `{qa_root}/assessments/{epic}.{story}-trace-*.md`
|
|
34
|
+
- Risk Profile: `{qa_root}/assessments/{epic}.{story}-risk-*.md`
|
|
35
|
+
- NFR Assessment: `{qa_root}/assessments/{epic}.{story}-nfr-*.md`
|
|
36
|
+
|
|
37
|
+
## Prerequisites
|
|
38
|
+
|
|
39
|
+
- Repository builds and tests run locally (Deno 2)
|
|
40
|
+
- Lint and test commands available:
|
|
41
|
+
- `deno lint`
|
|
42
|
+
- `deno test -A`
|
|
43
|
+
|
|
44
|
+
## Process (Do not skip steps)
|
|
45
|
+
|
|
46
|
+
### 0) Load Core Config & Locate Story
|
|
47
|
+
|
|
48
|
+
- Read `bmad-core/core-config.yaml` and resolve `qa_root` and `story_root`
|
|
49
|
+
- Locate story file in `{story_root}/{epic}.{story}.*.md`
|
|
50
|
+
- HALT if missing and ask for correct story id/path
|
|
51
|
+
|
|
52
|
+
### 1) Collect QA Findings
|
|
53
|
+
|
|
54
|
+
- Parse the latest gate YAML:
|
|
55
|
+
- `gate` (PASS|CONCERNS|FAIL|WAIVED)
|
|
56
|
+
- `top_issues[]` with `id`, `severity`, `finding`, `suggested_action`
|
|
57
|
+
- `nfr_validation.*.status` and notes
|
|
58
|
+
- `trace` coverage summary/gaps
|
|
59
|
+
- `test_design.coverage_gaps[]`
|
|
60
|
+
- `risk_summary.recommendations.must_fix[]` (if present)
|
|
61
|
+
- Read any present assessment markdowns and extract explicit gaps/recommendations
|
|
62
|
+
|
|
63
|
+
### 2) Build Deterministic Fix Plan (Priority Order)
|
|
64
|
+
|
|
65
|
+
Apply in order, highest priority first:
|
|
66
|
+
|
|
67
|
+
1. High severity items in `top_issues` (security/perf/reliability/maintainability)
|
|
68
|
+
2. NFR statuses: all FAIL must be fixed → then CONCERNS
|
|
69
|
+
3. Test Design `coverage_gaps` (prioritize P0 scenarios if specified)
|
|
70
|
+
4. Trace uncovered requirements (AC-level)
|
|
71
|
+
5. Risk `must_fix` recommendations
|
|
72
|
+
6. Medium severity issues, then low
|
|
73
|
+
|
|
74
|
+
Guidance:
|
|
75
|
+
|
|
76
|
+
- Prefer tests closing coverage gaps before/with code changes
|
|
77
|
+
- Keep changes minimal and targeted; follow project architecture and TS/Deno rules
|
|
78
|
+
|
|
79
|
+
### 3) Apply Changes
|
|
80
|
+
|
|
81
|
+
- Implement code fixes per plan
|
|
82
|
+
- Add missing tests to close coverage gaps (unit first; integration where required by AC)
|
|
83
|
+
- Keep imports centralized via `deps.ts` (see `docs/project/typescript-rules.md`)
|
|
84
|
+
- Follow DI boundaries in `src/core/di.ts` and existing patterns
|
|
85
|
+
|
|
86
|
+
### 4) Validate
|
|
87
|
+
|
|
88
|
+
- Run `deno lint` and fix issues
|
|
89
|
+
- Run `deno test -A` until all tests pass
|
|
90
|
+
- Iterate until clean
|
|
91
|
+
|
|
92
|
+
### 5) Update Story (Allowed Sections ONLY)
|
|
93
|
+
|
|
94
|
+
CRITICAL: Dev agent is ONLY authorized to update these sections of the story file. Do not modify any other sections (e.g., QA Results, Story, Acceptance Criteria, Dev Notes, Testing):
|
|
95
|
+
|
|
96
|
+
- Tasks / Subtasks Checkboxes (mark any fix subtask you added as done)
|
|
97
|
+
- Dev Agent Record →
|
|
98
|
+
- Agent Model Used (if changed)
|
|
99
|
+
- Debug Log References (commands/results, e.g., lint/tests)
|
|
100
|
+
- Completion Notes List (what changed, why, how)
|
|
101
|
+
- File List (all added/modified/deleted files)
|
|
102
|
+
- Change Log (new dated entry describing applied fixes)
|
|
103
|
+
- Status (see Rule below)
|
|
104
|
+
|
|
105
|
+
Status Rule:
|
|
106
|
+
|
|
107
|
+
- If gate was PASS and all identified gaps are closed → set `Status: Ready for Done`
|
|
108
|
+
- Otherwise → set `Status: Ready for Review` and notify QA to re-run the review
|
|
109
|
+
|
|
110
|
+
### 6) Do NOT Edit Gate Files
|
|
111
|
+
|
|
112
|
+
- Dev does not modify gate YAML. If fixes address issues, request QA to re-run `review-story` to update the gate
|
|
113
|
+
|
|
114
|
+
## Blocking Conditions
|
|
115
|
+
|
|
116
|
+
- Missing `bmad-core/core-config.yaml`
|
|
117
|
+
- Story file not found for `story_id`
|
|
118
|
+
- No QA artifacts found (neither gate nor assessments)
|
|
119
|
+
- HALT and request QA to generate at least a gate file (or proceed only with clear developer-provided fix list)
|
|
120
|
+
|
|
121
|
+
## Completion Checklist
|
|
122
|
+
|
|
123
|
+
- deno lint: 0 problems
|
|
124
|
+
- deno test -A: all tests pass
|
|
125
|
+
- All high severity `top_issues` addressed
|
|
126
|
+
- NFR FAIL → resolved; CONCERNS minimized or documented
|
|
127
|
+
- Coverage gaps closed or explicitly documented with rationale
|
|
128
|
+
- Story updated (allowed sections only) including File List and Change Log
|
|
129
|
+
- Status set according to Status Rule
|
|
130
|
+
|
|
131
|
+
## Example: Story 2.2
|
|
132
|
+
|
|
133
|
+
Given gate `docs/project/qa/gates/2.2-*.yml` shows
|
|
134
|
+
|
|
135
|
+
- `coverage_gaps`: Back action behavior untested (AC2)
|
|
136
|
+
- `coverage_gaps`: Centralized dependencies enforcement untested (AC4)
|
|
137
|
+
|
|
138
|
+
Fix plan:
|
|
139
|
+
|
|
140
|
+
- Add a test ensuring the Toolkit Menu "Back" action returns to Main Menu
|
|
141
|
+
- Add a static test verifying imports for service/view go through `deps.ts`
|
|
142
|
+
- Re-run lint/tests and update Dev Agent Record + File List accordingly
|
|
143
|
+
|
|
144
|
+
## Key Principles
|
|
145
|
+
|
|
146
|
+
- Deterministic, risk-first prioritization
|
|
147
|
+
- Minimal, maintainable changes
|
|
148
|
+
- Tests validate behavior and close gaps
|
|
149
|
+
- Strict adherence to allowed story update areas
|
|
150
|
+
- Gate ownership remains with QA; Dev signals readiness via Status
|