@@ -32,19 +32,26 @@ usage: "/plan-task <task-id>"
3232- 如果不存在,提示用户需要先执行需求分析
3333- 如果存在,读取并理解需求
3434
35- ### 3. 设计技术方案
35+ ### 3. 理解问题本质和约束条件
3636
37- 按照 ` .ai-agents/workflows/feature-development.yaml ` 中的 ` technical-design ` 步骤:
37+ - [ ] 阅读 analysis.md,理解问题的根本原因和影响范围
38+ - [ ] 识别技术约束(从 analysis.md 的"技术依赖和约束"章节获取)
39+ - [ ] 识别特殊要求(例如:安全修复需要考虑漏洞修复版本、Bug修复需要防止回归、功能开发需要考虑扩展性)
3840
39- ** 必须完成的任务** :
40- - [ ] 设计技术实现方案
41- - [ ] 选择合适的技术栈和设计模式
41+ ### 4. 设计解决方案
42+
43+ 按照对应的工作流(如 ` .ai-agents/workflows/feature-development.yaml ` )中的 ` technical-design ` 步骤:
44+
45+ - [ ] 基于 analysis.md 中的信息,提出多个可行方案
46+ - [ ] 对比各方案的优劣(效果、成本、风险、可维护性)
47+ - [ ] 选择最合适的方案并说明理由
4248- [ ] 制定详细的实施步骤
4349- [ ] 列出需要创建/修改的文件清单
44- - [ ] 设计测试策略
45- - [ ] 评估性能和安全影响
50+ - [ ] 设计验证策略(测试、验证、回归检查)
51+ - [ ] 评估影响(性能、安全、兼容性)
52+ - [ ] 制定风险控制和回滚方案
4653
47- ### 4 . 输出方案文档
54+ ### 5 . 输出方案文档
4855
4956创建 ` {task_dir}/plan.md ` ,必须包含以下章节:
5057
@@ -53,22 +60,33 @@ usage: "/plan-task <task-id>"
5360
5461## 方案决策
5562
56- ### 方案对比分析
57- {如果有多个方案,对比分析各方案的优劣}
63+ ### 问题理解
64+ {基于 analysis.md 的问题理解和根本原因}
65+
66+ ### 约束条件
67+ - 技术约束: {技术依赖和限制}
68+ - 业务约束: {业务要求和限制}
69+ - 时间约束: {交付时间要求}
70+
71+ ### 备选方案对比分析
72+ {如果有多个方案,详细对比分析各方案的优劣}
5873
5974### 最终选择
6075- ** 方案** :{选择的方案}
6176- ** 理由** :{选择理由}
6277
6378## 技术方案
6479
65- ### 核心实现策略
66- {详细的实现策略 }
80+ ### 核心解决策略
81+ {详细的解决策略 }
6782
6883### 关键技术点
6984- {技术点1}
7085- {技术点2}
7186
87+ ### 具体实现细节
88+ {根据问题类型的具体实现,例如:代码实现、依赖升级、配置调整等}
89+
7290## 实施步骤
7391
7492### 步骤 1: {步骤名称}
@@ -88,34 +106,45 @@ usage: "/plan-task <task-id>"
88106| ------| ----------| ----------| ----------|
89107| 1 | {path} | {内容} | {行数} |
90108
91- ## 测试策略
109+ ## 验证策略
110+
111+ ### 功能验证
112+ - 单元测试: {测试范围和验收标准}
113+ - 集成测试: {测试范围和验收标准}
92114
93- ### 单元测试
94- - {测试范围和验收标准 }
115+ ### 问题验证
116+ {确认问题已解决,如:功能正常、Bug不再复现、漏洞已修复 }
95117
96- ### 集成测试
97- - {测试范围和验收标准 }
118+ ### 回归验证
119+ {确保没有引入新问题 }
98120
99- ## 性能考虑
121+ ## 影响评估
122+
123+ ### 性能影响
100124{性能影响分析和优化建议}
101125
102- ## 安全考虑
126+ ### 安全影响
103127{安全风险评估和防护措施}
104128
105- ## 回滚方案
106- {如果实施失败,如何回滚 }
129+ ### 兼容性影响
130+ {兼容性分析和注意事项 }
107131
108132## 风险控制
133+
134+ ### 潜在风险
109135| 风险 | 等级 | 应对措施 |
110136| ------| ------| ----------|
111137| {风险} | {等级} | {措施} |
112138
139+ ### 回滚方案
140+ {如果实施失败,如何回滚}
141+
113142## 预期产出
114143- {产出1}
115144- {产出2}
116145```
117146
118- ### 5 . 更新任务状态
147+ ### 6 . 更新任务状态
119148
120149更新 ` .ai-workspace/active/{task-id}/task.md ` :
121150- ` current_step ` : technical-design
@@ -124,7 +153,7 @@ usage: "/plan-task <task-id>"
124153- 标记 plan.md 为已完成
125154- 在工作流进度中标记技术方案设计为完成
126155
127- ### 6 . 告知用户
156+ ### 7 . 告知用户
128157
129158输出格式:
130159```
@@ -173,7 +202,7 @@ usage: "/plan-task <task-id>"
173202
1742031 . ** 前置条件** :
175204 - 必须先完成需求分析(analysis.md 存在)
176- - 如果没有,提示用户先执行 ` /analyze-issue `
205+ - 如果没有,提示用户先执行 ` /analyze-issue ` 或 ` /analyze-security `
177206
1782072 . ** 人工检查点** :
179208 - 这是一个** 必须** 的人工检查点
@@ -192,12 +221,16 @@ usage: "/plan-task <task-id>"
192221
193222## 相关命令
194223
195- - ` /analyze-issue <number> ` - 分析 Issue(前置步骤)
196- - ` /implement-task <task-id> ` - 实施任务(后续步骤)
224+ ** 前置步骤** :
225+ - ` /analyze-issue <number> ` - 分析 GitHub Issue
226+ - ` /analyze-security <alert-number> ` - 分析 Dependabot 安全告警
227+
228+ ** 后续步骤** :
229+ - ` /implement-task <task-id> ` - 实施任务
197230- ` /task-status <task-id> ` - 查看任务状态
198231
199232## 错误处理
200233
201234- 任务不存在:提示 "任务 {task-id} 不存在,请检查任务ID"
202- - 缺少需求分析:提示 "需求分析文档不存在,请先执行 /analyze-issue"
235+ - 缺少需求分析:提示 "需求分析文档不存在,请先执行 /analyze-issue 或 /analyze-security "
203236- plan.md 已存在:询问是否覆盖或创建新版本
0 commit comments