# Packages
No description provided by the author
# Functions
CheckEthTxQueueCapacity returns an error if inserting this transaction would exceed the maximum queue size.
CountUnconfirmedTransactions returns the number of unconfirmed transactions.
CountUnstartedTransactions returns the number of unconfirmed transactions.
No description provided by the author
NewDropOldestStrategy creates a new TxStrategy that drops the oldest transactions after the queue size is exceeded.
NewEthBroadcaster returns a new concrete EthBroadcaster.
NewEthConfirmer instantiates a new eth confirmer.
NewEthResender creates a new concrete EthResender.
NewNonceSyncer returns a new syncer.
No description provided by the author
NewQueueingTxStrategy creates a new TxStrategy that drops the oldest transactions after the queue size is exceeded if a queue size is specified, and otherwise does not drop transactions.
NewReaper instantiates a new reaper object.
NewSendEveryStrategy creates a new TxStrategy that does not drop transactions.
NewTxm creates a new Txm with the given configuration.
No description provided by the author
# Constants
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
InFlightTransactionRecheckInterval controls how often the EthBroadcaster will poll the unconfirmed queue to see if it is allowed to send another transaction.
TransmitCheckerTypeSimulate is a checker that simulates the transaction before executing on chain.
TransmitCheckerTypeVRFV1 is a checker that will not submit VRF V1 fulfillment requests that have already been fulfilled.
TransmitCheckerTypeVRFV2 is a checker that will not submit VRF V2 fulfillment requests that have already been fulfilled.
TransmitCheckTimeout controls the maximum amount of time that will be spent on the transmit check.
# Variables
ErrCouldNotGetReceipt is the error string we save if we reach our finality depth for a confirmed transaction without ever getting a receipt This most likely happened because an external wallet used the account for this nonce.
No description provided by the author
NoChecker is a TransmitChecker that always determines a transaction should be submitted.
# Structs
No description provided by the author
CheckerFactory is a real implementation of TransmitCheckerFactory.
DropOldestStrategy will send the newest N transactions, older ones will be removed from the queue.
EthBroadcaster monitors eth_txes for transactions that need to be broadcast, assigns nonces and ensures that at least one eth node somewhere has received the transaction successfully.
EthConfirmer is a broad service which performs four different tasks in sequence on every new longest chain Step 1: Mark that all currently pending transaction attempts were broadcast before this block Step 2: Check pending transactions for receipts Step 3: See if any transactions have exceeded the gas bumping block threshold and, if so, bump them Step 4: Check confirmed transactions to make sure they are still in the longest chain (reorg protection).
No description provided by the author
No description provided by the author
EthResender periodically picks up transactions that have been languishing unconfirmed for a configured amount of time without being sent, and sends their highest priced attempt again.
No description provided by the author
No description provided by the author
EthTxMeta contains fields of the transaction metadata Not all fields are guaranteed to be present.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Reaper handles periodic database cleanup for Txm.
SendEveryStrategy will always send the tx.
SimulateChecker simulates transactions, producing an error if they revert on chain.
TransmitCheckerSpec defines the check that should be performed before a transaction is submitted on chain.
No description provided by the author
VRFV1Checker is an implementation of TransmitChecker that checks whether a VRF V1 fulfillment has already been fulfilled.
VRFV2Checker is an implementation of TransmitChecker that checks whether a VRF V2 fulfillment has already been fulfilled.
# Interfaces
Config encompasses config used by txmgr package Unless otherwise specified, these should support changing at runtime
go:generate mockery --quiet --recursive --name Config --output ./mocks/ --case=underscore --structname Config --filename config.go.
KeyStore encompasses the subset of keystore used by txmgr.
No description provided by the author
No description provided by the author
ReaperConfig is the config subset used by the reaper.
TransmitChecker determines whether a transaction should be submitted on-chain.
TransmitCheckerFactory creates a transmit checker based on a spec.
go:generate mockery --quiet --recursive --name TxManager --output ./mocks/ --case=underscore --structname TxManager --filename tx_manager.go.
TxStrategy controls how txes are queued and sent
go:generate mockery --quiet --name TxStrategy --output ./mocks/ --case=underscore --structname TxStrategy --filename tx_strategy.go.
# Type aliases
No description provided by the author
No description provided by the author
ResumeCallback is assumed to be idempotent.
TransmitCheckerType describes the type of check that should be performed before a transaction is executed on-chain.