Skip to content

Commit 40f7ca6

Browse files
oblangatasclaude
andcommitted
docs: state the sign-before-tag invariant precisely (WOR-871)
The workflow pushes by digest, signs, THEN promotes human-readable tags. 'signed with cosign before publish' implied no registry artifact exists before signing, which is not the invariant. Flagged by CodeRabbit. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
1 parent 01958f7 commit 40f7ca6

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

docs/install-docker.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ description: "Pull a pre-built, signed multi-arch image from GHCR."
55

66
# Install -- Docker (from GHCR)
77

8-
Pull a pre-built, multi-arch image from the GitHub Container Registry. No clone, no build. Every image is scanned with [Grype](https://github.com/anchore/grype) on both architectures and signed with cosign before publish. The release fails on any **fixable Medium-or-higher** vulnerability — the same bar a pull request has to clear.
8+
Pull a pre-built, multi-arch image from the GitHub Container Registry. No clone, no build. Every image is scanned with [Grype](https://github.com/anchore/grype) on both architectures, and cosign-signed before any release tag is promoted. The release fails on any **fixable Medium-or-higher** vulnerability — the same bar a pull request has to clear.
99

1010
"Scanned" is not "zero known CVEs". The image carries a small number of CPython vulnerabilities inherited from the base image that have no stable upstream fix, and each one is listed in [`.grype.yaml`](https://github.com/shacharm2/worthless/blob/main/.grype.yaml) with a written argument for why it is not reachable from the proxy and a date by which it must be re-examined. Read that file if you want to check our reasoning rather than take our word for it.
1111

0 commit comments

Comments
 (0)