auto-sync: 2026-06-01 22:41:30
This commit is contained in:
@@ -290,16 +290,74 @@ def mock_spawner():
|
||||
| F3 | ✅ | ✅ 11 | ✅ | ✅ 11/11 | ✅ 通过 |
|
||||
| F4 | ✅ | ✅ 14 | ✅ | ✅ 14/14 | ✅ 通过 |
|
||||
| F5 | ✅ | ✅ 23 | ✅ | ✅ 23/23 | ✅ 通过(附 1 条意见) |
|
||||
| F6 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F7 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F8 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F9 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F10 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F11 | ✅ 本文档 | ⬜ 本文档 | ⬜ | — | — |
|
||||
| F12 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F6 | ✅ 本文档 | ✅ 17 | ✅ | ✅ 通过 | ✅ |
|
||||
| F7 | ✅ 本文档 | ✅ 5 | ✅ | ✅ 通过 | ✅ |
|
||||
| F8 | ✅ 本文档 | ✅ 4 | ✅ | ✅ 通过 | ✅ |
|
||||
| F9 | ✅ 本文档 | ✅ 16 | ✅ | ✅ 通过 | ✅ |
|
||||
| F10 | ✅ 本文档 | ✅ 13 | ✅ | ✅ 通过 | ✅ |
|
||||
| F11 | ✅ 本文档 | ✅ 10 | ✅ | ✅ 通过 | ✅ |
|
||||
| F12 | ✅ 本文档 | ✅ 13 | ✅ | ✅ 通过 | ✅ |
|
||||
| F13 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F14 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F15 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F15 | ✅ 本文档 | ✅ 4 | ✅ | ✅ 通过 | ✅ |
|
||||
| F16 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F17 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
| F17 | ✅ 本文档 | ✅ 6 | ✅ | ✅ 通过 | ✅ |
|
||||
| F18 | ✅ 本文档 | ⬜ 待设计 | ⬜ | — | — |
|
||||
|
||||
---
|
||||
|
||||
## 八、v2.8 新增测试(2026-06-01 更新)
|
||||
|
||||
> 覆盖 #07 Spawner Acquire-First + Prompt v3.0 + _check_timeouts 统一
|
||||
|
||||
### F6-ext: Ticker _check_timeouts 增强(新增 4 个测试)
|
||||
|
||||
| # | 测试用例 | P0 | 验证点 |
|
||||
|---|---------|-----|-------|
|
||||
| T-ext1 | crash_limit 统一检查(working) | ✅ | executor crash 3 次/30min → _check_timeouts 标 failed |
|
||||
| T-ext2 | crash_limit 统一检查(review) | ✅ | reviewer crash 3 次/30min → _check_timeouts 标 failed |
|
||||
| T-ext3 | updated_at fallback | ✅ | mail auto-working 无 started_at → updated_at fallback → 超时回收 |
|
||||
| T-ext4 | process_dead 对 review 状态 | ✅ | review agent 进程死 → 保持 review(不推 pending) |
|
||||
|
||||
### F9-ext: Spawner Acquire-First(新增 6 个测试)
|
||||
|
||||
| # | 测试用例 | P0 | 验证点 |
|
||||
|---|---------|-----|-------|
|
||||
| T-ext1 | Phase 0 Pre-acquire revive | ✅ | timeout/failed → revive → acquire 成功 |
|
||||
| T-ext2 | Phase 0 假死检测 | ✅ | status=running + lock PID 死 → revive |
|
||||
| T-ext3 | Phase 1 Counter acquire 互斥 | ✅ | 并发 spawn → 第二个 AgentBusyError(counter_blocked) |
|
||||
| T-ext4 | Phase 2 Session check 锁保护 | ✅ | acquire 后 → session locked → release counter → AgentBusyError(session_locked) |
|
||||
| T-ext5 | Phase 2 多 blockers 收集 | ✅ | locked + compact → detail.blockers 列表 |
|
||||
| T-ext6 | Phase 3 on_checks_passed 异常回滚 | ✅ | 回调异常 → counter 自动 release |
|
||||
|
||||
### F9-ext2: Compact Hanging + Retry(新增 3 个测试)
|
||||
|
||||
| # | 测试用例 | P0 | 验证点 |
|
||||
|---|---------|-----|-------|
|
||||
| T-ext1 | compact_hanging release counter | ✅ | compact 超限 → 不标 failed → release counter → 任务保持 working |
|
||||
| T-ext2 | compact_hanging ticker 重新 dispatch | P1 | compact_hanging → ticker 超时 → pending → 重新 dispatch |
|
||||
| T-ext3 | retry 遇 busy 释放 counter | ✅ | _do_retry 遇 AgentBusyError → release counter → 任务保持 working |
|
||||
|
||||
### F9-ext3: AgentBusyError 分类(新增 3 个测试)
|
||||
|
||||
| # | 测试用例 | P0 | 验证点 |
|
||||
|---|---------|-----|-------|
|
||||
| T-ext1 | counter_blocked | ✅ | counter acquire 失败 → reason=counter_blocked |
|
||||
| T-ext2 | session blockers | ✅ | session locked/running/compacting → reason + detail.blockers |
|
||||
| T-ext3 | Dispatcher 错误区分 | ✅ | AgentBusyError → 路由决策记录具体原因 |
|
||||
|
||||
### 设计文档引用
|
||||
|
||||
- `docs/design/07-spawner-acquire-first.md`:#07.1 Acquire-First、#07.2 Executor/Review 统一、#07.3 Startup Recovery
|
||||
- `docs/design/03-prompt-evolution.md`:Prompt v3.0 任务式指挥
|
||||
- `docs/design/06-pm2-crash-recovery.md`:PM2 crash 恢复设计(启动恢复机制,待实施)
|
||||
|
||||
### E2E 测试文件映射
|
||||
|
||||
| 文件 | 覆盖范围 | 状态 |
|
||||
|------|---------|------|
|
||||
| `tests/test_e2e_v27.py` | E1-E10 API + 状态机 + 真实 Agent | ✅ 已有 |
|
||||
| `tests/test_e2e_v31.py` | v3.1 E2E 集成 | ✅ 已有 |
|
||||
| `tests/test_e2e_four_phase.py` | #01 四相循环 E2E | ✅ 已有 |
|
||||
| `tests/test_four_phase_unit.py` | #01 四相循环单元测试 | ✅ 已有 |
|
||||
| E11-E15 新增用例 | 待添加到 test_spawner.py / test_ticker.py / test_dispatcher.py | ⬜ 本轮更新 |
|
||||
|
||||
Reference in New Issue
Block a user