- run.nonconcurrent: echo-loop started in B stops only A's echo-loop; web keeps serving in A and B
- run.ports (cloud): ORCA_PORT in the first workspace's terminal and run action, before and after
Sleep -> wake, with the VM's port registry; whether a second worktree on the same VM is offered
- local.run-actions: autoRunAfterSetup after a good setup and not after a failed one, Run button,
one trust prompt, Stop -> Stopped, menu Restart replaces the tab, Cmd+Opt+Enter start/restart
- run.nonconcurrent: echo-loop started in B stops A's
- run.ports: ORCA_PORT/ORCA_PORT_COUNT/CONDUCTOR_PORT per terminal, distinct blocks, stable across
an app restart, served locally; cloud half: the action in the VM reachable here via auto-forward
- run.cloud-resume: action back after Sleep/wake and after Restart sandbox
- local.core-workflow: composer local worktree (Blank Terminal), edit in its terminal, diff in
Source Control and the diff tab, Stage All, commit
- acc.download: Explorer Download… (20 MiB file) and Download as ZIP… (folder) with progress and
success toasts and sha256 checks; only the native Save panel's answer is stubbed in main via the
inspector (W9D_MAIN_INSPECT)
- acc.remote-desktop: workspace menu Open remote desktop -> orcaDesktop connected, noVNC canvas
sampled, a red xterm launched on DISPLAY=:1 shows up; guest screenshots over CDP
- local rows without a host badge count as local
- W9D_KEY_SAMPLES (default 10): stats gain p99; each sample records time since the workspace's
first terminal output and wall clock, plus a histogram and the outliers
- life.auto-resume (W9D_AUTO_RESUME=1, W9D_ONLY=auto-resume): personal AI Gateway secrets for the
dev user (kimi-k2, never logged, deleted after), Claude runs a 40 s loop, status panel Restart,
Orca must send continue once and the turn must finish; mapped to catalog life.auto-resume
- W9D_MODE=targeted: picker sign-in on a fresh profile and again after a sign-out, create +
keystroke, Move to this computer with Archive afterwards then Delete within seconds (destroyed,
no suspend/archive error toasts), normal delete
- asleep Delete through the dialog without a Force delete offer is intended: graded pass
- cleanup removes local copies a run made; catalog row + import mapping for move-then-delete
- auth.picker-sign-in: picking the signed-out Orca Cloud row must leave Orca Cloud selected
- life.delete-asleep(-after-move): no wake, Force delete offer, destroyed; life.destroy now a
normal delete of an awake workspace; D-2 passes on a cross-team destroy or a kept
"couldn't confirm" row
- vercel-check.ts: confirms each run sandbox is 404 on Vercel and records it in results.json
- catalog rows and import mapping for the new steps
terminal.send text+Enter to a daemon-backed shell always waited the 500 ms agent paste
settle: the daemon's shell-foreground answer is lifecycle ownership, which is only proven
after a recovery or full-screen exit, never for a fresh or plain-command shell. On Linux
the idle-prompt claim now also accepts the shell's own /proc stat (process group is the
terminal foreground group, i.e. ps '+'), scoped to the target PTY; other hosts unchanged.
The acceptance wake split uses one persistent paired connection per wake (the desktop's
transport) by default; transport=cli keeps the per-call socket the CLI dials.
- auth.signed-out-create (D-1/D-4), proj.cloud-name (D-3), life.delete-unconfirmed (D-2,
team switch -> not_found), life.delete-after-oob-destroy; life.destroy now requires destroyed
and records the asleep-delete refusal
- starts signed out (dev auth) with no sign-in-then-relaunch workaround; mock keychain so a
fresh dev app identity does not block on a macOS Keychain prompt
- cloud vs local rows disambiguated by badge (Move to this computer reuses the name)
- upload/download helpers for staging and collecting a run on a paired Orca environment