Skip to content

Conversation

@madisoncarter1234
Copy link
Contributor

@madisoncarter1234 madisoncarter1234 commented Jan 16, 2026

Summary

Adds base-devnet binary for local development and testing. Launches both base-builder and base-client with a pre-configured genesis, Montana-style interactive TUI, and built-in block driver.

Getting Started

Prerequisites

  • Rust toolchain
  • Foundry (for cast)

Run

# Checkout this PR
gh pr checkout 505

# Build all binaries
cargo build --release -p base-devnet -p base-builder -p base-reth-node

# Run devnet
./target/release/base-devnet

Test

# Send a test transaction (Alice → Bob)
cast send 0x70997970C51812dc3A010C7d01b50e0d17dc79C8 \
  --value 0.1ether \
  --rpc-url http://localhost:8545 \
  --private-key 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80

Endpoints

  • HTTP RPC: http://localhost:8545
  • WebSocket: ws://localhost:8546

Test Accounts (1M ETH each)

Name Address Private Key
Alice 0xf39Fd6e51aad88F6F4ce6aB8827279cffFb92266 0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80
Bob 0x70997970C51812dc3A010C7d01b50e0d17dc79C8 0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d
Charlie 0x3C44CdDdB6a900fa2b585dd299e03d12FA4293BC 0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a

Features

  • Montana-style TUI with split log panels for client/builder
  • Keyboard shortcuts: q=quit, r=restart, s=save logs, Tab=switch panel
  • Transaction highlighting (blocks with user txs shown in green)
  • --no-driver flag for plugging in external consensus (op-node/Kona)

Test Plan

  • cargo fmt
  • cargo clippy - 0 warnings
  • cargo test - passes
  • Manual testing: send transactions, verify block inclusion

Closes #382

  Adds a new base-devnet binary that launches both base-builder and
  base-client nodes configured for local development and testing.

  Features:
  - Interactive TUI with split log panels for client/builder
  - Built-in block driver for automatic block production via Engine API
  - Pre-funded test accounts (Alice, Bob, Charlie with 1M ETH each)
  - Transaction highlighting (green indicator for blocks with user txs)
  - Configurable block time, ports, and data directories
  - Optional modes: --no-builder, --no-client, --no-driver
  - Log saving and process restart via keyboard shortcuts

  Closes base#382
@cb-heimdall
Copy link
Collaborator

cb-heimdall commented Jan 16, 2026

🟡 Heimdall Review Status

Requirement Status More Info
Reviews 🟡 0/1
Denominator calculation
Show calculation
1 if user is bot 0
1 if user is external 0
2 if repo is sensitive 0
From .codeflow.yml 1
Additional review requirements
Show calculation
Max 0
0
From CODEOWNERS 0
Global minimum 0
Max 1
1
1 if commit is unverified 0
Sum 1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(testing): create devnet binary

2 participants