Skip to content

feat(performance): Add trace stack span evidence#116540

Draft
scttcper wants to merge 1 commit into
masterfrom
scttcper/span-evidence-trace
Draft

feat(performance): Add trace stack span evidence#116540
scttcper wants to merge 1 commit into
masterfrom
scttcper/span-evidence-trace

Conversation

@scttcper
Copy link
Copy Markdown
Member

@scttcper scttcper commented May 29, 2026

Adds a reusable trace path helper and an interactive trace stack for performance span evidence. N+1 DB and slow DB issues can now show the path from transaction down to the relevant span, with expandable formatted SQL for the evidence.

Also keeps the old key/value evidence around underneath for now while we try the stack-style version.

image

Adds a reusable trace-path renderer and an interactive trace stack for performance span evidence. N+1 DB and slow DB issues now show the transaction path down to the relevant span, with expandable formatted SQL for the evidence.

Also adds focused coverage for the trace path builder and stack interactions.

Co-Authored-By: Codex GPT-5 <noreply@openai.com>
@github-actions github-actions Bot added the Scope: Frontend Automatically applied to PRs that change frontend components label May 29, 2026
@github-actions
Copy link
Copy Markdown
Contributor

📊 Type Coverage Diff

Metric Before After Delta
Coverage 93.59% 93.60% 🟢 +0.01%
Typed 133,289 133,447 🟢 +158
Untyped 9,122 9,125 🔴 +3
🔍 7 new type safety issues introduced

Non-null assertions (!) (2 new)

File Line Detail
static/app/components/events/interfaces/performance/spanEvidenceTracePath.tsx 44 tracePathLines[tracePathLines.length - 1]!
static/app/components/events/interfaces/performance/spanEvidenceTraceStack.tsx 71 tracePathLines[tracePathLines.length - 1]!

Type assertions (as) (5 new)

File Line Detail
static/app/components/events/interfaces/performance/spanEvidenceKeyValueList.tsx 136 as KeyValueListData[ makeTransactionNameRow(event, organization, location, projectSlug), makeTrace…
static/app/components/events/interfaces/performance/spanEvidenceKeyValueList.tsx 565 as KeyValueListData[ makeTransactionNameRow(event, organization, location, projectSlug), makeTrace…
static/app/components/events/interfaces/performance/spanEvidenceKeyValueList.tsx 598 as KeyValueListData[ makeTransactionNameRow(event, organization, location, projectSlug), makeTrace…
static/app/components/events/interfaces/performance/spanEvidenceTracePath.tsx 75 as TraceContextSpanProxytraceContext as TraceContextSpanProxy
static/app/components/events/interfaces/performance/spanEvidenceTraceStack.tsx 79 as string[]Array.from( new Set( (sqlStatements ?? offendingSpans.map(span => span.descript…

This is informational only and does not block the PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Scope: Frontend Automatically applied to PRs that change frontend components

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant