Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions CONFIG.md
Original file line number Diff line number Diff line change
Expand Up @@ -390,6 +390,7 @@ Enabled = false # Default
BlockTime = '10s' # Example
CustomURL = 'https://example.api.io' # Example
DualBroadcast = false # Example
Bundles = false # Example
```


Expand Down Expand Up @@ -417,6 +418,12 @@ DualBroadcast = false # Example
```
DualBroadcast enables DualBroadcast functionality.

### Bundles
```toml
Bundles = false # Example
```
Bundles enables sending bundles for auctioning (not compatible with all OFAs).

## BalanceMonitor
```toml
[BalanceMonitor]
Expand Down
4 changes: 4 additions & 0 deletions pkg/config/chain_scoped_transactions.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,10 @@ func (t *transactionManagerV2Config) DualBroadcast() *bool {
return t.c.DualBroadcast
}

func (t *transactionManagerV2Config) Bundles() *bool {
return t.c.Bundles
}

func (t *transactionsConfig) AutoPurge() AutoPurgeConfig {
return &autoPurgeConfig{c: t.c.AutoPurge}
}
Expand Down
1 change: 1 addition & 0 deletions pkg/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -133,6 +133,7 @@ type TransactionManagerV2 interface {
BlockTime() *time.Duration
CustomURL() *url.URL
DualBroadcast() *bool
Bundles() *bool
}

type GasEstimator interface {
Expand Down
4 changes: 4 additions & 0 deletions pkg/config/toml/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -589,6 +589,7 @@ type TransactionManagerV2Config struct {
BlockTime *commonconfig.Duration `toml:",omitempty"`
CustomURL *commonconfig.URL `toml:",omitempty"`
DualBroadcast *bool `toml:",omitempty"`
Bundles *bool `toml:",omitempty"`
}

func (t *TransactionManagerV2Config) setFrom(f *TransactionManagerV2Config) {
Expand All @@ -604,6 +605,9 @@ func (t *TransactionManagerV2Config) setFrom(f *TransactionManagerV2Config) {
if v := f.DualBroadcast; v != nil {
t.DualBroadcast = f.DualBroadcast
}
if v := f.Bundles; v != nil {
t.Bundles = f.Bundles
}
}

func (t *TransactionManagerV2Config) ValidateConfig() (err error) {
Expand Down
3 changes: 3 additions & 0 deletions pkg/config/toml/config_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,7 @@ func TestDefaults_fieldsNotNil(t *testing.T) {
unknown.Transactions.TransactionManagerV2.BlockTime = new(config.Duration)
unknown.Transactions.TransactionManagerV2.CustomURL = new(config.URL)
unknown.Transactions.TransactionManagerV2.DualBroadcast = ptr(false)
unknown.Transactions.TransactionManagerV2.Bundles = ptr(false)
unknown.Transactions.AutoPurge.Threshold = ptr(uint32(0))
unknown.Transactions.AutoPurge.MinAttempts = ptr(uint32(0))
unknown.Transactions.AutoPurge.DetectionApiUrl = new(config.URL)
Expand Down Expand Up @@ -159,6 +160,7 @@ func TestDocs(t *testing.T) {
docDefaults.Transactions.TransactionManagerV2.BlockTime = nil
docDefaults.Transactions.TransactionManagerV2.CustomURL = nil
docDefaults.Transactions.TransactionManagerV2.DualBroadcast = nil
docDefaults.Transactions.TransactionManagerV2.Bundles = nil

// Fallback DA oracle is not set
docDefaults.GasEstimator.DAOracle = DAOracle{}
Expand Down Expand Up @@ -283,6 +285,7 @@ var fullConfig = EVMConfig{
TransactionManagerV2: TransactionManagerV2Config{
Enabled: ptr(false),
DualBroadcast: ptr(true),
Bundles: ptr(false),
BlockTime: config.MustNewDuration(42 * time.Second),
CustomURL: config.MustParseURL("http://txs.org"),
},
Expand Down
2 changes: 2 additions & 0 deletions pkg/config/toml/docs.toml
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,8 @@ BlockTime = '10s' # Example
CustomURL = 'https://example.api.io' # Example
# DualBroadcast enables DualBroadcast functionality.
DualBroadcast = false # Example
# Bundles enables sending bundles for auctioning (not compatible with all OFAs).
Bundles = false # Example

[BalanceMonitor]
# Enabled balance monitoring for all keys.
Expand Down
1 change: 1 addition & 0 deletions pkg/config/toml/testdata/config-full.toml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,7 @@ Enabled = false
BlockTime = '42s'
CustomURL = 'http://txs.org'
DualBroadcast = true
Bundles = false

[BalanceMonitor]
Enabled = true
Expand Down
Loading
Loading