v2.1.8 — CSP sin unsafe-inline + validación formal de schema
🔒 Seguridad
- Cierra el ítem M1, pendiente desde el inicio de la auditoría técnica:
style-srcde la CSP ya no necesita'unsafe-inline'. Se migraron los 12style="..."inline deindex.html/admin.htmla clases CSS, y los bloques<style>embebidos deadmin.htmlymantenimiento.htmlse movieron a archivos externos (admin.css,mantenimiento.css). Verificado en producción concurl -Iy consola del navegador sin errores de CSP. - Actualizada la Response Header Transform Rule de Cloudflare con la CSP reforzada.
- Desactivado Cloudflare Web Analytics (no se usaba; generaba un bloqueo de CSP en consola).
✨ Agregado
- Validación formal de schema (
tests/test_schema.py+tests/medicamentos.schema.json) paramedicamentos.json— valida el contrato estructural completo (claves, tipos, opcionalidad) contra un JSON Schema versionado, separado de los umbrales de calidad de negocio que ya cubretest_etl_sanidad.py. La suite de sanity tests pasa de 12 a 13 checks.
📝 Documentado
- README actualizado: conteo de tests, sección de seguridad, salida de ejemplo de la suite.
Changelog completo: CHANGELOG.md
What's Changed
- chore(deps): bump actions/checkout from 4 to 7 by @dependabot[bot] in #16
Full Changelog: v2.1.7...v2.1.8
What's Changed
- chore(deps): bump actions/checkout from 4 to 7 by @dependabot[bot] in #16
Full Changelog: v2.1.7...v2.1.8