Rename the reusable workflows to release.yml and update-release.yml,
add UPX compression for release binaries, and sync the standalone
update-release workflow with the active release pipeline fixes.
Update README, AGENTS, compliance notes, and changelog references to
match the new workflow names and usage patterns.
Stop using GITHUB_TOKEN/GITEA_TOKEN fallbacks in prepare/do-release/publish mutation paths. Require explicit PAT wiring via secrets.RELEASE_PAT for commit/push/tag and release update operations so downstream workflows trigger reliably.
- Link Unreleased heading to repository main branch.
- Link release headings to release tag pages.
- Derive repository URL from CI metadata or origin git remote.
- Keep plain headings when repository URL cannot be resolved.
- Update tests and README usage docs for linked heading behavior.
- Update prepare-release to call do-release via workflow_call after tag creation.
- Update README examples and release-flow docs to reflect direct invocation
instead of relying only on tag-push triggers.
Add two focused subdirectory composite actions:
- prepare/action.yml: downloads the vociferate binary, runs it to update
changelog and release-version, then commits, tags, and pushes — replacing
the boilerplate git steps consumers previously had to write inline.
- publish/action.yml: extracts the matching changelog section and creates or
updates the Gitea/GitHub release. Outputs release-id, tag, and version so
consumers can upload their own assets after it runs.
Simplify the vociferate workflows to use ./prepare and ./publish directly,
validating both actions in the self-release pipeline.
Update README to show the clean two-action usage pattern.
- action.yml: clarify that version-file triggers version-file-based
resolution and that omitting it causes the version to be derived from
the changelog; note version-pattern is only required when version-file
is set.
- README: replace stale reference to the plain-text release-version file
as the default with an accurate description of changelog-based
versioning as the default, directing users to set version-file and
version-pattern only for repos with source-embedded versioning.
- RecommendedTag now reads the current version from the most recent
released section heading in the changelog (## [x.y.z] - ...) when no
--version-file flag is given, removing the dependency on a separate
version file for recommendation.
- When the changelog contains no prior releases, the base version
defaults to 0.0.0, so the first recommended tag is v1.0.0 (or higher
depending on unreleased content).
- Prepare creates the release-version file if it does not already exist,
so new repositories do not need to pre-seed it.
- Add tests covering changelog-based version resolution, first-release
default, and automatic file creation.
- Update README and changelog unreleased section to document the new
behaviour.
- Remove publish steps (release creation, binary build/upload) from the
Prepare Release workflow; it now stops after committing and pushing the
tag.
- Add Do Release workflow triggered on v*.*.* tag pushes; reads release
notes from the tagged changelog section, creates or updates the release,
builds linux/amd64 and linux/arm64 binaries, uploads assets, then
smoke-tests both binaries in a follow-on validate job.
- Remove the standalone Action Validation workflow; binary validation now
runs as a second job in Do Release after the release job succeeds, using
the exact tag and version just published.
- Update README to document the two-workflow release model and add split
prepare/publish usage examples for both the composite action and the
reusable workflows.
- Update changelog unreleased section to reflect the new pipeline split
and corrected artifact scope (linux/amd64 and linux/arm64 only).