Fix EPOCH STS rule to feed correct Pool state into NEWPP #1593
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The EPOCH rule in the exec spec was feeding the incorrect Pool state into the NEWPP rule.
(The formal spec describes this correctly)
Before this change, NEWPP was getting the Pool state from before POOLREAP being applied, but the Utxo state from after the POOLREAP.
This meant that the NEWPP rule would often fail on
(Coin oblgCurr) == (_deposited utxoSt) ?! UnexpectedDepositPot
because the RHS deposit pot would reflect the reaped pools (with deposits flowing out to rewards/treasury) while the LHS (which depends on the number of pools) would still count all the pools, pre-POOLREAP.