Operator inference-cost tracker under ?ops - #6
Merged
Merged
Conversation
- Record token usage per inference call: call_inference captures the API usage block (even on empty responses — those tokens were still billed) and aggregate_once logs each call to a new additive inference_usage table (no migration; existing DBs gain it on next open). - Price it: LLM_PRICES + inference_cost_usd (gpt-5.6-luna $0.20/M in, $1.20/M out; local/unknown models free). read_feed sums per-model tokens over 1H/24H/7D/30D windows and attaches the dollar cost to the pipeline payload. - Show it: an operator-only cost row in the header, gated by ?ops like the rest of the telemetry (hidden for public visitors). - Tests for usage capture (incl. empty-response), pricing, and windowed sums. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds an operator-only inference cost tracker (Hourly / Daily / Weekly / Monthly) behind the
?opsflag.call_inferencecaptures the APIusageblock (even on empty responses, since those tokens are still billed);aggregate_oncelogs each call's tokens to a newinference_usagetable. Pure-additive V2 schema — no migration, existing DBs gain it on next open.LLM_PRICES+inference_cost_usd(gpt-5.6-luna= $0.20/M in, $1.20/M out; local/unknown models free).read_feedsums per-model tokens over 1H/24H/7D/30D windows and attaches the dollar cost to the pipeline payload.?opsexactly like the pipeline-health strip and status pill (verifiedflexunder?ops,nonefor public).Tests
New coverage for usage capture (including the empty-response path), pricing, and the windowed token sums. Suite green except pre-existing environment-only failures (Linux systemd service-handoff tests; one macOS socket-timing flake).
🤖 Generated with Claude Code