fault

package
v0.0.0-...-86af830 Latest Latest
Warning

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

Go to latest
Published: Dec 12, 2023 License: MIT Imports: 22 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func RegisterGameTypes

func RegisterGameTypes(
	registry Registry,
	ctx context.Context,
	logger log.Logger,
	m metrics.Metricer,
	cfg *config.Config,
	txMgr txmgr.TxManager,
	client *ethclient.Client,
)

func ValidateAbsolutePrestate

func ValidateAbsolutePrestate(ctx context.Context, trace types.TraceProvider, loader PrestateLoader) error

ValidateAbsolutePrestate validates the absolute prestate of the fault game.

Types

type Agent

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

func NewAgent

func NewAgent(m metrics.Metricer, loader ClaimLoader, maxDepth int, trace types.TraceAccessor, responder Responder, agreeWithProposedOutput bool, log log.Logger) *Agent

func (*Agent) Act

func (a *Agent) Act(ctx context.Context) error

Act iterates the game & performs all of the next actions.

type ClaimLoader

type ClaimLoader interface {
	GetAllClaims(ctx context.Context) ([]types.Claim, error)
}

type GameInfo

type GameInfo interface {
	GetStatus(context.Context) (gameTypes.GameStatus, error)
	GetClaimCount(context.Context) (uint64, error)
}

type GamePlayer

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

func NewGamePlayer

func NewGamePlayer(
	ctx context.Context,
	logger log.Logger,
	m metrics.Metricer,
	cfg *config.Config,
	dir string,
	addr common.Address,
	txMgr txmgr.TxManager,
	client *ethclient.Client,
	creator resourceCreator,
) (*GamePlayer, error)

func (*GamePlayer) ProgressGame

func (g *GamePlayer) ProgressGame(ctx context.Context) gameTypes.GameStatus

func (*GamePlayer) Status

func (g *GamePlayer) Status() gameTypes.GameStatus

type PrestateLoader

type PrestateLoader interface {
	GetAbsolutePrestateHash(ctx context.Context) (common.Hash, error)
}

type Registry

type Registry interface {
	RegisterGameType(gameType uint8, creator scheduler.PlayerCreator)
}

type Responder

type Responder interface {
	CallResolve(ctx context.Context) (gameTypes.GameStatus, error)
	Resolve(ctx context.Context) error
	CallResolveClaim(ctx context.Context, claimIdx uint64) error
	ResolveClaim(ctx context.Context, claimIdx uint64) error
	PerformAction(ctx context.Context, action types.Action) error
}

Responder takes a response action & executes. For full bl-challenger this means executing the transaction on chain.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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