Follow Discord
Sweep 12 Nov 2026 · 23:00Z Build v2.1.323 540 read Stable v2.1.311 Latest v2.1.323 Next v2.1.323 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.317 ·

Certificate handling keeps cross-certificates a server's chain needs, with an opt-out

Claude Code now keeps system cross-certificates a server's certificate chain needs instead of dropping every looping one, and adds an opt-out

Group of 2 You'll notice Bug Fixes
JSON All of v2.1.317
You'll noticeTier: how much it should matter to you
2Useful: my rating, 1 to 5
2Signal: worth watching, 1 to 5
NetworkArea: what it touches
Bug FixesKind: in v2.1.317,
ImprovementsSection of the release

What

Claude Code connects to the internet over HTTPS, which relies on certificates. Root certificates (CAs) are the trusted starting points, and cross-certificates link one root to another. Some cross-certificates form loops beside a matching root. Before, Claude Code dropped all of these. Now it records the certificates a server sends during a connection and keeps the looping cross-certificates that server's chain needs. The certificates the server sends are used only to choose which system cross-certificates stay. They are not added to the list of trusted roots.

  • CLAUDE_CODE_DISABLE_LOOPED_CROSS_CERT_DROP=1 turns the dropping off and keeps every looping cross-certificate.
  • A cache now remembers certificates already read, so Claude Code does not parse the same one twice.
  • Bundled roots and the system's own certificate store are now read through one shared helper.
  • The check for roots that name themselves now compares certificates directly, and it has a shortcut for when nothing needs dropping.
  • The HTTPS connection pool no longer closes open connections when the set of certificates changes. A separate kind of connection pool is used when connections are set to close after a server error.

Why

This matters most behind corporate proxies that inspect HTTPS traffic, or in companies with their own certificates. Removing a cross-certificate a server's chain depends on can make connections fail. Keeping the ones a chain needs avoids that, and the environment variable gives you a way out if the pruning still causes trouble.

See this entry in the whole of v2.1.317 →

Feedback