* migrate first distribution test to use simapp
* refactor test TestAllocateTokensTruncation
* migrate allocation test for distribution
* migrate TestCalculateRewardsBasic to simapp in distribution
* migrate TestCalculateRewardsAfterSlash to simapp in distribution
* migrate TestCalculateRewardsAfterManySlashes to use simapp
* migrate TestCalculateRewardsMultiDelegator to use ssimapp
* migrate TestWithdrawDelegationRewardsBasic to simapp
* migrate TestCalculateRewardsAfterManySlashesInSameBlock to simapp
* migrate TestCalculateRewardsMultiDelegatorMultiSlash
* migrate old delegation test
* migrate keeper test to simapp
* refactor all distribution to use simapp
Co-authored-by: Federico Kunze <31522760+fedekunze@users.noreply.github.com>
* cleanup staking references from types pkg
* check interface on runtime
* fixes
* rename validator set from slashing keeper
* final cleanup
* fix test
* fix querier
* fix tests
* rename interfaces
* update bond status
* fixes
* expected pkg
* ensure expected keepers match used funcs
* cha cha cha
Fixes regression introduced by #2984.
Continuiation of #3033 , which didn't fix the simulation issues.
(candidate) Complete solution for #3019, 9002 halt bug.
From #2984, it isn't sufficient to take the fee pool rewards of a validator. Since we don't track delegator accums (as we do with validator accums), and because onValidatorModified >updateValidatorDistInfoFromPool is also being called upon delegation updates (or at least I believe this is the reason), it is necessary to also withdraw self delegation.
TODO: I don't think self-delegation should be required to be modified here... consider using a delegation hook to do the self-delegation withdraw part instead, e.g. splitting the updateValidatorDistInfoFromPool function into two. It might not result in cleaner code, however. Think hard.
* Some minor cleanup and reformatting to make things easier to understand
* Update onDelegationSharesModified hook
* Add pending log
* Address PR comments
* Fix linting
* Make simulator operations predetermined
* Use new dbm.ReverseIterator API
* Simulation speed improvements
* Pin exact revisions, not branches
* Rename 'MountStoresIAVL' to 'MountStores'
* Zero Power Block fees to community pool
Closes#2812
This PR adds the flag --for-zero-height to gaiad export, which runs several alterations to the application state to prepare for restarting a new chain in a consistent fashion.
It also:
* Moves Gaia's export code to cmd/gaia/app/export.go for cleaner separation.
* Fixes an inconsistency where we treated the initChainer as happening at height -1 - it should now happen at height 0, since the first header sent by Tendermint has height 1.
* Runs the runtime invariant checks on start (in initChainer)
* Adds a few auxiliary functions to clear slashing periods
* Removes the Height field from Delegation objects in x/stake, which was not used anywhere