--- at 1691 |----------| | **协调者** | Coordinator | 总调度:驱动阶段流转、分发任务、记录重试次数、触发升级 | 全部阶段产出物 + `runlog.md` | 阶段调度决策、`runlog.md` 更新 | | **规划者** | Planner | Stage 1:产出项目整体方案与阶段目标 | 本文档 §0、现有 specs、代码基线 | `stage1-plan.md` | | **目标定义者** | Goal-Setter | 每个阶段开头:定义该阶段目标 + 可量化验收标准 | 上一阶段产出、本文档对应章节 | `st --- at 1712 * | Coordinator | 总调度:驱动阶段流转、分发任务、记录重试次数、触发升级 | 全部阶段产出物 + `runlog.md` | 阶段调度决策、`runlog.md` 更新 | | **规划者** | Planner | Stage 1:产出项目整体方案与阶段目标 | 本文档 §0、现有 specs、代码基线 | `stage1-plan.md` | | **目标定义者** | Goal-Setter | 每个阶段开头:定义该阶段目标 + 可量化验收标准 | 上一阶段产出、本文档对应章节 | `stageN-acceptance.md` | --- at 3735 *必须携带上一次的 FAIL 原因**(Reviewer 的具体条目),禁止无差别重跑。 - 计数与状态统一记录在 `docs/specs/agent-run/runlog.md`。 ### 1.4 上下文传递规范 **总原则:文件即接口。** Agent 之间不靠"记忆"传递,全靠落盘的 Markdown/JSON 产出物。 - 产出目录统一:`docs/specs/agent-run/` - `runlog.md` — 调度总账(阶段、attempt、PASS/FAIL、时间戳、blocker) - `stage1-plan.md`、` --- at 3861 gent 之间不靠"记忆"传递,全靠落盘的 Markdown/JSON 产出物。 - 产出目录统一:`docs/specs/agent-run/` - `runlog.md` — 调度总账(阶段、attempt、PASS/FAIL、时间戳、blocker) - `stage1-plan.md`、`stage2-feature-list.md`、`design-*.md`、`dev-*-report.md`、`stage4-test-report.md`、`stageN-acceptance.md`、`stageN-review.md` - 每个 --- at 10298 板(简短可用) **Coordinator(父 Agent 自持)** ``` 你是 Coordinator。读取 docs/specs/agent-run/runlog.md 与本文档。 按 Stage 1→5 顺序调度 subagent。每阶段:先派 Goal-Setter 定验收标准, 再派执行 Agent(可并行),最后派 Reviewer 验收。 FAIL 则回退对应 Agent 并 attempt+1;attempt=3 标 BLOCKED 并升级人工。 每次调度后更新 runlog.md。 ``` **Goal-Setter** ``` --- at 10463 后派 Reviewer 验收。 FAIL 则回退对应 Agent 并 attempt+1;attempt=3 标 BLOCKED 并升级人工。 每次调度后更新 runlog.md。 ``` **Goal-Setter** ``` 你是 Goal-Setter,负责 Stage {N}「{阶段名}」。 读取:{上一阶段产出}、本文档 §{章节}。 产出 stageN-acceptance.md:给出可量化、可勾选的验收标准(DoD), 对齐北极星指标(§0.5)。禁止空泛描述。 ``` **Designer(以前端为例)** ``` 你是 Design --- at 11630 ← 本文档 └── agent-run/ ← 所有 Agent 运行产出 ├── runlog.md ├── stage1-plan.md ├── stage1-acceptance.md / stage1-review.md ├── stage2-feature-list.md ├── design-{ocr,api,frontend,phonics}.md ├── stage2-acceptance.md / stage2-revie --- at 12257 --- ## 8. 失败处理与升级策略 ### 8.1 3 次失败后的处理 1. Coordinator 将该任务单元标记 `BLOCKED`,写入 `runlog.md`(阶段、模块、3 次 FAIL 原因摘要)。 2. 生成升级报告 `docs/specs/agent-run/escalation--.md`,包含: - 三次尝试分别做了什么、Reviewer 三次的未通过条目 - 根因推测与 2-3 个候选解决方向 - 需要人工决策的具体问题 3. **暂停该分支**,但不阻塞其它并行分支继续 --- at 12670 分歧(如是否引入数据库、是否重写拼读数据结构)——属**范围变更**,必须人工确认。 - 涉及删除数据/破坏性操作。 ### 8.3 恢复 人工处理后,在 `runlog.md` 将该单元 attempt 重置为 0 并标 `RESUMED`,Coordinator 从对应阶段续跑。 --- ## 附录 A:runlog.md 建议表头 ```markdown | 时间 | Stage | 模块 | Agent | attempt | 结论 | 备注/回退指向 | |------|-------|------|-------|---------|- --- at 12748 `runlog.md` 将该单元 attempt 重置为 0 并标 `RESUMED`,Coordinator 从对应阶段续跑。 --- ## 附录 A:runlog.md 建议表头 ```markdown | 时间 | Stage | 模块 | Agent | attempt | 结论 | 备注/回退指向 | |------|-------|------|-------|---------|------|---------------| ``` ## 附录 B:一次典型循环(Stage 2 为例) 1. Coordinator 派 Goal-S