Skip to content

[NPoS] Mint fixed portion of inflation directly into the treasury #403

Closed
@gpestana

Description

It's been proposed and discussed a change to the current inflation model where a fixed portion of the inflation is minted directly into the treasury, while the remaining portion is distributed as rewards as per the current mechanism. The main goal is to ensure the sustainability of the treasury in the long term (more info in this thread).

In addition, it would be helpful to allow governance to change the percentage of inflation minted into the treasury.

Implementation suggestions

  1. fn era_payout calculates the portion of payout that is distributed among stakers (validator_payout) and the treasury based on perthing TreasuryFraction, in storage.
  2. The validator payout stored in ErasValidatorReward is total_payout - total_payout * TreasuryFraction. From here on, the logic of the stakers' rewards remains the same.
  3. The treasury portion for that era is minted at the end of the era into Treasury::account_id() (another option would be to cache treasury rewards and mint into the treasury pot every X eras, but probably not worth the effort/storage).
  4. New extrinsic to update TreasuryFraction perthing, gated by root.

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions