How Multi-Agent Tracing Works
Orchestrator
An orchestrator is an agent that delegates work to other agents. DecimalAI infers orchestrator status from two signals:- The manifest contains
component_type="subagent"components - Other traces reference this agent’s traces via
parent_trace_id
Sub-agent
A sub-agent is an agent that receives delegated work. Identified by a trace havingparent_trace_id set, pointing to the orchestrator’s trace.
Delegation vs Handoff
These are two distinct multi-agent patterns:| Delegation | Handoff | |
|---|---|---|
| Control flow | Orchestrator calls sub-agent, gets result back, stays in control | Agent A transfers control to Agent B — A may not regain control |
| Relationship | Parent → child (hierarchical) | Peer → peer (lateral) |
| Parent trace | Sub-agent trace has parent_trace_id pointing to orchestrator | Both traces share session_id but neither is “parent” |
| Frameworks | LangGraph subgraphs, Google ADK | OpenAI Swarm, Agents SDK handoffs |
Orchestrator vs Parent Trace: These operate at different levels. An orchestrator is an agent (a role). A parent trace is a specific trace record that child traces link back to (a data relationship). An orchestrator agent produces many parent traces over time.
Status Propagation
When a sub-agent trace fails:| Scenario | Parent Status |
|---|---|
| Some children errored, some succeeded | degraded (partial failure) |
| All children errored | error (escalated) |
| A failing child retries and succeeds | Auto-recovery back to success |
Drift
Drift occurs when a sub-agent’s actual configuration diverges from what the orchestrator’s manifest expects. For example, the orchestrator’s manifest referencessearch-agent v1.0 but recent traces show search-agent using different tools. The Sub-Agent Health Dashboard flags this.
Next
Skills & Data Pipeline
How DecimalAI turns evaluated, compatible traces into training data.
Multi-Agent Guide
Hands-on guide to instrumenting multi-agent systems.