sphinx-labs / sphinx

DevOps platform for smart contract deployments
https://sphinx.dev/
MIT License
235 stars 14 forks source link

Use gnosis_safe_l2 as Safe default `safeSingletonAddress` #1656

Open hujw77 opened 3 months ago

hujw77 commented 3 months ago

Problem

Currently, Sphinx is using the l1 version of the masterCopy contract, which is not very friendly for most l2 chains due to indexing differences. The l1 masterCopy requires a tracing node to index historical records accurately, whereas the l2 masterCopy only needs the eth_getLogs interface. This is a better choice for most chains, including the Ethereum network.

Solution

Use l2 version masterCopy as default safeSingletonAddress.

Here is my sphinx safe address

https://arbiscan.io/address/0xD0a0899c5dc2FEb253D57Ab0b7c6d1b1Fcbbf824#code

Safe website warning

Screenshot 2024-04-11 at 14 08 22

Reference

sam-goldman commented 3 months ago

@hujw77 Is this blocking you from using any Gnosis Safe functionality?

hujw77 commented 3 months ago

@hujw77 Is this blocking you from using any Gnosis Safe functionality?

Currently not, but this change may require the migration of previously deployed contracts, so it is an operation that needs to be applied with caution. It is advisable to have good migration guidance before proceeding. We aim to migrate to a better version.