Problem
`sw_pull_next` ranks by priority then age, but real backlogs have dependencies — "implement auth before user profiles." Without `blocked_by` relationships between backlog items, the system can recommend work that will fail because its prerequisite isn't done.
The link infrastructure already exists. The flow tools just don't use it for ordering.
Solution
New relationship type
Add `blocks`/`blocked_by` to the software-kb relationship types. Distinct from `tracks`/`tracked_by` (which means "this item is related to that ADR") — `blocks` means "this item must be done before that item can start."
Flow tool changes
Backlog item frontmatter
Authors can express dependencies via standard links:
```yaml links: - target: auth-system relation: blocked_by note: "Needs auth endpoints before user profiles" ```
Prerequisite for decomposition
The work decomposition pattern (work-decomposition-pattern) needs parent/child tracking, which is a specialization of this dependency model. Build this first.