Also bumps the embedded LiteLLM pricing pin to the revision ccusage locks
in its `flake.lock` at `v20.0.17` (`f27df8d5` -> `49ca04d8`), which the
`updateScript` from the previous commit now keeps in sync automatically.
Assisted-by: Claude Code
Signed-off-by: Miroslav Vadkerti <mvadkert@redhat.com>
The `litellmPricing` fetch pins a `BerriAI/litellm` revision that must
track the `litellm` input in ccusage's own `flake.lock` at the matching
tag, so the embedded pricing table stays byte-identical to what upstream
ships. The previous `nix-update-script { }` only refreshed `version` and
the `src`/`cargo` hashes, leaving the pricing pin untouched — so every
automated (r-ryantm) bump silently shipped stale pricing data.
Replace it with a wrapper that runs `nix-update`, then reads the litellm
revision locked at the freshly-bumped tag and rewrites the new
`litellmPricingRev`/`litellmPricingHash` bindings to match.
Assisted-by: Claude Code
Signed-off-by: Miroslav Vadkerti <mvadkert@redhat.com>
Analyze coding agent CLI token usage and costs from local data.
Packaged from the upstream Rust workspace, which became the primary
implementation in v20.0.0 (earlier Node/pnpm packaging attempts were
abandoned). The crate's build script normally downloads the LiteLLM
pricing table; `CCUSAGE_PRICING_JSON_PATH` is pointed at a pinned copy
fetched separately so the build stays offline and reproducible in the
sandbox.
Assisted-by: Claude Code
Signed-off-by: Miroslav Vadkerti <mvadkert@redhat.com>