Fix open Dependabot/Aikido dependency alerts - #40
Conversation
Root workspace (pnpm-workspace.yaml overrides): - brace-expansion ^5.0.5 -> ^5.0.8 (CVE-2026-13149, CVE-2026-14257) - js-yaml 3.x pinned >=3.15.0 (CVE-2026-59869, CVE-2026-53550) - @babel/core pinned >=7.29.6 <8 (CVE-2026-49356, dev-only) .deepsec scanning workspace: - deepsec ^2.0.8 -> ^2.2.9 - overrides for fast-uri >=3.1.4 (CVE-2026-16221/-13676), hono >=4.12.27 (11 CVEs), @hono/node-server >=2.0.5, undici >=7.28.0 <8 (7 CVEs), tar >=7.5.21 (5 CVEs incl. the critical CVE-2026-59873), qs >=6.15.2, body-parser >=2.3.0, brace-expansion >=5.0.8 Verified: jest 34/34 unit tests pass, CJS+ESM builds and tsc lint clean. All pinned versions are 7+ days old (workspace minimumReleaseAge). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
|
Warning Review the following alerts detected in dependencies. According to your organization's Security Policy, it is recommended to resolve "Warn" alerts. Learn more about Socket for GitHub.
|
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 222a33b812
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| }, | ||
| "dependencies": { | ||
| "deepsec": "^2.0.8" | ||
| "deepsec": "^2.2.9" |
There was a problem hiding this comment.
Raise the scanner workspace's Node requirement
When .deepsec is installed with Node 22.14 (the version used throughout this repository's workflows), this upgrade pulls @earendil-works/pi-coding-agent@0.81.1 and related packages, all of which declare node >=22.19.0 in the new lockfile. An engine-strict installation therefore fails, while a non-strict installation leaves the documented scanner commands running on an unsupported runtime; declare/document Node >=22.19 for this workspace or retain a compatible Deepsec version.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed in c936a21: .deepsec/package.json now declares engines.node: >=22.19.0, so engine-strict installs fail fast on older runtimes instead of leaving the scanner on an unsupported Node.
| "hono": ">=4.12.27", | ||
| "@hono/node-server": ">=2.0.5", | ||
| "undici": ">=7.28.0 <8", | ||
| "tar": ">=7.5.21", | ||
| "qs": ">=6.15.2", |
There was a problem hiding this comment.
Cap security overrides at their patched majors
When this lockfile is next regenerated, these open-ended overrides can force future incompatible majors such as Hono 5, @hono/node-server 3, tar 8, or qs 7 even when their consumers request the current majors, because pnpm overrides replace the consumers' version ranges. The frozen lockfile masks this for now, but a routine dependency update can therefore break the scanner; add upper bounds as already done for fast-uri and undici.
Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Fixed in c936a21: every override is now capped at its patched major (hono <5, @hono/node-server <3, tar <8, qs <7, body-parser <3, brace-expansion <6), and the overrides are duplicated into .deepsec/pnpm-workspace.yaml so both pnpm 9 (package.json#pnpm) and pnpm >=10 (workspace file) apply them on a future regeneration. Also force zod >=4.4.0 <5 there (@vercel/sandbox pinned the flagged 3.24.4 exactly); deepsec 2.2.9 CLI verified booting after the change.
- .deepsec declares engines.node >=22.19.0: deepsec 2.2.9 pulls @earendil-works/pi-* packages that require it; fail at install time instead of at scan time on older runtimes. - Cap every .deepsec override at its patched major (hono <5, @hono/node-server <3, tar <8, qs <7, body-parser <3, brace-expansion <6) so a future lockfile regeneration cannot silently jump an incompatible major. - Duplicate the overrides into .deepsec/pnpm-workspace.yaml: pnpm >=10 reads overrides from the workspace file, the pinned pnpm 9 reads package.json#pnpm — keep both copies in sync. - Force zod >=4.4.0 <5 in .deepsec too: @vercel/sandbox pinned the Aikido-flagged zod 3.24.4 exactly; both lockfiles now resolve only zod 4.4.3. deepsec CLI verified booting with sandbox on zod 4. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Summary
Clears every open Dependabot alert (37) plus the Aikido fast-uri finding for this repo.
Root workspace (
pnpm-workspace.yamloverrides): brace-expansion → ^5.0.8, js-yaml 3.x → ≥3.15.0, @babel/core → ≥7.29.6 <8 (capped to avoid the freshly-released 8.x major)..deepsecscanning workspace (scanner tooling, not shipped): deepsec bumped to ^2.2.9 and overrides added for fast-uri (≥3.1.4, CVE-2026-16221 — the Aikido finding), hono ≥4.12.27, @hono/node-server ≥2.0.5, undici ≥7.28.0 <8, tar ≥7.5.21 (incl. critical CVE-2026-59873), qs ≥6.15.2, body-parser ≥2.3.0, brace-expansion ≥5.0.8.Notes: undici is capped <8 to stay on the requested major; @hono/node-server takes the 1.x→2.x major the advisory requires — it's internal to the deepsec scanner only.
Verification
pnpm test34/34 (integration suite is env-gated as designed)pnpm build(CJS + ESM) andpnpm lintcleanminimumReleaseAgerespected)🤖 Generated with Claude Code
Need help on this PR? Tag
@codesmith-botwith what you need. Autofix is disabled.