-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Support self-service account closures for Atomic sites #65636
Conversation
Here is how your PR affects size of JS and CSS bundles shipped to the user's browser: Sections (~115 bytes removed 📉 [gzipped])
Sections contain code specific for a given set of routes. Is downloaded and parsed only when a particular route is navigated to. Legend What is parsed and gzip size?Parsed Size: Uncompressed size of the JS and CSS files. This much code needs to be parsed and stored in memory. Generated by performance advisor bot at iscalypsofastyet.com. |
@mpkelly When you deactivate the plan from an Atomic site, we initiate an async process to revert the site back to Simple. That process takes some time, so you won't be able to immediately close your account until the revert has been completed. We explored ways to decrease that waiting time under some scenarios (e.g. if you simply want to delete a site or your account) by skipping the lossless import during the revert process. D69024-code added the ability to set a |
Thanks, @mmtr. I am not sure about the UX for skipping the import step. We could include a checkbox (or something), but it might not always get checked when the user plans to close their account. My view is that if they choose to close it, it should always work regardless of any pending jobs that might be running to remove the Atomic site. We might not be able to complete the closure internally but externally can still show the account as closed. I think it leads to a broader UX discussion about why the user needs to remove their purchases manually before closing their account, and why closing an account isn't just a one-click operation with some feedback + confirmation steps like we currently have. Is this something that has been discussed before also? |
Totally agree. One idea is to maybe trigger an async job after the (externally perceived) account closure to remove any Atomic site that is in the process of being reverted. Once all sites have been removed, the same async job can proceed with the (internal) account closure.
I couldn't find anything after doing a quick MGS search, but I might have missed something. |
After some discussions with @daledupreez about this, I will make two separate PRs.
This seemed to be the "best" solution after reviewing the async code on the server, which is not straightforward to change and will require more coordination and input. I will do these two PRs on new clean branches and create new tickets for each. |
Also, as a further clarification to the above, we will also change the logic so that we handle the following two cases separately:
The thinking here is that we can at least get users to remove their purchases as an important first step in the process, and when they get back to this page, they will be in one of the following situations:
The second PR will make it possible for the plan cancellation flow to trigger a quicker revert, reducing the likelihood of a revert taking a long time. |
Fixes #57399
As per @mmtr's comment here, we should allow users with Atomic sites to close them (after removing purchases).
Proposed Changes
Remove the
isAtomic
-style logic from the Close Account page. This simplifies the logic so there are now only two scenarios:Testing Instructions
I have manually tested this and it worked albeit after a manual refresh. I tried to setup a fresh user and ran into some issues where the user account had purchases disabled.
Pre-merge Checklist