diff --git a/bot.testnet.toml b/bot.testnet.toml index 1e95f75..25657c5 100644 --- a/bot.testnet.toml +++ b/bot.testnet.toml @@ -1,5 +1,6 @@ propose-time-window = 240 challenge-time-window = 3 +l2-starting-number = $OPBNB_BRIDGE_BOT_L2_STARTING_NUMBER [rpcs] l1-rpc = "$OPBNB_BRIDGE_BOT_L1_RPC" diff --git a/cmd/bot/run.go b/cmd/bot/run.go index a4e6ef8..f1a1148 100644 --- a/cmd/bot/run.go +++ b/cmd/bot/run.go @@ -59,7 +59,7 @@ func RunCommand(ctx *cli.Context) error { return fmt.Errorf("failed to migrate l2_contract_events: %w", err) } - l2ScannedBlock, err := queryL2ScannedBlock(db) + l2ScannedBlock, err := queryL2ScannedBlock(db, cfg.L2StartingNumber) if err != nil { return err } @@ -297,8 +297,8 @@ func connect(log log.Logger, dbConfig config.DBConfig) (*gorm.DB, error) { } // queryL2ScannedBlock queries the l2_scanned_blocks table for the last scanned block -func queryL2ScannedBlock(db *gorm.DB) (*core.L2ScannedBlock, error) { - l2ScannedBlock := core.L2ScannedBlock{Number: 0} +func queryL2ScannedBlock(db *gorm.DB, l2StartingNumber int64) (*core.L2ScannedBlock, error) { + l2ScannedBlock := core.L2ScannedBlock{Number: l2StartingNumber} result := db.Order("number desc").Last(&l2ScannedBlock) if result.Error != nil { if errors.Is(result.Error, gorm.ErrRecordNotFound) { diff --git a/core/config.go b/core/config.go index 758ad5a..175119b 100644 --- a/core/config.go +++ b/core/config.go @@ -20,6 +20,7 @@ const ( ) type Config struct { + L2StartingNumber int64 `toml:"l2-starting-number"` ProposeTimeWindow int64 `toml:"propose-time-window"` ChallengeTimeWindow int64 `toml:"challenge-time-window"`