Commit f0109cf
秦奇
docs(design): daemon side-channel coordination v5 (fourth review round)
- Concurrent-in-session-/model drift (Critical): add §2.2 post-roundtrip
reconciliation — on roundtrip settle the bridge re-reads the agent's actual
model and emits a corrective model_switched if divergent (in-session /model
bypasses modelChangeQueue, so drop-when-suppressed could otherwise leave the
bus on A while the session runs B).
- IDE-companion lockstep (Critical): add a one-release dual-emit transition
(publish both generic session_update and promoted approval_mode_changed) and
enumerate the upstream dispatch sites (daemonIdeConnection.ts /
DaemonChannelBridge.ts) that drop unknown types and also need handlers.
- Specify the model_switched payload mapping (currentModelId→data.modelId,
envelope sessionId→data.sessionId) — without it the SDK validator drops the
promoted event and A1 is non-functional.
- Require demux observability (structured log: promoted/dropped/suppressed/
generic) at every decision point.
- Correct the reviewer's "replay_complete doesn't exist": it shipped in merged
#4484 (eventBus.ts:444); A5 phase 2 introduces only session_snapshot.
- First-attach no longer synthesizes replay_complete{0} (would widen that
event's contract); session_snapshot is self-delimiting on first attach.
- Tighten capture-at-emission to a synchronous read+publish block.
- Specify the helper-generalization migration model; resolve Q3 (keep the
extMethod bypass); add the A4 distinguishing test (done in #4539) to §8.1 parent 431e1d9 commit f0109cf
1 file changed
Lines changed: 50 additions & 18 deletions
0 commit comments