Files
cc-web/.planning/subagent-plan-progress/task_plan.md
2026-07-24 08:00:31 +08:00

31 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 子代理卡片计划进度
## 目标
当子代理通过 `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` |