[eric] agents: mid-turn provider backoff shows a muted retrying pill instead of a dead card, and transient pills survive session status frames

This commit is contained in:
ciregenz
2026-08-09 14:01:11 -07:00
parent 8fdc1fa2f9
commit 5eca1df72d
5 changed files with 91 additions and 2 deletions
@@ -13,6 +13,7 @@ import {
updateSessionContext,
setContextOverflow,
setRateLimited,
setProviderRetrying,
setContextRecovered,
setAppDepsChanged,
setMcpSuggestions,
@@ -644,6 +645,17 @@ class WebSocketManager {
}
break;
case 'agent:provider_retrying':
// Mid-turn CLI backoff: the provider 500/429'd and the CLI is silently waiting; show the muted pill so the card doesn't read as dead (ENG-178).
if (session_id) {
store.dispatch(setProviderRetrying({
sessionId: session_id,
attempt: typeof data.attempt === 'number' ? data.attempt : null,
delayMs: typeof data.delay_ms === 'number' ? data.delay_ms : null,
}));
}
break;
case 'agent:rate_limited':
// Provider throttle that outlasted the silent backoff. Transient muted pill, not a card; auto-clears frontend-side.
if (session_id) {