Prerequisite

A prerequisite is a node whose completion is required before another node can start. The relationship is represented by an edge in the project graph.

A prerequisite is a node whose completion is required before another node can start. The relationship between a prerequisite and the work it gates is represented by an edge in the project graph.

How they combine

A node can have multiple prerequisites. All of them must complete before the dependent node becomes available.

This is AND logic: every prerequisite is required, not just any one of them. Tree doesn't currently support "OR" prerequisites, where any one of several prerequisites would unlock the dependent.

Chains

Prerequisites can chain. If node C depends on node B, and node B depends on node A, then A is a transitive prerequisite of C.

Completing A unlocks B (assuming A is B's only prerequisite). Completing B then unlocks C. The chain can extend to any depth.

The inverse: dependents

The opposite of a prerequisite is a dependent. If A is a prerequisite of B, then B is a dependent of A. The same edge expresses both relationships, just traversed in opposite directions.

Why first-class

Prerequisites are how Tree encodes "this must happen before that." This is structural information that list-based project tools either lose entirely or encode as text in a notes field.

Making prerequisites first-class in the data model is what allows Tree to compute the available tier automatically, surface what's blocking what, and traverse the graph in both directions cheaply.

LAST UPDATED · 2026-05-11