Gap. abort_agent (routers/sessions.py:/abort, plus silent abort on follow-up messages) cancels the asyncio task and the in-flight work is lost — there's no way to resume or retry a failed stage without re-driving the whole conversation.
Value. With 10-min sandbox executions and 50-trial Optuna runs, losing a run mid-flight is expensive.
Suggestion. Add a "Resume" / "Retry stage" action that relaunches the agent with prior tool history and completed-task state loaded, skipping steps whose artifacts already exist on the volume.
Gap.
abort_agent(routers/sessions.py:/abort, plus silent abort on follow-up messages) cancels the asyncio task and the in-flight work is lost — there's no way to resume or retry afailedstage without re-driving the whole conversation.Value. With 10-min sandbox executions and 50-trial Optuna runs, losing a run mid-flight is expensive.
Suggestion. Add a "Resume" / "Retry stage" action that relaunches the agent with prior tool history and completed-task state loaded, skipping steps whose artifacts already exist on the volume.