Files
orca/docs/reference/omp-resume-transcript-locator.md
T
Neil ff934256ae fix(omp): retain recorded transcript paths when resuming (#20634)
Based on the resume-locator proposal in stablyai/orca#16276 by @CodeHourra. Retains UUID-based ownership and existing reattach behavior.
2026-09-19 02:02:50 -07:00

1.7 KiB

OMP recorded transcript resume

A sleeping OMP session can retain its transcript path from a hook without an explicit launchConfig.ompResumeFilePath. Both cold-restore startup and generic sleeping-session launch already forward the provider metadata to getAgentResumeArgv; that builder must keep the recorded path.

Resolution order is explicit launch path, recorded transcript path, then UUID. The existing shell-aware builder quotes the selected argument for the execution host. An older metadata record without a path retains UUID fallback. OMP provider claim keys and equality remain UUID-based, so a later hook adding the path does not create a second automatic-resume identity.

tests/tools/omp-resume-transcript-locator-smoke.mjs creates an actual OMP session outside its default session store. UUID lookup fails there; the absolute path and Orca's generated argv resume the original session. Run it with Bun and a read-only OMP checkout as argv[2], under ORCA_BACKGROUND_LAUNCH=1. It uses a disposable home and makes no model requests.

This bounded correction follows the resume-locator portion of PR #16276 by @CodeHourra. It does not adopt that PR's reattach injection or title changes. The reattach proposal treats missing snapshot/replay as permission to type a resume command, but daemon-pty-spawn-result.ts explicitly permits isReattach: true without a snapshot. That payload absence is not positive evidence of a newly created shell. The proposal also adds the path to OMP claim identity, which separates UUID-only metadata from a later path-enriched record for the same provider session. Those changes require separate evidence and are outside this patch's review scope.