Skip to content

Commit 67d1ce7

Browse files
committed
Merge branch 'main' into alex/adr023_ha-failover_raft11
* main: fix(docs): remove blog link from sidebar to fix 404 (#3014) build(deps): Bump github.com/cometbft/cometbft from 0.38.20 to 0.38.21 in /execution/evm/test in the go_modules group across 1 directory (#3011) refactor: use slices.Contains to simplify code (#3010) chore: Bump mermaid version and dependencies (#3009) chore: Bump github.com/consensys/gnark-crypto only (#3008) test: evm contract interaction (#3006) chore: remove redundant log (#3007) fix: return values correctly not nil (#3004) feat: expose execution client params to ev-node (#2982) feat(tracing): HTTP propagation (#3000) fix: deploy docs token (#3003) feat(tracing): add store tracing (#3001) feat: p2p exchange wrapper (#2855) build(deps): Bump the all-go group across 5 directories with 5 updates (#2999) feat(tracing): adding forced inclusion tracing (#2997) chore: update calculator for strategies (#2995) chore: adding tracing for da submitter (#2993) feat(tracing): part 10 da retriever tracing (#2991) chore: add da posting strategy to docs (#2992)
2 parents 9b80c74 + 2325ace commit 67d1ce7

File tree

103 files changed

+6040
-1476
lines changed

Some content is hidden

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

103 files changed

+6040
-1476
lines changed

.github/workflows/docs_deploy.yml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ on:
1313
# Allows you to run this workflow manually from the Actions tab
1414
workflow_dispatch:
1515

16-
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
17-
permissions: write-all
18-
1916
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
2017
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
2118
concurrency:
@@ -49,6 +46,6 @@ jobs:
4946
- name: Deploy to GitHub Pages
5047
uses: peaceiris/actions-gh-pages@v4
5148
with:
52-
github_token: ${{ secrets.GITHUB_TOKEN }}
49+
github_token: ${{ secrets.PAT_DOCS }}
5350
publish_dir: ./docs/.vitepress/dist
5451
cname: ev.xyz

.mockery.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,11 +44,23 @@ packages:
4444
filename: batch.go
4545
github.com/celestiaorg/go-header:
4646
interfaces:
47+
Exchange:
48+
config:
49+
dir: ./test/mocks
50+
pkgname: mocks
51+
filename: external/hexchange.go
4752
Store:
4853
config:
4954
dir: ./test/mocks
5055
pkgname: mocks
5156
filename: external/hstore.go
57+
github.com/evstack/ev-node/pkg/sync:
58+
interfaces:
59+
P2PExchange:
60+
config:
61+
dir: ./test/mocks
62+
pkgname: mocks
63+
filename: external/p2pexchange.go
5264
github.com/evstack/ev-node/block/internal/syncing:
5365
interfaces:
5466
DARetriever:

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
1818
Additionally, modified the core package to support marking transactions as forced included transactions.
1919
The execution client ought to perform basic validation on those transactions as they have skipped the execution client's mempool.
2020
- Add batching stategies (default stay time-based, unchanged with previous betas). Currently available strategies are `time`, `size`, `immediate` and `adaptive`.
21+
- Added `FilterTxs` method to the execution interface. This method is meant to filter txs by size and if the execution clients allows it, by gas. This is useful for force included transactions, as those aren't filtered by the sequencer's mempool.
22+
- Added `GetExecutionInfo` method to the execution interface. This method returns some execution information, such as the maximum gas per block.
2123

2224
### Changed
2325

apps/evm/cmd/run.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ var RunCmd = &cobra.Command{
8888
}
8989

9090
// Create sequencer based on configuration
91-
sequencer, err := createSequencer(logger, datastore, nodeConfig, genesis, daClient)
91+
sequencer, err := createSequencer(logger, datastore, nodeConfig, genesis, daClient, executor)
9292
if err != nil {
9393
return err
9494
}
@@ -154,14 +154,15 @@ func createSequencer(
154154
nodeConfig config.Config,
155155
genesis genesis.Genesis,
156156
daClient block.FullDAClient,
157+
executor execution.Executor,
157158
) (coresequencer.Sequencer, error) {
158159
if nodeConfig.Node.BasedSequencer {
159160
// Based sequencer mode - fetch transactions only from DA
160161
if !nodeConfig.Node.Aggregator {
161162
return nil, fmt.Errorf("based sequencer mode requires aggregator mode to be enabled")
162163
}
163164

164-
basedSeq, err := based.NewBasedSequencer(daClient, nodeConfig, datastore, genesis, logger)
165+
basedSeq, err := based.NewBasedSequencer(daClient, nodeConfig, datastore, genesis, logger, executor)
165166
if err != nil {
166167
return nil, fmt.Errorf("failed to create based sequencer: %w", err)
167168
}
@@ -182,15 +183,12 @@ func createSequencer(
182183
[]byte(genesis.ChainID),
183184
1000,
184185
genesis,
186+
executor,
185187
)
186188
if err != nil {
187189
return nil, fmt.Errorf("failed to create single sequencer: %w", err)
188190
}
189191

190-
logger.Info().
191-
Str("forced_inclusion_namespace", nodeConfig.DA.GetForcedInclusionNamespace()).
192-
Msg("single sequencer initialized")
193-
194192
return sequencer, nil
195193
}
196194

apps/evm/go.mod

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ replace (
99
)
1010

1111
require (
12-
github.com/celestiaorg/go-header v0.7.5-0.20260116211018-3f61d145c9d2
12+
github.com/celestiaorg/go-header v0.8.0
1313
github.com/ethereum/go-ethereum v1.16.8
1414
github.com/evstack/ev-node v1.0.0-beta.10
1515
github.com/evstack/ev-node/core v1.0.0-beta.5
@@ -37,7 +37,7 @@ require (
3737
github.com/celestiaorg/nmt v0.24.2 // indirect
3838
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
3939
github.com/cespare/xxhash/v2 v2.3.0 // indirect
40-
github.com/consensys/gnark-crypto v0.18.0 // indirect
40+
github.com/consensys/gnark-crypto v0.18.2 // indirect
4141
github.com/crate-crypto/go-eth-kzg v1.4.0 // indirect
4242
github.com/crate-crypto/go-ipa v0.0.0-20240724233137-53bbb0ceb27a // indirect
4343
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
@@ -100,7 +100,7 @@ require (
100100
github.com/libp2p/go-flow-metrics v0.3.0 // indirect
101101
github.com/libp2p/go-libp2p v0.46.0 // indirect
102102
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
103-
github.com/libp2p/go-libp2p-kad-dht v0.36.0 // indirect
103+
github.com/libp2p/go-libp2p-kad-dht v0.37.0 // indirect
104104
github.com/libp2p/go-libp2p-kbucket v0.8.0 // indirect
105105
github.com/libp2p/go-libp2p-pubsub v0.15.0 // indirect
106106
github.com/libp2p/go-libp2p-record v0.3.1 // indirect

apps/evm/go.sum

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -283,8 +283,8 @@ github.com/boltdb/bolt v1.3.1 h1:JQmyP4ZBrce+ZQu0dY660FMfatumYDLun9hBCUVIkF4=
283283
github.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx27Ps=
284284
github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
285285
github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
286-
github.com/celestiaorg/go-header v0.7.5-0.20260116211018-3f61d145c9d2 h1:jvRM1RT60oRy8jCneGYdX61Y8U2dI9uxjqT87H8uWq4=
287-
github.com/celestiaorg/go-header v0.7.5-0.20260116211018-3f61d145c9d2/go.mod h1:X00prITrMa2kxgEX15WQnbLf0uV6tlvTesDKC5KsDVQ=
286+
github.com/celestiaorg/go-header v0.8.0 h1:j9/t/uhxif26WQ3fULDAh3I55Fh3lJk6qMXPFFuOy28=
287+
github.com/celestiaorg/go-header v0.8.0/go.mod h1:X00prITrMa2kxgEX15WQnbLf0uV6tlvTesDKC5KsDVQ=
288288
github.com/celestiaorg/go-libp2p-messenger v0.2.2 h1:osoUfqjss7vWTIZrrDSy953RjQz+ps/vBFE7bychLEc=
289289
github.com/celestiaorg/go-libp2p-messenger v0.2.2/go.mod h1:oTCRV5TfdO7V/k6nkx7QjQzGrWuJbupv+0o1cgnY2i4=
290290
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 h1:wP84mtwOCVNOTfS3zErICjxKLnh74Z1uf+tdrlSFjVM=
@@ -342,8 +342,8 @@ github.com/cockroachdb/redact v1.1.5 h1:u1PMllDkdFfPWaNGMyLD1+so+aq3uUItthCFqzwP
342342
github.com/cockroachdb/redact v1.1.5/go.mod h1:BVNblN9mBWFyMyqK1k3AAiSxhvhfK2oOZZ2lK+dpvRg=
343343
github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06 h1:zuQyyAKVxetITBuuhv3BI9cMrmStnpT18zmgmTxunpo=
344344
github.com/cockroachdb/tokenbucket v0.0.0-20230807174530-cc333fc44b06/go.mod h1:7nc4anLGjupUW/PeY5qiNYsdNXj7zopG+eqsS7To5IQ=
345-
github.com/consensys/gnark-crypto v0.18.0 h1:vIye/FqI50VeAr0B3dx+YjeIvmc3LWz4yEfbWBpTUf0=
346-
github.com/consensys/gnark-crypto v0.18.0/go.mod h1:L3mXGFTe1ZN+RSJ+CLjUt9x7PNdx8ubaYfDROyp2Z8c=
345+
github.com/consensys/gnark-crypto v0.18.2 h1:+unEU7+M6vc9JszZPNTcRTwtrJg85tb57+5Gkyrz3hU=
346+
github.com/consensys/gnark-crypto v0.18.2/go.mod h1:L3mXGFTe1ZN+RSJ+CLjUt9x7PNdx8ubaYfDROyp2Z8c=
347347
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
348348
github.com/cpuguy83/go-md2man/v2 v2.0.0-20190314233015-f79a8a8ca69d/go.mod h1:maD7wRr/U5Z6m/iR4s+kqSMx2CaBsrgA7czyZG/E6dU=
349349
github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0=
@@ -746,8 +746,8 @@ github.com/libp2p/go-libp2p v0.46.0 h1:0T2yvIKpZ3DVYCuPOFxPD1layhRU486pj9rSlGWYn
746746
github.com/libp2p/go-libp2p v0.46.0/go.mod h1:TbIDnpDjBLa7isdgYpbxozIVPBTmM/7qKOJP4SFySrQ=
747747
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
748748
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
749-
github.com/libp2p/go-libp2p-kad-dht v0.36.0 h1:7QuXhV36+Vyj+L6A7mrYkn2sYLrbRcbjvsYDu/gXhn8=
750-
github.com/libp2p/go-libp2p-kad-dht v0.36.0/go.mod h1:O24LxTH9Rt3I5XU8nmiA9VynS4TrTwAyj+zBJKB05vQ=
749+
github.com/libp2p/go-libp2p-kad-dht v0.37.0 h1:V1IkFzK9taNS1UNAx260foulcBPH+watAUFjNo2qMUY=
750+
github.com/libp2p/go-libp2p-kad-dht v0.37.0/go.mod h1:o4FPa1ea++UVAMJ1c+kyjUmj3CKm9+ZCyzQb4uutCFM=
751751
github.com/libp2p/go-libp2p-kbucket v0.8.0 h1:QAK7RzKJpYe+EuSEATAaaHYMYLkPDGC18m9jxPLnU8s=
752752
github.com/libp2p/go-libp2p-kbucket v0.8.0/go.mod h1:JMlxqcEyKwO6ox716eyC0hmiduSWZZl6JY93mGaaqc4=
753753
github.com/libp2p/go-libp2p-pubsub v0.15.0 h1:cG7Cng2BT82WttmPFMi50gDNV+58K626m/wR00vGL1o=

apps/grpc/cmd/run.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ The execution client must implement the Evolve execution gRPC interface.`,
7575
}
7676

7777
// Create sequencer based on configuration
78-
sequencer, err := createSequencer(cmd.Context(), logger, datastore, nodeConfig, genesis)
78+
sequencer, err := createSequencer(cmd.Context(), logger, datastore, nodeConfig, genesis, executor)
7979
if err != nil {
8080
return err
8181
}
@@ -106,6 +106,7 @@ func createSequencer(
106106
datastore datastore.Batching,
107107
nodeConfig config.Config,
108108
genesis genesis.Genesis,
109+
executor execution.Executor,
109110
) (coresequencer.Sequencer, error) {
110111
blobClient, err := blobrpc.NewClient(ctx, nodeConfig.DA.Address, nodeConfig.DA.AuthToken, "")
111112
if err != nil {
@@ -120,7 +121,7 @@ func createSequencer(
120121
return nil, fmt.Errorf("based sequencer mode requires aggregator mode to be enabled")
121122
}
122123

123-
basedSeq, err := based.NewBasedSequencer(daClient, nodeConfig, datastore, genesis, logger)
124+
basedSeq, err := based.NewBasedSequencer(daClient, nodeConfig, datastore, genesis, logger, executor)
124125
if err != nil {
125126
return nil, fmt.Errorf("failed to create based sequencer: %w", err)
126127
}
@@ -141,15 +142,12 @@ func createSequencer(
141142
[]byte(genesis.ChainID),
142143
1000,
143144
genesis,
145+
executor,
144146
)
145147
if err != nil {
146148
return nil, fmt.Errorf("failed to create single sequencer: %w", err)
147149
}
148150

149-
logger.Info().
150-
Str("forced_inclusion_namespace", nodeConfig.DA.GetForcedInclusionNamespace()).
151-
Msg("single sequencer initialized")
152-
153151
return sequencer, nil
154152
}
155153

apps/grpc/go.mod

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ require (
2424
github.com/benbjohnson/clock v1.3.5 // indirect
2525
github.com/beorn7/perks v1.0.1 // indirect
2626
github.com/boltdb/bolt v1.3.1 // indirect
27-
github.com/celestiaorg/go-header v0.7.5-0.20260116211018-3f61d145c9d2 // indirect
27+
github.com/celestiaorg/go-header v0.8.0 // indirect
2828
github.com/celestiaorg/go-libp2p-messenger v0.2.2 // indirect
2929
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 // indirect
3030
github.com/celestiaorg/go-square/v3 v3.0.2 // indirect
@@ -80,7 +80,7 @@ require (
8080
github.com/libp2p/go-flow-metrics v0.3.0 // indirect
8181
github.com/libp2p/go-libp2p v0.46.0 // indirect
8282
github.com/libp2p/go-libp2p-asn-util v0.4.1 // indirect
83-
github.com/libp2p/go-libp2p-kad-dht v0.36.0 // indirect
83+
github.com/libp2p/go-libp2p-kad-dht v0.37.0 // indirect
8484
github.com/libp2p/go-libp2p-kbucket v0.8.0 // indirect
8585
github.com/libp2p/go-libp2p-pubsub v0.15.0 // indirect
8686
github.com/libp2p/go-libp2p-record v0.3.1 // indirect

apps/grpc/go.sum

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -271,8 +271,8 @@ github.com/boltdb/bolt v1.3.1 h1:JQmyP4ZBrce+ZQu0dY660FMfatumYDLun9hBCUVIkF4=
271271
github.com/boltdb/bolt v1.3.1/go.mod h1:clJnj/oiGkjum5o1McbSZDSLxVThjynRyGBgiAx27Ps=
272272
github.com/boombuler/barcode v1.0.0/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
273273
github.com/boombuler/barcode v1.0.1/go.mod h1:paBWMcWSl3LHKBqUq+rly7CNSldXjb2rDl3JlRe0mD8=
274-
github.com/celestiaorg/go-header v0.7.5-0.20260116211018-3f61d145c9d2 h1:jvRM1RT60oRy8jCneGYdX61Y8U2dI9uxjqT87H8uWq4=
275-
github.com/celestiaorg/go-header v0.7.5-0.20260116211018-3f61d145c9d2/go.mod h1:X00prITrMa2kxgEX15WQnbLf0uV6tlvTesDKC5KsDVQ=
274+
github.com/celestiaorg/go-header v0.8.0 h1:j9/t/uhxif26WQ3fULDAh3I55Fh3lJk6qMXPFFuOy28=
275+
github.com/celestiaorg/go-header v0.8.0/go.mod h1:X00prITrMa2kxgEX15WQnbLf0uV6tlvTesDKC5KsDVQ=
276276
github.com/celestiaorg/go-libp2p-messenger v0.2.2 h1:osoUfqjss7vWTIZrrDSy953RjQz+ps/vBFE7bychLEc=
277277
github.com/celestiaorg/go-libp2p-messenger v0.2.2/go.mod h1:oTCRV5TfdO7V/k6nkx7QjQzGrWuJbupv+0o1cgnY2i4=
278278
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 h1:wP84mtwOCVNOTfS3zErICjxKLnh74Z1uf+tdrlSFjVM=
@@ -676,8 +676,8 @@ github.com/libp2p/go-libp2p v0.46.0 h1:0T2yvIKpZ3DVYCuPOFxPD1layhRU486pj9rSlGWYn
676676
github.com/libp2p/go-libp2p v0.46.0/go.mod h1:TbIDnpDjBLa7isdgYpbxozIVPBTmM/7qKOJP4SFySrQ=
677677
github.com/libp2p/go-libp2p-asn-util v0.4.1 h1:xqL7++IKD9TBFMgnLPZR6/6iYhawHKHl950SO9L6n94=
678678
github.com/libp2p/go-libp2p-asn-util v0.4.1/go.mod h1:d/NI6XZ9qxw67b4e+NgpQexCIiFYJjErASrYW4PFDN8=
679-
github.com/libp2p/go-libp2p-kad-dht v0.36.0 h1:7QuXhV36+Vyj+L6A7mrYkn2sYLrbRcbjvsYDu/gXhn8=
680-
github.com/libp2p/go-libp2p-kad-dht v0.36.0/go.mod h1:O24LxTH9Rt3I5XU8nmiA9VynS4TrTwAyj+zBJKB05vQ=
679+
github.com/libp2p/go-libp2p-kad-dht v0.37.0 h1:V1IkFzK9taNS1UNAx260foulcBPH+watAUFjNo2qMUY=
680+
github.com/libp2p/go-libp2p-kad-dht v0.37.0/go.mod h1:o4FPa1ea++UVAMJ1c+kyjUmj3CKm9+ZCyzQb4uutCFM=
681681
github.com/libp2p/go-libp2p-kbucket v0.8.0 h1:QAK7RzKJpYe+EuSEATAaaHYMYLkPDGC18m9jxPLnU8s=
682682
github.com/libp2p/go-libp2p-kbucket v0.8.0/go.mod h1:JMlxqcEyKwO6ox716eyC0hmiduSWZZl6JY93mGaaqc4=
683683
github.com/libp2p/go-libp2p-pubsub v0.15.0 h1:cG7Cng2BT82WttmPFMi50gDNV+58K626m/wR00vGL1o=

apps/testapp/cmd/run.go

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ import (
1111

1212
kvexecutor "github.com/evstack/ev-node/apps/testapp/kv"
1313
"github.com/evstack/ev-node/block"
14+
"github.com/evstack/ev-node/core/execution"
1415
coresequencer "github.com/evstack/ev-node/core/sequencer"
1516
"github.com/evstack/ev-node/node"
1617
"github.com/evstack/ev-node/pkg/cmd"
@@ -90,7 +91,7 @@ var RunCmd = &cobra.Command{
9091
}
9192

9293
// Create sequencer based on configuration
93-
sequencer, err := createSequencer(ctx, logger, datastore, nodeConfig, genesis)
94+
sequencer, err := createSequencer(ctx, logger, datastore, nodeConfig, genesis, executor)
9495
if err != nil {
9596
return err
9697
}
@@ -108,6 +109,7 @@ func createSequencer(
108109
datastore datastore.Batching,
109110
nodeConfig config.Config,
110111
genesis genesis.Genesis,
112+
executor execution.Executor,
111113
) (coresequencer.Sequencer, error) {
112114
blobClient, err := blobrpc.NewClient(ctx, nodeConfig.DA.Address, nodeConfig.DA.AuthToken, "")
113115
if err != nil {
@@ -122,7 +124,7 @@ func createSequencer(
122124
return nil, fmt.Errorf("based sequencer mode requires aggregator mode to be enabled")
123125
}
124126

125-
basedSeq, err := based.NewBasedSequencer(daClient, nodeConfig, datastore, genesis, logger)
127+
basedSeq, err := based.NewBasedSequencer(daClient, nodeConfig, datastore, genesis, logger, executor)
126128
if err != nil {
127129
return nil, fmt.Errorf("failed to create based sequencer: %w", err)
128130
}
@@ -143,14 +145,11 @@ func createSequencer(
143145
[]byte(genesis.ChainID),
144146
1000,
145147
genesis,
148+
executor,
146149
)
147150
if err != nil {
148151
return nil, fmt.Errorf("failed to create single sequencer: %w", err)
149152
}
150153

151-
logger.Info().
152-
Str("forced_inclusion_namespace", nodeConfig.DA.GetForcedInclusionNamespace()).
153-
Msg("single sequencer initialized")
154-
155154
return sequencer, nil
156155
}

0 commit comments

Comments
 (0)