mirror of
https://github.com/stablyai/orca.git
synced 2026-10-29 00:03:37 +00:00
* fix(session): broaden hydration carve-out beyond SSH repos (#1158) Finish the third deferred follow-up from #1158: preserve persisted terminal tabs when a repo is still known but its worktree list has not loaded yet. Startup fetches repos and worktrees before hydrating the saved session. If a local repo fetch degrades to an empty list, or an SSH repo has not reconnected yet, the old SSH-only carve-out could drop every tab for that repo and let the session writer persist the loss after hydration succeeded. Hydration now preserves missing session worktree IDs only when their owning repo is still in s.repos and that repo has not produced a non-empty worktree list. Once a repo has loaded one or more worktrees, that list stays authoritative so genuinely deleted worktrees are still filtered instead of being kept as zombies. The sidebar placeholder synthesis remains SSH-only: local worktree metadata should come from the next successful fetch rather than a synthetic entry. Tests cover preserving tabs for a known repo with an unloaded worktree list, dropping tabs for an unknown repo, and the existing invalid-worktree path now also pins the loaded-repo/deleted-worktree case. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com> * Fix authoritative hydration cleanup Co-authored-by: Orca <help@stably.ai> --------- Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com> Co-authored-by: Jinwoo-H <jinwoo0825@gmail.com> Co-authored-by: Orca <help@stably.ai>