Skip to content

v0.14.2 — Close codex verifier idle false-positive regression

Choose a tag to compare

@kyjin kyjin released this 05 May 02:47
· 354 commits to main since this release

Summary

Critical follow-up to v0.14.1. BOS Bug Report #4 (2026-05-05) showed the v0.14.1 fix improved throughput 3.5x but the same verifier_dead BLOCKED pattern recurred mid-campaign — 86 minutes of work invalidated. v0.14.2 closes three latent gaps so the verdict-aware short-circuit actually fires in production.

What's fixed

Dual-path verdict lookup with auto-migration

  • Codex sometimes writes the verdict to the pre-v0.13.0 .claude/ralph-desk/memos/ path (CWD heuristics inside the codex CLI). The leader now checks both the canonical .rlp-desk/memos/ location AND the legacy path before declaring timeout, and atomically migrates the legacy file into place when found.
  • Applies to both --mode tmux (zsh runner) and --mode agent (Node leader / signal-poller).

Relaxed codex idle UI recognition

  • is_codex_idle_ui() / CODEX_IDLE_RE no longer require the ─ Worked for ─ horizontal rule to match. Any of the following independent markers triggers idle: Worked for Xm Ys, Context X%left, gpt-X.Y reasoning · branch, codex default suggestions (Improve documentation in @, Summarize recent commits, Explain this code).
  • tmux capture truncation that previously dropped the rule wrapper no longer breaks detection.

Verifier prompt write-path enforcement (Fix-E)

  • The verifier prompt now embeds an absolute "CRITICAL: write verdict to " footer with explicit "DO NOT write to .claude/ralph-desk/" instruction. Reduces the chance codex infers the legacy CWD path in the first place.

Diagnostic trace

  • check_no_progress() emits a one-shot debug log per byte-stasis transition on verifier panes — surfaces verdict path lookup outcome so future regressions are easier to root-cause from logs alone.

Impact

If you saw verifier_dead BLOCKED on a --verifier-model gpt-5.5:* campaign in v0.14.1 even with the fix installed, this is the closing fix. Run npm install rlp-desk@0.14.2 and re-run with the same flags.

Tunables

  • CODEX_IDLE_GRACE_S (default 120s): post-work idle grace before BLOCK escalation. Unchanged from v0.14.1.
  • PROGRESS_NO_CHANGE_TIMEOUT (default 600s): unchanged.

Compatibility

No breaking changes. v0.14.0 --mode tmux routing preserved. v0.13.0 .rlp-desk/ path migration preserved.