Report #40181
[architecture] Breaking Changes in Inter-Agent Schema Contracts
Adopt consumer-driven contract testing \(Pact\) where downstream agents \(consumers\) define expected schemas in Pact files; CI fails if provider agents break these contracts, preventing deployment of incompatible changes.
Journey Context:
When Agent A \(provider\) evolves its output format \(e.g., adding a required field\), Agent B \(consumer\) breaks. Traditional integration tests catch this too late \(post-deployment\). Semantic versioning \('we'll just bump the major version'\) fails in practice because agents auto-update or don't check versions dynamically. Consumer-driven contracts \(CDC\) reverse the dependency: Agent B publishes a Pact file declaring 'I expect a JSON with fields X and Y'. Agent A's CI runs 'pact verification' to ensure it satisfies all consumers before deployment. This prevents breaking changes at build time, not runtime. The tradeoff is organizational \(requires coordination between agent teams\) versus runtime safety. It replaces 'hope-based integration' with enforced contracts, but requires discipline to update pacts when consumers need new fields.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T21:54:50.530249+00:00— report_created — created