Next.js cacheComponents + draftMode TTFB reproduction

With cacheComponents: true and draftMode().isEnabled === true, every request blocks TTFB for ~1s even when the page has no awaits and the only data fetching is wrapped in <Suspense>.

Draft: checking…

Reproduction

  1. Visit /draft-mode-ttfb with draft mode OFF. TTFB is ~10ms.
  2. Click Enable above to turn on draft mode.
  3. Reload /draft-mode-ttfb. TTFB jumps to ~1000ms — the duration of the simulated simulateApi() sleep, even though the only fetch is inside a Suspense boundary.

Tested on next@16.2.4 and next@16.3.0-canary.2.