Uh oh!
There was an error while loading. Please reload this page.
test(e2e): Port the React Router lazy routes E2E app to span streaming - #23846
Conversation
size-limit report 📦
|
2cc3dfd to
9083cbfCompare2f982ae to
a9e6808Compare9083cbf to
ea78db3Comparea9e6808 to
8126529Compareea78db3 to
797611dCompare8126529 to
cf5c7f9Compare797611d to
2460015Comparecf5c7f9 to
9e03698Comparee5246b4 to
aa2cbfcCompare9e03698 to
edd1076Compareaa2cbfc to
cd0da76Compareedd1076 to
7d44686CompareUh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
cd0da76 to
c243026Compare7d44686 to
d638522CompareUh oh!
There was an error while loading. Please reload this page.
d638522 to
979eaa0Comparea20f314 to
b76c163Compare979eaa0 to
01f6e5dCompareThere was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit b76c163. Configure here.
Uh oh!
There was an error while loading. Please reload this page.
01f6e5d to
9d1bbdaCompareb76c163 to
cbeb816Compare9d1bbda to
1db63f1Comparecbeb816 to
8d5a351Compare1db63f1 to
107a1e4Compare8d5a351 to
ba9bc18CompareRemoves the `traceLifecycle: 'static'` pin from `react-router-7-framework`, `react-router-8-framework` and `react-router-7-framework-spa`, and rewrites their specs against streamed span v2. Envelope-level metadata has no span equivalent, so the SDK assertions read the `sentry.sdk.*` and `sentry.environment` attributes instead, and the `runtime` tag assertions are dropped. The trace connection spec is keyed off the `sentry-trace` meta tag. Spans are buffered before they flush, so an earlier page load on `/` can still be arriving here, and matching the two halves independently paired spans from different loads. The document advertises its own trace, and the client span is selected by the parent it continues, so a pageload that failed to continue the trace still fails the test rather than passing vacuously.
…streaming (#23845) ## What Ports `react-router-7-framework-instrumentation` to span streaming. ## Why Span streaming is the default now, so the E2E suite has to exercise it. Loader, action, middleware and fetcher assertions walk the streamed trace instead of a transaction's `spans` array, and the orchestrion mysql spec matches on `db.query.text`, since a streamed mysql span is named after its query summary. Part of #23798
0424336 to
be21d07CompareRemoves the `traceLifecycle: 'static'` pin from `react-router-7-lazy-routes` and rewrites its specs against streamed span v2. The span-leaking and GQL attribution specs group streamed spans by trace instead of reading a transaction's `spans` array, and they match fetch spans on `url.full`, since a streamed `http.client` span carries only the domain in its name.
collectStreamedSpans scopes its result to one trace now, so the GQL and slow-fetch lookups no longer need to filter children by the segment's trace id, and three segment lookups that only existed to supply it are gone. The corruption test keeps the trace-scoped helper, since it collects across traces on purpose.
de1f81c to
b811d6bCompareUh oh!
There was an error while loading. Please reload this page.

What
Ports
react-router-7-lazy-routesto span streaming, the last app in the group.Why
Span streaming is the default now, so the E2E suite has to exercise it. The span-leaking and GQL attribution specs group streamed spans by trace instead of reading a transaction's
spansarray, and they match fetch spans onurl.full, since a streamedhttp.clientspan carries only the domain in its name.Closes: #23798