Commit graph

1 commit

Author SHA1 Message Date
545232f61e ops(scripts): clear-stale-ref-pr-5224 reviewable cleanup script
PR #5224 (clay/research-2026-04-29) has dual-approve verdicts but stalled in
status='conflict' on a stale-ref ff-push failure. conflict_rebase_attempts hit
the 3-attempt cap. The failure is mechanical (main moved during merge), not
content — eval gate already passed, cherry-pick onto fresh main HEAD should
resolve.

Script resets the conflict state so the merge cycle picks the PR back up:
  - status: 'conflict' -> 'approved'
  - conflict_rebase_attempts: N -> 0
  - last_error: cleared
  - audit_log entry: stage='ops', event='pr_5224_stale_ref_reset'

Two safety guards:
  - Branch must match clay/research-2026-04-29 (refuses to rewrite an
    unrelated PR if #5224 was renumbered)
  - Both verdicts must be 'approve' (refuses to set status='approved'
    on a PR the eval gate didn't pass)

Idempotent. Mirrors reset-m3taversal-sourcer.py shape per the
reviewable-mutations standing rule (Ganymede, Apr 27).

Per Ganymede observation #3 in the May 10 reaper-allowlist review.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-10 19:41:17 +01:00