Skip to content

feat: rate limiting for register, creator payouts, and global IP - #979

Merged
xeeenab merged 2 commits into
InChordSync:mainfrom
Maryermarh:feature/maryermarh-issues
Aug 30, 2026
Merged

feat: rate limiting for register, creator payouts, and global IP#979
xeeenab merged 2 commits into
InChordSync:mainfrom
Maryermarh:feature/maryermarh-issues

Conversation

@Maryermarh

Copy link
Copy Markdown

Closes #833
Closes #834
Closes #835
Closes #836

- Add DB-backed shared-store rate limiter (RateLimitRecord) so multi-instance
  deployments tally limits against a single store; document the in-memory
  limiter's single-instance limitation.
- Add a global IP-based, defense-in-depth limiter in app.ts, layered under the
  per-feature limiters and exempt for health/metrics.
- Add a dedicated per-user withdrawal limiter on POST /api/creator-payouts
  with an enforcement test.
- Add a per-email register limiter and replace the enumerable 409
  EMAIL_ALREADY_REGISTERED with a generic, non-informative response.

Closes InChordSync#833, InChordSync#834, InChordSync#835, InChordSync#836
@drips-wave

drips-wave Bot commented Aug 30, 2026

Copy link
Copy Markdown

@Maryermarh Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@xeeenab
xeeenab merged commit 3937d88 into InChordSync:main Aug 30, 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

2 participants