Skip to content

Commit 3e2b6db

Browse files
committed
Merge branch 'feature/fraud-proof' into Release/v0.4.0
2 parents 7bf5a0e + ef5d4d1 commit 3e2b6db

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

52 files changed

+3356
-3172
lines changed

CHANGELOG.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
# Changelog
2-
## [0.3.1] - 2023-04-13
2+
## [0.3.2] - 2023-04-18
3+
4+
### Features
5+
- Reduce the amount of data sent to Layer1 rollup using EigenLayer, significantly lowering gas fees for Layer2([#811](https://github.com/mantlenetworkio/mantle/pull/811))
6+
7+
## [0.3.1](https://github.com/mantlenetworkio/mantle/commits/v0.3.1) - 2023-04-13
38

49
### Features
510
- Changed the rollup method from Layer1 CTC contract to EigenDA([#779](https://github.com/mantlenetworkio/mantle/pull/779))

gas-oracle/bindings/bvm_eigen_datalayr_fee.go

Lines changed: 822 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gas-oracle/bindings/gaspriceoracle.go

Lines changed: 614 additions & 25 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

gas-oracle/flags/flags.go

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,12 @@ var (
3333
Value: "0x420000000000000000000000000000000000000F",
3434
EnvVar: "GAS_PRICE_ORACLE_GAS_PRICE_ORACLE_ADDRESS",
3535
}
36+
DaFeeContractAddressFlag = cli.StringFlag{
37+
Name: "da-fee-contract-address",
38+
Usage: "Address of DA-Fee-Contract",
39+
Value: "0x9109811E8eEe02520219612bB5D47C60c382F4aa",
40+
EnvVar: "GAS_PRICE_ORACLE_DA_FEE_CONTRACT_ADDRESS",
41+
}
3642
PrivateKeyFlag = cli.StringFlag{
3743
Name: "private-key",
3844
Usage: "Private Key corresponding to BVM_GasPriceOracle Owner",
@@ -53,6 +59,11 @@ var (
5359
Usage: "Enable updating the L2 gas price",
5460
EnvVar: "GAS_PRICE_ORACLE_ENABLE_L2_GAS_PRICE",
5561
}
62+
EnableDaFeeFlag = cli.BoolFlag{
63+
Name: "enable-da-gas-price",
64+
Usage: "Enable updating the da gas price",
65+
EnvVar: "GAS_PRICE_ORACLE_ENABLE_DA_FEE",
66+
}
5667
LogLevelFlag = cli.IntFlag{
5768
Name: "loglevel",
5869
Value: 3,
@@ -95,12 +106,24 @@ var (
95106
Usage: "polling time for updating the L1 base fee",
96107
EnvVar: "GAS_PRICE_ORACLE_L1_BASE_FEE_EPOCH_LENGTH_SECONDS",
97108
}
109+
DaFeeEpochLengthSecondsFlag = cli.Uint64Flag{
110+
Name: "da-fee-epoch-length-seconds",
111+
Value: 15,
112+
Usage: "polling time for updating the Da fee",
113+
EnvVar: "GAS_PRICE_ORACLE_DA_FEE_EPOCH_LENGTH_SECONDS",
114+
}
98115
L1BaseFeeSignificanceFactorFlag = cli.Float64Flag{
99116
Name: "l1-base-fee-significant-factor",
100117
Value: 0.10,
101118
Usage: "only update when the L1 base fee changes by more than this factor",
102119
EnvVar: "GAS_PRICE_ORACLE_L1_BASE_FEE_SIGNIFICANT_FACTOR",
103120
}
121+
DaFeeSignificanceFactorFlag = cli.Float64Flag{
122+
Name: "da-fee-significant-factor",
123+
Value: 0.10,
124+
Usage: "only update when the L1 base fee changes by more than this factor",
125+
EnvVar: "GAS_PRICE_ORACLE_DA_FEE_SIGNIFICANT_FACTOR",
126+
}
104127
L2GasPriceSignificanceFactorFlag = cli.Float64Flag{
105128
Name: "significant-factor",
106129
Value: 0.05,
@@ -178,7 +201,9 @@ var Flags = []cli.Flag{
178201
L1ChainIDFlag,
179202
L2ChainIDFlag,
180203
L1BaseFeeSignificanceFactorFlag,
204+
DaFeeSignificanceFactorFlag,
181205
GasPriceOracleAddressFlag,
206+
DaFeeContractAddressFlag,
182207
PrivateKeyFlag,
183208
TransactionGasPriceFlag,
184209
LogLevelFlag,
@@ -188,12 +213,14 @@ var Flags = []cli.Flag{
188213
AverageBlockGasLimitPerEpochFlag,
189214
EpochLengthSecondsFlag,
190215
L1BaseFeeEpochLengthSecondsFlag,
216+
DaFeeEpochLengthSecondsFlag,
191217
L2GasPriceSignificanceFactorFlag,
192218
BybitBackendURL,
193219
TokenPricerUpdateFrequencySecond,
194220
WaitForReceiptFlag,
195221
EnableL1BaseFeeFlag,
196222
EnableL2GasPriceFlag,
223+
EnableDaFeeFlag,
197224
MetricsEnabledFlag,
198225
MetricsHTTPFlag,
199226
MetricsPortFlag,

gas-oracle/go.mod

Lines changed: 27 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -3,50 +3,54 @@ module github.com/mantlenetworkio/mantle/gas-oracle
33
go 1.18
44

55
require (
6-
github.com/ethereum/go-ethereum v1.10.17
7-
github.com/urfave/cli v1.22.5
6+
github.com/ethereum/go-ethereum v1.10.26
7+
github.com/go-resty/resty/v2 v2.7.0
8+
github.com/stretchr/testify v1.8.1
9+
github.com/urfave/cli v1.22.12
810
)
911

1012
require (
1113
github.com/VictoriaMetrics/fastcache v1.9.0 // indirect
1214
github.com/allegro/bigcache v1.2.1 // indirect
13-
github.com/btcsuite/btcd v0.22.0-beta // indirect
14-
github.com/btcsuite/btcd/btcec/v2 v2.1.2 // indirect
15-
github.com/cespare/xxhash/v2 v2.1.2 // indirect
16-
github.com/cpuguy83/go-md2man/v2 v2.0.1 // indirect
15+
github.com/btcsuite/btcd/btcec/v2 v2.2.0 // indirect
16+
github.com/cespare/xxhash/v2 v2.2.0 // indirect
17+
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
18+
github.com/davecgh/go-spew v1.1.1 // indirect
1719
github.com/deckarep/golang-set v1.8.0 // indirect
18-
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 // indirect
20+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.1.0 // indirect
1921
github.com/deepmap/oapi-codegen v1.8.2 // indirect
2022
github.com/edsrzf/mmap-go v1.1.0 // indirect
2123
github.com/fjl/memsize v0.0.1 // indirect
24+
github.com/fsnotify/fsnotify v1.5.4 // indirect
2225
github.com/gballet/go-libpcsclite v0.0.0-20191108122812-4678299bea08 // indirect
23-
github.com/go-kit/kit v0.10.0 // indirect
26+
github.com/go-kit/kit v0.12.0 // indirect
2427
github.com/go-ole/go-ole v1.2.6 // indirect
25-
github.com/go-resty/resty/v2 v2.7.0 // indirect
2628
github.com/go-stack/stack v1.8.1 // indirect
2729
github.com/golang/snappy v0.0.4 // indirect
28-
github.com/google/go-cmp v0.5.8 // indirect
30+
github.com/google/go-cmp v0.5.9 // indirect
2931
github.com/google/uuid v1.3.0 // indirect
3032
github.com/gorilla/websocket v1.5.0 // indirect
3133
github.com/hashicorp/go-bexpr v0.1.11 // indirect
3234
github.com/hashicorp/golang-lru v0.5.5-0.20210104140557-80c98217689d // indirect
3335
github.com/holiman/bloomfilter/v2 v2.0.3 // indirect
3436
github.com/holiman/uint256 v1.2.0 // indirect
35-
github.com/huin/goupnp v1.0.3 // indirect
3637
github.com/influxdata/influxdb v1.8.3 // indirect
3738
github.com/influxdata/influxdb-client-go/v2 v2.4.0 // indirect
3839
github.com/influxdata/line-protocol v0.0.0-20210311194329-9aa0e372d097 // indirect
39-
github.com/mattn/go-colorable v0.1.12 // indirect
40-
github.com/mattn/go-isatty v0.0.14 // indirect
40+
github.com/kr/pretty v0.3.0 // indirect
41+
github.com/mattn/go-colorable v0.1.13 // indirect
42+
github.com/mattn/go-isatty v0.0.16 // indirect
4143
github.com/mattn/go-runewidth v0.0.13 // indirect
42-
github.com/mitchellh/mapstructure v1.4.3 // indirect
44+
github.com/mitchellh/mapstructure v1.5.0 // indirect
4345
github.com/olekukonko/tablewriter v0.0.5 // indirect
44-
github.com/onsi/ginkgo v1.16.4 // indirect
45-
github.com/onsi/gomega v1.16.0 // indirect
46+
github.com/onsi/ginkgo v1.16.5 // indirect
47+
github.com/onsi/gomega v1.24.0 // indirect
4648
github.com/pkg/errors v0.9.1 // indirect
49+
github.com/pmezard/go-difflib v1.0.0 // indirect
4750
github.com/prometheus/tsdb v0.10.0 // indirect
4851
github.com/rivo/uniseg v0.2.0 // indirect
4952
github.com/rjeczalik/notify v0.9.2 // indirect
53+
github.com/rogpeppe/go-internal v1.8.1 // indirect
5054
github.com/rs/cors v1.8.2 // indirect
5155
github.com/russross/blackfriday/v2 v2.1.0 // indirect
5256
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
@@ -56,10 +60,13 @@ require (
5660
github.com/tklauser/numcpus v0.4.0 // indirect
5761
github.com/tyler-smith/go-bip39 v1.1.0 // indirect
5862
github.com/yusufpapurcu/wmi v1.2.2 // indirect
59-
golang.org/x/crypto v0.0.0-20220307211146-efcb8507fb70 // indirect
60-
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2 // indirect
61-
golang.org/x/sys v0.0.0-20220310020820-b874c991c1a5 // indirect
62-
golang.org/x/time v0.0.0-20220224211638-0e9765cccd65 // indirect
63+
golang.org/x/crypto v0.3.0 // indirect
64+
golang.org/x/net v0.3.0 // indirect
65+
golang.org/x/sync v0.1.0 // indirect
66+
golang.org/x/sys v0.3.0 // indirect
67+
golang.org/x/time v0.0.0-20220922220347-f3bd1da661af // indirect
68+
gopkg.in/check.v1 v1.0.0-20201130134442-10cb98267c6c // indirect
6369
gopkg.in/natefinch/npipe.v2 v2.0.0-20160621034901-c1b8fa8bdcce // indirect
6470
gopkg.in/yaml.v2 v2.4.0 // indirect
71+
gopkg.in/yaml.v3 v3.0.1 // indirect
6572
)

0 commit comments

Comments
 (0)