58 lines
2.6 KiB
Markdown
58 lines
2.6 KiB
Markdown
|
|
# Round 67 多智能体并行实施计划
|
|||
|
|
|
|||
|
|
日期:2026-08-03
|
|||
|
|
|
|||
|
|
## 1. 边界
|
|||
|
|
|
|||
|
|
- W67-MIGRATE 独占:`server/agent_core/approval_migrate.py`。
|
|||
|
|
- W67-TEST 独占:`tests/golden/test_approval_migration.py`。
|
|||
|
|
- 主 agent:GitNexus/Serena 门禁、契约协调、全量回归、真实运行、文档和最终审计。
|
|||
|
|
- worker 不修改彼此文件,不提交,不触碰现场数据。
|
|||
|
|
|
|||
|
|
## 2. 协议约束
|
|||
|
|
|
|||
|
|
- canonical digest 复用 `server.agent_core.approval_store.token_digest`。
|
|||
|
|
- 迁移执行分两阶段:持有文件后端同一 `.lock` 完成全量 load/validate/normalize -> 单 SQLAlchemy Session 事务写入/legacy 修复 -> source digest 复核 -> commit。
|
|||
|
|
- grant 缺 pending request 时从 grant/history 重建 APPROVED request。
|
|||
|
|
- 冲突判断比较不可变身份字段;允许目标状态单调前进,禁止回退覆盖。
|
|||
|
|
- 同时检查 digest/raw-token/confirm_id 三路遗留,canonical event digest 对完整 payload 去重。
|
|||
|
|
- 缺失源文件和损坏源文件必须具有不同结果;未设置 quiesced 必须拒绝。
|
|||
|
|
|
|||
|
|
## 3. Worker 验收
|
|||
|
|
|
|||
|
|
### W67-MIGRATE
|
|||
|
|
|
|||
|
|
- token digest 正确;原 token 不落 DB。
|
|||
|
|
- JSON/schema/记录/引用预检失败关闭。
|
|||
|
|
- 目标冲突失败;一致记录幂等 skipped;合法状态前进不误报。
|
|||
|
|
- legacy raw-token 一致行原子改主键,不一致需人工处置。
|
|||
|
|
- 任一预检或后段故障均整体回滚。
|
|||
|
|
|
|||
|
|
### W67-TEST
|
|||
|
|
|
|||
|
|
- 迁移后 consume once。
|
|||
|
|
- raw token 不落库。
|
|||
|
|
- 损坏 JSON、顶层类型、三类记录非法、引用错误。
|
|||
|
|
- 目标记录不可变字段冲突、状态前进/回退。
|
|||
|
|
- 终态 request 重建、canonical event digest 近似事件、legacy raw-token 修复/冲突。
|
|||
|
|
- quiesced/锁/source digest 与后段故障整体回滚。
|
|||
|
|
- dry-run、缺失文件、幂等旧测试不回归。
|
|||
|
|
|
|||
|
|
## 4. 集成顺序
|
|||
|
|
|
|||
|
|
1. 主 agent 锁定源/目标契约和错误语义。
|
|||
|
|
2. W67-MIGRATE 与 W67-TEST 分离写入并通信对齐。
|
|||
|
|
3. focused -> approval 相关 suites -> full golden。
|
|||
|
|
4. 临时 SQLite 真实迁移/消费证据与现场 hash 保护。
|
|||
|
|
5. detect_changes、文档、独立只读审计。
|
|||
|
|
|
|||
|
|
## 5. Pre-target-merge
|
|||
|
|
|
|||
|
|
仅形成未提交工作区与验收证据;未经授权不 commit/push/merge/release/cleanup。
|
|||
|
|
|
|||
|
|
## 6. 实际执行
|
|||
|
|
|
|||
|
|
- W67-MIGRATE / W67-TEST 均因长时间无回传被关闭;两者已有工作区修改由主 agent 接管,写边界未扩散。
|
|||
|
|
- 主 agent 修复真实 ApprovalStore history 的 `decidedAt` 兼容、orphan grant terminal history 要求、lint 与 legacy payload 身份 blocker。
|
|||
|
|
- 最终:29 focused、74 approval、1053 full golden;计划审计与代码审计均 PASS。
|