SLSA 1 & 2 should not require config-as-code #115
Labels
slsa 1
Applies to a SLSA 1 requirement
slsa 2
Applies to a SLSA 2 requirement
spec-change
Modification to the spec (requirements, schema, etc.)
As currently worded, SLSA 1 unintentionally requires that the build steps were defined in some source material, i.e. "config as code". This is a problem because it excludes many build systems where such a mapping is not present or infeasible. Examples: Tekton (more info), LUCI, and Google Cloud Build (unless cloudbuild.yaml-based build triggers are used).
SLSA 1 and 2 were intended to be easily applicable to any build system without significant modification to how that system works. We should therefore alter the requirements to make it more clear that this mapping SHOULD be specified if present, rather than blocking something from reaching SLSA 1 or 2 if the mapping is not present or available.
In particular, the problematic requirements are Identifies Source and Identifies Entry Point.
#100 attempted to fix this by removing the requirements altogether from SLSA 1 & 2. This was met with resistance since it weakened the spec too much.
My suggestion is to rework the requirements:
We may also need to move the Version Controlled requirement to SLSA 3.
The text was updated successfully, but these errors were encountered: