Skip to content

#43 CR: the mirror's cache miss, docker:// steps, one parse - #46

Merged
gregoryfoster merged 5 commits into
mainfrom
43-cr
Oct 10, 2026
Merged

gregoryfoster merged 5 commits into
mainfrom
43-cr

Conversation

@gregoryfoster

@gregoryfoster gregoryfoster commented Oct 10, 2026 •

Copy link
Copy Markdown
Contributor

Refs #43. Review fixes for #44 (f36cebc), already merged.

Item Action Result
1 Fixed ci.yml: the comment names the mirror's failure mode and the fallback. mirror.gcr.io serves only tags it has cached (redis:2.6.17 and busybox:1.21-ubuntu 404 there today), and Redis 7.0 is past EOL. "manifest unknown" at Initialize containers means 7.0.15 dropped out of the cache, not a broken commit. The fallback is Ubuntu 24.04's apt redis-server 7.0.15, per #43's hand-off.
2 Fixed tests/test_ci.py: the image check also covers step-level uses: docker://<image>, which is also an anonymous Hub pull. A test on a synthetic workflow proves it.
3 Fixed tests/test_ci.py: the workflows are parsed once (IMAGES), not once for the parametrize values and again for the ids.
4 Stet #44 landed its red test and green fix in one commit. That history is merged, so there's nothing to change. Commit the failing test separately next time.
5 Fixed Round 2: the 7.0.15 pin points at CannObserv/broker#85 (Redis 7.0 is upstream EOL; the broker's next Redis is decided there) in ci.yml, BROKER_REDIS and AGENTS.md's CI row.
6 Fixed Round 2: the mirror check's failure message states its rule ("not on mirror.gcr.io/") instead of always saying "Docker Hub", which was false for a ghcr.io image.

Local gate: 587 passed, 6 skipped; ruff, format, uv lock --locked clean. No deploy: nothing here runs in production.

🤖 Generated with Claude Code

gregoryfoster and others added 3 commits October 10, 2026 16:56
…lback

mirror.gcr.io serves only cached tags (redis:2.6.17 and busybox:1.21-ubuntu
404 there today), and Redis 7.0 is past EOL, so 7.0.15 can leave the cache.
The comment says what that failure looks like and what replaces the mirror.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A step with `uses: docker://<image>` pulls a container like a service does,
and with no registry that is an anonymous Docker Hub pull: _images() now
finds those too, and takes the workflows directory so a synthetic workflow
can prove it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
parametrize's values and ids each called _images(), so collection parsed
every workflow twice; one module-level IMAGES feeds both.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
gregoryfoster and others added 2 commits October 10, 2026 17:34
Redis 7.0 is upstream EOL (2024-07-29), and broker#85 now owns the choice
of the broker's next Redis. ci.yml, BROKER_REDIS and AGENTS.md's CI row say
so, since all three move with the broker.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The check rejects any image off mirror.gcr.io, but its message always said
"from Docker Hub anonymously", false for a ghcr.io image. It now states the
rule, then why an unqualified or docker.io image is the case it guards.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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