pub fn classify(
branch: &Branch,
current: Option<&str>,
trunk: &str,
) -> Option<Class>Expand description
Classify one branch: None when its upstream is live or unset — the
branch never reaches the report — and the guard’s verdict otherwise.
The guards run in order and the first one holds: the current branch stays kept — it is the operator’s own seat — a branch checked out in any other worktree is worktree-bound and belongs to the worktree verb, then the trunk and the release lines stay kept. What survives is a candidate.