Skip to content

fix(security): clear the last 3 criticals (proxy-addr IP spoofing, tinypool RCE) - #27

Merged
hemv-857 merged 2 commits into
mainfrom
fix/consumer-prices-core-criticals
Oct 12, 2026
Merged

hemv-857 merged 2 commits into
mainfrom
fix/consumer-prices-core-criticals

Conversation

@hemv-857

Copy link
Copy Markdown
Owner

Clears the last 3 criticals in this repo — proxy-addr (IP spoofing) and two tinypool prototype-pollution-to-RCE advisories. All were in consumer-prices-core/, plus the root workspace's vitest.

What changed

consumer-prices-core/

before after
proxy-addr 2.0.7 (critical) 2.0.8 via overrides
vitest 3.2.6 5.0.4
tinypool 1.1.1 (critical) removed from the tree
npm audit 3 critical / 11 total 0 critical / 3 total

proxy-addr arrives transitively through fastify@^4, so it is pinned in the existing overrides block — the same mechanism already used there for ws and form-data.

The five non-breaking npm audit fix resolutions (fast-uri, js-yaml, nanoid, postcss, source-map-js) are lockfile-only.

root workspace — vitest 4.1.0 → 5.0.4 and @vitest/coverage-v8 likewise, which drops tinypool from the tree.

Verification

Gate Result
npm run typecheck pass
npm run lint pass
npm run test:data 9714 pass / 401 fail / 6 skipped of 10121 — unchanged
npm run test:convex 328 passed / 19 files
consumer-prices-core npm test 54 passed / 4 files

The 401 in test:data are the same pre-existing set documented in #23 and #26; the vitest bump adds none.

Two things I did not touch

fastify 4 → 5.12.5 accounts for the 2 remaining highs in consumer-prices-core (fastify, find-my-way). Major, and fastify 5 changes the plugin and typing surface — a migration, not a bump.

consumer-prices-core npm run build fails, on Cannot find module '../../snapshots/orion.js'. That file is simply not in the repository (src/snapshots/ contains only worldmonitor.ts) and nothing in package.json generates it. Pre-existing and unrelated — this PR changes only package.json and package-lock.json. Worth fixing separately, since it means that sub-workspace cannot currently be built from a clean checkout.

XSS sanitizer bypass in DOM.sanitize() via Live NamedN... No patch exists in
5.x; the advisory requires 6.14.0.

v6 removed the default export. MapContainer imports Map as MapLibreMap because
the module also uses the built-in Map, and a bare Map import would shadow it.
basemap-styles takes addProtocol directly.

Call-site behaviour is unchanged; only the import form.

typecheck pass, lint pass, build pass, npm audit critical 1 -> 0.

test:data: 401 failures, identical set to main after building both (verified with a
worktree at origin/main; set difference empty in both directions).
…nypool RCE)

All were in consumer-prices-core/ plus the root vitest.

consumer-prices-core:
- proxy-addr 2.0.7 -> 2.0.8 via the existing overrides block (it arrives
  transitively through fastify@^4); this is the critical IP-spoofing advisory
- vitest 3.2.6 -> 5.0.4, which drops tinypool from the tree entirely
- non-breaking npm audit fix resolutions: fast-uri, js-yaml, nanoid, postcss,
  source-map-js (lockfile only)
- npm audit 3 critical / 11 total -> 0 critical / 3 total

root workspace: vitest 4.1.0 -> 5.0.4 and @vitest/coverage-v8 likewise, dropping
tinypool from that tree too.

typecheck pass, lint pass, test:data unchanged at 9714/401, test:convex 328 pass,
consumer-prices-core 54 pass.
Copilot AI balanced review requested due to automatic review settings October 12, 2026 19:24

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 was unable to review this pull request because the user who requested the review has reached their quota limit.

@hemv-857
hemv-857 merged commit 983a5f2 into main Oct 12, 2026
1 check passed
@hemv-857
hemv-857 deleted the fix/consumer-prices-core-criticals branch October 12, 2026 19:27
@vercel

vercel Bot commented Oct 12, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
orion-eight-render Ready Ready Preview Oct 12, 2026 7:44pm UTC

This branch was successfully deployed

1 active deployment
Preview — 1e642458 Deployed Oct 12, 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.

2 participants