fix: resolve npm audit vulnerabilities - #410
Open
enact-bot wants to merge 1 commit into
Open
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #410 +/- ##
========================================
Coverage 82.68% 82.68%
========================================
Files 153 153
Lines 7623 7623
Branches 2319 2319
========================================
Hits 6303 6303
Misses 1026 1026
Partials 294 294 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
hong6316
force-pushed
the
feature/npm-audit-vulnerabilities
branch
2 times, most recently
from
August 11, 2026 00:21
6c30a6c to
fadf556
Compare
hong6316
force-pushed
the
feature/npm-audit-vulnerabilities
branch
2 times, most recently
from
August 14, 2026 00:33
32b8344 to
e95c3bb
Compare
- Run npm audit fix to resolve non-breaking dependency vulnerabilities - Add serialize-javascript override (^7.0.5) to fix RCE and DoS vulnerabilities - Resolved: brace-expansion, fast-xml-parser, ip-address, js-yaml, nanoid, postcss, undici, serialize-javascript/mocha vulnerabilities - Remaining 14 high-severity vulnerabilities are from extract-zip (all versions affected, no fix exists) via @enact/ui-test-utils sub-dependencies Vulnerabilities reduced from 23 to 14 (all unfixable sub-module issues).
hong6316
force-pushed
the
feature/npm-audit-vulnerabilities
branch
from
August 14, 2026 01:01
e95c3bb to
eec75ac
Compare
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.
Summary
Resolve npm audit high-severity vulnerabilities in both the root package and
samples/samplerby adding npm overrides and regenerating dependency trees.Root Package (
package.json)Changes
Added
serialize-javascriptoverride to pin a secure version:Additional transitive vulnerabilities (brace-expansion, js-yaml, nanoid, postcss, undici, ip-address, fast-xml-parser) were resolved through
npm audit fixupdating the lock file.Audit Status
extract-zip— unfixable, see below)Samples/Sampler (
samples/sampler/package.json)Changes
Added
overridessection to pin secure versions of vulnerable transitive dependencies:Audit Status
elliptic+extract-zip(unfixable)Remaining Issues (unfixable)
extract-zip(14 high) — Root & SamplerAll versions of
extract-zipare affected by GHSA-jmr9-qjv8-65gv (symlink path traversal). The only fix npm suggests requires downgrading@enact/ui-test-utilsfrom 4.x to 1.x (breaking change), which is not acceptable. No override is possible since ALL versions are vulnerable.Dependency chain:
@enact/ui-test-utils→@wdio/*→@puppeteer/browsers→extract-zipelliptic(6 low) — Sampler onlyAll versions of
ellipticare affected. Caused by:@enact/storybook-utils→node-polyfill-webpack-plugin→crypto-browserify→browserify-sign/create-ecdh→ellipticThe only fix requires downgrading
@enact/storybook-utilsfrom 8.x to 4.x (breaking change).CI Verification
npm installsucceeds on Node 20.20.2npm run lint -- -- --report-unused-disable-directives --max-warnings 0 .passesnpm run validate-docspassesnpm test -- --runInBand --coverage— 75 suites, 1015 tests all passingpackage-lock.json/npm-shrinkwrap.jsonpreserved (not deleted or newly created)🤖 Generated with Claude Code