Follow Discord
Sweep 06 Nov 2026 · 01:32Z Build v2.1.319 537 read Stable v2.1.311 Latest v2.1.318 Next v2.1.319 Feeds RSS JSON llms.txt llms-full.txt Unofficial

Claude Code v2.1.271 ·

OAuth token refresh now tracks a separate 'opted-in' bucket for non-first-party logins

401 handling and OAuth token refresh now track sessions that use login off the first-party service in their own dedup bucket

Group of 2 Under the hood Internal Changes
JSON All of v2.1.271
Under the hoodTier: how much it should matter to you
1Useful: my rating, 1 to 5
1Signal: worth watching, 1 to 5
AuthArea: what it touches
Internal ChangesKind: in v2.1.271,
Internal ChangesSection of the release

Unclear The finding does not explain what a 'login off first-party' session is or when it applies.

What

The 401 (unauthorized) retry handler and the OAuth credential-refresh logic now carry an explicit usesLoginOffFirstParty flag through the refresh flow.

  • The 401 retry handler and its refresh-dedup helper gained a usesLoginOffFirstParty option, using a new helper that checks whether login isn't happening through the first-party service, to build a distinct dedup key.
  • Pending refresh checks for these sessions are now tracked in a separate pendingOptedInRefreshChecks map instead of the regular pendingRefreshChecks map.
  • The core OAuth-401 recovery function now takes an explicit usesLoginOffFirstParty parameter (default false) and passes it into the credential-refresh call, which determines which of the two pending-check buckets the refresh is tracked in.

Why

Separating refresh tracking for non-first-party logins avoids mixing their dedup state with regular first-party refresh checks, which keeps concurrent token-refresh attempts from being incorrectly deduplicated against each other.

How sure we are
Something disagreesSomething we can check disagrees with this entry, or the writer said they could not settle it.
The writer flagged doubtThe finding does not explain what a 'login off first-party' session is or when it applies.

See this entry in the whole of v2.1.271 →

Feedback