Source Intelligence

DisclaimerUnofficial, and not affiliated with Anthropic. Nearly all of this is read straight out of what ships: npm bundles, captured prompts, published docs. Anthropic's own notes go in verbatim, marked as theirs. The rest is my reading, and every entry carries the strings behind it. If one looks wrong, vote it down and say why.

All of v2.1.248 Home All releases olderv2.1.247 v2.1.250newer
Claude Code v2.1.248

Cache-breakpoint planner learns about top-level cache_control

Not switched on
Useful1 Signal2
Elsewhere

Prompt-cache breakpoint placement avoids doubling up, but the path it guards is switched off.

Fork-point cache pinning needs server flags and experimental betas; both off here.

What

The planner that places prompt-cache breakpoints now knows when a request already carries a top-level cache_control block, and in that case skips the extra breakpoint it would place at the conversation fork point, staying under the API's breakpoint budget. That fork pin is itself off in this build: both it and its step-back behaviour read server-side flags whose fallback is off, and both additionally require experimental betas enabled, so with no server values no fork pin is placed and the new suppression has nothing to suppress.

Details
  • The planner also takes a second new argument that disables the fork pin outright.
  • Separately, the check deciding whether system-prompt cache_control may be marked on API system messages collapsed from a per-provider matrix (first-party plus Bedrock, Vertex and others) to "not skipping cache writes and experimental betas not disabled", so it is no longer provider-restricted.
Evidence

topLevelCacheControl

Strings lifted out of the shipped bundle, so the claim above can be checked against them.

See this entry in the whole of v2.1.248 →