Skip to content

card attachments are not accessible after deck:transfer-ownership - #8684

Open
smarinier wants to merge 1 commit into
nextcloud:mainfrom
smarinier:fix/8681_card_attachments_after_transfer_ownership
Open

smarinier wants to merge 1 commit into
nextcloud:mainfrom
smarinier:fix/8681_card_attachments_after_transfer_ownership

Conversation

@smarinier

Copy link
Copy Markdown

Summary

Deck creates attachment shares with the target /{DECK_PLACEHOLDER}/<filename>. For each recipient, OCA\Deck\Sharing\Listener::overwriteMountPoint() replaces the placeholder with the recipient's attachment folder when files_sharing listens to VerifyMountPointEvent.

Since Nextcloud 33, files_sharing only verifies a recipient's share mount points (ShareRecipientUpdater) when it is told that the recipient's access changed, through OCA\Files_Sharing\Event\UserShareAccessUpdatedEvent (or a share created, moved or deleted event). Deck already dispatches this event when:

  • an ACL is created or deleted (AclCreatedRemovedListener),
  • a board is moved to the trash or restored (BoardService::delete() / deleteUndo()).

BoardService::transferBoardOwnership() does not dispatch it:

  • the owner is changed directly with BoardMapper::transferOwnership(),
  • the new owner's existing ACL is removed with AclMapper::deleteParticipantFromBoard(), which dispatches no event.

As a result, the new owner gets access to the attachment shares, but their mount points are never verified. The shares are mounted under the raw /{DECK_PLACEHOLDER}/… target, a folder that does not exist. With --remap, the previous owner also loses access to the board without the event, so their share mounts are stale as well.

TODO

  • Backport NC35, NC34, NC33

Checklist

  • Code is properly formatted
  • Sign-off message is added to all commits
  • Tests (unit, integration, api and/or acceptance) are included
  • [not required] Documentation (manuals or wiki) has been updated or is not required (n

🤖 AI (if applicable)

  • The content of this PR was partly or fully generated using AI (N/A)

…ner after occ deck:transfer-ownership (send UserShareAccessUpdatedEvent event to the source and target users)

Assisted-by: ClaudeCode:Opus 5.5

Signed-off-by: Sebastien Marinier <seb@smarinier.net>
@smarinier
smarinier force-pushed the fix/8681_card_attachments_after_transfer_ownership branch from dabedef to 7b772a2 Compare November 6, 2026 17:26

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Card attachments are not accessible to the new owner after occ deck:transfer-ownership

1 participant