fix(agent): preserve modelIsFromFallback when callers omit isFromFallback

Align modelIsFromFallback with the existing fallback pattern used by
modelProvider and model fields: fall back to the existing entry value
instead of hardcoding false when the caller does not supply the flag.
This prevents a contextTokensUsed-only update from silently clearing
a valid fallback state.
This commit is contained in:
Jerry-Xin 2026-03-16 16:08:24 +08:00
parent 447fe8ac7a
commit 8f670357fa

View File

@ -88,7 +88,7 @@ export async function persistSessionUsageUpdate(params: {
const patch: Partial<SessionEntry> = {
modelProvider: params.providerUsed ?? entry.modelProvider,
model: params.modelUsed ?? entry.model,
modelIsFromFallback: params.isFromFallback ?? false,
modelIsFromFallback: params.isFromFallback ?? entry.modelIsFromFallback,
contextTokens: resolvedContextTokens,
systemPromptReport: params.systemPromptReport ?? entry.systemPromptReport,
updatedAt: Date.now(),
@ -124,7 +124,7 @@ export async function persistSessionUsageUpdate(params: {
const patch: Partial<SessionEntry> = {
modelProvider: params.providerUsed ?? entry.modelProvider,
model: params.modelUsed ?? entry.model,
modelIsFromFallback: params.isFromFallback ?? false,
modelIsFromFallback: params.isFromFallback ?? entry.modelIsFromFallback,
contextTokens: params.contextTokensUsed ?? entry.contextTokens,
systemPromptReport: params.systemPromptReport ?? entry.systemPromptReport,
updatedAt: Date.now(),