Magickbase / neuron-public-issues

Neuron Issues
4 stars 3 forks source link

[Feature request] Claim DAO rewards without withdrawing the initial deposit #367

Closed alejandroRbit closed 3 months ago

alejandroRbit commented 3 months ago

Lately I have seen several users asking if they can withdraw the rewards from the DAO but without withdrawing the initial deposit. I have been researching and for example in Cardano it is possible (REF: https://www.essentialcardano.io/faq/when-should-i-withdraw-my-staking-rewards)

Honestly, I don't know if it is technically possible, but as I have seen demand from the community, I think it is interesting to comment on it to see if its implementation is possible.

image

Keith-CY commented 3 months ago

Hi @alejandroRbit

Withdrawing compensation wihtout the deposit doesn't conform to the design of Nervos DAO.

It's a bit hard for me to make it clear, @doitian could you do me a favor to leave an easy-to-undertand explanation?


No matter how, follows are my understanding.

There are 2 steps to withdraw a deposit, Withdraw Phase 1 and Withdraw Phase 2 mentioned in the RFC, let's name them withdraw and unlock for clarity.

The withdraw action transforms a deposit cell from Being compensated to Final state, so no more compensation will be issued to the deposit.

The unlock action transforms a deposit cell of Final state to a non-deposit cell, including the deposit and its compensation.

It's meaningless to take compensation away from the deposit cell because once the deposit has been withdrawn, it won't be compensated anymore.

Ref: https://github.com/nervosnetwork/rfcs/blob/master/rfcs/0023-dao-deposit-withdraw/0023-dao-deposit-withdraw.md#withdraw

alejandroRbit commented 3 months ago

Yes, I assumed it had more to do with the design of NervosDAO itself, but I had to try :smile:. I suppose that if iCKB reaches the mainnet and has some adoption it will give users much more flexibility and usability regarding their NervosDAO deposits.

doitian commented 3 months ago

As said in this comment: https://github.com/nervosnetwork/ckb/issues/4286#issuecomment-1880850061

It also appears that proposals to make CKB work as you expect would be consensus changes and requires a hard-fork, no matter if it's done by the maintainer of this implementation or yourself. As you may already know a mere code commit won't make it effective on mainnet. A hard-fork is basically a community vote with the participation of all full nodes including mining nodes/pools. A controversial and/or uncoordinated hard-fork will cause a network split which could endanger the whole ecosystem, so the community is usually very cautious on such changes. For a change like this my suggestion is to solicit majority support before implementing it.

alejandroRbit commented 3 months ago

My intention was to study the possibility of implementing it with the current consensus rules. Seeing that it is not possible, I proceed to close this issue, thank you.