Repository navigation
feat(dashboard): Rate a Reply once with the reader and a bad-reply comment - #2830
Merged
Merged
Conversation
…mment Reply ratings now carry the reader's name and email, so Sentry no longer shows them as Anonymous User. The first rating is final, so changing the thumb no longer sends another feedback. Bad opens a popover with an optional comment and Send. Co-Authored-By: bete <28983162+betegon@users.noreply.github.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
163 screenshot changes — 0 changed · 163 added · 0 removed |
Good now waits 5 seconds before it sends. In that time the reader can click it again to clear it or open Bad to switch. Leaving the page or the Conversation sends a pending Good at once. A Reply still sends at most one feedback. Co-Authored-By: bete <28983162+betegon@users.noreply.github.com>
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit d292a9c. Configure here.
Transcript rows unmount outside the viewport. The rating lived in the row, so an unmount sent a pending Good early and a remount could rate again. Hold ratings per transcript list instead, so the undo window and the one-feedback rule survive scrolling. Co-Authored-By: bete <miguel.betegon@sentry.io>
Contributor
|
Found 3 test failures on Blacksmith runners: Failures
|
renderToStaticMarkup needs getServerSnapshot for useSyncExternalStore.
betegon
approved these changes
Nov 6, 2026
This branch was successfully deployed
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.

![Fix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/fix-with-codesmith-light-3x.png)
Follow-up to #2763, from testing it in prod. Rating one Reply up, down, then up made three "Anonymous User" feedbacks in Sentry.
nameandemailfrom/api/me. Sentry shows the person instead of "Anonymous User".Popoveras the profile menu, not a dialog) with an optional comment and Send. Cmd/Ctrl+Enter also sends. Nothing sends until Send, so a mistaken Bad can switch to Good, or close with Escape or an outside click. A comment becomesBad reply: <comment>. With no comment it isBad reply.TELEMETRY.md and the unit test now describe the new payload. The privacy statement changed: a rating used to have "no person", and now it has the reader's name and email. It still has no Reply text.
Testing
conversations.spec.tschecks the real browser feedback envelopes, with Playwright's fake clock for the 5-second delay. It covers: clearing Good, switching Good to Bad, switching Bad to Good, nothing sent before the delay, one feedback withcontact_emailandnameafter it, a pending Good sent when the reader leaves the Conversation, Escape on Bad, and Bad with a comment. It passed 5/5 with--repeat-each. All ofconversations.spec.tspasses.via @betegon.
--
View Session in Sentry