You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Settled hosted executions become indeterminate after a diagnostics disconnect #2662
A hosted execution may already have settled as completed or failed, but runHostedExecution() performs another diagnostics request afterward.
If that request loses the Runtime Host connection, the settled outcome is replaced with indeterminate. Eval then skips verification and may retry an execution whose authoritative result was already known.
Post-settlement observation failure should not rewrite the execution outcome.
Expected behavior
Once Runtime Host reports a settled completed or failed projection, that outcome remains authoritative. Later connection or cleanup failures may be reported separately, but must not change the execution result.
Proposed direction
Simplify the handoff after a settled projection:
close the client connection;
release the owned ephemeral Runtime Host to the enclosing Trial environment;
let idleGraceMs=0 stop a Host with no retained runtime resources;
let the Trial finalizer reclaim a Host whose resources must remain available to the verifier.
This should allow removal of the post-settlement diagnostics request, environmentResourcesRemain, and the client-side dependency on runtime-resource labels.
Cancelled and indeterminate executions must still settle or terminate before control returns to the verifier.
Done when
A settled completed or failed projection remains authoritative if the connection becomes unavailable afterward.
A Host with no retained resources exits automatically.
Resources needed by a shared-environment verifier remain available until Trial finalization.
Cancelled and indeterminate paths are fully settled or terminated before returning.
The obsolete diagnostics and runtime-resource inspection path is removed.
I’m taking this issue. I’ll keep the change scoped to hosted-execution terminal monotonicity: once Runtime Host has produced a canonical completed or failed result, later abort, connection, or cleanup events must not rewrite it.
The implementation will remove the client’s post-settlement diagnostics and runtime-resource label inspection, preserve full settlement for cancelled and indeterminate paths, and add focused regression coverage. I do not plan to broaden this into a hosted-execution runner rewrite.
AI disclosure: OpenAI Codex is assisting with the implementation and drafted this comment; I reviewed the scope and wording before posting.
Activity
Astro-Han commentedon Aug 11, 2026
I’m taking this issue. I’ll keep the change scoped to hosted-execution terminal monotonicity: once Runtime Host has produced a canonical
completedorfailedresult, later abort, connection, or cleanup events must not rewrite it.The implementation will remove the client’s post-settlement diagnostics and runtime-resource label inspection, preserve full settlement for cancelled and indeterminate paths, and add focused regression coverage. I do not plan to broaden this into a hosted-execution runner rewrite.
AI disclosure: OpenAI Codex is assisting with the implementation and drafted this comment; I reviewed the scope and wording before posting.
fix(runtime-host): preserve settled hosted outcomes (#2671)