Skip to content

v0.72.0

Latest

Choose a tag to compare

@wesm wesm released this 16 Oct 18:08
· 21 commits to main since this release
1d6571d

New features

  • Ask the original reviewer to reassess a finding with comment --rebuttal --finding or the same options on respond. Codex, Claude Code, Pi, and Grok return a confirmed, refuted, or superseded assessment. Add --close to close the review after recording the assessment.
  • Plan fixes before editing with fix --plan and refine --plan. Use --plan-only to save plans without starting implementation. Background fixes also offer a "Plan first" toggle in the terminal interface.
  • Review specifications, linked plans, and open Kata tasks with roborev review --type goal. The new roborev-superpowers skill connects this review with implementation and verification, and an optional watcher requests reviews when those artifacts change.
  • Read remote review history over HTTPS with repository-scoped signing keys. The list, show --job, wait, and stream commands support this optional read-only listener.
  • Require client certificates for TCP daemon connections with [daemon_tls]. roborev doctor identifies certificate files that fail to load.
  • Receive failed-review reminders in ZCode through roborev agent-hook install. The installer detects ZCode and delivers reminders at session start and prompt submission.
  • Track daily screen use, session duration, and activity through MCP tools, hooks, and commands marked --from-skill. Agent activity counts separately from human app opens.

Improvements

  • Load the review queue and expand multi-reviewer panels faster, especially with a large review history.
  • Load Analytics faster and use less memory. In one measured history, the default 30-day view drops from about 530 ms to 46 ms.
  • Inspect the recorded reasoning level in the web review drawer. Local owner sessions also show the agent command with a copy button.
  • Give reviewers the declared Go version for each module affected by Go source or go.mod changes. Each version includes its manifest path.
  • Store prompts, saved dirty-review diffs, and fix patches once in compressed form. The first startup converts existing data and needs extra disk space. Upgrade all machines sharing a PostgreSQL mirror together. Downgrading is unsupported.
  • Limit stored prompts and job logs with the opt-in prompt_retention_days and job_log_retention_days settings. Both default to keeping everything. Prompt cleanup waits for upload when sync is enabled, and active job logs remain available.
  • Recover exhausted CI agent failures with a fresh bounded retry budget when the daemon starts. Health reports distinguish automatic recovery from failures that need intervention, while remaining unhealthy until delivery succeeds.
  • Retry transient GitHub reads before reporting a CI failure. Persistent failures retain the failed operation and diagnostic details, and daemon output is saved in rotating log files.
  • Reduce repeated cost lookups for jobs that remain unpriced. The delay doubles after each unsuccessful lookup, cutting repeated process launches for unresolved sessions.

Bug fixes

  • Keep completed Codex reviews after a stream reconnect succeeds, instead of discarding them and running the review again. Failed reviews show the final failure reason.
  • Switch to the configured backup immediately when Codex access is denied. Usage-limit messages with curly apostrophes also trigger quota cooldown and failover, and dated reset times are recognized.
  • Start a fresh review session when another running review already uses the session selected for reuse. Sequential reviews still reuse sessions.
  • Record structured reviews when a reviewer such as Kiro writes narration before its final JSON answer.
  • Recognize clean verdicts preceded by bracketed timestamps instead of marking them failed.
  • Read back reviews whose summaries contain roborev's own Findings heading or an assessment line.
  • Reject ambiguous repository names and list the matching checkout paths. Repeated names show paths in the web filter, and renaming affects only the selected checkout. Use a stored checkout path to select one explicitly.
  • Exclude failed and canceled jobs from roborev list --open and the web UI's open filter.
  • Discover the daemon through the selected data directory instead of accepting another account's process on the default port. Commands no longer send auth_key to guessed addresses.
  • Review the current fork PR commit reported by GitHub after a force-push, even when GitHub's pull ref remains stale. A fetch failure for one PR no longer blocks reviews of other PRs.
  • Publish explicit CI panel reruns to their original PR and commit. Failed final-status deliveries retry after daemon restarts without reposting review comments.
  • Keep failed-review hooks responsive on detached HEAD, even with many open reviews.
  • Replace agent configuration files on Windows when running programs permit file replacement, avoiding the previous "Access is denied" error during agent-hook and MCP installation.
  • Include subprocess diagnostic messages in Git and agent errors instead of reporting only an exit status.
  • Keep isolated review sessions out of later session reuse, and build their prompts from the prepared checkout even if the caller's checkout disappears.