Context
PR #63 added a scoped pnpm.auditConfig.ignoreGhsas entry for GHSA-gv7w-rqvm-qjhr (esbuild RCE via NPM_CONFIG_REGISTRY, patched in esbuild >=0.28.1) to unblock the pnpm audit --audit-level=high CI gate.
esbuild is a build-time-only transitive dependency (tsup for the proxy build, vite for the dashboard build) and is not in the shipped @gethelio/proxy runtime, so the ignore is low-risk. But it is a temporary suppression, not a fix.
The proper fix (bumping esbuild to ^0.28.1 via a pnpm override) was tried and reverted: vite@6.4.2 cannot compile against esbuild 0.28 — the dashboard build fails with 600+ "Transforming destructuring … is not supported yet" errors. There is no patched esbuild below 0.28.1, so closing this requires a vite upgrade.
Task
Notes
vite 6 → 7 is a major bump (Rollup / plugin API surface), so budget for some breakage in the dashboard build config. Keep it isolated in its own PR.
Context
PR #63 added a scoped
pnpm.auditConfig.ignoreGhsasentry for GHSA-gv7w-rqvm-qjhr (esbuild RCE viaNPM_CONFIG_REGISTRY, patched in esbuild>=0.28.1) to unblock thepnpm audit --audit-level=highCI gate.esbuild is a build-time-only transitive dependency (
tsupfor the proxy build,vitefor the dashboard build) and is not in the shipped@gethelio/proxyruntime, so the ignore is low-risk. But it is a temporary suppression, not a fix.The proper fix (bumping esbuild to
^0.28.1via a pnpm override) was tried and reverted:vite@6.4.2cannot compile against esbuild 0.28 — the dashboard build fails with 600+ "Transforming destructuring … is not supported yet" errors. There is no patched esbuild below 0.28.1, so closing this requires aviteupgrade.Task
vite(andtsupif needed) to a release whose esbuild dependency is>=0.28.1.pnpm --filter @gethelio/dashboard build) and the fullpnpm build.pnpm audit --audit-level=highpasses with esbuild on the patched line.pnpm.auditConfig.ignoreGhsasentry from rootpackage.json.Notes
vite6 → 7 is a major bump (Rollup / plugin API surface), so budget for some breakage in the dashboard build config. Keep it isolated in its own PR.