ci(images): retry transient manifest registry reads - #8560
Conversation
Signed-off-by: Senthil Ravichandran <senthilr@nvidia.com>
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
📝 WalkthroughWalkthroughThe pull request adds a bounded retry wrapper for ChangesDocker image inspection retry
Estimated code review effort: 3 (Moderate) | ~20 minutes Suggested labels: Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Comment |
Code Coverage OverviewLanguages: TypeScript TypeScript / code-coverage/pluginThe overall coverage in commit 069dbd4 in the TypeScript / code-coverage/cliThe overall coverage in commit 069dbd4 in the Show a code coverage summary of the most impacted files.
Updated |
|
Queue update: main E2E run 31185766035, job 92890546246, failed by reusing Base Images run 31184501811 from commit 0b19405. This is the same transient GHCR manifest-read authorization root cause owned by this PR, not a separate failure; no duplicate fix or E2E run was created. |
cjagwani
left a comment
There was a problem hiding this comment.
Reviewed exact head 069dbd4. Security review: PASS across secrets, input handling, auth, dependencies, logging, cryptography, workflow permissions, tests, and holistic posture. The bounded retry preserves immutable digest/provenance validation and fails closed. No actionable findings.
PR Review Advisor — No blocking findings reportedAdvisor assessment: No blocking advisor findings reported Model lanes
Second-opinion terminology and E2E selections are advisory. Live E2E does not run automatically for pull requests. 2 semantic terminology decisionsTerminology decisions are advisory. They affect the assessment only when a separate finding identifies concrete semantic impact.
E2E guidanceAdvisory only. A maintainer can dispatch the default E2E suite against this exact revision. Recommended E2E: This automated review informs maintainers. Warnings and suggestions do not require a response. A maintainer decides whether to merge. |
|
Merge-gate classification for Managed Images run 31186757641, job 92896129767: the non-required all-agent activation failure is unrelated to this registry-read-only diff. It ran OpenShell v0.0.85, passed the full OpenClaw lifecycle, then Hermes sandbox creation ended at terminal_failure_phase. Accepted issue #8497 explicitly owns the v0.0.85 managed-image activation failure, and PR #8523's current v0.0.99 activation passed in run 31186050945, job 92893723945. Ownership is #8523; no duplicate run or #8560 code change is warranted. |
Summary
Base-image publication can fail immediately after pushing a candidate manifest when GHCR's token endpoint transiently returns
403 Forbiddento the first manifest read. This change gives registry reads five bounded attempts while preserving the existing digest, platform, and provenance verification.The failure was observed in main E2E run 31184501275, job 92888376997, propagated from Base Images run 31184501811, job 92886728421 (
Build and push Hermes base image).Changes
Type of Change
Quality Gates
PR exact all-agent managed runtime activationfailed in run 31186757641, job 92896129767 on the existing OpenShell v0.0.85 Hermes sandbox-creation path. Accepted issue [Epic] Qualify and pin OpenShell v0.0.99 #8497 owns that v0.0.85 activation failure, and PR feat(openshell): upgrade managed runtime to v0.0.99 #8523's v0.0.99 activation passed in run 31186050945, job 92893723945. The classification is recorded in #8560 and routed to #8523.Documentation Writer Review
no-docs-neededDGX Station Hardware Evidence
scripts/prepare-dgx-station-host.shis unchanged.Verification
Signed-off-by:line and every commit appears asVerifiedin GitHubpre-commit,commit-msg, andpre-pushhooks passed, ornpm run validate:prpassed after refreshingorigin/mainwhen hooks were skipped or unavailablenpx vitest run --project integration test/retry-docker-imagetools-inspect.test.ts test/dcode-base-image-workflow.test.ts test/managed-image-publication-workflow.test.ts test/vitest-watch-triggers.test.ts(4 files, 30 tests passed)npm testfor broad runtime/test-harness changes;npm run checkfor repo-wide validation/coverage changes — command/result: Not applicable to this narrow internal workflow retry. Normal repository checks passed.npm run docsbuilds without warnings (doc changes only)The existing
validate-managed-base-indexsuite requires Bash associative arrays. This macOS host has only Bash 3.2, so that suite could not execute locally; required Linux CI remains authoritative for that integration path.Signed-off-by: Senthil Ravichandran senthilr@nvidia.com