5918 Commits (38fa24112d8d8739034558ee16a91efd54fe9645)
 

Author SHA1 Message Date
Edward Ribeiro 38fa24112d Add AnonCachePageMixin to 8 public search/filter views 1 week ago
Edward Ribeiro 5086491157 Mitigate pesquisar-sessao DDoS and fix page= param pollution 1 week ago
Edward Ribeiro 6b6bc810cb Return 403 instead of 429 for IP-prefix blocklist hits; document feature 1 week ago
Edward Ribeiro 5f71354f52 Fix: same-origin bypass let blocked IPs through on /api/ 1 week ago
Edward Ribeiro df2f5ee30a Add Redis-backed IP-prefix blocklist to RateLimitMiddleware 1 week ago
Edward Ribeiro b7ca1609e8 Optimise relatorio and sessao views; fix RelatorioMateriasTramitacao 504s 1 week ago
Edward Ribeiro 504e1a5639 Rename quota key constants and Redis keys with api_ prefix 3 weeks 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 8f58d65059 Remove IP exemption list from rate limiter 4 weeks ago
Edward Ribeiro d0b8ff3544 Align nginx rate limit zones with Django rate limiter thresholds 4 weeks ago
Edward Ribeiro 6ce8d8c4eb Update RATE-LIMITER-PLAN.md with 2026-05-11 post-initial changes 1 month ago
Edward Ribeiro 079dd47df2 Raise API rate limit threshold and relax quotas 1 month ago
Edward Ribeiro cf5606e7d7 Revert "Rename RL_INDEX_API_BLOCKED_IPS key to use colon separator" 1 month ago
Edward Ribeiro a40d1dfdf4 Update RATE-LIMITER-PLAN.md with 2026-05-11 changes 1 month ago
Edward Ribeiro 7e9b2a40ec Rename RL_INDEX_API_BLOCKED_IPS key to use colon separator 1 month ago
Edward Ribeiro 6d62dfec7e Scope API rate limit keys to tenant namespace 1 month ago
Edward Ribeiro e6fb5029bb Raise API quota to 1 000/day · 7 000/week 1 month ago
Edward Ribeiro 0cbc4e308f Lower API rate limit threshold from 60 to 35 req/min 1 month ago
Edward Ribeiro 1c9ca823e8 Apply 60/min API rate limit and IP quota to all callers regardless of auth 1 month ago
Edward Ribeiro 3c4981cc11 Apply daily/weekly quota to authenticated API users 1 month ago
Edward Ribeiro 5adffbcee3 Remove authenticated API quotas 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 69a68d0a74 Add architecture diagrams to rate-limiter-incidents.md 1 month ago
Edward Ribeiro 8d17a5cc16 Skip IP rate counter for anonymous /api/ requests 1 month ago
Edward Ribeiro 405ba55d32 Update RATE-LIMITER-PLAN.md with 2026-05-06/07 changes 1 month ago
Edward Ribeiro d4738a20a9 Raise rate limits and split nginx zones for legitimate traffic 1 month ago
Edward Ribeiro 7f87324c03 Bypass nginx rate limiting for session/voting paths; document incident 1 month ago
Edward Ribeiro dcf472c5ef Fix Doc Adm file ref 1 month ago
Edward Ribeiro 84dd68d122 Fix serve_media to allow public DocumentoAdministrativo without auth 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 0febabc3d8 Fix painel polling: 304 responses, logo re-fetches, and overlapping requests 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 13edf3cf72 Fix Content-Disposition to inline so PDFs open in browser instead of downloading 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 ca01a4b552 Track GeoLite2-ASN.mmdb in git; fail build if absent 2 months ago
Edward Ribeiro 917e7e4106 Phase 6: scanner probe blocking, plan consolidation, and flow diagram 2 months ago
Edward Ribeiro 9140f3e4b8 Phase 1-4: Redis infra, rate limiter middleware, cache layer, nginx hardening 2 months ago
Edward Ribeiro bea9d84373 Phase 5: X-Accel-Redirect for /media/, UA Redis deny list, per-path counters 2 months ago
Edward Ribeiro e580f8ec8d Fix ratelimit cache key prefix: strip Django version/prefix mangling 2 months ago
Edward Ribeiro 0e222ada13 Phase 4: extend AnonCachePageMixin to materia and sessao public detail views 2 months ago
Edward Ribeiro 45baa27d7f Fix configure_redis_cache overwriting operator-set waffle switch on restart 2 months ago
Edward Ribeiro c1d97e2c99 Fix DATABASE_URL not exported before migrate_db in start.sh 2 months ago