Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Oops! Couldn't find a Safe... #1336

Closed
adamgall opened this issue Jan 24, 2024 · 2 comments · Fixed by #1496
Closed

Oops! Couldn't find a Safe... #1336

adamgall opened this issue Jan 24, 2024 · 2 comments · Fixed by #1496
Assignees
Labels
bug Something isn't working

Comments

@adamgall
Copy link
Member

adamgall commented Jan 24, 2024

Screenshot 2024-01-24 at 8 22 43 AM

Sometimes this message appears when attempting to load a Safe.

In the case of this screenshot, it appeared while on the app.dev.fractalframework.xyz domain. I did not have any wallet connected to the site, so I assume that the default network for the app.dev framework is Goerli, which is referenced in the error message.

I'm opening this issue for two reasons.

  1. Why am I being prompted to refresh the page? If a Safe on Goerli doesn't exist at this address, what will refreshing the page accomplish? (i.e., is "refreshing the page" a bandaid fix on top of a deeper data-availability issue?)
  2. Why am I being prompted to change the networks in my wallet? I don't have a wallet connected, so I can't change networks.
@tomstuart123
Copy link

@adamgall would you agree that point (2) you raised is resolved whilst point (1) is still open

i.e. the app shouldn't now not be unable to open a Safe/DAO when disconnected... but we should still look at how we are handling errors to give more precise feedback.

If a Safe exists but we're on a wrong chain, I think we should prompt them. If there has been an error, I think we should highlight the data availability issue and ask for a refresh.

Thoughts?

@adamgall
Copy link
Member Author

adamgall commented Mar 4, 2024

@tomstuart123

Let me try to tease out my response a bit, I think there are a couple of things being discussed here...

would you agree that point (2) you raised is resolved whilst point (1) is still open

I would not agree that point 2 is resolved, completely:

Why am I being prompted to change the networks in my wallet? I don't have a wallet connected, so I can't change networks.

Example: With no wallet connected to the app, load up https://app.fractalframework.xyz/daos/0xD1745a9e3A84656480C1B0b0F9D2a1Bf91b42917. You'll see this:

Screenshot 2024-03-04 at 9 02 50 AM

I'm being asked to change networks in my wallet, which isn't connected.

But to comment on your individual statements:

i.e. the app shouldn't now not be unable to open a Safe/DAO when disconnected...

The app was unable to open this Safe while disconnected, but specifically because when disconnected the production deployment defaults to Mainnet (with no way to switch that IN APP), and the Safe attempting to be loaded exists on Sepolia.

but we should still look at how we are handling errors to give more precise feedback.

I agree with this. Unfortunately, I'm not sure how much more direction we can give to the user in this case... more on that here:

If a Safe exists but we're on a wrong chain, I think we should prompt them.

It is not trivial for the app to determine this. The app is connected to one chain at a time (inclusive of node RPC connection, Safe API, Alchemy API, etc etc). Either the address is a valid Safe on that chain, or not. There are some bandaid things we could do to "check" if the given address is valid on any other supported networks, but without a wallet connected we can't instruct the user to switch to that network in app. The root things to start fixing here would include:

  • allowing the user to switch which network the app is connected to whether or not they have a wallet connected
  • allowing the app to namespace a Safe to a network with the address itself, much like how the Safe app works
    • https://...?safe=sep:0xD1745a9e3A84656480C1B0b0F9D2a1Bf91b42917
    • This would allow the app compare what the user is trying to do, with how the app is currently configured/connected, and allow us to give more relevant feedback.

If there has been an error, I think we should highlight the data availability issue and ask for a refresh.

Soft agree, but I still don't think that's a very good user experience. This should be happening very rarely.

@adamgall adamgall added this to Decent Mar 4, 2024
@adamgall adamgall added the bug Something isn't working label Mar 4, 2024
@adamgall adamgall moved this to Temp no status in Decent Mar 4, 2024
@adamgall adamgall removed the status in Decent Mar 4, 2024
@adamgall adamgall moved this to In review in Decent Mar 27, 2024
@adamgall adamgall linked a pull request Mar 27, 2024 that will close this issue
@adamgall adamgall self-assigned this Mar 27, 2024
@github-project-automation github-project-automation bot moved this from In review to Done in Decent Mar 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

2 participants