Backlog
Backlog is the staging area for work that is not yet in active board execution. It uses a side-by-side layout: a project rail on the left for fast project switching and a task list on the right for that project’s backlog.

Accessing the Page
Section titled “Accessing the Page”Open Projects from the sidebar and select Backlog. The page auto-selects the first active project. Navigate to /projects/backlog/:projectId to open a specific project directly.
Layout Overview
Section titled “Layout Overview”Project Rail (Desktop)
Section titled “Project Rail (Desktop)”On desktop, a vertical project list on the left shows all active projects. Each row displays the project color dot, name, and a small badge with the project’s current backlog count. Click any project to switch to it. The selected project is highlighted.
Mobile Project Selector
Section titled “Mobile Project Selector”On mobile, the project rail is replaced by a dropdown selector at the top of the main panel. The dropdown shows the project color, name, and backlog count for each option.
Main Backlog Panel
Section titled “Main Backlog Panel”The right panel (full width on mobile) shows:
- A project header with the project color, code, name, and total backlog count.
- A filter bar (desktop) or filter sheet trigger (mobile).
- Active filter chips.
- The task list with load-more pagination.
Header Actions (Desktop)
Section titled “Header Actions (Desktop)”- Push all to board — moves all currently visible tasks to To Do status with confirmation. Available only when there are tasks and no rows are selected.
- New backlog item — opens the Create Task dialog with the active project pre-selected and status set to Backlog.
Press c anywhere on the Backlog page to open the Create Task dialog without clicking the button (keyboard shortcut is disabled when a dialog, preview, or filter sheet is already open).
Search and Filters
Section titled “Search and Filters”| Filter | Options |
|---|---|
| Search | Full-text search within the active project’s backlog (debounced) |
| Priority | Multi-select: Low, Medium, High, Urgent |
| Assignee | Single user picker |
| Due | Overdue / Today / This week / No due date |
Active filters appear as removable chips with a Clear all option. Switching projects resets all filters and the search field.
The due-date filter is applied client-side after the API response — the API does not yet support date-range filtering for backlog.
Task List and Pagination
Section titled “Task List and Pagination”The backlog loads up to 200 tasks per page. When more tasks exist beyond what is currently loaded, a Load more button appears at the bottom of the list. Clicking it fetches the next batch (additional 200 tasks). This continues until all matching tasks are loaded.
Column headers support sorting:
- First click — Ascending.
- Second click — Descending.
- Third click — Remove sort.
Default order follows kanban rank (rank ascending, last updated descending as tiebreak).
Selecting Rows
Section titled “Selecting Rows”Enable row selection by clicking a task’s checkbox. Multiple rows can be selected at once. Selection is cleared automatically when you switch projects.
Bulk Actions (Desktop)
Section titled “Bulk Actions (Desktop)”When rows are selected, a bulk-action toolbar replaces the push-all button:
- Push selected to board — moves selected tasks to To Do with confirmation.
- Bulk edit — opens the Bulk Edit dialog to patch selected tasks in one operation.
- Clear selection — deselects all rows.
Bulk Actions (Mobile)
Section titled “Bulk Actions (Mobile)”On mobile, bulk-action buttons appear in the bottom action bar above the keyboard area. The same three actions are available.
Batch operations are resilient: if some tasks succeed and others fail, the successful writes are committed and a summary message reports the outcome. The data always refreshes after a batch completes.
Row-Level Actions
Section titled “Row-Level Actions”Each row supports:
- Click — opens the task in the configured open mode (slide-over or full page).
- Edit (pencil icon) — opens the Edit Task dialog directly from the row (write permission required).
- Delete — opens delete confirmation (admin permission required; blocked on terminal project tasks).
- Checkbox — selects the row for bulk operations.
Empty States
Section titled “Empty States”| Situation | Behavior |
|---|---|
| No active projects | Full-page empty state prompting you to create a project |
| Active project with no backlog items | Panel empty state with a prompt to add items |
| Filters produce no results | Filtered empty state showing that items exist but are hidden by filters |
Permissions
Section titled “Permissions”| Action | Required permission |
|---|---|
| View backlog | Projects module access |
| Create backlog item | canWriteTasks and project not terminal |
| Push to board | canWriteTasks and project not terminal |
| Bulk edit | canWriteTasks |
| Delete task | canAdminTasks and task’s project not terminal |