Skip to content
Registry StackDocsv0.25.0

OpenSSF and release trust

View as Markdown

This page records which Registry Stack release-trust checks you can verify, and which Open Source Security Foundation (OpenSSF) answers have a narrower scope.

Use the public release/VERIFY.md procedure to authenticate a current release.

QuestionCurrent answerVerification source
Are current release payloads signed?Yes. One keyless Sigstore bundle authenticates SHA256SUMS, which covers every public payload.Release workflow
Are release Git tags signed?No. The annotated tag binds a candidate run, attempt, and manifest hash, but the Git tag object is not cryptographically signed.Release operations
Is release provenance published?Yes. GitHub artifact attestations authenticate the candidate manifest and bundle, and the signed checksum chain authenticates the public payloads.Release verification
Are published builds repeatable?A weekly clean proof covers canonical Linux amd64 binaries plus image configuration and ordered layers. The OpenSSF justification is current only while an applicable successful proof is no older than 30 days.Repeatable build evidence

The candidate workflow builds each shipped artifact once, publishes candidate images only to private packages, scans exact image digests, and seals one seven-day candidate manifest and bundle. The annotated tag binds that manifest to the candidate run and attempt.

The protected-main publication workflow verifies the tag and candidate, then reconciles the complete draft GitHub Release before a public write. It promotes image manifests at the same digests, publishes the draft, and dispatches authenticated documentation promotion.

Current public security assets include:

  • SHA256SUMS.
  • One registry-stack-vX.Y.Z-SHA256SUMS.sigstore.json bundle.
  • One consolidated SPDX JSON software bill of materials (SBOM).
  • One checksum-covered security-evidence archive.
  • One compact release manifest recording candidate and promotion identity.

Releases from v0.19.0 onward publish no container image lock. Current-main release tooling rejects earlier release shapes before asset discovery and directs operators to verify them from the corresponding source tag and archived assets.

Current releases do not publish a second generic SLSA provenance envelope, per-file signature and certificate pairs, release capsules, candidate telemetry, or intermediate receipt parts.

Registry Stack runs OpenSSF Scorecard on its normal schedule and by manual dispatch. Scorecard is posture telemetry and cannot change an ordinary release result.

Read the check-level results rather than treating the aggregate score as a certification. Known caveats include unsigned Git tag objects and older releases with different evidence inventories.

The OpenSSF Best Practices Badge is self-attested. Registry Stack records an answer only when a public source file, workflow, release artifact, or docs page supports that answer. The in-tree answer source is release/openssf-best-practices-silver.yaml. The authoritative project page is the Registry Stack Best Practices project.

CriterionStatus boundaryPublic evidence
build_repeatableMet only while the latest applicable clean proof is successful and no older than 30 daysRepeatable build evidence
signed_releasesMet for releases using the authenticated SHA256SUMS chainRelease verification
version_tags_signedUnmet because Git tag objects are not cryptographically signedRelease workflow

A failed or stale repeatability result changes the badge justification. The result does not retroactively fail a published release and does not become an ordinary publication blocker.

Registry Stack targets OpenSSF OSPS Baseline 2026-02-19, Level 1 as the first version-pinned baseline map.

Control areaPublic evidenceStatus
Public source repositoryregistry-stackImplemented
Vulnerability disclosureSECURITY.mdImplemented
Automated testsCI workflowImplemented
Token permissionsRead-only build and verification jobs; package, release, signing, and Pages permissions are separatedImplemented
Release artifactsSigned checksums, consolidated SPDX SBOM, security archive, and release manifestImplemented by the current workflow
Signed version tagsCryptographic Git tag signaturesNot implemented
ProvenanceCandidate build attestations and a signed public checksum closureImplemented by the current workflows

Historical release assets remain immutable. Earlier releases may contain per-file .sig and .pem pairs, capsules, candidate receipts, separate digest files, multiple SBOMs, a container image lock, generic SLSA provenance, or no provenance. Use the verification document committed at the selected tag and do not infer current guarantees from an older inventory. v0.8.0 remains unsigned.