Staking Update: October-November 2022
Nomination Pools Launched
The big news of Polkadot staking in the last two months has been the launch of nomination pools! A lot has been said about them in public, so we will only focus on some other, slightly more technical aspects here.
Foremost, the launch day was a memorable one. First, some (unexpected, unlike Kusama) chaos was brought upon the community when the initial proposal which was supposed to enable pools passed and no new pools could yet be created. The issue was quickly discovered, and luckily, thanks to both the council and technical committee being available, within half a day, a fix motion was proposed, fast-tracked by the technical committee, unanimously voted aye by the community, and executed. With that, at block 12726652, the first nomination pools on Polkadot were created.
Then, an interesting competition to obtain pool id 1 was unraveled. Within the first block, 8 pools was already created, indicating that interested participants used bots and transaction tips to compete with one another.
Within the next few days, all the 64 pools that were initially designated to exist were created. As noted in the proposal description, the 64 limit is merely a temporary measure of rate control, and there is no technical reason for it to exist. Nonetheless, history has shown us that it is for the benefit of the protocol to start slow, especially with a new feature.
You can learn more about the aftermath of launching pools in the 9th episode of the AGG podcast.
Nomination Pools: What's Next?
With the initial launch behind us, we should discuss the immediate next steps that could follow:
Commission: Our initial assumption when designing nomination pools was to exclude commission, namely because:
- Running a pool has not hardware cost, unlike a validator.
- Entities would have other, non-financial incentives to operate a pool.
Nonetheless, from a framework perspective, we decided to add an optional commission to the
pallet-nomination-pools in Substrate (the underlying SDK for building Polkadot and parachains) for the sake of completeness. We will make sure that this feature remains optional, and the final decision of enabling it is left out to the Polkadot community.
Moreover, we still predict that even if setting a commission is allowed, nomination pools' market will adjust around an extremely small commission, as most pool operators would run their pool with a small amount of commission.
Governance: Currently, DOT (and KSM) staked in the nomination pools are not directly usable in the governance. This is the next high priority item in our list, and we are currently exploring multiple ways to enable it.
Staking In Governance
Other than the proposals related to enablement of nomination pools, two other staking-related governance items are ongoing.
First, a discussion/proposal is ongoing to double the number of nomination pools from 64 to 128. This is expected, and we highly support it. Pools are highly scalable and the community should gradually move toward using it to its utmost extent.
Next, a proposal has been opened to tweak the existing limits on nominators. The proposal description is fairly extensive, but to summarize: The proposal argues that with the existence of nomination pools, and the fact that the threshold to be an active nominator is around 200 DOT, Polkadot should no longer accept nominator with 10 DOT (existing limit). The proposal suggest increasing this limit to 100 DOT. Also, the proposal is removing any limits on the total number of nominator, as this number has also been just a precautionary limit and is no longer needed.
With the release of nomination pools, it could be argued that Polkadot's staking is (after almost a year of intense development) at a "stable" position. Namely, it has reached a point of having a high degree of scalability, without compromising on the core benefits of NPoS. We are exploring future directions that can be taken as next step, and will share them with the community through the Polkadot forum within the next few months. This is the best time to share your opinions on this through any of the following mediums:
- Making an issue in Substrate.
- Opening a discussion thread in the Polkadot forum.
- Nomination Pools Technical Support Channel.
In the meantime, you can find a backlog of all the existing issues and enhancement in the Nominated Proof of Stake project in Substrate.
Fast-Unstake Being Tested in UIs
Fast-unstake, explained in last staking update, is being actively implemented in multiple wallets and UIs, and is already available in Westend.
Notable Pull Requests
- Re-claiming pool-ids is now possible: https://github.com/paritytech/substrate/pull/12407.
- Permissionless auto-compounding: https://github.com/paritytech/substrate/pull/12608.
Thanks to @Doordaschon for their valuable contributions!
Staking Dashboard: One Month In
One month has already passed since staking dashboard’s initial release. In this period the dashboard has been visited almost 30,000 times, and this has allowed us to begin battle testing and identifying bugs and shortfalls.
We are now analysing the dashboard and identifying areas of improvement, and you can expect revisions to the UI to be rolled out in the near future as we continue to aggregate feedback and form the dashboard’s long term roadmap.
Some notable additions to the dashboard this month include:
- A revamped filtering system and filter UI that has been applied to validators and pool lists. These new filters allow easier toggling between inclusions, exclusions and list ordering, in addition to supporting search terms.
- The validator list now defaults to only displaying currently active validators that have an identity, are not blocked and do not charge 100% commission.
- The pools list now defaults to only display pools that are actively nominating, and who are not in a blocked or destroying state.
Moment.jshas been deprecated in favour of native dates and helpers from
- Validator operator SVG icons now load lazily, and do not contribute to the app’s main bundle size.
- Localisation support continues to be integrated and the dashboard is almost ready to support Chinese as its second language. We encourage any interested external contributors to help with translations.
- Various bug fixes and performance improvements.
From the blog
Elevating Polkadot's Performance and Scale with Asynchronous Backing
Asynchronous backing is the latest step in the roadmap towards natively scaling Polkadot’s performance and flexibility for Web3 use cases across every industry.