nextcloud / nextcloud/richdocuments
Local file uploads do not create new versions when a Collabora WOPI lock is active (silent data loss, no user warning)
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 453
- Forks
- 147
- Avg merge
- 14h 54m
- Merged PRs (30d)
- 83
Description
Steps to reproduce
- Open any Office file (.odt, .ods, .odp etc.) in Collabora Online via Nextcloud.
- While Collabora keeps the document open (WOPI LOCK active), download the same file locally.
- Edit the file offline using LibreOffice or any desktop editor.
- Upload the edited file back to Nextcloud (via web UI drag&drop or “Replace file”).
- Observe that:
- No new file version is created.
- The uploaded file is silently ignored or overwritten.
- No conflict warning is shown to the user.
- Local changes are effectively lost.
Expected behavior
- Nextcloud should either:
- Create a new file version on upload, or
- Show a clear warning/conflict message that the file is currently locked by Collabora, or
- Block the upload and inform the user.
Actual behavior
- The upload appears to succeed, but:
- No new version is generated.
- The uploaded offline changes are discarded.
- No conflict or warning is shown.
- The user is not informed that the file is currently locked by Collabora.
- This leads to silent data loss and makes offline editing unsafe.
Why this is a critical issue
- WOPI locks are completely invisible to the user in both the web UI and the desktop sync client.
- Users have no way of knowing that Collabora is still holding a lock.
- Replacing a file while a WOPI lock is active:
- does not create a version,
- does not create a conflict file,
- does not show any warning,
- and silently discards user data.
This is extremely problematic in real-world workflows where users switch between online (Collabora) and offline (LibreOffice) editing.
Additional information
-
This issue has been discussed and reproduced here: https://chatgpt.com/share/691f49ac-54d8-800f-83c3-60cf8c100183
-
The behavior occurs regardless of:
- Web UI upload
- Desktop sync client upload
- Drag & drop replacement
- Browser session or platform
Environment
- Nextcloud version: (please fill in)
- richdocuments version: (please fill in)
- Collabora Online (CODE/COOL) version: (please fill in)
- Installation: Docker / Podman / native (please fill in)
- Browser: (please fill in)
- Client OS: (please fill in)
Logs
There are no visible errors in the browser or Nextcloud UI. Upload operations return HTTP 200, but the file is not replaced and no version is created.
Summary
When a Collabora WOPI lock is active, Nextcloud silently ignores replaced files and skips version creation. Users receive no warning, causing silent data loss and breaking the expected versioning behavior.
This should at minimum trigger:
- a warning message,
- a conflict, or
- a versioned file.
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
No source files, tests, or entry points are identified. Reproduce the upload while a Collabora WOPI lock is active, then trace the upload, locking, and versioning paths; done means the change is either versioned or produces a clear conflict or blocking warning without silently discarding data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript
- Domain
- backend, frontend
- Issue type
- Bug
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100