You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit c081228
Browse filesBrowse the repository at this point in the historyBrowse files
fix(session): a web session whose server stopped is ended, not reattachable
`_get_full_state()` cleared a dead CLI (tmux) session but had no rule for a
web-owned one, and read_session_state() drops tmux keys for pty/acp files,
so a browser-terminal or ACP session whose server died kept reporting
`mode=focus` forever. /api/session/state held no slot, served that file
verbatim with no reattach_url, and the console adopted it into its
"unavailable" fallback.
- session_state.web_claim_is_orphaned(): the read-side twin of
claim_blocks_web_start's crash-then-restart cell -- a pty/acp claim whose
pid is neither this process nor alive. CLI sessions (pid is not their
liveness), this process's own in-flight reservation, and pid-less claims
are never judged orphaned.
- _get_full_state(): an orphaned web claim is reported `mode=ended`, the
verdict /session/start already reached. Nothing is deleted: an unended
session never flushed its parking lot. Covers /api/session/state and the
SSE dashboard stream, which share the reader.
- live-agent-console.js: a known transport (pty/acp) with no connection URL
now reads "The server did not return a connection for this session"; the
"cannot render" sentence is kept for transports the view does not render.
That sentence is what docs/troubleshooting.md already promised for this
case; every caller passes a transport, so it was unreachable.
- docs/troubleshooting.md: the stopped-server case. CHANGELOG Unreleased/Fixed.
0 commit comments