gnosisguild / zodiac-safe-app

https://gnosis-safe.io/app/share/safe-app?appUrl=https://zodiac.gnosisguild.org/&chainId=5
GNU Lesser General Public License v3.0
26 stars 28 forks source link

Reality Module Wizard first Step "The plugin is already installed on the Snapshot space." #196

Open greenlucid opened 1 year ago

greenlucid commented 1 year ago

Is your feature request related to a problem? Please describe.

When you encounter this error on the first step: The plugin is already installed on the Snapshot space.

But the controller of the space is already the Safe, you have to annoyingly go to Snapshot and remove the SafeSnap module.

Describe the solution you'd like

There should be no need to manually go to Snapshot and remove the module. If the controller of the space is already the Safe, the Wizard should just overwrite these settings.

Describe alternatives you've considered

Maybe, what I suggested, + a warning to make sure the Safe operator understands they are overwriting the previous settings and that SafeSnap plugin was already "installed".

Maybe, just guide the user into how to remove this. If they've never done this before, they might not know there's a Snapshot Safe app that allows them to get into their space and remove it. Maybe provide a _blank link, e.g.

https://app.safe.global/apps/open?safe=eth:0xfc5dF7b42F2116a0c086d588B9b02AD6544AA44c&appUrl=https%3A%2F%2Fsnapshot.org/

with some instructions into how to remove it. But making the user waste gas on something that can be overriden is wasteful, and it should be avoided

Additional context

image

greenlucid commented 1 year ago

Maybe I made a wrong assumption somewhere and it's not that easy.

But if it's that easy (e.g. it can just be overwritten without forcing the user to switch context and waste gas to remove the SafeSnap plugin) then let me know and I will work on the PR myself.

auryn-macmillan commented 1 year ago

@greenlucid, I think you got this right.

Currently, this wizard is intended for deploying new instances of the Reality mod, rather than managing existing instances.

It seems that in your case, an interface for managing the existing deployment might be what you need? Or are you actually wanting to deploy a new instance of the module to replace the current one?

greenlucid commented 1 year ago

In this case, I wanted to deploy a new instance of the module to replace the current one. For context, I had adopted the SafeSnap plugin to relay the transactions to a Safe in Gnosis Chain, and deployed the module in Gnosis Chain.

I couldn't figure out how to relay the transaction from the Snapshot frontend. I think I did something wrong.

Then I realized that deploying the module in Gnosis is a single form, whereas deploying on Mainnet is a wizard. It's been very confusing so far and I don't understand why the processes are different.

This is why I wanted to replace the current SafeSnap plugin on my Snapshot space. For the Mainnet Safe (e.g. the one I'm trying to deploy the module for) I've never deployed an instance of the module.

I'm pretty new to this Snapshot / Safe / Zodiac thing so I think I messed up some of the language. I'll provide a clearer history of how I produced this:

  1. (mainnet) got tralara.eth ENS
  2. Make Snapshot space
  3. (gnosis chain) create a 1/1 Safe
  4. (gnosis chain) make a reality.eth template
  5. (gnosis chain) deploy reality module. I am greeted by a form, not a wizard.
  6. Make a Snapshot proposal with a tx
  7. Pass the proposal
  8. I don't find how to create the Reality question with the tx hash for my batch, it doesn't appear in Snapshot frontend.
  9. (mainnet) create a 1/1 Safe
  10. Try to deploy reality module. I stumble upon a wizard, but I cannot progress to the second step (due to #194 which I hopefully fixed, and this issue)