Skip to content

fix(deps): resolve Snyk and npm audit vulnerabilities - #73

Merged
cs-raj merged 4 commits into
mainfrom
fix/snyk-vulnerability-resolution
Oct 29, 2026
Merged

cs-raj merged 4 commits into
mainfrom
fix/snyk-vulnerability-resolution

Conversation

@cs-raj

@cs-raj cs-raj commented Sep 10, 2026 •

Copy link
Copy Markdown
Contributor

Problem

Snyk reports 11 vulnerabilities on main (3 critical, 7 high, 1 low): undici 8.12.1 (8, via isomorphic-dompurify > jsdom) and dompurify 3.4.16 (3, pinned in overrides). npm audit reports 2. This branch also predated #75 and conflicted with main.

Fix

APP (Next.js, built with next build), so the lock file is the deliverable. No package version bump (already 1.2.4).

  • Merged main into this branch, keeping the newer value on each conflicting line: next ^16.4.1 and sharp 0.35.5 from main; react/react-dom ^19.3.0 and qs ^6.16.0 from this PR; this PR's undici ^8.10.2 and js-yaml ^4.3.2 overrides kept.
  • Regenerated package-lock.json: undici 8.12.1 -> 8.12.3 clears 8 findings on its own.
  • Raised the existing dompurify override 3.4.16 -> 3.4.17 (the pin held the 3 open XSS findings).

Remaining:

  • 11 licence findings (LGPL-3.0 @img/sharp-libvips-*, MPL-2.0 lightningcss-linux-x64-gnu): not fixable by a version bump.

Verified: npm run build passes (Next.js 16.4.3). Snyk 11 -> 0, npm audit 2 -> 0.

🤖 Generated with Claude Code

Upgrade direct dependencies to the latest patch/minor releases and add
overrides for transitive packages that cannot be fixed by a direct bump.

Direct dependencies:
- next 16.2.12 -> 16.3.4
- react / react-dom 19.2.8 -> 19.3.0
- eslint-config-next 16.2.12 -> 16.3.4

Overrides:
- qs ^6.15.3 -> ^6.16.0 (resource exhaustion, uncaught exception)
- sharp 0.35.3 -> 0.35.4 (heap-based buffer overflow via libheif)
- undici ^8.10.2 (new; 2 critical, 5 high, 4 medium via jsdom)
- js-yaml ^4.3.2 (new; CPU exhaustion via empty merge sources)

Snyk security issues drop from 14 (2 critical, 7 high, 5 medium) to 0
and npm audit from 6 (3 high, 3 moderate) to 0. Remaining Snyk findings
are LGPL-3.0 license notices on optional @img/sharp-libvips binaries.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@cs-raj
cs-raj requested a review from a team as a code owner September 10, 2026 13:00
@snyk-io

snyk-io Bot commented Sep 10, 2026 •

Copy link
Copy Markdown

✅ Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
✅ Open Source Security 0 0 0 0 0 issues
✅ Licenses 0 0 0 0 0 issues
✅ Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

@github-actions

Copy link
Copy Markdown

🔒 Security Scan Results

ℹ️ Note: Only vulnerabilities with available fixes (upgrades or patches) are counted toward thresholds.

Check Type Count (with fixes) Without fixes Threshold Result
🔴 Critical Severity 0 0 10 ✅ Passed
🟠 High Severity 0 0 25 ✅ Passed
🟡 Medium Severity 0 21 500 ✅ Passed
🔵 Low Severity 0 0 1000 ✅ Passed

⏱️ SLA Breach Summary

✅ No SLA breaches detected. All vulnerabilities are within acceptable time thresholds.

Severity Breaches (with fixes) Breaches (no fixes) SLA Threshold (with/no fixes) Status
🔴 Critical 0 0 15 / 30 days ✅ Passed
🟠 High 0 0 30 / 120 days ✅ Passed
🟡 Medium 0 0 90 / 365 days ✅ Passed
🔵 Low 0 0 180 / 365 days ✅ Passed

ℹ️ Vulnerabilities Without Available Fixes (Informational Only)

The following vulnerabilities were detected but do not have fixes available (no upgrade or patch). These are excluded from failure thresholds:

  • Critical without fixes: 0
  • High without fixes: 0
  • Medium without fixes: 21
  • Low without fixes: 0

✅ BUILD PASSED - All security checks passed

netrajpatel
netrajpatel previously approved these changes Sep 10, 2026

@amit-kanswal-cs amit-kanswal-cs left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

LGTM

cs-raj and others added 2 commits October 26, 2026 20:29
…y-resolution

Conflicts resolved to the newer value per line: next ^16.4.1 and sharp 0.35.5 from main; react/react-dom ^19.3.0 and qs ^6.16.0 from the PR; PR's undici ^8.10.2 and js-yaml ^4.3.2 overrides kept. package-lock.json taken from the PR side (regenerated next).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…k vulnerabilities

Lock file regenerated (fixed 8 of 11 vs main on its own: undici 8.12.1 -> 8.12.3).
Direct upgrades: none
Overrides: dompurify 3.4.16 -> 3.4.17 (existing pin raised)
Vuln count: snyk 11 → 0, npm audit 2 → 0. Build verified passing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🔒 Security Scan Results

ℹ️ Note: Only vulnerabilities with available fixes (upgrades or patches) are counted toward thresholds.

Check Type Count (with fixes) Without fixes Threshold Result
🔴 Critical Severity 0 0 10 ✅ Passed
🟠 High Severity 0 0 25 ✅ Passed
🟡 Medium Severity 0 21 500 ✅ Passed
🔵 Low Severity 0 0 1000 ✅ Passed

⏱️ SLA Breach Summary

✅ No SLA breaches detected. All vulnerabilities are within acceptable time thresholds.

Severity Breaches (with fixes) Breaches (no fixes) SLA Threshold (with/no fixes) Status
🔴 Critical 0 0 15 / 30 days ✅ Passed
🟠 High 0 0 30 / 120 days ✅ Passed
🟡 Medium 0 0 90 / 365 days ✅ Passed
🔵 Low 0 0 180 / 365 days ✅ Passed

ℹ️ Vulnerabilities Without Available Fixes (Informational Only)

The following vulnerabilities were detected but do not have fixes available (no upgrade or patch). These are excluded from failure thresholds:

  • Critical without fixes: 0
  • High without fixes: 0
  • Medium without fixes: 21
  • Low without fixes: 0

✅ BUILD PASSED - All security checks passed

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown

🔒 Security Scan Results

ℹ️ Note: Only vulnerabilities with available fixes (upgrades or patches) are counted toward thresholds.

Check Type Count (with fixes) Without fixes Threshold Result
🔴 Critical Severity 0 0 10 ✅ Passed
🟠 High Severity 0 0 25 ✅ Passed
🟡 Medium Severity 0 21 500 ✅ Passed
🔵 Low Severity 0 0 1000 ✅ Passed

⏱️ SLA Breach Summary

✅ No SLA breaches detected. All vulnerabilities are within acceptable time thresholds.

Severity Breaches (with fixes) Breaches (no fixes) SLA Threshold (with/no fixes) Status
🔴 Critical 0 0 15 / 30 days ✅ Passed
🟠 High 0 0 30 / 120 days ✅ Passed
🟡 Medium 0 0 90 / 365 days ✅ Passed
🔵 Low 0 0 180 / 365 days ✅ Passed

ℹ️ Vulnerabilities Without Available Fixes (Informational Only)

The following vulnerabilities were detected but do not have fixes available (no upgrade or patch). These are excluded from failure thresholds:

  • Critical without fixes: 0
  • High without fixes: 0
  • Medium without fixes: 21
  • Low without fixes: 0

✅ BUILD PASSED - All security checks passed

@cs-raj
cs-raj merged commit 1c711e0 into main Oct 29, 2026
7 checks passed
@cs-raj
cs-raj deleted the fix/snyk-vulnerability-resolution branch October 29, 2026 09:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants