Skip to content

test(e2e): Port the TanStack Start React E2E app to span streaming - #24172

Merged
RulaKhaled merged 2 commits into
developfrom
rolaabuhasna/js-3489/tanstackstart-react
Sep 11, 2026
Merged

test(e2e): Port the TanStack Start React E2E app to span streaming#24172
RulaKhaled merged 2 commits into
developfrom
rolaabuhasna/js-3489/tanstackstart-react

Conversation

@RulaKhaled

Copy link
Copy Markdown
Collaborator

Makes span streaming the only path in the TanStack Start React E2E app. The E2E_TEST_STREAMED_SPANS ternary is gone, and the specs wait on streamed spans instead of transaction envelopes.

Why

Unparameterized http.server names fall back to the method only, so those waits match url.path (and http.route once a route is known). Redis handshake commands and mysql query-summary names (SELECT) are told apart with db.query.text. The tunnel-streamed variant is dropped because it is now identical to tunnel-generated. Static-lifecycle coverage moves to tanstackstart-react-static.

Part of #23805

@linear-code

linear-code Bot commented Sep 7, 2026

Copy link
Copy Markdown

JS-3489

@github-actions

github-actions Bot commented Sep 7, 2026

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size % Change Change
@sentry/browser 28.92 kB +0.41% +118 B 🔺
@sentry/browser - with treeshaking flags 27.21 kB +0.41% +109 B 🔺
@sentry/browser - with treeshaking flags tracing without tracing 27.11 kB +0.39% +103 B 🔺
@sentry/browser (incl. Tracing) 50.42 kB +2.44% +1.2 kB 🔺
@sentry/browser (incl. Tracing + Span Streaming) 50.43 kB +2.46% +1.21 kB 🔺
@sentry/browser (incl. Tracing, Profiling) 53.41 kB +2.47% +1.29 kB 🔺
@sentry/browser (incl. Tracing, Replay) 89.93 kB +1.33% +1.17 kB 🔺
@sentry/browser (incl. Tracing, Replay) - with treeshaking flags 79.05 kB +1.41% +1.09 kB 🔺
@sentry/browser (incl. Tracing, Replay with Canvas) 94.64 kB +1.28% +1.2 kB 🔺
@sentry/browser (incl. Tracing, Replay, Feedback) 107.65 kB +1.2% +1.27 kB 🔺
@sentry/browser (incl. Feedback) 46.41 kB +0.26% +116 B 🔺
@sentry/browser (incl. sendFeedback) 33.97 kB +0.31% +103 B 🔺
@sentry/browser (incl. FeedbackAsync) 39.08 kB +0.26% +101 B 🔺
@sentry/browser (incl. Metrics) 29.93 kB +0.38% +113 B 🔺
@sentry/browser (incl. Logs) 30.2 kB +0.37% +110 B 🔺
@sentry/browser (incl. Metrics & Logs) 30.87 kB +0.4% +121 B 🔺
@sentry/react 30.67 kB +0.4% +122 B 🔺
@sentry/react (incl. Tracing) 52.73 kB +2.27% +1.17 kB 🔺
@sentry/vue 36.16 kB +0.3% +108 B 🔺
@sentry/vue (incl. Tracing) 52.66 kB +2.32% +1.19 kB 🔺
@sentry/svelte 28.93 kB +0.35% +99 B 🔺
CDN Bundle 30.66 kB +0.35% +106 B 🔺
CDN Bundle (incl. Tracing) 50.93 kB +2.4% +1.19 kB 🔺
CDN Bundle (incl. Logs, Metrics) 32.93 kB +0.35% +113 B 🔺
CDN Bundle (incl. Tracing, Logs, Metrics) 52.91 kB +2.34% +1.21 kB 🔺
CDN Bundle (incl. Replay, Logs, Metrics) 73.62 kB +0.2% +144 B 🔺
CDN Bundle (incl. Tracing, Replay) 88.48 kB +1.38% +1.2 kB 🔺
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) 90.43 kB +1.41% +1.25 kB 🔺
CDN Bundle (incl. Tracing, Replay, Feedback) 94.55 kB +1.44% +1.33 kB 🔺
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) 96.55 kB +1.41% +1.34 kB 🔺
CDN Bundle - uncompressed 90.73 kB +0.3% +270 B 🔺
CDN Bundle (incl. Tracing) - uncompressed 152.17 kB +2.7% +4 kB 🔺
CDN Bundle (incl. Logs, Metrics) - uncompressed 97.31 kB +0.29% +279 B 🔺
CDN Bundle (incl. Tracing, Logs, Metrics) - uncompressed 158.13 kB +2.6% +4 kB 🔺
CDN Bundle (incl. Replay, Logs, Metrics) - uncompressed 226.72 kB +0.2% +430 B 🔺
CDN Bundle (incl. Tracing, Replay) - uncompressed 271.74 kB +1.49% +3.98 kB 🔺
CDN Bundle (incl. Tracing, Replay, Logs, Metrics) - uncompressed 277.69 kB +1.46% +3.98 kB 🔺
CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed 285.44 kB +1.42% +3.98 kB 🔺
CDN Bundle (incl. Tracing, Replay, Feedback, Logs, Metrics) - uncompressed 291.38 kB +1.39% +3.98 kB 🔺
@sentry/nextjs (client) 55.05 kB +1.95% +1.05 kB 🔺
@sentry/sveltekit (client) 50.83 kB +2.38% +1.18 kB 🔺
@sentry/core/server 37.08 kB +0.26% +96 B 🔺
@sentry/core/browser 13.66 kB +0.82% +110 B 🔺
@sentry/node 128.59 kB +0.63% +794 B 🔺
@sentry/node/import (ESM hook with diagnostics-channel injection) 81.82 kB +0.26% +205 B 🔺
@sentry/node - without tracing 89.55 kB +0.95% +838 B 🔺
@sentry/node - without channel injection 107.52 kB +0.46% +490 B 🔺
@sentry/aws-serverless 97.77 kB +0.7% +677 B 🔺
@sentry/cloudflare (withSentry) - minified 203.02 kB +0.52% +1.04 kB 🔺
@sentry/cloudflare (withSentry) 505.43 kB +0.55% +2.76 kB 🔺

View base workflow run

@RulaKhaled
RulaKhaled marked this pull request as ready for review September 8, 2026 12:15

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale Bugbot comment from a previous run.

@RulaKhaled
RulaKhaled requested a review from s1gr1d September 10, 2026 10:31
const mysqlSpans = spans.filter(span => span.attributes['sentry.origin']?.value === 'auto.db.mysql');

const spans = transactionEvent.spans || [];
const firstQuery = mysqlSpans.find(span => span.attributes['db.query.text']?.value === 'SELECT 1 + 1 AS solution');

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, this should now show 1 + 1, maybe you have to update you branch.

Related to this PR: #24089

Co-Authored-By: Cursor Grok 4.6 <cursoragent@cursor.com>
@RulaKhaled
RulaKhaled force-pushed the rolaabuhasna/js-3489/tanstackstart-react branch from 9979f3f to ec9bc7c Compare September 11, 2026 06:23
@RulaKhaled
RulaKhaled enabled auto-merge (squash) September 11, 2026 06:24
…st leak

Co-Authored-By: Cursor Grok 4.6 <cursoragent@cursor.com>
@RulaKhaled
RulaKhaled force-pushed the rolaabuhasna/js-3489/tanstackstart-react branch from ec9bc7c to 45813b7 Compare September 11, 2026 06:25

@cursor cursor Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit 45813b7. Configure here.

expect(clientTx.contexts?.trace?.trace_id).toBe(serverTx.contexts?.trace?.trace_id);
expect(serverSpan).toBeDefined();
expect(clientSpan).toBeDefined();
expect(clientSpan?.trace_id).toBe(serverSpan?.trace_id);

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Trace connection test can false-pass

Medium Severity

collectStreamedSpans already groups by trace_id, so the later trace_id comparison cannot fail. The wait also is not unique to this navigation: the previous test hits / without draining spans, and a leftover connected trace can satisfy the predicate and hide a broken propagation on this page load. Flagged because the review rules call out hollow assertions and waits that are not unique enough for the same route.

Fix in Cursor Fix in Web

Triggered by project rule: PR Review Guidelines for Cursor Bot

Reviewed by Cursor Bugbot for commit 45813b7. Configure here.

@RulaKhaled
RulaKhaled merged commit 0eb7c04 into develop Sep 11, 2026
47 checks passed
@RulaKhaled
RulaKhaled deleted the rolaabuhasna/js-3489/tanstackstart-react branch September 11, 2026 06:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants