Bulk actions
Route: /org/tasks?view=list · Permission: View Tasks plus the permission for each action
1. What bulk actions are
Select tasks with the checkboxes in the list view and a floating bar appears offering six operations on the whole selection.
Two of them behave differently from the other four, and this is the thing to know before using it:
| Action | Applies to |
|---|---|
| Status · Priority · Assignee · Delete | Exactly the tasks you ticked |
| Category · Milestone | The ticked tasks and every descendant |
Both walk down the hierarchy before acting, so ticking three parents can update thirty tasks. The success toast reports the real number, which is often the first sign anything unexpected happened.
Delete does not expand — it deletes only what you ticked, which leaves orphaned children.
2. How a bulk action runs
Each task is updated with its own request, one after another. If the tenth fails, the first nine stay changed — there is no rollback.
The toast reports both counts: 47 tasks updated successfully. 3 failed. It does not say
which three.
3. Using bulk actions — step by step
Step 1 · Select
Tick rows in the list view. Selecting a task and dragging it also selects it.
Step 2 · Choose an action
| Button | Dialog title |
|---|---|
| Status | Change Status |
| Priority | Update Priority |
| Assignee | Assign |
| Category | Move Category |
| Milestone | Update Phase |
| Delete | A confirmation |
Each dialog states the scope — "Updating <n> selected tasks" — and offers a single picker.
Step 3 · Confirm
The bar shows progress while it works, then a toast:
| Outcome | Message |
|---|---|
| All succeeded | <n> tasks updated successfully. |
| Partial | <n> tasks updated successfully. <m> failed. |
| All failed | Failed to update <m> tasks. |
On any success the list refreshes and the selection is cleared.
Step 4 · Or clear
Clear Selection discards it without acting.
4. Field reference
The six actions
| Action | Sends | Options come from |
|---|---|---|
| Status | A task transition — the same call as a Kanban drop | Project statuses |
| Priority | A task update | Project priorities |
| Assignee | An assignment; Unassigned clears it | Project members |
| Category | A task update, subtree-expanded | Project task categories |
| Milestone | A task update, subtree-expanded; No Milestone clears it | Project milestones |
| Delete | A delete per task, not subtree-expanded | — |
Bulk status changes still obey the workflow
Status uses the transition endpoint, so the workflow applies to every task individually — and its actions and conditions fire for each.
Selecting forty tasks in mixed statuses and setting them all to In Review succeeds only for those
whose current status permits that move. The rest count as failures, with no indication of which.
Filter to one status first, then bulk-transition. That way the workflow either allows all of them or none.
Category and milestone cascade twice over
Both are subtree-expanded in the browser and cascaded by a database trigger that pushes category and milestone down to subtasks. So the effect reaches the whole hierarchy either way — the expansion mainly makes the reported count accurate.
5. The admin contract
| Action | Permission |
|---|---|
| Status | Change Status of Task |
| Priority | Edit Tasks |
| Assignee | Manage Task Assignment / Allow Change Task Assigne |
| Category, Milestone | Edit Tasks |
| Delete | Delete Task |
The buttons are always shown. A user without the underlying permission sees the dialog, picks a value, and every task fails — reported only as a count.
Check the permission before diagnosing a bulk action that "did nothing".
6. Downstream
Each task in the batch behaves exactly as if changed individually: entries in the activity log, notifications to the thread, and workflow actions on status changes.
Reassigning sixty tasks sends the new assignee sixty bell alerts and sixty emails. There is no digest and no batching.
7. Don't confuse this with…
| Thing | Where | Why it is different |
|---|---|---|
| Bulk actions (this page) | The list bar | One change, many tasks |
| Drag onto a category | The category rail | Category only, also subtree-expanded |
| Table inline edit | Table | Many changes, one task at a time |
| Jira sync | Jira sync | Bulk change driven by Jira, not by you |
8. Troubleshooting
| Symptom | Cause |
|---|---|
| More tasks changed than I selected | Category and Milestone expand to descendants |
| Every task failed | The permission for that action is missing |
| Some tasks failed on a status change | The workflow does not permit that move from their current status |
| The toast will not say which failed | It reports counts only — check the activity log |
| Half the batch changed | Each task is a separate request; there is no rollback |
| Subtasks were orphaned by a delete | Delete does not expand to descendants |
| No checkboxes | You are not in the list view |
| The selection disappeared | A successful action clears it, and so does changing page |
Related
- List view — the only view with selection
- Subtasks — why category and milestone cascade
- Activity history — the only record of what a bulk action did