dsh-context-compactor v0.5.6
dsh-context-compactor v0.5.6
修复:所有会话点击“压缩总结”都提示“当前会话没有可用的压缩引擎”
- 根因(两个):
- 引擎构造器 bug:DetailedCompactionEngine 构造函数在 super() 之前就访问 his._contextWindowOverrides,JS 派生类直接抛 ReferenceError: Must call super constructor...。导致每个会话的引擎挂载都失败 —— 这就是“没有可用引擎”的元凶。
- 宿主层若已装配 oolResultPruner / compaction 服务,重复挂载会报“服务已注册”。
- 修复:
- 把 his 访问全部挪到 super() 之后;
- 改为宿主级单引擎(apply 时挂载一次,服务所有会话,不再依赖 agent/created 事件、不再 per-agent isolate);
- 已有宿主 oolResultPruner / compaction 服务时直接复用,避免冲突。
- 自检结果(真实运行 /compact):
- 空会话:No compactable history yet.
- 非空闲会话:压缩暂时不可用:已有一个压缩在进行,或 agent 当前不空闲。(正常业务提示)
- 成功会话1:Compacted 33 history items (~22535 tokens).
- 成功会话2:已【全局详细总结】并压缩 51 条历史(约 41992 tokens)。
- 不再出现“没有可用的压缩引擎”。
请重启 DSH 使 v0.5.6 干净装载。