WangDL 82fcaa1f2f
All checks were successful
Deploy API Server / build-and-deploy (push) Successful in 59s
fix: replace RateLimitService with global RateLimitGuard
RateLimitService could not be injected into feature modules due to
NestJS DI module isolation. Replaced with a global Guard that uses
@RateLimit() decorator metadata to apply per-endpoint limits.

- RateLimitGuard: checks Redis counters, throws 429 on exceed
- Decorators: LoginRateLimit, FeedbackRateLimit, AiAnalysisRateLimit,
  FileUploadRateLimit
- Applied to: auth (login), feedback, ai-analysis, files endpoints

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-18 10:23:19 +08:00
..