keeper

package
v0.0.0-...-537864d Latest Latest
Warning

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

Go to latest
Published: Dec 25, 2024 License: MIT Imports: 31 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Keeper

type Keeper struct {
	Config                     types.NodeConfig
	Logger                     sdklogging.Logger
	EthClient                  sdkcommon.EthClientInterface
	MetricsReg                 *prometheus.Registry
	Metrics                    *metrics.AvsAndEigenMetrics
	NodeApi                    *nodeapi.NodeApi
	AvsReader                  chainio.AvsReaderer
	AvsWriter                  chainio.AvsWriterer
	AvsSubscriber              chainio.AvsSubscriberer
	EigenlayerReader           sdkelcontracts.ChainReader
	EigenlayerWriter           sdkelcontracts.ChainWriter
	BlsKeypair                 *bls.KeyPair
	KeeperId                   sdktypes.OperatorId
	KeeperAddr                 common.Address
	NewTaskCreatedChan         chan *txtaskmanager.ContractTriggerXTaskManagerTaskCreated
	ValidatorServerIpPortAddr  string
	TriggerxServiceManagerAddr common.Address
}

func NewKeeperFromConfig

func NewKeeperFromConfig(c types.NodeConfig) (*Keeper, error)

func (*Keeper) DepositIntoStrategy

func (o *Keeper) DepositIntoStrategy(strategyAddr common.Address, amount *big.Int) error

func (*Keeper) PrintOperatorStatus

func (o *Keeper) PrintOperatorStatus() error

func (*Keeper) RegisterOperatorWithAvs

func (o *Keeper) RegisterOperatorWithAvs(operatorEcdsaKeyPair *ecdsa.PrivateKey) error

Registration specific functions

type OperatorConfig

type OperatorConfig struct {
	Environment struct {
		EthRpcUrl string `yaml:"ethrpcurl"`
		EthWsUrl  string `yaml:"ethwsurl"`
	} `yaml:"environment"`
	AVS_NAME  string `yaml:"avs_name"`
	SEM_VER   string `yaml:"sem_ver"`
	Addresses struct {
		ServiceManagerAddress  string `yaml:"service_manager_address"`
		OperatorStateRetriever string `yaml:"operator_state_retriever"`
	} `yaml:"addresses"`
	Prometheus struct {
		PortAddress string `yaml:"port_address"`
	} `yaml:"prometheus"`
}

type OperatorStatus

type OperatorStatus struct {
	EcdsaAddress string
	// pubkey compendium related
	PubkeysRegistered bool
	G1Pubkey          string
	G2Pubkey          string
	// avs related
	RegisteredWithAvs bool
	OperatorId        string
}

PRINTING STATUS OF OPERATOR: 1 operator address: 0xa0ee7a142d267c1f36714e4a8f75612f20a79720 dummy token balance: 0 delegated shares in dummyTokenStrat: 200 operator pubkey hash in AVS pubkey compendium (0 if not registered): 0x4b7b8243d970ff1c90a7c775c008baad825893ec6e806dfa5d3663dc093ed17f operator is opted in to eigenlayer: true operator is opted in to playgroundAVS (aka can be slashed): true operator status in AVS registry: REGISTERED

operatorId: 0x4b7b8243d970ff1c90a7c775c008baad825893ec6e806dfa5d3663dc093ed17f
middlewareTimesLen (# of stake updates): 0

operator is frozen: false

Jump to

Keyboard shortcuts

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