Ignore third-party OnyxDB read rejections in Sentry - #99819
Open
mukhrr wants to merge 2 commits into
Open
Conversation
The Convert Experiments script loaded by web/index.html reads OnyxDB directly and rejects with bare strings such as "No data found for key reportActions_undefined". Those rejections carry no stack frames, so thirdPartyErrorFilterIntegration cannot tag them. Match them by message via ignoreErrors instead.
melvin-bot
Bot
requested review from
brunovjk and
joekaufmanexpensify
and removed request for
a team
August 29, 2026 07:25
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: ca44ced4b7
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
The unanchored pattern would also drop a thrown Error whose message happens to contain the same text, on every platform, discarding a real stack. Match the browser SDK's string-rejection wording instead, which still covers every key that helper reads.
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.
Explanation of Change
The Convert Experiments script loaded by
web/index.htmlreads OnyxDB directly and rejects with bare strings such asNo data found for key reportActions_undefined. Because the rejection value is a string and not anError, the event reaches Sentry with no stack frames, sothirdPartyErrorFilterIntegration(which tags by frame origin) cannot tag it.ignoreErrorsmatches on the message instead of the stack, so it does catch these. This adds a/No data found for key/pattern to it, covering the whole family of keys that helper reads, plus a regression test.No app behaviour changes; this only affects which events are reported to Sentry.
Fixed Issues
$ #98793
PROPOSAL: #98793 (comment)
Tests
npx jest tests/unit/setupSentryTest.tsand verify both tests pass.src/setup/telemetry/setupSentry.tsand delete the/No data found for key/entry from theignoreErrorsarray.npx jest tests/unit/setupSentryTest.tsand verify the first test now fails, confirming the test actually covers the fix.Offline tests
The change only controls which events are reported to Sentry, so it touches no network or Onyx read path.
QA Steps
Cmd+Option+J(macOS) orCtrl+Shift+J(Windows) and select the Console tab.No data found for keyappears at any point.PR Author Checklist
### Fixed Issuessection aboveTestssectionOffline stepssectionQA stepssectionAvatar, I verified the components usingAvatarare working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG))npm run compress-svg)Avataris modified, I verified thatAvataris working as expected in all cases)Designlabel and/or tagged@Expensify/designso the design team can review the changes.mainbranch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTeststeps.Screenshots/Videos
No UI changes, the fix only changes which events are reported to Sentry.
Android: Native
No UI changes.
Android: mWeb Chrome
No UI changes.
iOS: Native
No UI changes.
iOS: mWeb Safari
No UI changes.
MacOS: Chrome / Safari
No UI changes.