auto-sync: 2026-05-30 21:30:31
This commit is contained in:
@@ -257,6 +257,56 @@ Ticker tick 串行执行,明确顺序避免冲突:
|
||||
|
||||
MVP 阶段用 round_count 上限,简单可靠。
|
||||
|
||||
### 4.6 任务状态机完整流转
|
||||
|
||||
两层 review(司马懿 + 庞统)在状态机中的完整路径:
|
||||
|
||||
```
|
||||
─── Sub Task(执行 Agent)───
|
||||
|
||||
pending → claimed → working
|
||||
│
|
||||
▼ Agent 完成 + 三信号检查通过
|
||||
review
|
||||
│
|
||||
▼ 司马懿 review(_dispatch_reviews 确定性路由)
|
||||
┌── done ──┐
|
||||
│ │
|
||||
review 通过 review 不通过 → working(打回重做)
|
||||
│
|
||||
▼
|
||||
(sub task 终态)
|
||||
|
||||
─── Parent Task(庞统三问)───
|
||||
|
||||
parent 下所有 sub task 终态
|
||||
│
|
||||
▼ _check_round_complete 检测
|
||||
reviewing(防重复触发)
|
||||
│
|
||||
▼ _spawn_pangtong_review
|
||||
│
|
||||
├── GOAL_ACHIEVED → done(项目完成)
|
||||
├── 创建新 sub task → working(新一轮执行)
|
||||
└── 方向偏离 → 调整 goal + working
|
||||
```
|
||||
|
||||
**关键规则**:
|
||||
|
||||
| 规则 | 说明 |
|
||||
|------|------|
|
||||
| sub task 终态 = done / failed / cancelled | 司马懿 review 通过 → done;不通过 → 打回 working |
|
||||
| 司马懿 review 是 sub task 的必经关卡 | 每个 sub task 完成后必须过司马懿,通过才算 done |
|
||||
| 庞统 review 是 parent task 的关卡 | 一轮结束后庞统三问,决定继续还是完成 |
|
||||
| 司马懿 spawn 完成后不再触发 _auto_complete | 审查 Agent(司马懿)的 on_complete 回调直接标 done/failed,不走 _task_auto_complete |
|
||||
| 庞统 spawn 完成后走 _handle_review_conclusion | 解析 GOAL_ACHIEVED 或继续新一轮 |
|
||||
|
||||
**为什么审查 Agent 完成后不再触发 _auto_complete**:
|
||||
|
||||
`_auto_complete` 的设计意图是检测"执行 Agent 是否真的完成了工作"(三层幻觉门控)。而审查 Agent(司马懿)是被派来 review 的,他的完成意味着 review 本身完成了,不应该再走一遍"检测是否完成 → 标 review → 又派审查 Agent"的循环。
|
||||
|
||||
实现方式:`_dispatch_reviews` 在 dispatch 审查 Agent 时,通过 `spawn_full_agent` 的 `on_complete` 回调直接标 done/failed,绕过 `_task_auto_complete`。
|
||||
|
||||
---
|
||||
|
||||
## §5. 司马懿 Review 扩展
|
||||
|
||||
Reference in New Issue
Block a user