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

iOS Hybrid - App crashes when switching to Expensify Classic after logging in to a new account #54169

Closed
1 of 8 tasks
IuliiaHerets opened this issue Dec 15, 2024 · 52 comments
Closed
1 of 8 tasks
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering Reviewing Has a PR in review Weekly KSv2

Comments

@IuliiaHerets
Copy link

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


Version Number: 9.0.76-6
Reproducible in staging?: Yes
Reproducible in production?: No
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?: No, reproducible on hybrid only
If this was caught during regression testing, add the test name, ID and link from TestRail: Exp
Email or phone of affected tester (no customers): applausetester+23082038203a2@applause.expensifail.com
Issue reported by: Applause Internal Team
Device used: iPhone 15 Pro Max / iOS 18.2
App Component: Other

Action Performed:

Precondition:

  • Hybrid app must be logged out from ND app, not OD.
  1. Go to staging.expensify.com
  2. Select "Manage expenses for a small team".
  3. Enter a new account and sign up.
  4. After web app redirects to ND, launch iOS hybrid app and log in to the same account.
  5. On iOS hybrid app, go to account settings.
  6. Tap Switch to Expensify Classic.

Expected Result:

App will not crash.

Actual Result:

App crashes when switching to Expensify Classic after logging in to a new account.

Workaround:

Unknown

Platforms:

  • Android: Standalone
  • Android: HybridApp
  • Android: mWeb Chrome
  • iOS: Standalone
  • iOS: HybridApp
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Bug6694850_1734270273609!Expensify-2024-12-15-212502.txt

Bug6694850_1734270273607.20241215_212417.mp4

View all open jobs on GitHub

@IuliiaHerets IuliiaHerets added DeployBlockerCash This issue or pull request should block deployment Bug Something is broken. Auto assigns a BugZero manager. DeployBlocker Indicates it should block deploying the API labels Dec 15, 2024
Copy link

melvin-bot bot commented Dec 15, 2024

Triggered auto assignment to @michaelkwardrop (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

Copy link

melvin-bot bot commented Dec 15, 2024

Triggered auto assignment to @luacmartins (DeployBlockerCash), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.

@melvin-bot melvin-bot bot added the Daily KSv2 label Dec 15, 2024
Copy link

melvin-bot bot commented Dec 15, 2024

💬 A slack conversation has been started in #expensify-open-source

@github-actions github-actions bot added Engineering Hourly KSv2 and removed Daily KSv2 labels Dec 15, 2024
Copy link
Contributor

👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

  1. Identify the pull request that introduced this issue and revert it.
  2. Find someone who can quickly fix the issue.
  3. Fix the issue yourself.

@michaelkwardrop
Copy link
Contributor

michaelkwardrop commented Dec 16, 2024

Discussing here, this is my first hourly BZ issue. 🐞

Edit: Follow this SO

@mallenexpensify
Copy link
Contributor

@luacmartins , is this being addressed in the fireroom?
#fireroom-2024-12-15-android-hybridapp-crashing

@michaelkwardrop
Copy link
Contributor

This issue is being discussed here

@michaelkwardrop
Copy link
Contributor

This SO doesn't mention anything about adding these to a project, is that something that is not needed in this case? Or is it best practice to always have a BUG GH assigned to a project if it is obvious it belongs there?

@luacmartins
Copy link
Contributor

@IuliiaHerets I'm unable to reproduce the crash. Could you please ask for a re-test?

@luacmartins
Copy link
Contributor

I'm currently stuck trying to run hybrid app locally. Discussing it here. Additionally:

  1. I cannot reproduce the issue on my physical device with the staging App version on testflight
  2. I asked Applause for a retest here
  3. I asked the open source community to try to reproduce the issue too
  4. I asked SWM for help with the blocker here

@grgia
Copy link
Contributor

grgia commented Dec 16, 2024

I'm also unable to reproduce on my phone on testflight

@IuliiaHerets
Copy link
Author

@luacmartins Tester still can repro the issue, build - 76-6

ScreenRecording_12-17-2024.04-27-01_1.MP4

@IuliiaHerets
Copy link
Author

I can reproduce this crash on my device too, iPhone XR/iOS 17.3

IMG_8598.MP4

@luacmartins
Copy link
Contributor

We're still discussing this issue here, but we can't rule out the API side of things yet either since we can't really reproduce it internally and don't really know what's causing the issue.

@luacmartins
Copy link
Contributor

I have to head out now, but I'll be back in ~4h to continue investigating

@rafecolton
Copy link
Member

What's the latest on this?

@luacmartins
Copy link
Contributor

No meaningful progress yet. We haven't been able to reproduce the issue internally. Additionally:

  1. We can't find any logs for Applause's crash in Firebase, nor the JS dashboard
  2. Looking at the diff, this is the only PR that kind of stands out, but we can't confirm since we can't reproduce the issue - fix: display all LHN options in Import state mode #53374

@staszekscp
Copy link
Contributor

I also tried to reproduce the issue, but I was unable to do that. Maybe it's an issue with a specific account type?

@mjasikowski
Copy link
Contributor

I can reproduce this consistently.
Tried with michal+54169@expensifail.com and michal+54169+1@expensifail.com, both crashed.

@Julesssss
Copy link
Contributor

Ughh, with a new test user it only crashes on first switch... frustrating because previously it reproduced on every switch. @grgia when I reopened the app after crash I land in OldApp experience, then had to switch twice to reproduce crash.

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

Wait... how did you manage to not authenticate?

I just tried from mobile web production and encountered this screen. Is this missing for expensifail now on staging?

@Julesssss
Copy link
Contributor

Julesssss commented Dec 17, 2024

I don't see any step that requires mWeb for testing this flow, am I missing it?

Wait... how did you manage to not authenticate?

I authenticated on web, then again on HybridApp

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

After web app redirects to ND

no you're right I think I misinterpreted this one @Julesssss

@Julesssss
Copy link
Contributor

Julesssss commented Dec 17, 2024

If you guys have been using mWeb, then perhaps a critical step for reproduction is to use this flow when creating the account?

Screenshot 2024-12-17 at 12 41 09

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

That flow shows up in mWeb, but yes.

Okay I just tried again, created a new account (# 3) on mWeb and validated. Then went to hybrid app to log out of my previous one (# 2) and log in and triggered a crash on clicking sign out of (# 2). The crash isnt showing up in crashlytics

It's repeatedly crashing I think? I got ~2-3 of the ios notifications

@Julesssss
Copy link
Contributor

The sign-out case sounds slightly different, but yeah that's the post-crash Modal I was seeing.

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

Wait okay, this is "Production?" but the last 60 min Im seeing a lot of crashes
image

Edit: this might be the YAPL one

@Julesssss
Copy link
Contributor

Julesssss commented Dec 17, 2024

@grgia that's Android crashes, you need to switch to iOS HybridApp release, but yeah it's useless. This version code isn't even available in the filter in Crashlitics, as it detected zero crashes. Also it's the previous version -- I think you're looking at the big Android crash from the weekend.

There's the JS crash dashboard Andrew and Carlos were talking about, but it's also not very helpful.

@Julesssss
Copy link
Contributor

Julesssss commented Dec 17, 2024

I see a couple of crashes in the iOS Firebase console after removing the top level Type=Crash filter and it's possible the crash is being reported this way due to yapl...

Screenshot 2024-12-17 at 12 54 04
Screenshot 2024-12-17 at 12 52 20

Still though, nothing is reported against version 9.0.76-6 😠😠 They are also very generic and often have the same stack trace for many different issues. Worth taking a look at though as there is a spike.

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

Have we confirmed if this is only impacting expensifail or if it impacts other domains?

@Julesssss
Copy link
Contributor

It looks like just expensifail and applause.expensifail have been confirmed so far. I can't repro with new Gmail accounts.

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

@Julesssss is there a way to search the Apple Developer crash (from the popup on IOS) via searching my email or comment? Where do those go?

@luacmartins
Copy link
Contributor

luacmartins commented Dec 17, 2024

@grgia those logs go to App store connect, you can (usually) see them here - I don't see anything for v9.0.76.6 though

@grgia
Copy link
Contributor

grgia commented Dec 17, 2024

@luacmartins my version is v9.0.76.7

@luacmartins
Copy link
Contributor

Yea, there's nothing for 9.0.76.X. The last report I see is from Nov 29 😂

@luacmartins
Copy link
Contributor

We have a fireroom for this one https://expensify.enterprise.slack.com/archives/C085GD1ET8A

@rafecolton
Copy link
Member

Going to remove the web deploy blocker label per discussion here

@rafecolton rafecolton removed the DeployBlocker Indicates it should block deploying the API label Dec 17, 2024
@melvin-bot melvin-bot bot added Reviewing Has a PR in review Weekly KSv2 and removed Hourly KSv2 labels Dec 17, 2024
@luacmartins
Copy link
Contributor

@mvtglobally was this crash found during regular regression tests?

@mvtglobally
Copy link

@luacmartins this is not linked to a particular TC steps but rather found while running regression as an exploratory issue.

@luacmartins
Copy link
Contributor

luacmartins commented Dec 17, 2024

@mvtglobally can you test the latest build 9.0.76-10 please? I think we fixed it.

@IuliiaHerets
Copy link
Author

I cannot reproduce on the latest build, yesterday in my device it was repro (iPhone XR/iOS 17.3)

IMG_8601.MP4

@luacmartins
Copy link
Contributor

Thanks for confirming! This issue is fixed. Closing.

@luacmartins luacmartins removed the DeployBlockerCash This issue or pull request should block deployment label Dec 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering Reviewing Has a PR in review Weekly KSv2
Projects
None yet
Development

No branches or pull requests

10 participants