1. 22 Mar, 2026 1 commit
    • alfadb's avatar
      fix(gateway): strip empty text blocks from nested tool_result content · 70a9d0d3
      alfadb authored
      Empty text blocks inside tool_result.content were not being filtered,
      causing upstream 400 errors: 'text content blocks must be non-empty'.
      
      Changes:
      - Add stripEmptyTextBlocksFromSlice helper for recursive content filtering
      - FilterThinkingBlocksForRetry now recurses into tool_result nested content
      - Add StripEmptyTextBlocks pre-filter on initial request path to avoid
        unnecessary 400+retry round-trips
      - Add unit tests for nested empty text block scenarios
      70a9d0d3
  2. 21 Mar, 2026 9 commits
  3. 20 Mar, 2026 29 commits
  4. 19 Mar, 2026 1 commit
    • erio's avatar
      fix(antigravity): correctly mark credits exhausted on "Resource has been exhausted" 429 · 21b6f2d5
      erio authored
      shouldMarkCreditsExhausted was blocked by isURLLevelRateLimit check when
      credit overages retry returned "Resource has been exhausted (e.g. check quota).",
      causing credits to never be marked as exhausted. This led to an infinite loop
      where each request injected credits, bypassed model rate limits, and failed again.
      
      - Remove isURLLevelRateLimit guard from shouldMarkCreditsExhausted (only called
        for credit retry responses — if credits retry fails, mark exhausted)
      - Add "resource has been exhausted" to creditsExhaustedKeywords
      - Update tests to match corrected behavior
      21b6f2d5