Files
github-action/docs/uc-006/uc.md
T
Tirsvad 044d8ba21f Define the release process and version pinning
Add the brief use case UC-006 (Release a Reusable Workflow), the use case in
UCD-001, stories US-001.11 to US-001.13 and ADR-0006: one version for the
repository with SemVer tags and a moving major tag, a release only from a
green commit with a changelog entry, consumers pin the major or an exact tag
and never main. Add the maintainers' checklist guides/release-process.md.
Review and accept them (RC-040 to RC-043), update TM-001 and the registry.

Task: MIL-004#1
2026-10-10 22:46:23 +08:00

2.0 KiB

UC-006: Release a Reusable Workflow

Metadata

Key Value
ID UC-006
CrossReference UCD-001, US-001, SA-001, ADR-0006

Version History

Date Status Author Reviewer Change Commit
2026-10-10 Accepted Jens Tirsvad Nielsen S01 Initial version pending

Format: Brief

Title: Release a Reusable Workflow Scope: Reusable Workflow Collection Level: user-goal Primary Actor: DevOps Professional Stakeholders: S05, S02, S03 (interests below) Stories: US-001.11, US-001.12

Brief

When a change to the workflows or their scripts is ready on the default branch, the DevOps Professional checks that the repository's validation run on that commit is green, adds the version to the changelog with each breaking change marked, and creates the version tag and moves the major tag of the same major version. The release page for the tag is created from the changelog entry and announces what changed and whether consumers need to act. Consumers pinned to the previous version are not affected.

Stakeholder interests

  • S05 — a release is a deliberate, validated, reviewed step, and a faulty one can be undone
  • S02 — a pinned pipeline never changes under them, and a changelog tells them whether to act
  • S03 — a change to credentials, tokens or permissions is visible in the changelog before it reaches runners

Preconditions: The repository's validation run exists and is green on the commit to be released, and the version scheme of ADR-0006 is defined.

Postconditions (success guarantee): A version tag and a changelog entry exist for the commit, the major tag points to the latest compatible release, the release page announces it, and pipelines pinned to earlier versions run unchanged.