fix: 修复同会话跨模型缓存键不命中问题

移除 prepareRequestBody 中非 default sessionId 时的 model 前缀拼接,
使同一会话内切换模型时能复用缓存,与注释中'弱化 model 依赖'的设计意图一致。

Closes #328
This commit is contained in:
lly835 2026-02-26 01:18:32 +08:00
parent f6c9881926
commit 022e345d68

View file

@ -310,13 +310,11 @@ export class CodexApiService {
delete cleanedBody.metadata;
// 生成会话缓存键
// 默认弱化 model 依赖,以提升同会话跨模型的缓存命中率
// 如果 sessionId 为 'default',则必须加上 model 以提供基础隔离
// 弱化 model 依赖,以提升同会话跨模型的缓存命中率
// 仅当 sessionId 为 'default' 时加上 model 前缀,提供基础隔离
let cacheKey = sessionId;
if (sessionId === 'default') {
cacheKey = `${model}-default`;
} else {
cacheKey = `${model}-${sessionId}`;
}
let cache = this.conversationCache.get(cacheKey);