Merged
Conversation
… on late enable Two related FITB#122 bugs in the local-fallback UX surface: nesquena#122 #6 — Reactive failover modal never appears on provider failure The frontend ELIGIBLE_TYPES set was {stream_interrupted, rate_limit, no_response, unknown}. The original comment said auth/quota errors are excluded because "local model can't fix the user's wrong key / empty wallet." That misread the value: local fallback REPLACES broken cloud entirely so the user can keep working, regardless of why cloud broke. Auth and quota are exactly when the fallback offer makes sense. Backend (api/streaming.py) actually emits these types: 'auth_mismatch', 'quota_exhausted', 'stream_interrupted', 'no_response'. The previous 'rate_limit' entry was dead — backend never emits it. Reconciled with the real backend vocabulary. nesquena#122 #7 — Recovery banner never appears after enabling fallback startRecoveryPolling() was only called from boot, gated on the /api/local-fallback/status check at page load. The most common user flow — provider failure → enable fallback in Settings → correct API key → expect banner — never started polling, because at page-load fallback was off. Fix: panels.js's onLocalFallbackToggle now dispatches a 'fitb:fallback-enabled' window event after a successful enable, fallback-polish.js's boot listens for it and calls startRecoveryPolling. The function is already idempotent (returns early if the timer is set), so this is safe alongside the existing boot-time call for the steady-state case.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Two FITB#122 fixes — see commit message