Skip to content

Kill hub boot env-credential plant - #706

Merged
TheGreatAxios merged 4 commits into
mainfrom
cl-7579-kill-hub-boot-env-credential-plant
Sep 10, 2026
Merged

Kill hub boot env-credential plant#706
TheGreatAxios merged 4 commits into
mainfrom
cl-7579-kill-hub-boot-env-credential-plant

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Contributor

Linear: CL-7579

Summary

Hub boot no longer plants provider credentials from environment variables. apps/hub/src/env-credential-plant.ts is deleted, along with the scheduleEnvProviderCredentialPlant caller and the envProviderKeys / envProviderBaseUrls / envCredentialPlantAdmin config fields. Booting with ANTHROPIC_API_KEY (or any curated provider key) set inserts zero credential or catalog rows. Operators connect a provider in the UI or through a granted setup step.

Not gated, not moved into system-seed. @workbench/onboarding's plantEnvProviderCredentials is kept as a library for a future granted setup step; nothing in production calls it today. ORG_SLUG still aliases WORKBENCH_DEFAULT_TENANT; scripts/dev.ts's local sign-up is untouched.

Test plan

  • New tests boot the hub (process and in-process) with OLLAMA_BASE_URL pointed at a local fake provider and poll credential/offering for 15s — red before the fix ("boot planted state: 1 credential row(s)"), green after
  • bun test apps/hub/test/boot-does-not-seed.test.ts — 5 pass
  • bun test packages/seeding — 81 pass
  • bun run typecheck — exit 0
  • bun run check — exit 0

Two DB-gated boot tests (process boot via startHub and in-process
createHub) boot against a scratch database with a resolved operator
bench and OLLAMA_BASE_URL pointed at a local fake Ollama whose probe
succeeds. Both fail today: the env-key auto-plant inserts a credential
row at boot. They are the acceptance proof for deleting that plant.
Hub boot no longer reads provider credentials from the environment.
Operators connect a provider through the onboarding connect flow (or
the same connect API from a granted setup step); setting
ANTHROPIC_API_KEY or any other curated provider's env var now does
nothing at boot. Deletes apps/hub/src/env-credential-plant.ts, its
scheduleEnvProviderCredentialPlant call site, and the now-dead HubConfig
fields (envProviderKeys, envProviderBaseUrls, envCredentialPlantAdmin)
with their env parsing; HUB_ADMIN_EMAIL/HUB_ADMIN_PASSWORD are no longer
hub configuration, and scripts/dev.ts keeps reading them directly for
its own sign-up. @workbench/onboarding's connect flow is untouched.
The .env.example, README, IMPLEMENTATION, and the local-dev, local-rip,
tenancy, and seed-reconciliation docs no longer describe an env-key
auto-plant: hub boot plants no credentials, so setting ANTHROPIC_API_KEY
or any other provider's env var has no effect and operators connect a
provider in the UI instead. OLLAMA_BASE_URL stays documented for bun run
dev's memory setup, which still reads it directly.
The seed log no longer points operators at a boot-time plant, the kept
onboarding module no longer describes itself as a boot counterpart, and
seed-reconciliation states which flow actually plants today.
@linear-code

linear-code Bot commented Sep 10, 2026

Copy link
Copy Markdown

CL-7579

@TheGreatAxios
TheGreatAxios merged commit 2d51985 into main Sep 10, 2026
24 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.

1 participant