-
Notifications
You must be signed in to change notification settings - Fork 18
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
feat: periodic pledging implementation #191
Conversation
…tingPeerAddQuorumPledging
…ub.com/rubixchain/rubixgoplatform into ashita/QuorumCheckforPledgedTokenState
…atform into ashita/QuorumCheckforPledgedTokenState
…ub.com/rubixchain/rubixgoplatform into ashita/QuorumCheckforPledgedTokenState
362f46c
to
ef02ead
Compare
… inside the TokenReceiver func, to remove the additional update operation
…atform into ashita/QuorumCheckforPledgedTokenState
Test Results
|
…ub.com/rubixchain/rubixgoplatform into arnab/periodic-pledging
Working as expected . We can merge once backward compatibility is added. |
…gequeue table present in rubixgoplatform node versions v0.0.17 and earlier
…atform into arnab/periodic-pledging
A new command
A fix has also been administered that affected old nodes migrating to Period Pledging. The format for storing quorum address in To mitigate this, we have added a check in the |
This PR intends to replace current PoW approach with Periodic Pledging. As opposed to the current approach, tokens will now be pledged for a duration of 7 days, post which token unpledging can happen. If a Trans token is in custody of owner for more than Pledge period (7 days) or if it has been transferred before the pledging period, the quorums will be able to unpledge their pledge tokens through a CLI/API call.
Since, pledged tokens are unpledged after 7 day period. a
self-transfer
CLI/API call is provided for node to essentially perform a psuedo state change, which will invite quorums to again pledge for the trans token.It has been tested locally with a temporary pledged duration value of 100 seconds with both RBT transfers and Smart contract deployment and execution.
Unpledge CLI
It goes through all the records present in the
unpledgeQueue
table and performs the unpledging process for all transactions, if anySelf Transfer CLI
Similar to general RBT transfer, we only pass the sender's address and the transaction type for Self Transfer.