Files
HealthLog/pnpm-workspace.yaml
T
Marc-André Bombeck 40b9427259 chore(deps): let the newer hono and js-yaml bounds win
pnpm-workspace.yaml carried two overrides for the same packages: an older floor (hono < 4.12.25, js-yaml >= 4.0.0 < 4.3.1) and the newer one added for the scanner findings. The older selector won the resolution, so the lockfile kept hono 4.13.3 and js-yaml 4.3.1 and four of the seventeen findings stayed open after v1.38.12. The stale bounds are gone; the lockfile now resolves hono 4.13.7 and js-yaml 4.3.2.
2026-09-09 21:38:16 +02:00

100 lines
4.8 KiB
YAML

overrides:
# CVE-2026-84375 (js-yaml < 4.3.2, HIGH), CVE-2026-84363/84364/84365 (hono
# < 4.13.5, via @hono/node-server under the MCP SDK), CVE-2026-45819
# (baseline-browser-mapping < 2.11.0), GHSA-rgj7-g3m4-5g8c (sharp < 0.35.4,
# pulled by next). None is a direct dependency; the bounds move the copies
# the scanner flags and nothing else.
"js-yaml@<4.3.2": "^4.3.2"
"hono@<4.13.5": "^4.13.5"
"baseline-browser-mapping@<2.11.0": "^2.11.0"
"sharp@<0.35.4": "^0.35.4"
# GHSA-55q2-fjhq-7xh7: a crafted document gets past the sanitiser and its
# markup survives into the output. The copy here is jspdf's optional HTML
# renderer, which the doctor-report PDF path reaches.
"dompurify@<3.4.13": "^3.4.13"
# CVE-2026-69153. Next declares an exact `postcss@8.4.31`, so nothing except
# this bound moves it. The build has run on the 8.5 line since the first
# bump; the fix landed in 8.5.23.
"postcss@<8.5.23": "^8.5.23"
"nanoid@<3.3.18": "^3.3.18"
# GHSA-frvp-7c67-39w9 raised the floor from 1.19.13 to 1.19.15. Mirrored for
# /opt/prisma-cli in the Dockerfile, which is where the flagged 1.19.11
# actually landed: prisma pulls it through @prisma/dev, and that install
# reads npm `overrides`, not this file. The bound stays on the 1.x line
# because the advisory is fixed there too and 2.x is a major nothing asked
# for.
"@hono/node-server@<1.19.15": "^1.19.15"
"picomatch@<4.0.4": "^4.0.4"
"body-parser@<2.3.0": "^2.3.0"
# Array-limit bypass through bracket-key comma parsing, and a denial of
# service through an attacker-controlled isBuffer. 6.16.0 covers both.
"qs@<6.16.0": "^6.16.0"
# GHSA-jqff-g426-hqxp and three siblings: host confusion and request
# forgery through percent-encoded schemes, skipped IDN canonicalisation and
# malformed authorities. It arrives under ajv, including the connector SDK's
# copy, so it sits on a path this app exposes.
"fast-uri@<3.1.6": "^3.1.6"
"flatted@<3.4.2": "^3.4.2"
# GHSA-3f6p-5ww8-9rcr: auth-plugin downgrade leaking plaintext credentials.
# Reached only through prisma's MySQL driver, which this app never opens;
# pinned so the audit reads clean, and mirrored for /opt/prisma-cli in the
# Dockerfile.
"mysql2@<3.22.0": "^3.22.0"
# The scanner suggests 10.x (latest), but the ReDoS fix is backported: only
# <3.1.4 is vulnerable, so the 3.x line stays where its consumers expect it.
"minimatch@<3.1.4": "^3.1.4"
# Address4 decoded leading-zero octets as decimal, so `010.0.0.1` parsed as
# 10.0.0.1 rather than being rejected. That is the exact alt-notation class
# `isPublicUrl` exists to catch, and this copy arrives under the MCP SDK's
# rate limiter where nothing of ours screens it.
"ip-address@<10.3.1": "^10.3.1"
"sharp@<0.35.0": "^0.35.3"
# A crafted PDF could run arbitrary JavaScript through the renderer. Our own
# copy is pinned past it in `devDependencies`, but a second copy arrives
# transitively, and `outputFileTracingIncludes` ships EVERY `pdfjs-dist@*` in
# the store into the standalone image — so an unused transitive copy is still
# a copy in the runtime image. The range is bounded on both ends deliberately:
# `pdf-parse` resolves 5.4.296, which predates the flaw and drives the local
# text-extraction path, so it must not be dragged onto a new major.
"pdfjs-dist@>=5.6.83 <6.2.108": "6.2.108"
# Deeply nested input drives DeepmergeTS into unbounded recursion until the
# stack gives out. The copy here is Prisma's: `@prisma/config` still asks for
# 7.1.5 even on the current 7.9.1, so no Prisma bump reaches it and the
# override is the only way through. It runs on the config-loading and CLI
# path, not under a request, but a red audit blocks the whole release train.
"deepmerge-ts@<8.0.0": "^8.0.0"
# CVE-2026-59952. Two copies arrive, neither of them ours to call: an
# optional peer of `@hookform/resolvers` (this app validates with zod) and
# prisma's local dev server. Mirrored for /opt/prisma-cli in the Dockerfile,
# where the flagged 1.2.0 landed. 1.4.2 is the same major, so no consumer is
# dragged onto a new one.
"valibot@<1.4.2": "^1.4.2"
# GHSA-p498-v437-472g. eslint's filesystem layer; development-only, but the
# floor costs nothing and keeps the advisory list at zero so a real one is
# not lost in the noise.
"@humanfs/node@<0.16.8": "^0.16.8"
# GHSA-g7r4-m6w7-qqqr. Reached through the test tooling, never shipped. The
# patched line is the same minor, so nothing downstream moves.
"esbuild@>=0.27.3 <0.28.1": "^0.28.1"
allowBuilds:
"@prisma/engines": true
prisma: true
core-js: false
cpu-features: false
esbuild: false
lefthook: false
msw: false
protobufjs: false
sharp: false
ssh2: false
tesseract.js: false
unrs-resolver: false
minimumReleaseAgeExclude:
- "@next/bundle-analyzer@16.2.12"
- lucide-react@1.27.0
- undici@8.10.0