Skip to content

cast run produces incorrect contract address on Arbitrum #7513

@ssadler

Description

@ssadler

Component

Cast

Have you ensured that all of these are up to date?

  • Foundry
  • Foundryup

What version of Foundry are you on?

forge 0.2.0 (9148dbc 2024-03-27T00:16:30.762176889Z)

What command(s) is the bug in?

cast run

Operating System

Linux

Describe the bug

I have a transaction* on Arbitrum that I am trying to debug, and for some reason when I run it with cast, it produces an incorrect address; The transaction is minting contract (0x86c48b78F0f6A5dd658C37Aefe7c47E105CeD75d), but cast run shows it as: 0xa2575A9196C667D379f82Fb82855aBD80b72D1d5.

Tx: https://arbiscan.io/tx/0x3ec03f70df508bf04977b3aa93cf4b63cd930ab737f43204c308a6f35dd957d6#internal

Reproduce: cast run --rpc-url "https://arb1.arbitrum.io/rpc" 0x3ec03f70df508bf04977b3aa93cf4b63cd930ab737f43204c308a6f35dd957d6

Edit: An additinonal quirk is that Arbitrum evm returns ethereum block number, which was confusing me, but cast run returns Arbitrum block number, which makes sense IMO. But it's different nonetheless.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions