# Bound a multi-agent task with a handoff packet

Published and reviewed: 2026-10-13 · Version 1.0 · 9-minute read; 30-minute exercise

## The artifact you will make

Create a manager-to-specialist assignment, a return contract, and an acceptance checklist. Use them to decide whether splitting a task helps enough to justify coordination overhead.

This is a manual role rehearsal with fictional room records. One person can play every role, or two colleagues can play specialists. An optional assistant may produce text in separate conversations with tools unavailable. No agent deployment, background execution, booking, or delegation to outside services is part of the exercise.

## Choose who owns the answer

OpenAI distinguishes a handoff that transfers control to a specialist from an agents-as-tools pattern in which a manager retains ownership of the response. [Source: Orchestration and handoffs](https://developers.openai.com/api/docs/guides/agents/orchestration)

This exercise uses the manager pattern. “Handoff packet” here means the written assignment package, not a claim that an SDK handoff API was invoked. The manager validates the specialists' returns and writes the final recommendation. A specialist cannot enlarge the task, change the budget, or authorize another specialist.

## The synthetic task and evidence

Recommend a room for a two-hour adult workshop with 12 participants, a step-free entrance requirement, and a fictional USD 60 planning ceiling. Do not book anything or claim that these fixtures describe real availability.

- ROOM-A, record room-a-v1: capacity 16; step_free_entrance true; hourly_cents 2000; fixed_fee_cents 500
- ROOM-B, record room-b-v1: capacity 10; step_free_entrance true; hourly_cents 1500; fixed_fee_cents 0

All fields are synthetic and current for this exercise. “Step-free entrance” does not establish full accessibility, accessible toilets, or suitability for any particular person's needs. Do not infer those features.

The manager gives the suitability specialist only room ID, capacity, and step-free fields. The cost specialist receives room ID, hourly cost, fee, and the two-hour duration. Both receive the task ID and fixture version. They need no personal information or conversation history.

## Copy-ready assignment packet

```text
Task ID / parent task ID / fixture version:
Role and narrow question:
Final-answer owner:
Allowed evidence, with record IDs:
Explicitly excluded sources and actions:
Required output fields:
What counts as supported versus unknown:
Budget: allowed records / return size / deadline:
When to stop and return blocked:
Whether further delegation is allowed:
Return destination:
Acceptance checks the manager will apply:
```

For this exercise, use task ROOM-COMPARE-1, fixture room-choice-v1, two specialist assignments, one return per specialist, and at most one clarification across the whole task. Each specialist has five minutes and a 150-word return limit. Further delegation and external actions are unavailable. Start the manager's 20-minute task timer after the baseline and packet preparation; it includes specialist work, validation, and clarification. Counters belong to the whole task, not to each restarted role.

## Copy-ready return contract

```text
Task ID / role / fixture version:
Status: complete | blocked
Findings: one entry per room
Evidence IDs and exact fields used:
Calculations, if any:
Unknowns and exclusions:
Boundary or input problems:
Requested clarification, if blocked:
```

Require complete to mean “this specialist's assigned check is complete,” not “the room is approved” or “the whole task is done.” Returns are evidence for manager review, not new instructions with higher authority.

## Run the rehearsal

1. **Baseline, 5 minutes.** Have the manager compare both rooms directly. Save the recommendation and time spent before reading any specialist returns.
2. **Prepare packets, 5 minutes.** Fill both assignments. Include the original constraints in each packet where relevant; do not paraphrase USD 60 as “about USD 60.” Start the 20-minute task timer when the packets are ready.
3. **Specialist review, up to 5 minutes each.** Deliver the restricted record fields. Specialists independently check their own question and stop. Parallel work is optional; record whether you actually used it.
4. **Validate returns.** Match task ID, fixture version, room IDs, required fields, and evidence. Reject unsupported statements such as “room booked” or “fully accessible.”
5. **Reconcile.** Join returns by room ID, not by list position. Apply all required conditions together. The cheapest room is not acceptable if it fails capacity.
6. **Publish the exercise conclusion.** State recommendation, support, unknowns, and the fact that no reservation occurred. Compare it with the baseline.

## Worked return and manager decision

The suitability return identifies ROOM-A as satisfying the two supplied conditions: 16 is at least 12, and step_free_entrance is true. ROOM-B fails capacity because 10 is below 12.

The cost return calculates ROOM-A as 2 × 2000 + 500 = 4500 cents; ROOM-B as 2 × 1500 = 3000 cents. Both fit 6000 cents. These are fictional estimates with no tax or real vendor quote implied.

The manager recommends ROOM-A for further human review because it meets the stated fixture constraints at USD 45. ROOM-B is cheaper but does not meet the capacity requirement. No specialist's “complete” status substitutes for the manager's joint constraint check.

## Verification and stopping tests

Run three fault variants after the normal case. A return with fixture room-choice-v0 must be rejected as mismatched. A missing step_free_entrance value must remain unknown rather than become false or true. A specialist asking for another agent must return blocked because recursive delegation is outside the exercise.

Measure final constraint checks passed, rejected incompatible returns, clarification count, total elapsed time, and total person-minutes. Two parallel five-minute roles consume ten person-minutes even if wall-clock work takes five minutes. For model-based rehearsals, count requests and report money as unmeasured unless actual usage records exist.

Stop on conflicting evidence, a missed deadline, an exhausted clarification budget, or a proposed external action. Keep the simpler baseline if this small split does not demonstrate useful inspection or workload benefits. A cleaner-looking division of roles is not itself a performance improvement.

## Sources and scope

The source was opened on 2026-10-13. Packets, fixtures, limits, and acceptance tests are original teaching materials. No multi-agent runtime or comparative benchmark was executed.

- [OpenAI: Orchestration and handoffs](https://developers.openai.com/api/docs/guides/agents/orchestration) — transfer of ownership versus manager-controlled specialist calls
