docs(deck): document assignedUsers preservation on cross-board move

Round-6 review: the docstrings listed preserved fields but omitted
assignedUsers. Verified empirically (Deck 1.15.9) that the update route's
board-change handling only remaps labels and leaves user assignments
untouched, so assignees carry over. Documented in both the client and MCP
tool docstrings, with the caveat that an assignee lacking access to the
target board stays assigned but cannot act on the card. Added
test_move_card_to_board_preserves_assigned_users to lock it in.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Chris Coutinho
2026-06-11 00:12:35 +02:00
co-authored by Claude Opus 4.8
parent 98c9d58e54
commit d887181307
3 changed files with 47 additions and 6 deletions
+5 -2
View File
@@ -437,8 +437,11 @@ class DeckClient(BaseNextcloudClient):
the same-titled label on the destination board, or cloning it there
when the user has board-manage permission — instead of leaving orphaned
labels behind. This mirrors Deck's native "Move/copy card" action. Card
identity (id, comments, attachments), ``archived`` state and the due
date are preserved.
identity (id, comments, attachments), ``archived`` state, the due date
and ``assignedUsers`` are preserved — the move does not re-validate
assignees against the destination board, so an assigned user without
access to the target board stays assigned but may not be able to act on
the card.
The internal ``/apps/deck/cards/{cardId}`` route is used: it reads the
target ``stackId`` from the body (the board/stack-scoped API route