# Relationships

Connect issues as blockers, sub-issues or related work, read the Blocked and Blocks chips, and open the dependency graph.

Work depends on other work. Writing that down is the difference between a tracker and a list.

Hydrant has three kinds of link, and they're independent. A parent doesn't block its children, and "related" doesn't imply anything at all.

| Link | Says |
| --- | --- |
| **Blocked by** / **Blocks** | This can't sensibly start or finish until that does. One direction. |
| **Sub-issues** | This is a piece of that. One parent per issue. |
| **Related** | Worth knowing about. No consequences. |

## Before you start

Two issues in the same workspace. Links don't cross workspaces.

## Steps

### Add a link

1. Open an issue and press **Relations**, or right-click a row and open **Relations**.
2. Press **Add relationship** and pick the kind: **Related to**, **Child of**, **Parent of**, **Blocks** or **Blocked by**. Hydrant spells out the direction ("#12 is blocked by…") so you don't build it backwards.
3. Search by title or `#number` and pick the other issue.

Changing an issue's parent asks you to confirm, showing **From** and **To**. Hydrant refuses links that would make an issue block itself in a circle.

### Read the chips

Rows can show a **Blocked** chip (things in this issue's way) and a **Blocks** chip (things waiting on it). Each opens a short list of up to five issues, with **View all** for the rest. Entries under Blocks may add "Also waits on N other issues". Clearing your blocker isn't always enough to free them.

If the chips aren't there, turn **Blocked** and **Blocks** on under **Display**.

### Open the graph

**Graph**, on an open issue, draws one hop around it: its blockers on one side, what it blocks on the other. Solid lines are active; dashed ones are resolved and kept for history. Select a node to see its state, and center on a neighbor to go deeper. `Tab` moves between nodes, `Enter` selects and `Shift+Enter` centers. With the drawing focused, the arrow keys pan, `+` and `-` zoom, `0` fits it and `F` returns to the focused issue. The graph has its own address, so Back works and you can share the link.

### Cancel or trash a blocker, carefully

Moving a blocker to a canceled stage, or to the trash, first shows what depends on it: how many issues lose this blocker, how many blockers each has left, and whether it will then qualify for **Available to start**. Read it, then confirm or press **Keep issue unchanged**.

## What you should see

The **Relationships** summary on an issue lists Blocked by, Blocks, Sub-issues (with how many are done) and Related. With nothing in the way it says "No blockers. No excuses."

## If it goes sideways

- **The other issue doesn't show up in search.** It's in another workspace or in the trash. Links stay inside one workspace.
- **"Already linked."** It is. Look under the other kind, or the other direction.
- **Blocked count looks wrong.** Only open blockers count: Done, Canceled and trashed ones don't, Iced and Snoozed ones do. See [Status, Refined and Blocked](/help/using/status-refined-blocked).
- **Finishing every sub-issue didn't finish the parent.** Correct. Relationships never complete anything on your behalf.
- **"Cancellation impact changed or needs review."** Something shifted while the dialog was open. Review the list again, then confirm.

Contact: bots@hydrant.dev
