feat(data-warehouse): add 30 warehouse sources to the self-driving inbox#3597
Open
Gilbert09 wants to merge 1 commit into
Open
feat(data-warehouse): add 30 warehouse sources to the self-driving inbox#3597Gilbert09 wants to merge 1 commit into
Gilbert09 wants to merge 1 commit into
Conversation
Wire the 30 new signal sources (support desks, issue trackers, error tracking, security scanners, product feedback and reviews) into the Self-driving sources UI so users can toggle and connect them. Refactors the inbox source wiring to be data-driven: a single shared EXTERNAL_INBOX_SOURCES registry (packages/shared) is the source of truth, and the toggle grid, setup switch, source-type map, DWH connection map, icons, and filter options all derive from it — so adding a source is now one registry entry rather than edits across ~8 files. The External connections column renders from the registry instead of hand-coded cards. Credential sources route through the existing generic DynamicSourceSetup form (no per-source form code); the legacy GitHub/Zendesk/pganalyze flows are unchanged. Adds two new record kinds (feedback, review), expands the SignalSourceConfig/analytics unions, and forces full-refresh sync for issue-like records (issues, findings, feedback, reviews) while tickets stay append-only. Requires the posthog/posthog signals PR (new SignalSourceProduct enum values + migration) to ship first, since the toggle creates configs with these source_product values.
|
Merging to
After your PR is submitted to the merge queue, this comment will be automatically updated with its status. If the PR fails, failure details will also be posted here |
|
React Doctor found 2 issues in 1 file · 2 warnings. 2 warnings
Reviewed by React Doctor for commit |
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
The Self-driving Inbox let users connect only 5 warehouse sources (GitHub, Linear, Jira,
Zendesk, pganalyze) even though PostHog supports ~500. The backend signals scout now emits
from 30 more sources, but there was no way to toggle or connect them in the app.
Changes
Wires 30 new warehouse sources into the Self-driving sources UI — support desks
(Freshdesk, Freshservice, Front, Gorgias, Kustomer, Dixa, Plain), issue trackers (GitLab,
Gitea, Shortcut), error tracking (Sentry, Rollbar, Bugsnag, Honeybadger, Raygun), security
scanners (Snyk, SonarQube, Semgrep, Rapid7 InsightVM), and product feedback / reviews
(Featurebase, Frill, Aha, UserVoice, Productboard, Canny, AskNicely, Retently, Appfigures,
AppFollow, Judge.me).
The inbox source wiring was hand-coded per source across ~8 files, which doesn't scale. This
PR refactors it to be data-driven:
EXTERNAL_INBOX_SOURCESregistry inpackages/shared/src/inbox-types.tsis thesource of truth (product, label, description, DWH type, tables, record kind, setup flow).
DataSourceSetupswitch, source-type map, DWH connection map, icons, andfilter options all derive from it. Adding a source is now one registry entry.
card) instead of hand-coded
<SignalSourceToggleCard>s.DynamicSourceSetup— no per-sourceform code. The legacy GitHub repo-picker / Zendesk / pganalyze flows are unchanged.
feedback,review), expands theSignalSourceConfig+analytics-event
source_productunions, and forces full-refresh sync for issue-like records(issues, findings, feedback, reviews) while tickets stay append-only.
The core
SignalSourceServicemirror and the mobileSourceProducttype were kept consistent.Deploy ordering: the backend PostHog PR (PostHog/posthog#72378) — new
SignalSourceProductenum values + migration — must ship first, since the toggle calls
createSignalSourceConfigwith these
source_productvalues and the model rejects unknown ones (400).How did you test this?
Automated (run by me):
turbo typecheckfor@posthog/ui,@posthog/core,@posthog/shared,@posthog/api-client,and
@posthog/mobile— all pass.pnpm --filter @posthog/shared build— the published type builds.biome checkon all changed files — clean.Not done: no manual click-through of the connect flow in a running app (the generic
DynamicSourceSetuppath is already exercised by the shipped Linear/Jira sources this reuses).