fix(deps): bump js-yaml override to 4.3.1 (clears the last open Dependabot alert, GHSA-5p4m-2wfm-xmqj) - #696
Conversation
The vscode-extension npm tree pins js-yaml via a package.json override, currently at 4.3.0. Dependabot alert #69 (HIGH, GHSA-5p4m-2wfm-xmqj, "quadratic CPU consumption in !!omap resolution") affects 3.x and 4.x below 4.3.1, so the existing 4.3.0 pin is still vulnerable. Bump the override to 4.3.1 and regenerate the lockfile. js-yaml is a dev-only transitive dependency, reached through eslint 8.57.1 (@eslint/eslintrc 2.1.4) and mocha 10.8.2 (@vscode/test-cli 0.0.10); both accept 4.3.1, so it dedupes cleanly with no parent bumps. This is the last open Dependabot alert on the repository. Verification: - npm install --package-lock-only regenerates with the registry integrity hash for 4.3.1. - npm ci succeeds from a clean tree (270 packages, exit 0). - npm ls js-yaml shows 4.3.1 for all three consumers, deduped, with no unmet peer or conflicting ranges. Risk class R0 under testing.md: dependency-pin change with no behavioral surface in shipped code. No red-first test is manufactured; the existing lint/test lanes are the check. Note that CI cannot currently run to confirm that (see #695). Refs #695
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
📝 WalkthroughWalkthroughThe VS Code extension updates the ChangesDependency override
Estimated code review effort: 1 (Trivial) | ~2 minutes Merge Risk: ⚪ Minimal · up to This localized dependency update has no actionable merge-blocking risk at the current head; it is merge-ready after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
| }, | ||
| "overrides": { | ||
| "js-yaml": "4.3.0", | ||
| "js-yaml": "4.3.1", |
There was a problem hiding this comment.
🔍 Lockfile root entry carries no overrides metadata, so the pin may not be reproducible via npm ci
The lockfile change (vscode-extension/package-lock.json:1909-1912) only edits the node_modules/js-yaml version/resolved/integrity triple, matching the previous 4.3.0 pin commit. However, the lockfile's root package entry (packages[""]) contains no overrides object, even though vscode-extension/package.json:176-179 declares overrides for js-yaml and serialize-javascript. npm normally records the resolved overrides block in the lockfile root when regenerating, and uses it to detect drift between package.json and the lock. Its absence suggests the lock was hand-edited rather than produced by npm install --package-lock-only, which could make npm ci reject or silently re-resolve the tree. Worth verifying by actually running npm install --package-lock-only && npm ci once CI is unblocked (per the PR description, CI currently cannot run).
Was this helpful? React with 👍 or 👎 to provide feedback.
There was a problem hiding this comment.
Pull request overview
This PR clears Dependabot alert GHSA-5p4m-2wfm-xmqj by bumping the existing js-yaml npm override in the VS Code extension from 4.3.0 → 4.3.1, and updating the lockfile to match. The change is scoped to the vscode-extension/ dev dependency graph (not shipped Rust/WFL runtime code).
Changes:
- Update
vscode-extension/package.jsonto pinjs-yamloverride to 4.3.1. - Regenerate
vscode-extension/package-lock.jsonso thenode_modules/js-yamlentry reflects 4.3.1 (version/resolved/integrity).
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| vscode-extension/package.json | Bumps the js-yaml override to 4.3.1 to address the advisory. |
| vscode-extension/package-lock.json | Updates the locked js-yaml package metadata to 4.3.1 (resolved URL + integrity). |
Files not reviewed (1)
- vscode-extension/package-lock.json: Generated file
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
What
Bumps the
js-yamloverride invscode-extension/package.jsonfrom 4.3.0 → 4.3.1 and regenerates the lockfile.Why
Dependabot alert #69 (HIGH, GHSA-5p4m-2wfm-xmqj, quadratic CPU consumption in
!!omapresolution) covers js-yaml 3.x and 4.x below 4.3.1. The repo already carries ajs-yamloverride — it was pinned at 4.3.0 to clear the previous advisory on 2026-07-31 — so the pin exists but is now one patch short of the current one.This is the only open Dependabot alert on the repository. The long-standing structural
rustls-webpkicluster (8 alerts) and thebrace-expansioncluster (10) were both resolved on 2026-07-31 and 2026-07-26 respectively, so merging this takes the repo to zero open alerts.Root cause of the pin still being needed
js-yamlis a dev-only transitive dependency reached two ways:Neither parent has released a version that moves off the affected range, which is why the override exists rather than a straight dependency bump. Both parents accept 4.3.1, so it dedupes to a single copy with no parent bumps required.
Verification
Run locally against a clean tree:
npm install --package-lock-onlyregenerated the entry with the registry integrity hash for 4.3.1 (sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ==).npm cisucceeds from scratch — 270 packages, exit 0, no peer or range conflicts.npm ls js-yamlresolves all three consumers to 4.3.1, deduped:Diff is 4 lines across 2 files — the override value and the lockfile's version/resolved/integrity triple. No shipped Rust code, no workflow, no
TestPrograms/behaviour is touched.Testing policy
R0 under root
testing.md— a dependency-pin change with no behavioral surface in shipped code. No red-first test is manufactured; the existing lint and test lanes are the check, per the pure-CI-mechanics carve-out.GitHub Actions on this repo has been failing at startup since ~04:00 UTC today —
CI,Nightly Build,Auto FormatandWFL Config Lintall returnstartup_failurewith zero jobs created, because the Actions allowlist was narrowed and now blocksdtolnay/rust-toolchainandSwatinem/rust-cache. Full diagnosis in #695.So this PR will show no CI signal until #695 is resolved. Please re-run checks on this branch after fixing the allowlist, before merging. The change is verified locally as described above, but "green because nothing ran" is not green.
Refs #695
Opened by the WFL repo warden (automated triage pass). Not merged — merging is a human decision.
Summary by CodeRabbit