Skip to content

Stale-checkout pre-flight block has no self-heal: runs fail hard instead of pulling main themselves #802

Closed

Description

@proagentstore

Related to #801.

When a coding run's local checkout is behind origin/main, the pre-flight check in #801 correctly refuses to start the run so it doesn't build on a stale base. But the block is a complete dead end: the run fails immediately with stopReason 'failed' and a message telling the human to run git pull --ff-only directly on the machine hosting the agent.

This happened twice in a row today on the ProAgentStore/platform coder itself (Sergeys-Mac-mini runner), 19 commits behind origin/main (local 5b671b2, origin/main 0af538a). Passing an explicit 'pull first, then do the work' instruction in the objective does not help — the pre-flight check stops the run before the objective is even attempted, so the agent never gets a chance to self-heal by pulling.

Requested fix: when the only problem is a stale-but-clean checkout (no uncommitted local changes, no conflicts), let the pre-flight step attempt git pull --ff-only itself before blocking, and only fail hard if the pull itself fails (e.g. diverged history, conflicts, dirty working tree). This removes the need for a human to physically intervene on the runner machine just to unblock a routine stale checkout.

Activity

  1. added
    bugSomething isn't working
    P2: correctnessReal defect, no live harm today — inert fields, miscounts, missing guards
    runnerpackages/browser-runner + packages/cli — ships only via an npm publish
    coderThe Coder wedge agent (#68) — Engine, Pilot, Co-pilot, Loop, Overseer
    on Sep 11, 2026
  2. added 2 commits that reference this issue on Oct 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2: correctnessReal defect, no live harm today — inert fields, miscounts, missing guardsbugSomething isn't workingcoderThe Coder wedge agent (#68) — Engine, Pilot, Co-pilot, Loop, Overseerrunnerpackages/browser-runner + packages/cli — ships only via an npm publish

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions