Conversation
de84226 to
e809b83
Compare
e39f7e7 to
cc6e49d
Compare
e809b83 to
c1e697d
Compare
c1e697d to
da4fcc6
Compare
|
I'm starting a first review of this pull request. You can follow along in the session on Warp. I completed the review and posted feedback on this pull request. Comment Powered by Oz |
There was a problem hiding this comment.
Overview
This PR reworks the shared-session viewer lifecycle so an ambient agent terminal can attach a fresh follow-up session, adds append-mode scrollback loading, and routes outbound viewer updates through a replaceable current network.
Concerns
- Follow-up append mode still processes replayed agent conversation events after loading scrollback, which can duplicate existing cloud-agent history when the new session replays prior transcript state.
- Ambient session-end handling guards only
current_networkclearing by session ID; stale events from a closed prior network can still unregister the active share and clear the new write-to-PTY channel.
Verdict
Found: 0 critical, 2 important, 0 suggestions
Request changes
Comment /oz-review on this pull request to retrigger a review (up to 3 times on the same pull request).
Powered by Oz
| } | ||
| SharedSessionInitialLoadMode::AppendFollowupScrollback => { | ||
| terminal_model | ||
| .append_followup_shared_session_scrollback(scrollback_blocks.as_slice()); |
There was a problem hiding this comment.
EventLoop and skip replay events for follow-up joins.
| manager.left_share(terminal_view.id()); | ||
| }); | ||
|
|
||
| model |
There was a problem hiding this comment.
SessionEnded from the closed previous network still runs this teardown after a follow-up connects, which unregisters the active share and clears the new write-to-PTY channel. Guard all ambient teardown on ended_network matching current_network, not just the final current_network clear.
da4fcc6 to
fadd66b
Compare
cc6e49d to
b7c64bc
Compare
fadd66b to
5b9c748
Compare
… a shared session viewer with the same terminal view/model
5b9c748 to
873ccb3
Compare

Description
Adds support for swapping out the viewer-side shared session piping for an existing TerminalView/Manager to support continuing cloud agent conversations across VM lifecycle boundary.
Adds
SessionSharingInitialLoadModefor ignoring replay events when joining a shared session for a cloud agent task with agent scrollback.