leather-io / extension

Leather browser extension
https://leather.io
MIT License
289 stars 136 forks source link

Prevent Gaia outages from breaking app authentication #3564

Open 314159265359879 opened 1 year ago

314159265359879 commented 1 year ago

I am getting multiple reports that users are having trouble connecting to dapps with their wallet. After selecting the account to connect with. It loads forever and never logs in on the dapp.

When doing the same on a ledger enabled wallet extension their is no issue.

On Firefox I see this: https://user-images.githubusercontent.com/33360391/232696153-7c3b8bda-49af-45ad-a64c-50ff56cd37c2.mp4

Chrome shows this in console: image

314159265359879 commented 1 year ago

It looks like this is the underlying issue, already resolved: image

markmhendrickson commented 1 year ago

@kyranjamie should we reduce or remove our Gaia dependency further here so future outages aren't breaking?

friedger commented 1 year ago

@markmhx Gaia dependency is part of auth protocol. You want to change the protocol?

kyranjamie commented 1 year ago

Can you elaborate on that @friedger? Where does it say this?

friedger commented 1 year ago

@kyranjamie We store app meta data in the profile and we use the gaia protocol for storage. See also (https://github.com/stacksgov/sips/blob/58aae536637ad9236365d0873f07d8d831b4add1/sips/sip-x/sip-x-authentication-protocol.md#public-profile)

To remove dependency we either A) need to remove the app meta data and public profiles (like for ledger users) or B) find a different storage solution.

For A), the auth response could remove the app private key and all the apps needs to handle the reduced auth response. For a different storage solution B), we need to add support for users to update their zonefile.

314159265359879 commented 1 year ago

Update from diwaker diwaker — Today 10 minutes ago Hey all, appreciate the pings -- I'm in EST so appreciate your patience while our team comes online. We're looking into the Gaia hub issue, I don't see anything obviously wrong on our end -- it's likely something with Azure. Please bear with us, we'll update as soon as we have something to share.

314159265359879 commented 1 year ago

https://status.hiro.so/ to keep an eye on the current status

diwakergupta commented 1 year ago

https://status.hiro.so/ to keep an eye on the current status

Resolved as of an hour ago.

markmhendrickson commented 1 year ago

To remove dependency we either A) need to remove the app meta data and public profiles (like for ledger users) or B) find a different storage solution.

@friedger my sense here is that it'd be most expedient to implement option A only for when the wallet detects that Gaia is down, defaulting to a degraded yet unblocked experience a la the one Ledger users have?

friedger commented 1 year ago

I agree in the hope that some resources re available to make gaia usable and configurable so that Hiro carries all the load. See forum post about gaia at home.

314159265359879 commented 10 months ago

Apparently this error can also be caused by an ad blocker sometimes. Having a solution so that the user can proceed, in degraded state, rather than being blocked completely seems like a good idea. hz.btc agrees ;-)

image