name: roborev:fix description: Fix multiple review findings in one pass by discovering unaddressed reviews and addressing them all
roborev:fix
Fix all unaddressed review findings in one pass.
Usage
$roborev:fix [job_id...]
Instructions
When the user invokes $roborev:fix [job_id...]:
1. Discover reviews
If job IDs are provided, use those. Otherwise, discover unaddressed reviews:
roborev fix --unaddressed --list
This prints one line per unaddressed job with its ID, commit SHA, agent, and summary. Collect the job IDs from the output.
If no unaddressed reviews are found, inform the user there is nothing to fix.
2. Fetch all reviews
For each job ID, fetch the full review:
roborev show --job <job_id>
3. Fix all findings
Parse findings from all reviews. Collect every finding with its severity, file path, and line number. Then:
- Group findings by file to minimize context switches
- Fix issues by priority (high severity first)
- If the same file has findings from multiple reviews, fix them all together
4. Run tests
Run the project's test suite to verify all fixes work:
go test ./...
Or whatever test command the project uses.
5. Record comments and mark addressed
For each job that was addressed, record a summary comment and mark it as addressed:
roborev comment --job <job_id> "<summary of changes>"
roborev address <job_id>
6. Ask to commit
Ask the user if they want to commit all the changes together.
Example
User: $roborev:fix
Agent:
- Runs
roborev fix --unaddressed --listand finds 2 unaddressed reviews: job 1019 and job 1021 - Fetches both reviews with
roborev show --job 1019androborev show --job 1021 - Fixes all 3 findings across both reviews, prioritizing by severity
- Runs tests to verify
- Records comments and marks addressed:
roborev comment --job 1019 "Fixed null check and added error handling"thenroborev address 1019roborev comment --job 1021 "Fixed missing validation"thenroborev address 1021
- Asks: "I've addressed 3 findings across 2 reviews. Tests pass. Would you like me to commit these changes?"