Skip to content

chore: resolve Dependabot alerts in transitive dependencies (#DS-5215) - #212

Merged
artembelik merged 1 commit into
mainfrom
chore/DS-5215
Aug 14, 2026
Merged

chore: resolve Dependabot alerts in transitive dependencies (#DS-5215)#212
artembelik merged 1 commit into
mainfrom
chore/DS-5215

Conversation

@lskramarov

@lskramarov lskramarov commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Pin six vulnerable transitive dependencies through the existing resolutions block. All six are pulled in by tooling — none is declared directly in dependencies/devDependencies:

  • tar 6.2.1 -> 7.5.22 (cacache, node-gyp, pacote) — 8 alerts
  • serialize-javascript 6.0.2 -> 7.1.0 (copy-webpack-plugin, css-minimizer-webpack-plugin) — 2 alerts
  • tmp 0.0.33 -> 0.2.7 (external-editor) — 2 alerts
  • dompurify 3.4.12 -> 3.4.13 (jspdf) — 1 alert
  • adm-zip 0.5.18 -> 0.6.0 (@module-federation/dts-plugin) — 1 alert
  • uuid 8.3.2 -> 11.1.1 (sockjs) — 1 alert

tar@7.5.22 and tmp@0.2.7 were already in the tree via other parents, so the overrides collapse duplicates instead of adding copies — hence the net removal of chownr, fs-minipass, minipass@5, mkdirp, os-tmpdir and randombytes from the lockfile.

uuid is pinned to 11.1.1, the minimum patched version, rather than the latest 14.x: sockjs@0.3.24 was written against uuid 8 and only calls v4(), so the smaller jump keeps the risk down.

serialize-javascript uses the unranged key form while the rest of the block is descriptor-scoped. Three parents declare three different ranges (^6.0.0, ^6.0.1, ^6.0.2), which the descriptor form would need three keys to cover. The unranged form is safe here specifically because nothing in the tree asks for serialize-javascript above 6 — an unranged key applies tree-wide and pins downwards, so it is not a good default elsewhere. Both forms resolve to a byte-identical lockfile.

The remaining Dependabot alerts (Angular, vite, sigstore, esbuild, nx) cannot be fixed this way while the repository stays on Angular 18 and Nx 20 — those toolchains pin the affected versions themselves.

Summary by CodeRabbit

  • Chores
    • Updated package resolution overrides for several dependencies to improve compatibility and security.

Pin six vulnerable transitive dependencies through the existing
`resolutions` block. All six are pulled in by tooling — none is declared
directly in `dependencies`/`devDependencies`:

- tar 6.2.1 -> 7.5.22 (cacache, node-gyp, pacote) — 8 alerts
- serialize-javascript 6.0.2 -> 7.1.0 (copy-webpack-plugin,
  css-minimizer-webpack-plugin) — 2 alerts
- tmp 0.0.33 -> 0.2.7 (external-editor) — 2 alerts
- dompurify 3.4.12 -> 3.4.13 (jspdf) — 1 alert
- adm-zip 0.5.18 -> 0.6.0 (@module-federation/dts-plugin) — 1 alert
- uuid 8.3.2 -> 11.1.1 (sockjs) — 1 alert

tar@7.5.22 and tmp@0.2.7 were already in the tree via other parents, so
the overrides collapse duplicates instead of adding copies — hence the
net removal of chownr, fs-minipass, minipass@5, mkdirp, os-tmpdir and
randombytes from the lockfile.

uuid is pinned to 11.1.1, the minimum patched version, rather than the
latest 14.x: sockjs@0.3.24 was written against uuid 8 and only calls
`v4()`, so the smaller jump keeps the risk down.

serialize-javascript uses the unranged key form while the rest of the
block is descriptor-scoped. Three parents declare three different ranges
(^6.0.0, ^6.0.1, ^6.0.2), which the descriptor form would need three keys
to cover. The unranged form is safe here specifically because nothing in
the tree asks for serialize-javascript above 6 — an unranged key applies
tree-wide and pins downwards, so it is not a good default elsewhere.
Both forms resolve to a byte-identical lockfile.

The remaining Dependabot alerts (Angular, vite, sigstore, esbuild, nx)
cannot be fixed this way while the repository stays on Angular 18 and
Nx 20 — those toolchains pin the affected versions themselves.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@lskramarov lskramarov self-assigned this Aug 13, 2026
Copilot AI lite review requested due to automatic review settings August 13, 2026 17:39
@lskramarov lskramarov added the bug Something isn't working label Aug 13, 2026
@coderabbitai

coderabbitai Bot commented Aug 13, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: a6c6579e-f9e6-4b35-ba06-538dc4d445f6

📥 Commits

Reviewing files that changed from the base of the PR and between 61c06bf and 49ea08a.

⛔ Files ignored due to path filters (1)
  • yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (1)
  • package.json

📝 Walkthrough

Walkthrough

Changes

Dependency resolution

Layer / File(s) Summary
Add Yarn resolution overrides
package.json
Added Yarn resolution overrides for adm-zip, dompurify, serialize-javascript, tar, tmp, and uuid.

Estimated code review effort: 1 (Trivial) | ~2 minutes

Mergeability Score: ⚪ Minimal · up to 49ea0

This localized dependency update has no actionable merge-blocking risk remaining after the normal build and unit checks pass.

Suggested reviewers: nikgurev, artembelik

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly describes the dependency security updates and matches the pull request objectives.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch chore/DS-5215

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Pins several vulnerable transitive dependencies via Yarn resolutions in this Nx/Yarn 4 workspace, updating the lockfile accordingly to address Dependabot alerts without changing direct dependencies.

Changes:

  • Added/updated Yarn resolutions entries for adm-zip, dompurify, serialize-javascript, tar, tmp, and uuid.
  • Regenerated yarn.lock to reflect the overrides and remove now-unneeded duplicate transitive packages.

Reviewed changes

Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.

File Description
package.json Adds resolutions pins for the six vulnerable transitive dependencies described in the PR.
yarn.lock Updates resolved versions to match the new overrides and collapses duplicate transitive entries.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@artembelik
artembelik merged commit 4bd1310 into main Aug 14, 2026
12 checks passed
@artembelik
artembelik deleted the chore/DS-5215 branch August 14, 2026 08:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants