docs: 📝 openspec change — signed SBOM attestation (release-tools-image) #189
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/OpenSpec
Kind/Security
Kind/Testing
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
RFC - Request For Comments
Reviewed/Confirmed
Reviewed/Duplicate
Reviewed/Invalid
Reviewed/Won't Fix
Status/Abandoned
Status/Blocked
Status/Need More Info
hermes-attempted
hermes-needs-clarification
hermes-ready
hermes-review
hermes-wip
human-required
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
agentic-forges/forgejo-mcp!189
Loading…
Reference in a new issue
No description provided.
Delete branch "openspec/signed-sbom-attestation"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
OpenSpec change
signed-sbom-attestation— aligns therelease-tools-imagespec with the cosignattestmigration that already landed in commitb2619fc(forgejo-mcp-aa6).Why
The spec requirement "SBOM attached as registry artifact" still mandated the consumer contract:
That path is now wrong on two counts:
cosign attach sbom/download sbomare deprecated and gone from current cosign (sigstore/cosign#2755).attach sbompushed the SBOM as a bare OCI referrer with no signature (supply-chain gap).The pipeline already moved to a signed in-toto CycloneDX attestation. This change updates the normative spec to match.
Delta (MODIFIED, 1 requirement)
openspec/specs/release-tools-image/spec.md→ requirement "SBOM attached as registry artifact":cosign attest --predicate <sbom> --type cyclonedx --key, signed with the image-signing key.cosign verify-attestation --type cyclonedx --key <cosign.pub> <image-ref>(orcosign download attestation).cosign attach sbom.Scope
.tekton/release-tools/tasks/cosign-attach-sbom.yaml) and README already match — landed underb2619fc(aa6).Validation
After merge
Archive the change and sync
openspec/specs/release-tools-image/spec.md(tasks.md step 3.2).Closes forgejo-mcp-3y1. Follow-up from forgejo-mcp-aa6.
op1st Pipelines as Code/forgejo-mcp-code-scans-45q9p is running.
Starting Pipelinerun forgejo-mcp-code-scans-45q9p in namespace op1st-pipelines
You can monitor the execution using the op1st Pipelines as Code PipelineRun viewer or through the command line by
using the tkn CLI with the following command:
tkn pr logs -n op1st-pipelines forgejo-mcp-code-scans-45q9p -fop1st Pipelines as Code/forgejo-mcp-openspec-validate-pr-qsghn is running.
Starting Pipelinerun forgejo-mcp-openspec-validate-pr-qsghn in namespace op1st-pipelines
You can monitor the execution using the op1st Pipelines as Code PipelineRun viewer or through the command line by
using the tkn CLI with the following command:
tkn pr logs -n op1st-pipelines forgejo-mcp-openspec-validate-pr-qsghn -fop1st Pipelines as Code/forgejo-mcp-on-pull-request-bhtgm is running.
Starting Pipelinerun forgejo-mcp-on-pull-request-bhtgm in namespace op1st-pipelines
You can monitor the execution using the op1st Pipelines as Code PipelineRun viewer or through the command line by
using the tkn CLI with the following command:
tkn pr logs -n op1st-pipelines forgejo-mcp-on-pull-request-bhtgm -fop1st Pipelines as Code/forgejo-mcp-code-scans-45q9p has successfully validated your commit.
Task Statuses:
fetch-source
gitleaks-version
gitleaks
op1st Pipelines as Code/forgejo-mcp-openspec-validate-pr-qsghn has successfully validated your commit.
Task Statuses:
fetch-source
validate
op1st Pipelines as Code/forgejo-mcp-on-pull-request-bhtgm has successfully validated your commit.
Task Statuses:
fetch-source
build-and-test
commit-title-check
This PR delivers the OpenSpec change only — proposal, design, specs, and tasks. It does not implement any code and does not close any issues. Implementation and issue closure happen in follow-up PRs.