📝 Require a changelog note before finishing a branch

A merged branch must carry a final commit adding a short summary of the
work under [Unreleased] in CHANGELOG.md. create:release derives the bump
heuristic from that body, so notes have to exist before release day;
rationale in development/workflow.md.
This commit is contained in:
tmu committed 2026-09-15 22:08:08 +00:00
1 parent c5cc903221
commit f6f820a648
3 files changed
+40 -2

No files matched your search

+8 -2
View File
@@ -164,6 +164,10 @@ reaches for by default:
- **There is no local `npm run publish`, and `publish:publint` / `publish:attw`
don't go in `check`.** (why:
[development/publishing.md](./development/publishing.md#ci-only-publishing))
- **A branch ends with a changelog note:** before `npm run create:finish`,
summarize the work under `[Unreleased]` in [CHANGELOG.md](./CHANGELOG.md).
(why:
[development/workflow.md](./development/workflow.md#changelog-notes))
- **A decision or its rationale belongs in `development/`, not here.** This file
holds the actionable rule; `development/<category>.md` holds why, the rejected
alternatives and the known issues. When you change a rule, update its category
@@ -204,9 +208,11 @@ as a branch that is merged locally:
1. `npm run create:branch -- <prefix>/<desc>`.
2. Commit your work (one or more commits, per the tests and style rules above).
3. `npm run verify` — the definition of done.
4. `npm run create:finish` to merge the branch into `main` and verify the
4. Add a changelog note under `[Unreleased]` (see
[Rules the tools don't enforce](#rules-the-tools-dont-enforce)).
5. `npm run create:finish` to merge the branch into `main` and verify the
result.
5. Present a handover for review. Once there are no further objections, the
6. Present a handover for review. Once there are no further objections, the
maintainer pushes.
When the project is promoted to GitHub, this step becomes a normal pull request