Documentation ¶
Index ¶
- Constants
- func AllInvariants(k Keeper) sdk.Invariant
- func GetLowScoreFromAllForecasts(ctx context.Context, k *Keeper, topicId TopicId, forecasts types.Forecasts) (lowScore types.Score, lowScoreIndex int, err error)
- func GetLowScoreFromAllInferences(ctx context.Context, k *Keeper, topicId TopicId, inferences types.Inferences) (lowScore types.Score, lowScoreIndex int, err error)
- func GetLowScoreFromAllLossBundles(ctx context.Context, k *Keeper, topicId TopicId, ...) (lowScore types.Score, lowScoreIndex int, err error)
- func NewDoublePrefixedQuadrupleRange[K1, K2, K3, K4 any](k1 K1, k2 K2) collections.Ranger[Quadruple[K1, K2, K3, K4]]
- func NewSinglePrefixUntilQuadrupleRange[K1, K2, K3, K4 any](k1 K1) collections.Ranger[Quadruple[K1, K2, K3, K4]]
- func NewSinglePrefixedQuadrupleRange[K1, K2, K3, K4 any](k1 K1) collections.Ranger[Quadruple[K1, K2, K3, K4]]
- func NewTriplePrefixedQuadrupleRange[K1, K2, K3, K4 any](k1 K1, k2 K2, k3 K3) collections.Ranger[Quadruple[K1, K2, K3, K4]]
- func QuadrupleKeyCodec[K1, K2, K3, K4 any](keyCodec1 codec.KeyCodec[K1], keyCodec2 codec.KeyCodec[K2], ...) codec.KeyCodec[Quadruple[K1, K2, K3, K4]]
- func RegisterInvariants(ir sdk.InvariantRegistry, k *Keeper)
- func StakingInvariantDelegatedStakes(k Keeper) sdk.Invariant
- func StakingInvariantLenStakeRemovalsSame(k Keeper) sdk.Invariant
- func StakingInvariantPendingRewardForDelegatorsEqualRewardPerShareMinusRewardDebt(k Keeper) sdk.Invariant
- func StakingInvariantSumStakeFromStakeReputerAuthorityEqualTotalStakeAndTopicStake(k Keeper) sdk.Invariant
- func StakingInvariantTotalStakeEqualAlloraStakingBankBalance(k Keeper) sdk.Invariant
- type AccountKeeper
- type ActorId
- type BankKeeper
- type BlockHeight
- type Delegator
- type Keeper
- func (k *Keeper) ActivateTopic(ctx context.Context, topicId TopicId) error
- func (k *Keeper) AddDelegateStake(ctx context.Context, topicId TopicId, delegator ActorId, reputer ActorId, ...) error
- func (k *Keeper) AddReputerNonce(ctx context.Context, topicId TopicId, nonce *types.Nonce) error
- func (k *Keeper) AddReputerStake(ctx context.Context, topicId TopicId, reputer ActorId, ...) error
- func (k *Keeper) AddRewardableTopic(ctx context.Context, topicId TopicId) error
- func (k *Keeper) AddTopicFeeRevenue(ctx context.Context, topicId TopicId, amount cosmosMath.Int) error
- func (k *Keeper) AddWhitelistAdmin(ctx context.Context, admin ActorId) error
- func (k *Keeper) AddWorkerNonce(ctx context.Context, topicId TopicId, nonce *types.Nonce) error
- func (k *Keeper) AddWorkerWindowTopicId(ctx sdk.Context, height BlockHeight, topicId TopicId) error
- func (k *Keeper) AppendForecast(ctx context.Context, topic types.Topic, blockHeight BlockHeight, ...) error
- func (k *Keeper) AppendInference(ctx context.Context, topic types.Topic, blockHeight BlockHeight, ...) error
- func (k *Keeper) AppendReputerLoss(ctx context.Context, topic types.Topic, blockHeight BlockHeight, ...) error
- func (k *Keeper) AttemptTopicReactivation(ctx context.Context, topicId TopicId) error
- func (k *Keeper) BlockWithinReputerSubmissionWindowOfNonce(topic types.Topic, nonce types.ReputerRequestNonce, blockHeight int64) bool
- func (k *Keeper) BlockWithinWorkerSubmissionWindowOfNonce(topic types.Topic, nonce types.Nonce, blockHeight int64) bool
- func (k *Keeper) CalcAndSaveForecasterScoreEmaForActiveSet(ctx context.Context, topic types.Topic, block types.BlockHeight, ...) (types.Score, error)
- func (k *Keeper) CalcAndSaveForecasterScoreEmaWithLastSavedTopicQuantile(ctx context.Context, topic types.Topic, block types.BlockHeight, ...) error
- func (k *Keeper) CalcAndSaveInfererScoreEmaForActiveSet(ctx context.Context, topic types.Topic, block types.BlockHeight, ...) (types.Score, error)
- func (k *Keeper) CalcAndSaveInfererScoreEmaWithLastSavedTopicQuantile(ctx context.Context, topic types.Topic, block types.BlockHeight, ...) error
- func (k *Keeper) CalcAndSaveReputerScoreEmaForActiveSet(ctx context.Context, topic types.Topic, block types.BlockHeight, ...) (types.Score, error)
- func (k *Keeper) CalcAndSaveReputerScoreEmaWithLastSavedTopicQuantile(ctx context.Context, topic types.Topic, block types.BlockHeight, ...) error
- func (k Keeper) CalcAppropriatePaginationForUint64Cursor(ctx context.Context, pagination *types.SimpleCursorPaginationRequest) (uint64, uint64, error)
- func (k *Keeper) DeleteDelegateStakeRemoval(ctx context.Context, blockHeight BlockHeight, topicId TopicId, reputer ActorId, ...) error
- func (k *Keeper) DeleteStakeRemoval(ctx context.Context, blockHeight BlockHeight, topicId TopicId, address ActorId) error
- func (k *Keeper) DeleteTopicRewardNonce(ctx context.Context, topicId TopicId) error
- func (k *Keeper) DeleteUnfulfilledReputerNonces(ctx context.Context, topicId TopicId) error
- func (k *Keeper) DeleteUnfulfilledWorkerNonces(ctx context.Context, topicId TopicId) error
- func (k *Keeper) DeleteWorkerWindowBlockheight(ctx sdk.Context, height BlockHeight) error
- func (k *Keeper) DripTopicFeeRevenue(ctx sdk.Context, topicId TopicId, block BlockHeight) error
- func (k *Keeper) ExportGenesis(ctx context.Context) (*types.GenesisState, error)
- func (k *Keeper) FulfillReputerNonce(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
- func (k *Keeper) FulfillWorkerNonce(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
- func (k *Keeper) GetActiveTopicIdsAtBlock(ctx context.Context, block BlockHeight) (types.TopicIds, error)
- func (k *Keeper) GetBankBalance(ctx context.Context, addr sdk.AccAddress, denom string) sdk.Coin
- func (k *Keeper) GetBinaryCodec() codec.BinaryCodec
- func (k *Keeper) GetCurrentTopicWeight(ctx context.Context, topicId TopicId, topicEpochLength BlockHeight, ...) (weight alloraMath.Dec, topicRevenue cosmosMath.Int, err error)
- func (k *Keeper) GetDelegateRewardPerShare(ctx context.Context, topicId TopicId, reputer ActorId) (alloraMath.Dec, error)
- func (k *Keeper) GetDelegateStakePlacement(ctx context.Context, topicId TopicId, delegator ActorId, target ActorId) (types.DelegatorInfo, error)
- func (k Keeper) GetDelegateStakeRemoval(ctx context.Context, blockHeight BlockHeight, topicId TopicId, ...) (types.DelegateStakeRemovalInfo, error)
- func (k *Keeper) GetDelegateStakeRemovalForDelegatorReputerAndTopicId(ctx sdk.Context, delegator string, reputer string, topicId uint64) (removal types.DelegateStakeRemovalInfo, found bool, err error)
- func (k *Keeper) GetDelegateStakeRemovalsUpUntilBlock(ctx context.Context, blockHeight BlockHeight, limit uint64) ([]types.DelegateStakeRemovalInfo, bool, error)
- func (k *Keeper) GetDelegateStakeUponReputer(ctx context.Context, topicId TopicId, target ActorId) (cosmosMath.Int, error)
- func (k *Keeper) GetForecastScoresUntilBlock(ctx context.Context, topicId TopicId, blockHeight BlockHeight) ([]*types.Score, error)
- func (k *Keeper) GetForecasterNetworkRegret(ctx context.Context, topicId TopicId, worker ActorId) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetForecasterScoreEma(ctx context.Context, topicId TopicId, worker ActorId) (types.Score, error)
- func (k *Keeper) GetForecastsAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.Forecasts, error)
- func (k *Keeper) GetInferenceScoresUntilBlock(ctx context.Context, topicId TopicId, blockHeight BlockHeight) ([]*types.Score, error)
- func (k *Keeper) GetInferencesAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.Inferences, error)
- func (k *Keeper) GetInfererNetworkRegret(ctx context.Context, topicId TopicId, worker ActorId) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetInfererScoreEma(ctx context.Context, topicId TopicId, worker ActorId) (types.Score, error)
- func (k *Keeper) GetLastDripBlock(ctx context.Context, topicId TopicId) (BlockHeight, error)
- func (k *Keeper) GetLatestNetworkLossBundle(ctx context.Context, topicId TopicId) (*types.ValueBundle, error)
- func (k *Keeper) GetLatestTopicInferences(ctx context.Context, topicId TopicId) (*types.Inferences, BlockHeight, error)
- func (k *Keeper) GetListeningCoefficient(ctx context.Context, topicId TopicId, reputer ActorId) (types.ListeningCoefficient, error)
- func (k *Keeper) GetLowestActiveTopicWeightAtBlock(ctx context.Context, block BlockHeight) (types.TopicIdWeightPair, bool, error)
- func (k *Keeper) GetNaiveInfererNetworkRegret(ctx context.Context, topicId TopicId, inferer ActorId) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetNetworkLossBundleAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.ValueBundle, error)
- func (k *Keeper) GetNextPossibleChurningBlockByTopicId(ctx context.Context, topicId TopicId) (BlockHeight, bool, error)
- func (k *Keeper) GetNextTopicId(ctx context.Context) (TopicId, error)
- func (k *Keeper) GetOneInForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneInForecaster ActorId, inferer ActorId) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetOneOutForecasterForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneOutForecaster ActorId, ...) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetOneOutForecasterInfererNetworkRegret(ctx context.Context, topicId TopicId, oneOutForecaster ActorId, ...) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetOneOutInfererForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneOutInferer ActorId, ...) (types.TimestampedValue, bool, error)
- func (k *Keeper) GetOneOutInfererInfererNetworkRegret(ctx context.Context, topicId TopicId, oneOutInferer ActorId, inferer ActorId) (types.TimestampedValue, bool, error)
- func (k Keeper) GetParams(ctx context.Context) (types.Params, error)
- func (k *Keeper) GetPreviousForecastRewardFraction(ctx context.Context, topicId TopicId, worker ActorId) (alloraMath.Dec, bool, error)
- func (k *Keeper) GetPreviousForecasterScoreRatio(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
- func (k *Keeper) GetPreviousInferenceRewardFraction(ctx context.Context, topicId TopicId, worker ActorId) (alloraMath.Dec, bool, error)
- func (k Keeper) GetPreviousPercentageRewardToStakedReputers(ctx context.Context) (alloraMath.Dec, error)
- func (k *Keeper) GetPreviousReputerRewardFraction(ctx context.Context, topicId TopicId, reputer ActorId) (alloraMath.Dec, bool, error)
- func (k *Keeper) GetPreviousTopicQuantileForecasterScoreEma(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
- func (k *Keeper) GetPreviousTopicQuantileInfererScoreEma(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
- func (k *Keeper) GetPreviousTopicQuantileReputerScoreEma(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
- func (k *Keeper) GetPreviousTopicWeight(ctx context.Context, topicId TopicId) (alloraMath.Dec, bool, error)
- func (k *Keeper) GetReputerInfo(ctx sdk.Context, reputerKey ActorId) (types.OffchainNode, error)
- func (k *Keeper) GetReputerLossBundlesAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.ReputerValueBundles, error)
- func (k *Keeper) GetReputerScoreEma(ctx context.Context, topicId TopicId, reputer ActorId) (types.Score, error)
- func (k *Keeper) GetReputerTopicLastCommit(ctx context.Context, topic TopicId) (types.TimestampedActorNonce, error)
- func (k *Keeper) GetReputersScoresAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (types.Scores, error)
- func (k *Keeper) GetRewardableTopics(ctx context.Context) ([]TopicId, error)
- func (k *Keeper) GetStakeFromDelegatorInTopic(ctx context.Context, topicId TopicId, delegator ActorId) (cosmosMath.Int, error)
- func (k Keeper) GetStakeRemoval(ctx context.Context, BlockHeight int64, topicId TopicId, reputer ActorId) (types.StakeRemovalInfo, error)
- func (k *Keeper) GetStakeRemovalForReputerAndTopicId(ctx sdk.Context, reputer string, topicId uint64) (removal types.StakeRemovalInfo, found bool, err error)
- func (k *Keeper) GetStakeRemovalsUpUntilBlock(ctx context.Context, blockHeight BlockHeight, limit uint64) (ret []types.StakeRemovalInfo, anyLeft bool, err error)
- func (k *Keeper) GetStakeReputerAuthority(ctx context.Context, topicId TopicId, reputer ActorId) (cosmosMath.Int, error)
- func (k *Keeper) GetStorageService() coreStore.KVStoreService
- func (k *Keeper) GetTargetWeight(topicStake alloraMath.Dec, topicEpochLength int64, ...) (alloraMath.Dec, error)
- func (k *Keeper) GetTopic(ctx context.Context, topicId TopicId) (types.Topic, error)
- func (k *Keeper) GetTopicFeeRevenue(ctx context.Context, topicId TopicId) (cosmosMath.Int, error)
- func (k *Keeper) GetTopicRewardNonce(ctx context.Context, topicId TopicId) (BlockHeight, error)
- func (k *Keeper) GetTopicStake(ctx context.Context, topicId TopicId) (cosmosMath.Int, error)
- func (k *Keeper) GetTopicWeightFromTopicId(ctx context.Context, topicId types.TopicId) (alloraMath.Dec, error)
- func (k *Keeper) GetTotalRewardToDistribute(ctx context.Context) (alloraMath.Dec, error)
- func (k Keeper) GetTotalStake(ctx context.Context) (cosmosMath.Int, error)
- func (k *Keeper) GetUnfulfilledReputerNonces(ctx context.Context, topicId TopicId) (types.ReputerRequestNonces, error)
- func (k *Keeper) GetUnfulfilledWorkerNonces(ctx context.Context, topicId TopicId) (types.Nonces, error)
- func (k *Keeper) GetWorkerForecastScoresAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (types.Scores, error)
- func (k *Keeper) GetWorkerInferenceScoresAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (types.Scores, error)
- func (k *Keeper) GetWorkerInfo(ctx sdk.Context, workerKey ActorId) (types.OffchainNode, error)
- func (k *Keeper) GetWorkerLatestInferenceByTopicId(ctx context.Context, topicId TopicId, worker ActorId) (types.Inference, error)
- func (k *Keeper) GetWorkerTopicLastCommit(ctx context.Context, topic TopicId) (types.TimestampedActorNonce, error)
- func (k *Keeper) GetWorkerWindowTopicIds(ctx sdk.Context, height BlockHeight) types.TopicIds
- func (k *Keeper) InactivateTopic(ctx context.Context, topicId TopicId) error
- func (k *Keeper) IncrementTopicId(ctx context.Context) (TopicId, error)
- func (k *Keeper) InitGenesis(ctx context.Context, data *types.GenesisState) error
- func (k *Keeper) InsertForecasts(ctx context.Context, topicId TopicId, nonceBlockHeight BlockHeight, ...) error
- func (k *Keeper) InsertInferences(ctx context.Context, topicId TopicId, nonceBlockHeight BlockHeight, ...) error
- func (k *Keeper) InsertNetworkLossBundleAtBlock(ctx context.Context, topicId TopicId, block BlockHeight, ...) error
- func (k *Keeper) InsertReputer(ctx context.Context, topicId TopicId, reputer ActorId, ...) error
- func (k *Keeper) InsertReputerLossBundlesAtBlock(ctx context.Context, topicId TopicId, block BlockHeight, ...) error
- func (k *Keeper) InsertReputerScore(ctx context.Context, topicId TopicId, blockHeight BlockHeight, ...) error
- func (k *Keeper) InsertWorker(ctx context.Context, topicId TopicId, worker ActorId, ...) error
- func (k *Keeper) InsertWorkerForecastScore(ctx context.Context, topicId TopicId, blockHeight BlockHeight, ...) error
- func (k *Keeper) InsertWorkerInferenceScore(ctx context.Context, topicId TopicId, blockHeight BlockHeight, ...) error
- func (k *Keeper) IsReputerNonceUnfulfilled(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
- func (k *Keeper) IsReputerRegisteredInTopic(ctx context.Context, topicId TopicId, reputer ActorId) (bool, error)
- func (k *Keeper) IsTopicActive(ctx context.Context, topicId TopicId) (bool, error)
- func (k Keeper) IsWhitelistAdmin(ctx context.Context, admin ActorId) (bool, error)
- func (k *Keeper) IsWorkerNonceUnfulfilled(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
- func (k *Keeper) IsWorkerRegisteredInTopic(ctx context.Context, topicId TopicId, worker ActorId) (bool, error)
- func (k *Keeper) PruneRecordsAfterRewards(ctx context.Context, topicId TopicId, blockHeight int64) error
- func (k *Keeper) PruneReputerNonces(ctx context.Context, topicId uint64, blockHeightThreshold int64) error
- func (k *Keeper) PruneTopicActivationDataAtBlock(ctx context.Context, block BlockHeight) error
- func (k *Keeper) PruneWorkerNonces(ctx context.Context, topicId uint64, blockHeightThreshold int64) error
- func (k *Keeper) RemoveDelegateStake(ctx context.Context, stakeRemovalBlockHeight BlockHeight, topicId TopicId, ...) error
- func (k *Keeper) RemoveReputer(ctx context.Context, topicId TopicId, reputer ActorId) error
- func (k *Keeper) RemoveReputerStake(ctx context.Context, blockHeight BlockHeight, topicId TopicId, reputer ActorId, ...) error
- func (k *Keeper) RemoveRewardableTopic(ctx context.Context, topicId TopicId) error
- func (k *Keeper) RemoveWhitelistAdmin(ctx context.Context, admin ActorId) error
- func (k *Keeper) RemoveWorker(ctx context.Context, topicId TopicId, worker ActorId) error
- func (k *Keeper) ResetLowestActiveTopicWeightAtBlock(ctx context.Context, block BlockHeight) error
- func (k *Keeper) SendCoinsFromAccountToModule(ctx context.Context, sender ActorId, recipientModule string, amt sdk.Coins) error
- func (k *Keeper) SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipient ActorId, amt sdk.Coins) error
- func (k *Keeper) SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error
- func (k *Keeper) SetDelegateRewardPerShare(ctx context.Context, topicId TopicId, reputer ActorId, share alloraMath.Dec) error
- func (k *Keeper) SetDelegateStakePlacement(ctx context.Context, topicId TopicId, delegator ActorId, target ActorId, ...) error
- func (k *Keeper) SetDelegateStakeRemoval(ctx context.Context, removalInfo types.DelegateStakeRemovalInfo) error
- func (k *Keeper) SetDelegateStakeUponReputer(ctx context.Context, topicId TopicId, target ActorId, stake cosmosMath.Int) error
- func (k *Keeper) SetForecasterNetworkRegret(ctx context.Context, topicId TopicId, worker ActorId, ...) error
- func (k *Keeper) SetForecasterScoreEma(ctx context.Context, topicId TopicId, worker ActorId, score types.Score) error
- func (k *Keeper) SetInfererNetworkRegret(ctx context.Context, topicId TopicId, worker ActorId, ...) error
- func (k *Keeper) SetInfererScoreEma(ctx context.Context, topicId TopicId, worker ActorId, score types.Score) error
- func (k *Keeper) SetLastDripBlock(ctx context.Context, topicId TopicId, block BlockHeight) error
- func (k *Keeper) SetListeningCoefficient(ctx context.Context, topicId TopicId, reputer ActorId, ...) error
- func (k *Keeper) SetNaiveInfererNetworkRegret(ctx context.Context, topicId TopicId, inferer ActorId, ...) error
- func (k *Keeper) SetOneInForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneInForecaster ActorId, inferer ActorId, ...) error
- func (k *Keeper) SetOneOutForecasterForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneOutForecaster ActorId, ...) error
- func (k *Keeper) SetOneOutForecasterInfererNetworkRegret(ctx context.Context, topicId TopicId, oneOutForecaster ActorId, ...) error
- func (k *Keeper) SetOneOutInfererForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneOutInferer ActorId, ...) error
- func (k *Keeper) SetOneOutInfererInfererNetworkRegret(ctx context.Context, topicId TopicId, oneOutInferer ActorId, inferer ActorId, ...) error
- func (k *Keeper) SetParams(ctx context.Context, params types.Params) error
- func (k *Keeper) SetPreviousForecastRewardFraction(ctx context.Context, topicId TopicId, worker ActorId, reward alloraMath.Dec) error
- func (k *Keeper) SetPreviousForecasterScoreRatio(ctx context.Context, topicId TopicId, forecasterScoreRatio alloraMath.Dec) error
- func (k *Keeper) SetPreviousInferenceRewardFraction(ctx context.Context, topicId TopicId, worker ActorId, reward alloraMath.Dec) error
- func (k *Keeper) SetPreviousPercentageRewardToStakedReputers(ctx context.Context, percentageRewardToStakedReputers alloraMath.Dec) error
- func (k *Keeper) SetPreviousReputerRewardFraction(ctx context.Context, topicId TopicId, reputer ActorId, reward alloraMath.Dec) error
- func (k *Keeper) SetPreviousTopicQuantileForecasterScoreEma(ctx context.Context, topicId TopicId, score alloraMath.Dec) error
- func (k *Keeper) SetPreviousTopicQuantileInfererScoreEma(ctx context.Context, topicId TopicId, score alloraMath.Dec) error
- func (k *Keeper) SetPreviousTopicQuantileReputerScoreEma(ctx context.Context, topicId TopicId, score alloraMath.Dec) error
- func (k *Keeper) SetPreviousTopicWeight(ctx context.Context, topicId TopicId, weight alloraMath.Dec) error
- func (k *Keeper) SetReputerScoreEma(ctx context.Context, topicId TopicId, reputer ActorId, score types.Score) error
- func (k *Keeper) SetReputerTopicLastCommit(ctx context.Context, topic types.TopicId, blockHeight int64, ...) error
- func (k *Keeper) SetStakeFromDelegator(ctx context.Context, topicId TopicId, delegator ActorId, stake cosmosMath.Int) error
- func (k *Keeper) SetStakeRemoval(ctx context.Context, removalInfo types.StakeRemovalInfo) error
- func (k *Keeper) SetStakeReputerAuthority(ctx context.Context, topicId TopicId, reputer ActorId, amount cosmosMath.Int) error
- func (k *Keeper) SetTopic(ctx context.Context, topicId TopicId, topic types.Topic) error
- func (k *Keeper) SetTopicRewardNonce(ctx context.Context, topicId TopicId, nonce BlockHeight) error
- func (k *Keeper) SetTopicStake(ctx context.Context, topicId TopicId, stake cosmosMath.Int) error
- func (k *Keeper) SetTotalStake(ctx context.Context, totalStake cosmosMath.Int) error
- func (k *Keeper) SetWorkerTopicLastCommit(ctx context.Context, topic types.TopicId, blockHeight int64, ...) error
- func (k *Keeper) TopicExists(ctx context.Context, topicId TopicId) (bool, error)
- func (k *Keeper) UpdateTopicEpochLastEnded(ctx context.Context, topicId TopicId, epochLastEnded BlockHeight) error
- func (k *Keeper) UpdateTopicInitialRegret(ctx context.Context, topicId TopicId, initialRegret alloraMath.Dec) error
- func (k *Keeper) ValidateStringIsBech32(actor ActorId) error
- type LibP2pKey
- type Quadruple
- func Join4[K1, K2, K3, K4 any](k1 K1, k2 K2, k3 K3, k4 K4) Quadruple[K1, K2, K3, K4]
- func QuadrupleDoublePrefix[K1, K2, K3, K4 any](k1 K1, k2 K2) Quadruple[K1, K2, K3, K4]
- func QuadrupleSinglePrefix[K1, K2, K3, K4 any](k1 K1) Quadruple[K1, K2, K3, K4]
- func QuadrupleTriplePrefix[K1, K2, K3, K4 any](k1 K1, k2 K2, k3 K3) Quadruple[K1, K2, K3, K4]
- type Reputer
- type TopicId
Constants ¶
const RESERVED_BLOCK = 0
Variables ¶
This section is empty.
Functions ¶
func AllInvariants ¶ added in v0.2.12
AllInvariants is a convience function to run all invariants in the emissions module.
func GetLowScoreFromAllForecasts ¶ added in v0.3.0
func GetLowScoreFromAllForecasts( ctx context.Context, k *Keeper, topicId TopicId, forecasts types.Forecasts, ) (lowScore types.Score, lowScoreIndex int, err error)
Return low score and index among all forecasts
func GetLowScoreFromAllInferences ¶ added in v0.3.0
func GetLowScoreFromAllInferences( ctx context.Context, k *Keeper, topicId TopicId, inferences types.Inferences, ) (lowScore types.Score, lowScoreIndex int, err error)
Return low score and index among all inferences
func GetLowScoreFromAllLossBundles ¶ added in v0.3.0
func GetLowScoreFromAllLossBundles( ctx context.Context, k *Keeper, topicId TopicId, lossBundles types.ReputerValueBundles, ) (lowScore types.Score, lowScoreIndex int, err error)
Return low score and index among all inferences
func NewDoublePrefixedQuadrupleRange ¶ added in v0.2.8
func NewDoublePrefixedQuadrupleRange[K1, K2, K3, K4 any](k1 K1, k2 K2) collections.Ranger[Quadruple[K1, K2, K3, K4]]
NewDoublePrefixedQuadrupleRange provides a Range for all keys prefixed with the given first and second parts of the Quadruple key.
func NewSinglePrefixUntilQuadrupleRange ¶ added in v0.2.8
func NewSinglePrefixUntilQuadrupleRange[K1, K2, K3, K4 any](k1 K1) collections.Ranger[Quadruple[K1, K2, K3, K4]]
NewSinglePrefixUntilQuadrupleRange defines a collection query which ranges until the provided Pair prefix. Unstable: this API might change in the future.
func NewSinglePrefixedQuadrupleRange ¶ added in v0.2.8
func NewSinglePrefixedQuadrupleRange[K1, K2, K3, K4 any](k1 K1) collections.Ranger[Quadruple[K1, K2, K3, K4]]
NewSinglePrefixedQuadrupleRange provides a Range for all keys prefixed with the given first part of the Quadruple key.
func NewTriplePrefixedQuadrupleRange ¶ added in v0.2.8
func NewTriplePrefixedQuadrupleRange[K1, K2, K3, K4 any](k1 K1, k2 K2, k3 K3) collections.Ranger[Quadruple[K1, K2, K3, K4]]
NewTriplePrefixedQuadrupleRange provides a Range for all keys prefixed with the given first, second, and third parts of the Quadruple key.
func QuadrupleKeyCodec ¶ added in v0.2.8
func QuadrupleKeyCodec[K1, K2, K3, K4 any]( keyCodec1 codec.KeyCodec[K1], keyCodec2 codec.KeyCodec[K2], keyCodec3 codec.KeyCodec[K3], keyCodec4 codec.KeyCodec[K4], ) codec.KeyCodec[Quadruple[K1, K2, K3, K4]]
QuadrupleKeyCodec instantiates a new KeyCodec instance that can encode the Quadruple, given the KeyCodecs of the three parts of the key, in order.
func RegisterInvariants ¶ added in v0.2.12
func RegisterInvariants(ir sdk.InvariantRegistry, k *Keeper)
RegisterInvariants registers the emissions module invariants.
func StakingInvariantDelegatedStakes ¶ added in v0.2.12
stakeSumFromDelegator = Sum(delegatedStakes[topicid, delegator, all reputers]) stakeFromDelegatorsUponReputer = Sum(delegatedStakes[topicid, all delegators, reputer])
func StakingInvariantLenStakeRemovalsSame ¶ added in v0.2.12
the number of values in the stakeRemovalsByBlock map should always equal the number of values in the stakeRemovalsByActor map
func StakingInvariantPendingRewardForDelegatorsEqualRewardPerShareMinusRewardDebt ¶ added in v0.2.12
func StakingInvariantSumStakeFromStakeReputerAuthorityEqualTotalStakeAndTopicStake ¶ added in v0.2.12
func StakingInvariantTotalStakeEqualAlloraStakingBankBalance ¶ added in v0.2.12
StakingInvariantTotalStakeEqualAlloraStakingBankBalance checks that the total stake in the emissions module is equal to the balance of the Allora staking bank account.
Types ¶
type AccountKeeper ¶
type AccountKeeper interface { AddressCodec() address.Codec GetAccount(ctx context.Context, addr sdk.AccAddress) sdk.AccountI GetModuleAddress(name string) sdk.AccAddress GetModuleAccount(ctx context.Context, name string) sdk.ModuleAccountI SetModuleAccount(context.Context, sdk.ModuleAccountI) }
AccountKeeper defines the expected account keeper used for simulations (noalias)
type BankKeeper ¶
type BankKeeper interface { MintCoins(ctx context.Context, moduleName string, amt sdk.Coins) error GetAllBalances(ctx context.Context, addr sdk.AccAddress) sdk.Coins GetBalance(ctx context.Context, addr sdk.AccAddress, denom string) sdk.Coin SpendableCoins(ctx context.Context, addr sdk.AccAddress) sdk.Coins SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipientAddr sdk.AccAddress, amt sdk.Coins) error SendCoinsFromAccountToModule(ctx context.Context, senderAddr sdk.AccAddress, recipientModule string, amt sdk.Coins) error BlockedAddr(addr sdk.AccAddress) bool }
BankKeeper defines the expected interface needed to retrieve account balances.
type BlockHeight ¶ added in v0.2.6
type BlockHeight = int64
type Keeper ¶
type Keeper struct {
// contains filtered or unexported fields
}
func NewKeeper ¶
func NewKeeper( cdc codec.BinaryCodec, addressCodec address.Codec, storeService coreStore.KVStoreService, ak AccountKeeper, bk BankKeeper, feeCollectorName string, ) Keeper
func (*Keeper) ActivateTopic ¶ added in v0.2.6
Set a topic to active if the topic exists, else does nothing
func (*Keeper) AddDelegateStake ¶ added in v0.2.6
func (k *Keeper) AddDelegateStake( ctx context.Context, topicId TopicId, delegator ActorId, reputer ActorId, stakeToAdd cosmosMath.Int, ) error
adds stake to the system from a delegator adds to: totalStake, topicStake, stakeReputerAuthority,
stakeSumFromDelegator, delegatedStakes, stakeFromDelegatorsUponReputer
func (*Keeper) AddReputerNonce ¶ added in v0.2.6
Adds a nonce to the unfulfilled nonces for the topic if it is not yet added (idempotent). If the max number of nonces is reached, then the function removes the oldest nonce and adds the new nonce.
func (*Keeper) AddReputerStake ¶ added in v0.2.8
func (k *Keeper) AddReputerStake( ctx context.Context, topicId TopicId, reputer ActorId, stakeToAdd cosmosMath.Int, ) error
Adds stake to the system for a given topic and reputer Adds to: totalStake, topicStake, stakeReputerAuthority,
func (*Keeper) AddRewardableTopic ¶ added in v0.2.6
Add a topic as rewardable
func (*Keeper) AddTopicFeeRevenue ¶ added in v0.2.6
func (k *Keeper) AddTopicFeeRevenue(ctx context.Context, topicId TopicId, amount cosmosMath.Int) error
Add to the fee revenue collected by a topic
func (*Keeper) AddWhitelistAdmin ¶ added in v0.0.1
func (*Keeper) AddWorkerNonce ¶ added in v0.2.6
Adds a nonce to the unfulfilled nonces for the topic if it is not yet added (idempotent). If the max number of nonces is reached, then the function removes the oldest nonce and adds the new nonce.
func (*Keeper) AddWorkerWindowTopicId ¶ added in v0.3.0
SetTopicId appends a new TopicId to the list of TopicIds for a given BlockHeight. If no entry exists for the BlockHeight, it creates a new entry with the TopicId.
func (*Keeper) AppendForecast ¶ added in v0.3.0
func (k *Keeper) AppendForecast( ctx context.Context, topic types.Topic, blockHeight BlockHeight, nonceBlockHeight BlockHeight, forecast *types.Forecast, ) error
Append individual forecast for a topic/block
func (*Keeper) AppendInference ¶ added in v0.3.0
func (k *Keeper) AppendInference( ctx context.Context, topic types.Topic, blockHeight BlockHeight, nonceBlockHeight BlockHeight, inference *types.Inference, ) error
Append individual inference for a topic/block
func (*Keeper) AppendReputerLoss ¶ added in v0.3.0
func (k *Keeper) AppendReputerLoss( ctx context.Context, topic types.Topic, blockHeight BlockHeight, nonceBlockHeight BlockHeight, reputerLoss *types.ReputerValueBundle, ) error
Append loss bundle for a topic and blockHeight
func (*Keeper) AttemptTopicReactivation ¶ added in v0.4.0
If the topic weight is not less than lowest weight keep it as activated
func (*Keeper) BlockWithinReputerSubmissionWindowOfNonce ¶ added in v0.4.0
func (k *Keeper) BlockWithinReputerSubmissionWindowOfNonce(topic types.Topic, nonce types.ReputerRequestNonce, blockHeight int64) bool
Return true if the nonce is within the worker submission window for the topic
func (*Keeper) BlockWithinWorkerSubmissionWindowOfNonce ¶ added in v0.4.0
func (k *Keeper) BlockWithinWorkerSubmissionWindowOfNonce(topic types.Topic, nonce types.Nonce, blockHeight int64) bool
Return true if the nonce is within the worker submission window for the topic
func (*Keeper) CalcAndSaveForecasterScoreEmaForActiveSet ¶ added in v0.4.0
func (k *Keeper) CalcAndSaveForecasterScoreEmaForActiveSet( ctx context.Context, topic types.Topic, block types.BlockHeight, worker ActorId, newScore types.Score, ) (types.Score, error)
Calculates and saves the EMA scores for a active set worker and topic. By assuming worker is in active set, we know to calculate the EMA with a new, passed-in score.
func (*Keeper) CalcAndSaveForecasterScoreEmaWithLastSavedTopicQuantile ¶ added in v0.4.0
func (k *Keeper) CalcAndSaveForecasterScoreEmaWithLastSavedTopicQuantile( ctx context.Context, topic types.Topic, block types.BlockHeight, worker ActorId, ) error
Calculates and saves the EMA scores for a given worker and topic. Uses the last saved topic quantile score to calculate the EMA. This is useful for updating EMAs of workers in the passive set.
func (*Keeper) CalcAndSaveInfererScoreEmaForActiveSet ¶ added in v0.4.0
func (k *Keeper) CalcAndSaveInfererScoreEmaForActiveSet( ctx context.Context, topic types.Topic, block types.BlockHeight, worker ActorId, newScore types.Score, ) (types.Score, error)
Calculates and saves the EMA scores for a active set worker and topic. By assuming worker is in active set, we know to calculate the EMA with a new, passed-in score.
func (*Keeper) CalcAndSaveInfererScoreEmaWithLastSavedTopicQuantile ¶ added in v0.4.0
func (k *Keeper) CalcAndSaveInfererScoreEmaWithLastSavedTopicQuantile( ctx context.Context, topic types.Topic, block types.BlockHeight, worker ActorId, ) error
Calculates and saves the EMA scores for a given worker and topic. Uses the last saved topic quantile score to calculate the EMA. This is useful for updating EMAs of workers in the passive set.
func (*Keeper) CalcAndSaveReputerScoreEmaForActiveSet ¶ added in v0.4.0
func (k *Keeper) CalcAndSaveReputerScoreEmaForActiveSet( ctx context.Context, topic types.Topic, block types.BlockHeight, reputer ActorId, newScore types.Score, ) (types.Score, error)
Calculates and saves the EMA scores for a given reputer and topic. By assuming reputer is in active set, we know to calculate the EMA with a new, passed-in score.
func (*Keeper) CalcAndSaveReputerScoreEmaWithLastSavedTopicQuantile ¶ added in v0.4.0
func (k *Keeper) CalcAndSaveReputerScoreEmaWithLastSavedTopicQuantile( ctx context.Context, topic types.Topic, block types.BlockHeight, reputer ActorId, ) error
Calculates and saves the EMA scores for a given reputer and topic. Uses the last saved topic quantile score to calculate the EMA. This is useful for updating EMAs of reputers in the passive set.
func (Keeper) CalcAppropriatePaginationForUint64Cursor ¶ added in v0.2.6
func (k Keeper) CalcAppropriatePaginationForUint64Cursor(ctx context.Context, pagination *types.SimpleCursorPaginationRequest) (uint64, uint64, error)
Convert pagination.key from []bytes to uint64, if pagination is nil or [], len = 0 Get the limit from the pagination request, within acceptable bounds and defaulting as necessary
func (*Keeper) DeleteDelegateStakeRemoval ¶ added in v0.2.6
func (k *Keeper) DeleteDelegateStakeRemoval( ctx context.Context, blockHeight BlockHeight, topicId TopicId, reputer ActorId, delegator ActorId, ) error
remove a stake removal from the queue
func (*Keeper) DeleteStakeRemoval ¶ added in v0.2.6
func (k *Keeper) DeleteStakeRemoval( ctx context.Context, blockHeight BlockHeight, topicId TopicId, address ActorId, ) error
remove a stake removal from the queue
func (*Keeper) DeleteTopicRewardNonce ¶ added in v0.2.6
DeleteTopicRewardNonce removes the reward nonce entry for a given topic ID.
func (*Keeper) DeleteUnfulfilledReputerNonces ¶ added in v0.2.6
func (*Keeper) DeleteUnfulfilledWorkerNonces ¶ added in v0.2.6
func (*Keeper) DeleteWorkerWindowBlockheight ¶ added in v0.3.0
func (k *Keeper) DeleteWorkerWindowBlockheight(ctx sdk.Context, height BlockHeight) error
func (*Keeper) DripTopicFeeRevenue ¶ added in v0.2.6
Drop the fee revenue by the global Ecosystem bucket drip amount in the paper we say that ∆ C_{t,i} = N_{epochs,w} * C_{t,i} where C_{t,i} is the topic fee revenue and N_{epochs,w} is the number of epochs per week and this decay or drip happens each epoch
func (*Keeper) ExportGenesis ¶
ExportGenesis exports the module state to a genesis state.
func (*Keeper) FulfillReputerNonce ¶ added in v0.2.6
func (k *Keeper) FulfillReputerNonce(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
Attempts to fulfill an unfulfilled nonce. If the nonce is present, then it is removed from the unfulfilled nonces and this function returns true. If the nonce is not present, then the function returns false.
func (*Keeper) FulfillWorkerNonce ¶ added in v0.2.6
func (k *Keeper) FulfillWorkerNonce(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
Attempts to fulfill an unfulfilled nonce. If the nonce is present, then it is removed from the unfulfilled nonces and this function returns true. If the nonce is not present, then the function returns false.
func (*Keeper) GetActiveTopicIdsAtBlock ¶ added in v0.4.0
func (k *Keeper) GetActiveTopicIdsAtBlock(ctx context.Context, block BlockHeight) (types.TopicIds, error)
It is assumed the size of the outputted array has been bounded as it was constructed => can be safely handled in memory.
func (*Keeper) GetBankBalance ¶ added in v0.2.8
wrapper around bank keeper GetBalance
func (*Keeper) GetBinaryCodec ¶ added in v0.3.0
func (k *Keeper) GetBinaryCodec() codec.BinaryCodec
func (*Keeper) GetCurrentTopicWeight ¶ added in v0.2.6
func (k *Keeper) GetCurrentTopicWeight( ctx context.Context, topicId TopicId, topicEpochLength BlockHeight, topicRewardAlpha alloraMath.Dec, stakeImportance alloraMath.Dec, feeImportance alloraMath.Dec, ) (weight alloraMath.Dec, topicRevenue cosmosMath.Int, err error)
func (*Keeper) GetDelegateRewardPerShare ¶ added in v0.2.6
func (k *Keeper) GetDelegateRewardPerShare(ctx context.Context, topicId TopicId, reputer ActorId) (alloraMath.Dec, error)
Returns the share of reward by a specific topic and reputer
func (*Keeper) GetDelegateStakePlacement ¶ added in v0.2.6
func (k *Keeper) GetDelegateStakePlacement(ctx context.Context, topicId TopicId, delegator ActorId, target ActorId) (types.DelegatorInfo, error)
Returns the amount of stake placed by a specific delegator on a specific target.
func (Keeper) GetDelegateStakeRemoval ¶ added in v0.2.8
func (k Keeper) GetDelegateStakeRemoval( ctx context.Context, blockHeight BlockHeight, topicId TopicId, delegator ActorId, reputer ActorId, ) (types.DelegateStakeRemovalInfo, error)
get info about a removal
func (*Keeper) GetDelegateStakeRemovalForDelegatorReputerAndTopicId ¶ added in v0.2.8
func (k *Keeper) GetDelegateStakeRemovalForDelegatorReputerAndTopicId( ctx sdk.Context, delegator string, reputer string, topicId uint64, ) (removal types.DelegateStakeRemovalInfo, found bool, err error)
return the first found stake removal object for a delegator, reputer, and topicId
func (*Keeper) GetDelegateStakeRemovalsUpUntilBlock ¶ added in v0.3.0
func (k *Keeper) GetDelegateStakeRemovalsUpUntilBlock( ctx context.Context, blockHeight BlockHeight, limit uint64, ) ([]types.DelegateStakeRemovalInfo, bool, error)
get a list of stake removals that are valid for removal before and including this block.
func (*Keeper) GetDelegateStakeUponReputer ¶ added in v0.2.6
func (k *Keeper) GetDelegateStakeUponReputer(ctx context.Context, topicId TopicId, target ActorId) (cosmosMath.Int, error)
Returns the amount of stake placed upon a reputer by delegators within that topic
func (*Keeper) GetForecastScoresUntilBlock ¶ added in v0.2.6
func (*Keeper) GetForecasterNetworkRegret ¶ added in v0.2.6
func (k *Keeper) GetForecasterNetworkRegret(ctx context.Context, topicId TopicId, worker ActorId) (types.TimestampedValue, bool, error)
Returns the regret of a forecaster from comparing loss of forecaster relative to loss of other forecasters Returns (0, true) if no regret is found
func (*Keeper) GetForecasterScoreEma ¶ added in v0.4.0
func (*Keeper) GetForecastsAtBlock ¶ added in v0.2.6
func (*Keeper) GetInferenceScoresUntilBlock ¶ added in v0.2.6
func (*Keeper) GetInferencesAtBlock ¶ added in v0.2.6
func (k *Keeper) GetInferencesAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.Inferences, error)
func (*Keeper) GetInfererNetworkRegret ¶ added in v0.2.6
func (k *Keeper) GetInfererNetworkRegret(ctx context.Context, topicId TopicId, worker ActorId) (types.TimestampedValue, bool, error)
Returns the regret of a inferer from comparing loss of inferer relative to loss of other inferers Returns (0, true) if no regret is found
func (*Keeper) GetInfererScoreEma ¶ added in v0.4.0
func (*Keeper) GetLastDripBlock ¶ added in v0.4.0
return the last time we dripped the fee revenue for a topic
func (*Keeper) GetLatestNetworkLossBundle ¶ added in v0.4.0
func (k *Keeper) GetLatestNetworkLossBundle(ctx context.Context, topicId TopicId) (*types.ValueBundle, error)
Returns the latest network loss bundle for a given topic id.
func (*Keeper) GetLatestTopicInferences ¶ added in v0.2.8
func (k *Keeper) GetLatestTopicInferences(ctx context.Context, topicId TopicId) (*types.Inferences, BlockHeight, error)
GetLatestTopicInferences retrieves the latest topic inferences and its block height.
func (*Keeper) GetListeningCoefficient ¶ added in v0.2.6
func (*Keeper) GetLowestActiveTopicWeightAtBlock ¶ added in v0.4.0
func (k *Keeper) GetLowestActiveTopicWeightAtBlock(ctx context.Context, block BlockHeight) (types.TopicIdWeightPair, bool, error)
Boolean is true if the block is not found (true if no prior value), else false
func (*Keeper) GetNaiveInfererNetworkRegret ¶ added in v0.3.0
func (*Keeper) GetNetworkLossBundleAtBlock ¶ added in v0.2.6
func (k *Keeper) GetNetworkLossBundleAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.ValueBundle, error)
A function that accepts a topicId and returns the network LossBundle at the block or error
func (*Keeper) GetNextPossibleChurningBlockByTopicId ¶ added in v0.4.0
func (k *Keeper) GetNextPossibleChurningBlockByTopicId(ctx context.Context, topicId TopicId) (BlockHeight, bool, error)
Boolean true if topic is active, else false
func (*Keeper) GetNextTopicId ¶ added in v0.2.6
Returns the number of topics that are active in the network
func (*Keeper) GetOneInForecasterNetworkRegret ¶ added in v0.2.6
func (k *Keeper) GetOneInForecasterNetworkRegret(ctx context.Context, topicId TopicId, oneInForecaster ActorId, inferer ActorId) (types.TimestampedValue, bool, error)
Returns the regret of a forecaster from comparing loss of forecaster relative to loss of other forecasters Returns (0, true) if no regret is found
func (*Keeper) GetOneOutForecasterForecasterNetworkRegret ¶ added in v0.3.0
func (*Keeper) GetOneOutForecasterInfererNetworkRegret ¶ added in v0.3.0
func (*Keeper) GetOneOutInfererForecasterNetworkRegret ¶ added in v0.3.0
func (*Keeper) GetOneOutInfererInfererNetworkRegret ¶ added in v0.3.0
func (*Keeper) GetPreviousForecastRewardFraction ¶ added in v0.2.6
func (k *Keeper) GetPreviousForecastRewardFraction(ctx context.Context, topicId TopicId, worker ActorId) (alloraMath.Dec, bool, error)
Gets the previous V_{i-1,m} Returns previous reward fraction, and true if it has yet to be set for the first time (else false)
func (*Keeper) GetPreviousForecasterScoreRatio ¶ added in v0.3.0
func (*Keeper) GetPreviousInferenceRewardFraction ¶ added in v0.2.6
func (k *Keeper) GetPreviousInferenceRewardFraction(ctx context.Context, topicId TopicId, worker ActorId) (alloraMath.Dec, bool, error)
Gets the previous U_{i-1,m} Returns previous reward fraction, and true if it has yet to be set for the first time (else false)
func (Keeper) GetPreviousPercentageRewardToStakedReputers ¶ added in v0.2.6
func (*Keeper) GetPreviousReputerRewardFraction ¶ added in v0.2.6
func (k *Keeper) GetPreviousReputerRewardFraction(ctx context.Context, topicId TopicId, reputer ActorId) (alloraMath.Dec, bool, error)
Gets the previous W_{i-1,m} Returns previous reward fraction, and true if it has yet to be set for the first time (else false)
func (*Keeper) GetPreviousTopicQuantileForecasterScoreEma ¶ added in v0.4.0
func (k *Keeper) GetPreviousTopicQuantileForecasterScoreEma(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
Gets the previous Forecaster Score Ema at Topic quantile Returns previous forecaster score ema at topic quantile, or 0 if not yet seen
func (*Keeper) GetPreviousTopicQuantileInfererScoreEma ¶ added in v0.4.0
func (k *Keeper) GetPreviousTopicQuantileInfererScoreEma(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
Gets the previous Inferer Score Ema at Topic quantile Returns previous inferer score ema at topic quantile, or 0 if not yet seen
func (*Keeper) GetPreviousTopicQuantileReputerScoreEma ¶ added in v0.4.0
func (k *Keeper) GetPreviousTopicQuantileReputerScoreEma(ctx context.Context, topicId TopicId) (alloraMath.Dec, error)
Gets the previous Reputer Score Ema at Topic quantile Returns previous reputer score ema at topic quantile, or 0 if not yet seen
func (*Keeper) GetPreviousTopicWeight ¶ added in v0.2.6
func (k *Keeper) GetPreviousTopicWeight(ctx context.Context, topicId TopicId) (alloraMath.Dec, bool, error)
Get the previous weight during rewards calculation for a topic Returns ((0,0), true) if there was no prior topic weight set, else ((x,y), false) where x,y!=0
func (*Keeper) GetReputerInfo ¶ added in v0.3.0
func (*Keeper) GetReputerLossBundlesAtBlock ¶ added in v0.2.6
func (k *Keeper) GetReputerLossBundlesAtBlock(ctx context.Context, topicId TopicId, block BlockHeight) (*types.ReputerValueBundles, error)
Get loss bundles for a topic/timestamp
func (*Keeper) GetReputerScoreEma ¶ added in v0.4.0
func (*Keeper) GetReputerTopicLastCommit ¶ added in v0.3.0
func (*Keeper) GetReputersScoresAtBlock ¶ added in v0.2.6
func (*Keeper) GetRewardableTopics ¶ added in v0.2.6
Get the rewardable topics
func (*Keeper) GetStakeFromDelegatorInTopic ¶ added in v0.2.6
func (k *Keeper) GetStakeFromDelegatorInTopic(ctx context.Context, topicId TopicId, delegator ActorId) (cosmosMath.Int, error)
Returns the amount of stake placed by a specific delegator.
func (Keeper) GetStakeRemoval ¶ added in v0.2.8
func (k Keeper) GetStakeRemoval( ctx context.Context, BlockHeight int64, topicId TopicId, reputer ActorId, ) (types.StakeRemovalInfo, error)
get info about a removal
func (*Keeper) GetStakeRemovalForReputerAndTopicId ¶ added in v0.2.8
func (k *Keeper) GetStakeRemovalForReputerAndTopicId( ctx sdk.Context, reputer string, topicId uint64, ) (removal types.StakeRemovalInfo, found bool, err error)
get the first found stake removal for a reputer and topicId or err not found if not found
func (*Keeper) GetStakeRemovalsUpUntilBlock ¶ added in v0.3.0
func (k *Keeper) GetStakeRemovalsUpUntilBlock( ctx context.Context, blockHeight BlockHeight, limit uint64, ) (ret []types.StakeRemovalInfo, anyLeft bool, err error)
get a list of stake removals that are valid for removal before and including this block.
func (*Keeper) GetStakeReputerAuthority ¶ added in v0.2.8
func (k *Keeper) GetStakeReputerAuthority(ctx context.Context, topicId TopicId, reputer ActorId) (cosmosMath.Int, error)
Returns the amount of stake placed by a specific reputer on a specific topic. Includes the stake placed by delegators on the reputer in that topic.
func (*Keeper) GetStorageService ¶ added in v0.3.0
func (k *Keeper) GetStorageService() coreStore.KVStoreService
func (*Keeper) GetTargetWeight ¶ added in v0.2.6
func (k *Keeper) GetTargetWeight( topicStake alloraMath.Dec, topicEpochLength int64, topicFeeRevenue alloraMath.Dec, stakeImportance alloraMath.Dec, feeImportance alloraMath.Dec, ) (alloraMath.Dec, error)
Return the target weight of a topic ^w_{t,i} = S^{μ}_{t,i} * (P/C)^{ν}_{t,i} where S_{t,i} is the stake of of topic t in the last reward epoch i and (P/C)_{t,i} is the fee revenue collected for performing inference per topic epoch requests for topic t in the last reward epoch i μ, ν are global constants with fiduciary values of 0.5 and 0.5
func (*Keeper) GetTopicFeeRevenue ¶ added in v0.2.6
Get the amount of fee revenue collected by a topic
func (*Keeper) GetTopicRewardNonce ¶ added in v0.2.6
GetTopicRewardNonce retrieves the reward nonce for a given topic ID.
func (*Keeper) GetTopicStake ¶
Gets the stake in the network for a given topic
func (*Keeper) GetTopicWeightFromTopicId ¶ added in v0.4.0
func (*Keeper) GetTotalRewardToDistribute ¶ added in v0.2.6
GetTotalRewardToDistribute
func (Keeper) GetTotalStake ¶
Gets the total sum of all stake in the network across all topics
func (*Keeper) GetUnfulfilledReputerNonces ¶ added in v0.2.6
func (*Keeper) GetUnfulfilledWorkerNonces ¶ added in v0.2.6
func (*Keeper) GetWorkerForecastScoresAtBlock ¶ added in v0.2.6
func (*Keeper) GetWorkerInferenceScoresAtBlock ¶ added in v0.2.6
func (*Keeper) GetWorkerInfo ¶ added in v0.3.0
func (*Keeper) GetWorkerLatestInferenceByTopicId ¶ added in v0.0.4
func (*Keeper) GetWorkerTopicLastCommit ¶ added in v0.3.0
func (*Keeper) GetWorkerWindowTopicIds ¶ added in v0.3.0
GetTopicIds returns the TopicIds for a given BlockHeight. If no TopicIds are found for the BlockHeight, it returns an empty slice.
func (*Keeper) InactivateTopic ¶
Inactivate the topic
func (*Keeper) IncrementTopicId ¶
Gets next topic id
func (*Keeper) InitGenesis ¶
InitGenesis initializes the module state from a genesis state.
func (*Keeper) InsertForecasts ¶ added in v0.2.6
func (k *Keeper) InsertForecasts(ctx context.Context, topicId TopicId, nonceBlockHeight BlockHeight, forecasts types.Forecasts) error
Insert a complete set of inferences for a topic/block. Overwrites previous ones.
func (*Keeper) InsertInferences ¶
func (k *Keeper) InsertInferences( ctx context.Context, topicId TopicId, nonceBlockHeight BlockHeight, inferences types.Inferences, ) error
Insert a complete set of inferences for a topic/block. Overwrites previous ones.
func (*Keeper) InsertNetworkLossBundleAtBlock ¶ added in v0.2.6
func (k *Keeper) InsertNetworkLossBundleAtBlock(ctx context.Context, topicId TopicId, block BlockHeight, lossBundle types.ValueBundle) error
Insert a network loss bundle for a topic and block.
func (*Keeper) InsertReputer ¶
func (k *Keeper) InsertReputer(ctx context.Context, topicId TopicId, reputer ActorId, reputerInfo types.OffchainNode) error
Adds a new reputer to the reputer tracking data structures, reputers and topicReputers
func (*Keeper) InsertReputerLossBundlesAtBlock ¶ added in v0.2.6
func (k *Keeper) InsertReputerLossBundlesAtBlock(ctx context.Context, topicId TopicId, block BlockHeight, reputerLossBundles types.ReputerValueBundles) error
Insert a loss bundle for a topic and timestamp. Overwrites previous ones stored at that composite index.
func (*Keeper) InsertReputerScore ¶ added in v0.2.6
func (*Keeper) InsertWorker ¶
func (k *Keeper) InsertWorker(ctx context.Context, topicId TopicId, worker ActorId, workerInfo types.OffchainNode) error
Adds a new worker to the worker tracking data structures, workers and topicWorkers
func (*Keeper) InsertWorkerForecastScore ¶ added in v0.2.6
func (*Keeper) InsertWorkerInferenceScore ¶ added in v0.2.6
func (*Keeper) IsReputerNonceUnfulfilled ¶ added in v0.2.6
func (k *Keeper) IsReputerNonceUnfulfilled(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
True if nonce is unfulfilled, false otherwise.
func (*Keeper) IsReputerRegisteredInTopic ¶ added in v0.2.6
func (k *Keeper) IsReputerRegisteredInTopic(ctx context.Context, topicId TopicId, reputer ActorId) (bool, error)
True if reputer is registered in topic, else False
func (*Keeper) IsTopicActive ¶ added in v0.2.6
Check if the topic is activated or not
func (Keeper) IsWhitelistAdmin ¶ added in v0.0.1
func (*Keeper) IsWorkerNonceUnfulfilled ¶ added in v0.2.6
func (k *Keeper) IsWorkerNonceUnfulfilled(ctx context.Context, topicId TopicId, nonce *types.Nonce) (bool, error)
True if nonce is unfulfilled, false otherwise.
func (*Keeper) IsWorkerRegisteredInTopic ¶ added in v0.2.6
func (k *Keeper) IsWorkerRegisteredInTopic(ctx context.Context, topicId TopicId, worker ActorId) (bool, error)
True if worker is registered in topic, else False
func (*Keeper) PruneRecordsAfterRewards ¶ added in v0.2.6
func (k *Keeper) PruneRecordsAfterRewards(ctx context.Context, topicId TopicId, blockHeight int64) error
Iterate through topic state and prune records that are no longer needed
func (*Keeper) PruneReputerNonces ¶ added in v0.2.6
func (*Keeper) PruneTopicActivationDataAtBlock ¶ added in v0.4.0
func (k *Keeper) PruneTopicActivationDataAtBlock(ctx context.Context, block BlockHeight) error
Removes data for a block if it exists in the maps: - blockToActiveTopics - blockToLowestActiveTopicWeight No op if the block does not exist in the maps
func (*Keeper) PruneWorkerNonces ¶ added in v0.2.6
func (*Keeper) RemoveDelegateStake ¶ added in v0.2.6
func (k *Keeper) RemoveDelegateStake( ctx context.Context, stakeRemovalBlockHeight BlockHeight, topicId TopicId, delegator ActorId, reputer ActorId, stakeToRemove cosmosMath.Int, ) error
Removes delegate stake from the system for a given topic, delegator, and reputer subtracts from: totalStake, topicStake, stakeReputerAuthority
stakeSumFromDelegator, delegatedStakes, stakeFromDelegatorsUponReputer
func (*Keeper) RemoveReputer ¶
Remove a reputer to the reputer tracking data structures and topicReputers
func (*Keeper) RemoveReputerStake ¶ added in v0.2.8
func (k *Keeper) RemoveReputerStake( ctx context.Context, blockHeight BlockHeight, topicId TopicId, reputer ActorId, stakeToRemove cosmosMath.Int) error
Removes stake from the system for a given topic and reputer subtracts from: totalStake, topicStake, stakeReputerAuthority
func (*Keeper) RemoveRewardableTopic ¶ added in v0.2.6
func (*Keeper) RemoveWhitelistAdmin ¶ added in v0.0.1
func (*Keeper) RemoveWorker ¶
Remove a worker to the worker tracking data structures and topicWorkers
func (*Keeper) ResetLowestActiveTopicWeightAtBlock ¶ added in v0.4.0
func (k *Keeper) ResetLowestActiveTopicWeightAtBlock(ctx context.Context, block BlockHeight) error
func (*Keeper) SendCoinsFromAccountToModule ¶ added in v0.2.6
func (k *Keeper) SendCoinsFromAccountToModule(ctx context.Context, sender ActorId, recipientModule string, amt sdk.Coins) error
wrapper around bank keeper SendCoinsFromAccountToModule
func (*Keeper) SendCoinsFromModuleToAccount ¶ added in v0.2.6
func (k *Keeper) SendCoinsFromModuleToAccount(ctx context.Context, senderModule string, recipient ActorId, amt sdk.Coins) error
wrapper around bank keeper SendCoinsFromModuleToAccount
func (*Keeper) SendCoinsFromModuleToModule ¶
func (k *Keeper) SendCoinsFromModuleToModule(ctx context.Context, senderModule, recipientModule string, amt sdk.Coins) error
wrapper around bank keeper SendCoinsFromModuleToModule
func (*Keeper) SetDelegateRewardPerShare ¶ added in v0.2.6
func (k *Keeper) SetDelegateRewardPerShare(ctx context.Context, topicId TopicId, reputer ActorId, share alloraMath.Dec) error
Set the share on specific reputer and topicId
func (*Keeper) SetDelegateStakePlacement ¶ added in v0.2.6
func (k *Keeper) SetDelegateStakePlacement(ctx context.Context, topicId TopicId, delegator ActorId, target ActorId, stake types.DelegatorInfo) error
Sets the amount of stake placed by a specific delegator on a specific target.
func (*Keeper) SetDelegateStakeRemoval ¶ added in v0.2.6
func (k *Keeper) SetDelegateStakeRemoval(ctx context.Context, removalInfo types.DelegateStakeRemovalInfo) error
For a given address, adds their stake removal information to the removal queue for delay waiting The topic used will be the topic set in the `removalInfo` This completely overrides the existing stake removal
func (*Keeper) SetDelegateStakeUponReputer ¶ added in v0.2.6
func (k *Keeper) SetDelegateStakeUponReputer(ctx context.Context, topicId TopicId, target ActorId, stake cosmosMath.Int) error
Sets the amount of stake placed on a specific target.
func (*Keeper) SetForecasterNetworkRegret ¶ added in v0.2.6
func (*Keeper) SetForecasterScoreEma ¶ added in v0.4.0
func (*Keeper) SetInfererNetworkRegret ¶ added in v0.2.6
func (*Keeper) SetInfererScoreEma ¶ added in v0.4.0
func (k *Keeper) SetInfererScoreEma(ctx context.Context, topicId TopicId, worker ActorId, score types.Score) error
If the new score is older than the current score, don't update
func (*Keeper) SetLastDripBlock ¶ added in v0.4.0
set the last time we dripped the fee revenue for a topic
func (*Keeper) SetListeningCoefficient ¶ added in v0.2.6
func (*Keeper) SetNaiveInfererNetworkRegret ¶ added in v0.3.0
func (*Keeper) SetOneInForecasterNetworkRegret ¶ added in v0.2.6
func (*Keeper) SetOneOutForecasterForecasterNetworkRegret ¶ added in v0.3.0
func (*Keeper) SetOneOutForecasterInfererNetworkRegret ¶ added in v0.3.0
func (*Keeper) SetOneOutInfererForecasterNetworkRegret ¶ added in v0.3.0
func (*Keeper) SetOneOutInfererInfererNetworkRegret ¶ added in v0.3.0
func (*Keeper) SetPreviousForecastRewardFraction ¶ added in v0.2.6
func (k *Keeper) SetPreviousForecastRewardFraction(ctx context.Context, topicId TopicId, worker ActorId, reward alloraMath.Dec) error
Sets the previous V_{i-1,m}
func (*Keeper) SetPreviousForecasterScoreRatio ¶ added in v0.3.0
func (*Keeper) SetPreviousInferenceRewardFraction ¶ added in v0.2.6
func (k *Keeper) SetPreviousInferenceRewardFraction(ctx context.Context, topicId TopicId, worker ActorId, reward alloraMath.Dec) error
Sets the previous U_{i-1,m}
func (*Keeper) SetPreviousPercentageRewardToStakedReputers ¶ added in v0.2.6
func (*Keeper) SetPreviousReputerRewardFraction ¶ added in v0.2.6
func (k *Keeper) SetPreviousReputerRewardFraction(ctx context.Context, topicId TopicId, reputer ActorId, reward alloraMath.Dec) error
Sets the previous W_{i-1,m}
func (*Keeper) SetPreviousTopicQuantileForecasterScoreEma ¶ added in v0.4.0
func (*Keeper) SetPreviousTopicQuantileInfererScoreEma ¶ added in v0.4.0
func (*Keeper) SetPreviousTopicQuantileReputerScoreEma ¶ added in v0.4.0
func (*Keeper) SetPreviousTopicWeight ¶ added in v0.2.6
func (k *Keeper) SetPreviousTopicWeight(ctx context.Context, topicId TopicId, weight alloraMath.Dec) error
Set the previous weight during rewards calculation for a topic
func (*Keeper) SetReputerScoreEma ¶ added in v0.4.0
func (k *Keeper) SetReputerScoreEma(ctx context.Context, topicId TopicId, reputer ActorId, score types.Score) error
If the new score is older than the current score, don't update
func (*Keeper) SetReputerTopicLastCommit ¶ added in v0.3.0
func (*Keeper) SetStakeFromDelegator ¶ added in v0.2.6
func (k *Keeper) SetStakeFromDelegator(ctx context.Context, topicId TopicId, delegator ActorId, stake cosmosMath.Int) error
Sets the amount of stake placed by a specific delegator.
func (*Keeper) SetStakeRemoval ¶ added in v0.2.6
For a given address, adds their stake removal information to the removal queue for delay waiting The topic used will be the topic set in the `removalInfo` This completely overrides the existing stake removal
func (*Keeper) SetStakeReputerAuthority ¶ added in v0.2.8
func (k *Keeper) SetStakeReputerAuthority(ctx context.Context, topicId TopicId, reputer ActorId, amount cosmosMath.Int) error
Sets the amount of stake placed upon a reputer in addition to their personal stake on a specific topic Includes the stake placed by delegators on the reputer in that topic.
func (*Keeper) SetTopicRewardNonce ¶ added in v0.2.6
SetTopicRewardNonce sets the reward nonce for a given topic ID.
func (*Keeper) SetTopicStake ¶
sets the cumulative amount of stake in a topic
func (*Keeper) SetTotalStake ¶
Sets the total sum of all stake in the network across all topics
func (*Keeper) SetWorkerTopicLastCommit ¶ added in v0.3.0
func (*Keeper) TopicExists ¶
Checks if a topic exists
func (*Keeper) UpdateTopicEpochLastEnded ¶ added in v0.2.6
func (k *Keeper) UpdateTopicEpochLastEnded(ctx context.Context, topicId TopicId, epochLastEnded BlockHeight) error
UpdateTopicInferenceLastRan updates the InferenceLastRan timestamp for a given topic.
func (*Keeper) UpdateTopicInitialRegret ¶ added in v0.2.13
func (k *Keeper) UpdateTopicInitialRegret(ctx context.Context, topicId TopicId, initialRegret alloraMath.Dec) error
UpdateTopicInitialRegret updates the InitialRegret for a given topic.
func (*Keeper) ValidateStringIsBech32 ¶ added in v0.2.6
type Quadruple ¶ added in v0.2.8
type Quadruple[K1, K2, K3, K4 any] struct { // contains filtered or unexported fields }
Quadruple defines a multipart key composed of four keys.
func Join4 ¶ added in v0.2.8
Join4 instantiates a new Quadruple instance composed of the three provided keys, in order.
func QuadrupleDoublePrefix ¶ added in v0.2.8
QuadrupleDoublePrefix creates a new Quadruple instance composed only of the first two parts of the key.
func QuadrupleSinglePrefix ¶ added in v0.2.8
QuadrupleSinglePrefix creates a new Quadruple instance composed only of the first part of the key.
func QuadrupleTriplePrefix ¶ added in v0.2.8
QuadrupleTriplePrefix creates a new Quadruple instance composed only of the first three parts of the key.
func (Quadruple[K1, K2, K3, K4]) K1 ¶ added in v0.2.8
func (t Quadruple[K1, K2, K3, K4]) K1() (x K1)
K1 returns the first part of the key. If nil, the zero value is returned.
func (Quadruple[K1, K2, K3, K4]) K2 ¶ added in v0.2.8
func (t Quadruple[K1, K2, K3, K4]) K2() (x K2)
K2 returns the second part of the key. If nil, the zero value is returned.