mirror of
https://github.com/nexu-io/open-design.git
synced 2026-09-20 06:15:06 +08:00
5a7bbe5b10
A stable release with no docs/CHANGELOG/v<version>/ directory hard-failed at the very first job. Fixing it mid-release is not "write two markdown files": the stable promotion gate pins github.commit to the promoted prerelease, so the changelog commit invalidates that artifact and forces a fresh ~27-minute prerelease round trip. Missing notes are now a loud warning instead of a failure. reviewReleaseNotePlanPolicy returns warnings for a stable release with no notes, or one missing zh-CN, and prepare-release-note surfaces them as a ::warning:: annotation plus a job summary entry. Notes that exist but cannot be consumed still throw: a channel mismatch, or a plan that omits the default locale every consumer falls back to. publish-metadata carried a second stable gate on the same condition. Removing only the first would have moved the hard failure past the GitHub draft release and asset upload, which is strictly worse, so both are gone. The rest of the chain already treated "absent" as a complete outcome — it is the beta and prerelease path — so publication, verification, and metadata assembly are unchanged. Non-stable channels behave exactly as before.