-
Notifications
You must be signed in to change notification settings - Fork 3k
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
[$500] Deeplinks - Public room conversation opened when tapped on user share profile deeplink #31239
Comments
Triggered auto assignment to @greg-schroeder ( |
Job added to Upwork: https://www.upwork.com/jobs/~01f7fa12128d4cc313 |
Bug0 Triage Checklist (Main S/O)
|
Triggered auto assignment to Contributor-plus team member for initial proposal review - @getusha ( |
Related, maybe same rca: #31150 |
ProposalPlease re-state the problem that we are trying to solve in this issue.A previously visited public room is opened after reopening the app (no need to open the profile page). What is the root cause of that problem?When we open a public room while logged out and then press the "Sign in" button, it will navigate the user to the sign-in modal and set App/src/libs/actions/Session/index.ts Lines 105 to 111 in ffe1c63
After we reopen the app, App/src/libs/Navigation/AppNavigator/AuthScreens.js Lines 204 to 207 in ffe1c63
App/src/libs/actions/Report.js Lines 2203 to 2208 in ffe1c63
The "open the last public room" logic is required when the sign-in page is not a modal yet. When we open a public room, we are signed in as an anon user. In the initial implementation, pressing the "Sign in" button will sign you out, so the What changes do you think we should make in order to solve the problem?Because now we open the sign-in modal, we can remove the last open public room id logic as it's not needed anymore. |
ProposalPlease re-state the problem that we are trying to solve in this issue.Public room conversation opened What is the root cause of that problem?In here, we'll navigate the user to the last opened public room after the user sign in. This logic is needed (still now) in case the user click "Sign in" in footer, terminate and reopen the app, it should still show the correct public room after sign in. We set the last opened room id from here. But the This issue happens because of a race condition, the logic to navigate and reset room id is called first, then the What changes do you think we should make in order to solve the problem?We need to clear the public room id after the user session auth status changes from "anonymous" to "not anonymous", to make sure the public room id is cleaned up properly after signed in. We can add here
(or using the What alternative solutions did you explore? (Optional)Extract the setting of the public room id here to a separate function, and only call it upon user interactions like clicking on "Sign in", not putting it in |
Please re-state the problem that we are trying to solve in this issue. What is the root cause of that problem? Noticed that as of today, current implementation for universal linking seems to be only supporting chat report and no other pages(Ref). so links starts with Addressing this issue might mean, setting up universal deeplinking support similar to linkingConfig by extending Linking.getInitialURL(). What should be the next step here if this is known limitation? |
📣 @sudhakar-s! 📣
|
Contributor details |
✅ Contributor details stored successfully. Thank you for contributing to Expensify! |
You're up here @getusha! |
The proposal made by @dukenv0307 looks good and the root cause and the solution makes sense to me! 🎀 👀 🎀 C+ reviewed |
Triggered auto assignment to @MariaHCD, see https://stackoverflow.com/c/expensify/questions/7972 for more details. |
@getusha may I know why my proposal isn't selected? The last opened public room logic is not needed anymore, so we can remove it. |
If you think we still need it because of a case mentioned by @dukenv0307,
then I don't agree with it. As explained in my proposal, the initial intention of that logic is
So, previously, we reopen the public room because simply it's the last chat/report that we see before sign in as an anonymous user. I don't see why a user would expect to see again the last visited public room after they consciously close the chat or the app. |
After closing the app and reopen, if you click back from the login modal, it will open the public room. So if you log in via that modal, it should also open public room. I think that’s what the user’d expect. Also it’s already working like that currently so if you want to change it it’d be a feature request. Here we should focus on fixing the bug rather than making change to existing behavior. |
I really don't understand this. After closing the app and reopening, the LHN will show, even as an anonymous user.
No behavior is changed, it's already working like that without the last open public room logic because the room is never unmounted in the first place, that's why I suggested removing that logic to avoid unwanted side effect from an unused logic. @getusha I'm going offline, but please re-evaluate the proposal cc: @MariaHCD |
RPReplay_Final1700066300.mp4@bernhardoj This is existing behavior, the user will be navigated back to the public report after coming back from the sign in modal (even after closing app and reopen). Your solution will change the behavior (back to LHN) and cause a regression there. Also it’s clear that solution doesn’t fix the root cause. |
I'll catch up on the discussions here on Monday but can we first confirm if this issue is still consistently reproducible? cc: @kbecciv @mvtglobally can we retest this? |
@MariaHCD @greg-schroeder @getusha 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! |
Waiting on @kbecciv to confirm that this is still reproducible. |
Issue is not reproduced screen-20231204-223646.mp4 |
Okay, perhaps we can close this then? |
@greg-schroeder yes, lets close it. |
I think the majority opinion is to do nothing since either way will work https://expensify.slack.com/archives/C01GTK53T8Q/p1700580479451839?thread_ts=1700455132.577509&cid=C01GTK53T8Q https://expensify.slack.com/archives/C01GTK53T8Q/p1700584101131529?thread_ts=1700455132.577509&cid=C01GTK53T8Q when reopening the app, as of this issue it is not reproducible anymore when we open the app from a link to specific page, i'd say to do nothing. |
I think only puneet said it's fine either way. The majority voted not to open the public room when reopening the app.
It still 100% happens. Screen.Recording.2023-12-08.at.14.20.32.mov |
@kbecciv could you please confirm if this is reproducible again? |
@kbecciv after the profile page opens, please press back and you will see the public room behind it. |
I also see everyone voting to keep current behavior 👍 |
@MariaHCD @greg-schroeder @getusha this issue is now 4 weeks old and preventing us from maintaining WAQ, can you:
Thanks! |
Current assignee @getusha is eligible for the Internal assigner, not assigning anyone new. |
@greg-schroeder hi, it's still reproducible #31239 (comment) |
I think the issue is definitely a bit niche and I don't think it's worth the effort to fix it, IMHO. So I agree with @greg-schroeder's decision to close this. |
@greg-schroeder Is this why you decided to close this issue? |
@greg-schroeder Gentle bump on this |
If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!
Version Number: 1.3.98.0
Reproducible in staging?: y
Reproducible in production?: y
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
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Action Performed:
Expected Result:
User profile should be displayed
Actual Result:
Public room conversation opened
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6272582_1699719100290.screen-20231111-025147.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
The text was updated successfully, but these errors were encountered: