feat(studio): live re-attach via the durable session watch - #982
Closed
jtenniswood wants to merge 1 commit into
Closed
jtenniswood wants to merge 1 commit into
jtenniswood wants to merge 1 commit into
Conversation
Any tab can now follow a driving run live: use-agent-chat grows the
self-contained watch effect over the ADR 0250 session watch, the pure
reduceWatchEvent reducer (+tests) with the replay-batch/parked-ask boundary,
a fault latch that falls back to the transcript, and runIdRef threaded into
cancel/approve/steer for strict stale_run_control handling — completing the
strict steer from the queue/steer PR. Gated on
features.has('watch_session_events'); the endpoint pre-exists on the daemon
(ADR 0250), and the e2e fixture has no watch route, so specs are untouched.
Same-PR docs honesty: docs/architecture.md and the readiness tracker stop
calling live re-attach a non-goal (the original branch shipped the feature
but left both stale); the honest residual stays named — the driving tab's
own POST /prompt stream still cancels the run on disconnect.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stack 17/21 — Studio: live re-attach via the durable session watch
Re-attach to a running session from any tab (ADR 0250/0249): the watch transport landed in PR 5 (
watch.ts); this PR wires the chat surface to it.use-agent-chatgrows the self-contained watch effect + the purereduceWatchEventreducer (+tests): replay-batch/parked-ask boundary, fault latch → transcript fallback, andrunIdRefthreaded into cancel/approve/steer (stale_run_controlhandling — completing PR 15's strict steer).features.has('watch_session_events')— the endpoint pre-exists on main, so this works against any current daemon; the e2e fixture has no watch route, so specs are untouched.docs/architecture.mdand the readiness tracker stop calling live re-attach a non-goal (the original branch shipped the feature but left those documents stale); the honest residual stays named — the driving tab's ownPOST /promptstream still cancels the run on disconnect.Demo at this stack point: open a second tab on a driving session and watch it live; refresh mid-run and re-attach.
Part of the stacked landing of #618.
🤖 Generated with Claude Code