- Qué pasó
- El script que aplica el tema de color se servía con un nonce vacío, así que el navegador lo bloqueaba en todas las páginas y el modo oscuro parpadeaba en claro al cargar. Tampoco llegaban los informes de violaciones de la CSP.
- Causa
- El middleware envolvía la respuesta del middleware de i18n en otra, que sobrescribía la lista de cabeceras reenviadas, y el nonce nunca llegaba a la página. Además, el endpoint de informes estaba bajo /api, que el ingress envía a fsn-api.
- Arreglo
- Ahora el nonce se pone en la petición antes de que corra el middleware de i18n, y los informes van a /csp-report (PR #49). Un test unitario comprueba que el nonce llega a la página.
- Qué cambió
- Una cabecera de seguridad puede fallar sin ningún error visible. Necesita un test y una mirada a la página en vivo tras desplegar.