2.6 KiB
2.6 KiB
Findings & Decisions
Requirements
- 新增独立任务看板,不影响现有聊天、会话列表、MCP 和 Codex App 行为。
- 普通对话默认不进入任务池;提供“加入任务看板”开关。
- 支持系统固定状态与用户自定义状态。
- Agent 可通过 MCP 主动上报;未上报时由 cc-web 生命周期 Hook 自动分类。
- 归档由用户或服务端策略触发,不允许 Agent 隐式归档。
- 三个实现对话完成后,必须由第四个集成对话统一接线和测试。
- 集成测试通过且无其他 running 对话后才允许重启 cc-web。
Research Findings
- 当前会话列表只有运行态 isRunning,没有任务状态或归档字段。
- cc-web 已能观察 turn started/completed、工具调用、用户输入等待和失败事件,可实现自身 Hook。
- Codex Goal 只适用于 Codex App,不能作为跨 Agent 看板的唯一状态源。
- 多个对话共享同一工作区,中心文件必须避免并发修改。
- 项目必需命令是
node --check与npm run regression;不存在通用 lint/typecheck 脚本。 - Trellis 任务已创建为
.trellis/tasks/08-11-task-board并设为 current。 - 共享数据、WebSocket、MCP、Hook 与文件所有权契约已写入该任务的
info.md。 - 当前来源对话 ID 为
56bb82c6-4fa3-4cb8-bb84-6969e6547d3a,重启门禁只能排除该 ID。
Technical Decisions
| Decision | Rationale |
|---|---|
| 系统状态使用稳定 ID,自定义状态映射到 baseStatus | 标签可编辑,同时保留自动化语义 |
| taskTracking.enabled 控制是否进入任务池 | 关闭时不分类、不展示,也不等于归档 |
| MCP、Hook、UI 共用一个任务状态服务 | 防止三套状态逻辑漂移 |
| Hook 作为 MCP 缺失时的兜底,用户操作优先级最高 | 保证可控并降低误判影响 |
| MCP 对话负责共享 TaskBoardService,Hook 对话只实现事件归约器 | 确保并行可实现且第四个对话可机械集成 |
Issues Encountered
| Issue | Resolution |
|---|---|
| 规划初始化目录名称不理想 | 继续复用,不影响功能代码与最终集成 |
| 首次计划审查未通过 | 按四项阻断意见补齐契约、Trellis、测试和重启门禁后复审 |
Resources
- 参考图:sessions/_attachments/42432a7d-778d-4dca-8156-d5bd651d242d.png
- 项目约束:AGENTS.md、.trellis/workflow.md
- 前端实现对话:b94ec6fe-5438-48a3-9733-4028bfd9198f
- MCP 实现对话:972a6903-4860-4558-9ab0-4e124bffa363
- Hook 实现对话:27651660-a64d-4b01-8606-500468e9c599