Skip to content

feat(self-driving): connect credential inbox sources via the secure connect link#238

Merged
Gilbert09 merged 2 commits into
mainfrom
tom/self-driving-jira-source
Jul 15, 2026
Merged

feat(self-driving): connect credential inbox sources via the secure connect link#238
Gilbert09 merged 2 commits into
mainfrom
tom/self-driving-jira-source

Conversation

@Gilbert09

@Gilbert09 Gilbert09 commented Jul 15, 2026

Copy link
Copy Markdown
Member

What

Builds on #237 (now merged, which added Jira as a connected-tool inbox source). This PR connects API-credential sources for real, instead of arming dormant responders.

Zendesk, pganalyze, and Jira authenticate with API credentials, and the self-driving flow previously refused to collect them in-run, so it just enabled a dormant responder (a signal toggle with no warehouse source behind it) and left a follow-up. The responder stayed silent until the user separately went and connected the source.

The fix

Reuse the existing connect-link handoff that already backs agent-driven source setup. For any API-credential tool the user picks, the self-driving run now:

  • calls data-warehouse-source-connect-link to get a secure PostHog connect URL,
  • hands the user that link (they enter credentials on a PostHog page in their browser, never in the chat),
  • fetches the stored credential once via data-warehouse-stored-credentials-list,
  • creates the live source via data-warehouse-source-setup with { "credential_id": ... }.

Dormant responder + follow-up is now only the fallback when the user skips or can't finish, the same posture the Linear connector already uses when its OAuth grant doesn't land.

Changes

  • New connector references/5c-credentials.md (mirrors 5b-linear.md, but the "one click" is entering credentials on the connect page).
  • references/5-connected-tools.md — dispatch credential sources to the new connector; reframe the intro and class-recording language.
  • description.md — the per-source connector confirms (now including the credential connect links) can't be batched.

Context

No backend or wizard code needed. The connect object model (PendingSourceCredential), the connect page (/data-warehouse/connect?kind=X), and all three MCP tools already exist and ship today. This only teaches the self-driving flow to use them. Verified the skill bundle rebuilds and carries the connect-link flow.

…ct link

Credential-based connected tools (Zendesk, pganalyze, Jira) were armed as
dormant responders and never actually connected in-run, because the flow
refused to collect API credentials. Reuse the existing connect-link handoff
instead: hand the user a secure PostHog connect page, wait for them to store
credentials in the browser (never in chat), then create the live source from
the stored credential via data-warehouse-source-setup. Dormant + follow-up is
now only the fallback when the user skips or can't finish.
@github-actions

Copy link
Copy Markdown

🧙 Wizard CI

Run the Wizard CI and test your changes against wizard-workbench example apps by replying with a GitHub comment using one of the following commands:

Test all apps:

  • /wizard-ci all

Test all apps in a directory:

  • /wizard-ci basic-integration
  • /wizard-ci mcp-analytics
  • /wizard-ci revenue

Test an individual app:

  • /wizard-ci basic-integration/android
  • /wizard-ci basic-integration/angular
  • /wizard-ci basic-integration/astro
Show more apps
  • /wizard-ci basic-integration/django
  • /wizard-ci basic-integration/fastapi
  • /wizard-ci basic-integration/flask
  • /wizard-ci basic-integration/javascript-node
  • /wizard-ci basic-integration/javascript-web
  • /wizard-ci basic-integration/laravel
  • /wizard-ci basic-integration/next-js
  • /wizard-ci basic-integration/nuxt
  • /wizard-ci basic-integration/python
  • /wizard-ci basic-integration/rails
  • /wizard-ci basic-integration/react-native
  • /wizard-ci basic-integration/react-router
  • /wizard-ci basic-integration/sveltekit
  • /wizard-ci basic-integration/swift
  • /wizard-ci basic-integration/tanstack-router
  • /wizard-ci basic-integration/tanstack-start
  • /wizard-ci basic-integration/vue
  • /wizard-ci mcp-analytics/custom-dispatcher
  • /wizard-ci mcp-analytics/typescript-sdk
  • /wizard-ci revenue/stripe

Results will be posted here when complete.

…rces

Switch the credential connector from data-warehouse-source-setup (which
enables every discoverable table) to external-data-sources-create with an
explicit single-table schema, matching the Linear connector. Credential
inbox sources now sync just their actionable table (tickets/issues) via the
stored credential. Depends on the posthog create endpoint accepting a
credential_id; degrades to the dormant fallback on older backends.
@Gilbert09

Copy link
Copy Markdown
Member Author

The single-table behavior here depends on PostHog/posthog#71056 (create endpoint accepting a stored credential_id). Deploy that first for one-table syncs; on an older backend the connector degrades gracefully to the dormant-responder fallback.

@Gilbert09
Gilbert09 merged commit d25e35e into main Jul 15, 2026
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants