Skip to content

Internal links in Rich Workspace README.md break after target file rename (persistent across browsers, fixed only by renaming back) #8555

@LostinSpacetime

Description

@LostinSpacetime

Describe the bug
When a Rich Workspace README.md contains an internal link to a file in the same folder, clicking the link from the rendered preview at the top of the folder view fails with "Datei existiert nicht mehr" / "File does not exist anymore" after the linked file has been renamed.
The link only breaks in this specific click path. The same link works correctly when:

The README.md is opened in the Text editor and the link is clicked from there
The file is opened via its icon in the file list

This indicates the Rich Workspace renderer resolves internal links by stored path/filename rather than by fileId, while the editor and file list use fileId-based resolution.

To Reproduce
Steps to reproduce the behavior:

  1. In a folder, create README.md with Rich Workspace and add an internal link to another file in the same folder (e.g. target.md)
  2. Verify the link works when clicked from the Rich Workspace preview
  3. Rename target.md to target-new.md
  4. Reload the folder view (or open in another browser)
  5. Click the link in the Rich Workspace preview → "Datei existiert nicht mehr"
  6. Click the link from inside the Text editor (open README.md) → works correctly
  7. Rename the file back to target.md → link in Rich Workspace works again

Expected behavior
Internal links should resolve by fileId and continue to work across renames, consistent with how internal links behave when clicked from inside the Text editor or via the file icon.

Server details:

  • Nextcloud version: 33.0.3
  • PHP Version: 8.3
  • Database: MariaDB 11.4.10

Client details:
Tested on several OSs and browsers

Nextcloud log (data/nextcloud.log)

No errors logged.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions