This PR adds support for timeboost mode on nitro-testnode. It starts the bid-validator, autonomous auctioneer, deploys the ExpressLaneAuction contract, and starts the sequencer in Timeboost mode.
Since Timeboost is not yet merged into the main nitro or contracts branches, currently you will need to follow the following steps to run nitro-testnode in Timeboost mode. (This will improve once things are merged in.)
checkout nitro, branch: express-lane-timeboost
In the nitro dir, go into the contracts submodule and check out express-lane-auction-all-merged
run yarn build:all inside this directory
Edit scripts/config.ts function "writeL2ChainConfig", and change "InitialArbOSVersion" to 31. (This will be fixed soon as nitro and contracts are merged.)
In the nitro dir, go into the nitro-testnode submodule and check out timeboost-mode
From this directory, run DEFAULT_NITRO_CONTRACTS_VERSION=99c07a7db2fcce75b751c5a2bd4936e898cda065 ./test-node.bash --init-force --dev --dev-contracts --l2-timeboost
When starting up, look for the line printing the token and contract address:
Users alice and bob have been pre-funded with some of the bidding token on L2 and can be used right away.
$ docker compose run scripts print-private-key --account user_alice
...
$ docker compose run scripts print-private-key --account user_bob
...
# make a deposit into the ExpressLaneAuction contract
$ docker compose run --entrypoint /usr/local/bin/bidder-client timeboost-bid-validator --auction-contract-address 0x... --deposit-gwei 1000000000 --wallet.private-key <alice or bob private key, no 0x> --arbitrum-node-endpoint http://sequencer:8547
# make a bid for control of the next express lane round
$ docker compose run --entrypoint /usr/local/bin/bidder-client timeboost-bid-validator --auction-contract-address 0x... --bid-gwei 1 --wallet.private-key <alice or bob private key, no 0x> --arbitrum-node-endpoint http://sequencer:8547 --bid-validator-endpoint http://timeboost-bid-validator:8547
Commands for sending express lane transactions will be provided in future, see implementation and spec .
This PR adds support for timeboost mode on nitro-testnode. It starts the bid-validator, autonomous auctioneer, deploys the ExpressLaneAuction contract, and starts the sequencer in Timeboost mode.
Since Timeboost is not yet merged into the main nitro or contracts branches, currently you will need to follow the following steps to run nitro-testnode in Timeboost mode. (This will improve once things are merged in.)
yarn build:all
inside this directoryDEFAULT_NITRO_CONTRACTS_VERSION=99c07a7db2fcce75b751c5a2bd4936e898cda065 ./test-node.bash --init-force --dev --dev-contracts --l2-timeboost
When starting up, look for the line printing the token and contract address:
You can also find the auction contract and auctioneer address with the following command.
Users alice and bob have been pre-funded with some of the bidding token on L2 and can be used right away.
Commands for sending express lane transactions will be provided in future, see implementation and spec .