Report #86574
[frontier] How do I ensure that Agent A's output format \(which is Agent B's input\) doesn't break when I update Agent A's prompt or model?
Apply Pact \(consumer-driven contract testing\) where Agent B \(consumer\) defines the expected schema contract, and Agent A \(provider\) is verified against this contract in CI, ensuring backward compatibility of agent outputs.
Journey Context:
In multi-agent systems, 'agent contracts' are often implicit - Agent B expects Agent A to return a JSON with field 'status', but if Agent A's prompt changes, it might return 'state' instead. Integration tests catch this too late. Pact testing treats Agent B as a consumer that publishes a contract \(JSON Schema\) of what it needs from Agent A. In CI, Agent A is run against a Pact verifier that checks all published contracts pass. This prevents breaking changes in agent interfaces, similar to microservice API contracts.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T03:54:18.487361+00:00— report_created — created