Skip to content

fix(defaults): rewrite :latest image pins to the dev tag (job-broker ImagePullBackOff) - #719

Merged
bussyjd merged 1 commit into
integration/v0.13.0-rc1from
fix/job-broker-dev-image
Jul 8, 2026
Merged

fix(defaults): rewrite :latest image pins to the dev tag (job-broker ImagePullBackOff)#719
bussyjd merged 1 commit into
integration/v0.13.0-rc1from
fix/job-broker-dev-image

Conversation

@bussyjd

@bussyjd bussyjd commented Jul 8, 2026

Copy link
Copy Markdown
Contributor

What

Under OBOL_DEVELOPMENT=true, rewriteDevDigestPins repoints component image refs at the freshly-built local :dev-<sha> tag. It matched digest and short-SHA pins but not :latest. job-broker ships as :latest (no published ghcr image → no digest for the release pipeline to stamp), so its Deployment ref survived the rewrite → the local build imports :dev-<sha>, no :latest image exists → pod ImagePullBackOff, blocking flow-02.

Fix: add :latest to the rewrite alternation (a locally-built base always resolves to the dev build, so an unpinned ref must point at it too). Regression test asserts job-broker is rewritten and no :latest survives for any locally-built base.

How found

Surfaced by the v0.13.0-rc1 release smoke on a real k3d cluster (spark1) — job-broker was the only pod stuck in ImagePullBackOff while the digest-pinned verifier/controller/buyer came up fine.

Follow-up (flagged, not in this PR)

job-broker is absent from .github/workflows/docker-publish-x402.yml, so :latest never resolves in a production install either. This dev fix unblocks rc smoke; adding job-broker to the publish matrix is required before a GA tag.

https://claude.ai/code/session_01VquWN9UMaSHH7MHGcG8bw1

…EVELOPMENT

The dev-mode manifest rewrite (rewriteDevDigestPins) only matched
digest and short-SHA pins. job-broker ships as :latest (it has no
published ghcr image, so the release pipeline has no digest to stamp),
so its deployment ref survived the rewrite unchanged. The local build
imports it as :dev-<sha>, leaving no :latest image present, so the pod
ImagePullBackOffs against the unpublished registry ref and blocks
flow-02. Add :latest to the rewrite alternation — a locally-built base
always resolves to the dev build, so an unpinned ref must point at it
too. Surfaced by the v0.13.0-rc1 release smoke on spark1.

Claude-Session: https://claude.ai/code/session_01VquWN9UMaSHH7MHGcG8bw1
@bussyjd
bussyjd merged commit 1066ea4 into integration/v0.13.0-rc1 Jul 8, 2026
@bussyjd
bussyjd deleted the fix/job-broker-dev-image branch July 8, 2026 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant