ethereum

package
v0.0.31 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 5, 2025 License: GPL-3.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Execution configuration
	Execution *execution.Config `yaml:"execution"`
	// Beacon configuration
	Beacon *beacon.Config `yaml:"beacon"`
	// OverrideNetworkName is the name of the network to use for the agent.
	// If not set, the network name will be retrieved from the beacon node.
	OverrideNetworkName string `yaml:"overrideNetworkName"  default:""`
	// Features configuration
	Features Features `yaml:"features"`
	// SyncToleranceSlots is the age of the block in slots that is tolerated before it is not fetched.
	// This is to prevent fetching blocks that are too far behind the head.
	SyncToleranceSlots phase0.Slot `yaml:"syncToleranceSlots" default:"64"`

	// BeaconStateAgeThresholdEpochs is the number of epochs that a beacon state is allowed to be old.
	// This should be used to prevent fetching states that are too far behind the head,
	// which can cause the agent to get stuck as old states might not be available in
	// the beacon node cache.
	BeaconStateAgeThresholdEpochs uint64 `yaml:"beaconStateAgeThresholdEpochs" default:"1"`
}

func (*Config) Validate

func (c *Config) Validate() error

type Features added in v0.0.19

type Features struct {
	FetchBeaconState         *bool `yaml:"fetchBeaconState" default:"true"`
	FetchBeaconBlock         *bool `yaml:"fetchBeaconBlock" default:"true"`
	FetchBeaconBadBlock      *bool `yaml:"fetchBeaconBadBlock" default:"true"`
	FetchBeaconBadBlob       *bool `yaml:"fetchBeaconBadBlob" default:"true"`
	FetchExecutionBlockTrace *bool `yaml:"fetchExecutionBlockTrace" default:"true"`
	FetchExecutionBadBlock   *bool `yaml:"fetchExecutionBadBlock" default:"true"`
}

Features contains feature flags for the agent.

func (Features) EnabledFlags added in v0.0.19

func (f Features) EnabledFlags() []string

EnabledFlags returns a list of enabled feature flags.

func (Features) GetFetchBeaconBadBlob added in v0.0.19

func (f Features) GetFetchBeaconBadBlob() bool

func (Features) GetFetchBeaconBadBlock added in v0.0.19

func (f Features) GetFetchBeaconBadBlock() bool

func (Features) GetFetchBeaconBlock added in v0.0.19

func (f Features) GetFetchBeaconBlock() bool

func (Features) GetFetchBeaconState added in v0.0.19

func (f Features) GetFetchBeaconState() bool

func (Features) GetFetchExecutionBadBlock added in v0.0.19

func (f Features) GetFetchExecutionBadBlock() bool

func (Features) GetFetchExecutionBlockTrace added in v0.0.19

func (f Features) GetFetchExecutionBlockTrace() bool

func (Features) Validate added in v0.0.19

func (f Features) Validate() error

type Node

type Node struct {
	// contains filtered or unexported fields
}

func NewNode

func NewNode(ctx context.Context, log logrus.FieldLogger, config *Config, node string, syncToleranceSlots phase0.Slot) *Node

func (*Node) Beacon

func (n *Node) Beacon() *beacon.Node

func (*Node) Execution

func (n *Node) Execution() *execution.Node

func (*Node) OnReady

func (n *Node) OnReady(_ context.Context, callback func(ctx context.Context) error)

func (*Node) ShouldIgnoreEventFromSlot added in v0.0.28

func (n *Node) ShouldIgnoreEventFromSlot(slot phase0.Slot) (bool, error)

func (*Node) Start

func (n *Node) Start(ctx context.Context) error

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL