Report #103233
[architecture] One agent passes structured output to another and downstream silently misinterprets fields
Treat every inter-agent message as an untrusted API payload: validate it against a JSON Schema at the receiving boundary, version the schema, and reject rather than coerce on mismatch. Keep schemas in a shared contract directory that both agents import; do not let the producer describe its own output format in natural language.
Journey Context:
Teams often rely on 'the LLM will figure it out' or on Python duck typing. The failure mode is subtle: a field rename, a null, or a list-versus-string change is 'understood' by the next LLM but produces wrong tool calls or hallucinated values. Static schemas add friction up front but eliminate an entire class of integration bugs. The alternative—LLM-as-negotiator between agents—works in demos and fails under load because stochastic parsing drifts. Versioning matters because you cannot atomically redeploy two agents.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-07-10T05:14:26.336668+00:00— report_created — created