diff --git a/AGENTS.md b/AGENTS.md index 19e54c5..2710ab4 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -304,7 +304,7 @@ The project follows **Semantic Versioning 2.0.0**. Tags are annotated and have t **Post-1.0 (`MAJOR.MINOR.PATCH`)** — standard SemVer; `MAJOR` for source-/ABI-incompatible changes, `MINOR` for additions, `PATCH` for fixes. -**`CHANGELOG.md`** — Keep a Changelog 1.1.0 format. Every PR that introduces user-visible change adds a line to the `Unreleased` section in the same PR; release PRs roll `Unreleased` into the new version block. +**`CHANGELOG.md`** — Keep a Changelog 1.1.0 format. Released entries are **immutable, one file per release** under `docs/changelog/v/v.md`; the root `CHANGELOG.md` keeps only the `[Unreleased]` block and the *Released versions* index ([ADR-0038](docs/adr/0038-changelog-version-split.md)). Every PR that introduces user-visible change adds a line to the root `Unreleased` section in the same PR; a release PR **moves** `Unreleased` into a new per-version file and adds an index row ([`docs/workflow/release.md`](docs/workflow/release.md) §3) — it does not edit a released file. **Release artifacts** — on each `v*` tag push, the `release` CI workflow re-runs the full test matrix, builds per-platform binaries (Linux x86_64, Windows x86_64, macOS arm64), produces `SHA256SUMS`, and creates a **draft** GitHub Release. The maintainer reviews and clicks *Publish*. @@ -315,7 +315,7 @@ The project follows **Semantic Versioning 2.0.0**. Tags are annotated and have t | Action | Who | |-------------------------------------------------------|----------| | Bump version constant in source | Agent | -| Update `CHANGELOG.md` (Unreleased → version) | Agent | +| Move `Unreleased` → `docs/changelog/v/v.md` + index row | Agent | | Draft GitHub Release notes (`docs/releases/v.md`) | Agent | | Open the release PR | **Human**| | Merge the release PR | **Human**| diff --git a/CHANGELOG.md b/CHANGELOG.md index 188c787..75af380 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -86,10 +86,10 @@ dated version block (`## [X.Y.Z] — YYYY-MM-DD`) when a release PR closes a mil `docs/changelog/v/v.md`; the root `CHANGELOG.md` now keeps only the preamble, `[Unreleased]`, and the *Released versions* index below — dropping from 1129 to ~100 lines. Keep a Changelog and the root-file location are preserved; - the `version-lockstep` consistency check and [`release.md`](docs/workflow/release.md) - roll-over mechanic were updated accordingly. Rationale (incl. why not a calendar - or XML/Liquibase split) in [ADR-0038](docs/adr/0038-changelog-version-split.md). - Documentation/tooling-only. + the `version-lockstep` consistency check, [`release.md`](docs/workflow/release.md) + §3, and the `AGENTS.md` §11 release contract were updated to match. Rationale + (incl. why not a calendar or XML/Liquibase split) in + [ADR-0038](docs/adr/0038-changelog-version-split.md). Documentation/tooling-only. ## Released versions