Skip to content

Seven money-affecting fixes are unreleased; v0.7.33 still bills by the old arithmetic #437

Open

Description

@argszero

The gap

The newest release is tag v0.7.33 (commit 9a83181). main is 24 commits ahead of it, and seven of those change what a request costs or what prices the catalogue can express. A deployer running v0.7.33 today is billed by the arithmetic that shipped before any of them.

This is filed so the gap is visible next to the fixes, not to ask for a tag: .github/workflows/docker-publish.yml fires on a tag and the release decision is the maintainer's.

Verified against the repository, not assumed:

git merge-base --is-ancestor 357ab01 v0.7.33   # -> false (not released)
git merge-base --is-ancestor 41ca047 v0.7.33   # -> false
git merge-base --is-ancestor a49f130 v0.7.33   # -> false
git rev-list --count v0.7.33..main             # -> 24

What a v0.7.33 deployer is charged today

Unreleased commit PR Effect on a v0.7.33 deployment Direction
ada9043 #412 Weekends and configured holidays are billed at the peak rate overcharges
eadfb9f #413 Four catalogue prices are wrong, one of them a cache-hit price written as 0 undercharges
496a723 #416 Tiered prices and a cache-write price cannot be expressed in config.toml at all cannot express
544cf86 #417 A long input is settled at the first (lowest) tier regardless of its length undercharges
357ab01 #433 Cache-write (cache-creation) tokens are billed at zero, so the platform absorbs that cost undercharges
41ca047 #434 The admin model editor cannot set cache_write_input_per_m, so an operator on this tag cannot even opt in cannot express
a49f130 #436 Streaming Anthropic responses report input_tokens net of the cache-read subtraction, so uncached input is undercounted undercharges

Two further unreleased commits change the catalogue roster rather than the arithmetic — 983111c (#414, the four international vendors become selectable) and b7d19ea (#415, current-generation models). Until they ship, an operator on v0.7.33 cannot list those vendors or models.

A worked example of the widest one

#436, at the catalogue prices for claude-sonnet-5.5 ($2.00 input / $0.10 cache-read / $10.00 output per million). A streamed call reporting input=2,000, cache_read=60,000, output=1,000:

  • correctly settled: $0.020000
  • as v0.7.33 settles it: $0.016000 — the uncached segment clamps to zero, because the cache-read amount is subtracted from an input_tokens that never included it

That is 0.0288 points, roughly 20% of the call, and the gap widens with the cached share. #433 compounds it on the same call: the cache-creation segment is billed at zero.

Scope note

Stated so this issue is not read as broader than it is:

  • It does not ask for a release, a version bump or a tag.
  • It does not cover dev or prod: what those environments run is a deployment decision tracked outside this repository.
  • Nothing here is a defect in main — every item listed is fixed on main and unreleased. The defect is the distance between v0.7.33 and main.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions