Skip to content

feat: consensus integration preparation (Sequencer split to BlockExecutor and BlockApplier) [WIP]#900

Draft
RomanBrodetski wants to merge 1 commit intomainfrom
rb-prepare-consensus
Draft

feat: consensus integration preparation (Sequencer split to BlockExecutor and BlockApplier) [WIP]#900
RomanBrodetski wants to merge 1 commit intomainfrom
rb-prepare-consensus

Conversation

@RomanBrodetski
Copy link
Collaborator

@RomanBrodetski RomanBrodetski commented Feb 23, 2026

This prepares the node for the consensus integration.
There are no changes to node or network behavior.
Main Node wiring is modified:

  • Split Sequencer into BlockExecutor (executes, updates mempools) and BlockApplier (saves result to the DB)
  • Introduce BlockCanonizer between them:
BlockExecutor ~> BlockCanonizer ~> BlockApplier

BlockCanonizer will wait for the proposed blocks to be canonized by consensus before advancing them in the pipeline - this behavior is stubbed for now.

  • Modify the MainNodeCommandSource so that it can replay blocks recieved from consensus. This behaviour is not currently used (as we don't have consensus yet - ENs are still using the ENCommandSource)

@RomanBrodetski RomanBrodetski marked this pull request as draft February 23, 2026 22:44
@RomanBrodetski RomanBrodetski changed the title feat: consensus integration preparation (Sequencer split to BlockExecutor and BlockApplier) feat: consensus integration preparation (Sequencer split to BlockExecutor and BlockApplier) [WIP] Feb 23, 2026
…mandSource accordingly. Introduce BlockCanonizer.
@github-actions
Copy link

Test results

184 tests   184 ✅  18m 43s ⏱️
 26 suites    0 💤
  1 files      0 ❌

Results for commit 552bce5.

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.

1 participant