Skip to content

fix(ci): clear prod audit failures via transitive overrides - #58

Merged
luoxuanzao merged 1 commit into
mainfrom
fix/prod-audit-overrides
Sep 9, 2026
Merged

fix(ci): clear prod audit failures via transitive overrides#58
luoxuanzao merged 1 commit into
mainfrom
fix/prod-audit-overrides

Conversation

@luoxuanzao

Copy link
Copy Markdown
Member

Summary

  • release-artifacts fails on main and on chore(dev): make the plugin bundle debuggable in Obsidian #57 at the npm run audit:prod step. The failure is pre-existing and unrelated to any pending feature work: three transitive dependencies resolve to versions inside published advisory ranges.
  • Raise the existing exact-pin overrides so npm audit --omit=dev reports zero vulnerabilities again:
    • fast-uri 3.1.5 → 3.1.7 (host confusion, IPv6/percent-decoding SSRF — GHSA-5jgf-p345-68v8 and friends)
    • hono 4.13.0 → 4.13.7 (toSSG() path traversal, parseBody() memory exhaustion, query parser fragment differential)
    • qs → 6.16.0, newly pinned; it was resolving to 6.15.2 through express and body-parser (array-limit bypass, isBuffer DoS)
  • All three stay within the semver ranges their dependents declare (ajv wants fast-uri ^3.0.1, @hono/node-server peers hono ^4, express/body-parser want qs ^6.14.0/^6.15.2), so no direct dependency or source changes are required. package-lock.json churn is limited to these packages plus qs's own side-channel bump.

Dev-only advisories are intentionally left alone: security.yml documents that audit:prod is the gate, and @humanfs/node, baseline-browser-mapping, browserslist and js-yaml do not reach the shipped bundle.

Test plan

  • npm ci succeeds, confirming the lockfile is consistent with package.json
  • npm run audit:prodfound 0 vulnerabilities
  • npm run typecheck
  • npm run lint
  • npm run build and npm run release:checkRelease 1.0.7 is ready.
  • npm test → 160 suites, 3486 tests passed
  • CI green on this PR, including the previously failing release-artifacts job

The release-artifacts job fails at `npm run audit:prod` because three
transitive dependencies resolve to versions inside published advisory
ranges: fast-uri 3.1.5 (host confusion and SSRF), hono 4.13.0 (path
traversal, parseBody memory exhaustion, query parser fragment handling),
and qs 6.15.2 pulled in through express and body-parser.

Raise the existing exact-pin overrides to fast-uri 3.1.7 and hono
4.13.7, and pin qs to 6.16.0 so `npm audit --omit=dev` reports zero
vulnerabilities again. All three stay within the semver ranges their
dependents declare, so no direct dependency changes are needed.
@luoxuanzao
luoxuanzao merged commit 8602b5c into main Sep 9, 2026
10 checks passed
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.

1 participant