v0.11.0 — hgit check detects dangling/unreachable objects
hgit check now detects dangling/unreachable objects, closing the gap
Check.HC flagged since probe 69's referential-integrity pass.
- CheckMarkReachable walks the real object graph (commit ->
tree/parents/relation-target, tree -> blob children) from every
declared path's own HEAD, reporting anything left unmarked as
CHECK_DANGLING . - Verified with a real, naturally-occurring case: offering a file
twice then undo-ing back one commit leaves that commit's own three
unique objects genuinely unreachable (hgit's own non-destructive-
history design keeps them stored, just no longer HEAD-reachable). - A real correctness bug was found and fixed testing against a
long-lived repo: duplicate-content objects (the store never
dedupes identical content across offers) were false-positive-
reported dangling until a coalescing pass was added. - Regression (experiments/65-head-deletion's full command-surface
test) re-run clean. - packaging/HgitAll.HC, 148,130 bytes, tools/lint-package.sh clean.
See experiments/72-check-dangling-objects/.