[BUG] False "Fable 5 requires usage credits" gate when session starts with expired OAuth token (VS Code WSL)

Status Open
Reported on v2.1.226
Maintainer reply None cached
Activity 0 comments · opened Aug 9, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

Environment: VS Code extension anthropic.claude-code 2.1.226 (linux-x64), WSL2 Ubuntu 24.04 on Windows 11, Claude Max (5x) plan.

What happens: Opening a VS Code WSL session after >8h idle: the startup bootstrap fetches fail with 401 (the OAuth access token has expired — fetchBootstrapData failed: 401 ×3 plus the OAuth profile fetch in the extension log). The model picker then shows "Fable 5 · Requires usage credits", and sending a message fires fable_overage_consent_prompt_shown and force-switches to the default model — even though /usage shows the weekly Fable allowance only 39% used.

The bug: Sending the first message triggers the token refresh (~/.claude/.credentials.json rewritten), and fetchUtilization then returns 200 first-try — but the failed bootstrap is never retried, so the false "requires usage credits" gate persists for the whole session. Running "Developer: Reload Window" after the refresh clears it.

Repro: Leave a WSL-side install unused >8h (token expires) → open a WSL-remote VS Code window → select Fable → send a message. Consistent 100% for me; the Windows-native side (used daily, fresh token) never shows it.

Expected: A 401 on startup bootstrap should trigger a token refresh and retry, not be treated as "no Fable entitlement / credits required."

What Should Happen?

Expected: A 401 on startup bootstrap should trigger a token refresh and retry, not be treated as "no Fable entitlement / credits required."

Error Messages/Logs

Steps to Reproduce

Repro: Leave a WSL-side install unused >8h (token expires) → open a WSL-remote VS Code window → select Fable → send a message. Consistent 100% for me; the Windows-native side (used daily, fresh token) never shows it.

Claude Model

Other

Is this a regression?

Yes, this worked in a previous version

Last Working Version

dont know

Claude Code Version

VS Code extension anthropic.claude-code 2.1.226 (linux-x64), WSL2 Ubuntu 24.04 on Windows 11, Claude Max (5x) plan

Platform

Other

Operating System

Other

Terminal/Shell

WSL (Windows Subsystem for Linux)

Additional Information

Started within three days of today. Not sure of exact day. There was updates involved to both VSCode and Extension afaik.

View original on GitHub ↗