fix(deps): bump hono, fast-uri and body-parser to clear 10 dependabot alerts - #48
fix(deps): bump hono, fast-uri and body-parser to clear 10 dependabot alerts#48yakimoto wants to merge 1 commit into
Conversation
… alerts Three of the four HIGH-severity alerts open on this workspace are cleared here, and all three packages are TRANSITIVE — none is declared in any manifest — so the fix is confined to the lockfile and no declared range moves. The diff contains zero `specifier:` lines and `pnpm install --frozen-lockfile` reports "Lockfile is up to date, resolution step is skipped", which is what proves the lockfile is still consistent with the untouched manifests rather than merely appearing to be. hono 4.12.23 -> 4.12.32 7 alerts (1 high), patched floor 4.12.27 fast-uri 3.1.2 -> 3.1.4 2 alerts (both high), patched floor 3.1.4 body-parser 2.2.2 -> 2.3.0 1 alert (low), patched floor 2.3.0 Incidental re-resolution inside already-declared ranges, all from the tsup build-tool subtree: lightningcss 1.32.0 -> 1.33.0, postcss 8.5.15 -> 8.5.23, nanoid 3.3.12 -> 3.3.16, @napi-rs/wasm-runtime 1.1.4 -> 1.1.6, @tybys/wasm-util 0.10.2 -> 0.10.3, plus new tinyglobby/fdir/picomatch entries. Five alerts are deliberately left open rather than swept in. vite (2, one HIGH) and esbuild (1, low) enter only through `vitest`, a devDependency, so they are test tooling and are never present in a published tarball — Dependabot reports them as `scope: runtime`, which is a pnpm-lockfile misattribution. Moving them needs either a permanent `pnpm.overrides` pin for dev-only tooling or a vitest bump, and Renovate #24 already proposes the latter independently. @hono/node-server (1, medium) needs 1.19.14 -> 2.0.5, a major jump that does not belong in a patch-level security change. Verified locally because Actions cannot run at all right now (org-wide account billing lock): `pnpm -r build` clean, `pnpm -r test` exit 0 with 143 tests / 52 files / 48 packages green and zero failures, `pnpm -r type-check` with zero `error TS`.
|
Bugbot couldn't run - usage limit reachedBugbot is counted against Cursor usage for this user or team, and this run hit a usage or spend limit. A user or team admin can review and increase usage limits in the Cursor dashboard. (requestId: serverGenReqId_abfb352f-4bcc-44d3-992a-ebfc9659c6df) |
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (1)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
✨ Simplify code
Comment |
Clears 10 of the 15 open Dependabot alerts on this repo, including 3 of the 4 highs. Lockfile only —
sdk-typescript/pnpm-lock.yamlis the single file changed.honofast-uribody-parserAll three are transitive — no
package.jsonin the workspace declares any of them — so no declared range needed to move.Why the lockfile is still trustworthy
A dependency change that looks applied but isn't is the expensive failure mode here, so this is stated as a receipt rather than an assurance:
Zero
specifier:lines means no declared range shifted;--frozen-lockfilesucceeding means the lockfile is genuinely consistent with the untouched manifests rather than merely looking plausible. And the bump is on disk, not just in YAML:Verification — local, because CI cannot run
Actions are refusing every job org-wide on an account-level billing lock (
plan=free,locked=yesas of2026-07-28T01:25:58Z). There will be no check on this PR, and an absent check is not a passing one. So the suite was run against the exact committed bytes:(
pnpm -r testfails on a clean tree untilpnpm -r buildruns —@wave-av/corehas nodist/to resolve. That ordering is pre-existing and unrelated to this change.)The 5 alerts left open, on purpose
vite(2 alerts, one HIGH) andesbuild(1, low) — dev tooling, not shipped. They enter solely throughvitest ^4.1.4, adevDependencyof every package. They are never present in a published tarball. Dependabot reports them asscope: runtime, which is a pnpm-lockfile scope misattribution — worth knowing before anyone reads "1 high, runtime" and escalates.Moving them requires either a
pnpm.overridespin — a permanent manifest pin, for dev-only tooling — or avitestbump, which Renovate #24 already proposes independently. Letting #24 do it is the cleaner path. If you'd rather treat build tooling as in-scope because it runs inside the provenance-signed release pipeline, say so and I'll add the override — that's a defensible call and I'd rather you make it than inherit my default.@hono/node-server(1, medium) needs1.19.14 → 2.0.5— a major jump on a transitive dep. That does not belong in a patch-level security change; it needs its own PR with its own verification.Incidental churn, disclosed
Re-resolution inside already-declared ranges, all from the
tsupbuild-tool subtree:lightningcss1.32.0→1.33.0,postcss8.5.15→8.5.23,nanoid3.3.12→3.3.16,@napi-rs/wasm-runtime1.1.4→1.1.6,@tybys/wasm-util0.10.2→0.10.3, plus newtinyglobby/fdir/picomatchentries. Unavoidable when a lockfile is refreshed; called out so it isn't mistaken for scope creep.One thing that was reverted rather than shipped: the first attempt ran
pnpm update --recursiveincludingvitest, which silently rewrote all 48package.jsonfiles — collapsing single-line JSON objects across every manifest and unescaping—into a literal em-dash inside publisheddescriptionfields. 928 insertions of pure formatting noise riding inside a security fix. Fully reverted before the real change was made;--lockfile-onlydoes not protect manifests from--recursive.Relationship to the other open PRs
Independent of #45 and #47 (both touch
.github/workflows/publish-npm.yml; this touches only the lockfile), so it can land in any order. Based directly onmain@9eb128a.Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.Note
Low Risk
Runtime risk is low because published SDK code paths are unchanged and only transitive lockfile versions move; residual risk is limited to dev/build tooling behavior from the incidental tsup/vite subtree bumps.
Overview
Lockfile-only update to
sdk-typescript/pnpm-lock.yaml—nopackage.jsonspecifier changes. It bumps transitive packages (mainly via@modelcontextprotocol/sdkand thetsup/vitestdev toolchain) to address Dependabot alerts:hono4.12.23 → 4.12.32fast-uri3.1.2 → 3.1.4body-parser2.2.2 → 2.3.0 (includingcontent-typebehavior in that subtree)Re-resolution also refreshes related build-tool entries already within declared ranges (
postcss,lightningcss,nanoid, wasm helpers,tinyglobby/fdir/picomatch), so everytsupdevDependency line now pins topostcss@8.5.23instead of 8.5.15.Reviewed by Cursor Bugbot for commit 8aee779. Configure here.
Summary by cubic
Lockfile-only security bumps to clear 10 of 15 Dependabot alerts, including 3 highs, by upgrading transitive
hono,fast-uri, andbody-parser. No code or manifest changes.hono4.12.23 → 4.12.32 (clears 7 alerts),fast-uri3.1.2 → 3.1.4 (clears 2 highs),body-parser2.2.2 → 2.3.0 (clears 1 low).sdk-typescript/pnpm-lock.yamlonly; all are transitive;pnpm install --frozen-lockfileis clean. Incidental re-resolves in thetsuptoolchain (e.g.,postcss,lightningcss) stay within declared ranges.vite/esbuildviavitest(dev-only) and@hono/node-server(requires a major bump).Written for commit 8aee779. Summary will update on new commits.