mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2025-01-09 19:21:19 +00:00
caf9bdbc6f
* commit initial work * checkpoint current work * gaz * checkpoint * req/resp changes * initial-sync * finally works * fix error * fix bugs * fix issue * fix issues * fix refs * tests * more text fixes * more text fixes * more text fixes * fix tests * fix tests * tests * finally fix builds * finally * comments * fix fuzz * share common library * fix * fix * add in more defensive nil checks * add in more defensive nil checks * imports * Apply suggestions from code review Co-authored-by: terence tsao <terence@prysmaticlabs.com> * Apply suggestions from code review Co-authored-by: terence tsao <terence@prysmaticlabs.com> * Update shared/interfaces/block_interface.go Co-authored-by: terence tsao <terence@prysmaticlabs.com> * Update shared/interfaces/block_wrapper.go Co-authored-by: terence tsao <terence@prysmaticlabs.com> * Update shared/interfaces/block_interface.go Co-authored-by: terence tsao <terence@prysmaticlabs.com> * imports * fix bad changes * fix * terence's review * terence's review * fmt * Update beacon-chain/rpc/beacon/blocks.go Co-authored-by: Radosław Kapka <rkapka@wp.pl> * fix tests * fix * fix all tests Co-authored-by: terence tsao <terence@prysmaticlabs.com> Co-authored-by: Radosław Kapka <rkapka@wp.pl>
66 lines
2.1 KiB
Go
66 lines
2.1 KiB
Go
// Package state contains types for state operation-specific events fired
|
|
// during the runtime of a beacon node such state initialization, state updates,
|
|
// and chain start.
|
|
package state
|
|
|
|
import (
|
|
"time"
|
|
|
|
types "github.com/prysmaticlabs/eth2-types"
|
|
"github.com/prysmaticlabs/prysm/shared/interfaces"
|
|
)
|
|
|
|
const (
|
|
// BlockProcessed is sent after a block has been processed and updated the state database.
|
|
BlockProcessed = iota + 1
|
|
// ChainStarted is sent when enough validators are active to start proposing blocks.
|
|
ChainStarted
|
|
// Initialized is sent when the internal beacon node's state is ready to be accessed.
|
|
Initialized
|
|
// Synced is sent when the beacon node has completed syncing and is ready to participate in the network.
|
|
Synced
|
|
// Reorg is an event sent when the new head state's slot after a block
|
|
// transition is lower than its previous head state slot value.
|
|
Reorg
|
|
)
|
|
|
|
// BlockProcessedData is the data sent with BlockProcessed events.
|
|
type BlockProcessedData struct {
|
|
// Slot is the slot of the processed block.
|
|
Slot types.Slot
|
|
// BlockRoot of the processed block.
|
|
BlockRoot [32]byte
|
|
// SignedBlock is the physical processed block.
|
|
SignedBlock interfaces.SignedBeaconBlock
|
|
// Verified is true if the block's BLS contents have been verified.
|
|
Verified bool
|
|
}
|
|
|
|
// ChainStartedData is the data sent with ChainStarted events.
|
|
type ChainStartedData struct {
|
|
// StartTime is the time at which the chain started.
|
|
StartTime time.Time
|
|
}
|
|
|
|
// SyncedData is the data sent with Synced events.
|
|
type SyncedData struct {
|
|
// StartTime is the time at which the chain started.
|
|
StartTime time.Time
|
|
}
|
|
|
|
// InitializedData is the data sent with Initialized events.
|
|
type InitializedData struct {
|
|
// StartTime is the time at which the chain started.
|
|
StartTime time.Time
|
|
// GenesisValidatorsRoot represents state.validators.HashTreeRoot().
|
|
GenesisValidatorsRoot []byte
|
|
}
|
|
|
|
// ReorgData is the data alongside a reorg event.
|
|
type ReorgData struct {
|
|
// NewSlot is the slot of new state after the reorg.
|
|
NewSlot types.Slot
|
|
// OldSlot is the slot of the head state before the reorg.
|
|
OldSlot types.Slot
|
|
}
|