Cache Components Bug Repro
Clerk cacheComponents suspense regression
This route intentionally mixes a cached server component that renders Clerk client UI with a dynamic server block. When cacheComponents is enabled, the cached portion will attempt to render through a cache boundary without a suspense wrapper, leading to the Render in Browser should be wrapped in a suspense boundary error described in PR #7119.
Cached Clerk island (opted into cacheComponents)
cached at: 2026-02-28T19:21:58.398Z
Loading Clerk UI…
Dynamic render timestamp
2026-03-01T23:19:51.171Z
This stays dynamic even when cacheComponents is enabled.
Reproduction steps
- Opt into cache components in
next.config.js(snippet below). - Run
pnpm buildand thenpnpm start. - Hit
/examples/cached-components/bug-reproand observe the missing suspense boundary error before applying the PR fix.
1// next.config.js2/** @type {import("next").NextConfig} */3const nextConfig = {4 cacheComponents: true,5};67export default nextConfig;