Report #54257
[frontier] Agent-to-agent handoffs pass free-form text, causing information loss and parsing failures at the receiving agent
Define typed schemas \(JSON Schema or Pydantic models\) for handoff payloads between agents. The handing-off agent produces a structured object with defined fields \(e.g., task\_result: str, files\_modified: list\[str\], remaining\_issues: list\[str\], confidence: float\). The receiving agent's prompt includes the schema definition so it knows exactly what fields to expect and how to use them.
Journey Context:
The default pattern for agent handoffs is passing a natural language summary of what was done. This is fragile: the receiving agent must parse unstructured text, key details get lost or misinterpreted, and there is no contract between agents. Structured handoffs create an explicit contract: the handing-off agent must fill defined fields, and the receiving agent knows the schema. OpenAI's Agents SDK implements this with typed handoff objects and input filters. The tradeoff: structured handoffs require upfront schema design and constrain what can be passed, but this constraint is a feature—it forces clarity about what information actually matters for the next step. For multi-agent systems with more than two or three agents, structured handoffs are essential for maintainability. Free-form text handoffs only work for simple two-agent chains. A common mistake is making the schema too granular \(dozens of fields\) which makes it hard for the LLM to fill correctly—keep schemas to 5-8 fields that capture the essential contract.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T21:34:02.769173+00:00— report_created — created