TLDR:
-Current staking process is set up for First Out, First In when undelegating and redelegating One to stake with Validators.
-This creates delays if you undelegate One with the intent of removing them from the staking portal, and have undelegated multiple times over multiple epochs, but need to redelegate before the 7 epoch wait time is over.
-New proposal to reverse this, so last out is the first in for redelegation of One.
Example:
Current set up:
Undelegate 10k One on epoch 625 with intent to wait the 7 epochs and use the One for farming.
Undelegate 10k more One on epoch 627 with intent to restake with a different validator for any reason.
Redelegate 10K one to a different Validator on epoch 628.
Result: The system redelegates the 10k from epoch 625, leaving you with 6 epochs remaining to receive your 10K one instead of 4 epochs remaining.
Proposed Last Out / First In Example:
Undelegate 10k One on epoch 625 with intent to wait the 7 epochs and use the One for farming.
Undelegate 10k more One on epoch 627 with intent to restake with a different validator for any reason.
Redelegate 10K one to a different Validator on epoch 628.
Result: The system redelegates the 10k one from epoch 627, leaving you with 4 epochs remaining. Last Out / First In
This has been a problem for me multiple times. I think it is fair to allow people to redelegate the Last Out coins and preserve their undelegation 7 epoch wait timeline instead of starting over.
I think this is an excellent idea and it should be implemented. I’m sure that it perfectly embodies the true purpose of every delegator that is undelegating a certain amount
Interesting idea - and I totally get your use case.
In terms of avoiding “bad actors”, wouldn’t that allow someone to:
Undelegate 100 million ONE on epoch 625 “with intent to wait 7 epochs”
Undelegate 100 million more ONE on epoch 627 w/ 30 seconds remaining
Redelegate 100 million 30 seconds later in a potentially malicious manner?
Playing devil’s advocate and trying to learn more. It may be that the proposal is totally fine. Just worried about potential stability and large amounts of money moving all over the place in small amounts of time for malicious reasons.
I think we should just go for the full monty and take the undelegation period back to 1 epoch. In the beginning it was only 1 epoch and it was awesome. Liquidity is King!
In your example, the system would redelegate the 100 million one from epoch 627 on epoch 628, preserving the epoch 625 undelegation timeline. That is the entire intent of this.
I’m in favour of having this implemented. I for 6 days have been waiting for undelegating small portion of my holdings. If I was aware of this issue, I would have stopped myself from redelegating back to a new delegator. I was only 2 epochs away from getting my unstakes back.
But since I was unaware of this issue, I did re-delegate to a new validator, which resulted in another 7 epochs extension of undelegation of the same amount of holdings.