1.7 KiB
1.7 KiB
子代理卡片计划进度
目标
当子代理通过 update_plan 更新计划时,把精简进度同步到父会话的子代理卡片;页面刷新后仍可恢复,并在完成回归后安全重启 ccweb。
阶段
| 阶段 | 状态 | 验收标准 |
|---|---|---|
| 1. 补充子代理计划进度失败回归 | complete | 回归能证明当前缺少子代理计划同步与卡片展示 |
| 2. 暴露并复用计划通知解析 | complete | 子代理和父代理使用同一套计划通知解析逻辑 |
| 3. 实现子代理计划状态同步与持久化 | complete | 子代理公开状态、工具状态、恢复状态都包含精简计划 |
| 4. 实现卡片简版进度渲染 | complete | 卡片显示进度点、完成数和当前步骤 |
| 5. 更新 V2 mock 与集成断言 | complete | mock 子代理发送计划通知,集成回归验证父会话收到状态 |
| 6. 运行回归和静态检查 | complete | JS 语法、diff 检查和 60 秒内全量回归通过 |
| 7. 检查运行会话、重启并验收 | complete | 无其他运行会话时重启,PM2、HTTP 和线上资源正常 |
关键决策
- 继续复用
ccweb_mcp_child_agent_update,不新增 WebSocket 消息类型。 - 子代理只向父卡片暴露
{ completed, total }与当前in_progress步骤,不复制完整计划项。 - 计划事件解析集中在
codex-app-runtime,避免父、子线程各维护一套协议兼容逻辑。 - 保留工作区中用户和上一任务的既有改动,仅在相关区域增量修改。
错误记录
| 错误 | 尝试 | 处理 |
|---|---|---|
| Plan List 回归仍从 wrapper 提取 DOM 契约,抽取 helper 后断言失败 | 1 | 契约改为检查 createPlanProgressElementFromProgress |