OpenAI quietly ships "Watch and fix" for Codex pull requests

The production desktop app can assign Codex to keep checking a PR every 10 minutes, repair CI failures and merge conflicts, push fixes, and optionally continue until the pull request merges.

By · Published · Updated

RUNTIMEWIRE INVESTIGATION — Scoop

Original reporting by RuntimeWire, based on testing, documents.

Why it matters

Coding agents are moving from one-shot code generation into persistent ownership of delivery. Codex's heartbeat targets the costly last mile: keeping a PR green and mergeable while CI and the base branch continue changing.

Reporting record

Finding

OpenAI’s latest production desktop build contains a new “Watch and fix” pull-request automation that attaches a 10-minute heartbeat to a Codex task, repeatedly checks the live PR state, fixes relevant CI failures and merge conflicts, pushes repairs, and can optionally continue until the pull request is merged.

How we verified

Methods: testing, documents.

RuntimeWire found user-facing settings titled “Watch and fix pull requests” in OpenAI desktop version 26.901.20858, build 7658, alongside controls for “Auto-merge when ready” and custom “Pull request watch instructions.” The implementation creates an automation of type heartbeat named Auto-fix PR #<number>. When first activated, the child task is told: “Begin automatically fixing PR #<number>” and that a 10-minute heartbeat will continue checking the pull request until the task is complete or blocked. The default automation instructions direct Codex to inspect the latest PR state with gh, including mergeability and current checks; repair failing checks caused by the PR; resolve merge conflicts with the base branch; use logs and CI annotations before editing; perform mutations inside an isolated git worktree; commit and push repairs to the PR branch; re-check live GitHub state rather than relying on earlier turns; and revisit pending checks on the next 10-minute heartbeat. When the user enables automatic merging, the embedded instructions tell Codex to merge once required checks pass and the PR is mergeable. If merging fails, Codex is instructed to diagnose the failure, update the branch when needed, retry, and continue until the PR is merged or closed. The previous production package RuntimeWire analyzed was version 26.820.60940, build 7119. Exact searches of that baseline for the new PR-watch configuration keys and related automatic-fix markers returned no matches.

Reproduction

Reproduction does not apply to this reporting (document-driven).

Company response

RuntimeWire requested comment; the company had not responded by publication time.

Glowing lines of code representing a pull request being automatically repaired by an intelligent, pulsing energy, fixing errors and merge conflicts in a dark, futuristic digital space.

OpenAI has shipped a "Watch and fix" mode in its production desktop app that assigns a persistent Codex task to a pull request, wakes it every 10 minutes, and tells it to repair the branch until the work is complete or blocked.

RuntimeWire found Watch and fix live in OpenAI's production desktop app, then reverse-engineered the shipped package to trace how its 10-minute heartbeat, repair loop and optional auto-merge work. The feature appears in OpenAI desktop version 26.901.20858, build 7658, with user-facing controls including "Watch and fix pull requests," "Auto-merge when ready," and a field for custom pull-request watch instructions. OpenAI does not appear to have publicly announced or documented it.

RuntimeWire reconstruction of OpenAI's "Watch and fix" pull-request controls using strings and behavior recovered from desktop build 26.901.20858. Layout details are illustrative; the feature names, settings, and status copy shown are taken from the app.

The implementation gives each watched PR a child automation classified as a heartbeat and named "Auto-fix PR #<number>." The first turn tells Codex to begin fixing the PR and explains that a 10-minute heartbeat will keep checking it until the task finishes or hits a blocker.

That architecture matters because Codex does not hold open one model turn while waiting for GitHub. The task wakes again on a schedule, reads the live PR state, acts when something changed, and otherwise stays quiet. Pending CI checks are left for the next heartbeat rather than handled with a sleep loop inside an active turn.

What Codex does when it wakes up

The embedded instructions direct Codex to use GitHub's gh command-line tool to inspect mergeability and current checks. It must start with CI logs and annotations, focus its edits on failures caused by the PR, and resolve conflicts with the base branch.

When a repair requires code changes, Codex is told to leave the developer's active checkout alone and create an isolated git worktree. It then makes a narrow fix, runs relevant verification, commits the change, pushes it to the PR branch, and cleans up the temporary worktree when safe.

Each heartbeat must re-read GitHub instead of trusting state retained from an earlier turn. That instruction addresses a basic problem with long-running coding agents: a correct diagnosis can become stale as other commits land, checks finish, or the base branch moves.

The feature also defines a stopping condition. If Codex needs a decision or credential from the developer, it should ask one concise question, explain the blocker, and pause the heartbeat rather than repeatedly attempting the same action.

RuntimeWire traced the settings, automation creation, task prompt, recurrence interval, worktree behavior, push instructions, and optional merge logic in the distributed application package. The analyzed archive was 298,996,178 bytes and had the SHA-256 hash 09c7ef96b5d524fef9b76270de216cf6d661ffad4727680a9b9631d18795183d.

Watch and fix is live in the production app, but its rollout scope remains unconfirmed. RuntimeWire verified the user-facing feature and the complete implementation path inside the shipped package, but has not run Watch and fix end-to-end against a live GitHub pull request. It is not yet clear whether the feature has reached every account or remains in a staged rollout.

Auto-merge changes the terminal state

Automatic merging is a separate preference and defaults to off. With that setting disabled, Codex is told to repair the branch and leave the merge to the developer unless custom instructions say otherwise.

With auto-merge enabled, Codex receives a more aggressive mandate. Once required checks pass and the PR becomes mergeable, it should merge. A failed attempt sends the agent back through diagnosis, branch updates, and another merge attempt. The heartbeat pauses after the PR is merged or closed.

That turns "green" into an intermediate state. Codex can own the loop from a failed check through a pushed repair and, when authorized, continue until GitHub records the merge.

OpenAI has already shipped automatic Codex reviews that analyze pull requests and let developers ask the agent to implement recommended edits. The company also added support for updating existing pull requests after follow-up instructions. Watch and fix removes another developer prompt from that sequence by giving the repair task its own recurrence schedule.

OpenAI is productizing its internal PR shepherd

OpenAI has publicly described a similar operating model inside its engineering organization. Its Symphony orchestration system assigns agents persistent workspaces, watches tasks on a fixed cadence, and restarts work that stalls. OpenAI said Symphony increased landed pull requests by 500% on some teams, a company-reported figure tied to its internal deployment.

Watch and fix appears to bring a narrower version of that continuous-agent model into the Codex desktop product. The unit of work is a pull request rather than an issue-tracker ticket, and the objective is tightly bounded: keep the branch healthy, resolve conflicts, and optionally get it merged.

Anthropic already offers overlapping Claude Code workflows. Its current desktop documentation describes a CI status bar that polls check results, along with Auto-fix and Auto-merge toggles. Anthropic's web Auto-fix workflow also watches pull-request events, investigates failed checks or review comments, and can push a clear fix.

OpenAI's 10-minute heartbeat is therefore an implementation detail, not evidence that Codex uniquely solves a documented limitation in Claude Code. Without an authoritative Anthropic source establishing a specific merge-conflict gap, the supported conclusion is narrower: Watch and fix gives Codex a recurring task that re-reads GitHub, repairs the branch, and can retain responsibility until the pull request merges or closes.

RuntimeWire contacted OpenAI for comment and will update this story if a response eventually completes the round trip.

Reader comments

Conversation for this story loads after sign-in.