Skip to content

Commit c4a2587

Browse files
committed
feat(contracts): verify registry-fetch smoke check + update vendored $id to resolvable Pages URL
- Update vendored v0.1.0 common/evaluation-result schema $id values from the dead schemas.coding-autopilot.dev namespace to the resolvable Pages registry URL, matching the portfolio-wide convention from cas-contracts plan 32-01 - Recompute sha256 in provenance.json for the re-vendored files - Update verify_vendored_contract()'s two hardcoded $id equality checks to match the new value - Wire a new registry-smoke CI job invoking cas_evals.registry_check against the live Pages registry, isolated from the offline verify matrix so a transient network failure doesn't block unrelated merges - Regenerate releases/v0.2.0/manifest.json: its provenanceDigest is a sha256 of provenance.json, which changed as a direct consequence of the re-vendor above (Rule 3 auto-fix: this is a blocking downstream effect of the provenance.json edit required by this task, not new scope) - REQ-1.4.11
1 parent f6895af commit c4a2587

6 files changed

Lines changed: 29 additions & 7 deletions

File tree

.github/workflows/ci.yml

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,3 +26,25 @@ jobs:
2626
- run: python -m cas_evals.cli benchmarks/v0.2/golden.json
2727
- run: python -m cas_evals.cli benchmarks/v0.2/adversarial.json
2828
- run: python -m cas_evals.release --check
29+
30+
registry-smoke:
31+
# Separate from the offline `verify` matrix job because this job needs
32+
# network egress and should not block the offline unit-test matrix on
33+
# transient network failures. As of this job's introduction, the
34+
# cas-contracts PR from plan 32-01 (rewriting schema $id to this same
35+
# Pages registry URL) has not yet merged. This job checks paths that
36+
# already resolve today regardless of that PR's merge status -- the
37+
# v0.1/v1.0/v1.1 registry lines were published by prior phases' pages.yml
38+
# work. Merging 32-01 only changes the $id field text embedded inside
39+
# those already-resolving files, not which URLs exist.
40+
runs-on: ubuntu-latest
41+
timeout-minutes: 5
42+
permissions:
43+
contents: read
44+
steps:
45+
- uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0
46+
- uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6
47+
with:
48+
python-version: "3.11"
49+
- run: python -m pip install -e .
50+
- run: python -m cas_evals.registry_check

releases/v0.2.0/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"releaseVersion": "v0.2.0",
44
"releasedAt": "2026-06-11T12:00:00Z",
55
"sharedContract": {
6-
"provenanceDigest": "sha256:3d82b533691c779e9cf2361f0491a2d8873ef71e22f279c5cfdfc784515be9a5",
6+
"provenanceDigest": "sha256:d206cb050c42c80d10d37b418f6a6bbb9da08aba0ae76e77d3344108613829a2",
77
"release": "https://github.com/Coding-Autopilot-System/cas-contracts/releases/tag/v0.1.0",
88
"repository": "https://github.com/Coding-Autopilot-System/cas-contracts",
99
"tag": "v0.1.0"

src/cas_evals/contracts.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -61,9 +61,9 @@ def verify_vendored_contract() -> dict[str, Any]:
6161

6262
common = _load_json(VENDOR_DIR / "common.schema.json")
6363
evaluation = _load_json(VENDOR_DIR / "evaluation-result.schema.json")
64-
if common.get("$id") != "https://schemas.coding-autopilot.dev/v0.1/common.schema.json":
64+
if common.get("$id") != "https://coding-autopilot-system.github.io/cas-contracts/registry/v0.1/common.schema.json":
6565
raise ContractValidationError("unexpected common schema identity")
66-
if evaluation.get("$id") != "https://schemas.coding-autopilot.dev/v0.1/evaluation-result.schema.json":
66+
if evaluation.get("$id") != "https://coding-autopilot-system.github.io/cas-contracts/registry/v0.1/evaluation-result.schema.json":
6767
raise ContractValidationError("unexpected evaluation schema identity")
6868
if evaluation["allOf"][0].get("$ref") != "common.schema.json#/$defs/lifecycleMetadata":
6969
raise ContractValidationError("evaluation schema does not reference the vendored common schema")

vendor/cas-contracts/v0.1.0/common.schema.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://schemas.coding-autopilot.dev/v0.1/common.schema.json",
3+
"$id": "https://coding-autopilot-system.github.io/cas-contracts/registry/v0.1/common.schema.json",
44
"title": "CAS Common Definitions",
55
"$defs": {
66
"actor": {

vendor/cas-contracts/v0.1.0/evaluation-result.schema.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://json-schema.org/draft/2020-12/schema",
3-
"$id": "https://schemas.coding-autopilot.dev/v0.1/evaluation-result.schema.json",
3+
"$id": "https://coding-autopilot-system.github.io/cas-contracts/registry/v0.1/evaluation-result.schema.json",
44
"title": "EvaluationResult",
55
"type": "object",
66
"allOf": [

vendor/cas-contracts/v0.1.0/provenance.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@
55
"schemas": {
66
"common.schema.json": {
77
"blobSha": "0eec265131a301f924a5ca7fb61718f5bdb14012",
8-
"sha256": "c7ce72a6f5da8394e48f2421820588a8142546962e05152997bd1e6ced994928",
8+
"sha256": "6c86075df043ec924f6b7aa004c6a694916a6c3d7a822dda4235f1ee8368f92a",
99
"source": "https://raw.githubusercontent.com/Coding-Autopilot-System/cas-contracts/v0.1.0/schemas/v0.1/common.schema.json"
1010
},
1111
"evaluation-result.schema.json": {
1212
"blobSha": "719f46a6ee9024fa4462094c3d0c21d838c20f17",
13-
"sha256": "be6d3216c95cfa6d2ccda908ff089010765b1c70223a920bfe3cb70a0cd24df5",
13+
"sha256": "ecb222d70b389e2d47de5bb1344dd4e5ae1043c0e76f8608aa99f42e491ce384",
1414
"source": "https://raw.githubusercontent.com/Coding-Autopilot-System/cas-contracts/v0.1.0/schemas/v0.1/evaluation-result.schema.json"
1515
}
1616
}

0 commit comments

Comments
 (0)