safe-singleton-factory icon indicating copy to clipboard operation
safe-singleton-factory copied to clipboard

[New chain]: Recall testnet

Open oed opened this issue 10 months ago • 9 comments

Chain Name

Recall testnet

RPC URL

https://evm.node-0.testnet.recall.network

The RPC endpoint must allow batch requests for the bot script.

  • [x] I confirm that the RPC allows batch requests

The chain must be added to https://chainlist.org/

  • [x] I confirm that the chain is added to chainlist

After creating the issue, a bot will estimate the required pre-fund and post it in the comments. Please check this checkbox after you send the pre-fund.

  • [ ] I sent the pre-fund in accordance with Github Action's comment

Relevant information

Block explorer: https://explorer.testnet.recall.network

oed avatar Feb 21 '25 13:02 oed

⛔️ Error:
Factory deployment simulation returned different bytecode.

github-actions[bot] avatar Feb 21 '25 13:02 github-actions[bot]

The RPC url works locally without any issues:

$ curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}' https://evm.node-0.testnet.recall.network                  
{"jsonrpc":"2.0","result":"0x3c0bf","id":1}                                                                                                          
$ curl -X POST -H "Content-Type: application/json" --data '{"jsonrpc":"2.0","method":"eth_chainId","params":[],"id":1}' https://evm.node-0.testnet.recall.network
{"jsonrpc":"2.0","result":"0x25dde0","id":1} 

oed avatar Feb 21 '25 13:02 oed

Looking at the action output it seems like there's an issue estimating gas. Not sure how to debug this though.

oed avatar Feb 21 '25 15:02 oed

There are 2 issues here:

  • In ./validate_new_chain_request.sh the results of eth_gasPrice, eth_estimateGas, and eth_call may come out of order and may give the wrong error message
  • Recall blockchain don't allow simulating contract creation, so
    if [[ "$deployed_bytecode" != "$FACTORY_DEPLOYED_BYTECODE" ]]; then
      report_error "$ERROR_MSG_DEPLOYMENT_SIMULATION"
    fi
    
    fails

@rmeissner can you help on this? Is there a way of manually deploying the contract?

brunocalza avatar Apr 08 '25 20:04 brunocalza

cc @nlordell

brunocalza avatar Apr 09 '25 14:04 brunocalza

results of eth_gasPrice, eth_estimateGas, and eth_call may come out of order

This should be fixed as of #1005

Recall blockchain don't allow simulating contract creation

This is a requirement we have right now for our singleton factory deployment process.

nlordell avatar Apr 10 '25 04:04 nlordell

Recall blockchain don't allow simulating contract creation

This is a requirement we have right now for our singleton factory deployment process.

@nlordell Thanks for the reply! A couple of more questions:

  • Is there a workaround to avoid that? Looks like our contract creation simulation issue comes from Filecoin (our base chain), I see that Filecoin managed to get the single factory deployment to work. Maybe there's a way of making this happen?
  • If not, could we make it work by deploying the contract ourselves (with a wallet we control)?

brunocalza avatar Apr 10 '25 12:04 brunocalza

Is there a workaround to avoid that?

Some other chains had this issue as well and were able to get upstream changes to allow smart contract simulation. It is possible to work around it, it mostly comes from us trying to be extra careful to not do a transaction that reverts and burns the deployer nonce (thus making it impossible for the singleton factory to land on the canonical address). Do you know if your base chain would be willing to add support for contract deployment simulation in RPC?

If not, could we make it work by deploying the contract ourselves (with a wallet we control)?

We don't have a process for this at the moment.

nlordell avatar Apr 10 '25 15:04 nlordell

Do you know if your base chain would be willing to add support for contract deployment simulation in RPC?

Yeah, it turns out that it's actually a bug in Filecoin (https://github.com/filecoin-project/lotus/issues/13022)

Thanks for the info @nlordell

brunocalza avatar Apr 10 '25 17:04 brunocalza