Claude Fable 5.1: pricing entry with the 0.025x cache-read exception - #80
Merged
Merged
Conversation
szjanikowski
pushed a commit
that referenced
this pull request
Sep 5, 2026
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018vLdNDXktXCC5brNXSZTfe
claude-fable-5-1 at $10/$50 per 1M tokens, 1-hour cache write $20, and a cache read rate of $0.25 — 0.025x base input, where every other Claude model reads at 0.1x. That exception is published per-model on the pricing page, so the catalog header and a dedicated test pin it down: on our cache-heavy grids (93–98% of input is cache reads) treating it as 0.1x would overstate a Fable 5.1 run's cost by roughly 3.5x. All Claude entries re-verified against the pricing page on 2026-09-04 and their as_of bumped; the two economics tests that assert the stamped as_of follow. gpt entries unchanged (still 2026-06-08). Also records the missing CHANGELOG entry for claude-sonnet-5 (#78). Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018vLdNDXktXCC5brNXSZTfe
Trial qoVXn7k (ddd-threshold-discount, claude-vanilla / claude-fable-5-1 at xhigh, reward 1.0): 1.16M prompt tokens of which 1.07M cache reads, 30.5k output. Our cost_usd and Harbor's own per-step accounting agree to the cent at $3.57704175 — both apply the 0.025x read rate. Reading at 0.1x would have produced $4.38 on the same token mix. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018vLdNDXktXCC5brNXSZTfe
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018vLdNDXktXCC5brNXSZTfe
szjanikowski
force-pushed
the
pricing/fable-5-1
branch
from
September 9, 2026 12:32
e10b3f1 to
5488bd1
Compare
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.
Adds
claude-fable-5-1to the bundled price catalog and re-verifies every Claude entry against the official pricing page as of 2026-09-04.Targets
main. #78 (which carried theclaude-sonnet-5entry) is merged; this PR still carries the CHANGELOG entry for it, since #78 landed without one.The one thing worth reviewing
Fable 5.1 bills cache reads at 0.025x base input ($0.25/MTok) — every other Claude model reads at 0.1x. This is published per-model on the pricing page, not a typo, and the catalog header says so explicitly to stop a future "consistency fix".
It matters because our runs are cache-heavy (93–98% of input is cache reads):
cost_usdqoVXn7k(threshold)tYW2nM9(weather)Both agree with Harbor to the cent. The 0.1x variant would overstate a weather trial by $2.93.
Changes
pricing.toml:claude-fable-5-1($10/$50, cache write $20, cache read $0.25); all Claudeas_ofbumped to 2026-09-04 (rates themselves unchanged)tests/test_pricing.py: real-trial calibration case pinned totYW2nM9, plus a guard on the 0.25 read ratetests/test_evaluator.py,tests/test_results_exporter.py: the two assertions on the stampedas_ofCHANGELOG.md: entries for Fable 5.1 and the missingclaude-sonnet-5oneVerification
uv run pytest tests/test_pricing.py tests/test_evaluator.py tests/test_results_exporter.py— 105 passed. End-to-end: two real trials (threshold + weather), both reward 1.0, cost table andpricing_used.jsoncorrect. Results inNoesisVision/nasde-results@ee2eb07.Rebased onto
mainafter #78 and #81 merged. Theas_ofconflicts inpricing.tomland the two test assertions resolve in this PR's favour (2026-09-04 supersedes #78's 2026-08-24); theCHANGELOG.mdconflicts were link-reference unions. Full suite green afterwards: 465 passed.🤖 Generated with Claude Code
https://claude.ai/code/session_018vLdNDXktXCC5brNXSZTfe