Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
99004f9
add based sequencer initial implementation
gupadhyaya Apr 9, 2025
f15e495
Delete rollkit.toml
gupadhyaya Apr 9, 2025
130e752
use jsonrpc client if available
gupadhyaya Apr 9, 2025
1565fa5
use real DA for rollkit
gupadhyaya Apr 9, 2025
3f32b86
update ADR to include relaying cost
gupadhyaya Apr 10, 2025
0b9b4cf
add clarification to forkchoice and rollup light client
gupadhyaya Apr 10, 2025
3615d39
disabled gasPrice & gasMultiplier rpc calls, decode namespace as hex …
gupadhyaya Apr 10, 2025
71a455a
fix submit by adding the submit with options api that is supported in…
gupadhyaya Apr 10, 2025
e6baffb
add persistence to reaper and avoid submitting duplicate transactions
gupadhyaya Apr 10, 2025
fa00b6c
add persistence to pendingTxs in the sequencer
gupadhyaya Apr 10, 2025
814ea48
add last scanned da height, disable batch retrieve loop
gupadhyaya Apr 11, 2025
d0f535e
pluggable forkchoice
gupadhyaya Apr 11, 2025
18445c7
Merge branch 'feature/exec_api' into based
gupadhyaya Apr 14, 2025
b66a251
merge fixes
gupadhyaya Apr 14, 2025
55be1b3
force da start height as starting point for da scan
gupadhyaya Apr 15, 2025
70c4e8f
Merge branch 'feature/exec_api' into based
gupadhyaya Apr 16, 2025
e612a93
Merge branch 'feature/exec_api' into based
gupadhyaya Apr 16, 2025
d767c80
remove additional inits
gupadhyaya Apr 18, 2025
748de3e
capture the start context, add default interval
gupadhyaya Apr 18, 2025
4d49f64
submit with options fix
gupadhyaya Apr 18, 2025
ca6b4d9
remove GetTxs from lazy aggregation loop and comment out the test for…
gupadhyaya Apr 18, 2025
2665a88
Merge branch 'feature/exec_api' into based
gupadhyaya Apr 18, 2025
4297ab1
fixes
gupadhyaya Apr 18, 2025
922bfc6
lint
gupadhyaya Apr 18, 2025
2dbc2bd
cleanup
gupadhyaya Apr 18, 2025
fd9db02
more fixes
gupadhyaya Apr 18, 2025
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
Prev Previous commit
Next Next commit
pluggable forkchoice
  • Loading branch information
gupadhyaya committed Apr 11, 2025
commit d0f535e71c48cdeda504dec0780e73c0c0b6f369
Original file line number Diff line number Diff line change
Expand Up @@ -140,11 +140,14 @@ All rollup full nodes:

Without forkchoice parameters, full nodes cannot independently produce identical rollup blocks (i.e., matching state roots or headers), as they wouldn’t know how to consistently form batches—specifically, how many transactions to include per batch. The maxHeightDrift parameter addresses this by enabling progress when the maxBytes threshold isn’t met, without relying on global time synchronization. Relying on timestamps could lead to inconsistencies due to clock drift between nodes, so using L1-based timestamps or heights provides a reliable and deterministic reference for batching.

#### Configurable Forkchoice rule
By default, the based sequencing supports max bytes along with max height drift as the forkchoice rule; however, this can be made configurable to support different forkchoice strategies, such as prioritizing highest to lowest fee-paying transactions, earliest submitted transactions, application-specific prioritization, or even hybrid strategies that balance throughput, latency, and economic incentives, allowing rollup operators to customize batch construction policies according to their needs.

### Rollup Light Clients

Rollup light clients (once implemented) are not expected to re-execute transactions to derive rollup headers. Instead, they will perform verification only. These clients will typically receive headers either:
• via the p2p network along with accompanying proofs, or
• from a connected full node, in which case they will still require validity proofs for the received headers.
* via the p2p network along with accompanying proofs, or
* from a connected full node, in which case they will still require validity proofs for the received headers.

This design ensures that rollup light clients remain lightweight and efficient, relying on cryptographic proofs rather than execution to validate the rollup state.

Expand Down