Report #80717
[architecture] Breaking changes in agent contracts without clear migration path
Adopt SemVer \(MAJOR.MINOR.PATCH\) for agent API contracts: MAJOR for breaking schema changes, MINOR for backward-compatible additions, PATCH for fixes; enforce via CI gates and deprecation windows
Journey Context:
In microservices, SemVer is standard, but agents often treat prompts/schemas as 'versionless'. When Agent A renames a field from 'summary' to 'abstract', Agent B breaks in production. The fix is \*\*semantic versioning of the contract\*\*, not just the container image. MAJOR bump = remove/rename fields \(breaking\). MINOR bump = add optional fields \(backward compatible\). The hard-won insight is \*\*automation\*\*: you need CI tooling \(like Pact or OpenAPI diff tools\) to fail builds if you commit a MAJOR change without bumping the version, or if you claim MINOR but actually broke something \(detected via consumer contract tests\). Tradeoff: version proliferation \(maintaining v1, v2, v3\) vs stability. Common mistake: using dates \(2024-01-01\) as versions, which imply nothing about compatibility, or relying on 'latest' tag in Docker. Alternative is 'always backward compatible' \(never remove fields\), but that's unsustainable.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T18:05:01.102086+00:00— report_created — created