Files
vociferate/CHANGELOG.md

6.3 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-pr action for enforcing changelog updates on qualifying code changes.
  • Changelog gate modes: strict (fails job on violation) and soft (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-reason for reuse downstream.
  • Integrated remediation guidance in PR comments showing how to add changelog entries.

Changed

Removed

Fixed

1.0.2 - 2026-03-21

Breaking

Added

Changed

  • Documented release/PR-decoration preflight token and API-access checks, including GITHUB_TOKEN/GITEA_TOKEN behavior 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 Æther stylization 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 to VOCIFERATE_REPOSITORY_URL for repository URL override.
  • Added a published coverage-badge composite 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-badge job, with release recommendation isolated in a separate dependent job.
  • Push validation now calls the reusable ./coverage-badge composite 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 Summary steps instead of relying on unsupported GITHUB_STEP_SUMMARY output.
  • Prepare now recreates the standard Unreleased section headers after promoting notes into a tagged release entry.
  • First-release recommendation remains v1.0.0 when no prior releases exist in the changelog.
  • Do Release smoke validation now expects --recommend to fail on tagged release checkouts where Unreleased is intentionally empty.
  • Changelog reference links now use compare URLs (previous...current for releases and latest...main for Unreleased), with first release links comparing from the repository's first commit short hash.
  • Repository URL derivation now supports VOCIFERATE_REPOSITORY_URL as 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 describe when inputs.version is empty and GITHUB_REF is not a tag ref, resolving workflow_call input 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.0 base -> v1.0.0).
  • Automatic release-version creation/update during release preparation.
  • Configurable version source/parsing via --version-file and --version-pattern.
  • Configurable changelog path via --changelog.
  • Recommended-version fallback when version is 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) and publish/action.yml (extract notes/create-or-update release).
  • publish outputs for downstream automation: release-id, tag, and version.
  • Dual execution mode for actions: go run from 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, and checksums.txt.
  • Reusable Gitea workflows (prepare-release.yml, do-release.yml) with workflow_call support.
  • Project/automation rename from releaseprep to vociferate (entrypoint, package paths, outputs).
  • README guidance focused on primary cross-repository reuse workflows.