Commit graph

13 commits

Author SHA1 Message Date
043d8ddc8c feat(board): add cards as owner, request features as client 2026-09-16 11:06:06 +02:00
07656a5bc7 feat(board): open a card without breaking drag 2026-09-16 11:05:33 +02:00
c4a8ad2860 feat(card): detail page with checklist, comments and history 2026-09-16 11:04:48 +02:00
0b60c791b5 feat(card): activity timeline visible to both roles 2026-09-16 11:00:02 +02:00
e567093b99 feat(card): comment thread with role-appropriate write path 2026-09-16 10:59:54 +02:00
dd9cbe6c24 feat(card): checklist with progress and owner editing 2026-09-16 10:59:45 +02:00
f082670f8a fix(board): guard optimistic move against a refresh landing mid-save
activeId clears the instant the pointer is released, so gating the
focus-refresh on it alone left a window between drop and server
confirmation where a refresh could overwrite the optimistic position with
stale state and the card would appear to snap back. Tracks a separate
saving flag, and reverts on a thrown fetch as well as a non-ok response.

Also corrects a comment: sensors are created unconditionally; what keeps a
client manager from dragging is that they never render DndContext.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-16 10:51:35 +02:00
bb39519801 feat(board): refresh the board when the window regains focus 2026-09-16 10:03:41 +02:00
972d45d38b feat(board): owner drag and drop with optimistic persistence 2026-09-16 10:03:22 +02:00
f4568e4745 feat(board): column, card tile and client control presentation 2026-09-16 10:02:29 +02:00
2eda3e7a39 feat(shell): floating panel layout with labelled icon rail 2026-09-16 10:01:45 +02:00
2949fdabb7 feat(ui): pill, icon button and dropdown primitives 2026-09-16 10:00:20 +02:00
a839c4f5ad feat(theme): light/dark/system toggle with no first-paint flash 2026-09-16 09:59:46 +02:00