IntersectMBO / IntersectMBO/govtool
💡 Offchain Optional DRep Compensation
- Dominant language
- HTML
- Stars
- 21
- Forks
- 29
- Avg merge
- 2d 22h
- Merged PRs (30d)
- 7
Description
### Area
Proposal Pillar
### Is there new design needed?
Yes
### What?
When delegating to a DRep via gov-tools you should be able to elect to donate a percentage of your staking rewards to that DRep.
### Why?
Introducing DRep compensation into the ledger will be a an absolutely massive undertaking, that will involve a large amount of engineering hours and a non-trivial price-tag. Also, the community has not yet reached community consensus on whether DRep compensation is even desirable, or should be mandatory, or what the compensation scheme would even look like.
The best way to approach feature development is to release an MVP, evaluate its reception in the market, and use that data to determine the best way to proceed. This also allows us to introduce the feature without imposing it on anyone, it is opt-in, if you do not wish to compensate your DRep you can simply not opt-in. If, at any time, you wish to adjust the percentage of rewards that you are donating to your DRep you can just issue a new delegation certificate and adjust the amount.
### How?
This feature is extremely simple to implement. On gov-tools, when a user delegates to a DRep, a popup should ask if they want to donate a percentage of their staking rewards to that DRep (ie. if they want to opt-in to compensate their DRep).
If they choose to opt-in, they enter the percentage of their staking rewards that they would like their DRep to receive. The DRep delegation transaction will include that percentage in the transaction metadata in the following format:
```
{
"3692": {
"int": PERCENTAGE_HERE
}
}
```
Where the percentage is the thousandths place in the decimal so 1 would convey that the user is electing to donate 0.01% of their staking rewards to their DRep.
When a user claims their staking rewards, their wallet will look up their delegation transaction and determine if they have opted-in to compensate their DRep (by checking the tx metadata). If metadata in the format described above is found, then the wallet will add an additional output to the reward withdrawal transaction that sends the intended percentage of their rewards to their DRep. If there is not enough ada in their reward balance to pay the minAda for that output, the wallet will convey this to the user and let them decide how to proceed (or the user can establish how to handle this via wallet settings).
Lace has expressed their intent to implement this feature if it is introduced to gov-tools.
### (Optional) User Story with acceptance criteria
Acceptance criteria:
Allow user to opt-in to donate a percentage of their staking rewards to their DRep when delegating. If the user opts-in, then write that percentage to the chain in the metadata of the delegation transaction in the format described above.
Contributor guide
Assessment
This issue has not been assessed yet.