ok - ancestry rejects a divergent target base: fatal: target base 2100ef61206e6906f6c5c2d48469341efd329ee6 is not an ancestor of stack tip 605d398544f0a03520ea7a8eb2703ce231baa071 ok - missing Change-Id names its commit: fatal: commit b5313584a1a06b1861a731fbdeb93cfa022329b3 has 0 Change-Id trailers; expected exactly one ok - duplicate Change-Id names its commit: fatal: commit 9b9b93cbf07c149e8f99110a1be150e6e22e1843 has 2 Change-Id trailers; expected exactly one ok - malformed Change-Id names its commit: fatal: commit df6ff76b821537bf39c252710c828c700245f32e has invalid Change-Id trailer: Inot-a-forty-digit-hex-value ok - cancelled check is not green: fatal: PR 102 checks are not all green: nixbot/nix-build=CANCELLED ok - a head with no checks is not green: fatal: PR 103 has no checks ok - ancestry is rechecked after forge checks: fatal: target base 2100ef61206e6906f6c5c2d48469341efd329ee6 is not an ancestor of stack tip 605d398544f0a03520ea7a8eb2703ce231baa071 ok - the fast-forward push rejects a concurrent target update: error: failed to push some refs to '/build/stack-land-test/run.o38mX9/remote.git' ok - installed wrapper supplies its runtime commands with an unusable PATH ok - dry run validates without updating main ok - valid stack fast-forwards main and verifies merged state ok - post-push state requires every PR to be merged: fatal: PR 104 did not close as merged after push