You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Most of the following checks should be completed before officially publishing the new release
of the Calamari/Manta runtime or client. Some need to be completed after the new code is deployed.
These checks should be performed on the codebase prior to freezing our release candidate:
Announce code freeze (typically one week prior to release), to ensure we have enough time for related testing. Notify everyone @runtime that a release is ongoing and no more merges to manta should happen until told otherwise
On a branch named release-vX.Y.Z or release-vX.Y.Z-something ( something could be e.g. alpha or rc1 ). Substitute X Y Z with the release version number.
Verify that each crate's version has been bumped from previous release.
Verify spec_version has been incremented since the
last release for any native runtimes from any existing use on public
(non-private/test) networks. If the runtime was published (release or pre-release), either
the spec_version or impl must be bumped.
Verify pallet and extrinsic ordering has stayed
the same. Bump transaction_version if not.
Verify new extrinsics have been correctly whitelisted/blacklisted
Grep github actions files for https://github.com/paritytech/polkadot/releases/download/v URLs and align them with current mainnet states
If the release contains any changes that break/change functionality used in the Manta SDK (e.g. RPC changes, see also extrinsic ordering), raise a PR there and block this release until your PR has been merged and incorporated in a new SDK release.
Deploy to public testnet
Unless this release specifies a special upgrade process:
Execute runtime upgrade to calamari @ kusama-internal and verify network stability.
Check network health metrics like average block times, block authors, etc with this parachain utilities tool
Coordinate with the full stack team to deploy and test the wallet-extension, dApp or any other application that depends on the runtime against the staging testnet.
Coordinate with marketing team for documentation updates and other relevant tasks.
Monitor Grafana Node Explorer for anomalies in our nodes' memory, cpu, disk and network usage. These would include but are not limited to: memory leaks, cpu spikes, spike in tcp sockets waiting to close, etc. Make sure to take a look at all of the available graphs because some problems might only be visible in views that are collapsed by default
Check that the new client and/or runtime versions have burned-in without issue for at least 3 days.
Subscan team. Ensure subscan service can continue to scan calamari blocks.
Unless this release specifies a special upgrade process:
Execute client upgrade on company mainnet nodes
Notes
Release Notes
The release notes MUST contain:
The priority of the release (i.e., how quickly users should upgrade) - this is
based on the max priority of any client changes.
The version of Manta SDK that is compatible with this release
Which native runtimes and their versions are included
The proposal hashes of the runtimes as built with srtool
(After auditing starts:) Any changes in this release that are still awaiting audit
The release notes MAY also list:
Free text at the beginning of the notes mentioning anything important
regarding this release
Notable changes (those labelled with B[1-9]-* labels) separated into sections
Spec Version
A runtime upgrade must bump the spec number. This may follow a pattern with the
client release
Extrinsic Ordering
Offline signing libraries depend on a consistent ordering of call indices and
functions. Compare the metadata of the current and new runtimes and ensure that
the module index, call index tuples map to the same set of functions. To generate a diff report you can do the following:
Release Checklist
Most of the following checks should be completed before officially publishing the new release
of the Calamari/Manta runtime or client. Some need to be completed after the new code is deployed.
These checks should be performed on the codebase prior to freezing our release candidate:
manta
should happen until told otherwiserelease-vX.Y.Z
orrelease-vX.Y.Z-something
( something could be e.g.alpha
orrc1
). Substitute X Y Z with the release version number.version
has been bumped from previous release.spec_version
has been incremented since thelast release for any native runtimes from any existing use on public
(non-private/test) networks. If the runtime was published (release or pre-release), either
the
spec_version
orimpl
must be bumped.the same. Bump
transaction_version
if not.https://github.com/paritytech/polkadot/releases/download/v
URLs and align them with current mainnet statestry-runtime
, if any.dev-tools
repomanta
branch commit for the tag, NOT arelease-
or other branchDeploy to internal testnets ( fast runtime )
runtime changes.
Deploy to public testnet
Deploy to mainnet
Before Runtime Upgrade Vote
authorize_upgrade
.During Runtime Upgrade Vote
manta
, include the block number the upgrade is enacted!Notes
Release Notes
The release notes MUST contain:
based on the max priority of any client changes.
The release notes MAY also list:
regarding this release
Spec Version
A runtime upgrade must bump the spec number. This may follow a pattern with the
client release
Extrinsic Ordering
Offline signing libraries depend on a consistent ordering of call indices and
functions. Compare the metadata of the current and new runtimes and ensure that
the
module index, call index
tuples map to the same set of functions. To generate a diff report you can do the following:Run workflow
drop-down menu.output.txt
are lines like:[Identity] idx 28 -> 25 (calls 15)
- indicates the index forIdentity
has changed[+] Society, Recovery
- indicates the new version includes 2 additional modules/pallets.[Identity] idx 25 (calls 15)
In case of a breaking change, bump the
transaction_version
.Note: Adding new functions to the runtime does not constitute a breaking change
as long as the indexes did not change.
Benchmarks
There is a manually deployed github action that runs all benchmarks on a bare-metal AWS machine. In order to use go to :
Run workflow
drop-down menu.calamari-dev
,manta-dev
.Security Audit
Before release, run a
Security Audit
Run workflow
drop-down menu.The text was updated successfully, but these errors were encountered: