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
fix(usage): keep last-good numbers through token-refresh gaps + per-cause messages
The usage footer blanked to a vague "사용량 표시 불가" whenever the Claude Code OAuth
access token briefly expired between Claude Code's own refreshes: getUsageWindows
returned 'expired' BEFORE the last-good-cache fallback, discarding perfectly good
recent numbers. A 401 (token rejected server-side) was also lumped into 'offline'.
- On a locally-expired token, fall back to the last-good cache (the numbers don't
change during the few-second refresh gap) instead of blanking; only report
'expired' when nothing is cached at all.
- Map a 401 response to 'expired' (re-login), distinct from 429 ('rate-limited')
and other failures ('offline').
- Surface each transient cause with its own actionable message instead of one vague
line: new pure usageErrorKey() (expired→re-login / rate-limited / offline; null =
hide for not-logged-in / non-subscriber). New locale keys usage.bar_expired /
usage.bar_ratelimited (en/ko/ja/zh).
289 tests (+5). Diagnosed via systematic-debugging; removes the blink the user hit
and makes the rare message say what to do.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments