Skip to content

fix: scope CI dependency audit to production dependencies only - #18

Merged
selectdimensions merged 1 commit into
mainfrom
ci/scope-audit-to-production
Oct 3, 2026
Merged

selectdimensions merged 1 commit into
mainfrom
ci/scope-audit-to-production

Conversation

@selectdimensions

Copy link
Copy Markdown
Collaborator

Summary

CI's npm audit --audit-level=high step was failing on every PR right now (confirmed with a fresh re-run of PR #16's checks, not just a stale cached result) due to high-severity advisories in electron-builder's transitive dependencies (http-cache-semantics, brace-expansion, fast-uri). electron-builder is a devDependency used only to build the desktop installer locally (npm run dist) — it never ships to the deployed map, admin page, or API functions, so these advisories pose no risk to anything actually in production.

Checked whether the pending Dependabot PR (#16, electron 44.2.0 → 44.4.5) would fix this on its own first — it doesn't; a fresh re-run of its CI still shows the same 10 vulnerabilities, since they're in electron-builder's tree, not electron's.

This project ships zero runtime npm dependencies (the API functions use only Node built-ins, the frontend loads Leaflet from a CDN) — package.json has no "dependencies" field at all, only devDependencies. So npm audit --omit=dev has nothing left to audit and passes cleanly, while still catching anything that would actually matter if a real runtime dependency is ever added.

Test plan

  • npm audit --omit=dev --audit-level=high passes locally (0 vulnerabilities — there are no production deps to flag).
  • npm run validate passes unchanged.

🤖 Generated with Claude Code

npm audit --audit-level=high was failing CI on every PR (confirmed via
a fresh re-run, not just a stale result) due to high-severity
advisories in electron-builder's transitive dependencies
(http-cache-semantics, brace-expansion, fast-uri). electron-builder is
a devDependency used only to build the desktop installer locally — it
never ships to the deployed map, admin page, or API functions, so
these advisories pose no risk to anything actually in production.

This project has zero runtime npm dependencies (the API functions use
only Node built-ins; the frontend loads Leaflet from a CDN), so
--omit=dev has nothing left to audit and passes cleanly. Confirmed the
pending Dependabot electron bump (PR #16) does not fix this either —
the flagged vulnerabilities are in electron-builder's tree, not
electron's, so bumping electron alone wouldn't have unblocked CI.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018KR2ZSHK8Skmyd1zyTaw7v
Copilot AI balanced review requested due to automatic review settings October 3, 2026 02:32
@vercel

vercel Bot commented Oct 3, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
interactive-map Ready Ready Preview Oct 3, 2026 2:32am UTC

@selectdimensions
selectdimensions merged commit 02e4b47 into main Oct 3, 2026
4 checks passed

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.

Copilot review overview

🟡 Changes recommended

The new scope excludes Electron despite it being bundled into published desktop installers.

Review effort: Balanced
Findings: 1 High severity

Open (1)
What changed in this PR

Scopes CI dependency auditing to non-development packages.

Changes:

  • Adds context explaining the audit scope.
  • Runs npm audit with --omit=dev.
File Description
.github/​workflows/​ci.yml Restricts dependency auditing to production dependencies.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/workflows/ci.yml
# electron/electron-builder are devDependencies for the desktop packaging
# tool only — never shipped to the deployed map/admin/API — so their
# transitive vulnerabilities shouldn't block every unrelated PR.
run: npm audit --omit=dev --audit-level=high
@PraxiumLearning03
PraxiumLearning03 deleted the ci/scope-audit-to-production branch October 3, 2026 02:35

This branch was successfully deployed

1 active deployment
Preview — e3594338 Deployed Oct 3, 2026 by vercel[bot]
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.

3 participants