feat(mobile): show warehouse-backed sources in inbox Source filter (port #3597)#3690
Merged
Merged
Conversation
Port PostHog/code #3597 to mobile: the inbox Source filter and signal cards only handled ~9 native products, so signals from warehouse-backed sources (Stripe, Sentry, Zendesk, etc.) could not be filtered by source and rendered with a crude fallback label and no icon. - Derive the Source filter's warehouse entries from the shared EXTERNAL_INBOX_SOURCES registry instead of a hardcoded list. - Give warehouse sources a registry label and a generic Plug icon fallback in SignalCard (no per-source mobile icon assets, matching desktop's PlugIcon fallback). - Re-export the shared SourceProduct union from the mobile filter store so the wider set typechecks. - Move the pure sourceLine helper into the inbox utils and cover it, the widened source filter, and the derived options list with tests. Generated-By: PostHog Code Task-Id: 4fcd2e1a-e78a-4ca8-b939-fd728279884d
|
😎 Merged successfully - details. |
|
React Doctor found 1 issue in 1 file · 1 warning. 1 warning
Reviewed by React Doctor for commit |
There was a problem hiding this comment.
Mobile-only UI port mirroring an existing desktop pattern (shared registry already exists), with new unit tests covering the changed logic; no risky-territory surface touched.
- Author wrote 14% of the modified lines and has 22 merged PRs in these paths (familiarity MODERATE).
Gate mechanics and policy version
| Gate | Result | |
|---|---|---|
| prerequisites | ✓ | all clear |
| deny-list | ✓ | no deny categories matched |
| size | ✓ | 124L, 4F substantive, 177L/7F incl. docs/generated/snapshots — within ceiling |
| tier | ✓ | T1-agent / T1c-medium (177L, 7F, single-area, feat) |
| stamphog 2.0.0b3 | .stamphog/policy.yml @ fb1d37c · reviewed head c61baa1 |
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.
Problem
Desktop PR #3597 expanded the self-driving inbox to recognize ~30 warehouse-backed signal sources (Sentry, Zendesk, Postgres, Hubspot, etc.) on top of the PostHog-native products. The mobile app was never updated: its inbox Source filter and signal cards only handled the ~9 native products, so signals originating from warehouse sources could not be filtered by source and rendered with a crude fallback label and no proper icon.
Why: bring the mobile inbox viewing/filtering surface to parity with desktop so warehouse-backed signals are filterable and correctly labelled/iconed.
Changes
Mobile-only (
apps/mobile); no desktop or shared-package changes.FilterSheet.tsx— the Source filter's warehouse entries are now derived from the sharedEXTERNAL_INBOX_SOURCESregistry (native products first, then the registry spread), mirroring desktop'sINBOX_SOURCE_OPTIONS, instead of a hardcoded native-only list.SignalCard.tsx— warehouse sources get a sensible label from the shared registry and fall back to a genericPlugicon (mobile has no per-source icon assets; matches desktop'sPlugIconfallback). The puresourceLinehelper moved into the inboxutils.ts.inboxFilterStore.ts— re-exports the sharedSourceProductunion instead of a local hardcoded copy, so the wider set typechecks.This ports only the inbox viewing/filtering surface. The desktop "self-driving sources" setup/config modal is intentionally not ported — mobile has no source-connection flow.
How did you test this?
pnpm --filter mobile test— 458 passing, including new unit tests for the widened source filter (inboxFilterStore.test.ts), the derived options list (FilterSheet.test.ts), and thesourceLinelabel helper incl. warehouse + unknown fallbacks (utils.test.ts).tsc --noEmitonapps/mobile— no errors in the changed files.biome checkon the changed files — clean.Automatic notifications
Created with PostHog Code