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 2024-07-24] [$250] [Critical] [UX Reliability] Input in the pushed in page moves around causing wrong message typed #43983

Closed
1 of 6 tasks
mountiny opened this issue Jun 19, 2024 · 51 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 External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors

Comments

@mountiny
Copy link
Contributor

mountiny commented Jun 19, 2024

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:
Reproducible in staging?:
Reproducible in production?:
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: @mountiny
Slack conversation: https://expensify.slack.com/archives/C05LX9D6E07/p1718793199252419

Action Performed:

Break down in numbered steps

There is many flows where this can be experienced. Wherever we push a page with input to autofocus. In this video I have:

  1. Go to workspace chat
  2. Submit expense
  3. Scan a receipt
  4. Click on Description row
  5. Start typing quickly

Expected Result:

Describe what you think should've happened

The message you type is correctly applied

Actual Result:

Describe what actually happened

It seems like after first of second character the cursor jumped to the front of the input

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?

  • Android: Native
  • Android: mWeb Chrome
  • iOS: Native
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

RPReplay_Final1718703554.mp4

he logs and traces are in slack convo
Add any screenshot/video evidence

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~013581c71c8dab48d3
  • Upwork Job ID: 1803380011113187610
  • Last Price Increase: 2024-07-03
Issue OwnerCurrent Issue Owner: @muttmuure
@mountiny mountiny added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Jun 19, 2024
@mountiny mountiny self-assigned this Jun 19, 2024
@mountiny mountiny moved this to CRITICAL in [#whatsnext] #quality Jun 19, 2024
Copy link

melvin-bot bot commented Jun 19, 2024

Triggered auto assignment to @muttmuure (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.

@hannojg
Copy link
Contributor

hannojg commented Jun 19, 2024

👋

@mountiny mountiny added the External Added to denote the issue can be worked on by a contributor label Jun 19, 2024
@melvin-bot melvin-bot bot changed the title [Critical] [UX Reliability] Input in the pushed in page moves around causing wrong message typed [$250] [Critical] [UX Reliability] Input in the pushed in page moves around causing wrong message typed Jun 19, 2024
Copy link

melvin-bot bot commented Jun 19, 2024

Job added to Upwork: https://www.upwork.com/jobs/~013581c71c8dab48d3

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Jun 19, 2024
Copy link

melvin-bot bot commented Jun 19, 2024

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

@hannojg
Copy link
Contributor

hannojg commented Jun 21, 2024

No new update yet here specifically. The problem basically being similar to the one in:

so we want to tackle that issue first

@melvin-bot melvin-bot bot added the Overdue label Jun 21, 2024
@hannojg
Copy link
Contributor

hannojg commented Jun 24, 2024

Still prioritising the aforementioned issue - do we want to put this one on hold for the other issue?

@jacobkim9881
Copy link
Contributor

@hannojg 😃 I found a cause for the issue but it seems the issue's root cause is from other repository. I would like to report.

@hannojg
Copy link
Contributor

hannojg commented Jun 24, 2024

Sure, feel free to share what you've found

@jacobkim9881
Copy link
Contributor

I found the issue noticeably decreased after off the props. And the props activate a component from other repository, which somebody can handle.

@jacobkim9881
Copy link
Contributor

Which decides a comp between 2:

const InputComponent = isMarkdownEnabled ? RNMarkdownTextInput : RNTextInput;

And RNMarkdownTextInput comp is from @expensify/react-native-live-markdown that is from other. Shame I couldn't PR!

@hannojg
Copy link
Contributor

hannojg commented Jun 24, 2024

Okay, so it seems that you pined the issue down to react-native-live-markdown. Great, thanks for the insight!

Two things I want to let you know about:

  • At Expensify we want to fix the problems "upstream" and actively contribute to the open source space. That means we don't stop when we found an issue in an open source library, letting it fix someone else. We contribute to the project, by figuring out what the problem is. So the next step here is to look into the code of react-native-live-markdown and fix the bug! 😊
  • react-native-live-markdown is a library owned and developed by expensify (in partnership with SWM). So you can think of react-native-live-markdown being another folder in the expensify app.

What I am trying to say is that we need to continue to investigate whats exactly causing the issue when using react-native-live-markdown. (This is something I have on my todo list now, as the issue is assigned to me).

@hannojg
Copy link
Contributor

hannojg commented Jun 24, 2024

What do you mean by

Shame I couldn't PR!

there is nothing stopping from you from checking out the code of react-native-live-markdown 😊

@jacobkim9881
Copy link
Contributor

Okay, so it seems that you pined the issue down to react-native-live-markdown

Yes. I assume we can find the root cause from there 😃 So we can continue to found the issue upstream! So we still have more chances to fix. That's nice!

react-native-live-markdown is a library owned and developed by expensify (in partnership with SWM). So you can think of react-native-live-markdown being another folder in the expensify app.

So it would be easy to get helps since it's partner shipped with SWM. That's cool! I found it in node_modules.

@jacobkim9881
Copy link
Contributor

there is nothing stopping from you from checking out the code of react-native-live-markdown 😊

Would like to continue 😄

@jacobkim9881
Copy link
Contributor

So I found performance better noticeably in the input tag without this comp:

https://github.com/Expensify/react-native-live-markdown/blob/d05065948bf36414705fe9148b25686adfab2181/src/MarkdownTextInput.tsx#L53-L55

which uses this:
https://github.com/Expensify/react-native-live-markdown/blob/d05065948bf36414705fe9148b25686adfab2181/src/MarkdownTextInputDecoratorViewNativeComponent.ts#L4

The only comp used is from react-native. I can continue though it's from another repo? 😄

@mountiny
Copy link
Contributor Author

Hey @jacobkim9881! thanks for help on this one. I recommend you to first read through the contributing guidelines we have for the Expensify App repo https://github.com/Expensify/App/blob/main/contributingGuides/CONTRIBUTING.md. We have a format for new proposals which you should use if you want to submit a proposal.

If the issue is in the https://github.com/Expensify/react-native-live-markdown/blob/d05065948bf36414705fe9148b25686adfab2181/src/MarkdownTextInputDecoratorViewNativeComponent.ts#L4 you can also submit a proposal here with clearly identifying the rootcause and how you propose to fix it. If that will be correct, you can do the work and get paid for it through Upwork. Thanks!

@jacobkim9881
Copy link
Contributor

Hey, @mountiny! Thank you for the guidance! Let me give proposals to issues in other time.

you can also submit a proposal here with clearly identifying the rootcause

I would like to submit proposals if I find the solution. Thanks for letting me know again!

@jacobkim9881
Copy link
Contributor

@mountiny I have a question. If I contribute in anyway, is there a chance I can get paid? Though I couldn't get paid, am happy to be helped in anyway!

@hannojg
Copy link
Contributor

hannojg commented Jul 5, 2024

Draft PR is here @mountiny

In this PR I bumped rn-live-markdown as SWM already merged the PR. Let me know if that works, because there is another PR for bumping rn-live-markdown first where a few bugs have been addressed (so that one needs to be merged first, I linked it in the PR)

@tomekzaw
Copy link
Contributor

tomekzaw commented Jul 5, 2024

cc-ing @Skalakid and @BartoszGrajdek here as one of the recently merged PRs to live-markdown turns out to cause a regression on web and they should have the context

@melvin-bot melvin-bot bot added Reviewing Has a PR in review Weekly KSv2 and removed Daily KSv2 labels Jul 8, 2024
@hannojg
Copy link
Contributor

hannojg commented Jul 10, 2024

Note: the fix was implemented in rn-live-markdown and we are waiting for this PR to be merged to fix it:

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Weekly KSv2 labels Jul 10, 2024
@melvin-bot melvin-bot bot changed the title [$250] [Critical] [UX Reliability] Input in the pushed in page moves around causing wrong message typed [HOLD for payment 2024-07-24] [$250] [Critical] [UX Reliability] Input in the pushed in page moves around causing wrong message typed Jul 17, 2024
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Jul 17, 2024
Copy link

melvin-bot bot commented Jul 17, 2024

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

Copy link

melvin-bot bot commented Jul 17, 2024

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:

  • @hannojg does not require payment (Contractor)
  • @mkhutornyi requires payment (Needs manual offer from BZ)

Copy link

melvin-bot bot commented Jul 17, 2024

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:

  • [@mkhutornyi] The PR that introduced the bug has been identified. Link to the PR:
  • [@mkhutornyi] 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:
  • [@mkhutornyi] 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:
  • [@mkhutornyi] Determine if we should create a regression test for this bug.
  • [@mkhutornyi] 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.
  • [@muttmuure] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@mvtglobally
Copy link

Issue not reproducible during KI retests. (First week)

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Jul 23, 2024
Copy link

melvin-bot bot commented Jul 24, 2024

Payment Summary

Upwork Job

  • Contributor: @hannojg is from an agency-contributor and not due payment
  • ROLE: @mkhutornyi paid $(AMOUNT) via Upwork (LINK)

BugZero Checklist (@muttmuure)

  • I have verified the correct assignees and roles are listed above and updated the neccesary manual offers
  • I have verified that there are no duplicate or incorrect contracts on Upwork for this job (https://www.upwork.com/ab/applicants/1803380011113187610/hired)
  • I have paid out the Upwork contracts or cancelled the ones that are incorrect
  • I have verified the payment summary above is correct

@melvin-bot melvin-bot bot added the Overdue label Jul 25, 2024
@mountiny
Copy link
Contributor Author

@mkhutornyi can you please summarize the payment here? which PRs did you review?

Copy link

melvin-bot bot commented Jul 26, 2024

@hannojg, @mountiny, @muttmuure, @mkhutornyi Whoops! This issue is 2 days overdue. Let's get this updated quick!

@mkhutornyi
Copy link
Contributor

I didn't review any PR linked to this issue. I think we can just close this.

@melvin-bot melvin-bot bot removed the Overdue label Jul 29, 2024
@github-project-automation github-project-automation bot moved this from CRITICAL to Done in [#whatsnext] #quality Jul 29, 2024
@BartoszGrajdek BartoszGrajdek moved this from CRITICAL to Done in Live Markdown Jul 31, 2024
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 External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors
Projects
Status: Done
Development

No branches or pull requests

8 participants