# Codex 任务拆解模板

核验日期：2026-07-16

## 总任务契约

```md
### 业务问题
用户在表单提交较慢时会重复点击，导致服务端收到重复请求。

### 本轮目标
防止同一页面会话中的重复提交，并保留失败后的重试能力。

### 允许范围
- 表单组件。
- 表单状态测试。
- 与该状态直接相关的类型。

### 禁止范围
- 不改 API 请求与响应契约。
- 不新增生产依赖。
- 不改其他表单或全局样式。

### 验收
- 请求进行中按钮不可再次触发。
- 请求失败后按钮恢复可用。
- 相关测试覆盖成功、失败和重复点击。
- 现有 lint、typecheck、相关 test 通过。
```

## 拆解顺序

### T1 只读调查

- 输入：业务问题、仓库路径、适用 AGENTS.md。
- 操作：定位组件、请求入口、状态管理和测试。
- 输出：相关文件、当前行为、风险、验证命令。
- 禁止：不编辑文件、不安装依赖。
- 完成条件：能解释重复请求的触发路径。

### T2 写失败测试

- 依赖：T1 完成。
- 输入：确认的触发路径。
- 操作：增加重复点击与失败恢复测试。
- 输出：最小测试 diff 和失败证据。
- 完成条件：新测试在旧实现上因预期原因失败。

### T3 最小实现

- 依赖：T2 失败证据成立。
- 操作：只修改必要状态与事件处理。
- 输出：实现 diff。
- 停止条件：需要修改 API 契约、共享状态库或新增依赖。

### T4 验证

- 依赖：T3 完成。
- 操作：运行相关测试、类型检查、lint，阅读 diff。
- 输出：命令、退出状态、手工 QA、未验证项。
- 完成条件：验收项逐条有证据。

### T5 独立 review

- 依赖：T4 通过。
- 操作：只读审查回归、竞态、错误恢复和测试缺口。
- 输出：按严重度排序的发现或“未发现阻塞问题”。

## 任务卡通用字段

```md
### ID 与标题
### 目标
### 前置依赖
### 输入与证据
### 允许修改范围
### 禁止事项
### 操作步骤
### 预期文件变化
### 验证命令
### 完成条件
### 停止与升级条件
### 结果边界
```

## 拆解自检

- [ ] 每个实施任务都能独立验证。
- [ ] 调查与编辑分开。
- [ ] 测试先证明旧行为，再证明修复。
- [ ] 不可逆、高成本或生产操作有人工作为门槛。
- [ ] 并行任务没有写同一文件或占用同一分支。
- [ ] 每个任务都说明未完成时如何停止，不要求掩盖失败。

官方来源：

- https://learn.chatgpt.com/docs/prompting
- https://learn.chatgpt.com/docs/agent-approvals-security
