@@ -91,6 +91,32 @@ attribution.
|
91 | 91 | - if any compatibility `removeAfter` is on/before release date, resolve it |
92 | 92 | or explicitly record the blocker before shipping |
93 | 93 | 10. Validate and ship: |
| 94 | +- generate and verify the complete contribution ledger before committing: |
| 95 | +```bash |
| 96 | + node .agents/skills/openclaw-changelog-update/scripts/verify-release-notes.mjs \ |
| 97 | + --base <base-tag> \ |
| 98 | + --target <target-ref> \ |
| 99 | + --version <YYYY.M.PATCH> \ |
| 100 | + --write-ledger |
| 101 | + ``` |
| 102 | + - the command fails when any `#NNN` reference in release history or the |
| 103 | + rendered release section is absent from the ledger, when reverted work is |
| 104 | + presented as shipped, or when an eligible PR author, issue reporter, or |
| 105 | + known co-author is missing from that entry's `Thanks @...` credit |
| 106 | + - after the GitHub release or prerelease is published, verify every matching |
| 107 | + release page against the same source section: |
| 108 | + ```bash |
| 109 | + node .agents/skills/openclaw-changelog-update/scripts/verify-release-notes.mjs \ |
| 110 | + --base <base-tag> \ |
| 111 | + --target <target-ref> \ |
| 112 | + --version <YYYY.M.PATCH> \ |
| 113 | + --release-tag v<YYYY.M.PATCH> \ |
| 114 | + --check-github |
| 115 | + ``` |
| 116 | + - add one `--release-tag` for every beta and stable page in the train; a |
| 117 | + `### Release verification` tail is permitted, but any other body drift |
| 118 | + fails the check; the GitHub body must begin with the complete |
| 119 | + `## YYYY.M.PATCH` changelog section, including its heading |
94 | 120 | - `git diff --check` |
95 | 121 | - for docs/changelog-only changes, no broad tests are required |
96 | 122 | - commit with `scripts/committer "docs(changelog): refresh YYYY.M.PATCH notes" CHANGELOG.md` |
|