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.239 Home All releases olderv2.1.238 v2.1.240newer
Claude Code v2.1.239

File uploads report why they failed and stop retrying forever

You'll notice
Useful3 Signal2
File Sync

Failed uploads now name the reason and stop retrying after a fixed number of attempts.

What

A failed file upload now carries a machine-readable reason alongside the error: file_read, too_large, auth, forbidden, network or canceled. Retries stop after a fixed number of attempts rather than looping on transient errors.

Details
  • Filenames are sanitized in the upload's multipart header: ", carriage return and line feed become percent escapes.
  • An upload-from-bytes entry point was added for callers that already hold the content.
  • A separate git helper now classifies a shallow clone as complete, cut or unborn by reading the repository's shallow file.
Evidence

Upload succeeded but no file ID returned

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.239 →