Skip to content

feat(mobile): show warehouse-backed sources in inbox Source filter (port #3597)#3690

Merged
trunk-io[bot] merged 1 commit into
mainfrom
posthog-code/mobile-inbox-warehouse-sources
Jul 22, 2026
Merged

feat(mobile): show warehouse-backed sources in inbox Source filter (port #3597)#3690
trunk-io[bot] merged 1 commit into
mainfrom
posthog-code/mobile-inbox-warehouse-sources

Conversation

@Gilbert09

Copy link
Copy Markdown
Member

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 shared EXTERNAL_INBOX_SOURCES registry (native products first, then the registry spread), mirroring desktop's INBOX_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 generic Plug icon (mobile has no per-source icon assets; matches desktop's PlugIcon fallback). The pure sourceLine helper moved into the inbox utils.ts.
  • inboxFilterStore.ts — re-exports the shared SourceProduct union 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 the sourceLine label helper incl. warehouse + unknown fallbacks (utils.test.ts).
  • tsc --noEmit on apps/mobile — no errors in the changed files.
  • biome check on the changed files — clean.

Automatic notifications

  • Publish to changelog?
  • Alert Sales and Marketing teams?

Created with PostHog Code

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
@Gilbert09
Gilbert09 requested a review from a team July 22, 2026 10:47
@trunk-io

trunk-io Bot commented Jul 22, 2026

Copy link
Copy Markdown

😎 Merged successfully - details.

@github-actions

Copy link
Copy Markdown

React Doctor found 1 issue in 1 file · 1 warning.

1 warning

src/features/inbox/components/FilterSheet.tsx

Reviewed by React Doctor for commit c61baa1.

@Gilbert09 Gilbert09 added the Stamphog This will request an autostamp by stamphog on small changes label Jul 22, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

@trunk-io
trunk-io Bot merged commit 7b426cd into main Jul 22, 2026
34 checks passed
@trunk-io
trunk-io Bot deleted the posthog-code/mobile-inbox-warehouse-sources branch July 22, 2026 13:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Stamphog This will request an autostamp by stamphog on small changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant