Problem
The required Validate schemas are up-to-date check performs network reads from the immutable, pinned AdCP release during model generation. A transient CDN reset currently fails the entire gate without a bounded retry.
Observed on Python rc.4 adoption PR #1193, exact head 71c2bc0f0d1a2bf783f001fdbba29801cefd9825:
The exact signed rc.4 inputs and local generation already passed on the same head. This incident is a CI transport-resilience failure, not evidence of schema drift.
Desired behavior
- Retry immutable release-asset reads with a small, bounded policy for transient network failures.
- Preserve the exact version and URL; never fall back to
latest or another release.
- Preserve signature/hash verification and fail closed after the retry budget.
- Distinguish transport exhaustion from schema drift in logs and check summaries.
- Add deterministic tests for transient success, permanent failure, hash/signature failure, and prohibition of version fallback.
Acceptance criteria
- One transient reset/5xx can recover without changing the selected artifact.
- Exhausted retries still fail the required check.
- Integrity/authenticity failures are never retried into acceptance.
- Logs record attempts and terminal classification without leaking credentials.
- Existing schema generation and drift tests remain green.
Problem
The required
Validate schemas are up-to-datecheck performs network reads from the immutable, pinned AdCP release during model generation. A transient CDN reset currently fails the entire gate without a bounded retry.Observed on Python rc.4 adoption PR #1193, exact head
71c2bc0f0d1a2bf783f001fdbba29801cefd9825:Generate modelshttps://adcontextprotocol.org/schemas/3.2.0-rc.4/core/assets/video-asset.json[Errno 104] Connection reset by peerThe exact signed rc.4 inputs and local generation already passed on the same head. This incident is a CI transport-resilience failure, not evidence of schema drift.
Desired behavior
latestor another release.Acceptance criteria