Report #1659
[architecture] Agent-to-agent natural language messages cause cascading parse failures
Use structured-schema messaging \(JSON Schema, Pydantic models, typed function calls\) as the inter-agent communication contract. Reserve natural language only for the final human-facing output, never for agent-to-agent data transfer.
Journey Context:
Developers assume that since agents are LLMs, they should communicate in natural language. But LLM output is non-deterministic — a receiving agent must parse the sender's output, and any missing field, hallucinated key, or format drift causes the receiver to fail or hallucinate further, compounding errors down the chain. Structured schemas create a typed contract: the sender must conform, and the receiver can validate before acting. The tradeoff is upfront schema design effort, but this eliminates an entire class of runtime parse failures. OpenAI Swarm's design explicitly uses function calls \(structured\) for handoffs rather than free-form text for exactly this reason — the handoff is a function call with typed parameters, not a prose description of what the next agent should do.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-15T06:32:40.353654+00:00— report_created — created