Skip to content

feat(issues): Add context tooltips for issue header status #92081

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 5 commits into from
May 22, 2025

Conversation

JoshFerge
Copy link
Member

@JoshFerge JoshFerge commented May 21, 2025

For a new Sentry user, the issue header is an overwhelming amount of information, and it's not clear what the information is.

We add tooltips for all issue statuses and provide a link to learn more in our docs.

refs https://linear.app/getsentry/issue/RTC-854/issue-details-add-explanatory-mouseovers-to-titles

Screenshot 2025-05-21 at 7 11 48 PM

@JoshFerge JoshFerge requested a review from a team as a code owner May 21, 2025 23:17
@github-actions github-actions bot added the Scope: Frontend Automatically applied to PRs that change frontend components label May 21, 2025
@JoshFerge JoshFerge requested review from a team and vuluongj20 and removed request for a team May 21, 2025 23:18
@@ -178,15 +186,34 @@ export default function StreamlinedGroupHeader({
{statusProps?.status ? (
<Fragment>
<Tooltip title={statusProps?.tooltip}>
Copy link
Member

Choose a reason for hiding this comment

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

double tooltips

Copy link
Member Author

Choose a reason for hiding this comment

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

ah i did not notice this. when does status show a from this?

Copy link
Member

Choose a reason for hiding this comment

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

looks like here

tooltip:
substatus === GroupSubstatus.ARCHIVED_FOREVER
? t('Archived forever')
: substatus === GroupSubstatus.ARCHIVED_UNTIL_ESCALATING
? t('Archived until escalating')
: t('Archived until condition met'),
};

Copy link
Member

Choose a reason for hiding this comment

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

you could add your tooltips there or fallback to a default tooltip or something

>
{statusProps?.status}
</Tooltip>
</Subtext>
</Tooltip>
</Fragment>
) : null}
{subtitle && (
<Fragment>
<Divider />
<Subtitle title={subtitle} isHoverable showOnlyOnOverflow delay={1000}>
Copy link
Member

Choose a reason for hiding this comment

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

subtitle here is also a tooltip

Copy link
Member

Choose a reason for hiding this comment

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

image

Copy link
Member Author

Choose a reason for hiding this comment

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

how should we handle this then? render the info tooltip on these only if the overflow tooltip isn't showing?

Comment on lines 160 to 165
<Tooltip
title={t(
'The main message summarizing the event. Typically the error message or log string that triggered this issue.'
)}
isHoverable
>
Copy link
Member

Choose a reason for hiding this comment

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

use skipWrapper where possible which basically just doesn't render an extra span. If you're wrapping a div or an existing span you don't need another span.

Suggested change
<Tooltip
title={t(
'The main message summarizing the event. Typically the error message or log string that triggered this issue.'
)}
isHoverable
>
<Tooltip
title={t(
'The main message summarizing the event. Typically the error message or log string that triggered this issue.'
)}
isHoverable
skipWrapper
>

@TkDodo
Copy link
Contributor

TkDodo commented May 22, 2025

The tooltip for the summary shows up in a weird place for me (I had the mouse over sentry.tasks.delete_seer_grouping_records_by_hash)

Screenshot 2025-05-22 at 20 43 09

@JoshFerge
Copy link
Member Author

I've changed this PR to focus on the status tooltip, as that one is easier than the other 3. I've also added info texts describing the other statuses.

@JoshFerge JoshFerge changed the title feat(issues): Add context tooltips for issue header feat(issues): Add context tooltips for issue header status May 22, 2025
};
}
if (substatus === GroupSubstatus.ESCALATING) {
return {
tagType: 'error',
status: t('Escalating'),
tooltip: t('This issue has exceeded its forecasted event volume.'),
Copy link
Member Author

Choose a reason for hiding this comment

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

this one could be improved i think.

Copy link
Member

Choose a reason for hiding this comment

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

I don't particularly like my phrasing here but maybe something along the lines of "This issue is occurring significantly more often it used to."

https://docs.sentry.io/product/issues/states-triage/escalating-issues/ says "Sentry defines an issue as Escalating when the number of events is significantly higher than the previous week." but there is also the caveat for issues <7d old

Copy link
Member Author

Choose a reason for hiding this comment

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

i like this a lot better!

@JoshFerge JoshFerge requested a review from scttcper May 22, 2025 20:29
Copy link

codecov bot commented May 22, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

✅ All tests successful. No failed tests found.

Additional details and impacted files
@@            Coverage Diff             @@
##           master   #92081      +/-   ##
==========================================
- Coverage   85.56%   82.75%   -2.81%     
==========================================
  Files       10179    10168      -11     
  Lines      583480   582712     -768     
  Branches    22627    22580      -47     
==========================================
- Hits       499254   482252   -17002     
- Misses      83631    99172   +15541     
- Partials      595     1288     +693     

};
}
if (substatus === GroupSubstatus.ESCALATING) {
return {
tagType: 'error',
status: t('Escalating'),
tooltip: t('This issue has exceeded its forecasted event volume.'),
Copy link
Member

Choose a reason for hiding this comment

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

I don't particularly like my phrasing here but maybe something along the lines of "This issue is occurring significantly more often it used to."

https://docs.sentry.io/product/issues/states-triage/escalating-issues/ says "Sentry defines an issue as Escalating when the number of events is significantly higher than the previous week." but there is also the caveat for issues <7d old

@JoshFerge JoshFerge enabled auto-merge (squash) May 22, 2025 21:09
@JoshFerge JoshFerge merged commit d858161 into master May 22, 2025
42 checks passed
@JoshFerge JoshFerge deleted the jferg/learn-more branch May 22, 2025 21:11
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.

5 participants