Files
agent-aide/.aide/task-plans/spec-06.md
2025-12-19 02:30:45 +08:00

218 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 子计划 6返工流程优化
## 目标
优化 Aide 工作流的返工流程,包括:
1. 创建 `rework` skill 提供返工指导
2. 修改 `/aide:run` 命令引用该 skill
3. 修改 aide-program 实现 back-confirm 机制
## 具体步骤
### 6.1 创建 rework skill
**位置**`aide-marketplace/aide-plugin/skills/rework/SKILL.md`
**内容结构**
```markdown
# 返工流程指南
## 返工类型判断
| 返工目标 | 触发条件 | 处理方式 |
|----------|----------|----------|
| task-optimize | 新需求、需求理解偏差 | 更新 task.source |
| flow-design | 架构/流程设计问题 | 更新细则 + new-requirements.md |
| impl | 实现问题 | 更新细则 + new-requirements.md |
| verify | 验证未通过 | 更新细则 + new-requirements.md |
## 返工到 task-optimize 阶段
### 流程
1. `aide flow issue "准备返工: [原因简述]"`
2. 更新 task.source 文档:
- 插入用户新需求原文
- 记录提出时机
- 添加 LLM 建议(可选)
3. 提醒用户
4. 执行 `aide flow back-confirm --key [key]`
5. 执行 `aide flow back-part task-optimize "[原因]"`
### task.source 更新格式
在文档末尾添加:
```markdown
---
## 返工记录 [时间戳]
### 用户反馈
[用户原文]
### 提出时机
[在哪个阶段/步骤提出]
### LLM 建议
[如有]
```
## 返工到其他阶段
### 流程
1. `aide flow issue "准备返工前处理需求整合: [原因简述]"`
2. 创建/更新 new-requirements.md
- 记录用户新需求原文
- 记录提出时机
3. 更新细则文档:
- 在导览部分添加返工声明
- 梳理:已完成项、未完成项、需重新处理项
- 处理需求冲突
- 融入新需求
- 删除返工声明
4. 提醒用户
5. 执行 `aide flow back-confirm --key [key]`
6. 执行 `aide flow back-part [阶段] "[原因]"`
### new-requirements.md 格式
```markdown
# 新需求记录
## 返工 [时间戳]
### 用户反馈
[原文]
### 提出时机
[阶段/步骤]
### 影响分析
- 已完成项:[列表]
- 未完成项:[列表]
- 需重新处理:[列表]
### 冲突处理
[如何处理与原细则的冲突]
```
## 提醒用户
### 返工到 task-optimize
> 我将会对 task-now.md 进行更新,加入您的新需求和我的建议,然后更新流程状态返工到 task-optimize 阶段。建议您在流程状态返工后使用 `/exit` 结束本次对话,重新启动一个新的对话执行 load+run我将会自动接续任务的处理。
### 返工到其他阶段
> 我将会对 new-requirements.md 进行更新,加入您的新需求和我的建议,然后处理好您的新需求和原细则的需求冲突整合,然后更新流程状态返工到 [阶段] 阶段。建议您在流程状态返工后使用 `/exit` 结束本次对话,重新启动一个新的对话执行 load+run我将会自动接续任务的处理。
## 确认机制
返工前必须完成确认流程,详见 aide flow back-confirm 命令说明。
```
### 6.2 修改 /aide:run 命令
**位置**`aide-marketplace/aide-plugin/commands/run.md`
**修改内容**
在 confirm 阶段的返工流程部分添加:
```markdown
#### 6.3 返工流程
当用户发现问题或有新需求时:
**触发 rework skill**
加载 `rework` skill 学习返工流程指南,按照指南完成返工处理。
```
### 6.3 修改 aide-programback-confirm 机制
**位置**`aide-program/aide/flow/` 模块
**新增命令**`aide flow back-confirm --key <key>`
**实现逻辑**
1. **back-part 命令修改**
- 执行前检查是否有待确认的 back 请求
- 如无确认,输出提示并生成随机 key
- 记录目标阶段和原因到状态文件
- 要求 LLM 确认已完成准备工作后执行 back-confirm
2. **back-confirm 命令实现**
- 验证 key 是否匹配
- 匹配成功后:
- 读取状态文件中的目标阶段和原因
- 清理状态文件(删除 `.aide/back-confirm-state.json`
- 执行 back-part 操作
- 暂存所有更改:`git add .`
- 创建清洁提交:`git commit -m "[aide] 返工前清洁提交"`
- 输出警告:建议用户 `/exit` 重新对话
**数据流**
```
LLM 请求 back-part flow-design "设计遗漏"
aide 检测未确认,记录目标和原因,生成 key "abc123",输出提示
LLM 完成准备工作后,执行 back-confirm --key abc123
aide 验证 key 成功 → 清理状态文件 → 执行 back-part → 创建清洁提交 → 输出警告
结束LLM 无需第三次请求)
```
### 6.4 状态存储
**位置**`.aide/back-confirm-state.json`
**格式**
```json
{
"pending_key": "abc123",
"target_part": "flow-design",
"reason": "设计遗漏,需要补充",
"created_at": "2025-12-19T10:00:00+08:00"
}
```
> 注:验证成功后直接执行并清理状态文件,无需 confirmed 字段
## 验证标准
- [ ] rework skill 内容完整,指导清晰
- [ ] /aide:run 正确引用 rework skill
- [ ] `aide flow back-part` 在未确认时生成 key 并记录状态
- [ ] `aide flow back-confirm --key` 正确验证 key 并直接执行 back-part
- [ ] 执行后创建清洁提交
- [ ] 输出正确的警告信息
- [ ] 状态文件在完成后被清理
## 依赖
- 前置:无(独立任务)
- 后续:无
## 风险评估
- **风险等级**:中
- **潜在影响**
- 确认机制增加操作复杂度
- 清洁提交可能与用户 git 工作流冲突
- **缓解措施**
- 提供清晰的操作提示
- 清洁提交信息明确标注来源
- 文档说明机制目的