7.5 KiB
7.5 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
A ### Breaking section is used in addition to Keep a Changelog's standard sections to explicitly document changes that are backwards-incompatible but would otherwise appear under ### Changed. Entries under ### Breaking trigger a major version bump in automated release recommendation logic.
Unreleased
Breaking
Added
- Added changelog gate validation to
decorate-praction for enforcing changelog updates on qualifying code changes. - Changelog gate modes:
strict(fails job on violation) andsoft(warns via PR comment). - Docs-only PR exemption with customizable glob patterns for documentation files.
- PR label-based exemptions for changelog gate (example:
skip-changelog). - Precise diff parsing: validates only added lines within the Unreleased section.
- Gate decision outputs:
gate-passed,docs-only,unreleased-additions-count,gate-failure-reasonfor reuse downstream. - Integrated remediation guidance in PR comments showing how to add changelog entries.
Changed
- Refactored
internal/vociferateto use a constructor-backed service with injected filesystem, environment, and git dependencies while preserving the existing package-level API. - Hardened
prepare-releasevalidation to enforce formatting checks, module hygiene,gosec, andgovulncheckbefore preparing a release. - Added matching local validation targets in
justfilefor formatting, module hygiene, tests, and security checks. decorate-prnow reads Unreleased changelog content through thevociferateGo CLI instead of maintaining separate shell parsing logic in the composite action.publishnow extracts tagged release notes through thevociferateGo CLI instead of duplicating changelog section parsing in shell.- Composite actions now share a centralized runtime-resolution and binary-download path, with binary versus source execution selected through step-level
ifconditions where supported.
Removed
Fixed
- Fixed
decorate-pr/action.ymlYAML validation by extracting PR comment rendering intodecorate-pr/build-comment.sh, removing the duplicated changelog extraction step, and correcting the gate failure output reference.
1.0.2 - 2026-03-21
Breaking
Added
Changed
- Documented release/PR-decoration preflight token and API-access checks, including
GITHUB_TOKEN/GITEA_TOKENbehavior for self-hosted Gitea.
Removed
Fixed
1.0.1 - 2026-03-21
Breaking
Added
Changed
Removed
Fixed
- Enforced explicit
https://changelog reference links in prepare output for browser-safe markdown links.
1.0.0 - 2026-03-21
Breaking
Added
Changed
- Canonical changelog filename is now
CHANGELOG.md, and action/code defaults were updated to match. - README now uses
Ætherstylization in prose and corrects released-tag guidance wording.
Removed
Fixed
0.2.0 - 2026-03-21
Breaking
Added
- Added a project LICENSE file.
- Root and prepare actions now read
${{ vars.VOCIFERATE_REPOSITORY_URL }}and forward it toVOCIFERATE_REPOSITORY_URLfor repository URL override. - Added a published
coverage-badgecomposite action for generating and uploading coverage report/badge artefacts for reuse across repositories. - Added
AGENTS.md, an explicit integration guide for agentic coding partners using vociferate composite actions.
Changed
- Push validation now handles coverage artefact and badge generation in a dedicated
coverage-badgejob, with release recommendation isolated in a separate dependent job. - Push validation now calls the reusable
./coverage-badgecomposite action for coverage badge generation and publication.
Removed
Fixed
- Browser-facing URLs emitted in generated changelog links, workflow summaries, and markdown now use explicit
https://forms. - Release workflows now collect summary markdown into portable temp files and print it in explicit
Summarysteps instead of relying on unsupportedGITHUB_STEP_SUMMARYoutput. - Prepare now recreates the standard
Unreleasedsection headers after promoting notes into a tagged release entry. - First-release recommendation remains
v1.0.0when no prior releases exist in the changelog. - Do Release smoke validation now expects
--recommendto fail on tagged release checkouts whereUnreleasedis intentionally empty. - Changelog reference links now use compare URLs (
previous...currentfor releases andlatest...mainfor Unreleased), with first release links comparing from the repository's first commit short hash. - Repository URL derivation now supports
VOCIFERATE_REPOSITORY_URLas the highest-priority base-URL override for changelog link generation.
0.1.0 - 2026-03-20
Changed
- README workflow badges now link to the latest workflow run pages instead of the workflow definition pages.
Fixed
- Publish action falls back to
git describewheninputs.versionis empty andGITHUB_REFis not a tag ref, resolvingworkflow_callinput propagation failures in act runner v0.3.0.
Added
- Coverage badge in README linked to S3-hosted main-branch report.
- S3 coverage artefact publishing (HTML report, badge, JSON summary) in push validation pipeline.
- CLI tests and internal helper tests raising total coverage to 84%.
- Test suite isolation against ambient CI environment variables for changelog link generation tests.
- Go CLI for changelog-driven release preparation and semantic version recommendation.
- Version recommendation from changelog release headings, including first-release support (
0.0.0base ->v1.0.0). - Automatic
release-versioncreation/update during release preparation. - Configurable version source/parsing via
--version-fileand--version-pattern. - Configurable changelog path via
--changelog. - Recommended-version fallback when
versionis omitted in CLI and action flows. - Major-version recommendation trigger from
Unreleased### Breaking. - Root composite action (
action.yml) for recommend/prepare flows. - Subdirectory composite actions:
prepare/action.yml(prepare/commit/tag/push) andpublish/action.yml(extract notes/create-or-update release). publishoutputs for downstream automation:release-id,tag, andversion.- Dual execution mode for actions:
go runfrom source on@main, prebuilt binaries on tagged refs. - Repository-scoped binary cache keys with workflow-defined fixed token support via
VOCIFERATE_CACHE_TOKEN. - Tag-driven release publication with idempotent release updates and asset replacement on reruns.
- Release artifacts for
linux/amd64,linux/arm64, andchecksums.txt. - Reusable Gitea workflows (
prepare-release.yml,do-release.yml) withworkflow_callsupport. - Project/automation rename from
releasepreptovociferate(entrypoint, package paths, outputs). - README guidance focused on primary cross-repository reuse workflows.