Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Arbitrum support #39

Merged
merged 22 commits into from
Aug 21, 2024
Merged

Arbitrum support #39

merged 22 commits into from
Aug 21, 2024

Conversation

rkdud007
Copy link
Member

@rkdud007 rkdud007 commented Jan 17, 2024

Arbitrum Sepolia

MESSAGES_INBOX = "0x7459455BDDC9f5F53af76eFe857B2064b230E4fe"
HEADERS_PROCESSOR = "0x55b87e56F0D12471e1F1a49b1619cCe7B665F2f6"
FACTS_REGISTRY = "0x8Bf5d96bE3B1722114192293F7f25C575B2C70e5"

Sepolia

# -> ARBITRUM_SEPOLIA
L1_TO_ARBITRUM_MESSAGES_SENDER = "0x46A9C7155b2dd191aedc7E14B869E496c5fD0248"

# ParentHash Fetcher
ARBITRUM_PARENT_HASH_FETCHER = "0xEe22f06282174E7cbf7e7b864F5bF8E0b8eDDD62"

@rkdud007 rkdud007 marked this pull request as draft January 17, 2024 09:09
@rkdud007 rkdud007 marked this pull request as ready for review January 18, 2024 04:33
@rkdud007 rkdud007 changed the title Arbiturm support Arbitrum support Jan 20, 2024
@rkdud007 rkdud007 mentioned this pull request Jan 20, 2024
@rkdud007 rkdud007 marked this pull request as draft January 20, 2024 16:32
@rkdud007 rkdud007 force-pushed the arbiturm-support branch 2 times, most recently from 739bb8c to 866f777 Compare January 20, 2024 16:37
@rkdud007
Copy link
Member Author

rkdud007 commented Jan 20, 2024

One comment around integration test

Ideally, wanted to have a full integration test to check from sending message to verify message is intended. Tried approach using foundry's createFork to switch vm in one script. However to test full logic in this way there is little bit of consideration compare to our current contract implementation :

  • To make a test in this way, Somehow MessagesInbox this contract should expose a function to verify the messages is correct ( right now we don't have it :/ )
  • Also another consideration : Maybe need to wait for the message to be processed in L2

So I also give another suggestion if the modification on MessagesInbox side is impossible.

  1. Just make test on sending message only, manually check verify message is intended step
  • Pro : ye it's simple.. probably in this PR case we would chose it
  • Con : It still requires some manual checking and trust
  1. Can have l1-l2 messaging testing framework ( NOTE : I m NOT talking abt implementing now, it's just idea -- maybe it can be useful opensource framework project )
  • It would be looks like generalized mocktimism (= generalized meaning enable other L2s like Arbitrum/zkSync etc as well )
  • Pro : if there is solid full e2e testing framework,,,, especially in our case that needed to deploy & test LOTS of l1<>l2 message logic contracts ,, would be beneficial
  • Con : ye it will takes some time,,, and idk depends on opinion, would consider as over-engineering?

@marcellobardus
Copy link
Contributor

Regarding So I also give another suggestion if the modification on MessagesInbox side is impossible.
You could do it as foundry allows you to replace bytecode and you test in fork mode so yes it could work.
Not sure if it is worth it tbh.

@rkdud007 rkdud007 marked this pull request as ready for review January 25, 2024 08:51
@rkdud007 rkdud007 mentioned this pull request Jan 25, 2024
2 tasks
@fmkra fmkra merged commit a5e00b8 into master Aug 21, 2024
@fmkra fmkra deleted the arbiturm-support branch August 21, 2024 10:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants