fix(sdk): take max of OpenRouter cost and upstream_inference_cost - #1175
fix(sdk): take max of OpenRouter cost and upstream_inference_cost#1175nordicnode wants to merge 1 commit into
Conversation
usage.cost is the total amount charged and already contains the upstream portion reported separately in cost_details.upstream_inference_cost, so summing the two roughly doubles the credits on normal (non-BYOK) OpenRouter routes — the shape behind the inflated-usage reports. The ledger side already takes the max (see the Solar Pro 4 BYOK note in common/src/constants/freebuff-models.ts, where cost is 0 and upstream carries the real spend); this fixes the user-facing credit path the same way at all three sites (stream, generateText, structured). Fixes CodebuffAI#1164
|
Good instinct and scoped correctly — One thing worth flagging for the maintainer to weigh: Overall: focused, in-scope, has a test, addresses a real reported issue (#1164) with a concrete before/after fixture. Worth porting, with the max-vs-sum edge case called out during review. |
Summary
usage.cost + cost_details.upstream_inference_costat all three cost sites (sdk/src/impl/llm.tsstreamingreportCost,generateText, and structured paths)usage.costis the total amount charged and already includes the upstream portion reported separately incost_details, per OpenRouter's usage accounting docs — summing them roughly doubles credits on normal (non-BYOK) OpenRouter routes, which lines up with the "extreme inflation" reports on Discordcommon/src/constants/freebuff-models.ts: cost = 0 there and upstream carries the real spend, so max is correct for both shapes)cost=0.01, upstream=0.02(fails under the sum: 3 vs 2)Fixes #1164
Validation
Re-run on the new main after the history rewrite:
bun test sdk/src/impl/__tests__/usage-receipts.test.ts— 5 pass, 0 failbunx tsc --noEmit -p sdk/tsconfig.jsoncleanReplaces #1165 — auto-closed when the repo history was force-pushed (the original commits no longer exist in the new history). Rebased onto the new main per the maintainer's request; picking the review up here.