fix(deps): remediate Dependabot security advisories - #100
Conversation
Clears the open Dependabot advisories across all four manifests. Python: - asyncssh 2.22.0 -> 2.23.0 (path traversal in AuthorizedKeysFile %u): bumped the pythinker-host pin and re-locked the root workspace and the standalone pythinker-host lockfile. - starlette 1.0.0 -> 1.2.1 (Host-header path poisoning), via root re-lock. JavaScript: - Regenerated web/, vis/, and install-counter-worker lockfiles to pull the already-allowed fixed versions, then ran npm audit fix. - Bumped the worker's vitest to ^3.2.6 (critical: Vitest UI arbitrary file read/exec). Verification: pythinker-host pytest (40), tests/core (1137), tests/web+acp (41); web typecheck+build+lint, vis typecheck+build, worker vitest (14) — all green. Residual: a few low-severity transitive elliptic/bn.js advisories in web's browser crypto polyfill chain, left unforced because the only fix downgrades vite-plugin-node-polyfills and majors `ai`, breaking the build for marginal benefit.
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: ASSERTIVE Plan: Pro Plus Run ID: ⛔ Files ignored due to path filters (5)
📒 Files selected for processing (3)
📝 WalkthroughWalkthroughThis PR addresses security vulnerabilities through targeted dependency updates. The changelog documents remediation of cleared Dependabot advisories with specific Python and JavaScript package version increments, while lockfiles and manifests reflect the pinned versions for ChangesSecurity Dependency Updates
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~3 minutes Suggested labels
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
Summary
Clears the open Dependabot advisories (reported as 111: 1 critical / 26 high / 78 moderate / 6 low) across all four manifests. Every change was verified by the affected package's own build/test.
Python (4 advisories → 0)
asyncssh2.22.0 → 2.23.0 — path traversal inAuthorizedKeysFile %u. Bumped thepythinker-hostpin and re-locked the root workspace + the standalonepythinker-hostlockfile.starlette1.0.0 → 1.2.1 — Host-header path poisoning. Bumped via root re-lock.JavaScript
web(66 → 9 low): regeneratedpackage-lock.json(package.json already allowedvite ^7/uuid ^13) +npm audit fix. All critical/high/moderate cleared.vis(38 → 0): lockfile regen +npm audit fix.install-counter-worker(3 → 0, incl. the critical):vitest ^2.1.9 → ^3.2.6(Vitest UI arbitrary file read/exec); bringsvite/esbuildto patched transitives.Verification
pythinker-hostpytest 40 passed,tests/core1137,tests/web+tests/acp41.typecheck+build+lintgreen. vis:typecheck+buildgreen. worker:vitest run14 passed.Residual (intentional)
A handful of low-severity transitive
elliptic/bn.jsadvisories inweb's browser crypto-polyfill chain (vite-plugin-node-polyfills). The only available fix (npm audit fix --force) downgradesvite-plugin-node-polyfillsand majorsaito v6, breaking the build — not worth it for low-severity browser-polyfill advisories. Left for a deliberate, separately-verified bump.Note
packages/pythinker-host/uv.lockis a vestigial standalone lock (last touched in the initial commit; CI'suv sync --projectuses the workspace root lock). Regenerated here purely to clear its Dependabot alert;uv lock --checkpasses.Summary by CodeRabbit