Description Problem Description
当前长期记忆自动提取存在两个连续缺陷:
去重仅是精确匹配,语义相近但措辞不同的记忆会重复沉淀。
提取输入来自会话全量后再 recent window 截断,而不是当前 run 边界,导致跨 run 混入。
这会导致记忆噪声持续累积,召回质量下降。
Current Defects
runtime 在 run 结束后传入的是 session.Messages,不是 run-slice。
memo 提取窗口依赖固定 extract_recent_messages,承担了不该承担的边界职责。
去重键是 exact key(type+title+content)+ payload fingerprint,不具备语义收敛能力。
Expected Changes
提取边界改为“当前 run transcript”,recent window 仅作 run 内裁剪。
自动提取后增加模型语义去重 pass(全量检查)。
去重命中后保留一条并合并内容;删除重复条目。
覆盖全部来源(含 UserManual),但当簇内存在 UserManual 时,UserManual 必须作为 canonical。
仅高置信重复结论才允许自动改写;低置信只记录并跳过。
模型来源复用当前 selected_provider/current_model,不新增配置项。
runtime -> memo 调度边界改造:
将 MemoExtractor.Schedule(sessionID, messages) 升级为携带 run 语义边界的输入(推荐新增 runID 和 run-slice 消息)。
在 Run 收敛时只传当前 run transcript 给 memo,不再传全会话消息。
memo 去重链路升级:
保留现有 exact dedup(低成本第一层)。
在 extractAndStore 完成新增后,追加 semantic dedup pass(全量检查)。
去重流程:分组(按 Type)-> 模型判簇 -> canonical 选择 -> 合并字段(keywords/content)-> 删除重复 topic/index 引用。
canonical 规则:簇内存在 UserManual 时优先它;否则按模型建议。
置信门槛:仅高置信执行改写;中低置信仅记录日志并跳过。
配置与接口:
先不新增配置项,复用当前 memo 提取模型链路。
增加内部常量化阈值与日志字段(如 semantic_dedup_hit、semantic_dedup_skip_low_confidence)。
文档更新:
更新 docs/tools-and-tui-integration.md,明确“按 run 边界提取 + 每轮后语义去重”。
Acceptance Criteria
同一事实的同义改写不再重复沉淀。
本轮提取不混入历史 run 消息。
包含 UserManual 的重复簇,最终保留 UserManual 条目。
低置信判重不改写数据。
现有 exact dedup / fingerprint dedup / remember-skip 行为不回退。
Related Areas
internal/runtime/run.go
internal/runtime/memo.go
internal/memo/auto_extractor.go
internal/memo/service.go
internal/memo/llm_extractor.go
internal/context/projection.go
docs/tools-and-tui-integration.md
Reactions are currently unavailable
You can’t perform that action at this time.
Problem Description
当前长期记忆自动提取存在两个连续缺陷:
这会导致记忆噪声持续累积,召回质量下降。
Current Defects
runtime在 run 结束后传入的是session.Messages,不是 run-slice。memo提取窗口依赖固定extract_recent_messages,承担了不该承担的边界职责。Expected Changes
Acceptance Criteria
Related Areas
internal/runtime/run.gointernal/runtime/memo.gointernal/memo/auto_extractor.gointernal/memo/service.gointernal/memo/llm_extractor.gointernal/context/projection.godocs/tools-and-tui-integration.md