EnsoFinance / temper

Temper your expectations - Ethereum Transaction Simulator
MIT License
343 stars 43 forks source link

Arbitrum transactions fail with "FatalExternalError" #4

Closed Corfucinas closed 1 year ago

Corfucinas commented 1 year ago

The following simulation fails with exitReason": "FatalExternalError",

{
  "chainId": 42161,
  "from": "0xe17b992903e2a14b7e7dd5fc3d8820d2fb564d5d",
  "to": "0xb45a2dda996c32e93b8c47098e90ed0e7ab18e39",
  "data": "0xc10bea5c000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001c000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008bb0d6fe0061b5f46742415bea3621f4af01f9c7000000000000000000000000fd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9000000000000000000000000f7a2f863299c17dfa11cd8a14e7c7dca92f315b9000000000000000000000000e17b992903e2a14b7e7dd5fc3d8820d2fb564d5d0000000000000000000000000000000000000000000000000a420bb3b4ab4f400000000000000000000000000000000000000000000000000000000016060da80000000000000000000000000000000000000000000000000000000000000140000000000000000000000000000000000000000000000000000000000000000000000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab10000000000000000000000000000000000000000000000000000000000000007616e64726f69640000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008bb0d6fe0061b5f46742415bea3621f4af01f9c7000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000003e00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000fd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb9000000000000000000000000e17b992903e2a14b7e7dd5fc3d8820d2fb564d5d00000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000001a000000000000000000000000000000000000000000000000000000000000001e000000000000000000000000000000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c873fecbd354f5a56e00e710b90ef4201db2448d0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000c873fecbd354f5a56e00e710b90ef4201db2448d000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000164ac3893ba0000000000000000000000000000000000000000000000000a3a2ae61c51b528000000000000000000000000000000000000000000000000000000000000000100000000000000000000000000000000000000000000000000000000000000c0000000000000000000000000e17b992903e2a14b7e7dd5fc3d8820d2fb564d5d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000648148f700000000000000000000000000000000000000000000000000000000000000040000000000000000000000008bb0d6fe0061b5f46742415bea3621f4af01f9c700000000000000000000000082af49447d8a07e3bd95bd0d56f35241523fbab1000000000000000000000000ff970a61a04b1ca14834a43f5de4533ebddb5cc8000000000000000000000000fd086bc7cd5c481dcc9c85ebe478a1c0b69fcbb900000000000000000000000000000000000000000000000000000000",
  "gasLimit": 2950564,
  "value": "0",
  "blockNumber": 98910642,
  "formatTrace": false
}

response

{
    "simulationId": 1,
    "gasUsed": 0,
    "blockNumber": 98910642,
    "success": false,
    "trace": [
        {
            "callType": "CALL",
            "from": "0x0000000000000000000000000000000000000000",
            "to": "0x0000000000000000000000000000000000000000",
            "value": "0x0"
        }
    ],
    "formattedTrace": null,
    "logs": [],
    "exitReason": "FatalExternalError",
    "returnData": "0x"
}

I changed the RPC multiple times from the ones listed here => https://chainlist.org/chain/42161, but they all return the same exception

polyphia commented 1 year ago

I also am getting similar issues on ETH .

{
   "simulationId":1,
   "gasUsed":0,
   "blockNumber":17338560,
   "success":false,
   "trace":[
      {
         "callType":"CALL",
         "from":"0x0000000000000000000000000000000000000000",
         "to":"0x0000000000000000000000000000000000000000",
         "value":"0x0"
      }
   ],
   "formattedTrace":"  [0] \u001b[31m0x0000000000000000000000000000000000000000\u001b[0m::\u001b[31mfallback\u001b[0m() \u001b[33m\u001b[0m\n    └─ \u001b[31m← \u001b[0m()\n",
   "logs":[

   ],
   "exitReason":"FatalExternalError",
   "returnData":"0x"
}
]
Corfucinas commented 1 year ago

I believe it is particually a deps problem, requirements detailed in Cargo.toml are from March. It is possible to remove revm, since it is contained within foundry_revm:: (I believe), removing one complexity.

However,

The Foundry deps have multiple bug patched after the current git revision, I attempted to use a higher commit, but it will break the project

devanoneth commented 1 year ago

Just want to ack this. I have a branch with most of the deps updated, just need to clean it up. Will publish it before end of week.