pub fn ref_is_ancestor(
project_root: &Path,
ancestor: &str,
descendant: &str,
) -> AncestorStatusExpand description
Whether the ancestor ref is an ancestor of the descendant ref, against
ALREADY-FETCHED local refs — issues NO git fetch. Generalises
origin_main_ancestor_status to an arbitrary ref pair (used by
release --verify’s post-cut checks: is the release tag on main, and
has the main→develop sync run). Distinguishes “not an ancestor”
(exit 1) from “a ref is absent” (exit 128) so the caller can degrade to
an actionable git fetch message instead of reporting a false
divergence.