feat(tasks): kanban board with To Do / In Progress / Done columns

- add a `status` field to tasks (backend schema/validation/service/types
  + frontend types), kept in sync with the legacy `done` flag
- migration 0017 adds the column and backfills done tasks to "done"
- rewrite the tasks page as a three-column board: per-column add buttons,
  draggable cards, and a status mover in the detail sheet

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Khalid Abdi
2026-06-15 18:35:48 +03:00
parent 6e5598262e
commit 6fdb7bdb46
11 changed files with 3444 additions and 144 deletions
+3
View File
@@ -2,6 +2,8 @@
// `lib/tasks.ts` Task type. Scoped to the active clinic (a shared care-team
// to-do board). `patient` is an optional free-text reference for context.
export type TaskPriority = "high" | "medium" | "low";
// Board column the task sits in. `done` mirrors `status === "done"`.
export type TaskStatus = "todo" | "in_progress" | "done";
export type Task = {
id: string;
@@ -11,6 +13,7 @@ export type Task = {
assigneeRole: string | null;
due: string;
priority: TaskPriority;
status: TaskStatus;
patient: string | null;
notes: string | null;
done: boolean;