Skip to content

security: remediate npm CVE findings (re-scan of synced fork)#2

Open
gabehamilton wants to merge 1 commit into
mainfrom
vulnops/cve-remediation
Open

security: remediate npm CVE findings (re-scan of synced fork)#2
gabehamilton wants to merge 1 commit into
mainfrom
vulnops/cve-remediation

Conversation

@gabehamilton

Copy link
Copy Markdown

Security: dependency remediation (Vuln Ops Grade F — re-scan of synced fork)

Follow-up to the upstream sync (difflabai/ironclaw was fast-forwarded to nearai/ironclaw@main, which cleared the previous wasmtime critical). A fresh Vuln Ops Trivy re-scan of the synced tree (run dd8ced1d) found 26 findings (0 critical, 11 high). This PR clears the npm side minimally and safely.

Remediated — all 13 npm findings (7 of 11 highs)

Severity Package From To Advisory
high react-router 7.9.1 7.12.0 CVE-2026-21884
high react-router 7.9.1 7.12.0 CVE-2026-22029
high react-router 7.9.1 7.13.2 CVE-2026-33245
high react-router 7.9.1 7.14.0 CVE-2026-34077
high react-router 7.9.1 7.14.2 CVE-2026-42211
high react-router 7.9.1 7.15.0 CVE-2026-42342
high ws 8.17.1 8.21.0 CVE-2026-48779
medium postcss 8.5.1 8.5.10 CVE-2026-41305
medium react-router 7.9.1 7.9.6 CVE-2025-68470
medium react-router 7.9.1 7.12.0 CVE-2026-22030
medium react-router 7.9.1 7.13.2 CVE-2026-33244
medium react-router 7.9.1 7.14.1 CVE-2026-40181
medium ws 8.17.1 8.20.1 CVE-2026-45736

How: react-router was an exact pin (7.9.1); bumped to ^7.15.0 (resolves to 7.18.0, same major) — clears all 6 react-router highs + mediums. ws (→ 8.21.0) and postcss (→ 8.5.15) are transitive, forced via same-major overrides (minor/patch, non-breaking). Lockfiles regenerated with npm install --package-lock-only / npm audit fix; no source changed.

Not remediated — cargo findings needing deliberate, build-verified work

Left for follow-up because each is a breaking bump or has no published fix (no lockfile-only path):

Notably tokio-tar (CVE-2025-62518) and libyml/serde_yml are effectively unmaintained — the real fix is migrating to maintained replacements (e.g. astral-tokio-tar), which is a code change, not a version bump.

Grade will remain F until the 4 remaining highs (pyo3, rustls-webpki, libyml, tokio-tar) are addressed — the SPL score floors at 0 with this many highs. This PR removes the readily-fixable ones.

🤖 Generated with Claude Code

Re-scan of difflabai/ironclaw@main (now synced to nearai/ironclaw) found 26
findings. This clears all 13 npm findings (7 of 11 highs):
- react-router 7.9.1 -> ^7.15.0 (resolves 7.18.0): exact pin bumped within
  the same major; clears 6 highs + mediums.
- ws -> ^8.21.0, postcss -> ^8.5.10: transitive, forced via same-major overrides.
Cargo findings (pyo3, rustls-webpki, jsonwebtoken, libyml, tokio-tar, ...) need
breaking 0.x bumps or have no published fix and are left for follow-up.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

@gemini-code-assist gemini-code-assist Bot 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.

Code Review

This pull request updates dependencies across multiple packages, including upgrading react-router in the frontend static assets and adding dependency overrides for ws and postcss in the architecture video documentation package. The reviewer suggests pinning react-router to an exact version (7.18.0) in package.json instead of using a caret range to maintain consistency with other pinned dependencies and ensure deterministic builds.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

"react-dom": "19.1.0",
"react-hook-form": "7.62.0",
"react-router": "7.9.1"
"react-router": "^7.15.0"

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

To maintain consistency with the rest of the dependencies in this package.json (which are all strictly pinned to exact versions), please pin react-router to the exact version resolved in the lockfile (7.18.0) instead of using a caret range (^7.15.0). This ensures deterministic builds and prevents unexpected updates.

Suggested change
"react-router": "^7.15.0"
"react-router": "7.18.0"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant