Skip to content

fix(integration-v2-warehouse): connect sources through the secure connect link - #441

Merged
sarahxsanders merged 1 commit into
mainfrom
tom/warehouse-step-connect-link
Oct 26, 2026
Merged

sarahxsanders merged 1 commit into
mainfrom
tom/warehouse-step-connect-link

Conversation

@Gilbert09

Copy link
Copy Markdown
Member

Problem

  • The install wizard's warehouse step now ends as "blocked" much more often, so fewer detected sources get connected.
  • The step collected each credential in wizard_ask and passed it to data-warehouse-source-setup or external-data-sources-create as a tool argument.
  • The gateway operator prompt (wizard-ai-gateway-system-prompt) tells the model to keep secrets out of tool arguments, so the model refuses the step.

Changes

  • Each in-cli source now goes through data-warehouse-source-connect-link. The user enters the credentials on the PostHog connect page, not in the terminal.
  • The agent sends the connect_url in one wizard_ask per source, with two options: connected or skip.
  • After the user confirms, the agent reads the newest credential_id from data-warehouse-stored-credentials-list and calls data-warehouse-source-setup with payload: { "credential_id": "<id>" }.
  • No credential value reaches the agent or a tool argument. The pre-flight hints (key types, reachability, Supabase host) now go into the question text.
  • An empty stored-credentials list gets one more confirmation, then the deep-link fallback. This also covers a browser that is signed in to a different PostHog account.
  • Database sources now use setup with the stored credential. Setup syncs every table in the schema the user picks on the page, and the report says so. The db-schema + create path is gone, because database_schema does not accept a credential_id.
  • The deep-link mode and the report and status rules do not change.
  • The agent goal text in context/agents/integration-v2/warehouse.md matches the new flow.

Note

The older data-warehouse-source skill (the wizard warehouse command) still collects typed credentials. It is not changed here.

How did you test this code?

  • pnpm test passes. A new contract test in data-warehouse-source-skill.test.js fails if the step skill again asks for credentials as text answers or names external-data-sources-create.
  • pnpm build passes.
  • Not run: a live wizard run against the connect page.

…nect link

The warehouse step collected credentials in wizard_ask and passed them to
the PostHog tools as tool arguments. The gateway operator prompt forbids
secrets in tool arguments, so the agent reported the step as blocked.

The step now sends the user to the connect page for each in-cli source.
The user enters the credentials there, and the agent creates the source
with the stored credential_id.
@Gilbert09
Gilbert09 requested a review from a team as a code owner October 26, 2026 10:25
@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 ai-observability
  • /wizard-ci basic-integration
  • /wizard-ci feature-flags
  • /wizard-ci mcp-analytics
  • /wizard-ci replay-vision
  • /wizard-ci revenue
  • /wizard-ci self-driving
  • /wizard-ci warehouse
  • /wizard-ci warehouse-seeded

Test an individual app:

  • /wizard-ci ai-observability/anthropic
  • /wizard-ci ai-observability/google-adk
  • /wizard-ci ai-observability/groq
Show more apps
  • /wizard-ci ai-observability/manual-capture
  • /wizard-ci ai-observability/openai
  • /wizard-ci ai-observability/openai-agents
  • /wizard-ci ai-observability/opentelemetry
  • /wizard-ci ai-observability/vercel-ai
  • /wizard-ci basic-integration/android
  • /wizard-ci basic-integration/angular
  • /wizard-ci basic-integration/astro
  • /wizard-ci basic-integration/django
  • /wizard-ci basic-integration/fastapi
  • /wizard-ci basic-integration/flask
  • /wizard-ci basic-integration/flutter
  • /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 feature-flags/django
  • /wizard-ci feature-flags/next-js
  • /wizard-ci mcp-analytics/custom-dispatcher
  • /wizard-ci mcp-analytics/typescript-sdk
  • /wizard-ci replay-vision/javascript-node
  • /wizard-ci replay-vision/next-js
  • /wizard-ci replay-vision/react-vite
  • /wizard-ci revenue/stripe
  • /wizard-ci self-driving/astro
  • /wizard-ci self-driving/fastapi
  • /wizard-ci self-driving/nuxt
  • /wizard-ci self-driving/react-router
  • /wizard-ci self-driving/sveltekit
  • /wizard-ci warehouse/monorepo-env
  • /wizard-ci warehouse/multi-source-next
  • /wizard-ci warehouse/stripe-node
  • /wizard-ci warehouse/zero-source
  • /wizard-ci warehouse-seeded/next-stripe
  • /wizard-ci warehouse-seeded/next-stripe-declined

Test against a wizard branch:

  • /wizard-ci all wizard:my-branch

Add wizard:<branch> to any command above to pin the wizard branch. It defaults to main.

Results will be posted here when complete.

@sarahxsanders
sarahxsanders merged commit 016bf47 into main Oct 26, 2026
18 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.

2 participants