Skip to content

fix(deps): electron 44.11.3 and patched advisory packages (same major) - #662

Merged
nubbymong merged 1 commit into
betafrom
fix/deps-security-2.1.3
Nov 14, 2026
Merged

nubbymong merged 1 commit into
betafrom
fix/deps-security-2.1.3

Conversation

@nubbymong

Copy link
Copy Markdown
Owner

Why

The pre-release alert check for 2.1.3-beta.1 ran npm audit on the candidate lockfile. It reported 2 critical and 7 high advisories, all older than this beta and all fixable within the same major. Dependabot shows the same packages, but it only scans main.

A read-only reachability check against the shipped app found one reachable:

  • Electron 44.5.1 (GHSA-jr5w-w6x2-84p9): the compromised eMudhra intermediate certificates are not blocked. Someone intercepting network traffic with such a certificate could impersonate the app's HTTPS endpoints (GitHub API, usage, changelog, pricing). The updater is still protected by its checksum and signature check. Fixed in 44.9.1; this takes 44.11.3.

Not reachable in the shipped app; bumped anyway because the fix is a patch or minor:

  • proxy-addr, body-parser: they come only through express, which the app never loads.
  • DOMPurify: the app uses only string-mode sanitize, with none of the affected options.
  • MCP SDK: only the four server entry points are used, behind the app's own token check on loopback; there is no OAuth client and no task store.
  • zod: only trusted or authenticated inputs.
  • undici, vite, source-map-js: build or dev tooling.

What changed

Only these lockfile entries moved (no npm audit fix; the electron-builder family, vitest, mermaid and hono are untouched):

Package Old New
electron (exact pin) 44.5.1 44.11.3
@modelcontextprotocol/sdk 1.30.0 1.32.2
dompurify 3.4.16 3.4.17
zod 4.5.4 4.6.7
proxy-addr 2.0.7 2.0.8
body-parser (+ its content-type, iconv-lite) 2.3.0 2.4.0
undici / node-gyp's undici 7.30.0 / 6.29.0 7.30.2 / 6.29.1
source-map-js 1.2.1 1.2.2
vite 7.3.5 7.3.8

After: npm audit shows 0 critical and 0 high (18 moderate, 4 low; those need major changes in the build-time electron-builder tree or the excalidraw tree, and go to a ticket).

Review and risk

  • Same majors throughout, so native modules keep the same ABI.
  • Not an ADR-009 major runtime bump, and not in the SSH live-matrix radius.
  • MCP SDK 1.30.1+ returns 413 for request bodies over 4 MiB on streamable HTTP. A very large Codex canvas_render payload could now hit that limit.
  • Not tested locally: the shared node_modules holds the old versions. This PR's CI is the test, then the release build plus the VM smoke test (terminals, SSH statusline, vision browser, a Codex canvas render).

Merge only after the owner approves adding it to 2.1.3-beta.1. If approved, it merges before the model-definitions PR, which carries the version bump.

🤖 Generated with Claude Code

Narrow bump, no npm audit fix. Old -> new:
- electron 44.5.1 -> 44.11.3 (exact pin kept)
- @modelcontextprotocol/sdk 1.30.0 -> 1.32.2
- dompurify 3.4.16 -> 3.4.17
- zod 4.5.4 -> 4.6.7
- proxy-addr 2.0.7 -> 2.0.8
- body-parser 2.3.0 -> 2.4.0 (content-type 2.0.0 -> 2.1.0, iconv-lite 0.7.2 -> 0.7.3 nested)
- undici 7.30.0 -> 7.30.2; node-gyp undici 6.29.0 -> 6.29.1
- source-map-js 1.2.1 -> 1.2.2
- vite 7.3.5 -> 7.3.8

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings November 14, 2026 04:30
@nubbymong nubbymong added the release-2.1 Targets the 2.1 release line label Nov 14, 2026
@nubbymong nubbymong added the ci-run Run full CI matrix (Win+macOS) on this PR label Nov 14, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔵 Needs a closer look

The new 4 MiB transport limit can reject supported inline canvas_render inputs with HTTP 413 due to JSON escaping, requiring limit alignment and an HTTP boundary regression test.

No open issues 🎉

What changed in this PR

Updates AI Code Conductor’s Electron runtime and selected dependencies to address reported advisories without major-version upgrades.

Changes:

  • Pins Electron to 44.11.3 in the manifest and lockfile.
  • Updates MCP SDK, DOMPurify, Zod, and selected transitive and tooling packages while leaving the electron-builder family unchanged.
File Description
package.json Updates the exact Electron version pin.
package-lock.json Locks the patched dependency versions and associated metadata.

Review effort: Balanced

@nubbymong
nubbymong merged commit bfbe669 into beta Nov 14, 2026
24 checks passed
@nubbymong
nubbymong deleted the fix/deps-security-2.1.3 branch November 14, 2026 05:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-run Run full CI matrix (Win+macOS) on this PR release-2.1 Targets the 2.1 release line

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants