A4A: avoid multiple agency creations when reloading signup page #98171
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Related to pfSQfS-DM-p2
Proposed Changes
Currently, signup can work as follows:
/signup
where user fills the form and it got saved tolocalStorage
/signup/finish
where we check if there's data in local storage and submitmutation
to create agency.The problem now in this flow due to a corner case, where user can reload
/signup/finish
multiple times, thus submittingmutation
multiple times.To fix this, we will save a timestamp to localStorage at the time of mutation. Then, if page is reloaded we will not send any mutation within 1 minute of the original mutation. Instead, we will
fetch
the agency status every 5 seconds. If after 1 minute still no agency created, mutation will be done again.Why are these changes being made?
Testing Instructions
Incognito window
with/signup
path/signup/finish
refresh the page multiple timesGET /agency
requests.Pre-merge Checklist