#131·Upgrade Shell to Statemint

Democracy
3yrs ago
0 Comments
Executed

This will be a batch of two scheduled transactions. They would probably work fine at once, but will schedule to be safe and ensure that the set_storage takes place prior to authorizing the upgrade.

The first will set some storage keys in Shell for Statemint's "genesis". The second will authorize the upgrade to Statemint. Both calls need to be constructed on Shell and then dispatched from the Relay Chain in an XCM.

See the release notes to review the assets, reproduce the set_storage call, and generate the runtime.

Shell Constructions

Set Storage

The set_storage call can be generated with the build-spec command from a collator node, using statemint_genesis.json as input. See the release notes for more info. Notable storage items include:

  • Setting the first set of Aura collators.
  • Setting the SafeXcmVersion to 2 to protect against older XCM formats.

Call data (statemint_genesis_values.scale):

0x0006908015464cac3378d46f113cd5b7a4d71c84476f594316a7dfe49c1f352d95abdaf110000000008015464cac3378d46f113cd5b7a4d71c844e7b9012096b41c4eb3aaf947f6ea4290800008015464cac3378d46f113cd5b7a4d71c845579297f4dfb9609e7e4c2ebab9ce40a0502104c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d7811c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7620b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b38015464cac3378d46f113cd5b7a4d71c84579f5a43435b04a98d64da0cefe185054000a0acb9030000000000000000000000801809d78346727a0ef58c0fa03bafa3234e7b9012096b41c4eb3aaf947f6ea42908000080267ada16405529c2f7ef2727d71edbde4e7b9012096b41c4eb3aaf947f6ea429080000083a6300803c311d57d4daf52904616cf69648081e4e7b9012096b41c4eb3aaf947f6ea429080000803c311d57d4daf52904616cf69648081e5e0621c4869aa60c02be9adcc98a0d1d0502104c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d7811c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7620b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b3803f1467a096bcd71a5b6a0c8155e208104e7b9012096b41c4eb3aaf947f6ea4290800008057f8dc2f5ab09467896f47300f0424384e7b9012096b41c4eb3aaf947f6ea4290800008057f8dc2f5ab09467896f47300f0424385e0621c4869aa60c02be9adcc98a0d1d0502104c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d7811c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7620b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b3805e8a19e3cd1b7c148b33880c479c02814e7b9012096b41c4eb3aaf947f6ea42908000080682a59d51ab9e48a8c8cc418ff9708d24e7b9012096b41c4eb3aaf947f6ea429080000807474449cca95dc5d0c00e71735a6d17d4e7b9012096b41c4eb3aaf947f6ea429080000807b3237373ffdfeb1cab4222e3b520d6b4e7b9012096b41c4eb3aaf947f6ea42908000080c2261276cc9d1f8598ea4b6a74b15c2f308ce9615de0775a82f8a94dc3d285a1040180c2261276cc9d1f8598ea4b6a74b15c2f4e7b9012096b41c4eb3aaf947f6ea42908000080c2261276cc9d1f8598ea4b6a74b15c2f57c875e4cff74148e4628f264b974c80400000000000000000000000000000000080cd5c1f6df63bc97f4a8ce37f14a50ca74e7b9012096b41c4eb3aaf947f6ea4290800002101cec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb30b1aeeca675702f24c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421804c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d54212101cec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb314f6a7e973c2c34dc5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b76280c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7622101cec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb34cb6fa5260704ee40b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b3800b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b32101cec5070d609dd3497f72bde07fc96ba04c014e6bf8b8c2c011e7290b85696bb35242002c980f9df1c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d781180c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d781180cec5070d609dd3497f72bde07fc96ba04e7b9012096b41c4eb3aaf947f6ea4290800003501cec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa19502fe5f80e8854f64761757261804c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421804c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d54213501cec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950a3f059d7e690a34f6175726180c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d781180c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d78113501cec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950c41649dd3c9d26696175726180c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b76280c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7623501cec5070d609dd3497f72bde07fc96ba0726380404683fc89e8233450c8aa1950fa571e62466b970561757261800b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b3800b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b380cec5070d609dd3497f72bde07fc96ba088dcde934c658227ee1dfafcd6e169030502104c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d7811c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7620b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b380cec5070d609dd3497f72bde07fc96ba0e0cdd062e6eaf24295ad4ccfc41d46090504104c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d54214c3d674d2a01060f0ded218e5dcc6f90c1726f43df79885eb3e22d97a20d5421c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d7811c7d7d38d16bc23c6321152c50306212dc22c0efc04a2e52b5cccfc31ab3d7811c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b762c5c07ba203d7375675f5c1ebe70f0a5bb729ae57b48bcc877fcc2ab21309b7620b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b30b2d0013fb974794bd7aa452465b567d48ef70373fe231a637c1fb7c547e85b380d57bce545fb382c34570e5dfbf338f5e4e7b9012096b41c4eb3aaf947f6ea42908000080d5e1a2fa16732ce6906189438c0a82c64e7b9012096b41c4eb3aaf947f6ea42908000080e38f185207498abb5c213d0fb059b3d84e7b9012096b41c4eb3aaf947f6ea42908000080e38f185207498abb5c213d0fb059b3d86323ae84c43568be0d1394d5d0d522c4100200000080f0c365c3cf59d671eb72da0e7a4113c44e7b9012096b41c4eb3aaf947f6ea429080000

Authorize Upgrade

This message authorizes the upgrade of Shell to a runtime with a given hash (statemint_runtime-v601.compact.compressed.wasm). Once the upgrade is authorized, anyone can submit the runtime via parachain_system.enact_authorized_upgrade, and it will upgrade 600 blocks (approximately 1 hour) later.

Call data: 0x0103af49687b93d91fc08c1fcea1001d724a95c533a949019645d3e4179beedbf67e

Polkadot Proposal

This proposal is to schedule these messages to dispatch from Polkadot to Shell. They will dispatch 5 and 20 blocks after enactment to ensure each is processed separately. We give them plenty of weight (100 billion and 1 billion, respectively) to ensure they execute.

Call hash: 0xa6830793b6a3473f66fbd7305a9e330dd2dd688df0e8fcbd0c9ff08d28040a34


Reply
Up
Share
Business
Call
Metadata
Timeline4
Comments
No comments here