v0.3.0
Changed
make releasenow verifies thatCHANGELOG.mdhas a## [X.Y.Z]section for
the version being released before it bumps, tags, or pushes anything. The
target version is computed withuv version --dry-run(no mutation), and the
release aborts early with a helpful message if the entry is missing — so a
release can no longer be cut with empty auto-generated GitHub Release notes.