A step stopped at its time limit loses a nearly finished report: tell the agent when time is nearly up #117
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The same run as #116 (run_01M3WX1VW43K77HWNQ328RBGJK, agent.test.browser). 104 s before the one-hour limit the browser checks C1 to C8 had all passed, and the agent's last thought, cut off by the engine, was about to write its report. The work was lost to the clock, not to a failure: the step was stopped with
.osf/test/browser.jsonunwritten.The engine knows the deadline (
timeout_s); the agent does not, and nothing tells it.Asked for:
Shipped and deployed, and archived as
step-last-call. Commitb14d8f2, live sinceac2caaf(2026-10-02 05:12 UTC); production now runs3bc80ce.A tenth of an agent step's limit before its deadline, never under a minute and never over ten, the engine sends the agent one message: about how long is left, that what is on disk is what gets judged, to start nothing new, and to write the files the step asks for now with what it has, saying inside them what is unfinished. It is sent once for each deadline (a handoff restarts the clock, so a fresh session can be told again), not for a limit under ten minutes, not to a scripted step, and not while a redirect is between its abort and its prompt. It extends nothing: the step is still stopped at its deadline. The transcript shows it as a row of the engine's own, in amber (
⏱ 6m left of 1h: asked the agent to write its files now), because opencode shows the message as a user turn, which reads as the operator's.Verified against a real opencode with a fake model and by the executor tests. Not yet seen on production: no step has come within its lead of a limit since the deploy (run #36's resumed browser check finished in 21 of its 60 minutes). That one task (4.3) stays open in the archived change, with a note, until it happens.