Versions in this module Expand all Collapse all v1 v1.14.2 Aug 2, 2025 Changes in this version + func NewMetricsRegistererWrapper(reg metrics.Registerer) prometheus.Registerer + type AcceptorGroup interface + Accept func(ctx *Context, containerID ids.ID, container []byte) error + DeregisterAcceptor func(chainID ids.ID, name string) error + RegisterAcceptor func(chainID ids.ID, name string, acceptor Acceptor, persist bool) error + func NewAcceptorGroup(log log.Logger) AcceptorGroup + type Batch interface + Delete func([]byte) error + Write func([]byte, []byte) error + type BlockStore interface + DeleteBlock func(id ids.ID) error + GetBlock func(id ids.ID) (interface{}, error) + PutBlock func(id ids.ID, block interface{}) error + func NewMemoryStore() BlockStore + type ChainValidatorSet struct + ChainID ids.ID + IsGenesisGated bool + MinValidators int + Validators []ids.NodeID + type ChainWrapper struct + ChainID ids.ID + ChainName string + type Clock interface + Time func() time.Time + type ConsensusBlock struct + AChainOps []Operation + BChainOps []Operation + CChainOps []Operation + Height uint64 + MChainOps []Operation + PChainOps []Operation + ParentID ids.ID + QChainOps []Operation + RequiredPChainBLS bool + RequiredQChainRingtail bool + Timestamp time.Time + XChainOps []Operation + ZChainOps []Operation + func (cb *ConsensusBlock) Bytes() []byte + func (cb *ConsensusBlock) GetAllOperations() []Operation + func (cb *ConsensusBlock) GetOperationsByChain(chainID ids.ID) []Operation + func (cb *ConsensusBlock) ID() ids.ID + type ConsensusBlockBuilder struct + func NewConsensusBlockBuilder(height uint64, parentID ids.ID) *ConsensusBlockBuilder + func (cbb *ConsensusBlockBuilder) AddOperations(chainID ids.ID, ops []Operation) + func (cbb *ConsensusBlockBuilder) Build() *ConsensusBlock type ConsensusContext + BCLookup ids.AliaserReader + Bootstrappers validators.Set + CChainID ids.ID + ChainDataDir string + ChainID ids.ID + Clock Clock + Context *Context + LUXAssetID ids.ID + Lock sync.RWMutex + Log log.Logger + Metrics metrics.Registry + NetworkID uint32 + NetworkUpgrades NetworkUpgrades + NodeID ids.NodeID + Parameters Parameters + PublicKey []byte + RequestID RequestID + RingtailPK []byte + RingtailSK []byte + Sender Sender + SharedMemory SharedMemory + StartTime time.Time + State *EngineState + SubnetID ids.ID + ValidatorSet ValidatorSet + ValidatorState validators.State + Validators validators.Manager + WarpSigner WarpSigner + XChainID ids.ID + type ConsensusFlow struct + func (cf *ConsensusFlow) ExecuteConsensusRound(height uint64) (*FinalizedBlock, error) + type ConsensusRound struct + Block *ConsensusBlock + EndTime time.Time + Height uint64 + PChainFinality bool + QChainFinality bool + StartTime time.Time + func (cr *ConsensusRound) Duration() time.Duration + func (cr *ConsensusRound) IsFinalized() bool + type ContextInitializable interface + Initialize func(ctx *Context) error + type DualFinalityProof struct + BlockID ids.ID + Height uint64 + PChainSignature *bls.AggregateSignature + PChainSigners []ids.NodeID + ProofHash ids.ID + ProofTimestamp time.Time + QChainSignature *ringtail.Signature + QChainWitness *ringtail.Witness + type Element struct + Key []byte + Traits [][]byte + Value []byte + type Engine struct + func NewEngine(network string) (*Engine, error) + func NewEngineWithParams(params interface{}) (*Engine, error) + func NewTestEngine(params interface{}) (*Engine, error) type EngineState + func (s *EngineState) Get() *EngineState + func (s *EngineState) Set(state EngineState) + type FinalizedBlock struct + FinalityProof *DualFinalityProof + FinalizedAt time.Time + type Logger func(log.Logger) log.Logger + type NetworkUpgrades interface + IsActivated func(upgradeTime time.Time) bool + type Operation struct + ChainID ids.ID + OperationType string + Payload []byte + Signature []byte + Timestamp time.Time + func (op *Operation) Hash() []byte + type OperationPool struct + func NewOperationPool(maxSize int) *OperationPool + func (op *OperationPool) Add(operation Operation) error + func (op *OperationPool) GetBatch(maxBatch int) []Operation + type Parameters struct + Alpha int + Beta int + ConcurrentRepolls int + K int + MaxItemProcessingTime time.Duration + MaxOutstandingItems int + OptimalProcessing int + type PendingBlock struct + BlockID ids.ID + ChainID ids.ID + Height uint64 + Operations map[ids.ID][]Operation + PChainBLS *bls.Signature + PChainFinalized bool + QChainFinalized bool + QChainRingtail *ringtail.Signature + Timestamp time.Time + type QuantumFinalityEngine struct + func NewQuantumFinalityEngine(pChainID, qChainID ids.ID, validatorManager ValidatorChainManager) *QuantumFinalityEngine + func (qfe *QuantumFinalityEngine) CreateConsensusBlock(height uint64) (*PendingBlock, error) + func (qfe *QuantumFinalityEngine) GetFinalityStatus(blockID ids.ID) (pChain bool, qChain bool, finalized bool) + func (qfe *QuantumFinalityEngine) SubmitOperation(chainID ids.ID, op Operation) error + func (qfe *QuantumFinalityEngine) SubmitPChainBLS(blockID ids.ID, sig *bls.Signature) error + func (qfe *QuantumFinalityEngine) SubmitQChainRingtail(blockID ids.ID, sig *ringtail.Signature) error + func (qfe *QuantumFinalityEngine) WaitForFinality(ctx context.Context, blockID ids.ID) (*FinalizedBlock, error) + func (qfe *QuantumFinalityEngine) WrapChain(chainID ids.ID, chainName string) error + type Registerer func(metrics.Registry) metrics.Registry + type RequestID struct + type Requests struct + PutRequests []*Element + RemoveRequests [][]byte + type Sender interface + SendAccepted func(ctx context.Context, nodeID ids.NodeID, requestID uint32, ...) error + SendAcceptedFrontier func(ctx context.Context, nodeID ids.NodeID, requestID uint32, ...) error + SendChits func(ctx context.Context, nodeID ids.NodeID, requestID uint32, preferredID ids.ID, ...) error + SendGet func(ctx context.Context, nodeID ids.NodeID, requestID uint32, containerID ids.ID) error + SendGetAccepted func(ctx context.Context, nodeID ids.NodeID, requestID uint32, ...) error + SendGetAcceptedFrontier func(ctx context.Context, nodeID ids.NodeID, requestID uint32) error + SendPullQuery func(ctx context.Context, nodeIDs set.Set[ids.NodeID], requestID uint32, ...) error + SendPushQuery func(ctx context.Context, nodeIDs set.Set[ids.NodeID], requestID uint32, ...) error + SendPut func(ctx context.Context, nodeID ids.NodeID, requestID uint32, container []byte) error type SharedMemory + Apply func(requests map[ids.ID]*Requests, batch Batch) error type State + const StateSyncing + type ValidatorChainManager interface + CanValidateChain func(validatorID ids.NodeID, chainID ids.ID) bool + GetChainValidatorSet func(chainID ids.ID) (*ChainValidatorSet, error) + GetValidatorsForChain func(chainID ids.ID) []ids.NodeID + type ValidatorSet interface + GetValidatorSet func(height uint64) (validators.Set, error) + type WarpMessage struct + type WarpSignature struct + type WarpSigner interface + Sign func(msg *WarpMessage) (*WarpSignature, error) v1.13.6-lux Jul 31, 2025 v1.13.5-lux Jul 31, 2025 v1.13.4-lux Jul 31, 2025 v1.13.3-lux-latest Jul 30, 2025 v0 v0.1.1 Jul 30, 2025 Changes in this version + var ErrAlreadyExists = errors.New("already exists") + var ErrInvalidStatus = errors.New("invalid status transition") + var ErrMissingCertificate = errors.New("missing certificate") + var ErrNotFound = errors.New("not found") + type Acceptor interface + Accept func(*ConsensusContext, ids.ID, []byte) error + type BCLookup interface + Lookup func(alias string) (ids.ID, error) + PrimaryAlias func(id ids.ID) (string, error) + type Block interface + Bytes func() []byte + Height func() uint64 + Parent func() ids.ID + Timestamp func() int64 + Verify func() error + type ConsensusContext struct + BlockAcceptor Acceptor + PrimaryAlias string + Registerer prometheus.Registerer + TxAcceptor Acceptor + VertexAcceptor Acceptor + func (ctx *ConsensusContext) IsBootstrapped() bool + type Context struct + BCLookup BCLookup + CChainID ids.ID + ChainDataDir string + ChainID ids.ID + Keystore Keystore + LUXAssetID ids.ID + Lock sync.RWMutex + Log log.Logger + Metrics prometheus.Gatherer + NetworkID uint32 + NodeID ids.NodeID + PublicKey *bls.PublicKey + QuasarEnabled bool + RingtailPK []byte + RingtailSK []byte + SharedMemory SharedMemory + SubnetID ids.ID + SubnetTracker SubnetTracker + ValidatorState validators.State + XChainID ids.ID + type Decidable interface + Accept func() error + ID func() ids.ID + Reject func() error + Status func() choices.Status + type EngineState struct + State EngineStateType + Type EngineType + type EngineStateManager struct + func (s *EngineStateManager) Get() EngineState + func (s *EngineStateManager) Set(state EngineState) + type EngineStateType uint8 + const Bootstrapping + const NormalOp + type EngineType uint8 + const EngineTypeBeam + const EngineTypeNova + const EngineTypeQuasar + const EngineTypeUnknown + type Keystore interface + AddUser func(username string, password string) error + GetUser func(username string) (string, error) + type MemoryState struct + func NewMemoryState() *MemoryState + func (s *MemoryState) AddBlock(blk Block) error + func (s *MemoryState) AddVertex(vtx Vertex) error + func (s *MemoryState) GetBlock(blkID ids.ID) (Block, error) + func (s *MemoryState) GetVertex(vtxID ids.ID) (Vertex, error) + func (s *MemoryState) IsAccepted(id ids.ID) (bool, error) + func (s *MemoryState) IsQuantum(id ids.ID) (bool, error) + func (s *MemoryState) LastAccepted() (ids.ID, error) + func (s *MemoryState) Preference() []ids.ID + func (s *MemoryState) RemoveBlock(blkID ids.ID) error + func (s *MemoryState) RemoveVertex(vtxID ids.ID) error + func (s *MemoryState) SetLastAccepted(id ids.ID) error + func (s *MemoryState) SetPreference(ids []ids.ID) error + func (s *MemoryState) SetQuantum(id ids.ID) error + type QuasarBlock interface + BLSSignature func() []byte + HasDualCert func() bool + RTCertificate func() []byte + SetQuantum func() error + type QuasarVertex interface + BLSSignature func() []byte + HasDualCert func() bool + RTCertificate func() []byte + SetQuantum func() error + type SharedMemory interface + Get func(peerChainID ids.ID, keys [][]byte) ([][]byte, error) + Indexed func(peerChainID ids.ID, values [][]byte) error + type State interface + AddBlock func(blk Block) error + AddVertex func(vtx Vertex) error + GetBlock func(blkID ids.ID) (Block, error) + GetVertex func(vtxID ids.ID) (Vertex, error) + IsAccepted func(id ids.ID) (bool, error) + IsQuantum func(id ids.ID) (bool, error) + LastAccepted func() (ids.ID, error) + Preference func() []ids.ID + RemoveBlock func(blkID ids.ID) error + RemoveVertex func(vtxID ids.ID) error + SetLastAccepted func(id ids.ID) error + SetPreference func(ids []ids.ID) error + SetQuantum func(id ids.ID) error + type SubnetTracker interface + OnFinishedBootstrapping func(subnetID ids.ID) chan struct{} + Tracked func(subnetID ids.ID) bool + type Vertex interface + Bytes func() []byte + Epoch func() uint32 + Height func() uint64 + Parents func() []ids.ID + Txs func() [][]byte + Verify func() error Other modules containing this package github.com/luxfi/node/v2