Skip to content

fix(replays): handle sentry.cocoa.unreal in configure replay card - #119235

Merged
billyvg merged 2 commits into
masterfrom
fix/configure-replay-card-cocoa-unreal
Jul 8, 2026
Merged

fix(replays): handle sentry.cocoa.unreal in configure replay card#119235
billyvg merged 2 commits into
masterfrom
fix/configure-replay-card-cocoa-unreal

Conversation

@billyvg

@billyvg billyvg commented Jul 8, 2026

Copy link
Copy Markdown
Member

What

Adds sentry.cocoa.unreal to the getPath() switch in configureReplayCard.tsx, routing it to the same apple/guides/ios docs path as sentry.cocoa.

Why

sentry-unreal (see sentry-unreal#1468) embeds the Cocoa SDK to provide Session Replay on iOS builds of Unreal Engine games. That embedded SDK reports its name as sentry.cocoa.unreal. Because this name wasn't in the getPath() switch:

  • Every affected page load hit the default branch, firing Sentry.captureMessage('Unknown mobile platform in configure card: sentry.cocoa.unreal')
  • All three Configure Replay dropdown items (General / Masking / Identify Users) were disabled for those sessions

The underlying replay implementation is the standard Cocoa SDK, so apple/guides/ios is the correct docs target.

Changes

  • configureReplayCard.tsx: add case 'sentry.cocoa.unreal': as a fall-through to case 'sentry.cocoa': with an explanatory comment
  • configureReplayCard.spec.tsx: new test file covering sentry.cocoa.unreal → enabled menu items and no captureMessage, plus regression coverage for unknown SDK names

Verification

TypeScript compiler not available in sandbox; relied on manual review of the one-line fall-through change. CI will cover type checks and the new spec.

Fixes JAVASCRIPT-3ARC

--

View Junior Session in Sentry

sentry-unreal embeds the Cocoa SDK for iOS builds of Unreal Engine games,
which reports its SDK name as 'sentry.cocoa.unreal'. This SDK name was not
in the getPath() switch in configureReplayCard.tsx, causing it to fall to
the default branch: captureMessage fired on every affected page load, and
all three Configure Replay dropdown items were disabled.

Adding 'sentry.cocoa.unreal' as a fall-through to the existing 'sentry.cocoa'
case routes it to the same apple/guides/ios docs path.

Refs SENTRY-issue

Co-Authored-By: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
@github-actions github-actions Bot added the Scope: Frontend Automatically applied to PRs that change frontend components label Jul 8, 2026
@billyvg
billyvg marked this pull request as ready for review July 8, 2026 17:05
@billyvg
billyvg requested a review from a team as a code owner July 8, 2026 17:05
- Use menuitemradio role (react-aria renders DropdownMenu items as
  role=menuitemradio, not option)
- Remove spurious async from test that has no await expression

Co-Authored-By: sentry-junior[bot] <264270552+sentry-junior[bot]@users.noreply.github.com>
@billyvg
billyvg merged commit 8febf21 into master Jul 8, 2026
72 checks passed
@billyvg
billyvg deleted the fix/configure-replay-card-cocoa-unreal branch July 8, 2026 20:20
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.

2 participants