Skip to content

fix(deps): resolve production audit advisories - #2049

Merged
Eli Bosley (elibosley) merged 1 commit into
mainfrom
fix/audit-dep-bumps
Jul 22, 2026
Merged

fix(deps): resolve production audit advisories#2049
Eli Bosley (elibosley) merged 1 commit into
mainfrom
fix/audit-dep-bumps

Conversation

@elibosley

Copy link
Copy Markdown
Member

Summary

Clears every finding from pnpm run audit --prod (which now exits 0 with zero advisories), addressing the vulnerabilities that turned the 4.36.0 release run red. Companion to #2048, which stops audit findings from blocking publishing; this one removes the findings themselves.

Changes

Advisory Package Fix
GHSA-4c8g-83qw-93j6 (high) fast-uri (via api > fastify) Bump pnpm.overrides pin 3.1.2 → 3.1.4
GHSA-w62v-xxxg-mg59 (mod, XSS) hono (via MCP SDK) Add pnpm.overrides pin 4.12.31
GHSA-xvcm-6775-5m9r (high, DoS) immutable (via @graphql-codegen/client-preset) Move client-preset to devDependencies
GHSA-frvp-7c67-39w9 (mod, path traversal) @hono/node-server (via shadcn-vue) Move shadcn-vue to devDependencies

Why the dependency moves (instead of forcing overrides)

immutable has no patched 3.x (fix requires the 4.x major) and @hono/node-server requires the 2.x major — forcing either global override risks breaking the codegen/relay-compiler and MCP SDK toolchains. Both advisories reach --prod only because their carriers were mislabeled as runtime dependencies:

  • @graphql-codegen/client-preset backs preset: 'client' in api/codegen.ts (build-time codegen) and is never imported at runtime. Its eight sibling @graphql-codegen/* packages — and web's copy of client-preset itself — are already devDependencies. This just fixes the inconsistency.
  • shadcn-vue is a component-scaffolding CLI referenced only in unraid-ui's README and components.json; it is never imported by the built library.

Moving them to devDependencies is correct hygiene and takes both advisories out of the production graph without a risky major bump. They remain installed for dev/CI, so codegen and component scaffolding are unaffected.

Verification

  • pnpm install --lockfile-only succeeds; lockfile resolves fast-uri@3.1.4 and hono@4.12.31.
  • pnpm run audit --prod → exit 0, {info:0, low:0, moderate:0, high:0, critical:0}.
  • Confirmed neither moved package is imported in runtime source (grep across api/src and unraid-ui/src).

Clears all findings from `pnpm run audit --prod`:

- fast-uri: bump override 3.1.2 -> 3.1.4 (GHSA-4c8g-83qw-93j6, high;
  transitive via api > fastify).
- hono: add override 4.12.31 (GHSA-w62v-xxxg-mg59, XSS in cx()).
- @graphql-codegen/client-preset: move from api dependencies to
  devDependencies. It only backs `preset: 'client'` in api/codegen.ts
  (build-time) and is never imported at runtime; web already declares it
  as a devDependency. This drops the immutable DoS advisory
  (GHSA-xvcm-6775-5m9r) out of the production graph.
- shadcn-vue: move from unraid-ui dependencies to devDependencies. It is
  a component-scaffolding CLI referenced only in the README/components.json
  and never imported at runtime. This drops the @hono/node-server path
  traversal advisory (GHSA-frvp-7c67-39w9) out of the production graph.

pnpm run audit --prod now exits 0 with zero advisories.
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@elibosley, you've reached your PR review limit, so we couldn't start this review.

Next review available in: 46 minutes

Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available.
You're only billed for reviews past your plan's rate limits ($0.25/file).

How can I continue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews.

How do review limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window.

Please refer docs for additional details.

Review details
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: 74d468d6-6662-43f3-ba91-6cfd3ca64a87

📥 Commits

Reviewing files that changed from the base of the PR and between 9db6c38 and c478e85.

⛔ Files ignored due to path filters (1)
  • pnpm-lock.yaml is excluded by !**/pnpm-lock.yaml
📒 Files selected for processing (3)
  • api/package.json
  • package.json
  • unraid-ui/package.json
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/audit-dep-bumps

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

🚀 Storybook has been deployed to staging: https://unraid-ui-storybook-staging.unraid-workers.workers.dev

@github-actions

Copy link
Copy Markdown
Contributor

This plugin has been deployed to Cloudflare R2 and is available for testing.
Download it at this URL:

https://preview.dl.unraid.net/unraid-api/tag/PR2049/dynamix.unraid.net.plg

@elibosley
Eli Bosley (elibosley) merged commit e5654cc into main Jul 22, 2026
13 checks passed
@elibosley
Eli Bosley (elibosley) deleted the fix/audit-dep-bumps branch July 22, 2026 03:35
@github-actions

Copy link
Copy Markdown
Contributor

🔄 PR Merged - Plugin Redirected to Staging

This PR has been merged and the preview plugin has been updated to redirect to the staging version.

For users testing this PR:

  • Your plugin will automatically update to the staging version on the next update check
  • The staging version includes all merged changes from this PR
  • No manual intervention required

Staging URL:

https://preview.dl.unraid.net/unraid-api/dynamix.unraid.net.plg

Thank you for testing! 🚀

Eli Bosley (elibosley) pushed a commit that referenced this pull request Jul 22, 2026
🤖 I have created a release *beep* *boop*
---


## [4.36.1](v4.36.0...v4.36.1)
(2026-07-22)


### Bug Fixes

* **ci:** make dependency audit non-blocking
([#2048](#2048))
([9db6c38](9db6c38))
* **deps:** resolve production audit advisories
([#2049](#2049))
([e5654cc](e5654cc))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@codecov

codecov Bot commented Jul 22, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 52.94%. Comparing base (689620c) to head (c478e85).
⚠️ Report is 3 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2049      +/-   ##
==========================================
+ Coverage   52.92%   52.94%   +0.01%     
==========================================
  Files        1035     1035              
  Lines       72122    72122              
  Branches     8313     8317       +4     
==========================================
+ Hits        38169    38183      +14     
+ Misses      33826    33812      -14     
  Partials      127      127              

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

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