Status: Implementation IMPLEMENTED × Exposure PUBLIC PREVIEW (Driver phase D7). Code:
cmd/allternit-api/src/computer_parallel.rs. Contract: run_parallel and the best_of / computers / api_options fields of run_subtask in allternit.computer.v2 (see Computer toolset). Subtasks run on computers that carry the Allternit Driver: this device today. Cloud computers run subtasks once the guest driver image ships (phase D1b); until then a subtask on a cloud computer comes back failed with error: "unimplemented", and Best-of-N, which runs only on cloud computers, returns no winner.Overview
run_subtask runs one bounded subtask on one computer. Two fan-outs build on it:
run_parallel: independent subtasks, one per computer, run at the same time. Each result comes back in input order.- Best-of-N (
run_subtaskwithbest_of: N): for a high-value subtask, N rollouts of the same subtask run at once on N sandbox computers. A judge picks one by the rollouts’ step narratives. This is Agent S3’s Behavior Best-of-N design (Apache-2.0).
computer_v2 function tool, so every model family gets them the same way.
run_parallel
- Each subtask takes
run_subtask’s fields pluscomputer, the computer id it runs on. Withoutcomputerit runs on the computer the call was made on. - Each subtask goes through its own computer’s gates: target, control lease, policy, a durable audit row, then the subtask loop. Its steps then go through lease, policy and audit as usual.
- One input owner per computer. A computer listed twice is refused before anything runs (
409 computer_conflict;this-deviceand its own id count as one). A computer that another subtask loop is already driving, from this call or another, comes backrefusedwitherror: "computer_busy". On a cloud computer, a lease held by another agent run also refuses. - Approval: one approval covers the whole call when any subtask targets a non-sandbox computer (this device). Subtasks on cloud computers need none.
status is done (every subtask done), partial (some) or failed (none). Each result is a run_subtask result plus subtask and computer, or skipped / refused / failed with a reason.
Best-of-N
- Rollouts. One rollout per listed computer, all at once (
best_of2–5, at least that many distinct ids incomputers). Every computer must be a sandbox/cloud computer. Listing this device, or any computer that isn’t a sandbox, refuses the call with409 sandbox_required. Rollouts never run as copies on the person’s own machine. - Narratives. Each rollout’s step trace becomes a narrative: every step’s chosen option and what happened after it (
ran, the screen changed,ran, the screen didn't change,failed: …), whether the success checks held, and what the final screen shows. - Shortlist. The candidates are the rollouts whose success checks held. If none held, the candidates are the rollouts that ended
done. If exactly one rollout is a candidate, it wins with no judge call. - Judge. With several candidates, one decision of kind
judgeover their narratives (POST /v1/decisions, optionsr1…rN) picks one. The fast tiers answer first. When they abstain, the oracle (the planner-class tier) gets one try, but only while the call is undermax_cost_usd. If nobody picks, the call returnsescalatedwith every narrative so the planner decides.
success for the pick), the same as every subtask decision.
Budgets
Subtask loops run on the fast decision tiers only, so their spend is normally 0. The cost cap matters when a configured fast tier is metered and for the judge’s oracle fallback.
API over GUI
Both fan-outs takerun_subtask’s api_options. When an MCP tool or API action can do a subtask’s goal, it is offered ahead of the GUI steps, and a pick returns status: "use_api" for the planner to make that call. See How computer use decides.