Skip to content

Commit b4bd549

Browse files
committed
Refactor DA debug tool to improve blob fetching and error handling
- Introduced a new `fetchBlobs` function to streamline the process of retrieving blobs from the DA client. - Replaced direct calls to `client.DA.GetIDs` and `client.DA.Get` with the new `fetchBlobs` function to handle errors more gracefully. - Added custom error types for better clarity when blobs are not found or when a height is in the future. - Updated blob processing logic to work with the new batch structure, improving efficiency and readability. - Modified tests to reflect changes in ID creation and splitting, ensuring compatibility with the new blob handling logic.
1 parent 6d4b404 commit b4bd549

Some content is hidden

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

59 files changed

+1080
-3232
lines changed

.mockery.yaml

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,6 @@ template: testify
22
template-data:
33
unroll-variadic: true
44
packages:
5-
github.com/evstack/ev-node/core/da:
6-
interfaces:
7-
DA:
8-
config:
9-
pkgname: mocks
10-
filename: da.go
11-
configs:
12-
- dir: ./da/internal/mocks
13-
- dir: ./test/mocks
145
github.com/evstack/ev-node/core/execution:
156
interfaces:
167
Executor:

CLAUDE.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ The project uses a zero-dependency core package pattern:
5252

5353
- **Executor** (core/executor.go) - Handles state transitions
5454
- **Sequencer** (core/sequencer.go) - Orders transactions
55-
- **DA** (core/da.go) - Data availability layer abstraction
55+
- **Blob API** (block/internal/da/client.go) - Data availability client abstraction used by the node
5656

5757
### Modular Design
5858

@@ -120,7 +120,7 @@ go test -race ./package/...
120120

121121
### Adding a New DA Layer
122122

123-
1. Implement the `DA` interface from `core/da.go`
123+
1. Implement the `BlobAPI` interface from `block/internal/da/client.go` (or extend the shared helpers in `pkg/blob`)
124124
2. Add configuration in the appropriate config package
125125
3. Wire it up in the initialization code
126126
4. Add tests following existing patterns

apps/evm/cmd/run.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ import (
1212
"github.com/rs/zerolog"
1313
"github.com/spf13/cobra"
1414

15-
"github.com/evstack/ev-node/core/da"
1615
"github.com/evstack/ev-node/core/execution"
1716
coresequencer "github.com/evstack/ev-node/core/sequencer"
1817
"github.com/evstack/ev-node/da/jsonrpc"
@@ -22,6 +21,7 @@ import (
2221
"github.com/evstack/ev-node/pkg/config"
2322
"github.com/evstack/ev-node/pkg/genesis"
2423
genesispkg "github.com/evstack/ev-node/pkg/genesis"
24+
"github.com/evstack/ev-node/pkg/namespace"
2525
"github.com/evstack/ev-node/pkg/p2p"
2626
"github.com/evstack/ev-node/pkg/p2p/key"
2727
"github.com/evstack/ev-node/pkg/store"
@@ -50,8 +50,8 @@ var RunCmd = &cobra.Command{
5050
ec.SetLogger(logger.With().Str("module", "engine_client").Logger())
5151
}
5252

53-
headerNamespace := da.NamespaceFromString(nodeConfig.DA.GetNamespace())
54-
dataNamespace := da.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
53+
headerNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetNamespace())
54+
dataNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
5555

5656
logger.Info().Str("headerNamespace", headerNamespace.HexString()).Str("dataNamespace", dataNamespace.HexString()).Msg("namespaces")
5757

@@ -76,7 +76,7 @@ var RunCmd = &cobra.Command{
7676
}
7777

7878
// Create sequencer based on configuration
79-
sequencer, err := createSequencer(context.Background(), logger, datastore, &daJrpc.DA, nodeConfig, genesis)
79+
sequencer, err := createSequencer(context.Background(), logger, datastore, daJrpc, nodeConfig, genesis)
8080
if err != nil {
8181
return err
8282
}
@@ -91,7 +91,7 @@ var RunCmd = &cobra.Command{
9191
return err
9292
}
9393

94-
return rollcmd.StartNode(logger, cmd, executor, sequencer, &daJrpc.DA, p2pClient, datastore, nodeConfig, genesis, node.NodeOptions{})
94+
return rollcmd.StartNode(logger, cmd, executor, sequencer, p2pClient, datastore, nodeConfig, genesis, node.NodeOptions{})
9595
},
9696
}
9797

@@ -105,7 +105,7 @@ func createSequencer(
105105
ctx context.Context,
106106
logger zerolog.Logger,
107107
datastore datastore.Batching,
108-
da da.DA,
108+
blobVerifier *jsonrpc.Client,
109109
nodeConfig config.Config,
110110
genesis genesis.Genesis,
111111
) (coresequencer.Sequencer, error) {
@@ -114,12 +114,15 @@ func createSequencer(
114114
return nil, fmt.Errorf("failed to create single sequencer metrics: %w", err)
115115
}
116116

117+
dataNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
118+
117119
sequencer, err := single.NewSequencer(
118120
ctx,
119121
logger,
120122
datastore,
121-
da,
123+
blobVerifier,
122124
[]byte(genesis.ChainID),
125+
dataNamespace.Bytes(),
123126
nodeConfig.Node.BlockTime.Duration,
124127
singleMetrics,
125128
nodeConfig.Node.Aggregator,

apps/evm/go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,9 @@ require (
3131
github.com/beorn7/perks v1.0.1 // indirect
3232
github.com/bits-and-blooms/bitset v1.20.0 // indirect
3333
github.com/celestiaorg/go-libp2p-messenger v0.2.2 // indirect
34+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 // indirect
3435
github.com/celestiaorg/go-square/v3 v3.0.2 // indirect
36+
github.com/celestiaorg/nmt v0.24.2 // indirect
3537
github.com/cespare/xxhash/v2 v2.3.0 // indirect
3638
github.com/consensys/gnark-crypto v0.18.1 // indirect
3739
github.com/crate-crypto/go-eth-kzg v1.4.0 // indirect

apps/evm/go.sum

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,8 +34,12 @@ github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBT
3434
github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s=
3535
github.com/celestiaorg/go-libp2p-messenger v0.2.2 h1:osoUfqjss7vWTIZrrDSy953RjQz+ps/vBFE7bychLEc=
3636
github.com/celestiaorg/go-libp2p-messenger v0.2.2/go.mod h1:oTCRV5TfdO7V/k6nkx7QjQzGrWuJbupv+0o1cgnY2i4=
37+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 h1:wP84mtwOCVNOTfS3zErICjxKLnh74Z1uf+tdrlSFjVM=
38+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3/go.mod h1:86qIYnEhmn/hfW+xvw98NOI3zGaDEB3x8JGjYo2FqLs=
3739
github.com/celestiaorg/go-square/v3 v3.0.2 h1:eSQOgNII8inK9IhiBZ+6GADQeWbRq4HYY72BOgcduA4=
3840
github.com/celestiaorg/go-square/v3 v3.0.2/go.mod h1:oFReMLsSDMRs82ICFEeFQFCqNvwdsbIM1BzCcb0f7dM=
41+
github.com/celestiaorg/nmt v0.24.2 h1:LlpJSPOd6/Lw1Ig6HUhZuqiINHLka/ZSRTBzlNJpchg=
42+
github.com/celestiaorg/nmt v0.24.2/go.mod h1:vgLBpWBi8F5KLxTdXSwb7AU4NhiIQ1AQRGa+PzdcLEA=
3943
github.com/celestiaorg/utils v0.1.0 h1:WsP3O8jF7jKRgLNFmlDCwdThwOFMFxg0MnqhkLFVxPo=
4044
github.com/celestiaorg/utils v0.1.0/go.mod h1:vQTh7MHnvpIeCQZ2/Ph+w7K1R2UerDheZbgJEJD2hSU=
4145
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
@@ -183,6 +187,8 @@ github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
183187
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
184188
github.com/google/go-github v17.0.0+incompatible/go.mod h1:zLgOLi98H3fifZn+44m+umXrS52loVEgC2AApnigrVQ=
185189
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
190+
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
191+
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
186192
github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8=
187193
github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo=
188194
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
@@ -522,6 +528,12 @@ github.com/supranational/blst v0.3.16-0.20250831170142-f48500c1fdbe/go.mod h1:jZ
522528
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d h1:vfofYNRScrDdvS342BElfbETmL1Aiz3i2t0zfRj16Hs=
523529
github.com/syndtr/goleveldb v1.0.1-0.20220721030215-126854af5e6d/go.mod h1:RRCYJbIwD5jmqPI9XoAFR0OcDxqUctll6zUj/+B4S48=
524530
github.com/tarm/serial v0.0.0-20180830185346-98f6abe2eb07/go.mod h1:kDXzergiv9cbyO7IOYJZWg1U88JhDg3PB6klq9Hg2pA=
531+
github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY=
532+
github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
533+
github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA=
534+
github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
535+
github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4=
536+
github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
525537
github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU=
526538
github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI=
527539
github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk=
@@ -760,8 +772,6 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
760772
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
761773
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
762774
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
763-
gotest.tools/v3 v3.5.2 h1:7koQfIKdy+I8UTetycgUqXWSDwpgv193Ka+qRsmBY8Q=
764-
gotest.tools/v3 v3.5.2/go.mod h1:LtdLGcnqToBH83WByAAi/wiwSFCArdFIUV/xxN4pcjA=
765775
grpc.go4.org v0.0.0-20170609214715-11d0a25b4919/go.mod h1:77eQGdRu53HpSqPFJFmuJdjuHRquDANNeA4x7B8WQ9o=
766776
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
767777
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=

apps/grpc/cmd/run.go

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99
"github.com/rs/zerolog"
1010
"github.com/spf13/cobra"
1111

12-
"github.com/evstack/ev-node/core/da"
1312
"github.com/evstack/ev-node/core/execution"
1413
coresequencer "github.com/evstack/ev-node/core/sequencer"
1514
"github.com/evstack/ev-node/da/jsonrpc"
@@ -19,6 +18,7 @@ import (
1918
"github.com/evstack/ev-node/pkg/config"
2019
"github.com/evstack/ev-node/pkg/genesis"
2120
rollgenesis "github.com/evstack/ev-node/pkg/genesis"
21+
"github.com/evstack/ev-node/pkg/namespace"
2222
"github.com/evstack/ev-node/pkg/p2p"
2323
"github.com/evstack/ev-node/pkg/p2p/key"
2424
"github.com/evstack/ev-node/pkg/store"
@@ -51,8 +51,8 @@ The execution client must implement the Evolve execution gRPC interface.`,
5151

5252
logger := rollcmd.SetupLogger(nodeConfig.Log)
5353

54-
headerNamespace := da.NamespaceFromString(nodeConfig.DA.GetNamespace())
55-
dataNamespace := da.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
54+
headerNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetNamespace())
55+
dataNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
5656

5757
logger.Info().Str("headerNamespace", headerNamespace.HexString()).Str("dataNamespace", dataNamespace.HexString()).Msg("namespaces")
5858

@@ -79,7 +79,7 @@ The execution client must implement the Evolve execution gRPC interface.`,
7979
}
8080

8181
// Create sequencer based on configuration
82-
sequencer, err := createSequencer(cmd.Context(), logger, datastore, &daJrpc.DA, nodeConfig, genesis)
82+
sequencer, err := createSequencer(cmd.Context(), logger, datastore, daJrpc, nodeConfig, genesis)
8383
if err != nil {
8484
return err
8585
}
@@ -97,7 +97,7 @@ The execution client must implement the Evolve execution gRPC interface.`,
9797
}
9898

9999
// Start the node
100-
return rollcmd.StartNode(logger, cmd, executor, sequencer, &daJrpc.DA, p2pClient, datastore, nodeConfig, genesis, node.NodeOptions{})
100+
return rollcmd.StartNode(logger, cmd, executor, sequencer, p2pClient, datastore, nodeConfig, genesis, node.NodeOptions{})
101101
},
102102
}
103103

@@ -114,7 +114,7 @@ func createSequencer(
114114
ctx context.Context,
115115
logger zerolog.Logger,
116116
datastore datastore.Batching,
117-
da da.DA,
117+
blobVerifier *jsonrpc.Client,
118118
nodeConfig config.Config,
119119
genesis genesis.Genesis,
120120
) (coresequencer.Sequencer, error) {
@@ -123,12 +123,15 @@ func createSequencer(
123123
return nil, fmt.Errorf("failed to create single sequencer metrics: %w", err)
124124
}
125125

126+
dataNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
127+
126128
sequencer, err := single.NewSequencer(
127129
ctx,
128130
logger,
129131
datastore,
130-
da,
132+
blobVerifier,
131133
[]byte(genesis.ChainID),
134+
dataNamespace.Bytes(),
132135
nodeConfig.Node.BlockTime.Duration,
133136
singleMetrics,
134137
nodeConfig.Node.Aggregator,

apps/grpc/go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,9 @@ require (
2828
github.com/beorn7/perks v1.0.1 // indirect
2929
github.com/celestiaorg/go-header v0.7.4 // indirect
3030
github.com/celestiaorg/go-libp2p-messenger v0.2.2 // indirect
31+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 // indirect
3132
github.com/celestiaorg/go-square/v3 v3.0.2 // indirect
33+
github.com/celestiaorg/nmt v0.24.2 // indirect
3234
github.com/cespare/xxhash/v2 v2.3.0 // indirect
3335
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
3436
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect

apps/grpc/go.sum

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,12 @@ github.com/bradfitz/go-smtpd v0.0.0-20170404230938-deb6d6237625/go.mod h1:HYsPBT
2424
github.com/buger/jsonparser v0.0.0-20181115193947-bf1c66bbce23/go.mod h1:bbYlZJ7hK1yFx9hf58LP0zeX7UjIGs20ufpu3evjr+s=
2525
github.com/celestiaorg/go-libp2p-messenger v0.2.2 h1:osoUfqjss7vWTIZrrDSy953RjQz+ps/vBFE7bychLEc=
2626
github.com/celestiaorg/go-libp2p-messenger v0.2.2/go.mod h1:oTCRV5TfdO7V/k6nkx7QjQzGrWuJbupv+0o1cgnY2i4=
27+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 h1:wP84mtwOCVNOTfS3zErICjxKLnh74Z1uf+tdrlSFjVM=
28+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3/go.mod h1:86qIYnEhmn/hfW+xvw98NOI3zGaDEB3x8JGjYo2FqLs=
2729
github.com/celestiaorg/go-square/v3 v3.0.2 h1:eSQOgNII8inK9IhiBZ+6GADQeWbRq4HYY72BOgcduA4=
2830
github.com/celestiaorg/go-square/v3 v3.0.2/go.mod h1:oFReMLsSDMRs82ICFEeFQFCqNvwdsbIM1BzCcb0f7dM=
31+
github.com/celestiaorg/nmt v0.24.2 h1:LlpJSPOd6/Lw1Ig6HUhZuqiINHLka/ZSRTBzlNJpchg=
32+
github.com/celestiaorg/nmt v0.24.2/go.mod h1:vgLBpWBi8F5KLxTdXSwb7AU4NhiIQ1AQRGa+PzdcLEA=
2933
github.com/celestiaorg/utils v0.1.0 h1:WsP3O8jF7jKRgLNFmlDCwdThwOFMFxg0MnqhkLFVxPo=
3034
github.com/celestiaorg/utils v0.1.0/go.mod h1:vQTh7MHnvpIeCQZ2/Ph+w7K1R2UerDheZbgJEJD2hSU=
3135
github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA12rnyqOA5BBL4O983OfeGPqjHWSTneU=
@@ -123,6 +127,8 @@ github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
123127
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
124128
github.com/google/go-github v17.0.0+incompatible/go.mod h1:zLgOLi98H3fifZn+44m+umXrS52loVEgC2AApnigrVQ=
125129
github.com/google/go-querystring v1.0.0/go.mod h1:odCYkC5MyYFN7vkCjXpyrEuKhc/BUO6wN/zVPAxq5ck=
130+
github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
131+
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
126132
github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8=
127133
github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo=
128134
github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs=
@@ -429,6 +435,12 @@ github.com/stretchr/testify v1.11.1/go.mod h1:wZwfW3scLgRK+23gO65QZefKpKQRnfz6sD
429435
github.com/subosito/gotenv v1.6.0 h1:9NlTDc1FTs4qu0DDq7AEtTPNw6SVm7uBMsUCUjABIf8=
430436
github.com/subosito/gotenv v1.6.0/go.mod h1:Dk4QP5c2W3ibzajGcXpNraDfq2IrhjMIvMSWPKKo0FU=
431437
github.com/tarm/serial v0.0.0-20180830185346-98f6abe2eb07/go.mod h1:kDXzergiv9cbyO7IOYJZWg1U88JhDg3PB6klq9Hg2pA=
438+
github.com/tidwall/gjson v1.18.0 h1:FIDeeyB800efLX89e5a8Y0BNH+LOngJyGrIWxG2FKQY=
439+
github.com/tidwall/gjson v1.18.0/go.mod h1:/wbyibRr2FHMks5tjHJ5F8dMZh3AcwJEMf5vlfC0lxk=
440+
github.com/tidwall/match v1.1.1 h1:+Ho715JplO36QYgwN9PGYNhgZvoUSc9X2c80KVTi+GA=
441+
github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JTxsfmM=
442+
github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4=
443+
github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
432444
github.com/urfave/cli v1.22.10/go.mod h1:Gos4lmkARVdJ6EkW0WaNv/tZAAMe9V7XWyB60NtXRu0=
433445
github.com/viant/assertly v0.4.8/go.mod h1:aGifi++jvCrUaklKEKT0BU95igDNaqkvz+49uaYMPRU=
434446
github.com/viant/toolbox v0.24.0/go.mod h1:OxMCG57V0PXuIP2HNQrtJf2CjqdmbrOx5EkMILuUhzM=
@@ -654,8 +666,6 @@ gopkg.in/yaml.v2 v2.4.0/go.mod h1:RDklbk79AGWmwhnvt/jBztapEOGDOx6ZbXqjP6csGnQ=
654666
gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
655667
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
656668
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
657-
gotest.tools/v3 v3.5.2 h1:7koQfIKdy+I8UTetycgUqXWSDwpgv193Ka+qRsmBY8Q=
658-
gotest.tools/v3 v3.5.2/go.mod h1:LtdLGcnqToBH83WByAAi/wiwSFCArdFIUV/xxN4pcjA=
659669
grpc.go4.org v0.0.0-20170609214715-11d0a25b4919/go.mod h1:77eQGdRu53HpSqPFJFmuJdjuHRquDANNeA4x7B8WQ9o=
660670
honnef.co/go/tools v0.0.0-20180728063816-88497007e858/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
661671
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=

apps/testapp/cmd/run.go

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ import (
88
"github.com/spf13/cobra"
99

1010
kvexecutor "github.com/evstack/ev-node/apps/testapp/kv"
11-
"github.com/evstack/ev-node/core/da"
1211
"github.com/evstack/ev-node/da/jsonrpc"
1312
"github.com/evstack/ev-node/node"
1413
rollcmd "github.com/evstack/ev-node/pkg/cmd"
1514
genesispkg "github.com/evstack/ev-node/pkg/genesis"
15+
"github.com/evstack/ev-node/pkg/namespace"
1616
"github.com/evstack/ev-node/pkg/p2p"
1717
"github.com/evstack/ev-node/pkg/p2p/key"
1818
"github.com/evstack/ev-node/pkg/store"
@@ -46,8 +46,8 @@ var RunCmd = &cobra.Command{
4646
ctx, cancel := context.WithCancel(context.Background())
4747
defer cancel()
4848

49-
headerNamespace := da.NamespaceFromString(nodeConfig.DA.GetNamespace())
50-
dataNamespace := da.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
49+
headerNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetNamespace())
50+
dataNamespace := namespace.NamespaceFromString(nodeConfig.DA.GetDataNamespace())
5151

5252
logger.Info().Str("headerNamespace", headerNamespace.HexString()).Str("dataNamespace", dataNamespace.HexString()).Msg("namespaces")
5353

@@ -96,8 +96,9 @@ var RunCmd = &cobra.Command{
9696
ctx,
9797
logger,
9898
datastore,
99-
&daJrpc.DA,
99+
daJrpc,
100100
[]byte(genesis.ChainID),
101+
dataNamespace.Bytes(),
101102
nodeConfig.Node.BlockTime.Duration,
102103
singleMetrics,
103104
nodeConfig.Node.Aggregator,
@@ -111,6 +112,6 @@ var RunCmd = &cobra.Command{
111112
return err
112113
}
113114

114-
return rollcmd.StartNode(logger, cmd, executor, sequencer, &daJrpc.DA, p2pClient, datastore, nodeConfig, genesis, node.NodeOptions{})
115+
return rollcmd.StartNode(logger, cmd, executor, sequencer, p2pClient, datastore, nodeConfig, genesis, node.NodeOptions{})
115116
},
116117
}

apps/testapp/go.mod

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ replace (
1313
require (
1414
github.com/celestiaorg/go-header v0.7.4
1515
github.com/evstack/ev-node v1.0.0-beta.9
16-
github.com/evstack/ev-node/core v1.0.0-beta.5
17-
github.com/evstack/ev-node/da v0.0.0-00010101000000-000000000000
16+
github.com/evstack/ev-node/da v1.0.0-beta.6
1817
github.com/ipfs/go-datastore v0.9.0
1918
github.com/spf13/cobra v1.10.1
2019
github.com/stretchr/testify v1.11.1
@@ -26,14 +25,17 @@ require (
2625
github.com/benbjohnson/clock v1.3.5 // indirect
2726
github.com/beorn7/perks v1.0.1 // indirect
2827
github.com/celestiaorg/go-libp2p-messenger v0.2.2 // indirect
28+
github.com/celestiaorg/go-square/merkle v0.0.0-20240627094109-7d01436067a3 // indirect
2929
github.com/celestiaorg/go-square/v3 v3.0.2 // indirect
30+
github.com/celestiaorg/nmt v0.24.2 // indirect
3031
github.com/cespare/xxhash/v2 v2.3.0 // indirect
3132
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
3233
github.com/davidlazar/go-crypto v0.0.0-20200604182044-b73af7476f6c // indirect
3334
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0 // indirect
3435
github.com/dgraph-io/badger/v4 v4.5.1 // indirect
3536
github.com/dgraph-io/ristretto/v2 v2.1.0 // indirect
3637
github.com/dustin/go-humanize v1.0.1 // indirect
38+
github.com/evstack/ev-node/core v1.0.0-beta.5 // indirect
3739
github.com/filecoin-project/go-clock v0.1.0 // indirect
3840
github.com/filecoin-project/go-jsonrpc v0.9.0 // indirect
3941
github.com/flynn/noise v1.1.0 // indirect

0 commit comments

Comments
 (0)