Skip to content

v0.2.0 — gate-hardening

Latest

Choose a tag to compare

@OrionArchitekton OrionArchitekton released this 28 Jun 16:33
dca135a

failclosed v0.2.0 — gate-hardening

Two latent fail-open paths closed — a merge could report MERGE_READY while a
real, unresolved review signal was still open, the exact failure class failclosed
exists to prevent — plus reviewer-format currency and idempotent thread resolution.

Fixed

  • Codex reviewer threads are no longer dropped. The GitHub Codex reviewer
    (chatgpt-codex-connector) is now recognized, so its unresolved threads are
    counted before the gate decides. Previously the gate could clear with an open
    Codex P1 thread.
  • The receipt classifier is fail-closed by construction. A pathless review
    thread auto-resolves only when, after carving out the receipt phrase, no content
    remains — Unicode-aware and NFKC-normalized. A real finding that merely opens
    with "No findings…", in any language or disguised with homoglyphs, keeps the
    thread open. (A denylist of weak words / continuation markers is unbounded-
    bypassable; this inverts to a pure-receipt check.)

Added

  • Parser currency for codex CLI ≥0.13x native review ([P0–P3] markers +
    trailing em-dash path:start-end).
  • Idempotent reply/resolve — re-checks live thread state and skips a duplicate
    reply on a partial-failure retry; best-effort probes never suppress the resolve.

Full notes in CHANGELOG.md. 59 tests; ruff + leak gate clean.