The NNS Team will be submitting the following upgrade proposals this Friday, 2024-06-21. DFINITY plans to vote on these proposals the following Monday.
Proposals to be Submitted
Governance
## Proposal to Upgrade the Governance Canister
### Proposer: DFINITY Foundation
### Git Hash: b39f782ae9e976f6f25c8f1d75b977bd22c81507
### New Wasm Hash: ee407c6f48c892f8f6bd2cc6558d7d897d89b1990c931125ba48bd9513e7c425
### Target canister: rrkah-fqaaa-aaaaa-aaaaq-cai
---
## Features
* Do not require NNS neuron controller to be self-authenticating
* Add metrics for neurons controlled by non-self-authenticating principals
## Release Notes
```
$ git log --format="%C(auto) %h %s" d1504fc4265703c5c6a73098732a4256ea8ff6bf..b39f782ae9e976f6f25c8f1d75b977bd22c81507 -- ./rs/nns/governance
c549e32a8a chore: upgrade crates and use workspace versions
2bbcb253b2 Merge branch 'gdemay/XC-92-upgrade-canbench' into 'master'
c20c537ab7 chore: upgrade `canbench`
2ebdd6f885 Merge branch 'canister-controlled-neuron-metrics-daniel-wong' into 'master'
97a9c215dc feat(nns): Metrics for neurons controlled by non-self-authenticating principals.
da02705960 chore: Bump rust version to 1.79
688ae3b261 Merge branch 'canister-controlled-neurons-daniel-wong' into 'master'
aaf368b208 feat(nns): Do not require NNS neuron controller to be self-authenticating.
ba49f365c5 Merge branch 'jason/NNS1-2951' into 'master'
b0ea17e402 refactor(nns): NNS1-2951 Remove legacy cases of neuron dissolve state and age
e84f03cee2 chore: mockall and criterion upgrade
695a0affa9 chore: Bump rust version to 1.78
212446df0a refactor(nns): Move combine_aged_stakes to neuron module and add tests
b8aafa2f93 chore(nns): NNS1-3068 Clean up migration code for neuron state & age normalization
f6951cf1a7 chore: upgrade external crates and use workspace version
2d7dfc0135 chore: upgrade tempfile version and use the workspace. version everywhere
f455700243 chore: use the rand version from the Cargo workspace
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout b39f782ae9e976f6f25c8f1d75b977bd22c81507
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/governance-canister.wasm.gz
```
## Current Version
- Current Git Hash: d1504fc4265703c5c6a73098732a4256ea8ff6bf
- Current Wasm Hash: f5bfed9622c2a0544aef38319e2a442677e0566025b27f4ea18c64292cf4e03d
Registry
## Proposal to Upgrade the Registry Canister
### Proposer: DFINITY Foundation
### Git Hash: b39f782ae9e976f6f25c8f1d75b977bd22c81507
### New Wasm Hash: 21788e6c715ce1dd6189151f32b6b3216ed7df9e97935ab11bd3c227c335225c
### Target canister: rwlgt-iiaaa-aaaaa-aaaaa-cai
---
## Features
* These changes are in preparation for the upcoming [https://forum.dfinity.org/t/threshold-schnorr-facilitating-brc-20-trading-solana-integration-certificate-signing-and-more/28993](Threshold Schnorr feature).
* Registry subnet records now support more generic master public keys, enabling the threshold Schnorr signature scheme in addition to (priorly supported) threshold ECDSA scheme.
* Since the ECDSA-specific data has already been migrated to the generic format, this release switches the source of truth from the legacy to the new format.
* The following NNS governance proposals have been extended to support the new generic master public keys: Create Subnet, Update Subnet Config, Recover Subnet.
* The Registry now allows for new master public keys to be added to an existing signing subnet. Removing keys held by a signing subnet is still forbidden.
## Release Notes
```
$ git log --format="%C(auto) %h %s" 77dafef0cca09488c9e0b9c5a0437851ec1be0ce..b39f782ae9e976f6f25c8f1d75b977bd22c81507 -- ./rs/registry/canister
b09876a407 feat(registry): Enhance validation for `UpdateSubnetPayload`
c4156d3c9f feat(registry): Implement `RecoverSubnetPayload.chain_key_config`
b7bb136fc2 feat(ecdsa): [CON-1232] Allow adding new keys to an ECDSA subnet
09d89b2a1c feat(registry): Implement `CreateSubnetPayload.chain_key_config`
2026e1e5f0 feat(registry): Implement `UpdateSubnetPayload.{chain_key_config, chain_key_signing_{en, dis}abled}`
ed9b613c47 Merge branch 'arshavir/NNS1-3006' into 'master'
e238194f11 feat(registry): Switch to new source of truth for master public keys in subnet records
c549e32a8a chore: upgrade crates and use workspace versions
6e913a9130 chore(registry): Remove dangling API type from registry.did
4227bcf590 Merge branch 'rumenov/removemorep2p' into 'master'
c9ff688e16 chore: remove legacy gossip config
da02705960 chore: Bump rust version to 1.79
695a0affa9 chore: Bump rust version to 1.78
bae2eb352d Merge branch 'arshavir/NNS1-3021' into 'master'
8a3ac1dacd chore(registry): Delete obsolete `Registry.delete_subnet` code [override-didc-check]
568bac66f4 chore(CON-1292): Migrate replica to read chain key config from registry
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout b39f782ae9e976f6f25c8f1d75b977bd22c81507
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/registry-canister.wasm.gz
```
## Current Version
- Current Git Hash: 77dafef0cca09488c9e0b9c5a0437851ec1be0ce
- Current Wasm Hash: 6322c00849cc719a069242f6fbddc007ff7432be41c7385a17db0aad71733511
Sns-wasm
## Proposal to Upgrade the Sns-wasm Canister
### Proposer: DFINITY Foundation
### Git Hash: b39f782ae9e976f6f25c8f1d75b977bd22c81507
### New Wasm Hash: 394b936be4af54ad27c1eb44537202549ad8c23445b34f08d4db1ae9e983ed01
### Target canister: qaa6y-5yaaa-aaaaa-aaafa-cai
---
## Features
* NNS root co-controls dapp canisters until the swap is finished
## Release Notes
```
$ git log --format="%C(auto) %h %s" 77dafef0cca09488c9e0b9c5a0437851ec1be0ce..b39f782ae9e976f6f25c8f1d75b977bd22c81507 -- ./rs/nns/sns-wasm
b78d090def feat(sns): NNS1-3116: NNS root co-controls dapp canisters until the swap is finished
```
## Wasm Verification
Verify that the hash of the gzipped WASM matches the proposed hash.
```
git fetch
git checkout b39f782ae9e976f6f25c8f1d75b977bd22c81507
./gitlab-ci/container/build-ic.sh -c
sha256sum ./artifacts/canisters/sns-wasm-canister.wasm.gz
```
## Current Version
- Current Git Hash: 77dafef0cca09488c9e0b9c5a0437851ec1be0ce
- Current Wasm Hash: ac826b139c287da4c2f2dd7f7b3d06d47840d81f0d98f7a8c710dc88666c1506