You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Port these E2E test applications to span streaming (3 apps).
These three were picked as the first slice because they share one shape: a single test file each, client pageload and navigation route parameterization only, no server-span and no child-span assertions.
Apps
nextjs-15-basepath
nextjs-15-intl
nextjs-16-trailing-slash
What was done
Removed the traceLifecycle: 'static' pin added in test(e2e): Disable span streaming in e2e test applications #22590 from instrumentation-client.ts, sentry.server.config.ts and sentry.edge.config.ts. No explicit spanStreamingIntegration() is needed: browserTracingIntegration auto-installs it on the client and ServerRuntimeClient on the server.
Rewrote the assertions from transaction envelopes to span v2:
waitForTransaction became waitForStreamedSpan
event.transaction became span.name
contexts.trace.op became getSpanOp(span) plus span.is_segment
contexts.trace.data['x'] became span.attributes['x'], which has the shape { value, type }
transaction_info.source became the sentry.segment.name.source attribute
Renamed routing-basepath-transaction.test.ts to routing-basepath-span.test.ts.
No assertion had to be weakened. Route names carry over unchanged because Next resolves the parameterized route from its manifest before the span starts, so the low-cardinality Pageload fallback never fires for these routes.
Port these E2E test applications to span streaming (3 apps).
These three were picked as the first slice because they share one shape: a single test file each, client pageload and navigation route parameterization only, no server-span and no child-span assertions.
Apps
What was done
traceLifecycle: 'static'pin added in test(e2e): Disable span streaming in e2e test applications #22590 frominstrumentation-client.ts,sentry.server.config.tsandsentry.edge.config.ts. No explicitspanStreamingIntegration()is needed:browserTracingIntegrationauto-installs it on the client andServerRuntimeClienton the server.waitForTransactionbecamewaitForStreamedSpanevent.transactionbecamespan.namecontexts.trace.opbecamegetSpanOp(span)plusspan.is_segmentcontexts.trace.data['x']becamespan.attributes['x'], which has the shape{ value, type }transaction_info.sourcebecame thesentry.segment.name.sourceattributerouting-basepath-transaction.test.tstorouting-basepath-span.test.ts.No assertion had to be weakened. Route names carry over unchanged because Next resolves the parameterized route from its manifest before the span starts, so the low-cardinality
Pageloadfallback never fires for these routes.PR: #23797