-
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
Referendum Deposit Track #73
base: main
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
# RFC-0073: Decision Deposit Referendum Track | ||
|
||
| | | | ||
| --------------- |--------------------------------------------------------------------------------| | ||
| **Start Date** | 12 February 2024 | | ||
| **Description** | Add a referendum track which can place the decision deposit on any other track | | ||
| **Authors** | JelliedOwl | | ||
|
||
## Summary | ||
|
||
The current size of the decision deposit on some tracks is too high for many proposers. As a result, those needing to use it have to find someone else willing to put up the deposit for them - and a number of legitimate attempts to use the root track have timed out. This track would provide a more affordable (though slower) route for these holders to use the root track. | ||
|
||
## Motivation | ||
|
||
There have been recent attempts to use the Kusama root track which have timed out with no decision deposit placed. Usually, these referenda have been related to parachain registration related issues. | ||
|
||
## Explanation | ||
|
||
Propose to address this by adding a new referendum track ***[22] Referendum Deposit*** which can place the decision deposit on another referendum. This would require the following changes: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. What you are asking in fact is to just reduce the deposit to 1000 DOT. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's not quite the same since the number of deciding referenda on the root track is small (I think), so I definitely wouldn't be advocating for reducing the DD there without also increasing the number which could in deciding at any one time. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I must respectfully disagree. Placing a decision deposit directly on a referendum is permissionless whereas this RFC proposes a permissioned way to place a decision deposit via OpenGov. A referendum that seeks to place a decision deposit is fundamentally different from a referendum that seeks to execute an action. Voting in favor of the former signals, "I want this referendum to be decided on by token holders without the disincentive of slashing" whereas voting in favor of the latter signals, "I want this action to be executed on chain." These are two very different statements. If a majority of token holders agree on the former, why shouldn't that be allowed? Isn't this supposed to be OpenGov? The current status quo implies that no referendum should be decided on unless the decision deposit comes from some account permissionlessly. I think that is quite inflexible, especially since there are well-intentioned individuals that should be given recourse, other than the Fellowship, for placing large decision deposits. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe this is the wrong place to decide it - the Fellowship should be consulted for technical questions - not political ones. I suggest bringing it up here ASAP: polkadot-fellows/runtimes#184 |
||
- [Referenda Pallet] Modify the `placeDecisionDesposit` function to additionally allow it to be called by root, with root call bypassing the requirements for a deposit payment. | ||
- [Runtime] Add a new referendum track which can only call `referenda->placeDecisionDeposit` and the utility functions. | ||
|
||
### Referendum track parameters - Polkadot | ||
|
||
- **Decision deposit**: 1000 DOT | ||
- **Decision period**: 14 days | ||
- **Confirmation period**: 12 hours | ||
- **Enactment period**: 2 hour | ||
- **Approval & Support curves**: As per the root track, timed to match the decision period | ||
- **Maximum deciding**: 10 | ||
|
||
### Referendum track parameters - Kusama | ||
|
||
- **Decision deposit**: 33.333333 KSM | ||
- **Decision period**: 7 days | ||
- **Confirmation period**: 6 hours | ||
- **Enactment period**: 1 hour | ||
- **Approval & Support curves**: As per the root track, timed to match the decision period | ||
- **Maximum deciding**: 10 | ||
|
||
## Drawbacks | ||
|
||
This track would provide a route to starting a root referendum with a much-reduced slashable deposit. This might be undesirable but, assuming the decision deposit cost for this track is still high enough, slashing would still act as a disincentive. | ||
|
||
An alternative to this might be to reduce the decision deposit size some of the more expensive tracks. However, part of the purpose of the high deposit - at least on the root track - is to prevent spamming the limited queue with junk referenda. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Yes and to scare away bad proposals since they can be slashed and having a big deposit slashed is bad. |
||
|
||
## Testing, Security, and Privacy | ||
|
||
Will need additional tests case for the modified pallet and runtime. No security or privacy issues. | ||
|
||
## Performance, Ergonomics, and Compatibility | ||
### Performance | ||
|
||
No significant performance impact. | ||
|
||
### Ergonomics | ||
|
||
Only changes related to adding the track. Existing functionality is unchanged. | ||
|
||
### Compatibility | ||
|
||
No compatibility issues. | ||
|
||
## Prior Art and References | ||
|
||
- Recent discussion / referendum for an alternative way to address this issue: [Kusama Referendum 340 - Funding a Decision Deposit Sponsor](https://kusama.polkassembly.io/referenda/340) | ||
|
||
## Unresolved Questions | ||
|
||
Feedback on whether my proposed implementation of this is the best way to address the issue - including which calls the track should be allowed to make. Are the track parameters correct or should be use something different? Alternative would be welcome. |
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.
I think in all cases these can be proposed on the whitelisted caller track instead and be fast-tracked by the fellowship.
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.
However, whitelisted caller has a minimum of 5% final support level compared to 0% on other tracks. So you need at least a lot of abstentions (I think those count against the support threshold).
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.
I don't think everything that requires Root will go through Fellowship though, for example 457. It requires Root but it's not a "pure, neutral" call.