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

[HOLD for payment 2023-05-16] [$1000] App displays fixed set of results for few seconds and closes when using symbols like (,@,?,# on first open in address1 field of home address #16367

Closed
6 tasks done
kavimuru opened this issue Mar 21, 2023 · 76 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering

Comments

@kavimuru
Copy link

kavimuru commented Mar 21, 2023

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. Open the app
  2. Open settings
  3. Open Profile
  4. Open Personal details
  5. Open Home address
  6. Remove current entry in address 1 field and enter any of the following symbol : (,@,?,# and observe the result
  7. Press on back button
  8. Again open home address
  9. Remove current entry in address 1 field and enter any letter eg: a
  10. Observe the results

Expected Result:

If no results are present for the entry, app shouldn't display any result and if there are results for the entry, app should display those results

Actual Result:

App displays fixed set of result everytime for symbols and when trying with any letter, it again displays same fixed set of result first for 1-2 seconds before displaying actual results

Workaround:

unknown

Platforms:

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

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: 1.2.88-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
Notes/Photos/Videos:

Recording.17.mp4
results.issue.home.address.mp4

Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1679409645222509

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~017c127888b5f727a7
  • Upwork Job ID: 1646583218445266944
  • Last Price Increase: 2023-04-13
@kavimuru kavimuru added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Mar 21, 2023
@MelvinBot
Copy link

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

@MelvinBot
Copy link

Bug0 Triage Checklist (Main S/O)

  • This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
  • This bug is not a duplicate report (check E/App issues and #expensify-bugs)
    • If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead
  • This bug is reproducible using the reproduction steps in the OP. S/O
    • If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
    • If the reproduction steps aren't clear and you determine the correct steps, please update the OP.
  • This issue is filled out as thoroughly and clearly as possible
    • Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.
  • I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@melvin-bot melvin-bot bot added the Overdue label Mar 24, 2023
@MelvinBot
Copy link

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

@MelvinBot
Copy link

@johncschuster Still overdue 6 days?! Let's take care of this!

@MelvinBot
Copy link

@johncschuster Now this issue is 8 days overdue. Are you sure this should be a Daily? Feel free to change it!

@MelvinBot
Copy link

@johncschuster this issue was created 2 weeks ago. Are we close to a solution? Let's make sure we're treating this as a top priority. Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

@MelvinBot
Copy link

@johncschuster 12 days overdue now... This issue's end is nigh!

@melvin-bot melvin-bot bot added Weekly KSv2 and removed Daily KSv2 labels Apr 7, 2023
@MelvinBot
Copy link

This issue has not been updated in over 14 days. @johncschuster eroding to Weekly issue.

@melvin-bot melvin-bot bot removed the Overdue label Apr 7, 2023
@MelvinBot
Copy link

@johncschuster this issue is now 3 weeks old. There is one more week left before this issue breaks WAQ. 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 melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Apr 11, 2023
@laurenreidexpensify laurenreidexpensify removed the Bug Something is broken. Auto assigns a BugZero manager. label Apr 13, 2023
@laurenreidexpensify laurenreidexpensify added the Bug Something is broken. Auto assigns a BugZero manager. label Apr 13, 2023
@MelvinBot
Copy link

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

@laurenreidexpensify
Copy link
Contributor

John is OOO, reassigning so this gets actioned. thanks!

@MelvinBot
Copy link

Bug0 Triage Checklist (Main S/O)

  • This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
  • This bug is not a duplicate report (check E/App issues and #expensify-bugs)
    • If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead
  • This bug is reproducible using the reproduction steps in the OP. S/O
    • If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
    • If the reproduction steps aren't clear and you determine the correct steps, please update the OP.
  • This issue is filled out as thoroughly and clearly as possible
    • Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.
  • I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync

@lschurr
Copy link
Contributor

lschurr commented Apr 13, 2023

I'm not able to reproduce this. When I enter a symbol, I get no suggested results at all.

@MelvinBot
Copy link

Triggered auto assignment to @flodnv (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

@lschurr
Copy link
Contributor

lschurr commented Apr 13, 2023

@flodnv are you able to reproduce this?

@s77rt
Copy link
Contributor

s77rt commented Apr 29, 2023

@Pujan92 Thanks for the proposal. Your RCA is correct. However I think the fix should be slightly altered, I think it's intended to use an object for the useMemo dependency so let's not modify that. But instead let's make our AddressSearch use the same object if the values did not change. We can achieve that using useMemo on query.

Also please hide your first proposal to avoid confusion.

🎀 👀 🎀 C+ reviewed

cc @flodnv

@dukenv0307
Copy link
Contributor

@s77rt Thanks for your comment. I don't actually understand your mean. Why do we create the _request function only once? I don't see the author using useCallback for _request. Please check my video below:

Screen.Recording.2023-04-29.at.22.14.27.mp4

The _requests is always empty, but if I move it outside of the component, it's not empty. Please pardon me if I'm wrong something.

@s77rt
Copy link
Contributor

s77rt commented Apr 29, 2023

@dukenv0307

Why do we create the _request function only once?

To use the first initialised _requests array.

Actually we don't really create the function only once I said once just to make the idea clear. We do re-create it (debounceData) if certain conditions are met, and the bug here is that those conditions are wrongly always met so we always re-create the function thus it always point to the new empty array.

I don't see the author using useCallback for _request

We are using useMemo which is essentially what useCallback uses.

The _requests is always empty

I think my first points clarifies this.

Let me know if this is still unclear.

@dukenv0307
Copy link
Contributor

@s77rt Thanks so much. I totally understand your mean

@Pujan92
Copy link
Contributor

Pujan92 commented May 1, 2023

@Pujan92 Thanks for the proposal. Your RCA is correct. However I think the fix should be slightly altered, I think it's intended to use an object for the useMemo dependency so let's not modify that. But instead let's make our AddressSearch use the same object if the values did not change. We can achieve that using useMemo on query.

Makes sense to restrict the creation of new ref from our side. Thank @s77rt

@flodnv
Copy link
Contributor

flodnv commented May 1, 2023

Thanks @Pujan92 & @s77rt ! Go for it 🙃

@s77rt
Copy link
Contributor

s77rt commented May 1, 2023

@MelvinBot is OOO 😅.

📣 @Pujan92 You have been assigned to this job by @flodnv!
Please apply to this job in Upwork and leave a comment on the Github issue letting us know when we can expect a PR to be ready for review 🧑‍💻
Keep in mind: Code of Conduct | Contributing 📖

@Pujan92
Copy link
Contributor

Pujan92 commented May 2, 2023

@s77rt @flodnv PR is ready for review. Thanks!

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Daily KSv2 labels May 9, 2023
@melvin-bot melvin-bot bot changed the title [$1000] App displays fixed set of results for few seconds and closes when using symbols like (,@,?,# on first open in address1 field of home address [HOLD for payment 2023-05-16] [$1000] App displays fixed set of results for few seconds and closes when using symbols like (,@,?,# on first open in address1 field of home address May 9, 2023
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label May 9, 2023
@melvin-bot
Copy link

melvin-bot bot commented May 9, 2023

Reviewing label has been removed, please complete the "BugZero Checklist".

@melvin-bot
Copy link

melvin-bot bot commented May 9, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.12-0 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 2023-05-16. 🎊

After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

  • Merged PR within 3 business days of assignment - 50% bonus
  • Merged PR more than 9 business days after assignment - 50% penalty

@melvin-bot
Copy link

melvin-bot bot commented May 9, 2023

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:

  • [@s77rt] The PR that introduced the bug has been identified. Link to the PR:
  • [@s77rt] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
  • [@s77rt] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
  • [@s77rt] Determine if we should create a regression test for this bug.
  • [@s77rt] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
  • [@lschurr] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@s77rt
Copy link
Contributor

s77rt commented May 9, 2023

@lschurr
Copy link
Contributor

lschurr commented May 9, 2023

@dhanashree-sawant @Pujan92 @s77rt - please apply to the job in Upwork if you haven't already: https://www.upwork.com/jobs/~017c127888b5f727a7

@lschurr
Copy link
Contributor

lschurr commented May 15, 2023

It looks like the job posting expired - @dhanashree-sawant @Pujan92 @s77rt can you apply here: https://www.upwork.com/jobs/~019c7c7b19cc3a8141

@s77rt
Copy link
Contributor

s77rt commented May 15, 2023

@lschurr Applied.

@Pujan92
Copy link
Contributor

Pujan92 commented May 15, 2023

Applied!

@dhanashree-sawant
Copy link

Hi @lschurr, thanks I have applied too

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels May 15, 2023
@lschurr
Copy link
Contributor

lschurr commented May 16, 2023

Paid and closing!

@lschurr lschurr closed this as completed May 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Engineering
Projects
None yet
Development

No branches or pull requests