fix: Sentry event page display bugs from issue #321#281
Merged
Conversation
📸 Storybook ScreenshotsScreenshots for 21 changed components in this PR. Entities/Sentry/SentryExceptionFrameFrame Vars Only No Source Bare Entities/Sentry/SentryPageTagsLaravel Spiral Minimal No Contexts Env And Logger Only Entities/Sentry/SentryPagePage Common Page Event Page Laravel Page Spiral Page JS Page JS Message Page Python Page Python Log Page Minimal Error No Trace Entities/Sentry/TraceContextBlockDefault No Spans Error Only No Transaction Widgets/LayoutSidebarCollapsed Expanded Auto-generated from Storybook stories of changed |
Trace context no longer renders a 'View full trace' link when no
transaction was captured (which 404'd against /api/sentry/traces/{id}).
Stack-frame chevrons that animate with no source context now render
the frame's vars as a fallback list instead of an empty body. Empty
Runtime/OS/SDK context boxes and blank tag pills are hidden rather
than shown as empty placeholders. The event page header now formats
the Sentry timestamp as epoch seconds (was rendering year 1970). The
sidebar dot indicator no longer depends on the event-count visibility
setting.
f7d58b3 to
db33095
Compare
…ction exists
The trace context block was rendered with a synthetic summary that had
zero spans, so the link-visibility guard hid 'View full trace' even when
a transaction was captured for that trace_id. Fetch /api/sentry/traces/
{traceId} on mount: populate the real span_count / duration_ms / preview
spans when present (link renders), keep the synthetic minimal summary on
404 (link stays hidden, no broken navigation).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.





















What
Fixes the Sentry-specific UI issues reported in buggregator/server#321 — empty context boxes, vars that wouldn't expand, a 404 from the trace context link, the year-1970 timestamp, and the sidebar dot disappearing when count badges are off.
Why
The reporter walked through several Sentry events captured by the v2 server and surfaced five distinct rendering bugs on the event page plus a sidebar regression. The server-side companion is buggregator/server#335.
How
trace-context-block.vuenow hides the "View full trace" link unless the summary has actual span data. Plain error events with acontexts.trace.trace_idno longer point at a route that 404's against/api/sentry/traces/{traceId}.sentry-exception-frame.vueno longer treats emptypre_context/post_contextarrays as a body. Frames that carry onlyvars(no source lines) now render a<dl>fallback so expanding the chevron shows the variables instead of nothing.sentry-page-tags.vuefilters empty context boxes and blank tag pills rather than rendering placeholders.sentry-page.vueformats the Sentry payload timestamp throughmoment.unix()when it's a numeric epoch (was being parsed as milliseconds).layout-sidebar.vuedecouples the colored dot indicator fromisVisibleEventCounts; turning numeric counts off no longer hides the at-a-glance "events exist" signal.Testing
Manual verification via new Storybook stories:
Entities/Sentry/TraceContextBlock→ErrorOnlyNoTransactionEntities/Sentry/SentryExceptionFrame→VarsOnlyNoSource,BareEntities/Sentry/SentryPageTags→MinimalNoContexts,EnvAndLoggerOnlyEntities/Sentry/SentryPage→PageMinimalErrorNoTrace(exercises timestamp, trace link, and empty contexts together)yarn lintandyarn typecheckclean (no new warnings).