diff --git a/open-sse/handlers/chatCore.ts b/open-sse/handlers/chatCore.ts index c8b2815b46..e8157a5c0f 100644 --- a/open-sse/handlers/chatCore.ts +++ b/open-sse/handlers/chatCore.ts @@ -1437,7 +1437,9 @@ export async function handleChatCore({ const cachedUsage = extractUsageFromResponse(cached as Record, provider) || ((cached as Record)?.usage as Record | undefined); - const cachedCost = cachedUsage ? await calculateCost(provider, model, cachedUsage as Record) : 0; + const cachedCost = cachedUsage + ? await calculateCost(provider, model, cachedUsage as Record) + : 0; persistAttemptLogs({ status: 200, tokens: (cached as Record)?.usage, diff --git a/open-sse/services/compression/caveman.ts b/open-sse/services/compression/caveman.ts index 9a27c12e24..d88182348a 100644 --- a/open-sse/services/compression/caveman.ts +++ b/open-sse/services/compression/caveman.ts @@ -216,12 +216,9 @@ function cleanupArtifacts(text: string): string { } function recapitalizeSentences(text: string): string { - return text.replace( - /(^|[.!?]\s+|^\s+)([a-z])/gm, - (_match, prefix: string, char: string) => { - return `${prefix}${char.toUpperCase()}`; - } - ); + return text.replace(/(^|[.!?]\s+|^\s+)([a-z])/gm, (_match, prefix: string, char: string) => { + return `${prefix}${char.toUpperCase()}`; + }); } function createCavemanStats( diff --git a/open-sse/services/compression/validation.ts b/open-sse/services/compression/validation.ts index d8c801cdf1..8a39537665 100644 --- a/open-sse/services/compression/validation.ts +++ b/open-sse/services/compression/validation.ts @@ -85,7 +85,10 @@ export function validateCompression(original: string, compressed: string): Valid ); requireExactPresence( "LaTeX block", - collectMatches(original, /\\begin\{[A-Za-z*]{1,50}\}(?:(?!\\end\{)[^])*\\end\{[A-Za-z*]{1,50}\}/g), + collectMatches( + original, + /\\begin\{[A-Za-z*]{1,50}\}(?:(?!\\end\{)[^])*\\end\{[A-Za-z*]{1,50}\}/g + ), compressed, errors ); diff --git a/src/lib/db/migrations/041_compression_tokens.sql b/src/lib/db/migrations/041_compression_tokens.sql new file mode 100644 index 0000000000..f2ccc3251e --- /dev/null +++ b/src/lib/db/migrations/041_compression_tokens.sql @@ -0,0 +1,4 @@ +-- Migration 041: Add tokens_compressed to call_logs +-- Tracks how many tokens were removed by proactive context compression. +-- NULL = compression not applied. N > 0 = tokens eliminated. +ALTER TABLE call_logs ADD COLUMN tokens_compressed INTEGER DEFAULT NULL;