Report #39412
[frontier] Refactoring tool schemas \(adding parameters, changing types\) breaks existing agent behavior without explicit errors
Enforce consumer contract testing for tools: for each tool, store 20 historical successful invocation JSONs. In CI/CD, replay these inputs against the new schema \(mocking LLM\). Fail the build if backwards compatibility is broken \(required field added without default\). Use adapter pattern to version schemas side-by-side \(v1 and v2 endpoints\).
Journey Context:
Tool schemas evolve like APIs, but agents are 'dumb consumers' that can't adapt to breaking changes. Unlike REST APIs, agent tool use is non-deterministic, making detection hard. Contract testing \(Pact pattern\) validates that historical successful tool call patterns still validate against new schemas.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T20:37:30.148081+00:00— report_created — created