One task, three strategies: single, supervisor, debate

The same briefing, wired three ways. Watch the LLM calls, the total context tokens, and the quality change. More agents is not automatically better, and more rounds is not more quality.

Parallelism is sequential in this demo. Workers run one after another in the offline default, so we report LLM-call count and token isolation (each worker sees only its small brief), never a fabricated wall-clock speedup. With real concurrency the independent workers run in one round.
The task: Prepare a customer briefing on refunds, the earbuds warranty, and shipping. Three independent facts to gather, then one synthesis. The right shape depends on how broad the work is.
Strategy
LLM calls
4
the cost lever
Context tokens
300
total across the run
Quality
3/3
facts correct
What the run looks like

The economics, side by side

Cost-per-success follows the tokens. Pay for breadth only when the task is broad.

Strategy LLM calls Tokens Quality

The single agent has the fewest calls but ONE growing context (tokens climb every step). The supervisor adds calls (decompose plus three workers plus synthesize) yet each worker context is ISOLATED and small, and the independent workers parallelize into one round with real concurrency. Debate is the most expensive AND non-monotonic: round 3 made it worse.

Handoff as a tool call: transfer control plus the trace

Sometimes the move is not to fan out but to hand off to a specialist, carrying the live trace. A clean handoff works; two classic failure modes do not.

clean handoff
handoff(to='billing-specialist')
carrying 3/3 trace, role=clear
3/3 entries carried, role clear
donebilling-specialist refunded order ORD-3300 using the carried trace.
truncation
handoff(to='billing-specialist')
carrying 1/3 trace, role=clear
trace cut to the last entry; the order id was earlier
failedbilling-specialist cannot act: the order id was truncated out of the carried trace.
role confusion
handoff(to='billing-specialist')
carrying 3/3 trace, role=UNCLEAR
full trace, but the brief never said who owns it
stalledbilling-specialist and the lead both wait: the brief never said who owns the task.
This is categorically different from a router. RAG's complexity router and the text-vs-SQL router chose a path and stayed in one agent. A handoff transfers control and the live trace to a different agent. The trace is the payload, so truncating it or leaving ownership unstated breaks the handoff even when the specialist is perfectly capable.
How we keep it honest: the offline default runs workers sequentially, so we never print a wall-clock speedup. What multi-agent buys is reported as LLM-call count and token isolation: each worker sees only its own small brief, not one ever-growing transcript. With real concurrency the independent workers run in one round (depth 1), and a runaway supervisor is stopped by Part 8's circuit breaker, reused not rebuilt.

lead / single   workers / blackboard   debate / caution   quality up / done   regress / failed