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
Refresh vulnerable development dependencies while retaining Node 20 support #17
npm audit --json reports seven affected package names: two critical, four high and one moderate. All are development dependencies; npm audit --omit=dev --json reports zero production vulnerabilities.
Vitest 3.2.7 pulls vulnerable tinypool 1.1.1 and @vitest/mocker 3.2.7. Other affected transitive packages include brace-expansion, js-yaml, nanoid and source-map-js. These advisory ratings do not establish exploitability of the deployed static app.
Acceptance criteria
Refresh compatible lockfile patches and migrate Vitest to a patched supported release.
Evaluate Vitest 4.1.11 or newer compatible release: the reviewed version removes tinypool and patches mocker, while supporting Node 20 and Vite 6.
Avoid blindly applying npm's suggested Vitest 5 major upgrade, which requires Node 22.12+ and conflicts with the declared >=20 engine.
Run npm ci, npm run check, npm run test:browser and npm audit. Resolve or explicitly assess remaining advisories.
S5 read one lockfile and 407 unique package versions. Lack of OpenSSF Scorecard coverage was informational, not a failure. The fix is being prepared separately on review/dependency-refresh so dependency validation is independent of the UI work in #20.
All supplied advisory ranges are addressed in draft PR #21: #21 . Vitest/@vitest/mocker are 4.1.11; tinypool is removed; brace-expansion is 1.1.21/5.0.12; js-yaml is 4.3.2; nanoid is 3.3.20; source-map-js is 1.2.2. Checked GitHub advisory affected-version ranges independently. Node 20.20.2 clean install/check/build pass; a combined checkout with #20 passes 356 unit tests and browser regressions. npm audit reports zero vulnerabilities. This issue remains open until the fix is merged.
Activity
TechLuddite commentedon Oct 11, 2026
All supplied advisory ranges are addressed in draft PR #21: #21 . Vitest/@vitest/mocker are 4.1.11; tinypool is removed; brace-expansion is 1.1.21/5.0.12; js-yaml is 4.3.2; nanoid is 3.3.20; source-map-js is 1.2.2. Checked GitHub advisory affected-version ranges independently. Node 20.20.2 clean install/check/build pass; a combined checkout with #20 passes 356 unit tests and browser regressions. npm audit reports zero vulnerabilities. This issue remains open until the fix is merged.