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
The session enters an unrecoverable death loop when Anthropic returns overloaded_error responses. The session retries the same failing request indefinitely (97 error responses logged in one incident), never falls back to alternative models, and never gives up. The session appears "alive" to the gateway (no crash) but stops processing new user messages entirely.
Version: OpenClaw 2026.3.28 (f9b1079) Severity: HIGH (recurring, user-facing, no auto-recovery) Occurrences: 4+ times over 9 days
Reproduction
User sends a message in a Discord channel session
Anthropic API returns overloaded_error for claude-opus-4-6
Session retries same request → gets same error → retries again
Loop continues indefinitely (97+ retries observed over ~30 min)
Session stops processing ANY new incoming Discord messages
Session file stops growing after retries exhaust — zombie state
All 97 error responses logged as stopReason: "error" with input: 0, output: 0, totalTokens: 0.
Four Bugs
1. No fallback on overloaded_error
Agent has a full fallback chain configured (Opus 4-5 → Sonnet 4-5 → Haiku 4-5 → Sonnet 4-6 → GPT-5.4 → Codex → DeepSeek → Gemini Flash), but overloaded_error never triggers fallback. The session keeps hammering the same dead primary model.
2. No retry limit / circuit breaker
97 retries with no cap. Should give up after 3-5 retries and either fall back or post an error message.
3. Session zombie state after error loop
After exhausting retries, the session enters a state where:
Gateway considers it "active" (no crash reported)
New Discord messages are received by gateway but NOT routed to the session
Session file stops growing
Gateway restart does not recover it
Only /new fixes it
4. Silent failure — no user feedback
The bot simply stops responding. No error message, no typing indicator, nothing. User has to discover the problem themselves and go to another channel to ask.
Suggested Fixes
Classify overloaded_error as fallback-eligible — After N retries (3?), trigger fallback to next model
Add retry limit — Max 5-10 retries before giving up on a turn
Post error to channel — After exhausting retries + fallbacks, send a visible message: "⚠️ Having trouble right now, try again in a moment"
New messages should cancel retry loop — Incoming user message should abort the current retry and process the new message instead
Session health monitoring — 10+ consecutive errors → flag in openclaw status
Workaround
From another session, use message(action=send, target=chat, message="...") to push a reply through. Then /new in the affected channel to reset.
Summary
The session enters an unrecoverable death loop when Anthropic returns
overloaded_errorresponses. The session retries the same failing request indefinitely (97 error responses logged in one incident), never falls back to alternative models, and never gives up. The session appears "alive" to the gateway (no crash) but stops processing new user messages entirely.Version: OpenClaw 2026.3.28 (f9b1079)
Severity: HIGH (recurring, user-facing, no auto-recovery)
Occurrences: 4+ times over 9 days
Reproduction
overloaded_errorforclaude-opus-4-6/new(session reset) in the channel recoversError Payload (every retry)
{ "type": "error", "error": { "details": null, "type": "overloaded_error", "message": "Overloaded" } }Evidence
Session transcript shows:
08:28:40— Last successful response (stopReason=stop)08:30:43— Firstoverloaded_error(0 tokens in/out)08:31:33— Retry with partial thinking (10 output tokens) then error09:01:36— Still retrying (retry Discord: fix Clawdis not sending "typing" notifications in replies #97+), allstopReason=errorAll 97 error responses logged as
stopReason: "error"withinput: 0, output: 0, totalTokens: 0.Four Bugs
1. No fallback on overloaded_error
Agent has a full fallback chain configured (Opus 4-5 → Sonnet 4-5 → Haiku 4-5 → Sonnet 4-6 → GPT-5.4 → Codex → DeepSeek → Gemini Flash), but
overloaded_errornever triggers fallback. The session keeps hammering the same dead primary model.2. No retry limit / circuit breaker
97 retries with no cap. Should give up after 3-5 retries and either fall back or post an error message.
3. Session zombie state after error loop
After exhausting retries, the session enters a state where:
/newfixes it4. Silent failure — no user feedback
The bot simply stops responding. No error message, no typing indicator, nothing. User has to discover the problem themselves and go to another channel to ask.
Suggested Fixes
overloaded_erroras fallback-eligible — After N retries (3?), trigger fallback to next modelopenclaw statusWorkaround
From another session, use
message(action=send, target=chat, message="...")to push a reply through. Then/newin the affected channel to reset.