Skip to content

fix: raise 429 rather than 503 when enforcing rate-limit#8765

Merged
carodewig merged 5 commits intodevfrom
caroline/fix-rate-limit-status-code
Dec 16, 2025
Merged

fix: raise 429 rather than 503 when enforcing rate-limit#8765
carodewig merged 5 commits intodevfrom
caroline/fix-rate-limit-status-code

Conversation

@carodewig
Copy link
Contributor

@carodewig carodewig commented Dec 16, 2025

In #6486, the rate-limit error was changed from 429 (TOO_MANY_REQUESTS) to 503 (SERVICE_UNAVAILABLE). Our docs still claim a 429 should be returned; this PR makes that change (2feebe8, 6bf70ab).

As part of this, I also refactored the map_future_with_request_data calls to simplify them and emphasize that they just perform error handling for a specific type of error. Happy to revert if requested (1b55dcb).

I also added a test to ensure that the rate-limiting and timeout layers work together, and return different errors (44a167b).


Checklist

Complete the checklist (and note appropriate exceptions) before the PR is marked ready-for-review.

  • PR description explains the motivation for the change and relevant context for reviewing
  • PR description links appropriate GitHub/Jira tickets (creating when necessary)
  • Changeset is included for user-facing changes
  • Changes are compatible1
  • Documentation2 completed
  • Performance impact assessed and acceptable
  • Metrics and logs are added3 and documented
  • Tests added and passing4
    • Unit tests
    • Integration tests
    • Manual tests, as necessary

Exceptions

Note any exceptions here

Notes

Footnotes

  1. It may be appropriate to bring upcoming changes to the attention of other (impacted) groups. Please endeavour to do this before seeking PR approval. The mechanism for doing this will vary considerably, so use your judgement as to how and when to do this.

  2. Configuration is an important part of many changes. Where applicable please try to document configuration examples.

  3. A lot of (if not most) features benefit from built-in observability and debug-level logs. Please read this guidance on metrics best-practices.

  4. Tick whichever testing boxes are applicable. If you are adding Manual Tests, please document the manual testing (extensively) in the Exceptions.

@carodewig carodewig requested a review from a team December 16, 2025 16:19
@apollo-librarian
Copy link

apollo-librarian bot commented Dec 16, 2025

✅ Docs preview has no changes

The preview was not built because there were no changes.

Build ID: a2b9114f9665d03915adb96e
Build Logs: View logs

@github-actions

This comment has been minimized.

@carodewig carodewig requested a review from a team as a code owner December 16, 2025 16:22
@carodewig carodewig merged commit 4762684 into dev Dec 16, 2025
15 checks passed
@carodewig carodewig deleted the caroline/fix-rate-limit-status-code branch December 16, 2025 17:11
@abernix abernix mentioned this pull request Jan 27, 2026
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