# 对话结束后仍显示运行中修复计划 ## 目标 修复 Codex App 对话实际已结束但 cc-web 仍显示“运行中”的偶发状态漂移,确保后续消息不会误走 `steer` 并触发 `no active turn to steer`。 ## 阶段 1. [complete] 定位运行状态结束与再次发送的完整调用链 2. [complete] 补充卡住运行态与 steer 失败的回归用例 3. [complete] 实现终态事件驱动的运行状态收敛 4. [complete] 实现无活动 turn 时的安全发送降级 5. [complete] 运行定向回归与语法静态检查 6. [complete] 执行完整回归并独立审查边界 7. [complete] 核对差异风险并清理临时跟踪文件 ## 验收标准 - turn 正常完成、失败或中断后,会话最终稳定为非运行态。 - 状态漂移时再次发送不会把用户消息永久失败在 `steer`。 - 不引入重复 turn、重复消息或吞掉真实 steer 错误。 - 回归测试覆盖终态缺失/乱序和 `no active turn to steer` 竞态。 - 定向测试、语法检查与完整回归均通过,单次测试最长 60 秒。 ## 约束 - 代码理解优先使用 `codebase-memory-mcp`,`rg` / `nl` 仅做校验。 - 不覆盖现有 `.planning` 任务,不切换共享 Trellis 当前任务指针。 - 未确认其他会话均非 `running` 前不重启 cc-web。 - 代码注释与新增文档使用简体中文。 ## 错误记录 | 错误 | 尝试 | 处理 | |---|---:|---|