Skip to content

chore(deps): resolve esbuild GHSA-67mh-4wv8-2f99 via electron-vite 5 + in-range dep sweep; docs accuracy pass - #165

Merged
PAMulligan merged 3 commits into
mainfrom
158-choredeps-weekly-dependency-security-sweep-wk-3-8-dependabot-alerts-tar-7-esbuild-docs-pass
Aug 24, 2026
Merged

chore(deps): resolve esbuild GHSA-67mh-4wv8-2f99 via electron-vite 5 + in-range dep sweep; docs accuracy pass#165
PAMulligan merged 3 commits into
mainfrom
158-choredeps-weekly-dependency-security-sweep-wk-3-8-dependabot-alerts-tar-7-esbuild-docs-pass

Conversation

@PAMulligan

@PAMulligan PAMulligan commented Aug 24, 2026

Copy link
Copy Markdown
Collaborator

Summary

Weekly Dependency + Security Sweep (Wk 3) — closes #158.

Dependabot alerts (8)

tar ×7 (#33#38, #59) — already resolved on main by #163: electron-builder 26 moved the whole chain to a single tar@7.5.22, past the 7.5.16 fully-fixed floor for this cluster. No further action needed; the alerts should auto-dismiss on Dependabot's next scan.

esbuild #31 (GHSA-67mh-4wv8-2f99, Moderate) — the vulnerable esbuild@0.21.5 was pulled solely by electron-vite@2.3.0. Bumped electron-vite to ^5.0.0 (published 2025-12-07, well past cooldown), whose esbuild ^0.25.11 resolves 0.25.12 — outside the affected range (≤0.24.2). Bonus: electron-vite 5 accepts vite ^6, which fixes the long-standing unmet peer vite@"^4.0.0 || ^5.0.0": found 6.4.3 install warning. The GUI's minimal conventional-layout config needed no changes.

In-range dependency sweep

pnpm -r update (no majors) cleared the rest of the transitive audit findings — ws, js-yaml, brace-expansion, fast-uri, ip-address, nanoid, postcss. pnpm audit went from 20 findings to 1; the survivor is extract-zip ≤2.0.1 (GHSA-jmr9-qjv8-65gv), which has no patched release (patched range <0.0.0) and lives in install-time tooling (electron / puppeteer browser downloads) — nothing bumpable.

minimumReleaseAge honored: fast-xml-parser held at ~5.10.1 (2026-07-16) because 5.11.0 is only 7 days old; every other resolved version is 13+ days old (spot-checked publish dates).

Docs accuracy pass

  • Counts: README claims verified against the repo — 53 agents (53 files in .claude/agents/), 12 skills (12 dirs in .claude/skills/), 6 plugins (6 listed). All accurate, no changes needed.
  • Badges: the README has no shields/version badges — nothing to update.
  • Install steps: verified pnpm install (clean, no peer warnings now), wordpress-local.sh exists with the documented build/start/install/activate-theme subcommands, node bin/flavian.mjs --help and node scripts/init.mjs --help both run. Prereqs table already shows Node 22.12+ / pnpm 9.x correctly.
  • Fixed 5 stale "Node.js 20+" references (missed in fix(deps): resolve node-tar CVE-2026-23745 via electron-builder 26 bump #163's baseline raise) in docs/mcp-setup.md, docs/E2E-VALIDATION.md, docs/MCP-TROUBLESHOOTING.md.

Dependabot / Dependency graph remains enabled.

Test plan

  • pnpm gui:build / gui:test (53/53) / gui:typecheck / gui:lint — all pass under electron-vite 5
  • pnpm test:pipeline — 133/133 pass (incl. with fast-xml-parser held at 5.10.1)
  • pnpm audit — 1 finding remaining (unpatchable extract-zip), down from 20
  • CI green (Lighthouse cart-page budget flaked once on a slow runner — passed on rerun, same as fix(deps): resolve node-tar CVE-2026-23745 via electron-builder 26 bump #163; smoke failure was a real pnpm side-effects cache bug, fixed in this PR)

Notes: pnpm test:init and the GUI Playwright smoke fail identically on main in this environment (local mawk/gawk incompatibility; no display for Electron) — both unrelated, and the smoke is covered by the CI smoke job.

🤖 Generated with Claude Code

… sweep + docs pass

Weekly dependency + security sweep (Wk 3):

- esbuild (Dependabot #31, GHSA-67mh-4wv8-2f99): the vulnerable
  esbuild@0.21.5 was pulled solely by electron-vite@2.3.0. Bump
  electron-vite to ^5.0.0 (Dec 2025), whose esbuild ^0.25.11 is out
  of the affected range (<=0.24.2). This also fixes the standing
  unmet-peer warning: electron-vite 5 accepts vite ^6, matching the
  installed vite 6.4.3.
- tar ×7 (Dependabot #33-#38, #59): already resolved on main by
  #163 (electron-builder 26 moved the tree to tar 7.5.22 >= 7.5.16).
- In-range `pnpm -r update` sweep: clears the remaining transitive
  audit findings (ws, js-yaml, brace-expansion, fast-uri, ip-address,
  nanoid, postcss). pnpm audit is down from 20 findings to 1:
  extract-zip <=2.0.1 (GHSA-jmr9-qjv8-65gv) has no patched release
  and sits in install-time tooling (electron / puppeteer downloads).
- minimumReleaseAge: fast-xml-parser held at ~5.10.1 (2026-07-16);
  5.11.0 is only 7 days old. All other resolved versions are 13+
  days old.
- Docs accuracy pass: README counts verified correct (53 agents,
  12 skills, 6 plugins); no version badges exist; install entry
  points verified (wordpress-local.sh subcommands, flavian CLI,
  init wizard). Updated 5 stale "Node.js 20+" references in
  docs/mcp-setup.md, docs/E2E-VALIDATION.md,
  docs/MCP-TROUBLESHOOTING.md to 22.12+ (baseline raised in #163).

Closes #158

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@PAMulligan
PAMulligan force-pushed the 158-choredeps-weekly-dependency-security-sweep-wk-3-8-dependabot-alerts-tar-7-esbuild-docs-pass branch from f283600 to e20e38a Compare August 24, 2026 02:20
Paul Mulligan and others added 2 commits August 23, 2026 22:27
The gui job installs with ELECTRON_SKIP_BINARY_DOWNLOAD=1, and pnpm's
side-effects cache recorded that empty postinstall into the store. The
store is cached keyed on the lockfile, so once the (faster) gui job
saved the cache, the smoke job restored an electron without dist/ and
failed with "Electron failed to install correctly".

- gui job: disable the side-effects cache for the skip-binary install
  so the poisoned artifact never enters the shared store cache.
- smoke job: self-heal — if electron's path.txt/dist are missing after
  install, run its install script directly (also repairs the cache
  entry already saved for the current lockfile key).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…ep-wk-3-8-dependabot-alerts-tar-7-esbuild-docs-pass
@PAMulligan
PAMulligan merged commit 708113a into main Aug 24, 2026
22 of 23 checks passed
@PAMulligan
PAMulligan deleted the 158-choredeps-weekly-dependency-security-sweep-wk-3-8-dependabot-alerts-tar-7-esbuild-docs-pass branch August 24, 2026 02:43
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.

chore(deps): Weekly Dependency + Security Sweep (Wk 3) — 8 Dependabot alerts (tar ×7 + esbuild) + docs pass

1 participant