Changes touching this path
- loot runner once and serve, the runner side and the last land of #2130 (ADR 0091 §5, §7 to §11): a store-less runner reads its home file, or the same LOOT_RUNNER_* keys from the environment, claims one job of a kind it can do, leaves a job below its --trust floor for its lease to return, and fetches the one version through /jobs/fetch. before a byte is written the node's id must derive from the tree the forge sent and a node naming an author must carry its signature, since the pass it signs names that version; the tree opens with its key-only grants into a ScratchTree, now built from rows by ScratchTree::of_rows, which also refuses a path that would leave it, and pipeline::run_kind runs that kind on that trigger through the same step executor as run, teed so the output is kept. only a pass is signed; the detail is each step's name, outcome, exit code and duration and the count of unopened paths, and anything that quotes the tree, the unopened paths, a step's last 8 KiB and an unreadable declaration's refusal, rides a log tail sealed to the repo's owner as a runner-signed SealedGrant. serve is once in a loop, store-less too since a runner key cannot pull, claiming again after a judged job and waiting --poll after anything else. measured from an empty home against a release forge holding this repo's tree as one change of 1,693 files: runner add deposited every key in 0.42 s and runner once took 2.74 s from claim to posted verdict with the check 1.45 s of it, leaving 0 files behind. ADR 0091 records the departures from §5 and §7, what the runner cannot check and what is not built, and the review's corrections; loot_core re-exports change_id. red under sixteen named mutations, each restored, counts read each time: 6 passed and 1 failed over the seven runner tests for the id not re-derived, the signature not verified, an unstartable step not unrunnable, a stepless kind passing, output in the detail, the log keeping each step's head, the log sealed to the runner, serve waiting after a judged job, a home whose key is not its pubkey, a path leaving the scratch tree, a refusal echoed into the detail and the unopened paths unnamed; 21 and 1 over the pipeline tests for a job running every kind and a job's steps not kept; and 0 and 1 end to end for a pass signed on a failed job. the verb census moves to 148 usage lines and classifies <floor>, and after the review fixes the census, runner, pipeline and runner end-to-end tests were re-run green, the whole suite being the land gate's (#2130)
872ff35a · 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.