zen: fix parsing cache write tokens

This commit is contained in:
Frank
2025-09-25 17:02:21 -04:00
parent b207ed2b7b
commit 6e712f9faf
2 changed files with 8 additions and 6 deletions

View File

@@ -161,7 +161,6 @@ export async function handler(
logger.metric({ time_to_first_byte: Date.now() - startTimestamp }) logger.metric({ time_to_first_byte: Date.now() - startTimestamp })
} }
responseLength += value.length responseLength += value.length
console.log(decoder.decode(value, { stream: true }))
buffer += decoder.decode(value, { stream: true }) buffer += decoder.decode(value, { stream: true })
const parts = buffer.split("\n\n") const parts = buffer.split("\n\n")

View File

@@ -30,22 +30,25 @@ export function POST(input: APIEvent) {
let json let json
try { try {
json = JSON.parse(data.slice(6)) as { usage?: Usage } json = JSON.parse(data.slice(6))
} catch (e) { } catch (e) {
return return
} }
if (!json.usage) return // ie. { type: "message_start"; message: { usage: Usage } }
// ie. { type: "message_delta"; usage: Usage }
const usageUpdate = json.usage ?? json.message?.usage
if (!usageUpdate) return
usage = { usage = {
...usage, ...usage,
...json.usage, ...usageUpdate,
cache_creation: { cache_creation: {
...usage?.cache_creation, ...usage?.cache_creation,
...json.usage.cache_creation, ...usageUpdate.cache_creation,
}, },
server_tool_use: { server_tool_use: {
...usage?.server_tool_use, ...usage?.server_tool_use,
...json.usage.server_tool_use, ...usageUpdate.server_tool_use,
}, },
} }
}, },