Architecture Of Konflux

49. Verification Summary Attestations for Release Policies

Date: 2025-07-02

# Status

Accepted

# Context

We are facing several challenges with our current approach to Conforma verification and software development lifecycle (SDL) checks:

  1. Release-time Conforma verification performance: Running Conforma at release time requires checking a large number of attestations, with each attestation invoking several potentially complex Rego policy checks. We have multiple examples of Konflux applications with over 100 components - to check these at scale requires significant amounts of memory and compute.
  2. Pipeline arrangement limitations: Currently we have to run all SDL checks in the build pipeline, which limits our options on how to arrange pipelines and prevents us from potentially moving some checks into integration tests. See ADR 48.
  3. Redundant verification of unchanged artifacts: Pre-merge Conforma checks for large snapshots often include one freshly built image plus a number of images that haven’t changed, yet we redo the Conforma check on all images.
  4. Release externally-built artifacts: Our current policies for release pipelines assume artifacts were built using a sanctioned Konflux Tekton pipeline. This inhibits ingestion and release of artifacts from external (but trusted) systems that do not execute builds with Tekton. Ex: and artifact produced from a trusted Jenkins instance, or Java artifacts built using Project Newcastle.

A “summary attestation” can address these issues in the following manner:

# Decision

We will adopt SLSA Verification Summary Attestations (VSAs) for recording SDL policy check results. These VSAs will be used as the input to release pipeline Conforma checks.

VSAs must be distributed as a signed OCI artifact. Separate in-toto attestations for this OCI artifact are recommended, but not required. Konflux should be agnostic to the manner in which the VSA is produced.

# Consequences

# Impacts

# Alternatives Considered

We are working with the in-toto community to adopt this concept more broadly (“simple verification attestation”). The conversation is active with a proposed specification. The proposal has the notion of a “verified property”, which generalizes the SLSA verifiedLevels idea. These may be easier to generate from Conforma rules and policies.

If the proposal is accepted, this ADR should be reconsidered to use the more general simple/summary attestation format.