Documentation
¶
Index ¶
- type AltairMetrics
- func (p AltairMetrics) GetBaseReward(valIdx uint64, effectiveBalance uint64, totalEffectiveBalance uint64) uint64
- func (p AltairMetrics) GetBaseRewardPerInc(totalEffectiveBalance uint64) uint64
- func (p AltairMetrics) GetMaxAttestationReward(valIdx uint64) uint64
- func (p AltairMetrics) GetMaxProposerAttReward(valIdx uint64) (uint64, int64)
- func (p AltairMetrics) GetMaxProposerSyncReward(valIdx uint64, valPubKey phase0.BLSPubKey, valEffectiveBalance uint64, ...) int64
- func (p AltairMetrics) GetMaxReward(valIdx uint64) (ValidatorSepRewards, error)
- func (p AltairMetrics) GetMaxSyncComReward(valIdx uint64) uint64
- func (p AltairMetrics) GetMetricsBase() StateMetricsBase
- type Phase0Metrics
- func (p *Phase0Metrics) CalculateAttestingVals()
- func (p Phase0Metrics) GetBaseReward(valEffectiveBalance uint64) uint64
- func (p Phase0Metrics) GetMaxProposerReward(valIdx uint64, baseReward uint64) (uint64, int64)
- func (p Phase0Metrics) GetMaxReward(valIdx uint64) (ValidatorSepRewards, error)
- func (p Phase0Metrics) GetMetricsBase() StateMetricsBase
- func (p Phase0Metrics) IsCorrectHead(attestation phase0.PendingAttestation) bool
- func (p Phase0Metrics) IsCorrectSource() bool
- func (p Phase0Metrics) IsCorrectTarget(attestation phase0.PendingAttestation) bool
- type StateMetrics
- type StateMetricsBase
- type ValidatorSepRewards
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AltairMetrics ¶
type AltairMetrics struct {
StateMetricsBase
}
func NewAltairMetrics ¶
func NewAltairMetrics(nextBstate fork_state.ForkStateContentBase, bstate fork_state.ForkStateContentBase, prevBstate fork_state.ForkStateContentBase) AltairMetrics
func (AltairMetrics) GetBaseReward ¶
func (p AltairMetrics) GetBaseReward(valIdx uint64, effectiveBalance uint64, totalEffectiveBalance uint64) uint64
func (AltairMetrics) GetBaseRewardPerInc ¶
func (p AltairMetrics) GetBaseRewardPerInc(totalEffectiveBalance uint64) uint64
func (AltairMetrics) GetMaxAttestationReward ¶
func (p AltairMetrics) GetMaxAttestationReward(valIdx uint64) uint64
func (AltairMetrics) GetMaxProposerAttReward ¶
func (p AltairMetrics) GetMaxProposerAttReward(valIdx uint64) (uint64, int64)
TODO: to be implemented once we can process each block https://github.com/ethereum/consensus-specs/blob/dev/specs/altair/beacon-chain.md#modified-process_attestation
func (AltairMetrics) GetMaxProposerSyncReward ¶
func (p AltairMetrics) GetMaxProposerSyncReward(valIdx uint64, valPubKey phase0.BLSPubKey, valEffectiveBalance uint64, totalEffectiveBalance uint64) int64
TODO: to be implemented once we can process each block https://github.com/ethereum/consensus-specs/blob/dev/specs/altair/beacon-chain.md#sync-aggregate-processing
func (AltairMetrics) GetMaxReward ¶
func (p AltairMetrics) GetMaxReward(valIdx uint64) (ValidatorSepRewards, error)
func (AltairMetrics) GetMaxSyncComReward ¶
func (p AltairMetrics) GetMaxSyncComReward(valIdx uint64) uint64
So far we have computed the max sync committee proposer reward for a slot. Since the validator remains in the sync committee for the full epoch, we multiply the reward for the 32 slots in the epoch. https://github.com/ethereum/consensus-specs/blob/dev/specs/altair/beacon-chain.md#sync-aggregate-processing
func (AltairMetrics) GetMetricsBase ¶
func (p AltairMetrics) GetMetricsBase() StateMetricsBase
type Phase0Metrics ¶
type Phase0Metrics struct {
StateMetricsBase
}
func NewPhase0Metrics ¶
func NewPhase0Metrics(nextBstate fork_state.ForkStateContentBase, currentState fork_state.ForkStateContentBase, prevState fork_state.ForkStateContentBase) Phase0Metrics
func (*Phase0Metrics) CalculateAttestingVals ¶
func (p *Phase0Metrics) CalculateAttestingVals()
Processes attestations and fills several structs
func (Phase0Metrics) GetBaseReward ¶
func (p Phase0Metrics) GetBaseReward(valEffectiveBalance uint64) uint64
BaseReward = ( effectiveBalance * (BaseRewardFactor)/(BaseRewardsPerEpoch * sqrt(activeBalance)) ) https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#helpers
func (Phase0Metrics) GetMaxProposerReward ¶
func (p Phase0Metrics) GetMaxProposerReward(valIdx uint64, baseReward uint64) (uint64, int64)
func (Phase0Metrics) GetMaxReward ¶
func (p Phase0Metrics) GetMaxReward(valIdx uint64) (ValidatorSepRewards, error)
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#rewards-and-penalties-1 https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#components-of-attestation-deltas
func (Phase0Metrics) GetMetricsBase ¶
func (p Phase0Metrics) GetMetricsBase() StateMetricsBase
func (Phase0Metrics) IsCorrectHead ¶
func (p Phase0Metrics) IsCorrectHead(attestation phase0.PendingAttestation) bool
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#helper-functions-1
func (Phase0Metrics) IsCorrectSource ¶
func (p Phase0Metrics) IsCorrectSource() bool
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#helper-functions-1
func (Phase0Metrics) IsCorrectTarget ¶
func (p Phase0Metrics) IsCorrectTarget(attestation phase0.PendingAttestation) bool
https://github.com/ethereum/consensus-specs/blob/dev/specs/phase0/beacon-chain.md#helper-functions-1
type StateMetrics ¶
type StateMetrics interface {
GetMetricsBase() StateMetricsBase
GetMaxReward(valIdx uint64) (ValidatorSepRewards, error)
}
func StateMetricsByForkVersion ¶
func StateMetricsByForkVersion(nextBstate fork_state.ForkStateContentBase, bstate fork_state.ForkStateContentBase, prevBstate fork_state.ForkStateContentBase, iApi *http.Service) (StateMetrics, error)
type StateMetricsBase ¶
type StateMetricsBase struct {
CurrentState fork_state.ForkStateContentBase
PrevState fork_state.ForkStateContentBase
NextState fork_state.ForkStateContentBase
}
func (StateMetricsBase) EpochReward ¶
func (p StateMetricsBase) EpochReward(valIdx uint64) int64
func (StateMetricsBase) GetAttInclusionSlot ¶
func (p StateMetricsBase) GetAttInclusionSlot(valIdx uint64) int64
func (StateMetricsBase) GetAttSlot ¶
func (p StateMetricsBase) GetAttSlot(valIdx uint64) uint64