Documentation
¶
Index ¶
- Constants
- Variables
- func GetEVMTriggerLogFromValues(ctx context.Context, ethClient *ethclient.Client, txHashStr string, ...) (*evmpb.Log, error)
- func RunRPCHealthCheck(clients map[uint64]chain.ChainClient, experimentalSelectors map[uint64]bool) error
- func SupportedChainNames() []string
- func WaitForEVMTriggerLog(ctx context.Context, ethClient *ethclient.Client, cfg WaitForLogConfig) (*evmpb.Log, error)
- type EVMChainCapabilities
- type EVMChainLimits
- type EVMChainType
- func (ct *EVMChainType) CollectCLIInputs(v *viper.Viper) map[string]string
- func (ct *EVMChainType) ExecuteTrigger(ctx context.Context, selector uint64, registrationID string, ...) error
- func (ct *EVMChainType) Name() string
- func (ct *EVMChainType) NewTriggerListener(ctx context.Context, selector uint64, params chain.TriggerParams) (chain.TriggerListener, error)
- func (ct *EVMChainType) ParseTriggerChainSelector(triggerID string) (uint64, bool)
- func (ct *EVMChainType) RegisterCapabilities(ctx context.Context, cfg chain.CapabilityConfig) ([]services.Service, error)
- func (ct *EVMChainType) ResolveClients(v *viper.Viper) (chain.ResolvedChains, error)
- func (ct *EVMChainType) ResolveKey(creSettings *settings.Settings, broadcast bool) (interface{}, error)
- func (ct *EVMChainType) ResolveTriggerData(ctx context.Context, selector uint64, params chain.TriggerParams) (interface{}, error)
- func (ct *EVMChainType) RunHealthCheck(resolved chain.ResolvedChains) error
- func (ct *EVMChainType) SupportedChains() []chain.ChainConfig
- func (ct *EVMChainType) Supports(selector uint64) bool
- type EVMLogTriggerListener
- type LimitedEVMChain
- func (l *LimitedEVMChain) AckEvent(ctx context.Context, triggerId string, eventId string, method string) caperrors.Error
- func (l *LimitedEVMChain) BalanceAt(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.BalanceAtReply], caperrors.Error)
- func (l *LimitedEVMChain) CallContract(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.CallContractReply], caperrors.Error)
- func (l *LimitedEVMChain) ChainSelector() uint64
- func (l *LimitedEVMChain) Close() error
- func (l *LimitedEVMChain) Description() string
- func (l *LimitedEVMChain) EstimateGas(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.EstimateGasReply], caperrors.Error)
- func (l *LimitedEVMChain) FilterLogs(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.FilterLogsReply], caperrors.Error)
- func (l *LimitedEVMChain) GetTransactionByHash(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionByHashReply], ...)
- func (l *LimitedEVMChain) GetTransactionReceipt(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionReceiptReply], ...)
- func (l *LimitedEVMChain) HeaderByNumber(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.HeaderByNumberReply], caperrors.Error)
- func (l *LimitedEVMChain) HealthReport() map[string]error
- func (l *LimitedEVMChain) Initialise(ctx context.Context, deps core.StandardCapabilitiesDependencies) error
- func (l *LimitedEVMChain) Name() string
- func (l *LimitedEVMChain) Ready() error
- func (l *LimitedEVMChain) RegisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, ...) (<-chan commonCap.TriggerAndId[*evmcappb.Log], caperrors.Error)
- func (l *LimitedEVMChain) Start(ctx context.Context) error
- func (l *LimitedEVMChain) UnregisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, ...) caperrors.Error
- func (l *LimitedEVMChain) WriteReport(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.WriteReportReply], caperrors.Error)
- type ManualEVMChain
- func (m *ManualEVMChain) AckEvent(ctx context.Context, triggerID string, eventID string, method string) caperrors.Error
- func (m *ManualEVMChain) BalanceAt(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.BalanceAtReply], caperrors.Error)
- func (m *ManualEVMChain) CallContract(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.CallContractReply], caperrors.Error)
- func (m *ManualEVMChain) ChainSelector() uint64
- func (m *ManualEVMChain) Close() error
- func (m *ManualEVMChain) Description() string
- func (m *ManualEVMChain) EstimateGas(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.EstimateGasReply], caperrors.Error)
- func (m *ManualEVMChain) FilterLogs(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.FilterLogsReply], caperrors.Error)
- func (m *ManualEVMChain) GetTransactionByHash(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionByHashReply], ...)
- func (m *ManualEVMChain) GetTransactionReceipt(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionReceiptReply], ...)
- func (m *ManualEVMChain) HeaderByNumber(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.HeaderByNumberReply], caperrors.Error)
- func (m *ManualEVMChain) HealthReport() map[string]error
- func (m *ManualEVMChain) Initialise(ctx context.Context, dependencies core.StandardCapabilitiesDependencies) error
- func (m *ManualEVMChain) ManualTrigger(ctx context.Context, triggerID string, log *evmcappb.Log) error
- func (m *ManualEVMChain) Name() string
- func (m *ManualEVMChain) Ready() error
- func (m *ManualEVMChain) RegisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, ...) (<-chan commonCap.TriggerAndId[*evmcappb.Log], caperrors.Error)
- func (m *ManualEVMChain) Start(ctx context.Context) error
- func (m *ManualEVMChain) UnregisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, ...) caperrors.Error
- func (m *ManualEVMChain) WriteReport(ctx context.Context, metadata commonCap.RequestMetadata, ...) (*commonCap.ResponseAndMetadata[*evmcappb.WriteReportReply], caperrors.Error)
- type WaitForLogConfig
Constants ¶
const ( TriggerInputTxHash = "evm-tx-hash" TriggerInputEventIndex = "evm-event-index" TriggerInputReceiptTimeout = "evm-receipt-timeout" )
CLI input keys consumed from chain.TriggerParams.ChainTypeInputs.
Variables ¶
var SupportedChains = []chain.ChainConfig{ {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA.Selector, Forwarder: "0x15fC6ae953E024d975e77382eEeC56A9101f9F88"}, {Selector: chainselectors.ETHEREUM_MAINNET.Selector, Forwarder: "0xa3d1ad4ac559a6575a114998affb2fb2ec97a7d9"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_BASE_1.Selector, Forwarder: "0x82300bd7c3958625581cc2f77bc6464dcecdf3e5"}, {Selector: chainselectors.ETHEREUM_MAINNET_BASE_1.Selector, Forwarder: "0x5e342a8438b4f5d39e72875fcee6f76b39cce548"}, {Selector: chainselectors.AVALANCHE_TESTNET_FUJI.Selector, Forwarder: "0x2e7371a5d032489e4f60216d8d898a4c10805963"}, {Selector: chainselectors.AVALANCHE_MAINNET.Selector, Forwarder: "0xdc21e279934ff6721cadfdd112dafb3261f09a2c"}, {Selector: chainselectors.POLYGON_TESTNET_AMOY.Selector, Forwarder: "0x3675a5eb2286a3f87e8278fc66edf458a2e3bb74"}, {Selector: chainselectors.POLYGON_MAINNET.Selector, Forwarder: "0xf458d621885e29a5003ea9bbba5280d54e19b1ce"}, {Selector: chainselectors.BINANCE_SMART_CHAIN_TESTNET.Selector, Forwarder: "0xa238e42cb8782808dbb2f37e19859244ec4779b0"}, {Selector: chainselectors.BINANCE_SMART_CHAIN_MAINNET.Selector, Forwarder: "0x6f3239bbb26e98961e1115aba83f8a282e5508c8"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_ARBITRUM_1.Selector, Forwarder: "0xd41263567ddfead91504199b8c6c87371e83ca5d"}, {Selector: chainselectors.ETHEREUM_MAINNET_ARBITRUM_1.Selector, Forwarder: "0xd770499057619c9a76205fd4168161cf94abc532"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_OPTIMISM_1.Selector, Forwarder: "0xa2888380dff3704a8ab6d1cd1a8f69c15fea5ee3"}, {Selector: chainselectors.ETHEREUM_MAINNET_OPTIMISM_1.Selector, Forwarder: "0x9119a1501550ed94a3f2794038ed9258337afa18"}, {Selector: chainselectors.PRIVATE_TESTNET_ANDESITE.Selector, Forwarder: "0xcF4629d8DC7a5fa17F4D77233F5b953225669821"}, {Selector: chainselectors.ETHEREUM_MAINNET_ZKSYNC_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_ZKSYNC_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.JOVAY_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.JOVAY_MAINNET.Selector, Forwarder: "0x2B3068C4B288A2CD1f8B3613b8f33ef7cEecadC4"}, {Selector: chainselectors.PHAROS_ATLANTIC_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.PHAROS_MAINNET.Selector, Forwarder: "0x2B3068C4B288A2CD1f8B3613b8f33ef7cEecadC4"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_WORLDCHAIN_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_MAINNET_WORLDCHAIN_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.PLASMA_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.PLASMA_MAINNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_LINEA_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_MAINNET_LINEA_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.INK_TESTNET_SEPOLIA.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_MAINNET_INK_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.HYPERLIQUID_TESTNET.Selector, Forwarder: "0xB27fA1c28288c50542527F64BCda22C9FbAc24CB"}, {Selector: chainselectors.HYPERLIQUID_MAINNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.APECHAIN_TESTNET_CURTIS.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ARC_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.XLAYER_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_MAINNET_XLAYER_1.Selector, Forwarder: "0x2B3068C4B288A2CD1f8B3613b8f33ef7cEecadC4"}, {Selector: chainselectors.MEGAETH_TESTNET_2.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.MEGAETH_MAINNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.CELO_SEPOLIA.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.CELO_MAINNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.GNOSIS_CHAIN_TESTNET_CHIADO.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.GNOSIS_CHAIN_MAINNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.CRONOS_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_MANTLE_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_MAINNET_MANTLE_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.TAC_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_UNICHAIN_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_TESTNET_SEPOLIA_SCROLL_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ETHEREUM_MAINNET_SCROLL_1.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.SONIC_TESTNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.SONIC_MAINNET.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.DTCC_TESTNET_ANDESITE.Selector, Forwarder: "0x6E9EE680ef59ef64Aa8C7371279c27E496b5eDc1"}, {Selector: chainselectors.ADI_TESTNET.Selector, Forwarder: "0x9eF6468C5f37b976E57d52054c693269479A784d"}, {Selector: chainselectors.ADI_MAINNET.Selector, Forwarder: "0x6Aa382fb8762E1232936478DD9DbC04F637028f1"}, {Selector: chainselectors.PRIVATE_TESTNET_RHYOLITE.Selector, Forwarder: "0xBefF2190E6F56C108cD748844Bbd18D4a70F1E21"}, }
SupportedChains is the canonical list of EVM chains supported for simulation.
Functions ¶
func GetEVMTriggerLogFromValues ¶
func GetEVMTriggerLogFromValues(ctx context.Context, ethClient *ethclient.Client, txHashStr string, eventIndex uint64, receiptTimeout time.Duration) (*evmpb.Log, error)
GetEVMTriggerLogFromValues fetches a log given tx hash string and event index. Used by the deterministic replay path (both interactive and non-interactive). receiptTimeout controls how long to wait for the transaction receipt before giving up.
func RunRPCHealthCheck ¶
func RunRPCHealthCheck(clients map[uint64]chain.ChainClient, experimentalSelectors map[uint64]bool) error
RunRPCHealthCheck validates RPC connectivity for all configured EVM clients. The experimentalSelectors set identifies which selectors are experimental chains.
func SupportedChainNames ¶ added in v1.14.0
func SupportedChainNames() []string
SupportedChainNames returns the human-readable names of all supported EVM chains, sorted alphabetically.
func WaitForEVMTriggerLog ¶ added in v1.19.0
func WaitForEVMTriggerLog(ctx context.Context, ethClient *ethclient.Client, cfg WaitForLogConfig) (*evmpb.Log, error)
WaitForEVMTriggerLog blocks until a log matching the workflow's EVM log trigger config appears on chain, then converts and returns it. Cancel ctx (e.g. Ctrl+C) to abort the wait.
Status output is written with plain ui.Print/ui.Dim rather than a bubbletea spinner. Bubble Tea puts the terminal in raw mode, which strips the OS translation of Ctrl+C into SIGINT — so signal.NotifyContext in the simulator would never fire while a spinner was active and the wait could not be interrupted.
Types ¶
type EVMChainCapabilities ¶
type EVMChainCapabilities struct {
EVMChains map[uint64]*ManualEVMChain
}
EVMChainCapabilities holds the EVM chain capability servers created for simulation.
func NewEVMChainCapabilities ¶
func NewEVMChainCapabilities( ctx context.Context, lggr logger.Logger, registry *capabilities.Registry, clients map[uint64]*ethclient.Client, forwarders map[uint64]string, privateKey *ecdsa.PrivateKey, dryRunChainWrite bool, limits EVMChainLimits, ) (*EVMChainCapabilities, error)
NewEVMChainCapabilities creates EVM chain capability servers and registers them with the capability registry. Cron and HTTP triggers are not created here — they are chain-agnostic and managed by the simulate command directly.
func (*EVMChainCapabilities) Close ¶
func (c *EVMChainCapabilities) Close() error
Close closes all EVM chains.
type EVMChainLimits ¶
EVMChainLimits is the EVM-scoped limit contract LimitedEVMChain enforces. It extends chain.Limits with EVM-specific accessors (e.g. gas limit) so non-EVM chain types cannot accidentally depend on EVM semantics.
type EVMChainType ¶
type EVMChainType struct {
// contains filtered or unexported fields
}
EVMChainType implements chain.ChainType for EVM-based blockchains.
func (*EVMChainType) CollectCLIInputs ¶
func (ct *EVMChainType) CollectCLIInputs(v *viper.Viper) map[string]string
func (*EVMChainType) ExecuteTrigger ¶
func (*EVMChainType) Name ¶
func (ct *EVMChainType) Name() string
func (*EVMChainType) NewTriggerListener ¶ added in v1.19.0
func (ct *EVMChainType) NewTriggerListener(ctx context.Context, selector uint64, params chain.TriggerParams) (chain.TriggerListener, error)
func (*EVMChainType) ParseTriggerChainSelector ¶
func (ct *EVMChainType) ParseTriggerChainSelector(triggerID string) (uint64, bool)
func (*EVMChainType) RegisterCapabilities ¶
func (ct *EVMChainType) RegisterCapabilities(ctx context.Context, cfg chain.CapabilityConfig) ([]services.Service, error)
func (*EVMChainType) ResolveClients ¶
func (ct *EVMChainType) ResolveClients(v *viper.Viper) (chain.ResolvedChains, error)
func (*EVMChainType) ResolveKey ¶
func (ct *EVMChainType) ResolveKey(creSettings *settings.Settings, broadcast bool) (interface{}, error)
ResolveKey parses the user's ECDSA private key from settings. When broadcast is true, an invalid or default-sentinel key is a hard error. Otherwise a sentinel key is used with a warning so non-broadcast simulations can run.
func (*EVMChainType) ResolveTriggerData ¶
func (ct *EVMChainType) ResolveTriggerData(ctx context.Context, selector uint64, params chain.TriggerParams) (interface{}, error)
ResolveTriggerData fetches the EVM log payload for the given selector from CLI-supplied inputs, falling back to live log subscription in interactive mode when no replay tx hash is given.
func (*EVMChainType) RunHealthCheck ¶
func (ct *EVMChainType) RunHealthCheck(resolved chain.ResolvedChains) error
func (*EVMChainType) SupportedChains ¶
func (ct *EVMChainType) SupportedChains() []chain.ChainConfig
func (*EVMChainType) Supports ¶
func (ct *EVMChainType) Supports(selector uint64) bool
Supports reports whether an EVM chain capability is live for the selector.
type EVMLogTriggerListener ¶ added in v1.19.0
type EVMLogTriggerListener struct {
// contains filtered or unexported fields
}
func NewEVMLogTriggerListener ¶ added in v1.19.0
func NewEVMLogTriggerListener(ctx context.Context, ethClient *ethclient.Client, cfg WaitForLogConfig) (*EVMLogTriggerListener, error)
type LimitedEVMChain ¶
type LimitedEVMChain struct {
// contains filtered or unexported fields
}
LimitedEVMChain wraps an evmserver.ClientCapability and enforces chain write report size and gas limits.
func NewLimitedEVMChain ¶
func NewLimitedEVMChain(inner evmserver.ClientCapability, limits EVMChainLimits) *LimitedEVMChain
func (*LimitedEVMChain) BalanceAt ¶
func (l *LimitedEVMChain) BalanceAt(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.BalanceAtRequest) (*commonCap.ResponseAndMetadata[*evmcappb.BalanceAtReply], caperrors.Error)
func (*LimitedEVMChain) CallContract ¶
func (l *LimitedEVMChain) CallContract(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.CallContractRequest) (*commonCap.ResponseAndMetadata[*evmcappb.CallContractReply], caperrors.Error)
func (*LimitedEVMChain) ChainSelector ¶
func (l *LimitedEVMChain) ChainSelector() uint64
func (*LimitedEVMChain) Close ¶
func (l *LimitedEVMChain) Close() error
func (*LimitedEVMChain) Description ¶
func (l *LimitedEVMChain) Description() string
func (*LimitedEVMChain) EstimateGas ¶
func (l *LimitedEVMChain) EstimateGas(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.EstimateGasRequest) (*commonCap.ResponseAndMetadata[*evmcappb.EstimateGasReply], caperrors.Error)
func (*LimitedEVMChain) FilterLogs ¶
func (l *LimitedEVMChain) FilterLogs(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.FilterLogsRequest) (*commonCap.ResponseAndMetadata[*evmcappb.FilterLogsReply], caperrors.Error)
func (*LimitedEVMChain) GetTransactionByHash ¶
func (l *LimitedEVMChain) GetTransactionByHash(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.GetTransactionByHashRequest) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionByHashReply], caperrors.Error)
func (*LimitedEVMChain) GetTransactionReceipt ¶
func (l *LimitedEVMChain) GetTransactionReceipt(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.GetTransactionReceiptRequest) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionReceiptReply], caperrors.Error)
func (*LimitedEVMChain) HeaderByNumber ¶
func (l *LimitedEVMChain) HeaderByNumber(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.HeaderByNumberRequest) (*commonCap.ResponseAndMetadata[*evmcappb.HeaderByNumberReply], caperrors.Error)
func (*LimitedEVMChain) HealthReport ¶
func (l *LimitedEVMChain) HealthReport() map[string]error
func (*LimitedEVMChain) Initialise ¶
func (l *LimitedEVMChain) Initialise(ctx context.Context, deps core.StandardCapabilitiesDependencies) error
func (*LimitedEVMChain) Name ¶
func (l *LimitedEVMChain) Name() string
func (*LimitedEVMChain) Ready ¶
func (l *LimitedEVMChain) Ready() error
func (*LimitedEVMChain) RegisterLogTrigger ¶
func (l *LimitedEVMChain) RegisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, input *evmcappb.FilterLogTriggerRequest) (<-chan commonCap.TriggerAndId[*evmcappb.Log], caperrors.Error)
func (*LimitedEVMChain) UnregisterLogTrigger ¶
func (l *LimitedEVMChain) UnregisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, input *evmcappb.FilterLogTriggerRequest) caperrors.Error
func (*LimitedEVMChain) WriteReport ¶
func (l *LimitedEVMChain) WriteReport(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.WriteReportRequest) (*commonCap.ResponseAndMetadata[*evmcappb.WriteReportReply], caperrors.Error)
type ManualEVMChain ¶ added in v1.19.0
type ManualEVMChain struct {
// contains filtered or unexported fields
}
func NewManualEVMChain ¶ added in v1.19.0
func NewManualEVMChain(inner evmserver.ClientCapability) *ManualEVMChain
func (*ManualEVMChain) BalanceAt ¶ added in v1.19.0
func (m *ManualEVMChain) BalanceAt(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.BalanceAtRequest) (*commonCap.ResponseAndMetadata[*evmcappb.BalanceAtReply], caperrors.Error)
func (*ManualEVMChain) CallContract ¶ added in v1.19.0
func (m *ManualEVMChain) CallContract(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.CallContractRequest) (*commonCap.ResponseAndMetadata[*evmcappb.CallContractReply], caperrors.Error)
func (*ManualEVMChain) ChainSelector ¶ added in v1.19.0
func (m *ManualEVMChain) ChainSelector() uint64
func (*ManualEVMChain) Close ¶ added in v1.19.0
func (m *ManualEVMChain) Close() error
func (*ManualEVMChain) Description ¶ added in v1.19.0
func (m *ManualEVMChain) Description() string
func (*ManualEVMChain) EstimateGas ¶ added in v1.19.0
func (m *ManualEVMChain) EstimateGas(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.EstimateGasRequest) (*commonCap.ResponseAndMetadata[*evmcappb.EstimateGasReply], caperrors.Error)
func (*ManualEVMChain) FilterLogs ¶ added in v1.19.0
func (m *ManualEVMChain) FilterLogs(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.FilterLogsRequest) (*commonCap.ResponseAndMetadata[*evmcappb.FilterLogsReply], caperrors.Error)
func (*ManualEVMChain) GetTransactionByHash ¶ added in v1.19.0
func (m *ManualEVMChain) GetTransactionByHash(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.GetTransactionByHashRequest) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionByHashReply], caperrors.Error)
func (*ManualEVMChain) GetTransactionReceipt ¶ added in v1.19.0
func (m *ManualEVMChain) GetTransactionReceipt(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.GetTransactionReceiptRequest) (*commonCap.ResponseAndMetadata[*evmcappb.GetTransactionReceiptReply], caperrors.Error)
func (*ManualEVMChain) HeaderByNumber ¶ added in v1.19.0
func (m *ManualEVMChain) HeaderByNumber(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.HeaderByNumberRequest) (*commonCap.ResponseAndMetadata[*evmcappb.HeaderByNumberReply], caperrors.Error)
func (*ManualEVMChain) HealthReport ¶ added in v1.19.0
func (m *ManualEVMChain) HealthReport() map[string]error
func (*ManualEVMChain) Initialise ¶ added in v1.19.0
func (m *ManualEVMChain) Initialise(ctx context.Context, dependencies core.StandardCapabilitiesDependencies) error
func (*ManualEVMChain) ManualTrigger ¶ added in v1.19.0
func (*ManualEVMChain) Name ¶ added in v1.19.0
func (m *ManualEVMChain) Name() string
func (*ManualEVMChain) Ready ¶ added in v1.19.0
func (m *ManualEVMChain) Ready() error
func (*ManualEVMChain) RegisterLogTrigger ¶ added in v1.19.0
func (m *ManualEVMChain) RegisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, input *evmcappb.FilterLogTriggerRequest) (<-chan commonCap.TriggerAndId[*evmcappb.Log], caperrors.Error)
func (*ManualEVMChain) Start ¶ added in v1.19.0
func (m *ManualEVMChain) Start(ctx context.Context) error
func (*ManualEVMChain) UnregisterLogTrigger ¶ added in v1.19.0
func (m *ManualEVMChain) UnregisterLogTrigger(ctx context.Context, triggerID string, metadata commonCap.RequestMetadata, input *evmcappb.FilterLogTriggerRequest) caperrors.Error
func (*ManualEVMChain) WriteReport ¶ added in v1.19.0
func (m *ManualEVMChain) WriteReport(ctx context.Context, metadata commonCap.RequestMetadata, input *evmcappb.WriteReportRequest) (*commonCap.ResponseAndMetadata[*evmcappb.WriteReportReply], caperrors.Error)
type WaitForLogConfig ¶ added in v1.19.0
type WaitForLogConfig struct {
Selector uint64
Filter *evmpb.FilterLogTriggerRequest
WorkflowName string
// PollInterval overrides the polling cadence for tests. Zero means default.
PollInterval time.Duration
// NowBlock overrides the initial "latest block" lookup for tests. When nil,
// HeaderByNumber(nil) is used.
NowBlock *big.Int
}
WaitForLogConfig describes a workflow's EVM log trigger subscription so the simulator can wait for the next matching on-chain event.