Skip to content

fix(deps): raise security-floor overrides for 17 dependabot alerts - #1939

Merged
misama-ct merged 2 commits into
mainfrom
security/fix-alerts-2026-08-21
Aug 24, 2026
Merged

fix(deps): raise security-floor overrides for 17 dependabot alerts#1939
misama-ct merged 2 commits into
mainfrom
security/fix-alerts-2026-08-21

Conversation

@misama-ct

Copy link
Copy Markdown
Collaborator

Summary

Resolves 17 of 18 open Dependabot alerts. All eight affected packages are transitive, and seven of them already had security-floor overrides in pnpm-workspace.yaml that newer advisories had outgrown — each was resolving at exactly its floor. So this raises floors rather than adding overrides. No source files change.

Override Before After Resolves to
js-yaml ^3.15.0 ^3.15.1 3.15.1
ip-address >=10.1.1 >=10.3.1 10.5.0
undici >=7.28.0 <8 >=7.29.0 <8 7.29.0
fast-uri >=4.1.1 >=4.1.2 4.1.2
postcss >=8.5.10 >=8.5.23 8.5.26
hono >=4.12.27 >=4.12.34 4.13.3
@hono/node-server >=1.19.13 >=1.19.15 <2 1.19.17

🔒 Vulnerabilities fixed

Package Severity Advisories
ip-address High + 2 Moderate CVE-2026-69192, CVE-2026-69198, CVE-2026-54272 — SSRF / trust-boundary bypasses
undici High + 4 Moderate CVE-2026-13697, CVE-2026-15157, CVE-2026-16729, CVE-2026-14643, CVE-2026-16728
fast-uri High CVE-2026-18446 — host confusion via backslash authority introducer
postcss High + 1 Moderate CVE-2026-73646, CVE-2026-69153sourceMappingURL path traversal
js-yaml High GHSA-5p4m-2wfm-xmqj — quadratic CPU in !!omap resolution
hono 3 Moderate + 1 Low CVE-2026-71849, CVE-2026-71850, CVE-2026-71848, CVE-2026-69207
@hono/node-server Moderate GHSA-frvp-7c67-39w9serve-static path traversal on Windows

⚠️ The one thing worth reviewing carefully

@hono/node-server gains a <2 cap — this is load-bearing, not stylistic.

Its old floor held 1.19.13 only because pnpm leaves an already-locked version alone while it still satisfies its spec. Moving the floor forces re-resolution, and @hono/node-server 2.x exists — so an open >=1.19.15 would have silently landed 2.1.1, a major bump that also raises the Node engine floor to >=20. The cap keeps this a security patch instead of a stealth major.

I checked every other bumped package for the same trap: none has a newer major an open floor could reach (undici was already capped <8; js-yaml's caret holds the 3.x line).

All seven target versions clear the repo's minimumReleaseAge: 1440 gate (oldest 441h), so minimumReleaseAgeStrict: true won't fail resolution.

⏭️ Not fixed — left for upstream

Package Severity Reason
sharp High (GHSA-f88m-g3jw-g9cj) Fix needs 0.35.0, but its only parent — @huggingface/transformers@4.2.0, already the latest release — hard-depends on sharp: ^0.34.5. An override would violate that constraint, and 0.x-minor bumps are breaking by sharp's own convention.

Exposure is nil in practice: sharp is never imported by repo source, @huggingface/transformers runs in a browser web worker on onnxruntime-web (the Node sharp image backend never loads), and apps/docs is private: true. The advisory covers inherited libvips image-decoding CVEs.

🧹 Overrides audit

Audited all 45 override entries against the lockfile. 44 are actively resolving a version — kept. One dormant entry found:

  • "happy-dom@<20.8.9": ">=20.8.9" — happy-dom is never installed; it exists only as an optional peerDependency of vitest (native range *). Deliberately left in place as a forward guard; removing it is unrelated churn for a security PR.

✅ Validation

Run on this branch after pnpm install:

  • pnpm lint — 0 errors (2 pre-existing warnings in untouched files)
  • pnpm build — full token → packages → docs build, exit 0
  • pnpm typecheck:strict — the CI gate, all 8 packages, exit 0
  • pnpm test250 test files / 3225 tests passed

build ran before typecheck:strict because the strict check resolves @commercetools/nimbus to dist; it also exercises the build-critical postcss bump.

Lockfile diff contains only the 7 targets plus nanoid 3.3.11 → 3.3.18 (postcss's own dependency). Everything else is peer-hash re-keying.

No changeset: overrides are workspace-local and don't alter any published package's declared dependencies, so there is no consumer-visible change.

📋 Review checklist

  • Confirm the <2 cap on @hono/node-server is the desired call vs. taking 2.x deliberately in a separate PR
  • Confirm leaving sharp to upstream is acceptable given the nil-exposure argument
  • Spot-check hono 4.12.31 → 4.13.3 (minor, within major) for anything affecting nimbus-mcp

🤖 Generated with Claude Code

All eight affected packages are transitive; seven already had security-floor
overrides that new advisories had outgrown, so each floor moves up rather than
a new override being added.

  js-yaml            ^3.15.0        -> ^3.15.1        (3.15.1)
  ip-address         >=10.1.1       -> >=10.3.1       (10.5.0)
  undici             >=7.28.0 <8    -> >=7.29.0 <8    (7.29.0)
  fast-uri           >=4.1.1        -> >=4.1.2        (4.1.2)
  postcss            >=8.5.10       -> >=8.5.23       (8.5.26)
  hono               >=4.12.27      -> >=4.12.34      (4.13.3)
  @hono/node-server  >=1.19.13      -> >=1.19.15 <2   (1.19.17)

@hono/node-server gains a `<2` cap. Its old floor held 1.19.13 only because
pnpm leaves an already-locked version alone while it still satisfies its spec;
moving the floor forces re-resolution, and an open range would have silently
landed 2.x (a major that also raises the Node floor to >=20).

Fixes:
  ip-address         CVE-2026-69192, CVE-2026-69198, CVE-2026-54272
  undici             CVE-2026-13697, CVE-2026-15157, CVE-2026-16729,
                     CVE-2026-14643, CVE-2026-16728
  hono               CVE-2026-71849, CVE-2026-71850, CVE-2026-71848,
                     CVE-2026-69207
  postcss            CVE-2026-73646, CVE-2026-69153
  fast-uri           CVE-2026-18446
  js-yaml            GHSA-5p4m-2wfm-xmqj
  @hono/node-server  GHSA-frvp-7c67-39w9

Not fixed: sharp (GHSA-f88m-g3jw-g9cj, high). The fix needs 0.35.0, but its
only parent -- @huggingface/transformers@4.2.0, already the latest release --
hard-depends on `sharp: ^0.34.5`, and 0.x-minor bumps are breaking by sharp's
own convention. Left for upstream. Exposure is nil in practice: sharp is never
imported by repo source, transformers runs in a browser worker on
onnxruntime-web (the Node sharp backend never loads), and apps/docs is private.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@misama-ct
misama-ct requested a review from a team as a code owner August 21, 2026 12:35
@misama-ct misama-ct added dependencies Pull requests that update a dependency file security labels Aug 21, 2026
@changeset-bot

changeset-bot Bot commented Aug 21, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 72589c3

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel

vercel Bot commented Aug 21, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
nimbus-documentation Ready Ready Preview Aug 24, 2026 7:27am
nimbus-storybook Ready Ready Preview Aug 24, 2026 7:27am

Request Review

@github-actions

github-actions Bot commented Aug 21, 2026

Copy link
Copy Markdown
Contributor

Bundle Size Report

Last updated: 2026-08-24 07:27:47 UTC

Package Format Current Baseline Delta Status
@commercetools/nimbus dist 18950.9 KB 18950.9 KB -0.0% ✅ ok
@commercetools/nimbus-icons dist 4787.6 KB 4787.6 KB +0.0% ✅ ok
@commercetools/nimbus-tokens dist 408.9 KB 408.9 KB +0.0% ✅ ok

Baseline source: comment-chain

@chromatic-com

chromatic-com Bot commented Aug 21, 2026

Copy link
Copy Markdown

Tip

All tests passed and all changes approved!

🟢 UI Tests: 1207 tests unchanged
🟢 UI Review: 1207 stories published -- no changes
Storybook icon Storybook Publish: 1207 stories published

@misama-ct misama-ct self-assigned this Aug 21, 2026
@misama-ct
misama-ct merged commit d5ae7e0 into main Aug 24, 2026
13 checks passed
@misama-ct
misama-ct deleted the security/fix-alerts-2026-08-21 branch August 24, 2026 07:40
@github-actions github-actions Bot added the bundle-sizes Housekeeping for merged PRs - allows the fetch sizes script to find the latest bundle check comment. label Aug 24, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bundle-sizes Housekeeping for merged PRs - allows the fetch sizes script to find the latest bundle check comment. dependencies Pull requests that update a dependency file security

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant