gemini-cli fix: monthly spending cap 429s now treated as terminal quota errors, ending retry loops

kabishou11 · ghdev · 2026-09-29

A P2 PR for gemini-cli fixes a quota-handling bug: when a 429 had empty details and the message indicated a project-level monthly spending cap, classifyGoogleError fell through to RetryableQuotaError, so the TUI kept retrying a non-transient error, resetting the attempt counter and looping the notice. The classifier now returns TerminalQuotaError for spending-cap messages on HTTP 400/429/499 before the fallback, and the quota dialog preserves the original API message instead of "high demand". Ordinary rate limits, 503s, and capacity exhaustion are unchanged; validated with 49 + 36 passing tests.

Original post →

More from coding & agent

coding & agent channel →