solution

package
v0.44.0-model Latest Latest
Warning

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

Go to latest
Published: Sep 9, 2024 License: GPL-3.0 Imports: 22 Imported by: 0

Documentation

Overview

Package solution sends the received bundler batch of Intent UserOperations to the Solver to solve the Intent and fill-in the EVM instructions.

This implementation makes 1 attempt for each Intent userOp to be solved.

Solved userOps update the received bundle All other returned statuses result in dropping those userOps from the batch. Received are treated as expired because they may have been compressed to Solved Intents.

The Solver may return a subset and in different sequence the UserOperations and a matching occurs by the hash value of each UserOperation to the bundle UserOperation.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type IntentsHandler

type IntentsHandler struct {
	SolverURL    string
	SolverClient *http.Client
	// contains filtered or unexported fields
}

func New

func New(solverURL string, logger logr.Logger,
	txHashes *xsync.MapOf[string, srv.OpHashes],
	entrypoint common.Address, chainID *big.Int) *IntentsHandler

func (*IntentsHandler) ReportSolverHealth

func (h *IntentsHandler) ReportSolverHealth(solverURL string) error

func (*IntentsHandler) SolveIntents

func (ei *IntentsHandler) SolveIntents() modules.BatchHandlerFunc

SolveIntents returns a BatchHandlerFunc that will send the batch of UserOperations to the Solver and those solved to be sent on chain.

func (*IntentsHandler) ValidateIntents

func (ei *IntentsHandler) ValidateIntents() modules.BatchHandlerFunc

ValidateIntents returns a BatchHandlerFunc that will send the batch of UserOperations to the Solver in other to validate if the userops are valid or not

Jump to

Keyboard shortcuts

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