Skip to content

chore(vendor)!: re-pin vendored Interchange to 79adc433 (CL-8206) - #793

Merged
TheGreatAxios merged 3 commits into
mainfrom
cl-8206-repin-intx-head
Sep 17, 2026
Merged

TheGreatAxios merged 3 commits into
mainfrom
cl-8206-repin-intx-head

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Contributor

Summary

Re-vendors all 15 vendor/intx/* packages at Interchange 79adc433
(from 692c3106/c1b5bb73), rebases onto main's #790 (oxfmt reformat)
and #791 (hub composition-root reduction), and fixes what the bump
broke.

Per-package

Every vendor/intx/* row in VENDORED.md is bumped to 79adc433. Deltas
absorbed upstream and dropped: the per-principal signing-key series
(db, hub-api, hub-common), CL-7190's beforeToolExtension
(agent) and "message_response" signal kind (types, inference),
and CL-6396's childRunId forward (hub-sessions, types). Kept: the
CL-7505 serving-time refresh deltas (db, hub-api, hub-sessions),
the CL-7510 adapter registry-key dispatch delta (db, types), the
CL-7508 loopback-login delta (hub-agent, hub-sessions), the
#709 prepared-deploy and step-timer deltas
(hub-sessions, workflow), and CL-6448's single-step grants collapse
(workflow-host — re-applied; the bump silently dropped it and one
sidecar test caught the regression).

Hard cutover — no port

Interchange 79adc433 deletes two capabilities outright, with no stock
replacement:

  • workflow_definition.origin / workflow_definition_version.wire_projection
    (the frozen launch-body projection). Deleted:
    packages/workflows/src/launchable/target.ts (+ test),
    schedule/{available-catalog,deployed-cron-deployments,list-scheduled}.ts
    (+ tests), and the hub's cron auto-fire wiring in apps/hub/src/index.ts
    (createCronEmitter/listCronDeployments). definition-projection.ts
    keeps only its pure, DB-free half (the named errors and the
    schema-validated FoldedBody reader) — chat still needs that type
    surface ahead of its own CL-8175 retirement, but its two DB-touching
    resolvers (resolveAuthoredProjectedDefinition in
    packages/chat/src/platform-adapter.ts) now fail loud with
    DefinitionProjectionMissingError instead of guessing at data that no
    longer exists.
  • SessionService.sendUserMessage. Every caller
    (packages/agent-directory/src/one-shot-prompt.ts,
    packages/webhook-triggers/src/launch.ts) now assembles and signs a
    MIME message and delivers it through SidecarRouter.routeMail,
    mirroring apps/hub/src/native-workflow-routine-launch.ts's existing
    pattern (packages/chat's own send path already used this).

Also fixed: SidecarRouter.routeMail's new required
authenticatedSender param (apps/hub/src/native-workflow-routine-launch.ts),
WorkflowAllocationService.deployReadyAllocation's new
reconciliation param (apps/hub/src/index.ts).

Local code deleted (hard cutover, not ported)

  • packages/workflows/src/launchable/target.ts (+ .test.ts) — the
    DB-touching half of launchable-definition resolution; target-rule.ts's
    pure half survives unchanged.
  • packages/workflows/src/schedule/available-catalog.ts (+ 2 tests),
    deployed-cron-deployments.ts, list-scheduled.ts (+ test) — all
    orphaned already per CL-8160's comment ("the hub-mounted definition
    detail and scheduled-workflow routes are gone"), confirmed by a repo
    search: no caller outside the package itself.
  • The hub's cron-emitter wiring in apps/hub/src/index.ts.

Deleted tests

Same list as above, plus packages/webhook-triggers/test/launch.test.ts
and apps/hub/src/native-workflow-routine-launch.test.ts were rewritten
(not deleted) against the new routeMail/sidecarRouter deps.

Gaps

  • VENDORED.md's per-package prose is updated for the mechanically
    verified facts (pin, kept/dropped deltas) but not exhaustively
    re-audited line-by-line against upstream's actual diff — a few cells
    (e.g. hub-agent's and workflow-host's remaining CL-6396 mentions)
    may still describe an already-absorbed delta I didn't independently
    re-verify.
  • packages/chat/src/platform-adapter.ts's launch-body drift detection
    (resolveDriftedFoldedBody) and its "hub-authored only" invite
    filtering are neutered to safe no-ops rather than reimplemented — chat
    itself retires under CL-8175, so this is a hard cutover consistent
    with that direction, not a redesign.
  • The hub's schedule-triggered cron auto-fire for definition-level
    ScheduleTriggers has no replacement; per the adjacent CL-8181 comment
    already in the file, the intended direction is a schedule-triggered
    routine deployed like any other workflow, not a hub-owned loop, but
    that isn't built here.

Checks

  • bun run typecheck — green
  • bun run lint — green
  • bun run fmt:check — green
  • bun run check:structural — green (0 fail across all checks)
  • bun --cwd apps/hub test — 66 pass, 19 DB-gated skip (no DATABASE_URL locally), 0 fail
  • bun --cwd apps/sidecar test — 324 pass, 0 fail

db, types, hub-api, hub-sessions, hub-agent, inference, workflow,
workflow-host copied wholesale from Interchange 79adc433, stripping
upstream test files.
… APIs

Rebases the 79adc433 re-vendor onto main (#790 oxfmt reformat, #791 hub
composition-root reduction) and fixes what the bump broke: routeMail's
new required authenticatedSender param, deployReadyAllocation's new
reconciliation-context param, and the retirement of
SessionService.sendUserMessage (every caller now delivers a signed MIME
message through SidecarRouter.routeMail, matching
native-workflow-routine-launch.ts's existing pattern) and of
workflow_definition.origin / workflow_definition_version.wire_projection
(the routine/catalog code that read a launch body off the frozen
projection is deleted outright — schedule/{available-catalog,
deployed-cron-deployments,list-scheduled}.ts, launchable/target.ts, the
hub cron-emitter wiring, and their tests — since Interchange no longer
stores that projection at all). packages/workflows/definition-projection.ts
keeps only its pure, DB-free half (the named errors and the
schema-validated FoldedBody reader) for chat, which still needs the type
surface ahead of its own CL-8175 retirement; its two DB-touching
resolvers now fail loud with a named error instead of guessing at
retired data. Re-applies workflow-host's CL-6448 single-step grants
collapse, which the bump otherwise silently dropped.

Updates VENDORED.md and kill-dates.txt for the 79adc433 pin, drops the
delta rows upstream has since absorbed (the per-principal signing-key
series, beforeToolExtension, the message_response signal kind, the
childRunId forward), and bumps @corbits/interaction-tools past a
test-only change the freshness check caught.
@linear-code

linear-code Bot commented Sep 17, 2026

Copy link
Copy Markdown

CL-8206

@TheGreatAxios
TheGreatAxios merged commit 38ca8b2 into main Sep 17, 2026
1 check 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