@rdmind/rdmind 0.0.9-alpha.1 → 0.0.9
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/.knowledge/.ext/.bmad-core/agent-teams/team-all.yaml +15 -0
- package/.knowledge/.ext/.bmad-core/agent-teams/team-fullstack.yaml +19 -0
- package/.knowledge/.ext/.bmad-core/agent-teams/team-ide-minimal.yaml +11 -0
- package/.knowledge/.ext/.bmad-core/agent-teams/team-no-ui.yaml +14 -0
- package/.knowledge/.ext/.bmad-core/agents/analyst.md +84 -0
- package/.knowledge/.ext/.bmad-core/agents/architect.md +85 -0
- package/.knowledge/.ext/.bmad-core/agents/bmad-master.md +110 -0
- package/.knowledge/.ext/.bmad-core/agents/bmad-orchestrator.md +147 -0
- package/.knowledge/.ext/.bmad-core/agents/dev.md +81 -0
- package/.knowledge/.ext/.bmad-core/agents/pm.md +84 -0
- package/.knowledge/.ext/.bmad-core/agents/po.md +79 -0
- package/.knowledge/.ext/.bmad-core/agents/qa.md +90 -0
- package/.knowledge/.ext/.bmad-core/agents/ra.md +74 -0
- package/.knowledge/.ext/.bmad-core/agents/sm.md +65 -0
- package/.knowledge/.ext/.bmad-core/agents/ux-expert.md +69 -0
- package/.knowledge/.ext/.bmad-core/checklists/architect-checklist.md +440 -0
- package/.knowledge/.ext/.bmad-core/checklists/change-checklist.md +184 -0
- package/.knowledge/.ext/.bmad-core/checklists/pm-checklist.md +372 -0
- package/.knowledge/.ext/.bmad-core/checklists/po-master-checklist.md +434 -0
- package/.knowledge/.ext/.bmad-core/checklists/story-dod-checklist.md +96 -0
- package/.knowledge/.ext/.bmad-core/checklists/story-draft-checklist.md +155 -0
- package/.knowledge/.ext/.bmad-core/checklists/trd-checklist.md +226 -0
- package/.knowledge/.ext/.bmad-core/core-config.yaml +22 -0
- package/.knowledge/.ext/.bmad-core/data/bmad-kb.md +809 -0
- package/.knowledge/.ext/.bmad-core/data/brainstorming-techniques.md +38 -0
- package/.knowledge/.ext/.bmad-core/data/elicitation-methods.md +156 -0
- package/.knowledge/.ext/.bmad-core/data/technical-preferences.md +5 -0
- package/.knowledge/.ext/.bmad-core/data/test-levels-framework.md +148 -0
- package/.knowledge/.ext/.bmad-core/data/test-priorities-matrix.md +174 -0
- package/.knowledge/.ext/.bmad-core/enhanced-ide-development-workflow.md +248 -0
- package/.knowledge/.ext/.bmad-core/install-manifest.yaml +512 -0
- package/.knowledge/.ext/.bmad-core/tasks/advanced-elicitation.md +119 -0
- package/.knowledge/.ext/.bmad-core/tasks/analyze-prd.md +123 -0
- package/.knowledge/.ext/.bmad-core/tasks/apply-qa-fixes.md +150 -0
- package/.knowledge/.ext/.bmad-core/tasks/brownfield-create-epic.md +162 -0
- package/.knowledge/.ext/.bmad-core/tasks/brownfield-create-story.md +149 -0
- package/.knowledge/.ext/.bmad-core/tasks/correct-course.md +72 -0
- package/.knowledge/.ext/.bmad-core/tasks/create-brownfield-story.md +314 -0
- package/.knowledge/.ext/.bmad-core/tasks/create-deep-research-prompt.md +280 -0
- package/.knowledge/.ext/.bmad-core/tasks/create-doc.md +103 -0
- package/.knowledge/.ext/.bmad-core/tasks/create-next-story.md +114 -0
- package/.knowledge/.ext/.bmad-core/tasks/document-project.md +345 -0
- package/.knowledge/.ext/.bmad-core/tasks/execute-checklist.md +88 -0
- package/.knowledge/.ext/.bmad-core/tasks/facilitate-brainstorming-session.md +138 -0
- package/.knowledge/.ext/.bmad-core/tasks/generate-ai-frontend-prompt.md +53 -0
- package/.knowledge/.ext/.bmad-core/tasks/index-docs.md +175 -0
- package/.knowledge/.ext/.bmad-core/tasks/kb-mode-interaction.md +77 -0
- package/.knowledge/.ext/.bmad-core/tasks/nfr-assess.md +345 -0
- package/.knowledge/.ext/.bmad-core/tasks/qa-gate.md +163 -0
- package/.knowledge/.ext/.bmad-core/tasks/review-story.md +316 -0
- package/.knowledge/.ext/.bmad-core/tasks/risk-profile.md +355 -0
- package/.knowledge/.ext/.bmad-core/tasks/shard-doc.md +187 -0
- package/.knowledge/.ext/.bmad-core/tasks/test-design.md +176 -0
- package/.knowledge/.ext/.bmad-core/tasks/trace-requirements.md +266 -0
- package/.knowledge/.ext/.bmad-core/tasks/validate-next-story.md +136 -0
- package/.knowledge/.ext/.bmad-core/tasks/validate-trd.md +158 -0
- package/.knowledge/.ext/.bmad-core/templates/architecture-tmpl.yaml +651 -0
- package/.knowledge/.ext/.bmad-core/templates/brainstorming-output-tmpl.yaml +156 -0
- package/.knowledge/.ext/.bmad-core/templates/brownfield-architecture-tmpl.yaml +478 -0
- package/.knowledge/.ext/.bmad-core/templates/brownfield-prd-tmpl.yaml +281 -0
- package/.knowledge/.ext/.bmad-core/templates/competitor-analysis-tmpl.yaml +349 -0
- package/.knowledge/.ext/.bmad-core/templates/front-end-architecture-tmpl.yaml +273 -0
- package/.knowledge/.ext/.bmad-core/templates/front-end-spec-tmpl.yaml +360 -0
- package/.knowledge/.ext/.bmad-core/templates/fullstack-architecture-tmpl.yaml +947 -0
- package/.knowledge/.ext/.bmad-core/templates/market-research-tmpl.yaml +253 -0
- package/.knowledge/.ext/.bmad-core/templates/prd-tmpl.yaml +203 -0
- package/.knowledge/.ext/.bmad-core/templates/project-brief-tmpl.yaml +222 -0
- package/.knowledge/.ext/.bmad-core/templates/qa-gate-tmpl.yaml +103 -0
- package/.knowledge/.ext/.bmad-core/templates/story-tmpl.yaml +138 -0
- package/.knowledge/.ext/.bmad-core/templates/trd-tmpl.yaml +198 -0
- package/.knowledge/.ext/.bmad-core/user-guide.md +530 -0
- package/.knowledge/.ext/.bmad-core/utils/bmad-doc-template.md +327 -0
- package/.knowledge/.ext/.bmad-core/utils/workflow-management.md +71 -0
- package/.knowledge/.ext/.bmad-core/workflows/brownfield-fullstack.yaml +298 -0
- package/.knowledge/.ext/.bmad-core/workflows/brownfield-service.yaml +188 -0
- package/.knowledge/.ext/.bmad-core/workflows/brownfield-ui.yaml +198 -0
- package/.knowledge/.ext/.bmad-core/workflows/greenfield-fullstack.yaml +241 -0
- package/.knowledge/.ext/.bmad-core/workflows/greenfield-service.yaml +207 -0
- package/.knowledge/.ext/.bmad-core/workflows/greenfield-ui.yaml +236 -0
- package/.knowledge/.ext/.bmad-core/working-in-the-brownfield.md +606 -0
- package/.knowledge/.ext/coding/ddd-architecture.md +223 -0
- package/.knowledge/.ext/coding/java-standards.md +308 -0
- package/.knowledge/.ext/coding/mybatis-standards.md +407 -0
- package/.knowledge/.ext/coding/sql-standards.md +263 -0
- package/.knowledge/.ext/coding/thrift-service.md +292 -0
- package/.knowledge/BMAD.md +255 -0
- package/.knowledge/coding.md +135 -0
- package/dist/package.json +4 -3
- package/dist/src/config/extension.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/services/McpPromptLoader.js +1 -1
- package/dist/src/services/McpPromptLoader.js.map +1 -1
- package/dist/src/services/prompt-processors/atFileProcessor.js +1 -1
- package/dist/src/services/prompt-processors/atFileProcessor.js.map +1 -1
- package/dist/src/ui/commands/mcpCommand.js.map +1 -1
- package/dist/src/ui/components/ContextSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/Tips.js +1 -1
- package/dist/src/ui/components/Tips.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
- package/dist/src/ui/components/subagents/create/CreationSummary.js.map +1 -1
- package/dist/src/ui/hooks/shellCommandProcessor.test.js.map +1 -1
- package/dist/src/ui/hooks/usePhraseCycler.js +2 -2
- package/dist/src/ui/hooks/usePhraseCycler.js.map +1 -1
- package/dist/src/utils/installationInfo.test.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +4 -3
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# 分析PRD文档任务
|
|
4
|
+
|
|
5
|
+
## ⚠️ 重要提醒 ⚠️
|
|
6
|
+
|
|
7
|
+
**这是个可执行的工作流程,不是参考文档**
|
|
8
|
+
|
|
9
|
+
用这个任务时:
|
|
10
|
+
|
|
11
|
+
1. **必须分析现有PRD** - 不能凭空创建需求
|
|
12
|
+
2. **必须逐步分析** - 按顺序分析PRD的各个部分
|
|
13
|
+
3. **必须识别不确定项** - 标记需要进一步确认的内容
|
|
14
|
+
4. **必须输出TRD** - 生成技术需求文档
|
|
15
|
+
|
|
16
|
+
## 任务目标
|
|
17
|
+
|
|
18
|
+
将PM产出的PRD文档转化为详细的功能需求文档(TRD),深入分析业务流程和功能细节,标记不确定事项,为架构师提供清晰的功能需求指导。
|
|
19
|
+
|
|
20
|
+
## 输入要求
|
|
21
|
+
|
|
22
|
+
- 一个或多个PRD文档路径
|
|
23
|
+
- 项目基本信息(可选)
|
|
24
|
+
|
|
25
|
+
## 输出产物
|
|
26
|
+
|
|
27
|
+
- `docs/trd.md` - 技术需求文档
|
|
28
|
+
- `docs/trd_todo.md` - 待确认事项列表(如果有不确定项)
|
|
29
|
+
|
|
30
|
+
## 执行步骤
|
|
31
|
+
|
|
32
|
+
### 步骤1:PRD文档分析
|
|
33
|
+
|
|
34
|
+
1. **读取PRD文档**:加载用户提供的PRD文档
|
|
35
|
+
2. **文档结构分析**:分析PRD的章节结构和内容完整性
|
|
36
|
+
3. **需求提取**:从PRD中提取功能需求和非功能需求
|
|
37
|
+
4. **业务背景理解**:理解业务目标、成功指标和约束条件
|
|
38
|
+
|
|
39
|
+
### 步骤2:功能需求细化
|
|
40
|
+
|
|
41
|
+
1. **用户故事细化**:
|
|
42
|
+
- 将PRD中的用户故事转化为详细的操作步骤
|
|
43
|
+
- 明确用户角色、操作流程、期望结果
|
|
44
|
+
- 识别用户操作的异常情况和处理逻辑
|
|
45
|
+
2. **业务流程分析**:
|
|
46
|
+
- 详细分析核心业务流程的每个步骤
|
|
47
|
+
- 识别业务决策点和分支逻辑
|
|
48
|
+
- 确定业务规则和约束条件
|
|
49
|
+
|
|
50
|
+
3. **功能规格制定**:
|
|
51
|
+
- 基于功能需求识别功能模块
|
|
52
|
+
- 详细描述操作流程和数据流
|
|
53
|
+
- 识别系统集成点和数据交换需求
|
|
54
|
+
|
|
55
|
+
### 步骤3:不确定项识别
|
|
56
|
+
|
|
57
|
+
1. **业务澄清识别**:
|
|
58
|
+
- 标记需要业务方澄清的需求细节
|
|
59
|
+
- 识别可能的业务逻辑冲突
|
|
60
|
+
- 记录需要进一步确认的业务规则
|
|
61
|
+
|
|
62
|
+
2. **功能细节识别**:
|
|
63
|
+
- 标记需要进一步明确的功能实现细节
|
|
64
|
+
- 识别复杂的业务逻辑和异常处理
|
|
65
|
+
- 记录需要详细说明的用户操作流程
|
|
66
|
+
|
|
67
|
+
### 步骤4:文档生成
|
|
68
|
+
|
|
69
|
+
1. **TRD文档生成**:
|
|
70
|
+
- 使用trd-tmpl.yaml模板生成功能需求文档
|
|
71
|
+
- 确保所有确定的功能需求都被记录
|
|
72
|
+
- 保持文档结构清晰和逻辑完整
|
|
73
|
+
|
|
74
|
+
2. **待办事项生成**:
|
|
75
|
+
- 如果有不确定项,生成trd_todo.md文档
|
|
76
|
+
- 按优先级排序待确认事项
|
|
77
|
+
- 为每个事项提供背景和影响分析
|
|
78
|
+
|
|
79
|
+
## 交互要求
|
|
80
|
+
|
|
81
|
+
当遇到以下情况时,需要与用户交互:
|
|
82
|
+
|
|
83
|
+
1. **PRD文档不完整**:询问缺失的部分或要求补充信息
|
|
84
|
+
2. **需求理解有歧义**:确认对需求的理解是否正确
|
|
85
|
+
3. **业务流程复杂**:当业务流程复杂时,询问具体的处理逻辑
|
|
86
|
+
4. **优先级确认**:确认功能需求的优先级排序
|
|
87
|
+
|
|
88
|
+
## 质量检查
|
|
89
|
+
|
|
90
|
+
完成TRD生成后,进行以下检查:
|
|
91
|
+
|
|
92
|
+
1. **完整性检查**:确保所有PRD需求都被转化为功能需求
|
|
93
|
+
2. **一致性检查**:确保功能需求与业务需求保持一致
|
|
94
|
+
3. **详细性检查**:确保功能需求描述详细,包含足够的实现细节
|
|
95
|
+
4. **清晰性检查**:确保功能需求描述清晰,架构师和开发团队能够理解
|
|
96
|
+
|
|
97
|
+
## 输出格式
|
|
98
|
+
|
|
99
|
+
### TRD文档结构
|
|
100
|
+
|
|
101
|
+
- 文档信息
|
|
102
|
+
- 业务背景
|
|
103
|
+
- 功能需求分析
|
|
104
|
+
- 非功能需求分析
|
|
105
|
+
- 功能规格
|
|
106
|
+
- 实现指导
|
|
107
|
+
- 待确认事项
|
|
108
|
+
|
|
109
|
+
### 待办事项文档结构
|
|
110
|
+
|
|
111
|
+
- 业务澄清列表
|
|
112
|
+
- 功能细节列表
|
|
113
|
+
- 业务规则列表
|
|
114
|
+
- 优先级排序
|
|
115
|
+
- 建议的解决路径
|
|
116
|
+
|
|
117
|
+
## 注意事项
|
|
118
|
+
|
|
119
|
+
1. **保持功能导向**:TRD应该专注于功能需求,为架构师提供清晰的功能指导
|
|
120
|
+
2. **确保详细性**:所有功能需求都应该详细描述,包含足够的实现细节
|
|
121
|
+
3. **标记不确定项**:不要猜测,不确定的内容要明确标记
|
|
122
|
+
4. **保持可追溯性**:功能需求要与PRD中的业务需求保持可追溯关系
|
|
123
|
+
5. **避免技术设计**:不要进行API设计、数据库设计等技术设计,这些交给架构师
|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# apply-qa-fixes
|
|
4
|
+
|
|
5
|
+
基于特定story的QA结果(gate和评估)实现修复。这个任务让Dev代理系统性地处理QA输出并应用代码/测试变更,同时只更新story文件中允许的部分。
|
|
6
|
+
|
|
7
|
+
## 目的
|
|
8
|
+
|
|
9
|
+
- 读取story的QA输出(gate YAML + 评估markdown)
|
|
10
|
+
- 创建优先级的、确定性的修复计划
|
|
11
|
+
- 应用代码和测试变更来关闭差距并解决问题
|
|
12
|
+
- 只更新Dev代理允许的story部分
|
|
13
|
+
|
|
14
|
+
## 输入
|
|
15
|
+
|
|
16
|
+
```yaml
|
|
17
|
+
required:
|
|
18
|
+
- story_id: '{epic}.{story}' # 比如 "2.2"
|
|
19
|
+
- qa_root: 来自 `bmad-core/core-config.yaml` 键 `qa.qaLocation` (比如 `docs/project/qa`)
|
|
20
|
+
- story_root: 来自 `bmad-core/core-config.yaml` 键 `devStoryLocation` (比如 `docs/project/stories`)
|
|
21
|
+
|
|
22
|
+
optional:
|
|
23
|
+
- story_title: '{title}' # 如果缺失,从story H1推导
|
|
24
|
+
- story_slug: '{slug}' # 如果缺失,从标题推导(小写,连字符分隔)
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## 要读取的QA源
|
|
28
|
+
|
|
29
|
+
- gate (YAML): `{qa_root}/gates/{epic}.{story}-*.yml`
|
|
30
|
+
- 如果有多个,使用修改时间最新的
|
|
31
|
+
- 评估 (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
|
+
## 先决条件
|
|
38
|
+
|
|
39
|
+
- 仓库在本地构建和测试运行(Deno 2)
|
|
40
|
+
- 可用的lint和测试命令:
|
|
41
|
+
- `deno lint`
|
|
42
|
+
- `deno test -A`
|
|
43
|
+
|
|
44
|
+
## 流程(不要跳过步骤)
|
|
45
|
+
|
|
46
|
+
### 0) 加载核心配置和定位Story
|
|
47
|
+
|
|
48
|
+
- 读取 `bmad-core/core-config.yaml` 并解析 `qa_root` 和 `story_root`
|
|
49
|
+
- 在 `{story_root}/{epic}.{story}.*.md` 中定位story文件
|
|
50
|
+
- 如果缺失则停止并询问正确的story id/路径
|
|
51
|
+
|
|
52
|
+
### 1) 收集QA发现
|
|
53
|
+
|
|
54
|
+
- 解析最新的gate YAML:
|
|
55
|
+
- `gate` (PASS|CONCERNS|FAIL|WAIVED)
|
|
56
|
+
- `top_issues[]` 包含 `id`, `severity`, `finding`, `suggested_action`
|
|
57
|
+
- `nfr_validation.*.status` 和注释
|
|
58
|
+
- `trace` 覆盖率总结/差距
|
|
59
|
+
- `test_design.coverage_gaps[]`
|
|
60
|
+
- `risk_summary.recommendations.must_fix[]` (如果存在)
|
|
61
|
+
- 读取任何存在的评估markdown并提取明确的差距/建议
|
|
62
|
+
|
|
63
|
+
### 2) 构建确定性修复计划(优先级顺序)
|
|
64
|
+
|
|
65
|
+
按顺序应用,最高优先级优先:
|
|
66
|
+
|
|
67
|
+
1. `top_issues` 中的高严重性项目(安全/性能/可靠性/可维护性)
|
|
68
|
+
2. NFR状态:所有FAIL必须修复 → 然后CONCERNS
|
|
69
|
+
3. Test Design `coverage_gaps`(如果指定,优先P0场景)
|
|
70
|
+
4. 未覆盖的Trace需求(AC级别)
|
|
71
|
+
5. Risk `must_fix` 建议
|
|
72
|
+
6. 中等严重性问题,然后低严重性
|
|
73
|
+
|
|
74
|
+
指导:
|
|
75
|
+
|
|
76
|
+
- 优先在代码变更之前/同时添加测试来关闭覆盖率差距
|
|
77
|
+
- 保持变更最小化和针对性;遵循项目架构和TS/Deno规则
|
|
78
|
+
|
|
79
|
+
### 3) 应用变更
|
|
80
|
+
|
|
81
|
+
- 按计划实现代码修复
|
|
82
|
+
- 添加缺失的测试来关闭覆盖率差距(优先单元测试;AC要求的集成测试)
|
|
83
|
+
- 通过 `deps.ts` 保持导入集中化(见 `docs/project/typescript-rules.md`)
|
|
84
|
+
- 遵循 `src/core/di.ts` 中的DI边界和现有模式
|
|
85
|
+
|
|
86
|
+
### 4) 验证
|
|
87
|
+
|
|
88
|
+
- 运行 `deno lint` 并修复问题
|
|
89
|
+
- 运行 `deno test -A` 直到所有测试通过
|
|
90
|
+
- 迭代直到干净
|
|
91
|
+
|
|
92
|
+
### 5) 更新Story(仅允许的部分)
|
|
93
|
+
|
|
94
|
+
关键:Dev代理仅被授权更新story文件的这些部分。不要修改任何其他部分(比如,QA结果、Story、验收标准、开发笔记、测试):
|
|
95
|
+
|
|
96
|
+
- Tasks / Subtasks Checkboxes(标记你添加的任何修复子任务为完成)
|
|
97
|
+
- Dev Agent Record →
|
|
98
|
+
- Agent Model Used(如果更改)
|
|
99
|
+
- Debug Log References(命令/结果,比如lint/测试)
|
|
100
|
+
- Completion Notes List(更改了什么,为什么,如何)
|
|
101
|
+
- File List(所有添加/修改/删除的文件)
|
|
102
|
+
- Change Log(新的日期条目描述应用的修复)
|
|
103
|
+
- Status(见下面的规则)
|
|
104
|
+
|
|
105
|
+
状态规则:
|
|
106
|
+
|
|
107
|
+
- 如果gate是PASS且所有识别的差距都已关闭 → 设置 `Status: Ready for Done`
|
|
108
|
+
- 否则 → 设置 `Status: Ready for Review` 并通知QA重新运行评审
|
|
109
|
+
|
|
110
|
+
### 6) 不要编辑gate文件
|
|
111
|
+
|
|
112
|
+
- Dev不修改gate YAML。如果修复解决了问题,请求QA重新运行 `review-story` 来更新gate
|
|
113
|
+
|
|
114
|
+
## 阻塞条件
|
|
115
|
+
|
|
116
|
+
- 缺失 `bmad-core/core-config.yaml`
|
|
117
|
+
- 找不到 `story_id` 的story文件
|
|
118
|
+
- 没有找到QA工件(既没有gate也没有评估)
|
|
119
|
+
- 停止并请求QA生成至少一个gate文件(或仅在有明确的开发者提供的修复列表时继续)
|
|
120
|
+
|
|
121
|
+
## 完成Checklist
|
|
122
|
+
|
|
123
|
+
- deno lint: 0个问题
|
|
124
|
+
- deno test -A: 所有测试通过
|
|
125
|
+
- 所有高严重性 `top_issues` 已解决
|
|
126
|
+
- NFR FAIL → 已解决;CONCERNS最小化或已记录
|
|
127
|
+
- 覆盖率差距已关闭或已明确记录理由
|
|
128
|
+
- Story已更新(仅允许的部分)包括文件列表和变更日志
|
|
129
|
+
- 根据状态规则设置状态
|
|
130
|
+
|
|
131
|
+
## 示例:Story 2.2
|
|
132
|
+
|
|
133
|
+
给定gate `docs/project/qa/gates/2.2-*.yml` 显示
|
|
134
|
+
|
|
135
|
+
- `coverage_gaps`: Back action行为未测试(AC2)
|
|
136
|
+
- `coverage_gaps`: 集中化依赖执行未测试(AC4)
|
|
137
|
+
|
|
138
|
+
修复计划:
|
|
139
|
+
|
|
140
|
+
- 添加测试确保Toolkit Menu "Back" action返回到Main Menu
|
|
141
|
+
- 添加静态测试验证service/view的导入通过 `deps.ts`
|
|
142
|
+
- 重新运行lint/测试并相应更新Dev Agent Record + File List
|
|
143
|
+
|
|
144
|
+
## 关键原则
|
|
145
|
+
|
|
146
|
+
- 确定性的、风险优先的优先级排序
|
|
147
|
+
- 最小化、可维护的变更
|
|
148
|
+
- 测试验证行为并关闭差距
|
|
149
|
+
- 严格遵循允许的story更新区域
|
|
150
|
+
- gate所有权仍归QA;Dev通过状态信号准备就绪
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# 创建现有项目Epic任务
|
|
4
|
+
|
|
5
|
+
## 目的
|
|
6
|
+
|
|
7
|
+
为较小的现有项目增强功能创建单个Epic,这些增强不需要完整的PRD和架构文档流程。这个任务适用于可以在有限范围内完成的独立功能或修改。
|
|
8
|
+
|
|
9
|
+
## 什么时候使用这个任务
|
|
10
|
+
|
|
11
|
+
**在以下情况下使用这个任务:**
|
|
12
|
+
|
|
13
|
+
- 增强功能可以在1-3个Story中完成
|
|
14
|
+
- 不需要重大的架构变更
|
|
15
|
+
- 增强功能遵循现有的项目模式
|
|
16
|
+
- 集成复杂度很低
|
|
17
|
+
- 对现有系统的风险较低
|
|
18
|
+
|
|
19
|
+
**在以下情况下使用完整的现有项目PRD/架构流程:**
|
|
20
|
+
|
|
21
|
+
- 增强功能需要多个协调的Story
|
|
22
|
+
- 需要架构规划
|
|
23
|
+
- 需要大量的集成工作
|
|
24
|
+
- 需要风险评估和缓解规划
|
|
25
|
+
|
|
26
|
+
## 操作指南
|
|
27
|
+
|
|
28
|
+
### 1. 项目分析(必需)
|
|
29
|
+
|
|
30
|
+
在创建Epic之前,收集现有项目的基本信息:
|
|
31
|
+
|
|
32
|
+
**现有项目背景:**
|
|
33
|
+
|
|
34
|
+
- [ ] 了解项目目的和当前功能
|
|
35
|
+
- [ ] 确定现有技术栈
|
|
36
|
+
- [ ] 了解当前架构模式
|
|
37
|
+
- [ ] 确定与现有系统的集成点
|
|
38
|
+
|
|
39
|
+
**增强功能范围:**
|
|
40
|
+
|
|
41
|
+
- [ ] 明确定义和限定增强功能范围
|
|
42
|
+
- [ ] 评估对现有功能的影响
|
|
43
|
+
- [ ] 确定所需的集成点
|
|
44
|
+
- [ ] 建立成功标准
|
|
45
|
+
|
|
46
|
+
### 2. Epic创建
|
|
47
|
+
|
|
48
|
+
按照以下结构创建一个聚焦的Epic:
|
|
49
|
+
|
|
50
|
+
#### Epic标题
|
|
51
|
+
|
|
52
|
+
{{增强功能名称}} - 现有项目增强
|
|
53
|
+
|
|
54
|
+
#### Epic目标
|
|
55
|
+
|
|
56
|
+
{{1-2句话描述Epic将完成什么以及为什么它有价值}}
|
|
57
|
+
|
|
58
|
+
#### Epic描述
|
|
59
|
+
|
|
60
|
+
**现有系统背景:**
|
|
61
|
+
|
|
62
|
+
- 当前相关功能:{{简要描述}}
|
|
63
|
+
- 技术栈:{{相关现有技术}}
|
|
64
|
+
- 集成点:{{新工作与现有系统的连接点}}
|
|
65
|
+
|
|
66
|
+
**增强功能详情:**
|
|
67
|
+
|
|
68
|
+
- 要添加/修改的内容:{{清晰描述}}
|
|
69
|
+
- 如何集成:{{集成方法}}
|
|
70
|
+
- 成功标准:{{可衡量的结果}}
|
|
71
|
+
|
|
72
|
+
#### 故事列表
|
|
73
|
+
|
|
74
|
+
列出完成Epic的1-3个聚焦Story:
|
|
75
|
+
|
|
76
|
+
1. **Story 1:** {{Story标题和简要描述}}
|
|
77
|
+
2. **Story 2:** {{Story标题和简要描述}}
|
|
78
|
+
3. **Story 3:** {{Story标题和简要描述}}
|
|
79
|
+
|
|
80
|
+
#### 兼容性要求
|
|
81
|
+
|
|
82
|
+
- [ ] 现有API保持不变
|
|
83
|
+
- [ ] 数据库模式变更向后兼容
|
|
84
|
+
- [ ] UI变更遵循现有模式
|
|
85
|
+
- [ ] 性能影响最小
|
|
86
|
+
|
|
87
|
+
#### 风险缓解
|
|
88
|
+
|
|
89
|
+
- **主要风险:** {{对现有系统的主要风险}}
|
|
90
|
+
- **缓解措施:** {{如何解决风险}}
|
|
91
|
+
- **回滚计划:** {{如何在需要时撤销变更}}
|
|
92
|
+
|
|
93
|
+
#### 完成定义
|
|
94
|
+
|
|
95
|
+
- [ ] 所有Story完成并满足验收标准
|
|
96
|
+
- [ ] 通过测试验证现有功能
|
|
97
|
+
- [ ] 集成点正常工作
|
|
98
|
+
- [ ] 适当更新文档
|
|
99
|
+
- [ ] 现有功能无回归
|
|
100
|
+
|
|
101
|
+
### 3. 验证Checklist
|
|
102
|
+
|
|
103
|
+
在最终确定Epic之前,确保:
|
|
104
|
+
|
|
105
|
+
**范围验证:**
|
|
106
|
+
|
|
107
|
+
- [ ] Epic最多可以在1-3个Story中完成
|
|
108
|
+
- [ ] 不需要架构文档
|
|
109
|
+
- [ ] 增强功能遵循现有模式
|
|
110
|
+
- [ ] 集成复杂度可控
|
|
111
|
+
|
|
112
|
+
**风险评估:**
|
|
113
|
+
|
|
114
|
+
- [ ] 对现有系统的风险较低
|
|
115
|
+
- [ ] 回滚计划可行
|
|
116
|
+
- [ ] 测试方法覆盖现有功能
|
|
117
|
+
- [ ] 团队对集成点有足够了解
|
|
118
|
+
|
|
119
|
+
**完整性检查:**
|
|
120
|
+
|
|
121
|
+
- [ ] Epic目标清晰且可实现
|
|
122
|
+
- [ ] Story范围适当
|
|
123
|
+
- [ ] 成功标准可衡量
|
|
124
|
+
- [ ] 依赖关系已确定
|
|
125
|
+
|
|
126
|
+
### 4. 交接给故事经理
|
|
127
|
+
|
|
128
|
+
Epic验证完成后,向Story经理提供以下交接:
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
**Story经理交接:**
|
|
133
|
+
|
|
134
|
+
"请为这个现有项目Epic开发详细的用户Story。关键考虑因素:
|
|
135
|
+
|
|
136
|
+
- 这是对运行{{技术栈}}的现有系统的增强
|
|
137
|
+
- 集成点:{{列出关键集成点}}
|
|
138
|
+
- 要遵循的现有模式:{{相关现有模式}}
|
|
139
|
+
- 关键兼容性要求:{{关键要求}}
|
|
140
|
+
- 每个Story必须包含验证现有功能保持完整的检查
|
|
141
|
+
|
|
142
|
+
Epic应该在交付{{Epic目标}}的同时保持系统完整性。"
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## 成功标准
|
|
147
|
+
|
|
148
|
+
Epic创建成功时:
|
|
149
|
+
|
|
150
|
+
1. 增强功能范围明确定义且大小适当
|
|
151
|
+
2. 集成方法尊重现有系统架构
|
|
152
|
+
3. 对现有功能的风险最小化
|
|
153
|
+
4. Story按逻辑顺序排列以确保安全实施
|
|
154
|
+
5. 兼容性要求明确指定
|
|
155
|
+
6. 回滚计划可行且有文档记录
|
|
156
|
+
|
|
157
|
+
## 重要说明
|
|
158
|
+
|
|
159
|
+
- 这个任务专门用于小型现有项目增强
|
|
160
|
+
- 如果范围超过3个Story,考虑使用完整的现有项目PRD流程
|
|
161
|
+
- 始终优先考虑现有系统完整性而不是新功能
|
|
162
|
+
- 对范围或复杂度有疑问时,升级到完整的现有项目规划
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# 创建 Brownfield Story 任务
|
|
4
|
+
|
|
5
|
+
## 目的
|
|
6
|
+
|
|
7
|
+
为非常小的 brownfield 增强功能创建单个用户故事,这些功能可以在一次专注的开发会话中完成。这个任务适用于需要现有系统集成意识的最小添加或 bug 修复。
|
|
8
|
+
|
|
9
|
+
## 什么时候用这个任务
|
|
10
|
+
|
|
11
|
+
**用这个任务的情况:**
|
|
12
|
+
|
|
13
|
+
- 增强功能可以在单个 story 中完成
|
|
14
|
+
- 不需要新架构或重大设计
|
|
15
|
+
- 变更完全遵循现有模式
|
|
16
|
+
- 集成简单,风险最小
|
|
17
|
+
- 变更有清晰的边界,影响范围小
|
|
18
|
+
|
|
19
|
+
**用 brownfield-create-epic 的情况:**
|
|
20
|
+
|
|
21
|
+
- 增强功能需要 2-3 个协调的 story
|
|
22
|
+
- 需要一些设计工作
|
|
23
|
+
- 涉及多个集成点
|
|
24
|
+
|
|
25
|
+
**用完整的 brownfield PRD/架构流程的情况:**
|
|
26
|
+
|
|
27
|
+
- 增强功能需要多个协调的 story
|
|
28
|
+
- 需要架构规划
|
|
29
|
+
- 需要大量集成工作
|
|
30
|
+
|
|
31
|
+
## 操作指南
|
|
32
|
+
|
|
33
|
+
### 1. 快速项目评估
|
|
34
|
+
|
|
35
|
+
收集现有项目的最小但必要的上下文:
|
|
36
|
+
|
|
37
|
+
**当前系统上下文:**
|
|
38
|
+
|
|
39
|
+
- [ ] 识别相关的现有功能
|
|
40
|
+
- [ ] 记录该领域的技术栈
|
|
41
|
+
- [ ] 清楚理解集成点
|
|
42
|
+
- [ ] 识别类似工作的现有模式
|
|
43
|
+
|
|
44
|
+
**变更范围:**
|
|
45
|
+
|
|
46
|
+
- [ ] 明确具体的变更内容
|
|
47
|
+
- [ ] 识别影响边界
|
|
48
|
+
- [ ] 建立成功标准
|
|
49
|
+
|
|
50
|
+
### 2. Story 创建
|
|
51
|
+
|
|
52
|
+
按照这个结构创建单个专注的 story:
|
|
53
|
+
|
|
54
|
+
#### Story 标题
|
|
55
|
+
|
|
56
|
+
{{具体增强功能}} - Brownfield 添加
|
|
57
|
+
|
|
58
|
+
#### 用户故事
|
|
59
|
+
|
|
60
|
+
作为 {{用户类型}},
|
|
61
|
+
我希望 {{具体操作/能力}},
|
|
62
|
+
以便 {{明确的好处/价值}}。
|
|
63
|
+
|
|
64
|
+
#### Story 上下文
|
|
65
|
+
|
|
66
|
+
**现有系统集成:**
|
|
67
|
+
|
|
68
|
+
- 集成对象:{{现有组件/系统}}
|
|
69
|
+
- 技术栈:{{相关技术栈}}
|
|
70
|
+
- 遵循模式:{{要遵循的现有模式}}
|
|
71
|
+
- 接触点:{{具体集成点}}
|
|
72
|
+
|
|
73
|
+
#### 验收标准
|
|
74
|
+
|
|
75
|
+
**功能需求:**
|
|
76
|
+
|
|
77
|
+
1. {{主要功能需求}}
|
|
78
|
+
2. {{次要功能需求(如果有)}}
|
|
79
|
+
3. {{集成需求}}
|
|
80
|
+
|
|
81
|
+
**集成需求:** 4. 现有 {{相关功能}} 继续正常工作,无变化 5. 新功能遵循现有 {{模式}} 模式 6. 与 {{系统/组件}} 的集成保持当前行为
|
|
82
|
+
|
|
83
|
+
**质量需求:** 7. 变更被适当的测试覆盖 8. 文档在需要时更新 9. 验证现有功能无回归
|
|
84
|
+
|
|
85
|
+
#### 技术说明
|
|
86
|
+
|
|
87
|
+
- **集成方法:** {{如何连接到现有系统}}
|
|
88
|
+
- **现有模式参考:** {{要遵循的模式的链接或描述}}
|
|
89
|
+
- **关键约束:** {{任何重要的限制或要求}}
|
|
90
|
+
|
|
91
|
+
#### 完成定义
|
|
92
|
+
|
|
93
|
+
- [ ] 功能需求满足
|
|
94
|
+
- [ ] 集成需求验证
|
|
95
|
+
- [ ] 现有功能回归测试
|
|
96
|
+
- [ ] 代码遵循现有模式和标准
|
|
97
|
+
- [ ] 测试通过(现有和新的)
|
|
98
|
+
- [ ] 文档在适用时更新
|
|
99
|
+
|
|
100
|
+
### 3. 风险和兼容性检查
|
|
101
|
+
|
|
102
|
+
**最小风险评估:**
|
|
103
|
+
|
|
104
|
+
- **主要风险:** {{对现有系统的主要风险}}
|
|
105
|
+
- **缓解措施:** {{简单的缓解方法}}
|
|
106
|
+
- **回滚方案:** {{需要时如何撤销}}
|
|
107
|
+
|
|
108
|
+
**兼容性验证:**
|
|
109
|
+
|
|
110
|
+
- [ ] 对现有 API 无破坏性变更
|
|
111
|
+
- [ ] 数据库变更(如果有)仅为添加性
|
|
112
|
+
- [ ] UI 变更遵循现有设计模式
|
|
113
|
+
- [ ] 性能影响可忽略
|
|
114
|
+
|
|
115
|
+
### 4. 验证 Checklist
|
|
116
|
+
|
|
117
|
+
在最终确定 story 之前,确认:
|
|
118
|
+
|
|
119
|
+
**范围验证:**
|
|
120
|
+
|
|
121
|
+
- [ ] Story 可以在一次开发会话中完成
|
|
122
|
+
- [ ] 集成方法简单直接
|
|
123
|
+
- [ ] 完全遵循现有模式
|
|
124
|
+
- [ ] 不需要设计或架构工作
|
|
125
|
+
|
|
126
|
+
**清晰度检查:**
|
|
127
|
+
|
|
128
|
+
- [ ] Story 需求明确无歧义
|
|
129
|
+
- [ ] 集成点明确指定
|
|
130
|
+
- [ ] 成功标准可测试
|
|
131
|
+
- [ ] 回滚方法简单
|
|
132
|
+
|
|
133
|
+
## 成功标准
|
|
134
|
+
|
|
135
|
+
Story 创建成功时:
|
|
136
|
+
|
|
137
|
+
1. 增强功能明确定义,适合单次会话的范围
|
|
138
|
+
2. 集成方法简单直接,风险低
|
|
139
|
+
3. 现有系统模式已识别并将被遵循
|
|
140
|
+
4. 回滚计划简单可行
|
|
141
|
+
5. 验收标准包括现有功能验证
|
|
142
|
+
|
|
143
|
+
## 重要说明
|
|
144
|
+
|
|
145
|
+
- 这个任务仅适用于非常小的 brownfield 变更
|
|
146
|
+
- 如果分析过程中复杂度增加,升级到 brownfield-create-epic
|
|
147
|
+
- 始终优先考虑现有系统完整性
|
|
148
|
+
- 对集成复杂度有疑问时,改用 brownfield-create-epic
|
|
149
|
+
- Story 应该不超过 4 小时的专注开发工作
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
<!-- Powered by BMAD™ Core -->
|
|
2
|
+
|
|
3
|
+
# 项目变更处理任务
|
|
4
|
+
|
|
5
|
+
## 目的
|
|
6
|
+
|
|
7
|
+
- 用 `.bmad-core/checklists/change-checklist` 来系统性地处理项目变更
|
|
8
|
+
- 分析变更对 epic、项目文档和 MVP 的影响
|
|
9
|
+
- 探索解决方案(比如调整范围、回滚功能、重新规划)
|
|
10
|
+
- 为受影响的文档(epic、用户故事、PRD、架构文档等)起草具体的修改建议
|
|
11
|
+
- 生成"Sprint 变更提案"文档,包含影响分析和修改建议,供大家评审
|
|
12
|
+
- 如果变更太大需要重新规划,确保能顺利转给 PM 或架构师处理
|
|
13
|
+
|
|
14
|
+
## 操作步骤
|
|
15
|
+
|
|
16
|
+
### 1. 开始前准备
|
|
17
|
+
|
|
18
|
+
- **确认任务和背景:**
|
|
19
|
+
- 和用户确认要开始"项目变更处理任务"
|
|
20
|
+
- 了解变更的具体情况,确保清楚问题是什么以及可能的影响
|
|
21
|
+
- 确认能访问所有相关文档(PRD、Epic/Story、架构文档、UI/UX 规范)以及 `.bmad-core/checklists/change-checklist`
|
|
22
|
+
- **选择工作方式:**
|
|
23
|
+
- 问用户想怎么处理:
|
|
24
|
+
- **"一步步来(推荐):"** 我们逐项过 change-checklist,每项都讨论清楚再起草修改建议,这样可以做得更细致。
|
|
25
|
+
- **"批量处理:"** 我一次性分析完 checklist,然后给你一个完整的变更建议,这样更快但需要你仔细审查。
|
|
26
|
+
- 用户选好后,确认方式并告诉用户:"现在开始用 change-checklist 分析变更并起草修改建议。我会按你选择的方式来指导你。"
|
|
27
|
+
|
|
28
|
+
### 2. 按 Checklist 分析变更
|
|
29
|
+
|
|
30
|
+
- 系统性地过 change-checklist 的第 1-4 节(包括变更背景、Epic/Story 影响分析、文档冲突解决、路径评估等)
|
|
31
|
+
- 对每个 checklist 项目:
|
|
32
|
+
- 向用户展示相关的问题和考虑点
|
|
33
|
+
- 收集必要信息,分析相关文档(PRD、epic、架构文档、story 历史等)来评估影响
|
|
34
|
+
- 和用户讨论每个项目的发现
|
|
35
|
+
- 记录每个 checklist 项目的状态(如 `[x] 已处理`、`[N/A]`、`[!] 需要进一步行动`)以及相关决策
|
|
36
|
+
- 一起商定第 4 节建议的"推荐方案"
|
|
37
|
+
|
|
38
|
+
### 3. 起草修改建议
|
|
39
|
+
|
|
40
|
+
- 基于 checklist 分析结果和商定的"推荐方案"(如果变更太大需要重新规划,直接转给 PM/架构师):
|
|
41
|
+
- 找出需要更新的具体文档(如特定 epic、用户故事、PRD 部分、架构文档、图表等)
|
|
42
|
+
- **为每个文档起草具体的修改建议。** 比如:
|
|
43
|
+
- 修改用户故事文本、验收标准或优先级
|
|
44
|
+
- 在 epic 内添加、删除、重新排序或拆分用户故事
|
|
45
|
+
- 建议修改架构图表(提供更新的 Mermaid 图表或清晰的文字描述)
|
|
46
|
+
- 更新 PRD 或架构文档中的技术列表、配置详情或特定部分
|
|
47
|
+
- 必要时起草新的小文档(如特定决策的说明)
|
|
48
|
+
- 如果选择"一步步来",和用户逐个讨论并完善每个文档的修改建议
|
|
49
|
+
- 如果选择"批量处理",把所有修改建议整理好,下一步一起展示
|
|
50
|
+
|
|
51
|
+
### 4. 生成"Sprint 变更提案"
|
|
52
|
+
|
|
53
|
+
- 把完整的 checklist 分析结果和所有商定的修改建议整理成一个"Sprint 变更提案"文档,按照 change-checklist 第 5 节的结构来写
|
|
54
|
+
- 提案要清楚地包含:
|
|
55
|
+
- **分析摘要:** 简单说明原始问题、分析出的影响(对 epic、文档、MVP 范围的影响)以及选择这个方案的理由
|
|
56
|
+
- **具体修改建议:** 对每个受影响的文档,清楚地说明要改什么(如"将 Story X.Y 从:[旧文本] 改为:[新文本]"、"给 Story A.B 添加新验收标准:[新 AC]"、"按以下方式更新架构文档第 3.2 节:[新/修改的文本或图表描述]")
|
|
57
|
+
- 向用户展示完整的"Sprint 变更提案"草稿,收集反馈并做最终调整
|
|
58
|
+
|
|
59
|
+
### 5. 最终确定和后续安排
|
|
60
|
+
|
|
61
|
+
- 获得用户对"Sprint 变更提案"的明确批准,包括所有具体的修改建议
|
|
62
|
+
- 向用户提供最终确定的"Sprint 变更提案"文档
|
|
63
|
+
- **根据变更的性质决定下一步:**
|
|
64
|
+
- **如果修改建议能解决问题,可以直接实施或由 PO/SM 安排:** 说明"项目变更处理任务"已完成,用户现在可以开始实施这些变更(如更新实际项目文档、backlog 项目)。如果需要,建议转给 PO/SM 来安排 backlog
|
|
65
|
+
- **如果分析表明变更需要重新规划(如重大范围变更、主要架构调整):** 明确说明这个结论。建议用户下一步找 PM 或架构师,把"Sprint 变更提案"作为重新规划的重要参考
|
|
66
|
+
|
|
67
|
+
## 输出结果
|
|
68
|
+
|
|
69
|
+
- **主要输出:** 一个"Sprint 变更提案"文档(markdown 格式),包含:
|
|
70
|
+
- checklist 分析的摘要(问题、影响、选择方案的理由)
|
|
71
|
+
- 对所有受影响文档的具体修改建议
|
|
72
|
+
- **过程记录:** 一个带注释的 change-checklist(或完成记录),记录过程中的讨论、发现和决策
|