@@ -13,9 +13,17 @@ publish, and only when they bump the package version.
1313
1414## How to release
1515
16- ### 1. Open a release PR
16+ ### 1. Cut the protocol version
1717
18- From the repo root:
18+ Run ` scripts/cut-version.sh ` to crystallize wire types, take an explorer
19+ snapshot, and generate the root ` CHANGELOG.md ` :
20+
21+ ``` bash
22+ scripts/cut-version.sh # crystallize next/, snapshot, changelog
23+ scripts/cut-version.sh --dry-run # preview without making changes
24+ ```
25+
26+ ### 2. Bump the package version
1927
2028``` bash
2129npm run changeset # interactive: pick patch / minor / major + a short summary
@@ -29,6 +37,8 @@ runs `scripts/sync-cargo-version.mjs` to bump
2937` rust/crates/truapi/Cargo.toml ` to the same version. All three files
3038should appear in the resulting diff.
3139
40+ ### 3. Open a release PR
41+
3242Commit the resulting diff and open a PR using the ** release** template:
3343
3444```
@@ -41,7 +51,7 @@ The PR title must start with `release:`. Convention:
4151release: @parity/truapi 0.1.1
4252```
4353
44- ### 2 . Get the PR reviewed and merged
54+ ### 4 . Get the PR reviewed and merged
4555
4656Merge via squash merge (the repo's default). The squash commit subject
4757defaults to the PR title, so the ` release: ` prefix carries over to
@@ -51,7 +61,7 @@ prefix will silently skip the publish. If that does happen, open a
5161follow-up ` release: ` PR with any trivial change (a CHANGELOG note tweak,
5262say); the tag-already-exists guard makes re-runs safe.
5363
54- ### 3 . Watch the publish
64+ ### 5 . Watch the publish
5565
5666On merge, CI runs as usual. When CI passes, the ` Release ` workflow:
5767
0 commit comments