iceboundrock / iceboundrock/AutoForge
Detect a retargeted base at FIX entry, not only at REVIEW and MERGE
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- Avg merge
- 8h 56m
- Merged PRs (30d)
- 40
Description
Follow-up from #68 / PR #93.
Context
#68 bound each review round to the PR, its HEAD and its base branch. REVIEW re-binds HEAD and base before launching the reviewer and marks the round stale if either moved; READY_FOR_MERGE / MERGE route base drift to REVIEW like HEAD drift.
Gap
The FIX entry (_fix_entry_problem / the HEAD check before launching the fixer) still compares the PR HEAD only. If the PR was retargeted to another base while findings are open, the fixer is launched against findings that were raised on a diff against a different base. The next REVIEW re-binds the base, so nothing unreviewed can reach MERGE, but the fix round is spent on findings that may no longer describe the PR's diff.
Proposed direction
Treat pr.base_ref != state.reviewed_base_ref at FIX entry exactly like a HEAD past the reviewed one: mark the review stale, drop the findings, FIX -> REVIEW of the actual revision without launching the fixer (_revision_drift_to_review already handles both). Skip the check when reviewed_base_ref is empty (a protocol-2 file loaded in FIX; the next review writes the binding).
Acceptance
- FIX entry with the PR retargeted →
REVIEW, fixer not launched,current_base_refupdated,open_findings == []. - FIX entry on a protocol-2 file with an empty
reviewed_base_refstill launches the fixer. docs/agent-guides/github-safety.md"Before FIX" and READMEFIXrow updated.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start at _fix_entry_problem and the HEAD check before launching the fixer, then read _revision_drift_to_review and the surrounding FIX state handling. Verify the base-ref comparison is skipped when reviewed_base_ref is empty and that retargeting routes to REVIEW without launching the fixer. Update docs/agent-guides/github-safety.md under "Before FIX" and the README FIX row, then check the listed acceptance cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- devtools, documentation
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 76/100