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.234 Home All releases olderv2.1.233 v2.1.235newer
Claude Code v2.1.234

Empty or malformed API responses now report what actually answered

You'll notice
Useful4 Signal3
API Errors

A junk API response now names what actually answered and suggests checking for a proxy or gateway.

What

When the API returns something that is not a message, the error now fingerprints the responder instead of failing bare, and suggests checking for a proxy or gateway intercepting the request. Two new structured log events, cli_api_error and cli_api_retry, carry the same detail. This is aimed at corporate gateways sitting in front of the API.

Details
  • The fingerprint records content-type bucket, body kind (event stream, HTML, XML, JSON served under the wrong content type, and so on), byte size, and whether the request id looks Anthropic-issued.
  • A server-header classifier covers roughly 20 intermediaries including cloudflare, envoy, zscaler, squid, haproxy, netskope, bluecoat and big-ip, plus Apigee fault source and code taxonomies and the set of intermediary headers seen.
  • The log events include a route block: provider, whether the base URL is the default, an Anthropic one or custom, and whether an https proxy, custom headers, extra CA certificates or a client certificate are in use.
  • No flag guards this; it sits on the normal API error paths.
Evidence

check for a proxy or gateway intercepting the request.

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