chore(deps): upgrade next to 16.3.0 and clean up the TypeScript toolchain - #6235
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
PR SummaryMedium Risk Overview In Removes Reviewed by Cursor Bugbot for commit 676acd2. Configure here. |
Greptile SummaryThe PR upgrades Next.js and its associated environment and SWC packages to 16.3.0 while consolidating workspaces on TypeScript 7.
Confidence Score: 5/5The PR appears safe to merge. No blocking failure remains.
|
| Filename | Overview |
|---|---|
| apps/sim/next.config.ts | Enables Next’s TypeScript CLI checker and documents why the build filesystem cache must remain disabled. |
| apps/sim/package.json | Upgrades Next to 16.3.0 and removes the obsolete TypeScript native-preview dependency while retaining the separate TypeScript 6 runtime compiler. |
| apps/docs/package.json | Upgrades Next and removes the obsolete TypeScript native-preview development dependency. |
| package.json | Aligns root Next environment, framework, and platform-specific SWC dependency versions at 16.3.0. |
| packages/browser-protocol/package.json | Aligns the package’s development compiler with the repository-wide TypeScript 7 toolchain. |
| packages/terminal-protocol/package.json | Aligns the package’s development compiler with the repository-wide TypeScript 7 toolchain. |
| packages/emcn/package.json | Upgrades the component package’s Next development dependency to 16.3.0. |
| bun.lock | Records dependency resolutions consistent with the changed manifests and removes obsolete native-preview resolutions. |
Reviews (2): Last reviewed commit: "chore(deps): upgrade next to 16.3.0 and ..." | Re-trigger Greptile
…hain Bumps next, @next/env and the @next/swc-* optional deps to 16.3.0 across the root overrides, apps/sim, apps/docs and packages/emcn. Two config notes worth keeping: - `experimental.turbopackFileSystemCacheForBuild`'s default flipped false -> true for stable in 16.3.0, so our explicit `false` is now load-bearing rather than defensive. Without it this bump would have silently re-enabled a build cache measured 3.2x slower on this codebase (#6078). Comment updated to say so. - `experimental.useTypeScriptCli: true` is now pinned. TypeScript 7 ships no JavaScript compiler API until 7.1, so Next's default checker cannot run and needs the project-local `tsc` CLI instead. 16.2.12 was silently skipping build-time type checking entirely because it detected @typescript/native-preview and short-circuited the stage ("Finished TypeScript in 138ms"); pinning the flag keeps that from drifting back. TypeScript toolchain cleanup that the upgrade makes possible: - Drop @typescript/native-preview from apps/sim and apps/docs. It was the pre-release channel for TS 7 and is superseded by typescript@7 (nightlies now ship as typescript@next), and its presence is what suppressed build type checks. - Align packages/browser-protocol and packages/terminal-protocol from typescript ^5.7.3 to ^7.0.2 so every workspace is on one compiler version. apps/sim keeps @typescript/typescript6 as a production dependency: the function sandbox at app/api/function/execute dynamically imports the TS 6 compiler API to transpile user code, and TS 7 has no API to replace it yet. Build and dev were benchmarked 3x per version on a byte-identical tree; the upgrade is performance-neutral (build median 100s -> 99s, dev:full warm 10s -> 9s).
bd743b7 to
676acd2
Compare
|
@cursor review |
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes using high effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 676acd2. Configure here.

Summary
next,@next/envand the@next/swc-*optional deps to 16.3.0 across the root overrides,apps/sim,apps/docsandpackages/emcnexperimental.useTypeScriptCli: true— TypeScript 7 ships no JavaScript compiler API until 7.1, so Next's default checker can't run and needs the project-localtscCLI. 16.2.12 was silently skipping build-time type checking entirely: it detected@typescript/native-previewand short-circuited the stage (Finished TypeScript in 138ms). Builds now actually type-check, so a build can fail where it previously passedexperimental.turbopackFileSystemCacheForBuild's default flippedfalse -> truefor stable in 16.3.0, which makes our explicitfalseload-bearing rather than defensive — without it this bump would have silently re-enabled a build cache measured 3.2x slower on this codebase ([EXPERIMENT — do not merge] Is the Turbopack FS build cache a net win? #6078)@typescript/native-previewfromapps/simandapps/docs. It was the pre-release channel for TS 7, is superseded bytypescript@7(nightlies now ship astypescript@next), and its presence is what suppressed build type checkspackages/browser-protocolandpackages/terminal-protocolfromtypescript ^5.7.3to^7.0.2so every workspace is on one compiler versionapps/simdeliberately keeps@typescript/typescript6as a production dependency: the function sandbox atapp/api/function/executedynamically imports the TS 6 compiler API to transpile user code, and TS 7 has no API to replace it yet.Type of Change
Testing
next buildsucceedscloud-review-tools.test.ts,FileNotFoundError: 'rg') is environmental and reproduces identically on a 16.2.12 baseline — CI installs ripgrep explicitly for itbun run check:api-validationpasses, biome cleanbuildanddev:full3x per version on a byte-identical tree: performance-neutral (build median 100s -> 99s,dev:fullwarm 10s -> 9s)Two things reviewers should know:
validateRSCRequestHeaders(a CDN cache-poisoning fix) andvaryParamsboth change RSCVary/caching behavior — worth watching on staging since we sit behind an ALB.cacheComponentsis off, so thecacheComponents-gated defaults don't applynext devin 16.3.0 now writes a managed agent-rules block intoAGENTS.md/CLAUDE.md, with no env or config opt-out. It's kept out of this PR, so expect an uncommitted change locally after running devChecklist