SIGN IN SIGN UP

feat(daemon): persist repo families and fixup cursors across restarts

The daemon only knew repository families it had heard from since it
started, so a commit made while it was off had no owner once it came back.
Add `repo_family_store` (SQLite at `internal_dir/repo-families-db`, same
pattern as the token-usage db): the families this machine has seen and,
per worktree, where the untraced-commit fixup cursor settled.

The store is written only by the fixup pass. `fixup.scan` records each
scheduled family, seeds a cold actor from the persisted cursor, and, when
no repository is given, scans every family this process knows plus every
remembered one, marking families whose common dir is gone and pruning
them after a week (or after 90 days unseen, or beyond 1000 families).
A pass saves its settled cursor when it finishes.

The test harness gains separate stop/start helpers for a dedicated daemon
so tests can commit or rebase while it is down.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
S
Sasha Varlamov committed
e8cf505cb206630a297b4cb6585942aed45122bf
Parent: fa4a1bb