You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Fixed
Cleanup convergence when a delegating repository is deleted. Previously a
vanished repoRoot made canonicalizePath throw: normal-path prune caught it
and retained the run forever (its bytes never reclaimed, so maxBytes/maxAge
could not converge), and — more seriously — a repo-gone pending cleanup intent
made validateRepositoryRoot throw outside the per-record guard in replayInterruptedPrunes, aborting the entire crash-recovery pass on every run
(a permanent block). Both paths now reconcile a repository-absent run without
Git: prune reclaims the archive directly (no lease, no ref cleanup — the
candidate and backup refs died with the repository, and no live checkout can
integrate from a vanished repository), and recovery detects the absent
repository before validation and completes or rolls back the archive by disk
state, converging instead of aborting.