Skip to content

e2e: deploy workflows by catalog offering ids (CL-7460) - #651

Closed
TheGreatAxios wants to merge 7 commits into
cl-7461-seed-deploy-offering-idsfrom
cl-7460-e2e-deploy-offering-ids
Closed

TheGreatAxios wants to merge 7 commits into
cl-7461-seed-deploy-offering-idsfrom
cl-7460-e2e-deploy-offering-ids

Conversation

@TheGreatAxios

@TheGreatAxios TheGreatAxios commented Sep 6, 2026 •

Copy link
Copy Markdown
Contributor

What

The native workflow deploy route now requires sourceOfferingIds/defaultSourceOfferingId resolved against the tenant's own catalog, instead of a raw sources: [{ provider, baseURL, apiKey, model }] chain. scripts/e2e/harness.ts's workflowDeployBody still sent the old shape, so the e2e job failed with 400 across walking-skeleton, chat, heartbeat, smoke-webhook, workbench-digest, and cl-6324-launch-proof.ts.

Why

Deploy the same way the native route now expects: by catalog offering id. workflowDeployBody takes { assetId, commitSha, sourceOfferingIds, defaultSourceOfferingId }.

The zero-cost noop catalog chain (an anthropic-plugin provider pointed at the hub's own noop-inference endpoint) used to be a bespoke seedNoopCatalogOffering harness helper. This revision drops that duplication: @corbits/seeding (CL-7461, this PR now stacks on #657) exports ensureNoopCatalogOffering, the exact same chain seedTenant itself plants for a modelSource-pinned default workflow, and heartbeat/smoke-webhook/workbench-digest now call that shared helper directly instead of harness's own copy. walking-skeleton keeps a local helper pointed at its never-real placeholder host (still guarded by assertNeverRealProvider), since the shared helper always targets the hub's real noop-inference endpoint. chat.test.ts resolves the offering seedCatalog already plants rather than seeding a second chain. cl-6324-launch-proof.ts's section-mode deploy reuses the offering id the proof already resolves when it narrows the bench catalog to its pinned model.

Resolves CL-7460

Test plan

  • bunx tsc --noEmit -p tsconfig.json
  • bunx tsc --noEmit -p packages/longevity-sim
  • bun test scripts/e2e/harness.test.ts
  • DB-gated e2e suites (walking-skeleton, chat, heartbeat, smoke-webhook, workbench-digest) — no local Postgres available in this environment; relying on CI's e2e job.

The native workflow deploy route now requires sourceOfferingIds/
defaultSourceOfferingId resolved against the tenant's own catalog,
rather than a raw provider/baseURL/apiKey source chain. Update
workflowDeployBody accordingly, and extract the zero-cost noop
catalog chain smoke-webhook.test.ts already built (an anthropic-
plugin provider pointed at the hub's noop-inference endpoint) into
a shared seedNoopCatalogOffering harness helper.

Every deploying e2e suite now seeds or resolves a real catalog
offering before deploying: walking-skeleton keeps a never-real
placeholder host (assertNeverRealProvider still guards it), chat
resolves the offering seedCatalog already planted rather than
seeding a second chain, and heartbeat/workbench-digest/smoke-webhook
seed the noop chain via the shared helper. cl-6324-launch-proof's
section-mode deploy now reuses the offering id the proof already
resolved when it narrowed the bench catalog to its pinned model.
@linear-code

linear-code Bot commented Sep 6, 2026

Copy link
Copy Markdown

CL-7460

Another workflowDeployBody caller CI's typecheck job caught: this
stack seeds one catalog offering per real inference target already,
so track each one's id and pass it through to the deploy body
instead of the raw provider/baseURL/apiKey shape.
harness.ts's seedNoopCatalogOffering duplicated the exact chain
@corbits/seeding's ensureNoopCatalogOffering already plants (CL-7461).
Every deploying suite that pointed the offering at the hub's own real
noop-inference endpoint (heartbeat, smoke-webhook, workbench-digest)
now calls the shared helper instead; walking-skeleton keeps its own
local copy, since it deliberately points the offering at an
unreachable placeholder host rather than the hub's noop-inference
endpoint, which the shared helper does not support.
@TheGreatAxios
TheGreatAxios changed the base branch from cl-7107-repin-and-re-vendor-audit-against-interchange-main-before-the to cl-7461-seed-deploy-offering-ids September 6, 2026 16:02
@TheGreatAxios
TheGreatAxios deleted the branch cl-7461-seed-deploy-offering-ids September 6, 2026 16:07
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