mirror of
https://gitlab.com/pulsechaincom/prysm-pulse.git
synced 2025-01-11 12:10:05 +00:00
918129cf36
* refactor initialization to blocking startup method * require genesisSetter in blockchain, fix tests * work-around gazelle weirdness * fix dep gazelle ignores * only call SetGenesis once * fix typo * validator test setup and fix to return right error * move waitForChainStart to Start * wire up sync Service.genesisWaiter * fix p2p genesisWaiter plumbing * remove extra clock type, integrate into genesis and rename * use time.Now when no Nower is specified * remove unused ClockSetter * simplify rpc context checking * fix typo * use clock everywhere in sync; [32]byte val root * don't use DeepEqual to compare [32]byte and []byte * don't use clock in init sync, not wired up yet * use clock waiter in blockchain as well * use cancelable contexts in tests with goroutines * missed a reference to WithClockSetter * Update beacon-chain/startup/genesis.go Co-authored-by: Radosław Kapka <rkapka@wp.pl> * Update beacon-chain/blockchain/service_test.go Co-authored-by: Radosław Kapka <rkapka@wp.pl> * more clear docs * doc for NewClock * move clock typedef to more logical file name * adding documentation * gaz * fixes for capella * reducing test raciness * fix races in committee cache tests * lint * add tests on Duration slot math helper * startup package test coverage * fix bad merge * set non-zero genesis time in tests that call Start * happy deepsource, happy me-epsource * replace Synced event with channel * remove unused error * remove accidental wip commit * gaz! * remove unused event constants * remove sync statefeed subscription to fix deadlock * remove state notifier * fix build --------- Co-authored-by: Kasey Kirkham <kasey@users.noreply.github.com> Co-authored-by: Radosław Kapka <rkapka@wp.pl> Co-authored-by: prylabs-bulldozer[bot] <58059840+prylabs-bulldozer[bot]@users.noreply.github.com> Co-authored-by: nisdas <nishdas93@gmail.com>
63 lines
2.0 KiB
Go
63 lines
2.0 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"
|
|
|
|
"github.com/prysmaticlabs/prysm/v4/consensus-types/interfaces"
|
|
"github.com/prysmaticlabs/prysm/v4/consensus-types/primitives"
|
|
)
|
|
|
|
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
|
|
// deprecated: Initialized is sent when the internal beacon node's state is ready to be accessed.
|
|
_
|
|
// deprecated: Synced is sent when the beacon node has completed syncing and is ready to participate in the network.
|
|
_
|
|
// Reorg is an event sent when the new head is not a descendant of the previous head.
|
|
Reorg
|
|
// FinalizedCheckpoint event.
|
|
FinalizedCheckpoint
|
|
// NewHead of the chain event.
|
|
NewHead
|
|
// MissedSlot is sent when we need to notify users that a slot was missed.
|
|
MissedSlot
|
|
)
|
|
|
|
// BlockProcessedData is the data sent with BlockProcessed events.
|
|
type BlockProcessedData struct {
|
|
// Slot is the slot of the processed block.
|
|
Slot primitives.Slot
|
|
// BlockRoot of the processed block.
|
|
BlockRoot [32]byte
|
|
// SignedBlock is the physical processed block.
|
|
SignedBlock interfaces.ReadOnlySignedBeaconBlock
|
|
// 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
|
|
}
|