Upon editing a pass via the Creator Hub and clicking ‘Save Changes’, the site immediately displays a ‘Pass updated successfully’ message without waiting for the HTTP POST request to complete (like most other buttons do). This premature feedback does not reflect the actual status of the request and may mislead users if the request fails due to certain reasons (ex. rate limits, being logged out, API issues, etc) and the pass did not end up being updated. Additionally, the absence of a loading indicator may result in users exiting the page prematurely, believing the changes have been saved when, in fact, the request may not have been successful. This issue can lead to confusion and potential loss of data if the user navigates away from the page believing the changes have been saved when they may not have been. It is less of a bug and more just a result of somewhat sluggish programming.
Reproduction Steps:
- Login to the Creator Hub.
- Replace the two fields in the URL below with your experience and pass ID and go to it.
https://create.roblox.com/dashboard/creations/experiences/EXPERIENCE-ID/passes/PASS-ID/sales - Do something that would cause the request to fail, such as logging out of Roblox in another tab.
- Make changes to the pass details and click ‘Save Changes’.
- Observe that a ‘Pass updated successfully’ message will display, even though the HTTP request failed and none of the details were actually updated.
Expected Behavior:
The ideal UX would be for the ‘Save Changes’ button to display a loading icon on click and then once the HTTP request gets a response, it should either display a success or error message based on said response, which greatly varies from the current behavior.
Actual Behavior:
The UI immediately shows a ‘Pass Updated Successfully’ message upon clicking ‘Save Changes’, irrespective of whether the HTTP POST request has completed or if it will complete successfully.
Page URL: https://create.roblox.com/dashboard/creations/experiences/EXPERIENCE-ID/passes/PASS-ID/sales