fix(deps): que el pin de un override no se quede un parche por debajo del arreglo - #689
Merged
Merged
Conversation
… del arreglo `Security Audit` lleva rojo en `main` desde `b84523b4` (2026-09-02). La causa no es una dependencia sin arreglo: son dos pins propios que se quedaron por debajo de la version parcheada, y el gate los reporta como advisories ajenas. `overrides.fast-uri` estaba fijado en `3.1.5` — exactamente la ultima version vulnerable de la rama 3.x. GHSA-jqff-g426-hqxp parchea en `3.1.6`, dentro del `^3.0.1` que declara `ajv@8.20.0`, asi que el arreglo cabia en el pin que ya existia. Medido con el propio gate y no inferido del changelog: las cuatro advisories de `fast-uri` y las cinco filas de la cadena `ajv`/`commitlint` que llegaban *via* `fast-uri` desaparecen — 9 de las 11 filas bloqueantes. Las dos restantes eran `browserslist`, tambien un transitivo solo-dev (`ts-jest`→`@babel/core` y `@nestjs/cli`→`webpack`) con arreglo publicado en `4.28.7`; se pinea `4.28.9` con la misma forma de override que el propio workflow prescribe para este caso. Verificado con `63-validate-npm-audit-gate.mjs`, el mismo guard que corre CI, sobre este arbol: de 11 filas bloqueantes / 7 altas a **0 bloqueantes, 0 altas**. La moderada de `qs` sobrevive a proposito: el gate no bloquea por debajo de HIGH. Lo que merece llevarse no es la CVE sino el modo de fallo: un `overrides` puesto para cerrar un advisory se convierte en el techo que impide cerrarlo la siguiente vez, y nadie lo revisa porque parece configuracion resuelta. Mismo patron que GT-691, donde la vigilancia estaba atada a un major que no habia salido. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
📊 Bilingual Coverage ImpactPR Changes
Repository Coverage
✅ Good: All EN changes have ES counterparts. Generated by GitHub Actions |
This was referenced Sep 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Security Auditlleva rojo enmaindesdeb84523b4(02-sep). No es una dependencia sin arreglo: son dos pins propios que se quedaron por debajo de la versión parcheada, y el gate los reporta como si fueran advisories ajenas.Medido con el guard real, no inferido
63-validate-npm-audit-gate.mjs— el mismo que corre CI — sobre este árbol:origin/mainQué cambia
fast-uri3.1.5→3.1.7.3.1.5era exactamente la última versión vulnerable de la rama 3.x;GHSA-jqff-g426-hqxpparchea en3.1.6, dentro del^3.0.1que declaraajv@8.20.0— el arreglo cabía en el pin que ya existía. Se llevan por delante las cuatro advisories defast-uriy las cinco filas de la cadenaajv/commitlintque llegaban viafast-uri: 9 de las 11 filas.browserslist→4.28.9. Las dos filas restantes. Transitivo solo-dev (ts-jest→@babel/core,@nestjs/cli→webpack), arreglo publicado en4.28.7, con la misma forma de override que el propio comentario del workflow prescribe para este caso.La moderada de
qssobrevive a propósito: el gate no bloquea por debajo de HIGH.Lo que merece llevarse
No es la CVE, es el modo de fallo: un
overridespuesto para cerrar un advisory se convierte en el techo que impide cerrarlo la siguiente vez, y nadie lo revisa porque parece configuración ya resuelta. Mismo patrón que GT-691, donde la vigilancia quedó atada a un major que no había salido.🤖 Generated with Claude Code