Changes touching this path

  • the verb that reads two books stops returning after the first: manifest returned no grants recorded BEFORE it ever called all_attestations, so every repo that tagged a release without sharing a sealed path read as though it held no attestations at all - confirmed by a real run rather than by reading, a scratch repo with one tag and no grant printing nothing from manifest while tag list showed the landmark and its note. the attestation read is hoisted ABOVE the empty-grants branch, so that branch OWN WORDING now depends on it, and the grant table moves into the else. three states where there were two: no grants and no attestations says exactly that in one sentence, no grants but attestations present prints the block under the same first line, and grants present prints both. the landmark naming from #1508 becomes reachable in BOTH states that have attestations, so a record renders as a named landmark carrying its note rather than as a raw envelope. grant-table bytes and attestation-block bytes are unchanged - what changed is REACHABILITY. the neighbouring class was checked rather than assumed: this verb had exactly ONE return, the other five in the file are refusals with nothing downstream to skip, and the sibling empty-early-returns across the CLI - grants peek, purges, shortlog, oplog, lane sweep and view - are each single-book verbs whose early return skips only the rendering of the same empty thing. manifest was the only verb reading two independent books. and the run caught a VACUOUS PIN OF ITS OWN, one level inside the defect it was fixing: the first empty-case test asserted a constant AGAINST ITSELF, green for any wording whatsoever, so the mutation collapsing the two empty states came back GREEN at 8 passed 0 failed and proved nothing - both tests now assert the LITERAL strings, that mutation is red at 7 passed 1 failed, and the reason is recorded beside them so the next reader does not rewrite it back. four mutations with counts read, and the three surfaces that describe this verb - the usage line, the README and the docs page - now agree with what it actually does (#1610) 21edfeb8 · dbf3dbe6…

Renames are not followed. loot's tree maps a path to an address, so a rename is a delete and an add. This list is the history of the name, not of the bytes.