Context
After merging #190 + #192, open Dependabot alerts dropped 16 → 9. Triage of the remaining 9 against this project's real surface (Astro SSG / static web app, Linux CI/prod, Node 24):
ACTION-NEEDED (runtime, real)
LOW-RISK (dev-only / Windows-only — defer or override)
All of the following are dev-tooling and/or Windows-only; prod is Linux static output, so real exposure is low:
Plan
- Bump astro to
6.4.6 (closes all runtime alerts). ← priority
pnpm install to re-apply the existing yaml override and let esbuild/vite dedupe.
- Optional: add
pnpm.overrides for vite/esbuild/js-yaml to clear the noisy dev/Windows alerts.
After steps 1–2, all runtime alerts are resolved; only genuinely-low-risk Linux-irrelevant dev alerts would remain.
Context
After merging #190 + #192, open Dependabot alerts dropped 16 → 9. Triage of the remaining 9 against this project's real surface (Astro SSG / static web app, Linux CI/prod, Node 24):
ACTION-NEEDED (runtime, real)
6.3.1 → 6.4.6— closes 3 alerts at once (HIGH Host-header SSRF fix: @types/node v25 mismatches Node 22 LTS — use @types/node@22 #26, HIGH Reflected-XSS-via-slot-name bug: Path traversal risk in pipeline orchestrate.ts #25, MED unescaped-spread-attr-names bug: Annotator timestamp uses locale string parsing — produces wrong/NaN dates #27). All three are largely theoretical for a pure SSG deploy with no SSR server, but the bump is in-range under the existing"astro": "^6.3.1"inapps/web/package.json, so do it anyway:pnpm update astro --filter @civic-source/web.LOW-RISK (dev-only / Windows-only — defer or override)
All of the following are dev-tooling and/or Windows-only; prod is Linux static output, so real exposure is low:
server.fs.denybypass bug: Annotation output path/format wrong — should be /annotations/*.yaml not *.annotations.json #24 (labeled HIGH but Windows + dev-server only) → overridevite >=7.3.5 <8esbuild >=0.28.1(may dedupe after vite/astro bump)js-yaml >=4.2.0yaml-language-serverbehindastro check) → root already has ayamloverride; needs lockfile refresh / widened range to cover the language-server pathPlan
6.4.6(closes all runtime alerts). ← prioritypnpm installto re-apply the existingyamloverride and let esbuild/vite dedupe.pnpm.overridesfor vite/esbuild/js-yaml to clear the noisy dev/Windows alerts.After steps 1–2, all runtime alerts are resolved; only genuinely-low-risk Linux-irrelevant dev alerts would remain.