Grouping tasks into sections¶
Some entries in a project aren't really tasks — they exist to group the work beneath them. "Hardware" isn't a thing you do; it's a heading that holds the actual hardware tasks together. TaskTree calls these sections.
A section looks different, and — unlike a task — you never set its status by hand. Its status is worked out from the tasks inside it.
Turn a task into a section¶
- Open the task in the detail panel (click its row in the list, or its node on the canvas).
- Click Convert to section (next to Delete).
- The node becomes a section straight away. Its Status field changes from the usual buttons to a single read-only pill labelled Inferred from sub-tasks.
To go back, open the section and click Convert to task — it returns to a normal task with the status it had before you converted it. Converting back and forth never loses anything.
Create a section from scratch¶
In the New task dialog, tick Make this a section. The Status field disappears (a section's status is inferred), and the node is created as a section. Give it sub-tasks by setting their Parent to the section.
How a section's status is worked out¶
A section's status reflects the progress of everything beneath it:
| The tasks inside the section… | …make the section |
|---|---|
| are all complete | Complete |
| are all in the backlog | Backlog |
| haven't been started (or there are none yet) | Not started |
| are all dropped | Dropped |
| are a mix — some done, some not, or any in progress | In progress |
A blocked sub-task counts as in progress for the section — a blockage on one task doesn't turn the whole grouping red. (Blockage stays where it's useful: on the task that's actually stuck.) A sub-task in QA counts as in progress too: it's still mid-flight until it's called done.
A dropped sub-task is left out of the reckoning altogether, rather than counting either way. A section with two complete sub-tasks and one dropped is Complete — the abandoned work is no longer outstanding, so it doesn't hold the section back, and it doesn't get credited as though it were finished. The progress bar says so: 2 of 3 complete · 1 dropped.
This works all the way down: if a section contains another section, the inner one's worked-out status feeds into the outer one. So a section's pill always tells you, at a glance, how much of that whole branch is done.
What a section looks like in each view¶
- Canvas. A folder-style card — a folder icon, a muted fill, and a count of how many tasks it holds. Instead of a single status pill it shows a progress bar: one coloured segment per sub-task, so you can see how much of the branch is done at a glance. A section that's fully complete fades like a finished task.
- List. The row carries a small folder icon, and the Status column shows the same progress bar instead of the usual dropdown. A Hide sections toggle at the top of the filters tucks section rows away when you want to see only the real work.
- Detail panel. When a section is open, the panel shows its inferred status in words (e.g. In progress — Inferred from sub-tasks).
- Search. In the search box and the parent/dependency pickers, section names are prefixed with a folder icon so they're easy to spot.
- Board and Timeline. Sections don't appear here — these views are about scheduling and moving actual work, so they show tasks only.
How to read the progress bar¶
The bar is split into equal segments, one per direct sub-task, coloured by each sub-task's status (a sub-section counts as one segment in its own rolled-up colour). Segments are grouped most-done first, so the green stretch on the left tells you how much is complete. Hover a segment to see which sub-task it is.
What stays the same¶
Sections behave like tasks in every other way: you can nest them, drag them to a new parent, draw dependency edges to and from them, and delete them (a section with sub-tasks is blocked from deletion until you move or remove its children, exactly like a task).
The differences are the look, the inferred read-only status, and that a section's detail panel hides the Assignees field (a grouping node isn't assigned to anyone). If you convert a task that had assignees, they're kept behind the scenes and come back if you convert it back to a task.