v0.2.1 — Hardening + fixes (propagación USD, /latest)
Release de mantenimiento desde v0.2.0: endurecimiento tras una auditoría completa + dos correcciones de datos.
🔒 Seguridad y robustez (auditoría A–E)
Rate-limit en el registro de keys, IP no spoofeable (TRUSTED_PROXY_HOPS), sin fugas de detalle en errores 5xx, timingSafeEqual para el admin token, allowlist de host del BCV, statement_timeout en el pool, graceful shutdown + handlers de proceso, /health/live, índices redundantes eliminados + FK en api_key_usage_daily, ventana de propagación adaptativa.
🐛 Correcciones de datos
- Propagación USD: el daily ahora re-lee el XLS de USD (captura publicaciones tardías) y
propagateGapsre-propaga filas obsoletas. NuevoPOST /v1/admin/reingestpara corrección manual. /v1/rates/latestdevuelve la tasa vigente hoy, no una futura que el BCV ya publicó para el próximo día hábil.
🧹 Calidad
93 → 108 tests, dependencias muertas eliminadas, versión sincronizada con package.json.