POST-025: post to a remote collapses eq/behind/diverged into POSTNONE + a blind POSTNOFF

Now:
OPEN
Sev:
MED

post's remote path has no ahead/behind calc: it asks only "is the remote tip an ancestor of cur?", so eq becomes POSTNONE ("already at cur's tip") and every other case — behind, diverged, unrelated — becomes one blind POSTNOFF ("not an ancestor of cur"). The user cannot tell "nothing to do" from "run get first" from "you diverged, merge". The full verdict already exists (relate.verdict / dag.aheadBehind, rel = eq/ahead/behind/diverged/unrelated) but only the PULL side calls it.

Input

Context

Hit 2026-07-14: a post answered "nothing to post" over two trees that had genuinely DIVERGED (work/DOG-021/dog at 63cb570e vs journal/jab/dog at 8ebbfd35, forked at 79612854).

Goals

post to a remote names WHICH relation refused it, and says what to run next.

Constraints

Fix in beagle-ext (JS); reuse the existing spine, do not fork a second verdict.

WIP

Design decisions

The push side must LEARN the remote's ancestry — it currently refuses on a local-only parent walk.

TODOs

Blockers and bummers

The behind/diverged split is not computable from what the push path holds today.

Outcome

-