Skip to content

Commit 4ea2be2

Browse files
wesmclaude
andauthored
Allow refining on main with --since parameter, wait on in-progress reviews if any when invoking refine (#53)
**New Features** - Add `--since` flag to `refine` to limit reviews to commits since a given ancestor. **Improvements** - Wait for in-progress reviews before triggering branch reviews to avoid duplicate work Also quite a bit of roborev-driven test coverage --------- Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
1 parent e7a7eb1 commit 4ea2be2

File tree

12 files changed

+1326
-88
lines changed

12 files changed

+1326
-88
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,10 +95,12 @@ Use `refine` to automatically address failed reviews on your branch:
9595

9696
```bash
9797
roborev refine # Fix failed reviews using default agent
98-
roborev refine --agent claude-code # Use specific agent
98+
roborev refine --agent claude-code # Use specific agent for addressing findings
9999
roborev refine --max-iterations 5 # Limit fix attempts
100100
roborev refine --quiet # Show elapsed time instead of agent output
101101
roborev refine --reasoning thorough # Use thorough reasoning (slower, more accurate)
102+
roborev refine --since abc123 # Refine commits since a specific commit
103+
roborev refine --since HEAD~3 # Refine the last 3 commits (works on main branch)
102104
```
103105

104106
```mermaid
@@ -121,7 +123,7 @@ flowchart TD
121123

122124
The loop processes commits oldest-first. When a fix fails review, it keeps addressing that fix until it passes before moving to the next oldest failed commit. Passing reviews are automatically marked as addressed. When no individual failed reviews remain, a whole-branch review runs; if that passes, the refiner exits successfully.
123125

124-
Requires a clean working tree and must not be on the main branch.
126+
Requires a clean working tree. By default, refine works on feature branches (comparing against main). Use `--since` to refine specific commits on any branch, including main.
125127

126128
### Security Considerations
127129

cmd/roborev/main.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -900,6 +900,11 @@ Examples:
900900
roborev respond --job 1234567 "msg" # Force numeric arg as job ID`,
901901
Args: cobra.RangeArgs(1, 2),
902902
RunE: func(cmd *cobra.Command, args []string) error {
903+
// Ensure daemon is running
904+
if err := ensureDaemon(); err != nil {
905+
return fmt.Errorf("daemon not running: %w", err)
906+
}
907+
903908
ref := args[0]
904909

905910
// Check if ref is a job ID (numeric) or SHA

0 commit comments

Comments
 (0)