Release trust chain: environment rules and verify before draft

Open
#186 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
8/100
Issue type
Feature
Clarity
Needs clarification
Activity status
Active
Tech stack
github-actions
Domain
ci-cd, security

Research direction

Start by reading the existing release.yml workflow, the release environment settings, and the current signing and attestation setup, then compare them with the plan in this issue. Check related issues #154 and #144 and the SEC-CI-1 to SEC-CI-4 dependencies first, since they gate the design. Done means the commit-to-release chain is documented and tested, and negative checks reject wrong tags, digests and foreign artifacts.

Written by the indexing model from the issue text.

Description

area:ci-cd area:release priority:P1 type:security

Ziel

Nur geprüfte, nachvollziehbar gebaute und autorisiert veröffentlichte Artefakte ausliefern.

Aufgaben

  • Vorhandenen release.yml, Environment release, Tag-Signaturen, Attestations und SignPath-/Signing-Plan gegen Ist-Zustand prüfen; bestehende QA-/Update-Issues #154 und #144 nicht duplizieren.
  • Zulässige Release-Refs/Tags, Environment-Schutz und ggf. unabhängige Reviewer unter Berücksichtigung Solo-Maintainer technisch bewerten.
  • Build und Publish trennen; Publish erhält nur notwendige Schreibrechte/OIDC und kein untrusted Checkout.
  • Release-Artefakte ausschließlich aus autorisierten, identifizierten Builds beziehen; SHA-Digests, Signaturen, Provenance/Attestations und Zuordnung zum Commit/Tag verifizieren.
  • PR-Artefakte und untrusted Caches dürfen nicht in den Release-Pfad gelangen; Release-Workflow-Änderungen besonders schützen.
  • Dokumentierten Freigabe-/Abbruchprozess mit negativen Prüfungen für falsche Tags, Artefakte und Signaturen erstellen.

Akzeptanzkriterien / Tests

  • Nachweis der Kette Commit → Build → Artefakt → Attestation/Signatur → Release
  • Falscher Ref, falscher Digest und fremdes Artefakt werden abgewiesen
  • Kein Publish aus Fork-/PR-Kontext
  • Bestehende Release-Funktion bleibt funktionsfähig; keine ungewollte Veröffentlichung im Test

Rollback

Änderungen als getrennte Build-/Publish-PRs revertierbar; vorherigen freigegebenen Release-Workflow wiederherstellen.

Abhängigkeiten

SEC-CI-1 bis SEC-CI-4; Abstimmung mit #144 und #154.

Dominant language
Rust
Stars
0
Forks
0
Avg merge
1h 22m
Merged PRs (30d)
72

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from SpecterAoD/pqkeep

All issues in SpecterAoD/pqkeep

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.