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

The debug log's latest pointer is now requested from the storage backend

Under the hood
Useful1 Signal2
Internals

The debug log's latest pointer is now requested from storage, with a fallback if refused.

What

Instead of creating a latest symlink itself, the debug logger asks the storage layer to mark the current log as latest, once per process. If the backend rejects that request, the logger remembers the refusal, retries the write without it, and warns that latest will not be pointed for the rest of the process. Only taken when the newer storage path is active, which is decided once at startup; otherwise the old symlink is used.

Details
  • The option is validated as a boolean and accepted only for a session's debug log, described as is offered only on a session's debug log ({ namespace: 'log', channel: 'debug', sessionId }).
  • The append helper now returns landed, refused or dropped rather than a bare true/false, so a backend that does not know the option is distinguishable from a real write failure.
  • Refusal is detected specifically as an invalid-argument error naming the option.
Evidence

debug log: the storage backend refused markLatest; <debug folder>/latest is not pointed in this process, is offered only on a session's debug log ({ namespace: 'log', channel: 'debug', sessionId }), s.error.argument === "opts.markLatest"

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 →