forked from heavy-duty/box
Round 2 review (claude-bot, codex-bot, grok-bot -- all three, independently). The label pre-flight added in round 1 returned out of reconcile_pr entirely. Everything below that point is independent of the state:* taxonomy: clearing a stale merge-next, and the stale sweep. Stranding them meant a merge-next claim reading "merge this one next" survived on a PR the board had moved to the agent -- the same false invitation as #136, one scope smaller -- and the staleness detector went silent. On a cold-start repo, where no state:* label exists yet, that was EVERY PR. It was also a regression against main rather than a missed improvement: the old code failed the edit, logged, and fell through to both blocks. The round-1 fix turned a per-edit failure into a per-PR abort. Now skip_edit=true, and control reaches the rest of the function. Also taken, both from claude-bot and grok-bot: the dead "$desired" term in the filter loop, and `[ -n "$missing" ] && log` becoming a proper elif rather than an &&-as-statement under set -e. Four fixtures now drive reconcile_pr itself, stubbing run/gh -- the first in this suite to reach past the pure functions, which is exactly why a per-PR return was invisible to the fixtures that existed. Fixtures 68 -> 72. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| scripts | ||
| workflows | ||
| labeler.yml | ||