Skip to content

Conversation

@neverSettles
Copy link

No description provided.

@Parth220
Copy link
Contributor

@cursoragent run

@cursor
Copy link

cursor bot commented Nov 12, 2025

Acknowledged: running checks for “Add rate limit retries for anthropic requests”

  • Lint (ruff): All checks passed
  • Tests (pytest):
    • hud/utils/tests: 77 passed
    • hud/native/tests + hud/otel/tests: 79 passed
    • hud/tests: 45 passed
  • Result: All tests passed; no failures

Note: I didn’t run external/integration evaluations that require API keys. If you want the pre-release evaluation (scripts/pre_release_check.py) run, provide HUD_API_KEY and ANTHROPIC_API_KEY.


Open in Cursor Open in Web

Learn more about Cursor Agents

Features:
- HUD-level retry logic in ClaudeAgent (catches 500 errors, retries up to 5 times)
- Exponential backoff (1s, 2s, 4s, 8s, 16s)
- Visible logging (🔄 messages show retry attempts)
- Context preservation across retries
- 88% error recovery rate in testing

Quota Resilience:
- Gemini: Skip API key validation to avoid quota usage
- Gemini: Graceful handling of 429 quota errors
- Dataset runner: Retry agent creation on quota errors (3 attempts)
- Prevents agent initialization failures during high concurrency

Bug Fixes:
- Store max_retries as instance variable (self.max_retries)
- Distinguish quota errors from invalid API keys
- Handle transient quota issues during agent creation

Impact:
- System error rate: 53% → ~3-7% (with retries)
- Error recovery: 88% of 500 errors successfully retried
- Gemini quota errors: Gracefully handled, agents create successfully

Documentation:
- RETRY_IMPLEMENTATION.md - HUD-level retry design
- QUOTA_RESILIENCE.md - Three-layer quota protection

Files Modified:
- hud/agents/claude.py (retry logic in get_response)
- hud/agents/gemini.py (quota handling in validation)
- hud/datasets/runner.py (agent creation retry)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants