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

[$1000] Closed accounts aren't removed from workspace members list #20264

Closed
6 tasks done
kbecciv opened this issue Jun 6, 2023 · 50 comments
Closed
6 tasks done

[$1000] Closed accounts aren't removed from workspace members list #20264

kbecciv opened this issue Jun 6, 2023 · 50 comments
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering Improvement Item broken or needs improvement. Internal Requires API changes or must be handled by Expensify staff Monthly KSv2

Comments

@kbecciv
Copy link

kbecciv commented Jun 6, 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. Invite new user (that doesn't have a NewDot account)
  2. Valifdate this user, then login with this new user account in ND in private mode
  3. Close this new user account
  4. Switch to Desktop App with admin account and check members list

Expected Result:

  1. Closed account was removed from the members list

Actual Result:

  1. Closed accounts are still displayed in the members list

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.3.24.4

Reproducible in staging?: Yes

Reproducible in production?: No

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: Any additional supporting documentation

Closed account

Bug6081613_ws-member-closed-account.mp4

Member's list

Bug6081613_ws-members-list.mp4

Expensify/Expensify Issue URL:

Issue reported by: Applause - Internal Team

Slack conversation:

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~0190db70a7a3eb2f5b
  • Upwork Job ID: 1672152459568193536
  • Last Price Increase: 2023-06-30
@kbecciv kbecciv added the DeployBlockerCash This issue or pull request should block deployment label Jun 6, 2023
@OSBotify
Copy link
Contributor

OSBotify commented Jun 6, 2023

👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open StagingDeployCash deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

  1. Identify the pull request that introduced this issue and revert it.
  2. Find someone who can quickly fix the issue.
  3. Fix the issue yourself.

@melvin-bot
Copy link

melvin-bot bot commented Jun 6, 2023

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

@Beamanator
Copy link
Contributor

Hopinggggg this isn't due to my PR: https://github.com/Expensify/Web-Expensify/pull/37723

@Julesssss let me know if you want help investigating

@Julesssss Julesssss removed the DeployBlockerCash This issue or pull request should block deployment label Jun 6, 2023
@Julesssss
Copy link
Contributor

Regardless it doesn't seem like a blocker. Testing locally now.

@Julesssss
Copy link
Contributor

It seems very weird that this only occurs on Desktop staging:

  • Desktop prod: ✅
  • Desktop staging: ❌ -- I can reproduce
  • Web staging: ✅
  • Web prod: ✅

@Beamanator I doubt your changes would lead to this Desktop only issue, right?

@Beamanator
Copy link
Contributor

Ooh ya I have no idea how mu changes would only cause this on desktop....

@roryabraham
Copy link
Contributor

I think the problem is that desktop deploys are broke

@Julesssss Julesssss added Daily KSv2 Improvement Item broken or needs improvement. and removed Hourly KSv2 labels Jun 6, 2023
@Julesssss
Copy link
Contributor

Yep, good call:

Web version: v1.3.24-4
Desktop version: v1.3.24-3

Definately not a blocker, but I'll keep this open until I can test against the Desktop build

@roryabraham
Copy link
Contributor

1.3.24-4 successfully deployed on desktop. 5th time's the charm! Looks like this is NAB but let's retest and close if not reproducible.

@roryabraham
Copy link
Contributor

@kbecciv Can we please retest?

@Julesssss
Copy link
Contributor

Julesssss commented Jun 7, 2023

I'm going to close this myself after retesting Desktop on v1.3.25-1

Screenshot 2023-06-07 at 09 51 06

@kbecciv
Copy link
Author

kbecciv commented Jun 7, 2023

Hello @roryabraham! Do you want QA team to re-test this issue? Let me know

@Julesssss
Copy link
Contributor

Hi @kbecciv, yes please do!

@kbecciv
Copy link
Author

kbecciv commented Jun 7, 2023

Checking

@kbecciv
Copy link
Author

kbecciv commented Jun 7, 2023

@Julesssss Results below:

Member's list is fixed

20264.Desktop.mp4

Closed account is NOT fixed

20264.closed.account.mp4

@Julesssss
Copy link
Contributor

Thanks @kbecciv, is that just Desktop or all platforms?

@Julesssss Julesssss reopened this Jun 7, 2023
@kbecciv
Copy link
Author

kbecciv commented Jun 7, 2023

Tester checked only Desktop

@Julesssss
Copy link
Contributor

Could you please test all platforms? I think it was only reported on Desktip due to the release missmatch.

@melvin-bot melvin-bot bot added the Overdue label Jun 9, 2023
@twisterdotcom twisterdotcom added the Bug Something is broken. Auto assigns a BugZero manager. label Jun 28, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 28, 2023

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

@Expensify Expensify deleted a comment from melvin-bot bot Jun 28, 2023
@Julesssss
Copy link
Contributor

Bumping @aimane-chnaif for a review of this proposal. Or let me know if I should reassign 👍

@aimane-chnaif
Copy link
Contributor

reviewing today

@melvin-bot
Copy link

melvin-bot bot commented Jun 30, 2023

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@aimane-chnaif
Copy link
Contributor

BhuvaneshPatil's proposal is not complete.
Need explanation of how to remove accountID key of the closed account using permal link.
Still open for proposals.

@BhuvaneshPatil
Copy link
Contributor

@aimane-chnaif

My idea for implementing that is to modify the closeAccount() in User.js.
And make something similar to this -

function closeAccount(message) {
    // Note: successData does not need to set isLoading to false because if the CloseAccount
    // command succeeds, a Pusher response will clear all Onyx data.
    API.write(
        'CloseAccount',
        {message},
        {
            optimisticData: [
                {
                    onyxMethod: Onyx.METHOD.MERGE,
                    key: ONYXKEYS.FORMS.CLOSE_ACCOUNT_FORM,
                    value: {isLoading: true},
                },
                {
                    onyxMethod: Onyx.METHOD.MERGE,
                    key: ONYXKEYS.PERSONAL_DETAILS_LIST,
                    value: {
                        [currentUserAccountID]: undefined,
                    },
                },
            ],
            successData: [
                {
                    onyxMethod: Onyx.METHOD.MERGE,
                    key: ONYXKEYS.PERSONAL_DETAILS_LIST,
                    value: {
                        [currentUserAccountID]: undefined,
                    },
                },
            ],
            failureData: [
                {
                    onyxMethod: Onyx.METHOD.MERGE,
                    key: ONYXKEYS.FORMS.CLOSE_ACCOUNT_FORM,
                    value: {isLoading: false},
                },
            ],
        },
    );
}

But I think there are some changes that need to be done on backend as well.

Because for update avatar - this is what response looks like
image

But for close account -
image

The response doesn't contains successData or the key that we have changed.

My guess is that there are some changes that we need to do on backend(expensify team can confirm that), because there is something mentioned in the comments for closeAccount().

What's your thought @aimane-chnaif

@melvin-bot melvin-bot bot added the Overdue label Jul 3, 2023
@muttmuure
Copy link
Contributor

@Julesssss do you mind confirming if @BhuvaneshPatil's theory about the backend changes is correct

@aimane-chnaif could you confirm if the front end fix proposal looks complete now

@melvin-bot melvin-bot bot removed the Overdue label Jul 3, 2023
@aimane-chnaif
Copy link
Contributor

I think this should be fully fixed in backend. So when close account, need to remove from all workspaces and rooms where user had joined.
After closing account, user is signed out and redirected to login page. So no need to fix frontend.
@BhuvaneshPatil please explain if you disagree and still need frontend fix.

@Julesssss
Copy link
Contributor

So when close account, need to remove from all workspaces and rooms where user had joined.

I agree, but as this would notify all accounts within a workspace/room and because close account is such a rare action I'm not even sure we should fix this. Leaning towards just closing it, what do you think @muttmuure?

@melvin-bot
Copy link

melvin-bot bot commented Jul 4, 2023

@twisterdotcom @Julesssss @muttmuure @aimane-chnaif this issue is now 4 weeks old and preventing us from maintaining WAQ, can you:

  • Decide whether any proposals currently meet our guidelines and can be approved as-is today
  • If no proposals meet that standard, please take this issue internal and treat it as one of your highest priorities
  • If you have any questions, don't hesitate to start a discussion in #expensify-open-source

Thanks!

@melvin-bot melvin-bot bot added Internal Requires API changes or must be handled by Expensify staff and removed 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 labels Jul 4, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 4, 2023

Current assignee @aimane-chnaif is eligible for the Internal assigner, not assigning anyone new.

@twisterdotcom
Copy link
Contributor

twisterdotcom commented Jul 4, 2023

but as this would notify all accounts within a workspace/room and because close account is such a rare action I'm not even sure we should fix this.

I disagree. Just because something is rare, does not mean we shouldn't fix it. Ideally, every case is polished, edge or not. If we think this does need to be Internal then we should make it that, and prioritise it accordingly. That sounds like what we'll do.

If you agree @Julesssss, let's just leave you assigned and make it a Monthly?

@twisterdotcom twisterdotcom added Monthly KSv2 and removed Daily KSv2 labels Jul 4, 2023
@Julesssss
Copy link
Contributor

Sure, but it's probably going to just sit in my backlog for the rest of the year tbh.

@mvtglobally
Copy link

Issue not reproducible during KI retests. (First week)

@melvin-bot melvin-bot bot added the Overdue label Aug 7, 2023
@twisterdotcom
Copy link
Contributor

If this is not reproducible, can we close?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering Improvement Item broken or needs improvement. Internal Requires API changes or must be handled by Expensify staff Monthly KSv2
Projects
None yet
Development

No branches or pull requests

10 participants