Skip to content
This repository was archived by the owner on May 11, 2024. It is now read-only.

Commit 847f6e5

Browse files
committed
feat: add l1 beacon client
1 parent 5244845 commit 847f6e5

File tree

7 files changed

+1209
-49
lines changed

7 files changed

+1209
-49
lines changed

cmd/flags/driver.go

+6
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,12 @@ var (
1414
Required: true,
1515
Category: driverCategory,
1616
}
17+
L1CCEndpoint = &cli.StringFlag{
18+
Name: "l1.beacon",
19+
Usage: "HTTP RPC endpoint of a L1 consensus client",
20+
Required: true,
21+
Category: driverCategory,
22+
}
1723
JWTSecret = &cli.StringFlag{
1824
Name: "jwtSecret",
1925
Usage: "Path to a JWT secret to use for authenticated RPC endpoints",

go.mod

+118-15
Original file line numberDiff line numberDiff line change
@@ -5,27 +5,33 @@ go 1.21
55
require (
66
github.com/btcsuite/btcd/btcec/v2 v2.3.2
77
github.com/cenkalti/backoff/v4 v4.1.3
8-
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.1.0
8+
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.2.0
99
github.com/ethereum/go-ethereum v1.13.8
1010
github.com/go-resty/resty/v2 v2.7.0
11+
github.com/holiman/uint256 v1.2.4
1112
github.com/labstack/echo/v4 v4.11.1
1213
github.com/modern-go/reflect2 v1.0.2
1314
github.com/phayes/freeport v0.0.0-20220201140144-74d24b5ae9f5
14-
github.com/prysmaticlabs/prysm/v4 v4.0.1
15+
github.com/prysmaticlabs/prysm/v4 v4.2.0
1516
github.com/stretchr/testify v1.8.4
1617
github.com/swaggo/swag v1.16.2
1718
github.com/urfave/cli/v2 v2.25.7
1819
golang.org/x/sync v0.5.0
1920
)
2021

2122
require (
23+
contrib.go.opencensus.io/exporter/jaeger v0.2.1 // indirect
24+
github.com/BurntSushi/toml v1.3.2 // indirect
2225
github.com/DataDog/zstd v1.5.2 // indirect
2326
github.com/KyleBanks/depth v1.2.1 // indirect
2427
github.com/Microsoft/go-winio v0.6.1 // indirect
2528
github.com/VictoriaMetrics/fastcache v1.12.1 // indirect
29+
github.com/aristanetworks/goarista v0.0.0-20200805130819-fd197cf57d96 // indirect
30+
github.com/benbjohnson/clock v1.3.5 // indirect
2631
github.com/beorn7/perks v1.0.1 // indirect
2732
github.com/bits-and-blooms/bitset v1.10.0 // indirect
2833
github.com/btcsuite/btcd/chaincfg/chainhash v1.0.2 // indirect
34+
github.com/cespare/xxhash v1.1.0 // indirect
2935
github.com/cespare/xxhash/v2 v2.2.0 // indirect
3036
github.com/cockroachdb/errors v1.9.1 // indirect
3137
github.com/cockroachdb/logtags v0.0.0-20230118201751-21c54148d20b // indirect
@@ -34,87 +40,184 @@ require (
3440
github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 // indirect
3541
github.com/consensys/bavard v0.1.13 // indirect
3642
github.com/consensys/gnark-crypto v0.12.1 // indirect
43+
github.com/containerd/cgroups v1.1.0 // indirect
44+
github.com/coreos/go-systemd/v22 v22.5.0 // indirect
3745
github.com/cpuguy83/go-md2man/v2 v2.0.2 // indirect
3846
github.com/crate-crypto/go-ipa v0.0.0-20231025140028-3c0104f4b233 // indirect
3947
github.com/crate-crypto/go-kzg-4844 v0.7.0 // indirect
4048
github.com/davecgh/go-spew v1.1.1 // indirect
49+
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect
4150
github.com/deckarep/golang-set/v2 v2.1.0 // indirect
51+
github.com/dgraph-io/ristretto v0.0.4-0.20210318174700-74754f61e018 // indirect
52+
github.com/docker/go-units v0.5.0 // indirect
53+
github.com/dustin/go-humanize v1.0.0 // indirect
54+
github.com/elastic/gosigar v0.14.2 // indirect
4255
github.com/ethereum/c-kzg-4844 v0.4.0 // indirect
4356
github.com/fjl/memsize v0.0.0-20190710130421-bcb5799ab5e5 // indirect
57+
github.com/flynn/noise v1.0.0 // indirect
58+
github.com/francoispqt/gojay v1.2.13 // indirect
4459
github.com/fsnotify/fsnotify v1.6.0 // indirect
4560
github.com/gballet/go-verkle v0.1.1-0.20231031103413-a67434b50f46 // indirect
4661
github.com/getsentry/sentry-go v0.18.0 // indirect
62+
github.com/go-logr/logr v1.2.4 // indirect
4763
github.com/go-ole/go-ole v1.2.6 // indirect
4864
github.com/go-openapi/jsonpointer v0.20.0 // indirect
4965
github.com/go-openapi/jsonreference v0.20.2 // indirect
5066
github.com/go-openapi/spec v0.20.9 // indirect
5167
github.com/go-openapi/swag v0.22.4 // indirect
68+
github.com/go-task/slim-sprig v0.0.0-20230315185526-52ccab3ef572 // indirect
69+
github.com/godbus/dbus/v5 v5.1.0 // indirect
5270
github.com/gofrs/flock v0.8.1 // indirect
5371
github.com/gogo/protobuf v1.3.2 // indirect
5472
github.com/golang-jwt/jwt v3.2.2+incompatible // indirect
5573
github.com/golang-jwt/jwt/v4 v4.5.0 // indirect
74+
github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e // indirect
5675
github.com/golang/protobuf v1.5.3 // indirect
5776
github.com/golang/snappy v0.0.5-0.20220116011046-fa5810519dcb // indirect
77+
github.com/google/go-cmp v0.5.9 // indirect
78+
github.com/google/gofuzz v1.2.0 // indirect
79+
github.com/google/gopacket v1.1.19 // indirect
80+
github.com/google/pprof v0.0.0-20231023181126-ff6d637d2a7b // indirect
5881
github.com/google/uuid v1.3.0 // indirect
82+
github.com/gorilla/mux v1.8.0 // indirect
5983
github.com/gorilla/websocket v1.5.0 // indirect
84+
github.com/grpc-ecosystem/grpc-gateway/v2 v2.0.1 // indirect
6085
github.com/hashicorp/go-bexpr v0.1.10 // indirect
86+
github.com/hashicorp/golang-lru v0.5.5-0.20210104140557-80c98217689d // indirect
87+
github.com/hashicorp/golang-lru/v2 v2.0.5 // indirect
88+
github.com/herumi/bls-eth-go-binary v0.0.0-20210917013441-d37c07cfda4e // indirect
6189
github.com/holiman/bloomfilter/v2 v2.0.3 // indirect
62-
github.com/holiman/uint256 v1.2.4 // indirect
6390
github.com/huin/goupnp v1.3.0 // indirect
91+
github.com/ipfs/go-cid v0.4.1 // indirect
92+
github.com/ipfs/go-log/v2 v2.5.1 // indirect
6493
github.com/jackpal/go-nat-pmp v1.0.2 // indirect
94+
github.com/jbenet/go-temp-err-catcher v0.1.0 // indirect
6595
github.com/josharian/intern v1.0.0 // indirect
66-
github.com/klauspost/compress v1.15.15 // indirect
67-
github.com/klauspost/cpuid/v2 v2.2.4 // indirect
96+
github.com/json-iterator/go v1.1.12 // indirect
97+
github.com/k0kubun/go-ansi v0.0.0-20180517002512-3bf9e2903213 // indirect
98+
github.com/klauspost/compress v1.17.2 // indirect
99+
github.com/klauspost/cpuid/v2 v2.2.5 // indirect
100+
github.com/koron/go-ssdp v0.0.4 // indirect
68101
github.com/kr/pretty v0.3.1 // indirect
69102
github.com/kr/text v0.2.0 // indirect
70103
github.com/labstack/gommon v0.4.0 // indirect
104+
github.com/libp2p/go-buffer-pool v0.1.0 // indirect
105+
github.com/libp2p/go-flow-metrics v0.1.0 // indirect
106+
github.com/libp2p/go-libp2p v0.32.1 // indirect
107+
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
108+
github.com/libp2p/go-libp2p-mplex v0.9.0 // indirect
109+
github.com/libp2p/go-libp2p-pubsub v0.10.0 // indirect
110+
github.com/libp2p/go-mplex v0.7.0 // indirect
111+
github.com/libp2p/go-msgio v0.3.0 // indirect
112+
github.com/libp2p/go-nat v0.2.0 // indirect
113+
github.com/libp2p/go-netroute v0.2.1 // indirect
114+
github.com/libp2p/go-reuseport v0.4.0 // indirect
115+
github.com/libp2p/go-yamux/v4 v4.0.1 // indirect
116+
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
71117
github.com/mailru/easyjson v0.7.7 // indirect
118+
github.com/marten-seemann/tcp v0.0.0-20210406111302-dfbc87cc63fd // indirect
72119
github.com/mattn/go-colorable v0.1.13 // indirect
73-
github.com/mattn/go-isatty v0.0.19 // indirect
120+
github.com/mattn/go-isatty v0.0.20 // indirect
74121
github.com/mattn/go-runewidth v0.0.14 // indirect
75122
github.com/matttproud/golang_protobuf_extensions v1.0.4 // indirect
76-
github.com/minio/sha256-simd v1.0.0 // indirect
123+
github.com/miekg/dns v1.1.56 // indirect
124+
github.com/mikioh/tcpinfo v0.0.0-20190314235526-30a79bb1804b // indirect
125+
github.com/mikioh/tcpopt v0.0.0-20190314235656-172688c1accc // indirect
126+
github.com/minio/highwayhash v1.0.2 // indirect
127+
github.com/minio/sha256-simd v1.0.1 // indirect
128+
github.com/mitchellh/colorstring v0.0.0-20190213212951-d06e56a500db // indirect
77129
github.com/mitchellh/mapstructure v1.4.1 // indirect
78130
github.com/mitchellh/pointerstructure v1.2.0 // indirect
79131
github.com/mmcloughlin/addchain v0.4.0 // indirect
132+
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd // indirect
80133
github.com/mohae/deepcopy v0.0.0-20170929034955-c48cc78d4826 // indirect
134+
github.com/mr-tron/base58 v1.2.0 // indirect
135+
github.com/multiformats/go-base32 v0.1.0 // indirect
136+
github.com/multiformats/go-base36 v0.2.0 // indirect
137+
github.com/multiformats/go-multiaddr v0.12.1 // indirect
138+
github.com/multiformats/go-multiaddr-dns v0.3.1 // indirect
139+
github.com/multiformats/go-multiaddr-fmt v0.1.0 // indirect
140+
github.com/multiformats/go-multibase v0.2.0 // indirect
141+
github.com/multiformats/go-multicodec v0.9.0 // indirect
142+
github.com/multiformats/go-multihash v0.2.3 // indirect
143+
github.com/multiformats/go-multistream v0.5.0 // indirect
144+
github.com/multiformats/go-varint v0.0.7 // indirect
81145
github.com/olekukonko/tablewriter v0.0.5 // indirect
146+
github.com/onsi/ginkgo/v2 v2.13.0 // indirect
147+
github.com/opencontainers/runtime-spec v1.1.0 // indirect
148+
github.com/patrickmn/go-cache v2.1.0+incompatible // indirect
149+
github.com/pbnjay/memory v0.0.0-20210728143218-7b4eea64cf58 // indirect
82150
github.com/pkg/errors v0.9.1 // indirect
83151
github.com/pmezard/go-difflib v1.0.0 // indirect
84152
github.com/prometheus/client_golang v1.14.0 // indirect
85-
github.com/prometheus/client_model v0.3.0 // indirect
86-
github.com/prometheus/common v0.39.0 // indirect
153+
github.com/prometheus/client_model v0.4.0 // indirect
154+
github.com/prometheus/common v0.42.0 // indirect
87155
github.com/prometheus/procfs v0.9.0 // indirect
88-
github.com/prysmaticlabs/fastssz v0.0.0-20220628121656-93dfe28febab // indirect
156+
github.com/prometheus/prom2json v1.3.0 // indirect
157+
github.com/prysmaticlabs/fastssz v0.0.0-20221107182844-78142813af44 // indirect
158+
github.com/prysmaticlabs/go-bitfield v0.0.0-20210809151128-385d8c5e3fb7 // indirect
89159
github.com/prysmaticlabs/gohashtree v0.0.3-alpha // indirect
90-
github.com/rivo/uniseg v0.4.3 // indirect
160+
github.com/prysmaticlabs/prombbolt v0.0.0-20210126082820-9b7adba6db7c // indirect
161+
github.com/quic-go/qpack v0.4.0 // indirect
162+
github.com/quic-go/qtls-go1-20 v0.3.4 // indirect
163+
github.com/quic-go/quic-go v0.39.3 // indirect
164+
github.com/quic-go/webtransport-go v0.6.0 // indirect
165+
github.com/raulk/go-watchdog v1.3.0 // indirect
166+
github.com/rivo/uniseg v0.4.4 // indirect
91167
github.com/rogpeppe/go-internal v1.9.0 // indirect
92168
github.com/rs/cors v1.7.0 // indirect
93169
github.com/russross/blackfriday/v2 v2.1.0 // indirect
170+
github.com/schollz/progressbar/v3 v3.3.4 // indirect
94171
github.com/shirou/gopsutil v3.21.11+incompatible // indirect
95172
github.com/sirupsen/logrus v1.9.0 // indirect
173+
github.com/spaolacci/murmur3 v1.1.0 // indirect
174+
github.com/spf13/afero v1.10.0 // indirect
96175
github.com/supranational/blst v0.3.11 // indirect
97176
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d // indirect
98177
github.com/thomaso-mirodin/intmath v0.0.0-20160323211736-5dc6d854e46e // indirect
99178
github.com/tklauser/go-sysconf v0.3.12 // indirect
100179
github.com/tklauser/numcpus v0.6.1 // indirect
180+
github.com/trailofbits/go-mutexasserts v0.0.0-20230328101604-8cdbc5f3d279 // indirect
181+
github.com/uber/jaeger-client-go v2.25.0+incompatible // indirect
101182
github.com/valyala/bytebufferpool v1.0.0 // indirect
102183
github.com/valyala/fasttemplate v1.2.2 // indirect
184+
github.com/wealdtech/go-bytesutil v1.1.1 // indirect
103185
github.com/xrash/smetrics v0.0.0-20201216005158-039620a65673 // indirect
104186
github.com/yusufpapurcu/wmi v1.2.2 // indirect
187+
go.etcd.io/bbolt v1.3.6 // indirect
188+
go.opencensus.io v0.24.0 // indirect
189+
go.uber.org/dig v1.17.1 // indirect
190+
go.uber.org/fx v1.20.1 // indirect
191+
go.uber.org/mock v0.3.0 // indirect
192+
go.uber.org/multierr v1.11.0 // indirect
193+
go.uber.org/zap v1.26.0 // indirect
105194
golang.org/x/crypto v0.17.0 // indirect
106-
golang.org/x/exp v0.0.0-20231110203233-9a3e6036ecaa // indirect
195+
golang.org/x/exp v0.0.0-20231214170342-aacd6d4b4611 // indirect
107196
golang.org/x/mod v0.14.0 // indirect
108-
golang.org/x/net v0.18.0 // indirect
197+
golang.org/x/net v0.19.0 // indirect
198+
golang.org/x/oauth2 v0.7.0 // indirect
109199
golang.org/x/sys v0.15.0 // indirect
200+
golang.org/x/term v0.15.0 // indirect
110201
golang.org/x/text v0.14.0 // indirect
111202
golang.org/x/time v0.3.0 // indirect
112-
golang.org/x/tools v0.15.0 // indirect
113-
google.golang.org/protobuf v1.28.1 // indirect
203+
golang.org/x/tools v0.16.0 // indirect
204+
google.golang.org/api v0.44.0 // indirect
205+
google.golang.org/appengine v1.6.7 // indirect
206+
google.golang.org/genproto v0.0.0-20230410155749-daa745c078e1 // indirect
207+
google.golang.org/grpc v1.56.3 // indirect
208+
google.golang.org/protobuf v1.30.0 // indirect
209+
gopkg.in/inf.v0 v0.9.1 // indirect
114210
gopkg.in/natefinch/lumberjack.v2 v2.0.0 // indirect
115211
gopkg.in/yaml.v2 v2.4.0 // indirect
116212
gopkg.in/yaml.v3 v3.0.1 // indirect
213+
k8s.io/apimachinery v0.20.0 // indirect
214+
k8s.io/client-go v0.20.0 // indirect
215+
k8s.io/klog/v2 v2.80.0 // indirect
216+
k8s.io/utils v0.0.0-20201110183641-67b214c5f920 // indirect
217+
lukechampine.com/blake3 v1.2.1 // indirect
117218
rsc.io/tmplfunc v0.0.3 // indirect
219+
sigs.k8s.io/structured-merge-diff/v4 v4.0.2 // indirect
220+
sigs.k8s.io/yaml v1.3.0 // indirect
118221
)
119222

120223
replace github.com/ethereum/go-ethereum v1.13.8 => github.com/taikoxyz/taiko-geth v0.0.0-20240118064628-88e3acd1f435

0 commit comments

Comments
 (0)