Issues
Parent & Sub-Issues
Create a parent (epic)
xpo add "Auth overhaul" --label epic
Create sub-issues
Set the parent with -p:
xpo add "Add OAuth2 provider" --label feature -p <epic-id>
xpo add "Migrate session store" --label feature -p <epic-id>
xpo add "Update auth middleware" --label feature -p <epic-id>
Re-parent an issue
xpo update <id> --parent <new-parent-id>
In the web board, hold Alt while dragging an issue onto another to nest it as a sub-issue.
List children
xpo list -p <epic-id>
Progress rollup
Parent issues automatically aggregate story points from their children. Configure whether unestimated children count:
count_unestimated: true
When true, unestimated children count as 1 point each.
Status cascading
Automations propagate status changes between parents and children:
| Automation | Default | What it does |
|---|---|---|
first_start | true | When any child starts (→ DOING), move parent to DOING |
last_completed | true | When the last child is DONE and parent is DOING, move parent to DONE |
Configure in .xpo/config.yaml under automations. See Project Configuration for details.