chore(security): bundle npm fixes for root package-lock.json (16 alerts) - #29
Merged
benfrank241 merged 1 commit intoAug 27, 2026
Conversation
Closes 16 open Dependabot alerts on the root lockfile: - next 15.5.18 -> 15.5.24 (#33 #36 #37 #38 #39 #40 #41 #42) - postcss 8.4.31 -> 8.5.26 (#30 #34 #35 #45) - nanoid 3.3.8 -> 3.3.18 (#47 #48) - sharp 0.34.4 -> 0.35.4 (#32) - brace-expansion 2.0.3 -> 2.1.4 (#49) next is bumped via `npm update` within the existing peerDependencies range; the rest via npm `overrides`, since `next` pins postcss exactly and the others are transitive. peerDependencies is intentionally unchanged, so the published contract is untouched. Verified: `npm ci` clean (0 vulnerabilities) and `npm run build` green. dist/ built from main and from this branch is byte-identical, so the public API surface is unchanged. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
cdbartholomew
approved these changes
Aug 27, 2026
benfrank241
deleted the
chore/security-daily-20260826-vectorize-connect-sdk-npm-root
branch
August 27, 2026 17:49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Recreates the open Dependabot fixes for the root
package-lock.jsonon a human-authored branch, so CI actually runs with repository secrets (Dependabot's own branches don't get them).Scope: one bundle, npm / root
package-lock.json. Closes all 16 open alerts.npm auditreports 0 vulnerabilities after the change.Packages bumped
nextnpm update next(stays inside the existingpeerDependenciesrange)postcssoverrides(npm) —nextpinspostcssto an exact8.4.31nanoidoverrides(npm) — transitive viapostcsssharpoverrides(npm) — optional transitive ofnextbrace-expansionoverrides(npm) — dev-only, transitive viaminimatchAlerts closed
next→ 15.5.24GHSA-q8wf-6r8g-63ch/ CVE-2026-64644 — patched in 15.5.21GHSA-89xv-2m56-2m9x/ CVE-2026-64649 — patched in 15.5.21GHSA-4633-3j49-mh5q/ CVE-2026-64647 — patched in 15.5.21GHSA-68g3-v927-f742/ CVE-2026-64648 — patched in 15.5.21GHSA-955p-x3mx-jcvp/ CVE-2026-64643 — patched in 15.5.21GHSA-m99w-x7hq-7vfj/ CVE-2026-64641 — patched in 15.5.21GHSA-4c39-4ccg-62r3/ CVE-2026-64646 — patched in 15.5.21GHSA-p9j2-gv94-2wf4/ CVE-2026-64645 — patched in 15.5.21postcss→ 8.5.26GHSA-qx2v-qp2m-jg93/ CVE-2026-41305 — patched in 8.5.10GHSA-6g55-p6wh-862q/ CVE-2026-45623 — patched in 8.5.12GHSA-r28c-9q8g-f849/ CVE-2026-73646 — patched in 8.5.18GHSA-fxqj-rqcc-2cmp/ CVE-2026-69153 — patched in 8.5.23nanoid→ 3.3.18GHSA-28wg-ghj8-5hjv/ CVE-2026-67214 — patched in 3.3.16GHSA-2v37-7h3g-55p8/ CVE-2026-67213 — patched in 3.3.18sharp→ 0.35.4GHSA-f88m-g3jw-g9cj/ no CVE — patched in 0.35.0brace-expansion→ 2.1.4GHSA-3jxr-9vmj-r5cp/ CVE-2026-13149 — patched in 2.1.2Total: 16 alerts.
vulnerabilities (4 high, 1 moderate, 7 low) → 7 low**, all 7 being the un-fixable
@ai-sdk/*chain below.Needs a human look
sharp0.34.4 → 0.35.4. A0.xminor is a breaking-change slot in semver, and this pulls in the new@img/sharp-*platform binaries (the only packages added by this PR). It stays inside the rangenext@15.5.24itself declares, and I smoke-tested the native binding locally —sharploads and encodes a PNG against libvips 8.18.6. Still worth a second opinion since it's a native dep.nextstays on 15.5.x.maindoes not currently build — pre-existing, not caused by this PRnpm run buildfails on this branch, and it fails identically on unmodifiedmain. I reproduced it on a clean checkout before touching anything:tsc --noEmitreports the same 8 errors, byte-identical, before and after this change — this PR introduces zero new type errors. The webpack compile stage passes (✓ Compiled successfully); only the typecheck stage fails.The cause is a pre-existing mismatch in
package.jsonthat predates this sweep:ai@^5.0.68is paired with@ai-sdk/openai@^1.1.9/@ai-sdk/react@^1.2.2/@ai-sdk/groq@^1.1.7, andsrc/app/api/chat/route.tsis written against the AI SDK v4 API (parameters:instead ofinputSchema:,toDataStreamResponse()instead oftoUIMessageStreamResponse()). Fixing that is an app-code migration, deliberately not mixed into a security bundle. Tracked separately in the backlog issue.Note that repo CI here is only the GitLeaks secret scan — there is no build/test workflow — so this does not turn CI red.
npm run lintis also not runnable in either tree: no ESLint config is committed, sonext lintdrops into an interactive setup prompt. Unchanged by this PR.Verification performed
npm ci— clean, noERESOLVEnpm run build— compile stage passes; typecheck fails identically tomain(above)tsc --noEmit— diffed againstmain: identical, no new errorssharpnative binding — loads and encodes a PNG (libvips 8.18.6)@img/sharp-*platform set; no unrelated churn🤖 Generated with Claude Code
Verification (local, on this branch)
Derived from
package.jsonscripts— this repo definesbuild,clean,dev,prepublishOnly; there is notestorlintscript, so those steps are not applicable.npm ci— clean, 0 vulnerabilitiesnpm run build(tsup, CJS + ESM + d.ts) — successPublished-artifact check. Because this is a published SDK,
dist/was built from unmodifiedmainand from this branch and compared byte-for-byte. All three emitted artifacts are identical, so the public API surface is provably unchanged:This is expected:
src/imports none of the bumped packages. They enter the tree only as thenextpeer dependency and its transitives, andoverridesapply only to this repo as the root project — npm ignores them for consumers installing@vectorize-io/vectorize-connect.Lockfile churn
43 resolved versions changed, 4 packages added — all accounted for:
sharp0.34.4 → 0.35.4 drags its@img/sharp-*/@img/sharp-libvips-*platform set (plus@img/colour,@emnapi/runtime), and adds 4 new platform targets:@img/sharp-freebsd-wasm32,@img/sharp-linux-riscv64,@img/sharp-libvips-linux-riscv64,@img/sharp-webcontainers-wasm32next15.5.24 moves its@next/env+@next/swc-*set in lockstepsemver7.7.3 → 7.8.5 — required bysharp@0.35.4(semver: ^7.8.5)No unrelated packages moved. Nothing was removed.
Please review
sharp0.34.4 → 0.35.4 is a breaking-change bump under 0.x semver and needs a human eye, even though the risk here is low:sharpis an optional dependency ofnext, is never imported bysrc/, and is not involved in the build. Flagging per policy rather than because a problem was observed.peerDependencieswas deliberately left untouched at^14.2.25 || ^15.5.18. Note that this range still admitsnext@14.x, and GHSA-p9j2-gv94-2wf4 (#42, high) affects>= 12.0.0, < 15.5.21with no fix on the 14.x line — so a consumer on next 14 stays exposed regardless of this PR. Narrowing the peer range to^15.5.21would close that off, but it drops next 14 support and is a breaking change to this SDK's public contract, so it is a maintainer decision and is out of scope here.overridesentry fornextwas not usable: npm rejects it withEOVERRIDE("Override for next@^14.2.25 || ^15.5.18 conflicts with direct dependency") becausenextis also declared as a peer dependency.npm update nextwas used instead, which resolves within the already-declared range and required no manifest change.No alerts were dismissed. No unrelated changes are included.
🤖 Generated with Claude Code