I have a component that wraps around the Upload component and provides things like MaxFileSize and a unified styling. We also maintain our own list of files based on DTOs returned in the CompleteUpload event, that way we can display to users the files actually guaranteed to be safe in the server. To accomplish this, we use the Trigger Upload from Code example, allowing us to cancel upload in OnChangeUpload and not upload files if they are over a certain size.
I noticed odd behavior when clearing one file out of a list of uploaded files. Say you have 2 files selected and remove 1 with the x button. Most things work correctly: OnChangeUpload fires and has only the 1 remaining file, and the value of the Upload component has only the 1 file, and the component displays only the 1 file. However, at the api endpoint in the URL the Upload component has sent 2 files (not actually clearing 1 of them).

This is not only an unnecessary extra hit to the upload server and file system, but makes my DTO list unable to be parallel with the Upload component's value list.
This bug also happens when a user clears an item from the list before ever clicking upload, which can happen if they accidentally selected a file they do not want to upload to the server, making it a user privacy/security concern.
The anti-duplicate feature built into the Upload component is also seemingly affected by this. Meaning that trying to add back the removed file doesn't work, because it thinks it already has the file and won't fire change events or update the value of the Upload component.
