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

Snapshot staging verifies each copied file by hash and nanosecond timestamps

Under the hood
Useful2 Signal1
Checkpoints

Snapshot copies are hash- and timestamp-checked so a half-written file is not recorded as good.

What

Files copied into a snapshot are now checked to make sure they did not change during the copy: contents are hashed with sha256 while being read, and file size and nanosecond mtime/ctime are compared before and after. A mismatch marks the file as changed rather than recording a torn copy.

Details
  • The recorded identity of a copy moved from millisecond ctime to nanosecond ctime plus an identity value.
  • Refusals carry a momentary flag separating transient causes (unreadable parent directory, unclassified system error) from permanent ones.
  • The old "changed while being read" refusal is gone; such a file is now returned as changed instead.
  • Case-insensitive or Unicode-normalization collisions between two changed paths are refused with their own message.
  • Optional before-open and after-read hooks were added to the staging options.
Evidence

collides with another changed path that differs only in case or normalization

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 →