Repository navigation
fix(client): filter Chrome extension IPC Object Not Found Sentry noise (KODY-CLOUDFLARE-3S) - #1246
Conversation
Drop unhandledrejection events matching Chromium's extension messaging signature (KODY-CLOUDFLARE-3S / issue 7655189301). These come from browser extensions, not app code, and have no in-app stack. Co-authored-by: Kent C. Dodds <me+github@kentcdodds.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
🚧 Files skipped from review as they are similar to previous changes (1)
📝 WalkthroughWalkthroughThe browser Sentry filters detect Chrome extension IPC object-not-found errors, discard matching events, preserve incomplete patterns, and document the added noise filter. Tests cover direct matching and aggregate browser filtering. ChangesChrome extension Sentry filtering
Estimated code review effort: 2 (Simple) | ~10 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
🔎 Preview deployed: https://kody-pr-1246.kody-a99.workers.dev Worker: Mocks:
|
Co-authored-by: Kent C. Dodds <me+github@kentcdodds.com>
Summary
Sentry issue KODY-CLOUDFLARE-3S captures unhandled promise rejections on
https://heykody.dev/with:Object Not Found Matching Id:N, MethodName:update, ParamCount:4This is Chromium extension messaging noise (an antifingerprint extension breadcrumb appears on the event). There are no in-app stack frames — the rejected Chrome API promise bubbles to
window.onunhandledrejectionand Sentry's browser SDK reports it as app error.Outcome:
filtered— add a narrow clientbeforeSendpredicate matching only that Chrome IPC signature (same pattern as AbortError / Firefox Xray / injected-global / Fathom filters).Changes
packages/worker/client/sentry-browser-filters.ts—filterChromeExtensionObjectNotFoundSentryEventfilterBrowserSentryEvent+sentry-init.tscommentTest plan
npm run validateSystem recap — composes existing primitives (low risk)
Mode: recap · Base:
main@69f10ac9· Head:cc2da1b9Classification: composes — narrow browser Sentry
beforeSendfilter using the existing client noise-filter pattern; no primitive contracts changed.Primitives touched
app-uiSystem map
Browser SDK
beforeSenddrops Chromium extension "Object Not Found Matching Id…" rejections before they open Sentry issues.Legend: green = composes (wiring only) · amber = extended by this PR · red = new primitive · gray = context.
Risk notes
Review focus
Summary by CodeRabbit
Bug Fixes
Documentation