-
Notifications
You must be signed in to change notification settings - Fork 57
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
ON HOLD: Flexible Inflation #89
Conversation
as proposed in the JAM grayparper. | ||
|
||
Within the scope of this RFC, we suggest deploying the new inflation pallet in a backwards | ||
compatible way, such that the inflation model does not change in practice, and leave the actual |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this mean pallet-inflation
would still take into account parachain slots for the inflation calculation? Since crowdloans are deprecated and core time in, I am wondering the relevancy of current logic (i.e. we might hit the saturation point of 60 slots pretty easily). May be we can push a sensible (and conservative) change in the first iteration itself?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are parameterizing the ideal staking rate already which makes sense 👍.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It could take the auctions into account, but that is not correct anymore.
What I propose is to also alter the existing inflation rate to a fixed idea rate (eg. 75%), no longer taking the auctions into account.
My wording here is confusing, I will correct it.
portion of inflation directly into a key-less account controlled by `pallet_staking`. At the end | ||
each era, `pallet_staking` will inspect this account, and move whatever amount is paid out into it | ||
to another key-less account associated withe era number. The actual payouts, initiated by stakers, | ||
will transfer from this era account into the corresponding stakers' account. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What would happen if some era rewards go unclaimed (for more than 84 eras)?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
pallet-staking
removes all era points of an era n
once 84 eras have been passed. It should similarly burn any funds that are left in the pot account of era n
. I believe the WIP implementation should already be doing that.
Co-authored-by: Ankan <[email protected]>
Co-authored-by: Gonçalo Pestana <[email protected]>
Co-authored-by: joe petrowski <[email protected]>
Co-authored-by: joe petrowski <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nice!
thank you for the proactive approach!
What Gov wants:
How could the extrinsic for it look like? I think if we start from the extrinsic, we can deliberate if the feature set is matching this wish or not |
Thank you for your comment @Tomen! On points 1 and 2, the RFC implementation will indeed open many many doors. I did not mention a lot of them to keep the text concise, but I will advertise the possibilities more in the introductory sections. In general, the exercise that we should do is for community members and stakeholders to propose a written description of what they wish to see, and I will showcase an example of what hte code for it would look like in this RFC. You have already done this in your comment, and I will get to it next:
Before doing this exercise in your example, I want to ask you: What do you mean here by 10% or 30%? 10% of whatever is left of the 100m at this point, or 10% of the total? In general, the rule of thumb with making such things configurable via governance is that it is easy to express a value to be parameterized over governance. For example, the value 100m or the value 10%. But, it is harder to express a function in a parameterize-able way. For example, in your example, the overall inflation function is:
It is quite easy to tweak the At the moment, my RFC mainly focused on having a fixed function defined in the runtime code (upgrade-able via code upgrade) tweak-able values (upgrade-able via any governance means). It is possible to add some degree of parameterization to the function part as well. But, it is worth asking if that is needed or not as it would be another possibly over-engineered aspect. |
I am deliberately closing this RFC because I am seeing that it is realizing more confusion than good. The path so far:
The state of affairs:
|
Update July 17: Please note that this RFC for now is "on hold" until we add some basic parameterization to the relay-chain(s) as per polkadot-fellows/runtimes#364. This PR is a small subset of this RFC. Once this work is done, we can explore this RFC again.