SIP-009 — Version-Controlled Interface Contracts
Statement
Each Interface Contract SHALL be version-controlled and SHALL govern the exchange of structured information across applicable attachment points.
Rationale
An Interface Contract establishes the agreed conditions under which architectural elements exchange structured information. Those conditions may include the information Structure, applicable Semantics, interaction behavior, constraints, and responsibilities of the participating elements.
Version control allows an exchange to identify the applicable Interface Contract and supports compatibility analysis, controlled evolution, reproducible processing, and Traceability. Without version control, an Interface may change without an explicit record of the conditions governing an earlier exchange.
Evaluation Criteria
The Submission satisfies this requirement when each Interface Contract:
-
Has an identifiable version
-
Identifies the participating architectural elements or Roles
-
Identifies the applicable attachment points
-
Defines or references the structured information governed by the contract
-
Defines the obligations and constraints governing the exchange
-
Identifies applicable Structures, Semantics, and interaction behavior
-
Supports identification of compatibility with other contract versions
-
Supports Traceability to the version applicable to a particular exchange
-
Can evolve without silently replacing or altering an earlier version
Referenced By
Notes for Editors
An Interface Contract is an architectural and Governance construct. It does not require a particular Interface Definition Language, protocol, serialization format, or implementation technology.
SIP-020 — Governance Constraints and Interface Contracts requires the Reference Architecture to distinguish Interface Contracts from Governance constraints.
© 2026 Dido Solutions, Inc. and Jackrabbit Consulting, Inc.