Estate overview

clearcutt-showcase

clearcutt-verify checked 9 images from ghcr.io against the policy below, finishing at 2026-10-19 07:41 UTC. Each image is verified, failed, or unverified, with the reasons it wasn't verified.

Verdicts

9

✓ Verified

Meets every requirement in the policy.

0

✕ Failed

Violates at least one requirement in the policy.

0

? Unverified

At least one requirement couldn't be decided. Not a pass, and not a failure.

9

Base proven

by layer digests; 0 more rest on a claim

6

On a stale base

of 9 images with a known base

0

Base unresolved

no base could be determined

0

Vulnerabilities unknown

images with no vulnerability data

9

Reproduced

of 9 images with a recipe or rebase record

0

On an older stack

of 3 apps on 3 registry stacks

Not verified, and why

Every image meets every requirement in the policy.

Stale bases

Behind is measured against the newest version of the same base observed in this run, not against upstream. The policy fails images more than 7 days behind.

ImageBaseHow it's knownVersions behindDays behind
build-go:1cgr.dev/chainguard/wolfi-base:latest The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself.15
build-node:24cgr.dev/chainguard/wolfi-base:latest The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself.15
build-python:3.14cgr.dev/chainguard/wolfi-base:latest The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself.15
run-go:1cgr.dev/chainguard/wolfi-base:latest The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself.15
run-node:24cgr.dev/chainguard/wolfi-base:latest The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself.15
run-python:3.14cgr.dev/chainguard/wolfi-base:latest The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself.15

Images

ImageVerdictBaseSigSBOMVulnsProvRecipeRebaseTestsVulnerabilitiesRebuild
build-go:1
ghcr.io/northcutted/clearcutt-showcase/platform/build-go
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. A newer version of its base was observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (/bin/sh -c test "$(id -u)" = 65532 && go version && git --version) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 findingsRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.3.0 on https://github.com/northcutted/clearcutt-showcase-platform/actions/runs/39038127661/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
build-node:24
ghcr.io/northcutted/clearcutt-showcase/platform/build-node
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. A newer version of its base was observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (/bin/sh -c test "$(id -u)" = 65532 && node --version && npm --version) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 C · 6 HRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.3.0 on https://github.com/northcutted/clearcutt-showcase-platform/actions/runs/39038131198/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
build-python:3.14
ghcr.io/northcutted/clearcutt-showcase/platform/build-python
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. A newer version of its base was observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (/bin/sh -c test "$(id -u)" = 65532 && python3 -m pip --version && cc --version && pkg-config --modversion libxml-2.0) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 C · 0 HRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.2.0 on https://github.com/northcutted/clearcutt-showcase-platform/actions/runs/39030550077/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
catalog:latest
ghcr.io/northcutted/clearcutt-showcase/apps/catalog
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. On the newest version of its base observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (GET :8080/healthz) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 C · 0 HRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.2.0 on https://github.com/northcutted/clearcutt-showcase-catalog/actions/runs/39031596076/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
checkout:latest
ghcr.io/northcutted/clearcutt-showcase/apps/checkout
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. On the newest version of its base observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (GET :8080/healthz) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 C · 0 HRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.3.0 on https://github.com/northcutted/clearcutt-showcase-checkout/actions/runs/39135799332/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
run-go:1
ghcr.io/northcutted/clearcutt-showcase/platform/run-go
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. A newer version of its base was observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (/bin/sh -c test "$(id -u)" = 65532 && test -s /etc/ssl/certs/ca-certificates.crt && test -e /usr/share/zoneinfo/UTC) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 findingsRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.2.0 on https://github.com/northcutted/clearcutt-showcase-platform/actions/runs/39030550077/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
run-node:24
ghcr.io/northcutted/clearcutt-showcase/platform/run-node
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. A newer version of its base was observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (/bin/sh -c test "$(id -u)" = 65532 && node -e "console.log(process.version, process.versions.openssl)") that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 findingsRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.2.0 on https://github.com/northcutted/clearcutt-showcase-platform/actions/runs/39030550077/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
run-python:3.14
ghcr.io/northcutted/clearcutt-showcase/platform/run-python
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. A newer version of its base was observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: VerifiedRebase record: Not applicable. No rebase record: the image was built, not rebased.Tests: Declared in recipe. The verified recipe declares a smoke test (/bin/sh -c test "$(id -u)" = 65532 && python3 -c "import ssl, sys; print(sys.version, ssl.OPENSSL_VERSION)" && ls /usr/lib/libxml2.so.*) that clearcutt-factory runs on every platform before it pushes; the result isn't separately attested.0 C · 0 HRebuild: Reproduced. Reproduced from the recipe verified on this image by clearcutt-factory v0.2.0 on https://github.com/northcutted/clearcutt-showcase-platform/actions/runs/39030550077/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.
storefront:latest
ghcr.io/northcutted/clearcutt-showcase/apps/storefront
Meets every requirement in the policy. The image starts with the base's exact layer digests. This compares content, so it holds whatever the image says about itself. On the newest version of its base observed in this run.Signature: VerifiedSBOM: VerifiedVulnerability report: VerifiedSLSA provenance: VerifiedRecipe: Not applicable. Rebased: the rebase record names the image that was built from a recipe.Rebase record: VerifiedTests: Missing. No test attestation. The recipe of the image it was rebased from declares a smoke test (GET :8080/healthz), but the rebase record doesn't say whether the rebase ran it: clearcutt-factory runs the app's smoke test when it rebases from the app manifest (rebase -f, as its fleet workflow does), not when it rebases --image or with --no-test.0 findingsRebuild: Reproduced. Reproduced from the rebase record verified on this image by clearcutt-factory v0.2.0 on https://github.com/northcutted/clearcutt-showcase-storefront/actions/runs/39031096208/attempts/1, as its verified reproduction attestation says; this run didn't rebuild it.

✓ verified · ○ present, unverified · ! missing · ✕ failed · ? unknown · – not applicable

Evidence across the estate

EvidenceVerifiedPresentFailedMissingUnknownn/a
Signature900000
SBOM900000
Vulnerability report900000
SLSA provenance900000
Recipe800001
Rebase record100008
Tests080100

Vulnerabilities

Totals over the 9 images with vulnerability data. Every image has vulnerability data.Each image's findings describe the day its report was made.

criticalhighmediumlownegligibleunknown
Findings0616103
With a fix0513103

Policy

Required, verified
Signature, SBOM, Vulnerability report, SLSA provenance, Recipe
Vulnerabilities
fail at critical or above, counting only findings with a fix
Scan age
any age: a scan describes the day it was made, however long ago
Base age
fail when more than 7 days behind
Rebuilds
this run rebuilt images to check them
Trusted signers
  1. Identity matching
    ^https://github\.com/northcutted/clearcutt-factory/\.github/workflows/(images|fleet)\.yml@refs/tags/v\d+\.\d+\.\d+$
    Issuer
    https://token.actions.githubusercontent.com
    Run in repository
    https://github.com/northcutted/clearcutt-showcase-platform
    Run on ref
    refs/heads/main
    Run in
    the repository the image names as its source
  2. Identity matching
    ^https://github\.com/northcutted/clearcutt-factory/\.github/workflows/(images|fleet)\.yml@refs/tags/v\d+\.\d+\.\d+$
    Issuer
    https://token.actions.githubusercontent.com
    Run in repository
    https://github.com/northcutted/clearcutt-showcase-checkout
    Run on ref
    refs/heads/main
    Run in
    the repository the image names as its source
  3. Identity matching
    ^https://github\.com/northcutted/clearcutt-factory/\.github/workflows/(images|fleet)\.yml@refs/tags/v\d+\.\d+\.\d+$
    Issuer
    https://token.actions.githubusercontent.com
    Run in repository
    https://github.com/northcutted/clearcutt-showcase-catalog
    Run on ref
    refs/heads/main
    Run in
    the repository the image names as its source
  4. Identity matching
    ^https://github\.com/northcutted/clearcutt-factory/\.github/workflows/(images|fleet)\.yml@refs/tags/v\d+\.\d+\.\d+$
    Issuer
    https://token.actions.githubusercontent.com
    Run in repository
    https://github.com/northcutted/clearcutt-showcase-storefront
    Run on ref
    refs/heads/main
    Run in
    the repository the image names as its source
Stack signers
  1. Identity
    https://github.com/northcutted/clearcutt-showcase-platform/.github/workflows/stacks.yml@refs/heads/main
    Issuer
    https://token.actions.githubusercontent.com