diff --git a/op-node/rollup/derive/engine_controller.go b/op-node/rollup/derive/engine_controller.go index 2205b20b3f16..e6a61b36e068 100644 --- a/op-node/rollup/derive/engine_controller.go +++ b/op-node/rollup/derive/engine_controller.go @@ -298,7 +298,8 @@ func (e *EngineController) InsertUnsafePayload(ctx context.Context, envelope *et // Check if there is a finalized head once when doing EL sync. If so, transition to CL sync if e.syncStatus == syncStatusWillStartEL { b, err := e.engine.L2BlockRefByLabel(ctx, eth.Finalized) - if errors.Is(err, ethereum.NotFound) { + isTransitionBlock := e.rollupCfg.Genesis.L2.Number != 0 && b.Hash == e.rollupCfg.Genesis.L2.Hash + if errors.Is(err, ethereum.NotFound) || isTransitionBlock { e.syncStatus = syncStatusStartedEL e.log.Info("Starting EL sync") e.elStart = e.clock.Now()