You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
auth: surface refresh-slot read errors in LoadTokens
contextTokenStore.LoadTokens swallowed every error from the refresh-slot
Get, so a transient keyring/file-store failure silently became an empty
refresh token — discarding a valid token and forcing a re-login on what
was really a recoverable storage hiccup. Mirror the access-token handling:
ErrNotFound means no refresh, any other error surfaces.
Adds tokenstore.UseFailingGetBackendForTesting (read-side fault seam) and a
test asserting the error propagates.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
refresh, _:=tokenstore.Get(tokenstore.RefreshService(s.service), s.handle) //nolint:errcheck // an absent refresh token is fine — treated as no-refresh
55
+
// A missing refresh slot is fine (login predating offline_access) — treat
56
+
// it as no-refresh. Any other store error must surface, not be swallowed:
57
+
// dropping it would silently discard a valid refresh token and force a
58
+
// re-login on what was really a transient keyring/file-store failure.
0 commit comments