Cross-Repo Compatibility Validation¶
Verify that a candidate-for-promotion repo is compatible with the current control-plane and its peer repos.
When to run¶
- Before promoting any repo from Stage 0 → Stage 1.
- Before promoting any repo from Stage 1 → Stage 2.
- After any major bump in
repo-contractrepo_versionorcontrol_plane_min/max.
Steps¶
- Read declared compatibility from the candidate's
repo-contract.json: repo_version,control_plane_min,control_plane_max.- Read the current control-plane version (this repo's tagged release).
- Range check.
- If
control_plane_current < control_plane_min→ fail (control plane too old). - If
control_plane_current > control_plane_max→ flag (untested combination); requires explicit approver to override. - Dependency compatibility. For each peer repo the candidate depends on (e.g., a skills repo depending on a global-rules version), verify each peer satisfies the candidate's expected version pin.
- Validate automation contract. Run the candidate's
automation.validateand ensure exit success. - Run security checklist. Scope: any code changed since last validation. Output appended to
security-attestation.md. - Run regression suite. All declared test suites must pass on a clean checkout of the candidate.
- Sign validation. Produce a validation artifact (
validations/<repo>@<version>-<date>.json) with results, signed by the orchestration agent.
Failure triage¶
| Failure | First-line action |
|---|---|
| Version range fail | Decide: bump control plane, or pin candidate to compatible range. |
| Peer dep mismatch | Coordinate version bump in peer or pin in candidate. |
| Automation fail | Fix automation script; re-run only after fix. |
| Security finding | Apply security-checklist remediation; re-attest. |
| Test fail | Treat as a release-blocker; fix or revert. |
Escalation¶
- Two consecutive validation failures on the same candidate → escalate to platform owner.
- Any security control regression → halt promotion immediately and escalate to security owner.