Changelog¶
The canonical changelog lives in the repository root:
Every user-visible change should be recorded there before release. Capability changes, optional runtime behavior, provider documentation, evaluation semantics, benchmark semantics, and release process changes are user-visible.
For release review, generate a draft from the changelog and release evidence:
uv run python scripts/generate_release_notes.py \
--release-evidence .worldforge/release-evidence/release-evidence.json
The draft is maintainer-editable source material. Review and edit it before publishing a GitHub release, and do not treat missing validation evidence, host-owned optional runtime rows, or generated wording as final release approval. Draft inputs are sanitized before Markdown rendering so token assignments, bearer headers, signed URLs, and host-local paths do not leak into release notes.
When changing release-process text in the changelog, rehearse the evidence path before drafting notes:
The drill is non-publishing. It shows how clean-pass evidence, controlled failures, host-owned optional-runtime skips, and first-triage commands should appear before maintainers run the real release evidence gates.