From 737467f9966f25a8e7cc9775da49177ceb574433 Mon Sep 17 00:00:00 2001 From: Bryan Van Deusen Date: Thu, 28 May 2026 08:22:54 -0400 Subject: [PATCH] =?UTF-8?q?feat(plan):=20REST=20task=20routes=20=E2=80=94?= =?UTF-8?q?=20kind=20on=20create=20+=20list?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/fabledassistant/routes/tasks.py | 3 +++ tests/test_routes_tasks_kind.py | 17 +++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 tests/test_routes_tasks_kind.py diff --git a/src/fabledassistant/routes/tasks.py b/src/fabledassistant/routes/tasks.py index 91d7b2b..99883a9 100644 --- a/src/fabledassistant/routes/tasks.py +++ b/src/fabledassistant/routes/tasks.py @@ -57,6 +57,7 @@ async def list_tasks_route(): project_id = request.args.get("project_id", type=int) no_project = request.args.get("no_project", "").lower() == "true" + kind = request.args.get("kind") or None due_before = parse_iso_date(request.args.get("due_before"), "due_before") if isinstance(due_before, tuple): @@ -75,6 +76,7 @@ async def list_tasks_route(): due_before=due_before, due_after=due_after, project_id=project_id, + task_kind=kind, no_project=no_project, sort=sort, order=order, @@ -133,6 +135,7 @@ async def create_task_route(): milestone_id=data.get("milestone_id"), parent_id=data.get("parent_id"), recurrence_rule=recurrence_rule if recurrence_rule is not _UNSET else None, + task_kind=data.get("kind", "work"), ) text = f"{task.title}\n{task.body}".strip() if task.body else (task.title or "") if text: diff --git a/tests/test_routes_tasks_kind.py b/tests/test_routes_tasks_kind.py new file mode 100644 index 0000000..bd06220 --- /dev/null +++ b/tests/test_routes_tasks_kind.py @@ -0,0 +1,17 @@ +import inspect + + +def test_create_note_accepts_task_kind(): + from fabledassistant.services.notes import create_note + assert "task_kind" in inspect.signature(create_note).parameters + + +def test_list_notes_accepts_task_kind(): + from fabledassistant.services.notes import list_notes + assert "task_kind" in inspect.signature(list_notes).parameters + + +def test_tasks_blueprint_registered_in_app(): + from fabledassistant.app import create_app + app = create_app() + assert "tasks" in app.blueprints