Files
orca/src/shared/host-lineage-contract.ts
T
JinjingandOrcaWin a40183389b feat: bound direct SSH reconnect fan-out and recovery (#11003)
* docs: design for direct SSH reconnect fan-out

Capture the implementation-ready plan for host-qualified, epoch-fenced
SSH reconnect recovery after two rounds of multi-model LLM counsel review.

* docs: reconcile SSH reconnect fan-out design

* docs: close reconnect design consistency gaps

* feat: implement bounded direct SSH reconnect recovery

* fix: bound direct SSH retry settlement

* fix: harden direct SSH reconnect authority

* fix: preserve split SSH retry ownership

* fix: preserve SSH split continuation authority

* docs: record final SSH reconnect validation

* fix: preserve SSH authority through retained and detached state

* fix: retain SSH authority across delayed split mounts

* fix: close SSH authority recovery gaps

* fix: fence stale SSH transport replacement

* fix: serialize SSH target teardown

* fix: settle SSH teardown failures before reconnect

* fix: retire failed SSH reset sessions

* test: reconcile current main E2E contracts

* fix: close direct SSH reconnect review gaps

* fix: fence stale SSH reconnect side effects

* fix: close final SSH reconnect lifecycle gaps

* test: stabilize current-main reliability gates

* test: prove plugin navigation containment

* test: make plugin navigation oracle authoritative

* test: make plugin navigation oracle deterministic

* ci: allow sharded e2e suite to finish

* test: wait for runtime pane publication

* test: classify pane readiness by error code

* test: select close persistence terminal by tab identity

* docs: mark reconnect implementation validated

---------

Co-authored-by: OrcaWin <293788423+OrcaWin@users.noreply.github.com>
2026-07-28 12:33:17 -07:00

30 lines
1.0 KiB
TypeScript

import type { ExecutionHostId, LOCAL_EXECUTION_HOST_ID } from './execution-host'
import type { SshExecutionHostId } from './detected-worktree-provider-contract'
import type { DirectSshAuthority } from './ssh-types'
import type { WorktreeLineage, WorkspaceLineage } from './types'
export type ListDesktopLineageForHostArgs =
| { executionHostId: typeof LOCAL_EXECUTION_HOST_ID }
| {
executionHostId: SshExecutionHostId
expectedAuthority: DirectSshAuthority
}
export type HostLineageSnapshot =
| {
authoritative: true
authority:
| { kind: 'local'; executionHostId: typeof LOCAL_EXECUTION_HOST_ID }
| ({
kind: 'direct-ssh'
executionHostId: SshExecutionHostId
} & DirectSshAuthority)
worktreeLineageById: Record<string, WorktreeLineage>
workspaceLineageByChildKey: Record<string, WorkspaceLineage>
}
| {
authoritative: false
executionHostId: ExecutionHostId
reason: 'ambiguous-owner' | 'authority-unknown' | 'stale' | 'unavailable' | 'rejected'
}