diff options
| author | Adam Malczewski <[email protected]> | 2026-06-21 02:08:44 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-21 02:08:44 +0900 |
| commit | ba47df37f0c89bff4f0c3dd7d0bc2ef6c8062b92 (patch) | |
| tree | 21d87eb847cd526a506cf274467fd1359f349705 /bun.lock | |
| parent | 75032313a96856a932c109efbbe6b6a7eb782222 (diff) | |
| download | dispatch-ba47df37f0c89bff4f0c3dd7d0bc2ef6c8062b92.tar.gz dispatch-ba47df37f0c89bff4f0c3dd7d0bc2ef6c8062b92.zip | |
feat(message-queue): per-conversation queue + steering injection
A per-conversation message queue (new message-queue extension) holds user
messages enqueued while a turn generates; delivered mid-turn as steering at the
tool-result boundary (or carried to a new turn if no tool call fires).
- kernel: RunTurnInput.drainSteering callback (generic; kernel stays pure)
- wire 0.7.0->0.8.0: QueuedMessage, QueuePayload, TurnSteeringEvent (additive)
- transport-contract 0.11.0->0.12.0: POST /conversations/:id/queue + chat.queue WS op
- message-queue ext: queue state + per-conversation custom surface (rendererId message-queue)
- session-orchestrator: enqueue facade + drainSteering wiring + post-seal carry
- transport-http/ws: queue endpoint + chat.queue op (fixes WsClientMessage exhaustive switch)
- host-bin: register message-queue
1043 vitest + 199 transport bun pass; tsc/biome clean; boot smoke clean.
FE courier: frontend-message-queue-handoff.md.
Diffstat (limited to 'bun.lock')
| -rw-r--r-- | bun.lock | 28 |
1 files changed, 25 insertions, 3 deletions
@@ -97,6 +97,16 @@ "@dispatch/kernel": "workspace:*", }, }, + "packages/message-queue": { + "name": "@dispatch/message-queue", + "version": "0.0.0", + "dependencies": { + "@dispatch/kernel": "workspace:*", + "@dispatch/surface-registry": "workspace:*", + "@dispatch/ui-contract": "workspace:*", + "@dispatch/wire": "workspace:*", + }, + }, "packages/observability-collector": { "name": "@dispatch/observability-collector", "version": "0.0.0", @@ -120,6 +130,7 @@ "@dispatch/conversation-store": "workspace:*", "@dispatch/credential-store": "workspace:*", "@dispatch/kernel": "workspace:*", + "@dispatch/message-queue": "workspace:*", }, }, "packages/skills": { @@ -182,6 +193,13 @@ "@dispatch/kernel": "workspace:*", }, }, + "packages/tool-web-search": { + "name": "@dispatch/tool-web-search", + "version": "0.0.0", + "dependencies": { + "@dispatch/kernel": "workspace:*", + }, + }, "packages/tool-write-file": { "name": "@dispatch/tool-write-file", "version": "0.0.0", @@ -202,7 +220,7 @@ }, "packages/transport-contract": { "name": "@dispatch/transport-contract", - "version": "0.5.0", + "version": "0.12.0", "dependencies": { "@dispatch/ui-contract": "workspace:*", "@dispatch/wire": "workspace:*", @@ -235,11 +253,11 @@ }, "packages/ui-contract": { "name": "@dispatch/ui-contract", - "version": "0.1.0", + "version": "0.2.0", }, "packages/wire": { "name": "@dispatch/wire", - "version": "0.4.0", + "version": "0.8.0", }, }, "packages": { @@ -279,6 +297,8 @@ "@dispatch/lsp": ["@dispatch/lsp@workspace:packages/lsp"], + "@dispatch/message-queue": ["@dispatch/message-queue@workspace:packages/message-queue"], + "@dispatch/observability-collector": ["@dispatch/observability-collector@workspace:packages/observability-collector"], "@dispatch/provider-openai-compat": ["@dispatch/provider-openai-compat@workspace:packages/provider-openai-compat"], @@ -301,6 +321,8 @@ "@dispatch/tool-shell": ["@dispatch/tool-shell@workspace:packages/tool-shell"], + "@dispatch/tool-web-search": ["@dispatch/tool-web-search@workspace:packages/tool-web-search"], + "@dispatch/tool-write-file": ["@dispatch/tool-write-file@workspace:packages/tool-write-file"], "@dispatch/trace-replay": ["@dispatch/trace-replay@workspace:packages/trace-replay"], |
