Cross-Repo Pin Policy¶
This policy defines how agent-skills tracks the pinned registry ref used in CI (REGISTRY_REF).
Goal¶
Keep cross-repo CI deterministic without allowing compatibility drift to grow silently.
Operational Rules¶
REGISTRY_REFmust always point to a valid commit inagent-skill-registry.- Pin drift from
origin/mainis capped byMAX_PIN_DRIFT_COMMITSin.github/workflows/smoke.yml. - Any pin update must include compatibility validation in
agent-skillsCI. - Pin updates are intentional changes, not incidental byproducts.
When to Update the Pin¶
Update REGISTRY_REF when one of these occurs:
- Registry contracts/catalog changed in a way consumed by runtime checks.
- Promotion flow or governance tooling changed in registry CI.
- Runtime canary detects incompatibility with latest registry baseline.
Update Procedure¶
From agent-skills root:
git -C ..\agent-skill-registry fetch origin
git -C ..\agent-skill-registry checkout main
git -C ..\agent-skill-registry pull --ff-only
$ref = git -C ..\agent-skill-registry rev-parse --short HEAD
- Replace
REGISTRY_REFin.github/workflows/smoke.ymlwith$ref. - Run CI-equivalent checks locally if possible:
python tooling/verify_smoke_capabilities.py --report-file artifacts/smoke_report.local.json
python tooling/test_capability_contracts.py
python cli/main.py openapi verify-bindings --all
- Open PR with a clear note: old pin -> new pin, plus verification evidence.
Rollback¶
If compatibility breaks after pin update:
- Revert
REGISTRY_REFto last known-good commit. - Record failing check and root cause in PR/issue.
- Reattempt pin update only after fix lands in runtime or registry.