Replay: user taps crumbs have `null` message on iOS
Description
The crumb message field seems null. And the UI/compoent requires a value.
SDK version: 8.36.0 (running on iOS)
See:
- https://github.com/getsentry/sentry/issues/78837
How did you reproduce this? I've just checked here in the flutter sample app and all looks good.
Interestingly, the screenshot shows "User click" while it should be "User tap".
Not sure, this was a user event. But it wasn't a manually created breadcrumb.
If I explicitly send nil as the message, it shows up as:
Any chance we can get (anonymized) json payload from the replay event?
I don't believe there's anything to do in the Flutter SDK with the details we have available in the issue. At the very least, someone familiar with the UI could verify why taps are shown in breadcrumbs as clicks (if they're indeed taps)
In that case, @c298lee I think we should merge the PR that deals with the data being null
There are User Click breadcrumbs and User Tap breadcrumbs. User Tap breadcrumbs have the category user.tap and is a mobile only breadcrumb. User Click breadcrumbs have the category user.click and in our UI, we expect it to have a message which contains which element was clicked. I believe this should be a web specific breadcrumb, so I'm not sure why it's showing up in a mobile replay.
I'll repoen the PR that deals specifically with user click data being null first to resolve this issue. However, it looks like web breadcrumbs are somehow showing up in a mobile replay, and I think we should look into how that's happening. Maybe they set up custom breadcrumbs with the category ui.click?
Maybe they set up custom breadcrumbs with the category
ui.click?
That still shouldn't get to replay because we convert all ui.click breadcrumbs, regardless of being set by the SDK or user, to ui.tap in Flutter:
https://github.com/getsentry/sentry-dart/blob/3751dbc90dc9966974f829a835778ab2de33fe54/flutter/ios/Classes/SentryFlutterReplayBreadcrumbConverter.m#L18-L42
https://github.com/getsentry/sentry-dart/blob/3751dbc90dc9966974f829a835778ab2de33fe54/flutter/android/src/main/kotlin/io/sentry/flutter/SentryFlutterReplayBreadcrumbConverter.kt#L24-L51
Are we 100% sure that event is coming from Flutter? Because AFAICT, in plain cocoa SDK, the ui.click breadcrumb would just get passed on directly (i.e. what you've suggested might be happening)
From looking at the tags in the replays with these errors, it looks like they are happening on sentry.cocoa.flutter version 8.36.0
As described above, this is not reproducible with the current information so I'll be closing this. Feel free to reopen if you have another idea how to reproduce this, any more details, another replay that this happened on (and we can get json data for it), etc... anything.