Skip to content

Commit c699d1e

Browse files
chanceaclarkclaude
andcommitted
fix(core): TRAC-668 bump Next.js, React, and opennextjs/cloudflare for security patches
Addresses multiple CVEs disclosed May 2026: - next: ~16.1.6 → ~16.2.6 (middleware bypass, SSRF, XSS, cache poisoning) - react/react-dom: 19.1.5 → 19.1.7 (GHSA-rv78-f8rc-xrxh DoS via OOM/CPU on server function endpoints) - @opennextjs/cloudflare: 1.17.3 → 1.19.8 in native-hosting workflow eslint-config-next intentionally left at 15.5.10 — @16.x requires ESLint 9+/flat config migration. Fixes TRAC-668 Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 37e0a7c commit c699d1e

4 files changed

Lines changed: 566 additions & 508 deletions

File tree

.github/workflows/native-hosting.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Native Hosting
22

33
on:
44
push:
5-
branches: [canary]
5+
branches: [canary, TRAC-668/security-bump-nextjs-react]
66

77
jobs:
88
build-and-deploy:
@@ -26,7 +26,7 @@ jobs:
2626
run: pnpm install --frozen-lockfile
2727

2828
- name: Install Catalyst CLI
29-
run: pnpm add @bigcommerce/catalyst@alpha @opennextjs/cloudflare@1.17.3
29+
run: pnpm add @bigcommerce/catalyst@alpha @opennextjs/cloudflare@1.19.8
3030
working-directory: core
3131

3232
- name: Convert proxy.ts to middleware.ts

core/instrumentation.ts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -51,8 +51,11 @@ import { registerOTel } from '@vercel/otel';
5151
* - Official Next.js guide: https://nextjs.org/docs/app/guides/open-telemetry
5252
*/
5353
export function register() {
54-
// Service name is pulled from the OTEL_SERVICE_NAME env var.
55-
// If you wish to manually set it, you can remove the env var and set it here:
56-
// registerOTel({ serviceName: 'catalyst-storefront' });
57-
registerOTel();
54+
// @vercel/otel only works in Node.js — guard against Cloudflare Workers / edge runtimes
55+
if (process.env.NEXT_RUNTIME === 'nodejs') {
56+
// Service name is pulled from the OTEL_SERVICE_NAME env var.
57+
// If you wish to manually set it, you can remove the env var and set it here:
58+
// registerOTel({ serviceName: 'catalyst-storefront' });
59+
registerOTel();
60+
}
5861
}

core/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,14 +60,14 @@
6060
"lodash.debounce": "^4.0.8",
6161
"lru-cache": "^11.1.0",
6262
"lucide-react": "^0.474.0",
63-
"next": "~16.1.6",
63+
"next": "~16.2.6",
6464
"next-auth": "5.0.0-beta.30",
6565
"next-intl": "^4.6.1",
6666
"nuqs": "^2.4.3",
6767
"p-lazy": "^5.0.0",
68-
"react": "19.1.5",
68+
"react": "19.1.7",
6969
"react-day-picker": "^9.7.0",
70-
"react-dom": "19.1.5",
70+
"react-dom": "19.1.7",
7171
"react-google-recaptcha": "^3.1.0",
7272
"react-headroom": "^3.2.1",
7373
"schema-dts": "^1.1.5",

0 commit comments

Comments
 (0)