From 10c6ca221a2c2389688ae0eadc1bfad9fe7c5f82 Mon Sep 17 00:00:00 2001 From: Scott Cooper Date: Mon, 13 Apr 2026 16:40:29 -0700 Subject: [PATCH] ref(issues): Hide line numbers on non-in-app stack trace frames the line number doesn't really matter when it isn't your code, just show the filename Co-Authored-By: Claude Opus 4.6 --- .../stackTrace/frame/frameHeader.tsx | 4 ++- .../components/stackTrace/stackTrace.spec.tsx | 28 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) diff --git a/static/app/components/stackTrace/frame/frameHeader.tsx b/static/app/components/stackTrace/frame/frameHeader.tsx index 1de7d85777a77f..6f17ae78c07a3b 100644 --- a/static/app/components/stackTrace/frame/frameHeader.tsx +++ b/static/app/components/stackTrace/frame/frameHeader.tsx @@ -126,7 +126,9 @@ function FrameLocation({ }) { const {event} = useStackTraceFrameContext(); const frameDisplayPath = getFrameDisplayPath(frame, platform, event); - const frameLocationSuffix = formatFrameLocation('', frame.lineNo, frame.colNo); + const frameLocationSuffix = frame.inApp + ? formatFrameLocation('', frame.lineNo, frame.colNo) + : ''; return ( diff --git a/static/app/components/stackTrace/stackTrace.spec.tsx b/static/app/components/stackTrace/stackTrace.spec.tsx index 62df2e5f9e082a..797dac93cafd10 100644 --- a/static/app/components/stackTrace/stackTrace.spec.tsx +++ b/static/app/components/stackTrace/stackTrace.spec.tsx @@ -740,6 +740,34 @@ describe('Core StackTrace', () => { expect(screen.queryByText(':0:0')).not.toBeInTheDocument(); }); + it('does not render line number for non-in-app frames', async () => { + const {event, stacktrace} = makeStackTraceData(); + const frame = stacktrace.frames[stacktrace.frames.length - 1]!; + + render( + + + + ); + + expect(await screen.findByText('library_internal.py')).toBeInTheDocument(); + // Line number not shown for non-in-app frames + expect(screen.queryByText(/42/)).not.toBeInTheDocument(); + }); + it('falls back to raw function and renders trimmed package in title metadata', async () => { const {event, stacktrace} = makeStackTraceData(); const frame = stacktrace.frames[stacktrace.frames.length - 1]!;