Follow Discord
Sweep 22 Oct 2026 · 21:04Z Build v2.1.309 528 read Stable v2.1.308 Latest v2.1.309 Next v2.1.309 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.222 ·

Design OAuth refresh distinguishes lock contention from failure

Design sign-in refreshes no longer report a failure when another process just got there first.

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

A refresh that loses the cross-process lock race is now reported as contention rather than as a failed refresh, and a compromised lock can still succeed.

Details
  • New DesignOauthLockContendedError marks the case where another process holds the refresh lock.
  • On a compromised lock the stored token is re-read and accepted if it is still fresh.
  • New telemetry codes: design_oauth_refresh_lock_contention, _lock_compromised, _lock_error.
Evidence

Design OAuth lock contention: another process is holding the refresh lock

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

Feedback