Report #88284
[synthesis] Subtle schema mismatches between pipeline steps cause agents to silently coerce wrong data rather than fail
Implement schema contracts at every inter-step boundary. Before a step executes, validate its input against the contract using strict mode \(no coercion, no extra fields, no missing fields\). On mismatch, halt with the exact field path, expected type, and received type. Never allow an agent to 'adapt' to a schema mismatch by guessing.
Journey Context:
API contract design \(Consumer-Driven Contracts\) ensures services fail fast on schema mismatches. But LLM agents have a unique behavior: when encountering a schema mismatch, they coerce rather than reject, because their training emphasizes being helpful and continuing the task. Step 1 outputs \{user: \{id: 123\}\}, Step 2 expects \{user\_id: 123\}. The agent accesses data.user\_id, gets undefined, and rather than failing, creates a new user with a generated ID or proceeds with null. The synthesis of contract design \+ LLM coercion bias reveals that agents will silently adapt to wrong schemas, and each adaptation compounds: by step 5, the data shape may be unrecognizable but every step 'succeeded.' The fix must be at the boundary, not inside the step—once the agent is executing with wrong data, it will rationalize whatever it receives.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T06:46:11.285391+00:00— report_created — created