docs: add 2.1.0-beta.1 release notes - #2063
Conversation
Formatted release notes for node-2.1.0-beta.1, plus the two supporting docs they reference. Mirrors the layout of docs/release-notes/2.0.0-alpha.1/. - release-notes-2.1.0-beta.1.md — v5-structured notes. The change entries are the delta against the 2.0.0 pre-release line and against 1.0.3, so anything shared with the 1.0.x maintenance line (the runtime-gated tblock correction, the system_version bump to 3) is not restated. - runtime-diff.md — subwasm metadata diff 1.0.3 -> 2.1.0-beta.1. 1.0.3 is pending, so the pallet-surface diff is taken between the published 1.0.1 and 2.1.0-beta.1 blobs; relative to 1.0.1 the 1.0.3 branch changes only spec_version and system_version inside runtime/, so the surface is identical. - migration-hardfork-1.0.x.md — operator runbook for the ledger 8 -> 9 hard fork from a 1.0.3 chain. Cross-doc links are absolute blob/main URLs so they also resolve from the GitHub release page, which carries a copy of the notes as its body. Assisted-by: Claude:claude-opus-5 Signed-off-by: Oscar Bailey <79094698+ozgb@users.noreply.github.com>
| --wasm-file midnight_node_runtime.compact.compressed.wasm \ | ||
| -c <collective-signer-1> -c <collective-signer-2> \ | ||
| -t <technical-signer-1> -t <technical-signer-2> \ | ||
| --rpc-url ws://<node>:9944 \ |
| --fetch-cache inmemory \ | ||
| register-dust-address \ | ||
| --wallet-seed <seed> \ | ||
| -s ws://<node>:9944 -d ws://<node>:9944 |
| --fetch-cache inmemory \ | ||
| register-dust-address \ | ||
| --wallet-seed <seed> \ | ||
| -s ws://<node>:9944 -d ws://<node>:9944 |
| --fetch-cache inmemory \ | ||
| register-dust-address \ | ||
| --wallet-seed <seed> \ | ||
| -s ws://<node>:9944 -d ws://<node>:9944 |
| --fetch-cache inmemory \ | ||
| register-dust-address \ | ||
| --wallet-seed <seed> \ | ||
| -s ws://<node>:9944 -d ws://<node>:9944 |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 5b5cb9eb50
ℹ️ About Codex in GitHub
Codex has been enabled to automatically review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
When you sign up for Codex through ChatGPT, Codex can also answer questions or update the PR, like "@codex address that feedback".
|
|
||
| ```shell | ||
| cid=$(docker create midnightntwrk/midnight-node:2.1.0-beta.1) | ||
| docker cp "$cid:/artifacts-amd64/midnight_node_runtime.compact.compressed.wasm" . |
There was a problem hiding this comment.
Select the runtime artifact directory by architecture
On an ARM host, this multi-architecture tag resolves to the arm64 image, which Earthfile builds with only /artifacts-arm64; the hardcoded /artifacts-amd64 path therefore makes the documented extraction step fail before the runtime upgrade. The checked .github/workflows/fork-network.yml handles this by probing both amd64 and arm64, and the runbook should do the same or derive the image architecture.
Useful? React with 👍 / 👎.
| ## Dependencies | ||
|
|
||
| - **midnight-ledger 9.1.0.0-rc.4** — pinned as a single workspace tag; the node binary provides it via host calls. Ledger 7 is fully removed, so this node cannot decode or replay chain history predating the ledger 7 → 8 hardfork. | ||
| - **The chain must already be running the 1.0.3 runtime** (pending release) — that is the fork-from baseline this release is built and tested against. Forking from 1.0.2 or earlier is not the documented path; see [Other Changes](#other-changes). |
There was a problem hiding this comment.
Don't claim the 1.0.3 fork path is tested
The checked hard-fork pipeline does not test this baseline: util/toolkit/test-images.docker-compose.yml defaults FORK_FROM_NODE_IMAGE to midnightntwrk/midnight-node:1.0.1, and the accompanying migration guide explicitly says CI exercises the system_version: 1 skew-block path rather than the system_version: 3 path that arises from 1.0.3. Calling 1.0.3 “built and tested against” gives operators false assurance about the supported production fork path; either test with a 1.0.3 image/runtime or state that this exact path remains untested.
Useful? React with 👍 / 👎.
Overview
Adds the formatted release notes for
node-2.1.0-beta.1plus the two supporting docs they reference, following the layout already established bydocs/release-notes/2.0.0-alpha.1/.The notes are also the body of the GitHub release, so the docs need to live on
mainfor the cross-doc links in that body to resolve — hence absoluteblob/main/...URLs rather than relative paths.release-notes-2.1.0-beta.1.mdruntime-diff.mdsubwasmmetadata diff, 1.0.3 → 2.1.0-beta.1migration-hardfork-1.0.x.mdTwo things worth a reviewer's eye:
system_versionbump to 3 chore: update system_version to 3 #1900) is deliberately not restated, and fix(ledger): serve ledger state reads at the ledger-hardfork set_code block #1985 is filed underOther Changesbecause on the 1.0.3 baseline the applying block is not a skew block.subwasm, and this pre-release publishes no WASM asset either (Update srtool to Rust 1.95.0 #2061).git diff node-1.0.1 origin/release/node-1.0.3 -- runtime/ pallets/changes onlyspec_versionandsystem_versioninsideruntime/, so 1.0.3's pallet metadata surface is 1.0.1's; the pallet diff is taken between the published 1.0.1 and 2.1.0-beta.1 blobs and the version fields are read from the 1.0.3 branch source. The doc states this method inline, with the command to re-verify.🗹 TODO before merging
📌 Submission Checklist
git commit -s) for the DCO🧪 Testing Evidence
Docs only — no code paths touched.
npx markdownlint-cli docs/release-notes/2.1.0-beta.1/*.md— clean (same disable list as the 2.0.0-alpha.1 notes).subwasmv0.21.3 against the runtime blobs extracted from the publishedmidnightntwrk/midnight-node:1.0.1and:2.1.0-beta.1images.Please describe any additional testing aside from CI:
🔱 Fork Strategy
Links
🤖 Generated with Claude Code