Skip to content
← Inside Reth — Sync, Extensions, and the SDK
The Reth Stack — Sync, Extensions, and the SDK
Lesson 16 of 17·CONTENT10 min20 XP
Course
Inside Reth — Sync, Extensions, and the SDK
Lesson role
CONTENT
Sequence
16 / 17

Lesson 15 — Bridge to what comes next — Advanced and Expert

Question

Finishing this course = ready for the Advanced and Expert tracks + the openhl track. What comes next.

Principle (minimum model)

  • Gate check first. Five questions: popn_top! expansion / Database vs DatabaseRef asymmetry / what ExExEvent::FinishedHeight does / where MerkleStage sits / which components Tempo swaps. Fewer than 4 right → go back.
  • Advanced tier. Consensus engineering / cross-chain bridges / sequencer and rollup architecture / P2P networking internals / validator operations. Each builds on this course.
  • Expert tier. Production Reth engineering (performance, MDBX, Tokio, macros, precompiles, MPT, MEV, zkEVM, running a fork) and building real apps on the stack.
  • Building real apps. Labs: MEV searcher / indexer / custom RPC / wallet backend / EIP-7702 sponsor / cheatcode / swap aggregator / order-router capstone / revm-vs-provider validation / HTTP 402 MPP. Each ships with passing tests.
  • openhl track. Build a Hyperliquid-style perp L1 across the openhl build courses (Consensus / CLOB / Precompiles / Funding / Liquidation / ADL).
  • No required order. Advanced and Expert are both reachable straight from this course and are independent; openhl can run in parallel. Pick by goal: design L1s → Advanced, ship apps / run nodes → Expert.

Worked example + steps

Bridge to what comes next — Advanced (L1 Architect) and Expert

You've climbed Alloy → Revm → Reth (Staged Sync, ExEx, custom NodeBuilder). Before choosing what's next, check that it stuck.

Gate check — five questions

  1. What does popn_top! expand to, and why can it call unwrap_unchecked() inside unsafe?
  2. Why are Database and DatabaseRef separate traits? What does the asymmetry in their #[auto_impl] lists (&mut, Box vs &, &mut, Box, Rc, Arc) tell you?
  3. What does ExExEvent::FinishedHeight tell Reth's pruner, and what happens to disk if you never send it?
  4. Why does MerkleStage run after the hashing stages instead of between them?
  5. Which Reth components would you swap to ship a purpose-built L1 like Tempo?

Fewer than 4 right: don't move on yet. Go back to the matching Revm or Reth course lesson. If you cleared the gate, you can read the source of all three with intent.

But "reading" is only half. Two tiers wait next, depending on your goal (many learners do both):

Advanced tier — design your own L1 (ADVANCED difficulty)

Use the source you read in the Intermediate courses to design L1s. The implementation skills behind architecting Hyperliquid- or Tempo-class chains.

CourseFocus
Consensus engineeringPoS / BFT / Tendermint internals; latency / liveness / finality trade-offs
Cross-chain bridgesCCIP (Chainlink's cross-chain protocol), OP Standard Bridge, light clients in real source — then build your own
Sequencer and rollup architecturecentralized to shared sequencers; MEV defense and forced inclusion (letting users land txs even when a sequencer censors)
P2P networking internalsdevp2p (Ethereum's transport), libp2p (the modular alternative used by many L1s), gossip subprotocols, peer scoring
Validator operationskey management, slashing conditions, coordinated upgrades

Expert tier — ship in production (EXPERT difficulty)

Cross from "I can read it" to "I can ship it." Performance, ops, application engineering.

CourseFocus
Production Reth engineeringperformance, MDBX, Tokio internals, procedural macros, custom precompiles, MPT, MEV, zkEVM, Reth fork ops
Building real apps on the stacklabs — MEV searcher, production-indexer read-through, custom RPC endpoint, wallet backend, EIP-7702 sponsor, cheatcode, swap aggregator, order router capstone, revm-vs-provider validation, HTTP 402 / MPP machine-payments endpoint

Which one first?

Both are reachable directly from this course and are independent:

  • Advanced (L1 Architect) first — if you want to design L1s, understand Tempo (and Hyperliquid-shaped designs like OpenHL) from the inside
  • Expert first — if you want to ship apps on an existing chain, or you need ops / performance engineering

No strict order. Pick whichever matches your interest and project. Finishing both means "read + design + ship" — the full triad.

The mindset shift

The Intermediate source-reading courses taught you the structures. The next tiers teach you the decisions behind them.

Try it now. Before reading on, write one line on why for each: Reth's MDBX / RocksDB split, revm's popn_top! for binary opcodes like ADD, #[track_caller] on helper methods, and Foundry cheatcodes living at a magic address.


Now mine:

  • MDBX vs RocksDB — not either/or any more. In the v2 storage layout (StorageSettings::v2, --storage.v2) Reth keeps state in MDBX (a B+tree: predictable point reads, no compaction stalls) and moves the history indices and the tx-hash lookup table to RocksDB (an LSM tree, cheap for write-heavy append data).
  • popn_top! — ADD pops one operand and writes the result into the remaining top slot in place: one pop plus an in-place write instead of pop, pop, push.
  • #[track_caller] — the panic location points at the buggy caller, not at the helper method.
  • Cheatcodes at a magic address — Foundry's vm.* calls go to 0x7109709ECfa91a80626fF3989D68f67F5b1DD12D, and an Inspector intercepts them. No new opcodes, so vanilla bytecode still runs unchanged and the cheats never exist on a real chain.

The point isn't that you matched my wording. The point is: did you have an opinion before reading? Once you internalize the why, you can defend design choices to a Paradigm engineer or a Hyperliquid validator op — and that's the gate to grant-eligible work.

Before you continue

If the Gate check at the top felt easy, jump into Advanced or Expert.

If any of the five questions sent you back to a previous lesson — re-read them now. Both next tiers are denser. Running the linked code locally as you go is no longer optional.

The first three months in infra learning are the hardest. Documentation is sparse — the source code is the textbook. The Advanced and Expert tiers are where that lesson pays off.

Summary (3 lines)

  • Gate check first: 5 questions, fewer than 4 right → go back.
  • This course complete = Advanced (design L1s) or Expert (production Reth engineering + app-building labs: ship), in either order; the openhl build courses in parallel.
  • The next tiers teach the decisions behind the structures. Form an opinion on why before you read. Final quiz next.