SNS Updates 2025-01-24

This week, the Governance and and Financial Integration teams are proposing four upgrades for the SNS framework. Affected canister(s):

Affected canisters:

Proposal summaries are copied verbatim bellow.

SNS Governance

# Publish SNS Governance WASM Built at Commit 03393bc

__Proposer__: arshavir.ter.gabrielyan at dfinity.org

__Source code__: [03393bc817da78cdc27190eaa388b8f6f8990365][new-commit]

[new-commit]: https://github.com/dfinity/ic/tree/03393bc817da78cdc27190eaa388b8f6f8990365

## Features & Fixes

###  Added

* Enable SNSs to opt in for
[automatically advancing its target version](https://forum.dfinity.org/t/proposal-opt-in-mechanism-for-automatic-sns-target-version-advancement)
to the newest version blessed by the NNS. To do so, please submit a `ManageNervousSystemParameters` 
proposal, e.g.:

    ```bash
    dfx canister --ic call ${SNS_GOVERNANCE_CANISTER_ID} manage_neuron '(
        record {
            subaccount = blob "'${PROPOSER_SNS_NEURON_SUBACCOUNT}'";
            command = opt variant {
                MakeProposal = record {
                    url = "https://forum.dfinity.org/t/proposal-opt-in-mechanism-for-automatic-sns-target-version-advancement";
                    title = "Opt for automatic advancement of SNS target versions";
                    action = opt variant {
                        ManageNervousSystemParameters = record {
                            automatically_advance_target_version = opt true;
                        }
                    };
                    summary = "Enable automatically advancing the target version \
                            of this SNS to speed up the delivery of SNS framework \
                            upgrades that were already blessed by the NNS.";
                }
            };
        },
    )'
    ```
* Do not redact chunked Wasm data in `ProposalInfo` served from `SnsGov.list_proposals`.


## New Commits

```
$ git log --format="%C(auto) %h %s" a5878586e47536d4cd47f0aadb66b73df8131d2b..03393bc817da78cdc27190eaa388b8f6f8990365 --  ./rs/sns/governance
 44d54e5be8 feat(sns): `SnsGov.list_proposals` includes `chunked_canister_wasm` (#3585)
 f569791cc7 docs(governance): Added 2025-01-20 CHANGELOG.md entries. (#3535)
 1edf4a1af4 feat(sns): Automatically advance SNS target version upon opt-in (#3119)
 fc2787097c chore: bump rust to 1.84 (#3469)
```


## Wasm Verification

See the general instructions on [how to verify] proposals like this. A "quick
start" guide is provided here.

[how to verify]: https://github.com/dfinity/ic/tree/03393bc817da78cdc27190eaa388b8f6f8990365/rs/nervous_system/docs/proposal_verification.md

See ["Building the code"][prereqs] for prerequisites.

[prereqs]: https://github.com/dfinity/ic/tree/03393bc817da78cdc27190eaa388b8f6f8990365/README.adoc#building-the-code

```
# 1. Get a copy of the code.
git clone git@github.com:dfinity/ic.git
cd ic
# Or, if you already have a copy of the ic repo,
git fetch
git checkout 03393bc817da78cdc27190eaa388b8f6f8990365

# 2. Build canisters.
./ci/container/build-ic.sh -c

# 3. Fingerprint the result.
sha256sum ./artifacts/canisters/sns-governance-canister.wasm.gz
```

This should match `wasm` field of this proposal.

SNS Index

# Publish SNS Index WASM Built at Commit c741e34

__Proposer__: arshavir.ter.gabrielyan at dfinity.org

__Source code__: [c741e349451edf0c9792149ad439bb32a0161371][new-commit]

[new-commit]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371

## Features & Fixes

This release does not contain any externally observable changes.


## New Commits

```
$ git log --format="%C(auto) %h %s" 2190613d3b5bcd9b74c382b22d151580b8ac271a..c741e349451edf0c9792149ad439bb32a0161371 --  ./rs/ledger_suite/icrc1
 c741e34945 feat: ICRC-ledger: FI-1439: Implement V4 for ICRC ledger - migrate balances to stable structures (#2901)
 575ca531a7 chore(ICRC_Index): FI-1468: Remove old ICRC index canister (#3286)
 a163371238 chore(ICRC_Index): FI-1605: Remove old ICRC Index benchmark (#3229)
 8d4fcddc6e test(ICRC_Index): FI-1617: Optimize retrieve_blocks_from_ledger_interval tests (#3236)
 ddadaafd51 test(ICP_Ledger): FI-1616: Fix ICP ledger upgrade tests (#3213)
 dfc3810851 fix(ICRC-Ledger): changed certificate version (#2848)
 b006ae9934 feat(ICP-ledger): FI-1438: Implement V3 for ICP ledger - migrate allowances to stable structures (#2818)
 e369646b76 fix: Use default rust edition instead of specifying it in the BUILD rules (#3047)
 2456414f7a fix: Use workspace rust edition instead of specifying it in the Cargo.toml file (#3049)
 0485f09ccc test(ICRC_Ledger): FI-1595: Check ledger metrics in ICRC golden state test (#2960)
```


## Wasm Verification

See the general instructions on [how to verify] proposals like this. A "quick
start" guide is provided here.

[how to verify]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371/rs/nervous_system/docs/proposal_verification.md

See ["Building the code"][prereqs] for prerequisites.

[prereqs]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371/README.adoc#building-the-code

```
# 1. Get a copy of the code.
git clone git@github.com:dfinity/ic.git
cd ic
# Or, if you already have a copy of the ic repo,
git fetch
git checkout c741e349451edf0c9792149ad439bb32a0161371

# 2. Build canisters.
./ci/container/build-ic.sh -c

# 3. Fingerprint the result.
sha256sum ./artifacts/canisters/ic-icrc1-index-ng.wasm.gz
```

This should match `wasm` field of this proposal.

SNS Ledger

# Publish SNS Ledger WASM Built at Commit c741e34

__Proposer__: arshavir.ter.gabrielyan at dfinity.org

__Source code__: [c741e349451edf0c9792149ad439bb32a0161371][new-commit]

[new-commit]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371

## Features & Fixes

This release migrates the account balances in the ledger from the heap to stable structures.


## New Commits

```
$ git log --format="%C(auto) %h %s" 2190613d3b5bcd9b74c382b22d151580b8ac271a..c741e349451edf0c9792149ad439bb32a0161371 --  ./rs/ledger_suite/icrc1 ./rs/ledger_suite/common/ledger_core ./rs/ledger_suite/common/ledger_canister_core
 c741e34945 feat: ICRC-ledger: FI-1439: Implement V4 for ICRC ledger - migrate balances to stable structures (#2901)
 575ca531a7 chore(ICRC_Index): FI-1468: Remove old ICRC index canister (#3286)
 a163371238 chore(ICRC_Index): FI-1605: Remove old ICRC Index benchmark (#3229)
 8d4fcddc6e test(ICRC_Index): FI-1617: Optimize retrieve_blocks_from_ledger_interval tests (#3236)
 ddadaafd51 test(ICP_Ledger): FI-1616: Fix ICP ledger upgrade tests (#3213)
 dfc3810851 fix(ICRC-Ledger): changed certificate version (#2848)
 b006ae9934 feat(ICP-ledger): FI-1438: Implement V3 for ICP ledger - migrate allowances to stable structures (#2818)
 e369646b76 fix: Use default rust edition instead of specifying it in the BUILD rules (#3047)
 2456414f7a fix: Use workspace rust edition instead of specifying it in the Cargo.toml file (#3049)
 0485f09ccc test(ICRC_Ledger): FI-1595: Check ledger metrics in ICRC golden state test (#2960)
```


## Wasm Verification

See the general instructions on [how to verify] proposals like this. A "quick
start" guide is provided here.

[how to verify]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371/rs/nervous_system/docs/proposal_verification.md

See ["Building the code"][prereqs] for prerequisites.

[prereqs]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371/README.adoc#building-the-code

```
# 1. Get a copy of the code.
git clone git@github.com:dfinity/ic.git
cd ic
# Or, if you already have a copy of the ic repo,
git fetch
git checkout c741e349451edf0c9792149ad439bb32a0161371

# 2. Build canisters.
./ci/container/build-ic.sh -c

# 3. Fingerprint the result.
sha256sum ./artifacts/canisters/ic-icrc1-ledger.wasm.gz
```

This should match `wasm` field of this proposal.

Archive

# Publish SNS Archive WASM Built at Commit c741e34

__Proposer__: arshavir.ter.gabrielyan at dfinity.org

__Source code__: [c741e349451edf0c9792149ad439bb32a0161371][new-commit]

[new-commit]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371

## Features & Fixes

This release does not contain any externally observable changes.


## New Commits

```
$ git log --format="%C(auto) %h %s" 2190613d3b5bcd9b74c382b22d151580b8ac271a..c741e349451edf0c9792149ad439bb32a0161371 --  ./rs/ledger_suite/icrc1
 c741e34945 feat: ICRC-ledger: FI-1439: Implement V4 for ICRC ledger - migrate balances to stable structures (#2901)
 575ca531a7 chore(ICRC_Index): FI-1468: Remove old ICRC index canister (#3286)
 a163371238 chore(ICRC_Index): FI-1605: Remove old ICRC Index benchmark (#3229)
 8d4fcddc6e test(ICRC_Index): FI-1617: Optimize retrieve_blocks_from_ledger_interval tests (#3236)
 ddadaafd51 test(ICP_Ledger): FI-1616: Fix ICP ledger upgrade tests (#3213)
 dfc3810851 fix(ICRC-Ledger): changed certificate version (#2848)
 b006ae9934 feat(ICP-ledger): FI-1438: Implement V3 for ICP ledger - migrate allowances to stable structures (#2818)
 e369646b76 fix: Use default rust edition instead of specifying it in the BUILD rules (#3047)
 2456414f7a fix: Use workspace rust edition instead of specifying it in the Cargo.toml file (#3049)
 0485f09ccc test(ICRC_Ledger): FI-1595: Check ledger metrics in ICRC golden state test (#2960)
```


## Wasm Verification

See the general instructions on [how to verify] proposals like this. A "quick
start" guide is provided here.

[how to verify]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371/rs/nervous_system/docs/proposal_verification.md

See ["Building the code"][prereqs] for prerequisites.

[prereqs]: https://github.com/dfinity/ic/tree/c741e349451edf0c9792149ad439bb32a0161371/README.adoc#building-the-code

```
# 1. Get a copy of the code.
git clone git@github.com:dfinity/ic.git
cd ic
# Or, if you already have a copy of the ic repo,
git fetch
git checkout c741e349451edf0c9792149ad439bb32a0161371

# 2. Build canisters.
./ci/container/build-ic.sh -c

# 3. Fingerprint the result.
sha256sum ./artifacts/canisters/ic-icrc1-archive.wasm.gz
```

This should match `wasm` field of this proposal.
3 Likes