{% extends "dashboard/base.html" %} {% from "partials/_macros.html" import status_pill, pill, empty_state, info_toggle %} {% from "partials/_list_chrome.html" import list_controls %} {% block page %}
Coordination tasks claimable by sessions; grouped by status.
Tasks are units of work that any session can claim and execute. They flow through four states: available → in_progress → done, with blocked as an off-ramp when a task can't proceed.
Tasks are workspace-scoped — a session only sees tasks for workspaces it can read (Layer-2 visibility). Click any card to open the full task with body, history, and claim state.
{% endcall %} {{ list_controls( '/dashboard/tasks', search_value=search_value, search_placeholder='Search code / title / workspace…', filters=[ {'name': 'status', 'label': 'Status', 'value': status_filter, 'options': [('', 'All'), ('available', 'available'), ('in_progress', 'in_progress'), ('blocked', 'blocked'), ('done', 'done')]}, {'name': 'priority', 'label': 'Priority', 'value': priority_filter, 'options': [('', 'All'), ('p1', 'p1'), ('p2', 'p2'), ('p3', 'p3')]}, ], per_page=per_page, show_per_page=False, ) }} {% set buckets = {'available': [], 'in_progress': [], 'blocked': [], 'done': []} %} {% for t in tasks %} {% set _ = buckets.setdefault(t.status, []).append(t) %} {% endfor %}