Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -30,3 +30,4 @@ docs/.vitepress/cache
.claude
.gocache
.gomodcache
/.cache
12 changes: 6 additions & 6 deletions CLAUDE.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,15 +44,15 @@ The project uses a zero-dependency core package pattern:

- **core/** - Contains only interfaces and types, no external dependencies
- **block/** - Block management, creation, validation, and synchronization
- **p2p/** - Networking layer built on libp2p
- **sequencing/** - Modular sequencer implementations
- **testapp/** - Reference implementation for testing
- **pkg/p2p/** - Networking layer built on libp2p
- **pkg/sequencers/** - Modular sequencer implementations
- **apps/testapp/** - Reference implementation for testing

### Key Interfaces

- **Executor** (core/executor.go) - Handles state transitions
- **Sequencer** (core/sequencer.go) - Orders transactions
- **DA** (pkg/da/types) - Data availability layer abstraction
- **Executor** (`core/executor.go`) - Handles state transitions
- **Sequencer** (`core/sequencer.go`) - Orders transactions
- **DA** (`pkg/da/types`) - Data availability layer abstraction

### Modular Design

Expand Down
4 changes: 2 additions & 2 deletions apps/evm/cmd/run.go
Original file line number Diff line number Diff line change
Expand Up @@ -26,9 +26,9 @@ import (
genesispkg "github.com/evstack/ev-node/pkg/genesis"
"github.com/evstack/ev-node/pkg/p2p"
"github.com/evstack/ev-node/pkg/p2p/key"
"github.com/evstack/ev-node/pkg/sequencers/based"
"github.com/evstack/ev-node/pkg/sequencers/single"
"github.com/evstack/ev-node/pkg/store"
"github.com/evstack/ev-node/sequencers/based"
"github.com/evstack/ev-node/sequencers/single"

"github.com/evstack/ev-node/apps/evm/server"
)
Expand Down
1 change: 0 additions & 1 deletion apps/grpc/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ COPY go.mod go.sum ./
COPY apps/grpc/go.mod apps/grpc/go.sum ./apps/grpc/
COPY core/go.mod ./core/
COPY execution/grpc/go.mod execution/grpc/go.sum ./execution/grpc/
COPY sequencers/single/go.mod sequencers/single/go.sum ./sequencers/single/

# Download dependencies
RUN go mod download
Expand Down
2 changes: 1 addition & 1 deletion apps/grpc/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -151,4 +151,4 @@ If you have issues connecting to the DA layer:

- [Evolve Documentation](https://ev.xyz)
- [gRPC Execution Interface](../../execution/grpc/README.md)
- [Single Sequencer Documentation](../../sequencers/single/README.md)
- [Single Sequencer Documentation](../../pkg/sequencers/single/README.md)
4 changes: 2 additions & 2 deletions apps/grpc/cmd/run.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,9 @@ import (
rollgenesis "github.com/evstack/ev-node/pkg/genesis"
"github.com/evstack/ev-node/pkg/p2p"
"github.com/evstack/ev-node/pkg/p2p/key"
"github.com/evstack/ev-node/pkg/sequencers/based"
"github.com/evstack/ev-node/pkg/sequencers/single"
"github.com/evstack/ev-node/pkg/store"
"github.com/evstack/ev-node/sequencers/based"
"github.com/evstack/ev-node/sequencers/single"
)

const (
Expand Down
4 changes: 2 additions & 2 deletions apps/testapp/cmd/run.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@ import (
"github.com/evstack/ev-node/pkg/genesis"
"github.com/evstack/ev-node/pkg/p2p"
"github.com/evstack/ev-node/pkg/p2p/key"
"github.com/evstack/ev-node/pkg/sequencers/based"
"github.com/evstack/ev-node/pkg/sequencers/single"
"github.com/evstack/ev-node/pkg/store"
"github.com/evstack/ev-node/sequencers/based"
"github.com/evstack/ev-node/sequencers/single"
)

const testDbName = "testapp"
Expand Down
8 changes: 4 additions & 4 deletions sequencers/based/README.md → pkg/sequencers/based/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ This design ensures that all transactions are force-included from DA, making the

### Key Interfaces

The Based Sequencer implements the `Sequencer` interface from `core/sequencer.go`:
The Based Sequencer implements the `Sequencer` interface from `core/sequencer/sequencing.go`:

- `SubmitBatchTxs()` - No-op for based sequencer (transactions are not accepted)
- `GetNextBatch()` - Retrieves the next batch from DA via forced inclusion
Expand Down Expand Up @@ -89,7 +89,7 @@ type Checkpoint struct {

#### 1. Initial State

```
```bash
Checkpoint: (DAHeight: 100, TxIndex: 0)
- Ready to fetch epoch starting at DA height 100
```
Expand All @@ -98,7 +98,7 @@ Checkpoint: (DAHeight: 100, TxIndex: 0)

When `GetNextBatch()` is called and we're at an epoch end:

```
```bash
Request: GetNextBatch(maxBytes: 1MB)
Action: Fetch all transactions from epoch (DA heights 100-109)
Result: currentBatchTxs = [tx1, tx2, tx3, ..., txN] (from entire epoch)
Expand All @@ -108,7 +108,7 @@ Result: currentBatchTxs = [tx1, tx2, tx3, ..., txN] (from entire epoch)

Transactions are processed incrementally, respecting `maxBytes`:

```
```bash
Batch 1: [tx1, tx2] (fits in maxBytes)
Checkpoint: (DAHeight: 100, TxIndex: 2)

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import (
coresequencer "github.com/evstack/ev-node/core/sequencer"
datypes "github.com/evstack/ev-node/pkg/da/types"
"github.com/evstack/ev-node/pkg/genesis"
seqcommon "github.com/evstack/ev-node/sequencers/common"
seqcommon "github.com/evstack/ev-node/pkg/sequencers/common"
)

var _ coresequencer.Sequencer = (*BasedSequencer)(nil)
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -150,7 +150,7 @@ The checkpoint system ensures that **forced inclusion transactions from DA are n

### Example

```
```bash
Initial state: Checkpoint(DAHeight: 100, TxIndex: 0)
DA returns 3 transactions at height 100

Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,8 @@ import (
coresequencer "github.com/evstack/ev-node/core/sequencer"
datypes "github.com/evstack/ev-node/pkg/da/types"
"github.com/evstack/ev-node/pkg/genesis"
seqcommon "github.com/evstack/ev-node/pkg/sequencers/common"
"github.com/evstack/ev-node/pkg/store"
seqcommon "github.com/evstack/ev-node/sequencers/common"
)

// ErrInvalidId is returned when the chain id is invalid
Expand Down
Loading