You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
chore: Dev-Toolchain-Major-Upgrade wegen brace-expansion-Security-Advisory (CI Security Audit rot) #298
Bei einem Codepflege-Check (PR #297) festgestellt: npm audit --audit-level=high liefert aktuell 44 High- + 9 Moderate-Findings (Stand 2026-07-29) und schaltet den CI-Job „🔒 Security Audit“ rot — vorbestehend auf testing, nicht durch PR #297 verursacht.
Ursache
Neue Advisory GHSA-mh99-v99m-4gvg (brace-expansion: DoS via unbounded expansion length) betrifft praktisch allebrace-expansion-Versionen <=5.0.7 — gefixt erst ab 5.0.8. Kaskadiert über minimatch/glob durch fast die gesamte Dev-Toolchain: eslint, jest/jest-expo, @expo/cli, @react-native/codegen, babel-preset-expo u.a.
Reines Dev-Dependency-Problem, keine Runtime-Exposition (betroffene Pakete werden nicht in die App gebündelt).
Warum kein Klein-Fix
Versucht: overrides.brace-expansion: "^5.0.8" in package.json gesetzt → bricht ESLint sofort:
TypeError: expand is not a function
at Minimatch.braceExpand (node_modules/eslint/node_modules/minimatch/minimatch.js:271:10)
brace-expansion@5.x ist kein API-kompatibler Drop-in-Ersatz für die von minimatch@3.x/9.x erwartete CJS-Signatur (Default-Export als aufrufbare Funktion). npm audit fix --force schlägt entsprechend ein Major-Upgrade vor (u.a. eslint@10.8.0).
Veraltet: brace-expansion taucht im aktuellen npm audit nicht mehr auf. Die verbleibenden hohen Findings (node-forge, braces) haben keinen Upstream-Fix und werden über das Audit-Gate mit befristeter Allowlist (PR #351) abgefangen; Tracking in #348 und S540d/project-templates#168.
Activity
ci: Audit-Gate mit befristeter Allowlist (#348) (#351)
S540d commentedon Oct 4, 2026
Veraltet:
brace-expansiontaucht im aktuellennpm auditnicht mehr auf. Die verbleibenden hohen Findings (node-forge,braces) haben keinen Upstream-Fix und werden über das Audit-Gate mit befristeter Allowlist (PR #351) abgefangen; Tracking in #348 und S540d/project-templates#168.🤖 Generated with Claude Code