Skip to content

RFC-014: Contract Governor Shared Infrastructure — 6. Version Management

AIGP SpecificationRFC-014: Contract Governor Shared Infrastructure › 6. Version Management

← 5. Stipulation Hierarchy · Section index · 7. Runtime Integration →

6. Version Management

All four amigos MUST run the same contract-governor version. Version drift is a deployment blocker.

6.1 Version Pinning

Each amigo pins the exact version in its requirements:

identity-service/docker/requirements.txt
contract-governor==1.3.144
# analytics-service/docker/requirements.txt
contract-governor==1.3.144
# governance-server/docker/requirements.txt
contract-governor==1.3.144
# runbook-service/docker/requirements.txt
contract-governor==1.3.144

6.2 Version Alignment Check

At startup, each amigo reports its contract-governor version. governance-server tracks the version matrix:

import contract_governor
version = contract_governor.__version__ # "2.0.1"
Amigo Expected Actual Status
identity-service 1.3.144 1.3.144 ALIGNED
analytics-service 1.3.144 1.3.144 ALIGNED
governance-server 1.3.144 1.3.144 ALIGNED
runbook-service 1.3.144 1.3.144 ALIGNED

6.3 Upgrade Protocol

  1. Bump version in contract-governor/pyproject.toml
  2. Build wheel: python -m build
  3. Update ALL four amigo requirement files to the new version
  4. Rebuild ALL four Docker images
  5. Deploy ALL four amigos in the same release window

Partial upgrades are forbidden. If identity-service runs 1.3.145 and analytics-service runs 1.3.144, the deployment MUST be rolled back.


← 5. Stipulation Hierarchy · Section index · 7. Runtime Integration →