Skip to content

fix(devin): honor rate-limit reset times and scope quota cooldowns - #291

Merged
caigee-cmd merged 1 commit into
mainfrom
fix/devin-rate-limit-reset
Oct 11, 2026
Merged

caigee-cmd merged 1 commit into
mainfrom
fix/devin-rate-limit-reset

Conversation

@caigee-cmd

Copy link
Copy Markdown
Owner

Summary

  • Parse Devin's quota reset from the response body (reset in 13 minutes / (at 18:13 UTC)), preferring a Retry-After header when present. Devin sends the reset in the body only.
  • Treat usage quota exhaustion as an account-wide quota rather than a per-model rate limit, so the account cools as a whole instead of the error being misread.
  • Let the executor replace its local-midnight quota fallback with the parsed upstream reset, while keeping quota account-wide and non-failover.

Test plan

  • go test ./...
  • go vet ./...
  • go test -race ./...
  • python3 scripts/release-notes.py validate
  • Added changelog/unreleased/devin-rate-limit-reset.md
  • No tokens, auth blobs, raw captures, or host details in the diff

Devin reports its model rate-limit reset in the response body
("reset in 13 minutes" / "(at 18:13 UTC)") and sends no Retry-After.
Parse the body hint, and prefer a Retry-After header when present.

Classify usage-quota exhaustion as an account-wide quota instead of a
model rate limit, and let the executor replace its local-midnight
fallback with the parsed reset so the account cools for exactly as long
as the upstream says.
@caigee-cmd
caigee-cmd merged commit 6cf7e4e into main Oct 11, 2026
6 checks passed
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.

1 participant