cloudflare/vinext

App Router: OTel spans during cache component fallback resume reuse the trace id

Closed

#1,495 opened on May 22, 2026

 (0 comments) (0 reactions) (0 assignees)TypeScript (371 forks)github user discovery
adapter-api-e2ehelp wanted

Repository metrics

Stars
 (8,563 stars)
PR merge metrics
 (Avg merge 1d 1h) (462 merged PRs in 30d)

Description

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-22).

Problem

Spans created during fallback resume inside a Cache Component should have a fresh trace id distinct from the build-time render. vinext reuses the same trace id (e.g. 11989306), implying the span context is not being re-created per request resume.

Trace id reused across build-time render and runtime resume

Estimated Impact

~1 test failures across the deploy suite.

Affected Test Suites

  • test/e2e/app-dir/cache-components-allow-otel-spans/cache-components-allow-otel-spans.test.ts

Recommendation

  1. Reproduce first in vinext's own test suite. Use the existing cache-components-allow-otel-spans fixture and assert the trace id changes between build-time prerender and runtime resume.

  2. Reset the OTel context on resume. Each cache-component resume should start a new span/trace context, not inherit the prerender's.

Contributor guide