Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.51k stars 2.87k forks source link

[$1000] Desktop-"Hmm.. it's not here" page appears when the app auto closes to update #28495

Closed kavimuru closed 10 months ago

kavimuru commented 1 year ago

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Action Performed:

  1. App is backgrounded
  2. App auto closes to update

    Expected Result:

  3. App to reopen to the last chat that was open (which I don't think is what we're doing now)
  4. If not the # 1 happening, app opens to a report that is accessible.

Actual Result:

App opens to the "Hmm... it's not here" page. Also there is o reportID for the error screen

Workaround:

Can the user still use Expensify without this being fixed? Have you informed them of the workaround?

Platforms:

Which of our officially supported platforms is this issue occurring on?

Version Number: 1.3.74-2 Reproducible in staging?: needs reproduction Reproducible in production?: needs reproduction If this was caught during regression testing, add the test name, ID and link from TestRail: Email or phone of affected tester (no customers): Logs: https://stackoverflow.com/c/expensify/questions/4856 Notes/Photos/Videos: Any additional supporting documentation

image (1)

image

Expensify/Expensify Issue URL: Issue reported by: @mallenexpensify Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1695712867448569

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~0135298da9abe1170c
  • Upwork Job ID: 1712596316625391616
  • Last Price Increase: 2023-11-28
  • Automatic offers:
    • tienifr | Contributor | 27866693
melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @kadiealexander (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

melvin-bot[bot] commented 1 year ago

Bug0 Triage Checklist (Main S/O)

mallenexpensify commented 1 year ago

I think this might be part of a multi-part issue/bug?

  1. This examples opens to nothing, a non-existent report
  2. The app opens to random reports that exist. I had it happen the past week where the app opened to a weird test report with no comments - https://staging.new.expensify.com/r/92476783 image-2023-10-02 14_35_20 723
melvin-bot[bot] commented 1 year ago

@kadiealexander Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

kadiealexander commented 1 year ago

I'm ooo, reassigning so this isn't blocked on me!

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @kadiealexander (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to @anmurali (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

melvin-bot[bot] commented 1 year ago

Bug0 Triage Checklist (Main S/O)

melvin-bot[bot] commented 1 year ago

@anmurali Eep! 4 days overdue now. Issues have feelings too...

anmurali commented 1 year ago

I can't reproduce. It opens to the home page

image
mallenexpensify commented 1 year ago

Happened to me again today on desktop, reopening. When I pull up the reportID it shows 'app://-/not-found' . Would it be helpful to look into my backend(?) logs to see if anything shows up?

image

The only error I see in the console is

image
puneetlath commented 1 year ago

It happens to me too. Let's make it External.

melvin-bot[bot] commented 1 year ago

Job added to Upwork: https://www.upwork.com/jobs/~0135298da9abe1170c

melvin-bot[bot] commented 1 year ago

Triggered auto assignment to Contributor-plus team member for initial proposal review - @eVoloshchak (External)

melvin-bot[bot] commented 1 year ago

@eVoloshchak @anmurali this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

melvin-bot[bot] commented 1 year ago

@eVoloshchak, @anmurali Huh... This is 4 days overdue. Who can take care of this?

mvtglobally commented 1 year ago

Issue not reproducible during KI retests. (First week)

melvin-bot[bot] commented 1 year ago

@eVoloshchak, @anmurali Still overdue 6 days?! Let's take care of this!

melvin-bot[bot] commented 1 year ago

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

mallenexpensify commented 1 year ago

Just happened again to me

image
melvin-bot[bot] commented 1 year ago

@eVoloshchak @anmurali this issue is now 3 weeks old. There is one more week left before this issue breaks WAQ and will need to go internal. What needs to happen to get a PR in review this week? Please create a thread in #expensify-open-source to discuss. Thanks!

melvin-bot[bot] commented 1 year ago

@eVoloshchak, @anmurali 10 days overdue. I'm getting more depressed than Marvin.

mallenexpensify commented 1 year ago

I'm gonna take this over as BZ since it might only be happening on my account. Still trying to suss out how to check my internal logs https://expensify.slack.com/archives/C03TQ48KC/p1698084538842509

mallenexpensify commented 1 year ago

Holding on https://github.com/Expensify/App/issues/30126

mallenexpensify commented 1 year ago

Still happening so taking off hold, still no errors in the console, I've tried to dig around https://www.expensify.com/_devportal/tools/logSearch/ but I have NO idea what I'm looking for and, even when I try to find the time/date stamp, I come up with nothing. Any tips @eVoloshchak Here's console logs, in case it's helpful

[OnyxUpdateManager] Listening for updates from the server
Timing.ts:53 Timing:staging.new.expensify.trie_initialization 1516
Log.ts:52 [info] Called API makeRequestWithSideEffects - {"command":"SendPerformanceTiming","name":"staging.new.expensify.trie_initialization","value":1516,"platform":"desktop"}
Log.ts:52 [info] Making API request - {"command":"SendPerformanceTiming"}
Log.ts:52 [info] [Onyx] set() called for key: currentDate - ""
Log.ts:52 [info] Found existing deviceID - "6b9518799f0966f6a4d94c04a5c76624b7af596d986eda58ff6bdd9595b544e7"
Log.ts:52 [info] Finished API request - {"command":"SendPerformanceTiming","jsonCode":200,"requestID":"81b557055cd31462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] [Onyx] set() called for key: activeClients properties: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19 - ""
Log.ts:52 [info] [Migrate Onyx] start - ""
Log.ts:52 [info] [Onyx] set() called for key: activeClients properties: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 - ""
2Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] set() called for key: demoInfo properties:  - ""
Log.ts:52 [info] [Onyx] set() called for key: isCheckingPublicRoom - ""
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":null,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [NetworkConnection] NetInfo state change - {"isInternetReachable":true,"isConnected":true,"type":"unknown","details":null}
Log.ts:52 [info] [Onyx] merge() called for key: network properties: isOffline,timeSkew - ""
Log.ts:52 [info] [Migrate Onyx] Skipped migration RenameReceiptFilename because there were no transactions with the receiptFilename property - ""
Log.ts:52 [info] [Migrate Onyx] finished in 5572ms - ""
Log.ts:52 [info] [NetworkConnection] listenForReconnect called - ""
App.js:233 [OnyxUpdates] App reconnecting with updateIDFrom: 22222296
Timing.ts:53 Timing:staging.new.expensify.homepage_initial_render 484
Log.ts:52 [info] Called API makeRequestWithSideEffects - {"command":"SendPerformanceTiming","name":"staging.new.expensify.homepage_initial_render","value":484,"platform":"desktop"}
Log.ts:52 [info] Making API request - {"command":"SendPerformanceTiming"}
Log.ts:52 [info] Navigating to route - {"path":"/r"}
Log.ts:52 [hmmm] [PusherConnectionManager] state change - {"states":{"previous":"connecting","current":"connected"}}
Log.ts:52 [hmmm] [PusherConnectionManager] connected event - ""
Log.ts:52 [info] [Pusher] Attempting to subscribe to channel - {"channelName":"private-encrypted-user-accountID-4087621","eventName":"multipleEvents"}
Log.ts:52 [info] [PusherAuthorizer] Attempting to authorize Pusher - {"channelName":"private-encrypted-user-accountID-4087621"}
Log.ts:52 [info] Called API makeRequestWithSideEffects - {"command":"AuthenticatePusher","socket_id":"565451.436064","channel_name":"private-encrypted-user-accountID-4087621","shouldRetry":false,"forceNetworkRequest":true}
Log.ts:52 [info] Making API request - {"command":"AuthenticatePusher"}
NativeAnimatedHelper.js:258 Animated: `useNativeDriver` is not supported because the native animated module is missing. Falling back to JS-based animation. To resolve this, add `RCTAnimation` module to this app, or remove `useNativeDriver`. Make sure to run `pod install` first. Read more about autolinking: https://github.com/react-native-community/cli/blob/master/docs/autolinking.md
Z @ NativeAnimatedHelper.js:258
Log.ts:52 [info] [Onyx] set() called for key: isSidebarLoaded - ""
Log.ts:52 [info] [Onyx] set() called for key: shouldShowComposeInput - ""
Log.ts:52 [info] [Onyx] set() called for key: reportUserIsLeavingRoom_8663532451313988 - ""
Log.ts:52 [info] [Pusher] Attempting to subscribe to channel - {"channelName":"private-report-reportID-8663532451313988","eventName":"client-userIsLeavingRoom"}
Log.ts:52 [info] [PusherAuthorizer] Attempting to authorize Pusher - {"channelName":"private-report-reportID-8663532451313988"}
Log.ts:52 [info] Called API makeRequestWithSideEffects - {"command":"AuthenticatePusher","socket_id":"565451.436064","channel_name":"private-report-reportID-8663532451313988","shouldRetry":false,"forceNetworkRequest":true}
Log.ts:52 [info] Making API request - {"command":"AuthenticatePusher"}
Log.ts:52 [info] Navigating to route - {"path":"/r/8663532451313988"}
Log.ts:52 [info] Called API write - {"command":"ReconnectApp","policyIDList":["01DC7E46150451C4","137DA25D273F2423","1918CDF51E809CCF","1CAFAAA6EAD09539","23069B16ED2648C0","44BD58EED02FE249","55E36C869F685439","5A8359FA685278EC","68E5D1CC5AF51921","790006A0858FB249","7A35FD885AE104E1","A55A7962A1F001A4","BA28F114EE345EF7","BAFB26707B86A11D","E6E1C9C5479B9B70","E96A0D7384864A55"],"mostRecentReportActionLastModified":"2023-10-24 21:13:17.803","updateIDFrom":22222296}
Log.ts:52 [info] [Onyx] set() called for key: networkRequestQueue properties: 0 - ""
Timing.ts:53 Timing:staging.new.expensify.calc_most_recent_last_modified_action 11
Log.ts:52 [info] Making API request - {"command":"ReconnectApp"}
Log.ts:52 [info] [Onyx] merge() called for key: isLoadingReportData - ""
Log.ts:52 [info] [BootSplash] hiding splash screen - ""
Log.ts:52 [info] [Onyx] merge() called for key: modal properties: isVisible,willAlertModalBecomeVisible - ""
Log.ts:52 [info] Finished API request - {"command":"SendPerformanceTiming","jsonCode":200,"requestID":"81b557aecd0d1462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] Finished API request - {"command":"AuthenticatePusher","jsonCode":200,"requestID":"81b557aeed5b1462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] [PusherAuthorizer] Pusher authenticated successfully - {"channelName":"private-encrypted-user-accountID-4087621"}
Log.ts:52 [info] Finished API request - {"command":"AuthenticatePusher","jsonCode":200,"requestID":"81b557b638141462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] [PusherAuthorizer] Pusher authenticated successfully - {"channelName":"private-report-reportID-8663532451313988"}
Log.ts:52 [info] Finished API request - {"command":"ReconnectApp","jsonCode":200,"requestID":"81b557b678751462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 22222296 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] [Onyx] set() called for key: networkRequestQueue properties:  - ""
Log.ts:52 [info] Called API makeRequestWithSideEffects - {"command":"SendPerformanceTiming","name":"staging.new.expensify.calc_most_recent_last_modified_action","value":11,"platform":"desktop"}
Log.ts:52 [info] Making API request - {"command":"SendPerformanceTiming"}
Log.ts:52 [info] [Onyx] merge() called for key: isLoadingReportData - ""
Log.ts:52 [info] Finished API request - {"command":"SendPerformanceTiming","jsonCode":200,"requestID":"81b557b95ca91462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] Previous log requestID - {"requestID":"81b557bc89881462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] [Onyx] merge() called for key: reportDraftCommentNumberOfLines_0 - ""
Log.ts:52 [info] [BootSplash] splash screen status - {"appState":"background","status":"hidden"}
Log.ts:52 [info] [Onyx] set() called for key: activeClients properties: 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18 - ""
index.js:20 setNativeProps is deprecated. Please update props using React state instead.
(anonymous) @ index.js:20
Log.ts:52 [info] Called API write - {"command":"OpenReport","reportID":"8663532451313988","emailList":"","accountIDList":"","parentReportActionID":"0","clientLastReadTime":"2023-10-24 21:13:17.803"}
Log.ts:52 [info] [Onyx] set() called for key: networkRequestQueue properties: 0 - ""
Log.ts:52 [info] [Onyx] set() called for key: reportUserIsTyping_8663532451313988 properties:  - ""
Log.ts:52 [info] [Pusher] Attempting to subscribe to channel - {"channelName":"private-report-reportID-8663532451313988","eventName":"client-userIsTyping"}
Log.ts:52 [info] [Onyx] set() called for key: shouldShowComposeInput - ""
Log.ts:52 [info] [Onyx] merge() called for key: modal properties: isVisible,willAlertModalBecomeVisible - ""
Log.ts:52 [info] Making API request - {"command":"OpenReport"}
Log.ts:52 [info] [Onyx] merge() called for key: report_8663532451313988 properties: chatReportID,chatType,currency,hasOutstandingIOU,hasParentAccess,isOwnPolicyExpenseChat,isPinned,isWaitingOnBankAccount,lastActorAccountID,lastMessageHtml,lastMessageText,lastReadSequenceNumber,lastReadTime,lastVisibleActionCreated,lastVisibleActionLastModified,managerEmail,managerID,notificationPreference,oldPolicyName,ownerAccountID,ownerEmail,parentReportActionID,parentReportID,participantAccountIDs,policyID,reportID,reportName,stateNum,statusNum,submitterPayPalMeAddress,total,type,welcomeMessage,writeCapability,maxSequenceNumber,pendingFields,errorFields,isOptimisticReport,cachedTotal,hasDraft,lastMessageTranslationKey,hasOutstandingChildRequest - ""
Log.ts:52 [info] [Onyx] merge() called for key: reportDraftComment_8663532451313988 - ""
Log.ts:52 [info] [Onyx] merge() called for key: reportMetadata_8663532451313988 properties: isLoadingReportActions,isLoadingMoreReportActions - ""
2Log.ts:52 [info] [Onyx] merge() called for key: modal properties: isVisible,willAlertModalBecomeVisible - ""
Log.ts:52 [info] Finished API request - {"command":"OpenReport","jsonCode":200,"requestID":"81b558909db01462-AUS"}
OnyxUpdates.ts:62 [OnyxUpdateManager] Applying update type: https with lastUpdateID: 0 Object
OnyxUpdates.ts:19 [OnyxUpdateManager] Applying https update
OnyxUpdates.ts:41 [OnyxUpdateManager] Done applying HTTPS update
Log.ts:52 [info] [Onyx] set() called for key: networkRequestQueue properties:  - ""
Log.ts:52 [info] [Onyx] merge() called for key: report_8663532451313988 properties: chatReportID,chatType,currency,hasOutstandingIOU,hasParentAccess,isOwnPolicyExpenseChat,isPinned,isWaitingOnBankAccount,lastActorAccountID,lastMessageHtml,lastMessageText,lastReadSequenceNumber,lastReadTime,lastVisibleActionCreated,lastVisibleActionLastModified,managerEmail,managerID,notificationPreference,oldPolicyName,ownerAccountID,ownerEmail,parentReportActionID,parentReportID,participantAccountIDs,policyID,reportID,reportName,stateNum,statusNum,submitterPayPalMeAddress,total,type,welcomeMessage,writeCapability,maxSequenceNumber,pendingFields,errorFields,isOptimisticReport,cachedTotal,hasDraft,lastMessageTranslationKey,hasOutstandingChildRequest - ""
Log.ts:52 [info] [Onyx] merge() called for key: reportActions_8663532451313988 properties: 5121561507339486698,6383925629882765609,9131607317494348017,694070922216914133,6563595652662290958,183459399001004412,1491445471246289736,7447213885651848425,3389700247847285616,4654207087731393699,6165597170953444128,7039176251781573698,1673665364307652948,6389696025407815435,4931036557658614019,9189391124427843316,5649757994992289544,3935906477825905791,5176339497267167514,8443044493136374196,6207053440094881598,3355818336115473911,4945255403600050383,1962852354215705740,3570587796574393945,2210866126904547344,3470264559290120328 - ""
Log.ts:52 [info] [Onyx] merge() called for key: personalDetailsList properties: 1,26328,38824,262345,281396,297463,623727,665613,666702,704993,778531,1109065,1115216,1146648,1153269,1214769,1296855,1309498,1330212,1353644,1377139,1381556,1520269,1713428,1958521,2012843,2074551,2082326,2129354,2230176,2230455,2234069,2254404,2267637,2278174,2288376,2366079,2473133,2473134,2536717,2582644,2644832,2644835,2644838,2644839,2671946,2675048,2697693,2738447,2746397,2759259,2762690,2762691,2762692,2820722,2820725,2840332,2875893,2875905,2937132,2976996,3000672,3002088,3005279,3064822,3079110,3079111,3079112,3092322,3107470,3126513,3149650,3155852,3171124,3243510,3431989,3432223,3459014,3472166,3472167,3657342,3772464,3806748,3895429,3955465,4024333,4037741,4057821,4087610,4087621,4087623,4090638,4090639,4121216,4152127,4178612,4187104,4252732,4314163,4314164,4314165,4314166,4419030,4784620,4883492,4974958,5044284,5090992,5094346,5095715,5180051,5268244,5318345,5356024,5356092,5372337,5372839,5372840,5372841,5372842,5635513,5726973,5733301,5734872,5735188,5757820,5796458,5796510,5796540,5801774,5827150,6019479,6029384,6111892,6179491,6297325,6317681,6533726,6535687,6550532,6552413,6552431,6562747,6619036,6626667,6648311,6714410,6755734,6755789,6763764,6765667,6779481,6779770,6779772,6796838,6808953,6823599,6826818,6830975,6840150,6840199,6840273,6845830,6850250,6851710,7032450,7044543,7045719,7063118,7074331,7172565,7185297,7202064,7202179,7202733,7208642,7217634,7226201,7244589,7249138,7267406,7277886,7278205,7278229,7278230,7278709,7288881,7297966,7299777,7299825,7314916,7327061,7330070,7357201,7372990,7380604,7387718,7388555,7392652,7392997,7398544,7401252,7411740,7421031,7454317,7462192,7462198,7467869,7487503,7490082,7494755,7511464,7520197,7524970,7539991,7539993,7539997,7540622,7547847,7547950,7559545,7563212,7567767,7580688,7587739,7597120,7598313,7611395,7615368,7622373,7627767,7656055,7663412,7697132,7705223,7717409,7726817,7749588,7749590,7753792,7753800,7768577,7788168,7788192,7794653,7811534,7821206,7875768,7876025,7906268,7944210,7945113,8033800,8047542,8087341,8087343,8125084,8164232,8173766,8173767,8191180,8191182,8198921,8198923,8211685,8279983,8310610,8310613,8310878,8318789,8339582,8340048,8344905,8347104,8348739,8361672,8380559,8384174,8384176,8392101,8416484,8416485,8416977,8425572,8425573,8425663,8425667,8435593,8437512,8438190,8438192,8439205,8440563,8445826,8448417,8454327,8462753,8464276,8472288,8473899,8473900,8473901,8484607,8495210,8499182,8499251,8505565,8507290,8507402,8507403,8507495,8519481,8519482,8519507,8527993,8536674,8542131,8542159,8547380,8548566,8548568,8559048,8572718,8574419,8574421,8574433,8581185,8581189,8587325,8587327,8587495,8592289,8592847,8595733,8598756,8598758,8598762,8605221,8607290,8607942,8617455,8617456,8617627,8641839,8649480,8649548,8649549,8653369,8667551,8668009,8672420,8681922,8692041,8692095,8692198,8697373,8702731,8702757,8710860,8719170,8723712,8723786,8729520,8734577,8742021,8742666,8742667,8745772,8745774,8771975,8772354,8776465,8776881,8785304,8785308,8788142,8804214,8804725,8804831,8809473,8809474,8809475,8813179,8814298,8814299,8814426,8814472,8814477,8817350,8817506,8819895,8819896,8821382,8827839,8834986,8835007,8835047,8837487,8840131,8840132,8841736,8843294,8849414,8852264,8858858,8872898,8873555,8873600,8873782,8876382,8876531,8876585,8878965,8878983,8887384,8888782,8889941,8889965,8892196,8892337,8894251,8897363,8900169,8904472,8906814,8907341,8911307,8911325,8911357,8911386,8911391,8911398,8911400,8911658,8911663,8912984,8913048,8924883,8924884,8924885,8931541,8931892,8931894,8932118,8934878,8935148,8935149,8937339,8937340,8939530,8939531,8946712,8946713,8954390,8954547,8958062,8958063,8959101,8962161,8962353,8963190,8969359,8969474,8971927,8971928,8976916,8976917,8976944,8978924,8978927,8988123,8996140,8996144,9002587,9002588,9004759,9004765,9009692,9009693,9076869,9076902,9084252,9084253,9087899,9087900,9087945,9097959,9106406,9150474,9150475,9165064,9165377,9165378,9167390,9167391,9169913,9170506,9175945,9225486,9225491,9249550,9249551,9284113,9290574,9300178,9300180,9303431,9303442,9306293,9307094,9316354,9316367,9329118,9339753,9341032,9346992,9357325,9357981,9373835,9375152,9423641,9606781,9620537,9621472,9621596,9635732,9644070,9645353,9663820,9663824,9663825,9663826,9666842,9666844,9666846,9675014,9679724,9683670,9701895,9710762,9710935,9711145,9711155,9711157,9713816,9719988,9720184,9722304,9723704,9739175,9747978,9747980,9757236,9757288,9757435,9761729,9765436,9765672,9765731,9768624,9768831,9777688,9777839,9784057,9788108,9790160,9790591,9790592,9809199,9812741,9817603,9831484,9831520,9831532,9835964,9842638,9847009,9849846,9855071,9855090,9864974,9877659,9881249,9881289,9893228,9899072,9903174,9907600,9907601,9907602,9908697,9911653,9913826,9929233,9941005,9951447,9952973,9953101,9955495,9955511,9964841,9969954,9969957,9973171,9973337,9976694,9976704,9976725,9983532,9989532,9991366,9995023,10009177,10013133,10013342,10014187,10016553,1001657
Log.ts:52 [info] [Onyx] merge() called for key: reportActions_2545867663703719 properties: 4441381440977738209,8400516806809643211,8658182544870808492,6311004345673326513,5617421770266762779,8763911669739107977,6884758771264849567,8926267329789159661,5555504781318893483,9204395442794609788,7220636927504658284,8869263392593919823,6300480492954152935,7059080827904770401,7564555215393808758,372002530194703711,6223542391408557909,1198174709602734206,1199064684759608081,1439888989510956374,2259715323137802510,2377628132539027769,2533814178393144531,2794702772893988841,2961001442639368940,3100990054603048466,3466143022787263112,360479636888767188,4039127743189478497,4103857257224044114,4648405737462735510,5085159159535046466,5280542766761724785,5467377938939002276,5595079441345018414,5658601919594950091,5880909935105656725,6136535394797722649,6382529830278222341,6565330366695236309,6785651279556599943,6800400783424173859,689500545171262520,7013110537746310742,7175022031687251090,7212097835999673760,7353753188948846989,7393577515361370507,7487665253594679561,7675536854047350451,7840077880742217086,7947692013252704276,7950484636494379453,8033378519617875867,8686762523714391099,8808597425379695674,7782175705273960058,5634907854936860690,2743006732750507444,8427668911467606405,1967466028393021527,8251265903533676271,7699331779799508293,2484881519346211325,4793571910775210462,9182878535304936212,2151560891780139445,7111969016362295399,9181528098441357570,8311940147239249367,7212590661125052252,9083116615611389849,2765108554832439480,1304883487578659018,5872711647545229089,7478282546410501576,153946922819954167,2132859949205705970,7491882089048416769,7103799580745684198,8278391726104998648,5148339526964334078,8024464401485286259,1922430863459408716,1727779865749696252,1244893843408078485,2161069495445125566,3808362551798409086,4782581870275444209,1836449391479596831,8919255135206284872,1254464368105343905,9131773998806256727,6012897304602429825,2212328792973861041,7161653627353414644,7207684141664387248,3579482429574371466,1344075744535412641,8321529847758820297,2085097517967401438,8309176544999496934,7180165106777549942,7999047793995989285,6072422903145362858,25475782922669997,3828446006010462,4339956474600385839,8791975953386525113,9176390212628596157,585989264424846453,1167030590813184119,6236852323381004002,7248356531750675415,3388771015181880267,5209883092736722030,140615300954336541,7366876870944377624,5727337547912978670,976880425200811305,524526784876105,2244449334572930523,3678293035972701949,6760069987712349795,6807837731796916170,3119511681000583030,3130807909236644960,4837010229168964412,5201235836638898559,4071235904429319149,8242026697674207502,4655936481139882743,3829426664798412090,4018210268365482580,6334759453877999042,1579996779434471975,4005835709190410461,883769559954803627,2772434748585872521,16552361063139934,7328280649206951097,5796038696522721977,529629500273288195,7854361260055935092,7982981001026699716,4395124659355910957,4449824299668253291,6516546709699390649,5392452328447536633,1216767954084253009,8885527453021522655,2759429780498671363,4037946078383302632,1501615444310299875,4592065343169534726,4765412563053980530,4901205102910670365,1948549876950571339,8946908241427781572,6148585782785335993,5260609820380675458,6625312025776318985,9085444503011367045,1767186141631915508,602026058607172621,6953051537914145075,5459159087631916175,5897717021970981566,6858938534579986360,6273451761841479560,6548608605927987641,6507363241250709240,2267468015627617918,3866026036722481125,8359425920191658398,2110314763976036419,3900975142674188701,1103270639972417387,4344731639654459085,2828046397444253224,9049950285802199794,3624924511862174724,6676667094699027372,8309361153658534385,7219750433608182425,5051727058074641682,1545610915181936584,3766399177162726806,2175103575567018774,6222997675015512425,3618222562528297299,6055487249140699033,4657176782506408587,7248040961101568566,6216978610664147465,2771316703933298918,2284088787878320338 - ""
Log.ts:52 [info] [Onyx] merge() called for key: reportMetadata_8663532451313988 properties: isLoadingReportActions,isLoadingMoreReportActions - ""
Log.ts:52 [info] Navigating to route - {"path":"/not-found"}
Log.ts:52 [info] [Onyx] merge() called for key: modal properties: isVisible,willAlertModalBecomeVisible - ""
2Log.ts:52 [info] Navigating to route - {"path":"/not-found"}
eVoloshchak commented 1 year ago

@mallenexpensify, I don't see anything suspicious in the logs

I think the first step in fixing this would be to reliably reproduce the issue. To do that we need to be able to test Electron's auto-updater flow, which is possible, but non-trivial, according to https://github.com/electron-userland/electron-builder/issues/3053

Sharing the link since it will be useful to contributors, also will try to test the auto-updater flow myself in the next couple of days so we have a way to reliably reproduce this (and test proposals)

mallenexpensify commented 1 year ago

Thanks @eVoloshchak , it happened again to me yesterday. Do you think this can be worked on by a contributor? If so, i'll bump the price to $1000 since, I'm guessing, I'm not the only one this is happening to, and it's happening most-every time I update.

mallenexpensify commented 1 year ago

Interesting bit.

Which makes me think that the issue isn't on the report that's loading since I was already in a real chat with Deeter when the error occurred ¯_(ツ)_/¯

puneetlath commented 1 year ago

I still get this every time I update. It looks like it's trying to navigate to report 65289308 for some reason, which is not a report I have access to.

Screenshot 2023-11-01 at 1 46 36 PM
mallenexpensify commented 1 year ago

Strange, I checked all my navigating to route reports in the console and I have access to all of them. Next time it load-crashes I'll check them again

image
mallenexpensify commented 12 months ago

Just happened again, I'm guessing the issue is, since I have access to the other report (Chronos)

[info] Navigating to route - {"path":"/not-found"}

image

Is there anymore diving/digging I can do to get more info on the not found?

Also checking on in #engineering-chat

melvin-bot[bot] commented 11 months ago

@eVoloshchak, @mallenexpensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

melvin-bot[bot] commented 11 months ago

@eVoloshchak, @mallenexpensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

mallenexpensify commented 11 months ago

Just updated and it didn't load with 'hmmmmm...' error page. And.. miraculously, it opened to the report that I was on when it closed (which, historically, has been very rare). Bumped to Weekly and removed `Help Wanted1, hoping this might have been fixed via the below

puneetlath commented 11 months ago

I also just updated and didn't experience the bug either.

mallenexpensify commented 11 months ago

Updated this morn and didn't encounter the bug. Added [HOLD] in title for now, 🤞 this is fixed

mallenexpensify commented 11 months ago

Crashed this morn when updating, didn't see much in console but was having some issues capturing and such.

mallenexpensify commented 11 months ago

Crashed again (my app updates are often 2x each time). I'm guessing this is the issue.

[info] Navigating to route - {"path":"/not-found"}

image

only error showing

image
melvin-bot[bot] commented 11 months ago

⚠️ This issue has had its price increased by 4x or more. Please review the issue and ensure the price is correct.

melvin-bot[bot] commented 11 months ago

Upwork job price has been updated to $1000

mallenexpensify commented 11 months ago

And..... happened again v1.4.1-6 update. Asking about internally, in #engineering

Desktop keeps opening to reports that aren't visible so I get the Hmm.. it's not here error page after updating the app. Addressing the issue in this GH. Does anyone know the logic for which report we open after updating and/or when the app is opened? I'm wondering if a fix (or quick-fix) would be to always open the chat report that's the top one in LHN.

melvin-bot[bot] commented 11 months ago

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

tienifr commented 11 months ago

I'm available to raise a PR immediately if assigned

Proposal

Please re-state the problem that we are trying to solve in this issue.

Desktop app opens to the "Hmm... it's not here" page

What is the root cause of that problem?

This is because the Electron URL when built is app://-, so our app fails to parse the initial URL because that prefix is not whitelisted here.

So let's say the initial url is app://-/ (when opening home page), it should've been parsed to '' before navigating, but it stays as is (app://-/)

So the navigator cannot find any route matching app://-/ and it will fallback to the not found page.

What changes do you think we should make in order to solve the problem?

Whitelist that prefix here, we just need to add 'app://-/' to the prefixes list.

Tested by building Desktop staging and it works fine.

What alternative solutions did you explore? (Optional)

NA

mallenexpensify commented 11 months ago

@eVoloshchak can you please prioritize reviewing @tienifr 's proposal since this is happening to me everyday (and I'm unsure if it's happening to others). Thx

mallenexpensify commented 11 months ago

Also, posted about in #expensify-open-source, to see if it's happening to others https://expensify.slack.com/archives/C01GTK53T8Q/p1700585710761919

mallenexpensify commented 11 months ago

Also... when I click "go back to homepage" it takes me to a report, why wouldn't we just use the same report to open the app to every time?

image
mallenexpensify commented 11 months ago

Also being address below, which might be a dupe ¯_(ツ)_/¯. It's a deploy blocker so it's getting more 👀 right now

mallenexpensify commented 11 months ago

From Tim G in this internal thread, in case it's helpful:

  1. If there is a reportID in the URL, load that report. (if you do not have access to that report, you are shown "not found")
  2. Sort all reports in Onyx by their lastReadTime
  3. if openOnAdminRoom param is in the URL, then fine the first report where the chat type is policyAdmins and assign it to the variable adminReport
  4. If isFirstTimeNewExpensifyUser and there is only 1 sorted report, load that report
  5. If there is more than 1 sorted report, and there is adminReport, load the first sorted report that is not concierge
  6. If they are not in the domain rooms beta
  7. filter the sorted reports to only contain non-domain chats, workspace chats, chats with their guides
  8. If adminReport exists, load it
  9. else load the last sorted report

The bulk of that logic is here: https://github.com/Expensify/App/blob/main/src/libs/ReportUtils.js#L596-L631

tienifr commented 11 months ago

I found the offending PR: https://github.com/Expensify/App/pull/31316.

Actually that PR is not related to the RCA in my proposal. Indeed, the route has already been parsed incorrectly all the time. For example, if the link was app://-/settings, getRouteFromLink would return app://-/settings, but should be /settings instead.

Here we have a check if navigationRef is ready:

https://github.com/Expensify/App/blob/f6ef8b85f94d3f6d7c6c9f90d0c23897f66ce318/src/libs/Navigation/Navigation.js#L107

so the route is not navigated to.

But later in NavigationRoot, we parse route using react-navigation's getPathFromState which would return the correct route:

https://github.com/Expensify/App/blob/f6ef8b85f94d3f6d7c6c9f90d0c23897f66ce318/src/libs/Navigation/NavigationRoot.js#L41

That's why although the route was not parsed properly the first time, we can still navigate to it.

However, PR https://github.com/Expensify/App/pull/31316 introduced another layer of wating for navigation:

https://github.com/Expensify/App/blob/f6ef8b85f94d3f6d7c6c9f90d0c23897f66ce318/src/libs/actions/Report.js#L2009-L2010

So the check mentioned above failed, the incorrect route (app://-/settings) was navigated to and consequently led to not found page. The same thing happens on Android mWeb if we use 127.0.0.1 domain.

cc @s77rt.

s77rt commented 11 months ago

@tienifr

But later in NavigationRoot, we parse route using react-navigation's getPathFromState which would return the correct route:

The getPathFromState you linked is only for logging and not responsible for any navigation. Looks we are missing something here. But regardless where is app:// protocol coming from? Is this enforced by electron? I'd expect the uri schema to be customizable