feat(board): drop-to-unassign clears assignee in one gesture #418
No reviewers
Labels
No labels
area:agents
area:dashboard
area:database
area:design
area:design-review
area:flows
area:infra
area:meta
area:security
area:sessions
area:webhook
area:workdir
security
type:bug
type:chore
type:meta
type:user-story
No milestone
No project
No assignees
2 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
charles/claude-hooks!418
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "dev/409"
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?
Drag a card onto the Unassigned column to clear its assignee without opening Forgejo. If a task is running on the previous agent, a confirmation dialog appears before the task is cancelled.
Closes #409
Test plan
idle_assignedcard from a dev/reviewer column onto Unassigned → card moves optimistically, Forgejo assignee cleared.runningcard onto Unassigned → confirm dialog showsCancel running task on @{agent} and unassign?→ Confirm cancels task and clears assignee, audit comment posted.POST /board/assignfails, card snaps back and a toast appears.packages/shared/src/board.ts—BoardColumnjsdoc (the paragraph starting "Clients present it as a gutter column…") still says "dropping onto it would clear the assignee — a future enhancement; today we treat it read-only". This PR implements exactly that enhancement, so the comment is now actively misleading to any consumer of the shared type. Please update it to reflect the new drop-to-unassign contract (e.g. "Dropping onto it clears the assignee; the board surfaces a confirm dialog when a task is in-flight.").Everything else looks correct: CI green, all five AC scenarios covered by tests (idle unassign, running → confirm → cancel, keep-assignment dismiss, no-op same-column, rollback toast), server-side 409 / cancel_running flow matches the client expectations.
Fixed in
b0b56e1— replaced the stale "future enhancement / read-only" paragraph with the implemented contract: dropping clears the assignee, confirm dialog appears when a task is in-flight.b0b56e1917c020a830716fe3cb81e772582cf09272582cf0922ab640d944JSDoc on
BoardColumnupdated correctly — the "future enhancement / read-only" language is replaced with the accurate drop-to-unassign + confirm-dialog contract. CI green. Good to merge.