feat(context): 优化对话压缩系统

- 添加独立摘要模型配置支持(SUMMARY_PROVIDER/MODEL/API_KEY/BASE_URL)
- 添加 CompressionStatus 枚举和 DetailedCompressionResult 详细返回类型
- 实现压缩失败检测(空摘要、token膨胀)
- 添加首条 user-assistant 对保护,确保上下文连贯性
- CompressionManager 支持独立摘要模型(优先使用小模型降低成本)
- Agent 自动压缩时显示详细状态信息
- 更新相关测试用例
This commit is contained in:
2025-12-13 11:13:20 +08:00
parent 9ff2934089
commit f54f24b079
10 changed files with 495 additions and 102 deletions
@@ -213,7 +213,8 @@ describe('CompressionManager - 压缩管理器', () => {
const result = await manager.compress(messages);
expect(['prune', 'compaction', 'both']).toContain(result.type);
// 小对话不压缩时返回 'none'
expect(['prune', 'compaction', 'both', 'none']).toContain(result.type);
});
});