- an advisory bot's review is never waited for, but its check gates like any
other, so gstack-ci-gate (Step 2) and gstack-pr-wait --until green (Step 3)
read the same check set with no exception
- BEHIND and DIRTY are keyed on the head alone; the pass-1 key also held the
base oid, so a base that kept moving re-announced BEHIND to a restarted
watcher on every commit
- finish() keeps the printed verdict's exit code when the state file cannot
be written; the save error goes to stderr
- PR_WAIT_BLOCKED and PR_WAIT_REFUSED summaries name every exit-1 and exit-2
path (--timeout, a local error); emitBots docstring matches the gating rule
- CHANGELOG says what a timeout means at land-and-deploy Step 3: a STOP with
the pending checks named, no wait-more question
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>