Files
DevFlow/docs/02-架构设计/专项设计/ai-chat上下文管理与信息组织完善设计-2026-10-18.md
lxy 0317873a5b 文档: 上下文管理设计/对标u-claw差距分析与看板登记
- 专项设计:M1-M4四批修复蓝图+对标u-claw六能力画像与P0-P2补差
- 看板:M1销账(验收证据)/收尾令/对标P0-P2条目登记
2026-10-19 00:25:52 +08:00

5.1 KiB
Raw Permalink Blame History

ai-chat 上下文管理与信息组织·完善设计(2026-10-18)

用户令:ai-chat agent 上下文管理/信息组织开发完善;回复别太口水话(2026-10-18)。 证据输入(问题全量论证在彼,此处只引编号不重复):temp/深查-aichat对话质量复测-2026-10-17.md(E1-E13)、temp/深查-aichat信息UX-2026-10-17.md(F1-F6)。 现状判定:10-04 三大病(上下文失控/反复压缩/终局缺失)基本治愈;残量集中在恢复链污染、终局态半闭环、存量脏数据、信息可达性、输出纪律五个结构性面。

一、信息流模型与缺口定位

链路:发起(直发/inject) → 目标提取(pinned_goals) → 上下文组装(system+摘要+近期) → 执行循环 → 压缩(view/cache) → 恢复(recovery) → 投影(轮桶/轨迹卡) → 呈现(桌面/飞书)

缺口 根因(结构性,非散点) 归并的散点
G-A 恢复链身份未建模 恢复消息无类型标记,兼具「系统信号」与「用户输入」双重身份,被目标提取源再次吸收 E1 套娃、E3 二次恢复、看板 649 行恢复目标完整性守卫
G-B 终局态半闭环 boundary_json/loop_state 字段已建、写入闭环未建(填充率 0) P2-5、E3 竞态窗口
G-C 写入不保数据语义 写入方各自为政,全量重写/双写不保留原义 E11 created_at 重写污染 1750 条、E5 存量目标不迁移、E12 双写
G-D 信息可达性瓶颈 呈现层硬上限+折叠体内不可见 F4-1 会话 50 上限(实测 115 条已击穿)、F1-3+F3-2 注入降级藏审批、F6-1
G-E 输出纪律缺失 聚焦准则管「答什么」,不管「怎么答」——主提示词无回复风格条款 用户口水话反馈(本次令);摘要提示词已有该纪律可对齐
G-F 阴性结论无守卫 工具 0 命中被当事实断言,无复核引导 E6 假阴性 3 轮错判链

二、修复批次(领单视角,M1 先行)

M1 · P1 上下文正确性

  1. E1+E3 恢复链治本(G-A):恢复消息加 source 标记(与看板 961② inject 标记同基建,复用 V52 source 字段);build_recovery_message 过滤 [系统恢复] 前缀目标;目标写入侧拒收同前缀。防二次恢复:快照全部目标=completed 时短路,或恢复后 N 分钟窗口禁重复。
  2. E11 created_at 保义(G-C):message_repo.rs:285 全量重写保留原 created_at(records 读取带出原值回写)。
  3. E6 阴性存疑(G-F):search_files/grep 0 命中时结果强制附「阴性存疑,建议复核路径/glob」标记(seq 1549 hint 雏形转正)。
  4. E4 跑题换装验证:三源活跃度排序已在树(第五十三段),换装后重放 6a5a3e04 seq1802 场景验证。

M2 · P2 上下文域

  1. E5 存量目标一次性迁移(G-C):active 目标命中「执行/搜索/查看+工具参数」形态或 [系统恢复]/[补充指令] 前缀 → 降级为非目标或重取首条任务消息。
  2. E2 压缩降级透出:压缩失败兜底时前端状态条「上下文已降级」,禁静默。
  3. E13 超时连败收敛:同命令超时连败 N 次转「换方案/问用户」分支(与看板 B5d 退避策略同族,合并实施)。
  4. P2-5 终局闭环(G-B):停靠/终局时填充 boundary_json/loop_state,不只落 status。

M3 · P2/P3 信息组织域

  1. F4-1 会话可达性(G-D):列表 offset 游标分页+侧栏「加载更多」;搜索走后端 LIKE(title+消息内容)。
  2. F5-1+F5-2 飞书审批闭环(同根一改双收):决议词表归一(trim/剥标点/同义词,复用 normalize_halfwidth)+ 订阅 AiToolCallCompleted 推终态卡;pending 为空时决议回「已失效」提示而非静默放行。
  3. F1-3+F3-2 折叠体可达(G-D,同根):executing 判定改「桶内存在 running/pending 工具」;scrollToFirstPending 前按 data-trace-key 预展开含 pending 的轨迹卡。

M4 · 输出纪律+UX 小批

  1. G-E 提示词输出纪律:system_prompt_parts 行为准则追加「回复风格」段——结论先行直接给动作/结果;省略复述用户问题、客套开场、总结性收尾;要点优先于段落;用户没问的不展开。中英双语同步+测试断言(对齐 prompt.rs 既有测试范式)。注意别过度约束:需要解释时照常解释,反的是空话不是内容。
  2. UX 确定性小批:F1-1 i18n 补键 / F1-2+F3-1 主题 token 化 / F2-1 aria-label / F4-2 loaded 标志 / F6-2+F6-3 Esc 关闭 / 看板尾部队列带图项标记(10-18 残留)。

三、验收口径

  • 复测脚本复跑(复用 temp/复测-aichat质量-1017/ 脚本,timestamp 列口径):恢复消息套娃=0、created_at 污染增量=0、boundary_json 填充率>0(新停靠会话 100%)。
  • 可达性:115 条活跃会话全量可从侧栏到达;审批卡在任何折叠形态下 scrollToFirstPending 均可见。
  • 输出纪律:3 个真实会话抽查,开场复述/空收尾/无信息客套=0;结论仍在首屏。
  • 每批销账附验收命令输出(G4 惯例)。