Skip to content

Latest commit

 

History

History
125 lines (82 loc) · 1.94 KB

README.md

File metadata and controls

125 lines (82 loc) · 1.94 KB

RRC-7755 Contracts

This repo consists of work-in-progress implementations of the smart contracts making up RRC-7755;

Getting Started

Install Foundry if not already installed

make install-foundry

Install dependencies

forge install

Compile contracts

forge build

Run tests

make test

Check coverage report

make coverage

Run Scripts

Create a .env file in this directory with the following:

ARBITRUM_SEPOLIA_RPC=
OPTIMISM_SEPOLIA_RPC=
BASE_SEPOLIA_RPC=

Create a cast wallet with the following command (you'll need a private key ready - if you don't have one, you can create one with cast wallet new first):

cast wallet import testnet-admin --interactive

Enter the private key of the account you want to use. Note, this account needs to be funded on all chains you'd like to submit requests to.

There are two types of requests you can submit, standard and ERC-4337 User Operations.

Standard Requests

Base Sepolia -> Arbitrum Sepolia

make submit-base-to-arbitrum

Base Sepolia -> Optimism Sepolia

make submit-base-to-optimism

Arbitrum Sepolia -> Base Sepolia

make submit-arbitrum-to-base

Arbitrum Sepolia -> Optimism Sepolia

make submit-optimism-to-arbitrum

Optimism Sepolia -> Base Sepolia

make submit-optimism-to-base

ERC-4337 User Operations

Base Sepolia -> Arbitrum Sepolia

make userop-base-to-arbitrum

Base Sepolia -> Optimism Sepolia

make userop-base-to-optimism

Arbitrum Sepolia -> Base Sepolia

make userop-arbitrum-to-base

Arbitrum Sepolia -> Optimism Sepolia

make userop-arbitrum-to-optimism

Optimism Sepolia -> Arbitrum Sepolia

make userop-optimism-to-arbitrum

Optimism Sepolia -> Base Sepolia

make userop-optimism-to-base