feat(release): build a Next V2 genesis and publish its address set - #320
Merged
Merged
Conversation
Contributor
CI Summary
Deploy ContractsDeployed addresses vs the expected setExpected is the committed expected-address set; actual is this CI deployment of the same pipeline.
Labelsother, type: docs |
re-gius
approved these changes
Sep 28, 2026
re-gius
left a comment
Collaborator
There was a problem hiding this comment.
LGTM - just a couple of comments
| echo "" | ||
| echo "- **Release contents:** [release-manifest.json]($ASSET_BASE/release-manifest.json)" | ||
| echo "- [dotns-genesis-${DOTNS_TLD}.json]($ASSET_BASE/dotns-genesis-${DOTNS_TLD}.json) — pallet-revive genesis, \`.${DOTNS_TLD}\` TLD, for ${DOTNS_TLD} networks only." | ||
| for tld in $DOTNS_TLDS; do |
Collaborator
There was a problem hiding this comment.
The release body names which chain each file is for. This pre-release body does not, and a wipe of Paseo Next V2 may be reading the pre-release.
| The release surface is decided in `.github/abi-contracts.txt` so a contract reaches consumers only when it is listed there. | ||
|
|
||
| **Pre-releases carry no addresses.** A pre-release is cut in order to be deployed, so at that point the recorded addresses still belong to the previous deployment of different code. Publishing them under that tag would break the one thing `version` is for, namely that a release's addresses and its ABIs came from the same release. A pre-release therefore ships the ABIs, `release-manifest.json`, `codehashes.json`, and `abi-diff.json`, and the addresses arrive with the release that follows the deployment. `codehashes.json` is on the pre-release deliberately: deploys run from pre-release tags, and an upgrade diffs its build against the previous release's copy before touching a live network. | ||
| **Pre-releases carry no addresses.** A pre-release is cut in order to be deployed, so at that point the recorded addresses still belong to the previous deployment of different code. Publishing them under that tag would break the one thing `version` is for, namely that a release's addresses and its ABIs came from the same release. A pre-release therefore ships the ABIs, `release-manifest.json`, `codehashes.json`, `abi-diff.json`, and the genesis files, whose addresses are this commit's own fresh deploy; the live addresses arrive with the release that follows the deployment. `codehashes.json` is on the pre-release deliberately: deploys run from pre-release tags, and an upgrade diffs its build against the previous release's copy before touching a live network. |
Collaborator
There was a problem hiding this comment.
Pre-releases carry no live addresses since a pre-release ships dotns-genesis-addresses.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Releases now ship a DotNS genesis for Paseo Asset Hub Next V2 as well as previewnet, so a wipe can boot with DotNS already deployed
dotns-genesis-testnet.json(previewnet) anddotns-genesis-paseo.json(Next V2), one build per TLD inDOTNS_TLDSdotns-genesis-addresses.jsonasset: the address set those genesis files carry, copied fromdeployments/expected.json.dot, the chain's registry reports.testnetType
Scope
Related Issues
#309
Fixes
Closes #309
Checklist
Code
forge buildpassesforge testpassesTesting
Security
selfdestructordelegatecallDocumentation
Breaking Changes
Breaking changes:
How to test
Cut a pre-release: it should carry
dotns-genesis-testnet.json,dotns-genesis-paseo.jsonanddotns-genesis-addresses.jsonNotes