From 3c66bbdadb07bef41e1e5f985201d721a96bb8b5 Mon Sep 17 00:00:00 2001 From: r4bbit <445106+0x-r4bbit@users.noreply.github.com> Date: Thu, 26 Mar 2026 09:16:03 +0100 Subject: [PATCH] fix(sequencer): submit genesis block to Bedrock on fresh start The sequencer created the genesis block's inscribe transaction but discarded it (`_tx`), never posting it to Bedrock. The indexer's `search_for_channel_start` scans backward through L1 blocks looking for an L2 block with `block_id == 1` to locate the channel start. Since genesis was never on L1, the search looped indefinitely, clearing its buffer on every cycle, and `current_state` was never updated past genesis. On a fresh DB start, submit the genesis block to Bedrock immediately after creating it, mirroring what `produce_new_block` does for all subsequent blocks. On restart the genesis block is already on Bedrock from the initial run, so submission is skipped. Fixes the `indexer_state_consistency` integration test. --- sequencer/core/src/lib.rs | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/sequencer/core/src/lib.rs b/sequencer/core/src/lib.rs index 21e63740f..dd54f01c5 100644 --- a/sequencer/core/src/lib.rs +++ b/sequencer/core/src/lib.rs @@ -75,7 +75,7 @@ impl SequencerCore SequencerCore = config .initial_commitments .iter()