Compounding Maturity - NNS implementation update

Of course ! Thank you very much @bjoernek ! I was reading, in the text you quoted, « 10 maturity » as « maturity worthing 10 ICP once the modulation applied ».

Thanks a lot :pray: (my mistake @Dylan ! :wink:)


Amen. The most successful L1s will be the most simple and most stable.

1 Like

@bjoernek one question regarding the timeline of implementation for this proposal.

What does the timeline around the different rollouts of the compounding maturity feature look like?

Specifically, as one of the main functions of this proposal is to be able to convert maturity from to staked_maturity (instead of the current merged_maturity), when can NNS voters expect this to happen? The reason why I say this, is that if this feature is coming out soon, it may make sense for certain voters who were originally concerned about taxes and wanted this proposal to hold off on spawning neurons or merging maturity until the feature is released.

Since one of the primary reasons this proposal was brought forth was to decrease ICP selling pressure for tax reasons, having a more concrete timeline around this feature’s delivery should give these early/seed investors more clarity and therefore a reason to hold off on spawning neurons and selling their ICP if the staked_maturity conversion feature is close enough to completion.

1 Like

Cross-posting from the Community fund thread:
Maybe I am misreading here, but it seems that through this method, maturity is calculated as equivalent to a certain amount of ICP at a given time.
Does this not go against the grain of the tax-related proposal which aims to obscure how much exactly maturity is worth by adding a modulating mechanism at dissolution? In other words, if we can calculate exactly how much the maturity in a neuron contributing to the community fund is worth, would that not also apply to the maturity of all other neurons, which can then be used by tax authorities to determine taxable income?

Hi @justmythoughts, apologies for the late reply (I was on PTO).

In the moment the engineering team focuses on the big SNS release targeting September.

Subsequently further governance items will be tackled (periodic confirmation, manual voting, staked maturity, etc). The precise order is not yet defined.

So I cannot give you a good estimate for the timeline of staked maturity yet.

1 Like

Hi all,

here is an update on the work of the motion proposal on Compounding maturity.

  1. The work on staking maturity (which replaces merge maturity) progressed well and I expect that this will be released for for the NNS II UX towards end of this week or next week.
  2. In a subsequent step, this will be also introduced for the NNS hardware wallet UX and for NNS quill.
  3. I have written a short wiki page giving an overview on neuron operations related to maturity which is here. Feedback is very welcome.
  4. Following up on the suggestions in this thread to support automatic re-staking of the newly minted ICP, this could be done by enhancing the future disburse maturity functionality. This would provide a similar functionality to the previous merge function, but with the 7 day delay & modulation applied. DFINITY is looking into how best to support this.

Hi all, the release proposal for introducing staking maturity in the NNS II UX (step 1 mentioned above) is planned to be submitted today.

1 Like

Would point 4 be used to move maturity between neurons? Cause if the only way to do it implies being subject to modulation then I doubt it will be done that often and surely not automatically.

Moving maturity between neurons is usually done to optimize long term yield, APY for an 8 year lockup is already low considering the timeframe and the uncertainty, so if it’s 19%, I want 19%, but if modulation is applied in a downturn the APY won’t actually be 19% due to having lost a % of tokens due to modulation, so instead of auto compound disbursed maturity it’s better to wait for timeframes with positive modulation, so one can get the full APY + modulation bonus.

1 Like

To my understanding, point 4 was mainly requested as a way to automate the workflow “spawn maturity to ICP” and “stake this ICP”. This was raised by several people in this thread and also in other forum entries.

1 Like

Dear @bjoernek,

Thank you for letting us know.

This is wonderful. Thank you for having taken this request in charge ! :pray:

1 Like

John, I can not even express how much I agree with you! I have been 100% opposing this proposal from the very beginning and still think it is a very, very bad idea! See my original post for the reasons opposing here: Request for feedback: Compounding Maturity Proposal - #131 by khm I think those reasons still hold very true! Thank you for honestly expressing your view on this topic!

The staked maturity is basically added to the neuron like before, right? And it will increase the voting power of that neuron and therefore rewards, correct?

This is correct. Staked maturity adds to your voting power (and hence voting rewards) in the same way as staked ICP does.


Hi all,

Here is a further implementation update on the work of the motion proposal for maturity enhancements.


As previously communicated, staking maturity was rolled out for NNS Internet Identity. As a next step, this is planned to be released also for NNS hardware wallet controlled neurons and NNS Quill. A wiki page giving an overview on neuron operations related to maturity which is here.

In order to reflect changes in functionality for NNS hardware wallet controlled neurons Zondax needs to update the Ledger app. Hence, we aligned a roll-out plan with Zondax as the provider of the app.

Planned next steps

Tuesday 20 Dec

  • Release update of the NNS Front-end app. This disables the “Merge maturity” button for the current Ledger app 2.0.6. It enables the button “Stake maturity” for the future version of the Ledger app 2.0.7.
  • Release update of the NNS back-end. This redirects calls from “Merge maturity to staking maturity.
  • Release an update of NNS Quill, replacing “Merge maturity” by “Stake maturity”. One can already now download the source code, compile it and stake maturity.

Wednesday 21 Dec:

  • Ledger releases Ledger app 2.0.7. Calls to the merge maturity (being now routed to stake maturity in the NNS back-end) will be displayed as stake maturity on the display of the Ledger device.

In a second phase, once a more comprehensive update of the Ledger app is available (which will also include auto-stake maturity), merge maturity will be disabled in the NNS back-end.

What do you need to know as a user of a Ledger device?

After Tuesday 20 Dec, users of Ledger app version 2.0.6 will be able to continue to the Ledger device, but will not be able to stake maturity (nor the former merge maturity). Users who update to the Ledger app version 2.0.7 on Wednesday 21 Dec, will be able to stake maturity.

What do you need to know as a user of NNS Quill?

Users are encouraged to update to the latest version of NNS Quill, which replaces the neuron manage command “–merge-maturity” by “–stake-maturity”. Users who continue to use prior versions of NNS Quill should be conscious of the fact that calling merge-maturity will result in staking maturity.

1 Like

Hi, does this include the ability to auto-stake maturity, or is that in a future release?

Good question! Auto-stake maturity will be part of the more comprehensive update. I will mention this explicitly in the above post.

1 Like

Dear @bjoernek,

Thank you for letting us know ! Do you still plan to perfect later the auto-staking feature by adding this following complexification :

Best regards

Yes @Roman, this is still the plan!
We have to build anyway build a disbursal operation for the NNS, and as per community input this should include the ability to automatically re-stake (e.g. via a flag).

This is wonderful ! Thanks a lot for your dedication @bjoernek ! :pray:

1 Like

Thanks ! Do we have a sense of when auto stake will be enabled for ledger devices ?