fission-codes / auth-lobby

The authentication service that Fission services run.
https://auth.fission.codes
GNU Affero General Public License v3.0
12 stars 1 forks source link

Auth Lobby fails to complete initialization in Safari 15.5 #115

Closed jessmartin closed 2 years ago

jessmartin commented 2 years ago

Browser: Safari 15.5 (15613.2.7.1.9, 15613) OS: macOS 10.15.7 (19H1922)

Ok, I'm having trouble isolating whether this a single issue or multiple issue. I'm going to use this issue to catalogue all the problems for now, and we can create new issues as needed. It seems like all of these issues are related to the fact that we load js-ipfs in an iframe, so we're getting nailed by privacy and cross-origin features.

Mumblr

Hangs on initialize. Fails silently, likely due to inadequate error checking.

Contacts

Hangs on initialize. Fails silently, likely due to inadequate error checking.

Dashboard

Error: hangs during initialization

[Error] Error in webnative initialisation
TypeError: undefined is not an object (evaluating 'a.metadata.cid')
(anonymous function) — index.ts:472
asyncFunctionResume
(anonymous function)
promiseReactionJobWithoutPromise
promiseReactionJob
    (anonymous function) (bundle.min.js:42:462730)
    promiseReactionJob

Drive

Error: hangs during intialization

[Error] TypeError: undefined is not an object (evaluating 'a.metadata.cid')
(anonymous function) — index.ts:97
asyncFunctionResume
(anonymous function)
promiseReactionJobWithoutPromise
promiseReactionJob

    (anonymous function) (index.js:148)
    promiseReactionJob

and

[Error] Unhandled Promise Rejection: Error: https://github.com/elm/core/blob/1.0.0/hints/4.md
    _Debug_crash (application.js:460:88)
    send (application.js:2298)
    (anonymous function) (index.js:153)
    promiseReactionJob

CBOR Error

At a different point, I saw a CBOR Error, that I can't reproduce at the moment. I did save a screenshot: Screen Shot 2022-07-12 at 4 10 05 PM

[Error] Error: CBOR decode error: did not find any content to decode
Lm — index.ts:97
asyncFunctionResume
(anonymous function)
promiseReactionJobWithoutPromise
promiseReactionJob

    (anonymous function) (index.js:148)
    promiseReactionJob

and

[Error] Unhandled Promise Rejection: Error: https://github.com/elm/core/blob/1.0.0/hints/4.md
    _Debug_crash (application.js:460:88)
    send (application.js:2298)
    (anonymous function) (index.js:153)
    promiseReactionJob
jeffgca commented 2 years ago

Yup, I saw this today, and the one additional bit I saw was websocket failures if you let auth lobby grind away for a while:

Screen Shot 2022-07-22 at 13 51 14

@walkah we should probably have someone look into mitigating these browser compat issues - I think they're mostly related to private browsing features in Firefox and Safari and we should really immunize ourselves against them for both the auth lobby case as well as the AOL case. In both cases currently we're using the auth lobby iframe technique?