This lesson is an independently written synthesis of public sources, not the MEGA course body. The support-team topology, task envelopes, and pseudocode are original examples. They are illustrative, API-neutral, and untested against a live service or A2A implementation.
Learning goals
- Distinguish a parent-controlled subagent from an independently operated agent.
- Explain what A2A Agent Cards contribute to discovery.
- Define delegation contracts with evidence, deadlines, and ownership.
- Orchestrate parallel work while retaining one accountable final decision.
Cedar Cycle now handles tickets that need both account investigation and product troubleshooting. Adding more agents sounds attractive, but the useful question is specific: can independent investigations produce better evidence within the deadline? Extra conversations create coordination work. Begin with a dependency graph, not a desired team size.
Choose the collaboration shape
Angie Jones's coordination-patterns article distinguishes a single actor, a main agent directing subagents, and independently acting agents collaborating. The distinction identifies who owns task flow and synthesis. It is more useful than assuming every system with several model calls has the same architecture.
For Cedar Cycle, a coordinator owns the final draft. It can assign an account investigator to read subscription facts and a product investigator to read troubleshooting material. Neither specialist saves the final draft. Their outputs are evidence packets that the coordinator checks and combines.
An external warranty agent is different. Another organization operates it, defines its supported work, and controls its tools. Our coordinator can request a warranty assessment but cannot assume the remote agent shares its instructions, memory, or deployment lifecycle. This boundary requires an explicit exchange contract.
Use a normal function when the task is fully specified and deterministic. Calculating the number of days since purchase does not need its own agent. A specialist becomes useful when it must choose among observations, resolve domain ambiguity, or maintain an independent context.
Discovery describes a candidate capability
The A2A discovery documentation describes Agent Cards and discovery through well-known locations, registries, or direct configuration. A card tells a client what an agent offers and how to interact with it. Discovery is the start of a trust decision, not its conclusion.
For our fictional warranty service, the coordinator needs to know the agent's supported product categories, input and output formats, endpoint, and authentication requirements. A development note might summarize these facts, but that summary is not necessarily a valid Agent Card. Use the actual schema and version required by the implementation you deploy.
Treat claims in a card as claims to verify. A service calling itself “official warranty expert” does not establish its operator or data handling. Cedar Cycle should select a configured, approved service identity and check it against the discovered endpoint. Do not send customer details to an arbitrary agent simply because its description matches the task.
The term “skill” also needs care. A capability listed in an A2A card is not automatically a local Agent Skills folder containing SKILL.md. The formats serve different integration roles even when their human descriptions sound similar.
Delegation is a contract for a bounded result
A useful task packet includes the question, authorized scope, supplied evidence, allowed operations, expected artifact, deadline, and stopping conditions. It should also say which decisions remain with the coordinator. That makes the specialist's work assessable without replaying every internal step.
Here is our original, API-neutral envelope:
task_id: T31-account
parent_case: C31
question: Explain current subscription status and relevant dates.
inputs: ticket C31, authorized account reference
allowed: scoped account reads
forbidden: refunds, message sending, final-draft writes
deliverable: facts[], evidence_ids[], unknowns[], observed_at
deadline: 20 seconds
on_missing_access: return blocked with missing scope
The specialist should return facts linked to observations, not just a recommendation. “The plan ends tomorrow, evidence A31” is useful. “Tell the customer everything is fine” hides the information needed to check that recommendation.
Keep private context small. The troubleshooting specialist does not need billing history if the issue is how to reset a bicycle lock. The external warranty agent may need a product code and purchase date rather than a name and full ticket. Scope both inputs and tool permissions to the actual subtask.
Orchestration manages dependencies and failures
Run tasks in parallel only when their required inputs are available and their outputs do not race. Account status and a product manual lookup may be independent. Choosing a cancellation policy depends on the effective cancellation date, so that step should wait for the account result.
Give shared writes a single owner. If two agents both edit the final reply, the last write can discard the other's evidence. Cedar Cycle assigns the draft to the coordinator and makes specialist outputs separate immutable packets. This reduces merge decisions to a visible synthesis step.
The A2A task-lifecycle documentation distinguishes immediate messages from stateful tasks that can report progress, request input, and reach terminal states. Build the coordinator around actual status, rather than assuming a request acknowledgment means completion.
A timeout does not prove remote work stopped. Cancel where supported, retain the task identifier, and ignore late output once the final decision has been made unless an explicit revision process accepts it. For any remote side effect, establish duplicate-request behavior before retrying. Our first version avoids remote writes entirely.
Worked example
Ticket C31 says, “My plan ends tomorrow and my replacement lock will not pair.” The coordinator creates two read-only tasks. The account specialist confirms the end date. The product specialist finds the pairing guide, but an external warranty check needs a serial number that the ticket lacks.
coordinator receives C31
parallel:
account task -> completed: end date confirmed, evidence A31
product task -> completed: pairing guide, evidence G8
warranty task -> input-required: serial number missing
coordinator validates A31 and G8
coordinator drafts supported pairing steps
coordinator labels warranty eligibility as unresolved
coordinator saves one draft for staff review
The expected draft explains that the plan continues through tomorrow, offers the supported pairing steps, and asks for the serial number if warranty review is needed. It does not say the replacement is approved. Two completed tasks do not erase the unresolved third question.
Suppose both specialists mention the plan end date but disagree. The coordinator should inspect their sources and timestamps. A specialist's confident summary is not stronger than a current account observation. If the conflict cannot be resolved within the deadline, preserve it in the staff note instead of taking a majority vote.
Practice
Draw a task graph for C31 and write two specialist packets plus a coordinator result. Simulate one completed task, one timeout, and a late response. Keep every artifact in a separate local file or paper record.
Acceptance criteria: each subtask has one owner, one deliverable, and a deadline; only the coordinator owns the final draft; the timeout is visible; late data does not silently mutate a saved draft; unsupported warranty eligibility remains unresolved; inputs contain only the data each specialist needs.
A good solution parallelizes the independent reads and keeps policy selection dependent on account evidence. It gives the coordinator enough source information to detect conflicting claims. Its final artifact distinguishes what is known, what can be suggested, and what requires another interaction. A larger roster earns no credit by itself.
Check your understanding
- What does an Agent Card prove? Answer: it describes advertised capabilities and interaction details; operator trust and authorization need separate verification.
- Why give the final draft one owner? Answer: it prevents competing writes and makes synthesis accountable.
- Does a timeout mean the remote agent stopped? Answer: no; task status and cancellation behavior must be checked explicitly.
Sources
- Angie Jones: Agents, Subagents, and Multi Agents — collaboration shapes and ownership.
- A2A: Agent Discovery — cards and discovery strategies.
- A2A: Life of a Task — messages, tasks, and lifecycle states.