Changes touching this path

  • review sweep 2 fix-up over #2429 (map #2422): each fold of the forge heads, at the land and at the race fold of its sync, now refuses naming the paths when the tree it reaches differs from landed main outside tickets/, and retires the merges it minted, where the per-change judgment read a merge of landed main with an ancestor of it that keeps the ancestor copy of a code file as writing nothing and folded that revert onto main, past every gate at the race fold. the race fold runs its pass with ferry::RunOpts::no_commit, which refuses a projection that would make a git commit before any ref names it, where a comparison of the mirror main after the pass left an ungated commit there for the next land to publish; a signed change that writes nothing, racing the land, was such a case. folded= is the count when the land read the forge heads, no-forge when the default remote is not a forge, and UNREAD with a FORGE NOT READ block naming why when it read none, where 0 said all three. a refused intake, a failed pass and a race fold that folds nothing drop the forge heads they read into the landing position, which kept them as heads of its own. collisions reads its base through GraphView::common_ancestor_tree, the base merge_tips merges from. the land-change skill says a ticket collision bounces for loot resolve and refuses only when the lane cannot open both sides; GATES and the ADR 0063 amendment state the gate-input property rather than kinds of gate; ADR 0098, workflow.md and CONTEXT.md, which now defines forge-only change and race fold, say what changed. pinned against an in-process forge, with the merges recorded through loot-core since no verb mints one, beside a ferry unit test; red under eleven named mutations, each restored: no property check (0 passed and 2 failed), the race fold without no_commit (0 and 1), the ferry guard off (4 and 1 in loot-cli, 0 and 1), an unreachable forge read as 0 (0 and 1), the token spelled 0 (0 and 1 over each of two pins), no block (0 and 1 over each of two pins), the intake keeping what it read (0 and 1), a failed pass keeping it (0 and 1), the fold keeping its merges (0 and 1), the race fold keeping what it read (0 and 1), and a race fold that took changes in not answering an unread intake (0 and 1). cargo test green, 4683 passed over 142 binaries with 13 ignored, three of them after a re-run: two timing flakes in loot-identity and loot-relay-contract that pass alone, and the Workspace width census, whose derived count this change moved to 406. client only, no deploy; loot-first changes, so the primary release binaries owe a rebuild (#2470) c9c46384 · 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.