Claude: changes for issue #157 #158
No reviewers
Labels
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Grandiras/Ponente!158
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "claude/issue-157"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #157.
🤖 Reviewing this PR — follow along in the action run; the reply will link the full session transcript.
📜 Live transcript — updating every ~5 minutes while the task runs.
✅ Verdict: approve — no blocking issues found.
Solid, well-scoped implementation of issue #157 (everybody may set a due date and their own assignment on any visible card; the rest of the card stays the author's).
What I checked:
CardPermissions.CanSetAssignees's symmetric-difference logic is correct:moved = current XOR desired, allowed only if every DID inmovedis the actor's own. Verified against all the new unit tests (add self, remove self, no-op save, non-self moves rejected, author/admin bypass) and the logic matches.MemberService.SetCardAssigneesAsyncnow readsexistingbefore callingCardPermissions.RequireAssignees, which is required since the check needs both the stored and desired lists — correctly reordered.CardService.SetDueDateAsyncandCardPermissions.CanSetDueDatedon't re-check board membership, only identity (IsSomebody) — but this matches the pre-existing, explicitly documented design (CardPermissions's own remarks: board access is answered by the page before a card is ever reached,CardServicemethods don't re-derive it).UpdateCardAsyncalready worked this way, so this isn't a new gap introduced by the PR.BoardPage.SaveCard/Calendar.SaveCardcorrectly branch: editable → full update + tags; read-only → due date only; assignees always attempted (the permission call inside decides). Tags are now correctly gated on_modalCanEditwhere they previously ran unconditionally.AssigneePicker'sOnlyDid/Shown/CanTogglenarrowing looks right: shows people currently on the card plus the viewer's own (always toggleable) chip, with the empty-stringOnlyDiddegenerate case documented and safe (matches no DID).CardModal.OnSaveClick's title-required check is now correctly gated onCanEdit(no_titleInputexists to focus otherwise).assignees.empty,modal.assignees.none,modal.due.clear,modal.cancel,modal.close) all pre-exist inLocaleService.cs;modal.closeremains used elsewhere so nothing is orphaned by the footer button change. Changelog entries added in both locales as required.boards-and-permissions.md,calendar.md,ui.md) are updated consistently with the code changes, including the footer/Cancel-never-becomes-Close behavior and the split-save rationale.No correctness or security issues found.
⏱ 1m 57s · 10 turns · tokens: 51.2k in / 10.3k out (+578.9k cache-read)
📜 Full session transcript