Skip to content

fix(dashboards): Guard against undefined param.value in tooltip formatter - #119361

Open
sentry[bot] wants to merge 1 commit into
masterfrom
seer/fix/dashboards-tooltip-undefined-value
Open

fix(dashboards): Guard against undefined param.value in tooltip formatter#119361
sentry[bot] wants to merge 1 commit into
masterfrom
seer/fix/dashboards-tooltip-undefined-value

Conversation

@sentry

@sentry sentry Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

This PR addresses TypeError: Cannot read properties of undefined (reading '1') occurring in the time series widget tooltip formatter.

The root cause was identified as attempting to access param.value[1] without first verifying that param.value itself is defined. ECharts can supply tooltip parameters where param.value is undefined (e.g., for scatter series or when data points are missing).

This issue became more frequent following commit 5f97e07 (PR #109881), which changed the X-axis type from "time" to "value" in timeSeriesWidgetVisualization.tsx. This change altered the structure of tooltip parameters, leading to param.value being undefined in certain scenarios.

The fix involves explicitly checking for undefined before attempting to access array properties. Specifically, line 265 in static/app/views/dashboards/widgets/timeSeriesWidget/timeSeriesWidgetVisualization.tsx was updated from if (!param.value || param.value[1] === null) to if (param.value === undefined || param.value[1] === null).

Legal Boilerplate

Look, I get it. The entity doing business as "Sentry" was incorporated in the State of Delaware in 2015 as Functional Software, Inc. and is gonna need some rights from me in order to utilize my contributions in this here PR. So here's the deal: I retain all rights, title and interest in and to my contributions, and by keeping this boilerplate intact I confirm that Sentry can use, modify, copy, and redistribute my contributions, under Sentry's choice of terms.

Fixes JAVASCRIPT-3A41

Comment @sentry <feedback> on this PR to have Autofix iterate on the changes.

@sentry
sentry Bot requested a review from a team as a code owner July 9, 2026 22:37
@github-actions github-actions Bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Jul 9, 2026
@github-actions

github-actions Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Story previews

Preview the stories changed in this PR on the Vercel deployment:

Preview deployment: https://sentry-3npz7as79.sentry.dev

@billyvg billyvg left a comment

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.

just testing seer

// Filter null values from tooltip
// @ts-expect-error TS(7053): Element implicitly has an 'any' type because expre... Remove this comment to see the full error message
if (param.value[1] === null) {
if (!param.value || param.value[1] === null) {

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.

@sentry can you explicitly check for undefined instead

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