nixbot

builds
1ok - ancestry rejects a divergent target base: fatal: target base 4dca27aa910c7de9bf31d4abe20d8075f0fb7027 is not an ancestor of stack tip e0416d5639abab4f074832a2de09a906b13b7f7f2ok - missing Change-Id names its commit: fatal: commit 55cb238fbd2d665f6f716d1fce24c1d13bf05997 has 0 Change-Id trailers; expected exactly one3ok - duplicate Change-Id names its commit: fatal: commit 1a371e5dcd7156ba5b4424b64d8b5456a0be7dc7 has 2 Change-Id trailers; expected exactly one4ok - malformed Change-Id names its commit: fatal: commit c4aedbf10aeb8011742331418185c87c8c10591d has invalid Change-Id trailer: Inot-a-forty-digit-hex-value5ok - cancelled check is not green: fatal: PR 102 checks are not all green: nixbot/nix-build=CANCELLED6ok - a head with no checks is not green: fatal: PR 103 has no checks7ok - a neutral check passes diagnostics8ok - a skipped check passes diagnostics9ok - failing check state FAILURE fails diagnostics: fatal: PR 107 checks are not all green: synthetic-FAILURE=FAILURE10ok - failing check state TIMED_OUT fails diagnostics: fatal: PR 108 checks are not all green: synthetic-TIMED_OUT=TIMED_OUT11ok - failing check state ACTION_REQUIRED fails diagnostics: fatal: PR 109 checks are not all green: synthetic-ACTION_REQUIRED=ACTION_REQUIRED12ok - failing check state ERROR fails diagnostics: fatal: PR 110 checks are not all green: synthetic-ERROR=ERROR13ok - undecided check state PENDING fails diagnostics: fatal: PR 111 checks are not all green: synthetic-PENDING=PENDING14ok - undecided check state IN_PROGRESS fails diagnostics: fatal: PR 112 checks are not all green: synthetic-IN_PROGRESS=IN_PROGRESS15ok - undecided check state QUEUED fails diagnostics: fatal: PR 113 checks are not all green: synthetic-QUEUED=QUEUED16ok - undecided check state REQUESTED fails diagnostics: fatal: PR 114 checks are not all green: synthetic-REQUESTED=REQUESTED17ok - undecided check state WAITING fails diagnostics: fatal: PR 115 checks are not all green: synthetic-WAITING=WAITING18ok - undecided check state EXPECTED fails diagnostics: fatal: PR 116 checks are not all green: synthetic-EXPECTED=EXPECTED19ok - undecided check state STARTUP_FAILURE fails diagnostics: fatal: PR 117 checks are not all green: synthetic-STARTUP_FAILURE=STARTUP_FAILURE20ok - undecided check state STALE fails diagnostics: fatal: PR 118 checks are not all green: synthetic-STALE=STALE21ok - unrecognised check state BANANA fails diagnostics: fatal: PR 119 checks are not all green: synthetic-BANANA=BANANA22ok - ancestry is rechecked after forge checks: fatal: target base 4dca27aa910c7de9bf31d4abe20d8075f0fb7027 is not an ancestor of stack tip e0416d5639abab4f074832a2de09a906b13b7f7f23ok - help works without --dry-run outside a repository24ok - no git/gh operations25ok - installed wrapper supplies runtime commands with an unusable PATH26ok - dry run reports assertions only27ok - dry run validates without writes or merged-state polling28ok - dry run reports assertions only29ok - legacy real invocation is rejected: fatal: assertion-only diagnostic; --dry-run is required30ok - no git/gh operations31ok - rejection does not require a repository or forge: fatal: assertion-only diagnostic; --dry-run is required32ok - no git/gh operations33ok - empty invocation requires explicit diagnostics: fatal: assertion-only diagnostic; --dry-run is required34ok - no git/gh operations35ok - short help works outside a repository36ok - no git/gh operations37PASS: all stack-land diagnostics; no remote writes; fixture targets preserved