Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.46k stars 2.81k forks source link

[$250] Netsuite - App navigates to the first flow when refreshing the page while adding custom list #49986

Open lanitochka17 opened 1 week ago

lanitochka17 commented 1 week ago

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.42-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: N/A Email or phone of affected tester (no customers): applausetester+shsb22tet1122@applause.expensifail.com Issue reported by: Applause - Internal Team

Action Performed:

  1. Log in to new dot with any account
  2. Create a new workspace > Enable "Accounting" in the "More features" page
  3. Navigate to "Accounting" > Connect to NetSuite and upgrade the workspace to Control > Enter credentials and finish
  4. After the connection syncs go to Import > Custom Lists > Add custom list
  5. Click on "Name" and select any of the options > Next > Type any ID name > Next
  6. Before making any selection refresh the page

Expected Result:

App stays in the current flow ("How should this custom list be displayed in Expensify?")

Actual Result:

App navigates to the first step of the flow ("Choose a custom list" step)

Workaround:

Unknown

Platforms:

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

Screenshots/Videos

Add any screenshot/video evidence

https://github.com/user-attachments/assets/7ae9a867-ea6e-47f9-b669-c965e017dd74

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021842185001478860112
  • Upwork Job ID: 1842185001478860112
  • Last Price Increase: 2024-10-04
Issue OwnerCurrent Issue Owner: @rayane-djouah
melvin-bot[bot] commented 1 week ago

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

lanitochka17 commented 1 week ago

@sonialiap FYI I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors

melvin-bot[bot] commented 5 days ago

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

melvin-bot[bot] commented 5 days ago

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

allgandalf commented 4 days ago

Proposal

Please re-state the problem that we are trying to solve in this issue.

Form navigates to first step on refresh

What is the root cause of that problem?

There are actually 2 bug in the flow:

https://github.com/Expensify/App/blob/99f280b0edae75ff59614a1c5e98c47b39800aa5/src/pages/workspace/accounting/netsuite/import/NetSuiteImportCustomFieldNew/NetSuiteImportAddCustomListPage.tsx#L155

So even if we fix 1, there would be a regression that values won't be saved once refreshed. So we need to fix both the bugs here.

What changes do you think we should make in order to solve the problem?

Like the refactor we did in :

We need to refactor the full form to save draft values of the form as well as save the current state of the form (sub-step) using the util getInitialSubstep. We would also need to refactor NetSuiteImportAddCustomSegmentPage as both use the same substeps. and also update any similar places where this bug exists

[!NOTE] The scope of work is vast as this would be full form refactor i.e. adding draft states to Onyx, adding draft values to FORM input of both NetSuiteImportAddCustomSegmentPage and NetSuiteImportAddCustomListPage, creating new utils, changing the form structure completely, creating related types files. So i think that for this issue a fair compensation would be $750 considering the amount of work involved

What alternative solutions did you explore? (Optional)

melvin-bot[bot] commented 2 days ago

@sonialiap, @rayane-djouah Whoops! This issue is 2 days overdue. Let's get this updated quick!

rayane-djouah commented 2 days ago

@allgandalf's proposal looks good to me

:ribbon::eyes::ribbon: C+ reviewed

melvin-bot[bot] commented 2 days ago

Triggered auto assignment to @danieldoglas, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

allgandalf commented 2 days ago

thanks @rayane-djouah , @danieldoglas please take a look at the note, i have explained the scope of work and requested an increase in bounty, please consider that request 😄

rayane-djouah commented 2 days ago

I agree that a payment increase would be fair given the scope of work

allgandalf commented 14 hours ago

bump @danieldoglas for assignment

danieldoglas commented 11 hours ago

I missed this issue, my bad. I've read the proposal and I initially agree with it, but I'll refer to @yuwenmemon since he was one of the people working on this functionality before moving on.