# Revisión de excepciones en `.trivyignore`

Cada `.trivyignore` en este repo (por ejemplo
`workloads/commerce-backend/.trivyignore`) es una lista de CVEs excepcionadas
del gate CRITICAL de Trivy, con justificación y fecha por entrada. No es un
mecanismo para silenciar hallazgos sin revisar — cada excepción está atada a
una versión concreta de una dependencia, y deja de tener sentido en cuanto esa
dependencia cambia.

## Riesgo si no se revisa

Una excepción vieja que sigue activa después de un bump de versión puede
ocultar CVEs **nuevas y no relacionadas** que Trivy habría detectado, si el
número de CVE cambia entre versiones del mismo paquete pero el `.trivyignore`
no se actualiza. La excepción se vuelve permanente por inercia en vez de por
decisión.

## Checklist: cada vez que se hace bump de `@medusajs/*`

1. Ubicar el `.trivyignore` de la app afectada y leer la justificación de cada
   entrada — identifica de qué dependencia transitiva viene cada CVE (ej.
   `esbuild` vía `vite` vía `@medusajs/admin-sdk`).
2. Después del bump, correr el build/escaneo y comparar: ¿la nueva versión de
   la dependencia transitiva (`vite`/`esbuild` en el caso de admin-sdk) ya
   trae el fix?
   - Si el CVE ya no aparece en el reporte de Trivy → **remover la entrada**
     del `.trivyignore`.
   - Si el CVE sigue apareciendo pero con un identificador distinto → no
     asumir que es "la misma" excepción; documentarla de nuevo con su propia
     justificación.
   - Si el CVE sigue igual (misma causa, mismo transitivo sin actualizar) →
     dejar la entrada, pero actualizar la fecha/nota si vale la pena
     (ej. "sigue aplicando tras bump a X.Y.Z, revisado 2026-MM-DD").
3. Nunca copiar una excepción de una app a otra sin repetir este proceso —
   cada `.trivyignore` es local a la imagen que describe.

## Precedente

`workloads/commerce-backend/.trivyignore` documenta `CVE-2024-24790` /
`CVE-2025-68121` (Go stdlib embebido en el binario de `esbuild`, traído por
`vite@5.4.21` ← `@medusajs/admin-sdk`, no se ejecuta en runtime del
contenedor) desde el commit `93f071c` (2026-08-15), con `@medusajs/*` en
`2.18.0`. Revisado el 2026-08-16: sin bumps de `@medusajs/*` desde entonces,
la excepción sigue vigente. Ese commit y el `.trivyignore` mismo documentan el
intento de fix real que se descartó (bump de esbuild rompía el build del
admin) — leerlo antes de repetir el intento en un bump futuro.
