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

Prompt cache markers skip ephemeral messages

You'll notice
Useful3 Signal2
Compaction

Short-lived messages no longer invalidate the prompt cache, so more context gets reused.

What

Cache markers, which decide how much of a conversation the model can reuse between requests, now step over ephemeral user messages when placing themselves, so short-lived messages do not invalidate the cache.

Details
  • Ephemeral user messages are treated like system entries during the backwards walk.
  • The trailing-system optimisation is refused if an ephemeral user message sits in between.
  • Fork-point pinning is skipped entirely when a top-level cache control is supplied.
Evidence

(fe.type === "user" && fe.ephemeral === !0)

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

Related

Other releases about the same thing. Found by shared names or similar wording; neither means one caused the other.

See this entry in the whole of v2.1.248 →