A new proposal to upgrade the NNS dapp has just gone live. Proposal 136435 is ready, please consider voting
This upgrade introduces SNS topics support, which improves two key areas:
Topic-based voting delegation — users can now follow neurons by SNS topic (if supported by SNS) instead of by individual proposal types (NS-functions).
To build the wasm module yourself and verify its hash, run the following commands from the root of the nns-dapp repo:
git fetch # to ensure you have the latest changes.
git checkout "d3fc4f088806f3a5178133c4935e2a2dafdf4c29"
git merge-base --is-ancestor HEAD origin/main && echo "OK" || echo "Commit is not on main branch!"
./scripts/docker-build
sha256sum nns-dapp.wasm.gz
You may also want to verify the canister arguments. In the proposal they are
binary, which is not very readable. Docker provides both binary and text formats
and you can verify that the text format corresponds to the binary arg_hash
This is going to be a big improvement. Thank you so much to the DFINITY team for implementing features that will improve the user experience for configuring Followees.
For two reasons, DFINITY rejected NNS proposal 136435 and asks the other voting neurons to do the same.
There is a missing confirmation in one flow where users are not properly warned about the consequence of their actions.
A proposal will be submitted to make an additional SNS topic “DAO community settings” critical (see here). It is easier for users to get used to one new UI after all changes rather than seeing two changes within a short time.
1. Missing confirmation flow
Background
Currently, “Catch-all” followees are displayed under every non-critical topic as regular legacy following tags. Due to the nature of this specific type, unfollowing it results in being unfollowed from all non-critical topics.
That’s why there’s a dedicated flow to deactivate the “Catch-all” following — including an extra confirmation step where the user can review the consequences of their action.
The issue
In the frontend as it would be released in the proposal 136435, users can click the X button on the “Catch-all” tag under a topic description to remove it — without any confirmation. This is suboptimal behavior because users might assume they’re only removing the “Catch-all” for that specific topic. As a result, they could unintentionally lose their current “Catch-all” setup.
Proposed Change
To avoid this confusion, the plan is to allow removing the “Catch-all” following only via the “Deactivate catch-all” button and to always show the confirmation step.
2. Proposing the topic “DAO community settings” to be critical
As requested by the community, a proposal is planned to make the topic “DAO community settings” critical. You can read up on the details in this post.
Introducing the new topic-based following today, where only 2 proposal topics are critical, and soon following up with another release that moves another topic to be critical might be confusing for users. It is easier for users to introduce all changes in one release so that users only have to get familiar with a new UI once. Therefore, we think it is better to defer the frontend release until the NNS has decided whether an additional topic should be critical.
A new proposal to upgrade the NNS dapp has just gone live (Proposal 136473).
This update fixes the “Missing confirmation flow” and includes several minor enhancements to the voting delegation experience. Please consider voting
Change Log
Added
Topic-based filtering for SNS proposals
Topic-based SNS neuron voting delegation
Wasm Verification
To build the wasm module yourself and verify its hash, run the following commands from the root of the nns-dapp repo:
git fetch # to ensure you have the latest changes.
git checkout "7ce5a491f73e70b201780d2afc5b5b2abbc63358"
git merge-base --is-ancestor HEAD origin/main && echo "OK" || echo "Commit is not on main branch!"
./scripts/docker-build
sha256sum nns-dapp.wasm.gz
You may also want to verify the canister arguments. In the proposal they are
binary, which is not very readable. Docker provides both binary and text formats
and you can verify that the text format corresponds to the binary arg_hash
field in the proposal.