Repository navigation
fix(deps): patch dev-only security alerts in the root lockfile - #65
Conversation
Lockfile-only patch/minor bumps for the dev-only alerts triaged in #54 (PR B). None of these packages is installed by the prod-deps image stage. - handlebars 4.7.9 -> 4.7.10 (ts-jest) - fast-uri 3.1.6 -> 3.1.8 (ajv) - source-map-js 1.2.1 -> 1.2.2 (vite/postcss, jsdom) - undici 6.28.0 -> 6.29.0 (@codecov/vite-plugin) - undici 8.10.0 -> 8.11.2 (jsdom 30.0.1, which asks for ^8.9.0) The global "undici": "^6.27.0" override also forced jsdom's undici 8 copy, which npm ls reported as invalid. It is now scoped to the 6.x line ("undici@^6": "^6.28.1"), so jsdom resolves its own major and npm ls --all is clean. sprintf-js (#95) has no fixed release and stays until js-yaml 4 / Changesets 3 in v0.2. Refs #54 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Review of #65: fix(deps): patch dev-only security alerts in the root lockfileReviewed SummaryNothing is blocking. I found no should-fix items. The PR is not high risk: it changes no auth, crypto or key handling, adds no migration, does not touch tenant isolation, governance files, 1. Version bumps: patch/minor onlyI checked each lockfile hunk. I also checked each
2. The
|
…le-selfhosted-mode Brings in main (#5, #63, #69, #100, #103, #104, #106, #107 and the SaaS, billing, Autofix and phone-home removals) through #66 and #70. Resolutions: - package-lock.json: keep undici 6.29.0 as a runtime dependency (no "dev": true), since ssrf-safe-fetch imports it; the version bump from #65 is kept. - src/mcp/mcp-discovery.spec.ts: keep the single-mode test (canonical resource and issuer whatever the Host header) and serve it on loopback like the rest of the spec (#77). - src/common/constants/local-servers.ts and its spec: import getContainerHostAlias from common/utils/container-host, since detect-self-hosted no longer exists. - design-system/registry: regenerate (npm run design:registry). The Playground header classes from #106 were missing from it, which the pre-commit check refuses. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Summary
PR B of #54: fixes the dev-only Dependabot alerts in the root
package-lock.jsonwith patch/minor updates only. It changes only the lockfile plus one override line. No majors, no.github/changes, and the n8n node lockfile (#24) is untouched.handlebarsts-jestfast-uriajv(root,@nestjs/cli,@nestjs/schematics)source-map-jscss-tree),magicastundici6@codecov/vite-plugin(@actions/*)undici8 (jsdom copy)invalid)jsdom30.0.1 (^8.9.0)That is 14 of the 15 open alerts on the root lockfile: 2 critical, 5 high, 3 moderate and 4 low. Dependabot closes them once this merges.
The
undicioverrideThe global override
"undici": "^6.27.0"also applied to jsdom's undici 8 copy, sonpm lsreportedundici@8.10.0 invalid: "^6.27.0" from node_modules/jsdom. The override is now scoped to the 6.x line:npm only applies an override with a version-qualified key when the edge spec or node version matches that range. The
@actions/*consumers (^6.23.0) keep a floor that is now the patched version, and jsdom resolves its own major. jsdom stays at 30.0.1, since it already accepts the patched undici 8. The lockfile was updated withnpm update handlebars fast-uri source-map-js undici --package-lock-only, not a regeneration.Not fixed:
sprintf-js(#95, moderate, dev)There is no fixed release. It comes in through
js-yaml@3→argparse@1, via@changesets/cli(read-yaml-file) andbabel-plugin-istanbul(ts-jest). It goes away only withjs-yaml4, which depends on the Changesets major in v0.2. It remains an accepted dev-only risk, as triaged in #54.Runtime image: unchanged
prod-depsstage ofdocker/Dockerfilelocally (npm ci --omit=dev --omit=optional --ignore-scriptswith the root,shared,frontendandbackendmanifests) with the lockfile before and after this change. The installed trees are identical (332name@versionentries, empty diff).handlebars,fast-uri,source-map-js,undici,jsdomorsprintf-jsis in the prod tree.npm ls --omit=dev --package-lock-only: the only differences are the dev/devOptionalsource-map-jsand jsdomundicilines, and theELSPROBLEMSerror is gone.Since runtime behavior does not change, this PR is opened ready for review, without a
qa-dockerrun.Verification
npm ls --all --package-lock-onlyandnpm ls --allafternpm ci: exit 0, noinvalid, noERR. Before this change both failed withELSPROBLEMSon the jsdom undici copy.git merge-treeagainst the heads of refactor(frontend): remove the SaaS layer from the dashboard #51, refactor(backend): remove billing, Stripe and plan limits #52, refactor(frontend): remove phone-home and Autofix from the dashboard #57 and refactor(backend): remove waitlist, CRM, Gemini Free, free models, GitHub stars and error pages #60: no conflicts.Gates (local, Node 26.9 / npm 11.19; CI runs Node 24)
npm cinpm run lintshared,backend(nest build),frontend(vite build),clicli(npm run typecheck),backend(tsc --noEmitwith the workspace's TS 5.9.3),frontend(tsc --noEmit)sharedclibackendfrontend(TZ=UTC)postgres:16,TZ=UTC, aftermigration:runTwo pre-existing issues, both unrelated to this change:
TZ=UTC, one frontend test fails on a machine inAmerica/Sao_Paulo:Account.test.tsx, "shows the scheduled cancellation access date for Pro users". It formats2026-08-15T00:00:00Zin local time. CI runs in UTC, so it passes there. That test belongs to the billing UI being removed in refactor(frontend): remove the SaaS layer from the dashboard #51.npx tsc -p packages/backend/tsconfig.jsonfrom the root picks up the hoisted TypeScript 6 and fails with TS5101 (baseUrldeprecated). The backend workspace's own TypeScript 5.9.3 typechecks cleanly. This belongs to the v0.2 TypeScript upgrade.Refs #54
🤖 Generated with Claude Code