Refactor AI query logging to handle serialization errors gracefully and improve async task management

This commit is contained in:
Aadesh Kheria 2026-05-05 13:15:17 -07:00
parent 2e78347464
commit 0cedc495d7
2 changed files with 3 additions and 3 deletions

View File

@ -51,7 +51,7 @@ export function handleStreamMode(ctx: ModeContext & {
text,
usage,
providerMetadata,
openrouterGenerationId: response?.id,
openrouterGenerationId: response.id,
});
logIfMcpToolCall({
mcpCallMetadata,
@ -142,7 +142,7 @@ export async function handleGenerateMode(ctx: ModeContext & {
text: result.text,
usage: result.usage,
providerMetadata: result.providerMetadata,
openrouterGenerationId: result.response?.id,
openrouterGenerationId: result.response.id,
});
const responseConversationId = mcpCallMetadata != null ? conversationIdForLog : undefined;

View File

@ -142,7 +142,7 @@ export function logAiQuerySuccess(args: {
inputTokens: usage.inputTokens ?? undefined,
outputTokens: usage.outputTokens ?? undefined,
cachedInputTokens: extractCachedTokens(providerMetadata),
cacheCreationTokens: usage.inputTokenDetails?.cacheWriteTokens ?? undefined,
cacheCreationTokens: usage.inputTokenDetails.cacheWriteTokens ?? undefined,
costUsd: rawCost.costUsd ?? extractOpenRouterCost(providerMetadata),
cacheDiscountUsd: undefined, // backfilled by refineGenerationCost below
openrouterGenerationId,