Entity relationships are links you define between two things of the same kind. Ceum supports two scopes: project-to-project and task-to-task. Links across types (e.g. a project to a task) and client-to-client links aren't supported.
What you can do
Relationships appear in a Relationships section on the create, edit, and detail pages of both projects and tasks. Each relationship has:
- A source — the entity whose page you're viewing.
- A target — the linked entity.
- A type — picked from your configured relationship types.
The same Relationships section shows both directions: when you're looking at task A, you see outgoing relationships (A → others) and incoming relationships (others → A) side by side, each with a direction indicator (a right chevron for outgoing, a left one for incoming).
Adding and removing
In the Relationships section, choose a type and search for a target. Save the form to commit the change. Removing a relationship is a single click on the row's delete control.
If a relationship type isn't enabled in your settings, it won't appear in the type picker.
Direction
Relationships always have a direction. The pair "A blocks B" and "B blocks A" are different links — Ceum doesn't create the reverse for you. If your workflow uses two-way meaning (e.g. "related to"), it's still stored as a one-way link; visit either side to see it.
Uniqueness and self-link rules
- You can't add the same source, target, and type twice — Ceum reports a conflict.
- You can create multiple distinct types between the same pair — e.g. "A blocks B" and "A duplicates B" can coexist.
- A thing can't link to itself.
What happens on deletion
Deleting either side of a relationship also removes every relationship that references it, in both directions. There are no orphaned links to clean up later.
Configuration
Relationship types are per workspace and per scope (project or task). Configure them under:
A type has a display name, color, order, an enabled toggle, and two dependency toggles (see below). Out of the box you get Relates to, Blocks, Blocked by, Depends on, and Is dependency of for both projects and tasks, plus Duplicates for tasks. Reorder, rename, recolor, or disable any of them.
Dependency notifications
Two toggles on each relationship type turn it into a dependency — something Ceum watches and warns about on the task kanban:
- Affects target — the source holds up the target. While the source is unfinished, the target is flagged.
- Affected by target — the source is held up by the target. While the target is unfinished, the source is flagged.
Both default to off, so a plain relationship type stays a quiet label. The seeded types wire these up for you:
- Blocks (red) — affects target. "A blocks B" warns B while A is unfinished.
- Blocked by (red) — affected by target. "A blocked by B" warns A while B is unfinished.
- Depends on (yellow) — affected by target. "A depends on B" warns A while B is unfinished.
- Is dependency of (yellow) — affects target. "A is dependency of B" warns B while A is unfinished.
The warning itself is the yellow border and tooltip on the task kanban — see that article for exactly when it shows. Projects use the same toggles, but because there is no project kanban there's no visual warning for projects yet.
Tips and edge cases
- Renaming a type doesn't break existing links. Relationships stay attached to the type even when you rename it.
- Disabling a type hides it from new pickers but keeps existing relationships of that type visible until you remove them.
- No client relationships. Use Projects under a client as the closest available model.
- No cross-type links. If a task and a project relate, assign the task to the project rather than linking them.
On mobile
- The relationships UI is simplified to add (pick a type and target in a bottom sheet) and delete; the web side-by-side incoming/outgoing layout is collapsed into a single list with the direction folded into each row.