-
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
[HOLD for payment 2024-07-24] [$250] Web - Sign in - Safari Password module does not go away after signing in #32683
Comments
Job added to Upwork: https://www.upwork.com/jobs/~019a736d294b1b7be1 |
Triggered auto assignment to @MitchExpensify ( |
Bug0 Triage Checklist (Main S/O)
|
Triggered auto assignment to Contributor-plus team member for initial proposal review - @situchan ( |
ProposalPlease re-state the problem that we are trying to solve in this issueThe auto-fill suggestion popup is not dismissed after introducing magic code and remains stuck as the user navigates through the site. What is the root cause of that problem?If you use any Our issue comes from the What changes do you think we should make in order to solve the problem?App/src/pages/signin/ValidateCodeForm/BaseValidateCodeForm.tsx Lines 293 to 295 in 633e708
in the component mentioned above, instead of the react fragment VideosMacOS: Safaridfa96d63-0dac-4533-bbf3-6c11acf2fee6.mp4 |
ProposalPlease re-state the problem that we are trying to solve in this issue.The password module does not dismiss itself and the user navigates through the site and it continues to show What is the root cause of that problem?According to this confirmation, we'll be using the RCA suggested here What changes do you think we should make in order to solve the problem?According to this confirmation. We'll be using the solution suggested here What alternative solutions did you explore? (Optional)My original solution: When we validate the code, in here, the blurring of the input happens at the same time as component rerendering due to code submission. This interferes with Safari's autofill popup showing and causes the autofill popup to be stuck on the screen. We just need to wrap these lines inside |
@MitchExpensify, @situchan Whoops! This issue is 2 days overdue. Let's get this updated quick! |
You won't need a magic code to sign into NewDot soon, closing |
@MitchExpensify can you link the issue relating to the change that will remove the magic code signin? We might want to keep this issue on hold for that since it might still happen with the login method that replaces magic code |
@MitchExpensify Looks like this issue is still present 6 months later as we still need magic code to sign-in into ND. I think this is worth fixing in the meantime until PR from issue #30794 is implemented, since it's an easy fix and more importantly it's really bad UX for both desktop and mobile Safari users (cc @Expensify/design). My proposal is still valid and ready for review / implementation if selected. Note Bumping on this since I still encounter the bug everytime I test on Safari and I need to login 😅 |
I am still available for C+ review. |
Cool, this is probably worth fixing but I think we should drastically reduce the bug bounty here. |
Indeed, I agree based on what was stated in this Slack 🧵 regarding the bounty change from $500 to $250 that:
but given that an issue is in the works to eventually remove the magic code functionality, I think $250 would be fair. Do we agree 👍 or 👎. |
Yeah, I don't think unvalidated sign-ups makes a difference here. If at any point you decide to sign-out and then need to sign back in using the magic code this autofill will get in the way. Reopening, adjusting the price. @situchan please review @ikevin127's proposal as a next step. 👍 |
@tienifr Yes, I can still reproduce the issue on Safari web, you need to have autocomplete login data saved in order to reproduce. The mentioned If you cannot reproduce, let us now and we'll reassign somebody who can and wants to open the PR. |
@ikevin127 It's actually the App/src/components/FormElement/index.tsx Line 40 in e9c5e9b
I'm trying again now. |
@tienifr My bad I didn't notice the I looked into why the parent The App/src/components/FormElement/index.tsx Lines 18 to 36 in fb7fe9f
There's 2 ways in which, compared to the empty
How did I test this ? // Prevent the browser from applying its own validation, which affects the email input
+ // formCurrent.setAttribute('novalidate', '');
+ formCurrent.setAttribute('dataset', '{}'); and the result is that the issue is fixed because the form would behave like the proposed solution form wrapper. The reason why I proposed wrapping the
Therefore the 2nd form wrapper will only show-up on Safari and will be an empty form with empty object <form dataset='[object Object]'>
...
</form> which will fix our issue while not interfering with AgainPlease let me know ASAP if you CAN reproduce this and are willing to open the PR so we can move this forward right away as it has been dragging for a loooong time already. |
Triggered auto assignment to @Christinadobrzyn ( |
Reassigning while I'm out 🙇 |
|
The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.7-8 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue: If no regressions arise, payment will be issued on 2024-07-24. 🎊 For reference, here are some details about the assignees on this issue:
|
BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:
|
Regression Test ProposalPrecondition: You have at least one login saved on Safari. Note: The above autofill popup should only show-up on the Phone or email field.
Do we agree 👍 or 👎. |
Regression test - https://github.com/Expensify/Expensify/issues/414729 Payouts due:
|
Payment day is here - payment summary - #32683 (comment) Closing this as @tienifr will be paid through NewDot. |
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: 1.4.9.1
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:
Pre-Cond: You have at least one login saved on Safari browser
Expected Result:
User expects two things, that either this password module doesn't show at all (Because now you need a magic code and its no longer relevant) OR that if it does show, its dismissed after signing in.
Actual Result:
The password module does not dismiss itself and the user navigates through the site and it continues to show
Workaround:
Unknown
Platforms:
Which of our officially supported platforms is this issue occurring on?
Screenshots/Videos
Add any screenshot/video evidence
Bug6304574_1701962100248.Password_module_continues_after_signing_in_.mp4
View all open jobs on GitHub
Upwork Automation - Do Not Edit
Issue Owner
Current Issue Owner: @ChristinadobrzynThe text was updated successfully, but these errors were encountered: