Files
orca/docs/reference/omp-runtime-session-provenance.md
T
Neil 9841f4f790 fix(omp): keep child sessions from reporting into the parent pane (#20611)
* fix(omp): fence pane status to the root session manager

* test(omp): preserve root preview and recovery through child hooks

* test(omp): exercise status ownership through actual runtime runner

* fix(omp): honor runtime subagent provenance when available

* test(omp): avoid writes to the read-only hook status view

* fix(omp): preserve child status ownership provenance

* fix(omp): normalize child transcript paths across platforms

* fix(omp): clean status handler rebase

* fix(omp): keep prefill inside session ownership fence
2026-09-19 00:29:55 -07:00

1.3 KiB

OMP runtime session provenance

OMP computes whether a runtime session is a task child, but the released ExtensionContext does not expose that value. The status extension therefore uses the session manager's parent header and nested task transcript path only when a root owner is already known. A nested transcript with no known owner remains eligible because it may have been resumed directly as the pane's main session.

The remaining child-first case is inherently ambiguous to Orca: task children and resumed child transcripts have the same public session-manager shape. A complete child-first fence requires OMP to expose its computed agentKind through ExtensionRunner.createContext; until then the conservative fallback avoids silencing valid resumed sessions.

Older runtimes retain the manager-identity guard. That guard assumes the main session reaches Orca's callback before any child. An earlier user extension can initialize a child during session_start and violate that assumption. Keep the ownership merge assessment conditional until the runtime API is available and the combined flow is validated. Neither callback timeouts, UI presence, nor transcript paths establish runtime ownership.

The guard remains scoped to one pane and launch token. It does not define how several independent SDK/ACP roots sharing one process and pane should be attributed.