test / unit + widget + golden + a11y (push) Failing after 27s
test / integration_test (xvfb) (push) Has been skipped
test / bundle smoke (xvfb 5s) (push) Has been skipped
test / daemon subprocess + web WASM smoke (push) Has been skipped
test / dart doc (lib API) (push) Failing after 28s
After session-id binding (T-146), a pane that attached (via new-session -A) to a session created before the change — which has no --session-id, so its transcript is under a different id — would wait forever for a transcript that never appears. Same on any unconnectable session. Before spawning, if no transcript exists for our deterministic session id, kill the clide tmux session of that exact name so new-session creates a clean one with our --session-id. This self-heals the stuck state on next launch and makes clean-install/first-run robust. Safe by construction: only clide's own session is killed — by its exact clide-claude-<slug> name on the private -L clide socket (a terminal claude never runs there) — and no transcript file is ever deleted. A healthy session's transcript already exists, so re-attach continuity (D-41) is preserved. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>