18 Commits (38fa24112d8d8739034558ee16a91efd54fe9645)

Author SHA1 Message Date
Edward Ribeiro 6b6bc810cb Return 403 instead of 429 for IP-prefix blocklist hits; document feature 1 week ago
Edward Ribeiro b9f68e8ee6 Refactor API quota keys from STRING to HASH for memory efficiency 3 weeks ago
Edward Ribeiro 6425354e34 Shard blocked-IP ZSET indexes and add inline pruning 3 weeks ago
Edward Ribeiro 39593f2284 Remove whitelist references from rate limiter plan docs 4 weeks ago
Edward Ribeiro 6ce8d8c4eb Update RATE-LIMITER-PLAN.md with 2026-05-11 post-initial changes 1 month ago
Edward Ribeiro a40d1dfdf4 Update RATE-LIMITER-PLAN.md with 2026-05-11 changes 1 month ago
Edward Ribeiro a33fcc2fe6 Add API-specific rate limiter and remove emergency block middleware 1 month ago
Edward Ribeiro 425519a967 Add rate limiting architecture diagrams to RATE-LIMITER-PLAN.md 1 month ago
Edward Ribeiro 405ba55d32 Update RATE-LIMITER-PLAN.md with 2026-05-06/07 changes 1 month ago
Edward Ribeiro 81cff6141c Add RL_INDEX_BLOCKED_IPS/USERS ZSET indexes and atomic block writes via Lua 1 month ago
Edward Ribeiro 3d0b0ab2fb Add per-consumer API daily/weekly quota and fix CORS headers on 429 responses 2 months ago
Edward Ribeiro 725fb90225 Rate limiter: move scanner probes to nginx, fix NAT IP block for authenticated users, add 404-scan counter; remove dead painel sub-views 2 months ago
Edward Ribeiro 6cbd9316c2 Add painel/dados bypass, Django block metrics, and layer tracking in logs 2 months ago
Edward Ribeiro 74d5873426 Fix Redis configmap inline comment, clean cache key format, add blocked-IP scan to plan 2 months ago
Edward Ribeiro a3af6a0147 Rename nginx internal media path and simplify file serving in views 2 months ago
Edward Ribeiro 93c1a21e72 Fix norma etag field and media private path 2 months ago
Edward Ribeiro a4d7da3e7e Phase 7: HTTP conditional requests, static caching, nginx cleanup 2 months ago
Edward Ribeiro 917e7e4106 Phase 6: scanner probe blocking, plan consolidation, and flow diagram 2 months ago