diff options
| author | Adam Malczewski <[email protected]> | 2026-06-12 14:58:33 +0900 |
|---|---|---|
| committer | Adam Malczewski <[email protected]> | 2026-06-12 14:58:33 +0900 |
| commit | b3d270803f95db2467e20bb742aa42faf6867f91 (patch) | |
| tree | 6abac5ec8ef76bcb95a4b9e93891cd3c87f451a6 /packages/kernel/src | |
| parent | 86b5137c4f7f2bcc08f0580f1edaa05d14015e63 (diff) | |
| download | dispatch-b3d270803f95db2467e20bb742aa42faf6867f91.tar.gz dispatch-b3d270803f95db2467e20bb742aa42faf6867f91.zip | |
fix(turns): emit user prompt on the turn event stream (CR-3)
A pure watcher (subscribed but not the sender) couldn't see the user prompt
until the turn sealed: the user message was only persisted at seal and never
entered the live/replayable stream. Add an additive TurnInputEvent
{type:"user-message", conversationId, turnId, text} to the AgentEvent union and
emit it via the broadcast/buffer path as the first event of every turn, so it is
replayed to all subscribers (live + late-join) and on the HTTP path. Persistence
and metrics unchanged; the union widening breaks no exhaustive switch.
- @dispatch/wire 0.5.0->0.6.0; @dispatch/transport-contract 0.7.0->0.8.0 (re-export)
- session-orchestrator: emit user-message at runTurnDetached start; +3 tests,
3 Wave-1 tests updated (user-message precedes turn-start)
- FE courier: frontend-cr3-user-message-handoff.md
Live-verified vs flash: watcher receives user-message (correct text) as its first
chat.delta before turn-sealed. 894 vitest + transport bun green; tsc -b EXIT 0.
Diffstat (limited to 'packages/kernel/src')
| -rw-r--r-- | packages/kernel/src/contracts/events.ts | 1 | ||||
| -rw-r--r-- | packages/kernel/src/contracts/index.ts | 1 |
2 files changed, 2 insertions, 0 deletions
diff --git a/packages/kernel/src/contracts/events.ts b/packages/kernel/src/contracts/events.ts index be09066..b1385a2 100644 --- a/packages/kernel/src/contracts/events.ts +++ b/packages/kernel/src/contracts/events.ts @@ -10,6 +10,7 @@ export type { StatusEvent, TurnDoneEvent, TurnErrorEvent, + TurnInputEvent, TurnReasoningDeltaEvent, TurnSealedEvent, TurnStartEvent, diff --git a/packages/kernel/src/contracts/index.ts b/packages/kernel/src/contracts/index.ts index b5802f3..10025e2 100644 --- a/packages/kernel/src/contracts/index.ts +++ b/packages/kernel/src/contracts/index.ts @@ -34,6 +34,7 @@ export type { StatusEvent, TurnDoneEvent, TurnErrorEvent, + TurnInputEvent, TurnReasoningDeltaEvent, TurnSealedEvent, TurnStartEvent, |
