Skip to content

Files

Latest commit

Jun 7, 2024
a6cf7ce · Jun 7, 2024

History

History
This branch is 42 commits ahead of ensdomains/evmgateway:main.

arb-verifier

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
May 27, 2024
Apr 26, 2024
Dec 10, 2023
May 27, 2024
Dec 10, 2023
Dec 10, 2023
Apr 26, 2024
Apr 26, 2024
Dec 10, 2023
Apr 26, 2024
May 8, 2024
Dec 10, 2023

@ensdomains/arb-verifier

A complete Solidity library that facilitates sending CCIP-Read requests for Arbitrum state, and verifying the responses.

For a detailed readme and usage instructions, see the monorepo readme.

Testing

Start up a devnet by following Arbitrums's instructions here.

The test requires you to use the rollup address of your node, which may not always be the same. This address is printed in the logs after you've initially set up the node. Copy that value and replace it accordingly. Unfortunately, there is no endpoint to retrieve the rollup address dynamically.

Copy the rollup address from the Node's Logs. Add it to the following files

arb-verifier/test/testArbVerifier.ts
arb-verifier/deploy_l1/00_arb_verifier.ts

Build the project

bun run build

Open another terminal window and start the Gateway

cd ./arb-gateway && bun run start -u http://127.0.0.1:8545/ -v http://127.0.0.1:8547/ -o $ROLLUP_ADDRESS  -p 8089

Go back to the first Termina window and deploy the contracts to the test node

npx hardhat --network arbDevnetL1 deploy && npx hardhat --network arbDevnetL2 deploy

Finally, run the tests:

bun run test

Deployments

Goerli

#### L2

L1

Gateway server

Sepolia

#### L2

L1

deploying "ArbVerifier" (tx: 0x61ae88749f911f1e09d7c073f34a13bb843c71fafaf93a1266423798bd3aadc6)...: deployed at 0x6820E47CED34D6F275c6d26C3876D48B2c1fdf27 with 3872186 gas deploying "TestL1" (tx: 0x0a7b6b74357d20f33cb89df12da3db34b5cd3c764403888420108ca13f0126fa)...: deployed at 0x50200c7Ccb1abD927184396547ea8dD1A18CAA3A with 2411152 gas

Gateway url

Testing gateway

TARGET_ADDRESS=$TEST_L1_ADDRESS PROVIDER_URL=$L1_PROVIDER_URL npx hardhat run ../l1-verifier/scripts/remote.ts --network sepolia