Design Journal · August 16, 2026 · ConnectOnion 1.7.0a14
An Approval Is Not Execution Time
Why a manual Codex approval pauses the active-work budget instead of making a careful review look like a provider timeout.
A Work Room acceptance run paused at its first harmless workspace inspection. The operator reviewed the command and allowed it. The native Codex turn then timed out before the requested coding work could proceed—not because Codex had consumed the budget, but because the review had.
The wrong clock
A manual approval is intentionally a human pause. Counting it as provider execution punishes the person for reading the action they were asked to approve. On a multi-step coding task, that can leave the next safe operation with no time at all.
Decision
Native Codex turns now measure two things separately: active provider work and operator review. The turn keeps a finite active-work budget, but the measured duration of a nested approval callback pauses that budget. A genuinely hung app-server still times out, and Stop still terminates the provider process tree.
For hosted co ai Codex work, the default active budget is thirty minutes. It is long enough for a real coding sequence—inspect, edit, run, test, review, report—without becoming an unbounded background job.
What we did not do
We did not auto-approve the action, widen the sandbox, add ACP compatibility, or turn the chat transcript into a provider terminal. OIP remains the browser boundary; the Work Room remains the place to see semantic current activity, approvals, and explicit detail.
How it is tested
The regression uses a deterministic clock: it simulates one hundred seconds of review without making the test sleep, then proves the provider still receives its full post-approval active budget. Hosted-routing and interruption coverage continue to verify the authority and cancellation boundaries around it.
See A Tool Transaction Is Not a Work Room, the Codex adapter reference, and the co ai guide.
ConnectOnion