cloudflare/vinext

`next/after` API (`waitUntil`) not working in deploy mode

Chiusa

#1365 aperta il 20 mag 2026

 (1 commento) (0 reazioni) (0 assegnatari)TypeScript (371 fork)github user discovery
adapter-api-e2ehelp wanted

Metriche repository

Star
 (8563 stelle)
Metriche merge PR
 (Merge medio 1g 1h) (462 PR mergiate in 30 g)

Descrizione

This issue was created by an agent analysing CI failures from the Next.js Deploy Suite (vinext main vs Next.js v16.2.6, 2026-05-20).

Problem

The next/after API (which allows running code after the response has been sent, similar to waitUntil) does not appear to function correctly in deploy mode. Tests for next-after-app-deploy fail, suggesting the after callbacks either do not execute or their effects are not observable.

The after() function is used for tasks like logging, analytics, and cache warming that should not delay the response.

Estimated Impact

~6 test failures.

Affected Test Suites

  • test/e2e/app-dir/next-after-app-deploy/index.test.ts (6 failures)

Recommendation

  1. Reproduce first in vinext's own test suite. Add a test that calls after() in a server component or route handler and verifies the callback executes after the response is sent. Confirm it fails in deploy/production mode.

  2. Study the Next.js after implementation. Search .nextjs-ref/packages/next/src/server/ for the after API to understand how it hooks into the response lifecycle.

  3. Map to Cloudflare Workers waitUntil. On Cloudflare Workers, after() should map to ctx.waitUntil() from the execution context. Ensure the execution context is available in the server entry and that after() callbacks are properly registered.

  4. Check dev/prod parity. The after() API may work in dev mode but fail in production if the execution context is not wired through correctly.

Guida contributor