[Bug] Transient advisor() failure permanently disables tool for entire session

Open 💬 0 comments Opened Jul 5, 2026 by firattanrikulu

Bug Description
Title: A single transient advisor()/subagent failure locks the tool for the entire session

What happened:
The advisor() tool (configured via advisorModel: fable) failed once — appearing to be a transient backend blip (Fable overload / rate limit). After that single failure, the tool returned a "do not retry" state and remained unavailable for the rest of the session. There was no way to retry within the same session.

Expected behavior:
A transient/one-off backend failure should not permanently disable the tool for the whole session. It should either retry with backoff, or at minimum recover on a subsequent call once the transient condition clears.

Actual behavior:
One transient failure → tool locked session-wide → recovery only possible by starting a brand-new session.

Repro / confirmation:
Starting a fresh session immediately restored the tool — the very first advisor() call in the new session succeeded. This confirms the failure was transient and that the persistent unavailability was a session-scoped lock, not a live/ongoing backend incident.

Impact:
A momentary blip costs the user the advisor for the entire session, which is a significant reliability/usability regression for anyone relying on the advisor workflow.

Suggested fix:
Make transient failures retryable within the sessset the lock on the next call) rather than latching into a permanent per-session disabled state.

Environment Info

  • Platform: darwin
  • Terminal: vscode
  • Version: 2.1.201
  • Feedback ID: 154c604c-de11-4d39-879d-0f028a533b51

Errors

[]

View original on GitHub ↗