Skip to content
GitHub stars

Troubleshooting

Reviews Not Triggering

The most common issue is commits going unreviewed. Walk through these checks in order.

Check the hook is installed

roborev uses a post-commit git hook to enqueue commits for review. Verify it exists:

Terminal window
# Standard location
cat .git/hooks/post-commit
# If your repo uses core.hooksPath (Husky, etc.)
cat "$(git config core.hooksPath)/post-commit"

A healthy hook contains a roborev enqueue call. You should see something like:

#!/bin/sh
# roborev post-commit hook - auto-reviews every commit
roborev enqueue --quiet 2>/dev/null

If the file is missing, run roborev install-hook to create it.

Check the daemon is running

The hook enqueues commits, but the daemon must be running to process the queue. Check with:

Terminal window
roborev status

If the daemon is stopped, start it:

Terminal window
roborev daemon start

roborev init starts the daemon automatically, but it won’t survive a reboot unless you’ve set up a launchd/systemd service. If the daemon was running but reviews still aren’t appearing, check the daemon log for errors:

Terminal window
roborev daemon run 2>&1 | head -50

Mangled hook file

Other tools (Husky, lefthook, pre-commit, overcommit) can overwrite or corrupt the post-commit hook. Symptoms include:

  • A stray fi with no matching if
  • Missing roborev enqueue line
  • The hook file containing only another tool’s boilerplate

To diagnose, inspect the hook file and look for the roborev enqueue call. If it’s missing or the file looks wrong, reinstall:

Terminal window
roborev install-hook --force

If your repo uses a hook manager, you may need to add the roborev enqueue call to your hook manager’s post-commit configuration instead. See Review Hooks for details on hook managers and core.hooksPath.

The nuclear option

If the above steps don’t resolve the issue, reset everything:

Replace just the hook with a known-good version:

Terminal window
roborev install-hook --force

This overwrites the existing post-commit hook entirely.

Full reset: re-initialize the repo, daemon, and hook from scratch:

Terminal window
roborev init --force

This is the “nuke it from orbit” option: it re-registers the repo with the daemon, reinstalls the hook, and restarts the daemon. Use this when you’re not sure what’s wrong and want a clean slate.

See Also