chore(security): resolve pnpm audit vulnerabilities (2 high, 2 moderate) - #405
Conversation
- vite override >=8.0.16: fs.deny bypass (high), launch-editor NTLM disclosure (moderate) - js-yaml override >=4.2.0: quadratic-complexity DoS (moderate) - tsx ^4.22.4 (cli, convert, mcp): pulls patched esbuild ~0.28.0, fixes esbuild RCE (high) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (4)
📝 WalkthroughWalkthroughRoot Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes Suggested reviewers
🚥 Pre-merge checks | ✅ 6✅ Passed checks (6 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #405 +/- ##
=======================================
Coverage 83.95% 83.95%
=======================================
Files 146 146
Lines 8029 8029
Branches 2168 2230 +62
=======================================
Hits 6741 6741
Misses 1287 1287
Partials 1 1 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Summary
Fixes the 4 vulnerabilities reported by
pnpm audit(the failingAudit - All/Audit - ProductionCI jobs). All are transitive dev dependencies, addressed via the repo's existing conventions —pnpm.overridesfloors for transitive deps, and a direct-dep range bump where the vuln is pinned by its parent.tsx)NPM_CONFIG_REGISTRYtsx→^4.22.4(uses esbuild~0.28.0)server.fs.denybypassvite>=8.0.16vite>=8.0.16json-schema-to-typescript)js-yaml>=4.2.0Approach
>=7.3.2→>=8.0.16.>=4.2.0(satisfiesjson-schema-to-typescript's^4.1.0).tsx^4.20.6→^4.22.4inpackages/{cli,convert,mcp}. esbuild is pinned by tsx, so bumping tsx is cleaner and safer than forcing an esbuild override (which would fight tsx's pin and disturb vite/vitest's shared esbuild).Lockfile changes are contained to these four bumps plus their direct consequences (re-keyed
vitest/vite-tsconfig-paths; minor transitive shifts in nanoid/postcss/rolldown/tinyglobby).Verification
pnpm auditandpnpm audit --prod→ no known vulnerabilitiespnpm install --frozen-lockfile→ lock ↔ package.json consistentpnpm build,pnpm typecheckpnpm test→ 2248 passed🤖 Generated with Claude Code
Summary by CodeRabbit
js-yaml(>=4.2.0),vite(>=8.0.16), andtsx(^4.22.4)