What happened to [HYPE] pool's block rewards?
Introduction
A pool is registered along with a pledged amount in a wallet. We look at what happens when a registered pool disassociates their pledge wallet in lieu of a new wallet.
HYPE pool decided to a change of pledged wallet so that they could have a wallet reconstructible via a mnemonic phrase. The intention of having a pledged wallet of this fashion, as opposed to the standard CLI wallet we create for our pools, is so that the mnemonic-based pledge wallet can also be held on a hardware device like a Nano Ledger. This has the advantage that the pledged ADA can be used as leverage against voting in the Catalyst funding rounds.
The problem that HYPE pool encountered
HYPE pool disassociated their pledge wallet from their pool sometime during or before Epoch 250. They did this by moving the pledged funds they had in their original wallet to a new mnemonic-based wallet. They then associated the new wallet as the pledged wallet to their pool.
HYPE pool was fortunate to mint a block in Epoch 250.
The payout of the rewards of this block was scheduled for the post boundary event between Epoch 251 and Epoch 252.
The problem was that the scheduled rewards were not paid out!
What happened to the rewards?
Since the original wallet had the correct designated amount for the pledge, and by removing that amount to a new wallet, the Cardano protocol checks against the original wallet registered for epoch 250 and finds that it is deficient. The protocol refuses to pay out the rewards. The rewards go to the treasury. Consequently, the rewards are not recoverable for HYPE pool.
How to mitigate this problem
We suggest that a pool not disassociate the original pledge wallet. But rather create a multi owner system where the second wallet (the mnemonic-based wallet) becomes a second owner of the pool. The pool would exercise two pledged wallets. The amount in the original wallet can be transferred over to the new wallet during the next Epoch and it won't affect the rewards payout.
To corroborate this we got Andrew Westberg's input too:
Sure. What happened is that changing the owner wallet doesn't take effect until n+1 epochs.
What HYPE "should" have done is create the new empty hardware pledge wallet and associate it with the pool during epoch 250. By leaving funds in the old wallet during the 250->251 snapshot, the old wallet is still the one checked for pledge.
Then, after the transition into 251, pledge can be safely moved so it's ready for the 251->252 snapshot.
Basically, whenever messing with pledge or owner accounts, the rule of thumb is to 1.) Make the change to the pool owner account. 2.) Wait until the next epoch cutover before moving the funds into the new account.
- by Andrew Westberg - Blue Cheese Stake House Pools
Further Tips
We recommend that new stake pool operators test operations such as the above on the test net.
We recommend further that they use the faster hour-by-hour epoch test net operated by the Guild Operators. Once you see your operations work correctly on the test net then you can go ahead with some confidence onto the mainnet side of your pool and exercise the changes you need to make.
Created: 8 March 2021
Short link to this page:
https://cutt.ly/0zhP0vR
No Comments