payloadcms / payloadcms/payload
Upload UI shows “successfully saved X files” but only a subset are actually stored
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 44.8k
- Forks
- 4.2k
- Avg merge
- 2d 21h
- Merged PRs (30d)
- 53
Description
Description
While uploading multiple video files (9 videos) to a PayloadCMS Media collection, the UI displayed the toast message “successfully saved 9 files”, but only 2 files actually appeared in the collection after the upload completed.
There was no error message or failed-upload indication, so the user assumed all files were saved. However, the remaining 7 videos never showed up.
This creates misleading feedback, because the UI reports that all files were successfully saved even when they were not.
Steps to Reproduce
-
Go to a Media upload field (in this case: a carousel block containing videos).
-
Select multiple large video files (total 9).
-
Upload them simultaneously.
-
Payload shows:
“successfully saved 9 files”
-
Only 2 of the uploaded files appear in the collection.
Expected Behavior
-
Payload should only show a success message for the files that actually completed successfully.
-
If some files fail:
- Show an error message per file, or
- Show a summary like “2 succeeded, 7 failed”.
Actual Behavior
- UI reports full success even when several files did not upload.
- No error or retry option is provided.
- Files silently fail.
Additional Notes
This happened when uploading multiple video files at once. File size might be contributing, but the main issue is the false positive success message, which misleads users into thinking everything worked.
It would be great if the upload UI could:
- Display accurate per-file upload status
- Surface any errors instead of silently dropping failed uploads
Environment Info
payload": 3.64.0
next": 15.5.4
node: 22
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at the Media upload field in the admin UI and reproduce the report with nine large video files uploaded simultaneously. Trace how the UI determines upload completion and compare it with the files that appear in the collection; done means partial failures are surfaced accurately with per-file errors or a succeeded-versus-failed summary.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- nextjs, typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100