txresolver

package
v0.0.27 Latest Latest
Warning

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

Go to latest
Published: Mar 28, 2026 License: MIT Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	EventStore    *eventstore.Store
	Chains        *chains.Chains
	PushSigner    *pushsigner.Signer
	CheckInterval time.Duration
	Logger        zerolog.Logger
}

Config holds configuration for the tx resolver.

type Resolver

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

Resolver takes BROADCASTED txs and moves them to terminal status (COMPLETED or REVERTED).

Chain-specific behavior:

  • EVM: Checks on-chain receipt. Success (status=1) → COMPLETED. Failure (status=0) or tx not found after retries → vote failure on Push chain and REVERT (refunds user).
  • SVM (Solana): Checks on-chain ExecutedTx PDA via IsAlreadyExecuted. PDA exists → COMPLETED. PDA absent → vote failure and REVERT. RPC error → stay BROADCASTED, retry.

func NewResolver

func NewResolver(cfg Config) *Resolver

NewResolver creates a new tx resolver.

func (*Resolver) Start

func (r *Resolver) Start(ctx context.Context)

Start begins the background loop.

Jump to

Keyboard shortcuts

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