summaryrefslogtreecommitdiffhomepage
path: root/packages/kernel/src
diff options
context:
space:
mode:
authorAdam Malczewski <[email protected]>2026-06-06 21:13:58 +0900
committerAdam Malczewski <[email protected]>2026-06-06 21:13:58 +0900
commitfedf9c2695476e9ee6f95776b0244acfc37f022f (patch)
tree313b2c39e1a7677f2d0997d74df8241986f3283a /packages/kernel/src
parent61b6e24c7abb4eebf94da0a0498a68a1bb8ba92e (diff)
downloaddispatch-fedf9c2695476e9ee6f95776b0244acfc37f022f.tar.gz
dispatch-fedf9c2695476e9ee6f95776b0244acfc37f022f.zip
feat(transport-ws,transport-contract): multiplex chat ops onto the surface WS
Add chat WS ops (chat.send / chat.delta / chat.error) + unified WsClientMessage/WsServerMessage unions to @dispatch/transport-contract (imports ui-contract; surface protocol unchanged — additive non-colliding type variants, no channel wrapper). transport-ws drives sessionOrchestrator.handleMessage, streaming each AgentEvent as chat.delta over the same connection that carries surface ops; per-connection AbortController cancels in-flight turns on socket close; error-isolated. Verified live: one WS connection delivered the surface catalog AND a real flash chat turn (chat.delta stream, reply 'Hello my friend'). Completes the FE Slice 2 backend prereqs. typecheck clean, 485 vitest + 80 bun, biome clean. Discovered (separate, pre-existing): runtime does not emit turn-start/done/turn-sealed on either transport — needed for FE cache-commit; tracked in tasks.md.
Diffstat (limited to 'packages/kernel/src')
0 files changed, 0 insertions, 0 deletions