Skip to content

pilot v2.296.0

Choose a tag to compare

@github-actions github-actions released this 27 Oct 15:04
· 93 commits to main since this release

Changelog

πŸš€ Features

  • 018e450: feat(autopilot): post-merge reviewer β€” after a Pilot PR merges, a model pass reviews the diff against the issue and posts VERDICT plus defects on the PR; REQUEST-CHANGES files a labeled follow-up issue (#5868) (@alekspetrov)
  • 076bb48: feat(executor): pause task admission on a usage-limit failure until the reported reset (#5874) (@alekspetrov)

πŸ› Bug Fixes

  • d87d484: fix(approval): RecordDecision cleans the waiter on sql.ErrNoRows (unlinked request) as before GH-5803, and the GH-4777 comment states the three outcomes (#5894) (@alekspetrov)
  • bfa013c: fix(approval): github-review poller records the approval decision on the context it just cancelled, so every polled approval is dropped since v2.290.0 (#5872) (@alekspetrov)
  • 8d51f22: fix(autopilot): post-merge reviewer shares one daily cap across controllers, and its follow-up issue carries no-decompose with plain-text defect locations (#5876) (@alekspetrov)
  • 91ac18f: fix(autopilot): the post-merge follow-up issue renders Reviewer Notes without backticks so a cross-repo counterpart path cannot trip the base-presence gate (#5886) (@alekspetrov)
  • 272fa3c: fix(ci): resolve CI failure from PR #5884 (#5892) (@alekspetrov)
  • 57e9356: fix(executor): PR creation and the recovery ref must run on a fresh finalize window; the acceptance-evidence step gets its own budget and reuses quality-gate output instead of re-running it (#5875) (@alekspetrov)
  • b847482: fix(executor): a re-pick must lease-push over a stale pilot/GH-N head left by a previous run of the same task when no PR exists β€” two parks on 10-26 (ui#280, #5861) (#5869) (@alekspetrov)
  • 5310188: fix(executor): acceptance evidence never shows a budget-killed command as evidence, and gate-output reuse is skipped when HEAD moved after the gates (#5895) (@alekspetrov)
  • c699647: fix(executor): direct mode stale-branch cleanup must not run git branch -D on the branch the clone is checked out on β€” retry after a closed PR fails deterministically until the repick cap parks the task (#5870) (@alekspetrov)
  • 5cc2c01: fix(executor): finalizeCtx grants the fresh window when the remaining deadline is shorter than the budget, and the window covers the post-PR webhook, main sync and learning record (#5896) (@alekspetrov)
  • 4c2170b: fix(executor): the gh guard must deny gh pr create and gh pr merge from the agent session β€” Pilot opens the PR after the gates, and an agent-opened PR is adopted and merged on CI alone (#5880) (@alekspetrov)
  • 1fcbf01: fix(executor): the stale-running reaper must never delete a row or prune a worktree that this process is still executing β€” check the runner's live registry before the completed-task shortcut (#5881) (@alekspetrov)
  • 62fdf98: fix(github): after the slot wait, re-check the live issue β€” closed, trigger label removed or an admission-blocking label added β€” and skip with a repick backoff instead of running the stale snapshot (#5871) (@alekspetrov)
  • 4ca2480: fix(github): the live admission gate compares the trigger label case-insensitively, like the SDK poller and webhook (#5893) (@alekspetrov)

πŸ“š Documentation

  • d050988: docs(knowledge): learning β€” app Auto-fix stays off on Pilot PRs, autopilot owns the CI-fix loop (founder 2026-10-26); graph edges from today's nav-research runs ( <>)

πŸ”§ Maintenance

Other

  • ff9c753: test(executor): pin the runner-to-dispatcher liveness wiring with a real Runner, log the stale-reap skip at Info, and add CompletedExecutionID to the task-completion invariant (#5887) (@alekspetrov)