Skip to content

Commit

Permalink
Add mantle config (#15844)
Browse files Browse the repository at this point in the history
* add mantle, soneium and sonic core configs

* add l1 orcale config

* update develop
  • Loading branch information
joaoluisam authored Jan 7, 2025
1 parent 44435a5 commit 62b4f1e
Show file tree
Hide file tree
Showing 3 changed files with 295 additions and 0 deletions.
37 changes: 37 additions & 0 deletions core/chains/evm/config/toml/defaults/Mantle_Mainnet.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
ChainID = '5000'
FinalityTagEnabled = true
FinalityDepth = 1200
ChainType = 'optimismBedrock'
LogPollInterval = '2s'
MinIncomingConfirmations = 1
NoNewFinalizedHeadsThreshold = '40m0s'

[HeadTracker]
HistoryDepth = 1250

[GasEstimator]
PriceMax = '120 gwei'
# Limit values are high as Mantle's GasPrice is in native token (MNT) instead of ETH. Their proprietary TokenRatio parameter is used to adjust fees
LimitDefault = 80_000_000_000
LimitMax = 100_000_000_000
BumpMin = '100 wei'
BumpThreshold = 60
EIP1559DynamicFees = true
FeeCapDefault = '120 gwei'
# Mantle recommends setting Priority Fee to 0 in their docs linked here: https://docs-v2.mantle.xyz/devs/concepts/tx-fee/eip-1559#application-of-eip-1559-in-mantle-v2-tectonic
TipCapDefault = '0 wei'
TipCapMin = '0 wei'

[GasEstimator.BlockHistory]
# Default is 24, which leads to bumpy gas prices. In CCIP
# we want to smooth out the gas prices, so we increase the sample size.
BlockHistorySize = 200
# The formula for FeeCap is (current block base fee * (1.125 ^ EIP1559FeeCapBufferBlocks) + tipcap)
# where tipcap is managed by the block history estimators. In the context of CCIP,
# the gas price is relayed to other changes for quotes so we want accurate/avg not pessimistic values.
# So we set this to zero so FeeCap = baseFee + tipcap.
EIP1559FeeCapBufferBlocks = 0

[GasEstimator.DAOracle]
OracleType = 'opstack'
OracleAddress = '0x420000000000000000000000000000000000000F'
38 changes: 38 additions & 0 deletions core/chains/evm/config/toml/defaults/Mantle_Sepolia.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
ChainID = '5003'
FinalityTagEnabled = true
FinalityDepth = 1200
ChainType = 'optimismBedrock'
LogPollInterval = '2s'
MinIncomingConfirmations = 1
NoNewFinalizedHeadsThreshold = '60m0s'

[HeadTracker]
HistoryDepth = 1250

[GasEstimator]
PriceMax = '120 gwei'
# Limit values are high as Mantle's GasPrice is in native token (MNT) instead of ETH. Their proprietary TokenRatio parameter is used to adjust fees
LimitDefault = 80000000000
LimitMax = 100000000000
BumpMin = '100 wei'
BumpPercent = 20
BumpThreshold = 60
EIP1559DynamicFees = true
FeeCapDefault = '120 gwei'
# Mantle recommends setting Priority Fee to 0 in their docs linked here: https://docs-v2.mantle.xyz/devs/concepts/tx-fee/eip-1559#application-of-eip-1559-in-mantle-v2-tectonic
TipCapDefault = '0 wei'
TipCapMin = '0 wei'

[GasEstimator.BlockHistory]
# Default is 24, which leads to bumpy gas prices. In CCIP
# we want to smooth out the gas prices, so we increase the sample size.
BlockHistorySize = 200
# The formula for FeeCap is (current block base fee * (1.125 ^ EIP1559FeeCapBufferBlocks) + tipcap)
# where tipcap is managed by the block history estimators. In the context of CCIP,
# the gas price is relayed to other changes for quotes so we want accurate/avg not pessimistic values.
# So we set this to zero so FeeCap = baseFee + tipcap.
EIP1559FeeCapBufferBlocks = 0

[GasEstimator.DAOracle]
OracleType = 'opstack'
OracleAddress = '0x420000000000000000000000000000000000000F'
220 changes: 220 additions & 0 deletions docs/CONFIG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6682,6 +6682,226 @@ GasLimitDefault = 400000

</p></details>

<details><summary>Mantle Mainnet (5000)</summary><p>

```toml
AutoCreateKey = true
BlockBackfillDepth = 10
BlockBackfillSkip = false
ChainType = 'optimismBedrock'
FinalityDepth = 1200
FinalityTagEnabled = true
LogBackfillBatchSize = 1000
LogPollInterval = '2s'
LogKeepBlocksDepth = 100000
LogPrunePageSize = 0
BackupLogPollerBlockDelay = 100
MinIncomingConfirmations = 1
MinContractPayment = '0.00001 link'
NonceAutoSync = true
NoNewHeadsThreshold = '3m0s'
LogBroadcasterEnabled = true
RPCDefaultBatchSize = 250
RPCBlockQueryDelay = 1
FinalizedBlockOffset = 0
NoNewFinalizedHeadsThreshold = '40m0s'

[Transactions]
Enabled = true
ForwardersEnabled = false
MaxInFlight = 16
MaxQueued = 250
ReaperInterval = '1h0m0s'
ReaperThreshold = '168h0m0s'
ResendAfterThreshold = '1m0s'

[Transactions.AutoPurge]
Enabled = false

[BalanceMonitor]
Enabled = true

[GasEstimator]
Mode = 'BlockHistory'
PriceDefault = '20 gwei'
PriceMax = '120 gwei'
PriceMin = '1 gwei'
LimitDefault = 80000000000
LimitMax = 100000000000
LimitMultiplier = '1'
LimitTransfer = 21000
EstimateLimit = false
BumpMin = '100 wei'
BumpPercent = 20
BumpThreshold = 60
EIP1559DynamicFees = true
FeeCapDefault = '120 gwei'
TipCapDefault = '0'
TipCapMin = '0'

[GasEstimator.BlockHistory]
BatchSize = 25
BlockHistorySize = 200
CheckInclusionBlocks = 12
CheckInclusionPercentile = 90
EIP1559FeeCapBufferBlocks = 0
TransactionPercentile = 60

[GasEstimator.FeeHistory]
CacheTimeout = '10s'

[GasEstimator.DAOracle]
OracleType = 'opstack'
OracleAddress = '0x420000000000000000000000000000000000000F'

[HeadTracker]
HistoryDepth = 1250
MaxBufferSize = 3
SamplingInterval = '1s'
MaxAllowedFinalityDepth = 10000
FinalityTagBypass = true
PersistenceEnabled = true

[NodePool]
PollFailureThreshold = 5
PollInterval = '10s'
SelectionMode = 'HighestHead'
SyncThreshold = 5
LeaseDuration = '0s'
NodeIsSyncingEnabled = false
FinalizedBlockPollInterval = '5s'
EnforceRepeatableRead = true
DeathDeclarationDelay = '1m0s'
NewHeadsPollInterval = '0s'

[OCR]
ContractConfirmations = 4
ContractTransmitterTransmitTimeout = '10s'
DatabaseTimeout = '10s'
DeltaCOverride = '168h0m0s'
DeltaCJitterOverride = '1h0m0s'
ObservationGracePeriod = '1s'

[OCR2]
[OCR2.Automation]
GasLimit = 5400000

[Workflow]
GasLimitDefault = 400000
```

</p></details>

<details><summary>Mantle Sepolia (5003)</summary><p>

```toml
AutoCreateKey = true
BlockBackfillDepth = 10
BlockBackfillSkip = false
ChainType = 'optimismBedrock'
FinalityDepth = 1200
FinalityTagEnabled = true
LogBackfillBatchSize = 1000
LogPollInterval = '2s'
LogKeepBlocksDepth = 100000
LogPrunePageSize = 0
BackupLogPollerBlockDelay = 100
MinIncomingConfirmations = 1
MinContractPayment = '0.00001 link'
NonceAutoSync = true
NoNewHeadsThreshold = '3m0s'
LogBroadcasterEnabled = true
RPCDefaultBatchSize = 250
RPCBlockQueryDelay = 1
FinalizedBlockOffset = 0
NoNewFinalizedHeadsThreshold = '1h0m0s'

[Transactions]
Enabled = true
ForwardersEnabled = false
MaxInFlight = 16
MaxQueued = 250
ReaperInterval = '1h0m0s'
ReaperThreshold = '168h0m0s'
ResendAfterThreshold = '1m0s'

[Transactions.AutoPurge]
Enabled = false

[BalanceMonitor]
Enabled = true

[GasEstimator]
Mode = 'BlockHistory'
PriceDefault = '20 gwei'
PriceMax = '120 gwei'
PriceMin = '1 gwei'
LimitDefault = 80000000000
LimitMax = 100000000000
LimitMultiplier = '1'
LimitTransfer = 21000
EstimateLimit = false
BumpMin = '100 wei'
BumpPercent = 20
BumpThreshold = 60
EIP1559DynamicFees = true
FeeCapDefault = '120 gwei'
TipCapDefault = '0'
TipCapMin = '0'

[GasEstimator.BlockHistory]
BatchSize = 25
BlockHistorySize = 200
CheckInclusionBlocks = 12
CheckInclusionPercentile = 90
EIP1559FeeCapBufferBlocks = 0
TransactionPercentile = 60

[GasEstimator.FeeHistory]
CacheTimeout = '10s'

[GasEstimator.DAOracle]
OracleType = 'opstack'
OracleAddress = '0x420000000000000000000000000000000000000F'

[HeadTracker]
HistoryDepth = 1250
MaxBufferSize = 3
SamplingInterval = '1s'
MaxAllowedFinalityDepth = 10000
FinalityTagBypass = true
PersistenceEnabled = true

[NodePool]
PollFailureThreshold = 5
PollInterval = '10s'
SelectionMode = 'HighestHead'
SyncThreshold = 5
LeaseDuration = '0s'
NodeIsSyncingEnabled = false
FinalizedBlockPollInterval = '5s'
EnforceRepeatableRead = true
DeathDeclarationDelay = '1m0s'
NewHeadsPollInterval = '0s'

[OCR]
ContractConfirmations = 4
ContractTransmitterTransmitTimeout = '10s'
DatabaseTimeout = '10s'
DeltaCOverride = '168h0m0s'
DeltaCJitterOverride = '1h0m0s'
ObservationGracePeriod = '1s'

[OCR2]
[OCR2.Automation]
GasLimit = 5400000

[Workflow]
GasLimitDefault = 400000
```

</p></details>

<details><summary>Klaytn Mainnet (8217)</summary><p>

```toml
Expand Down

0 comments on commit 62b4f1e

Please sign in to comment.