Changes touching this path

  • a skipped gate leaves a mark, and landed main gets a canary: the single test gate stops being silent (#642) Three questions, decided. 1. A test/lint CI workflow — YES, but exactly one, and it runs on landed main rather than on PRs. The pre-land gate IS the design real gate (loot is the merge authority, git main is a projection), so a job re-running the same suite on every review round duplicates it, adds latency, and covers only paths nobody takes. What it covers instead is SILENCE. The ticket named three ways past the gate that leave no test run behind; a fourth appeared today and cost a morning — #920 and #921 each passed their own gate and together left main red, and nobody learned until the NEXT land failed on a breakage it had not caused. #939 closed that window; this says so in minutes if anything reopens it. It uploads no artifacts, so it does not touch the quota blocking releases (#835, #909), and docs-only pushes are skipped, which is what --skip-tests is documented for. 2. clippy — NO, not yet. ~30 pre-existing warnings mean -D warnings lands permanently red and warn-only lands permanently yellow, which teaches everyone to ignore the one signal the workflow exists to make trustworthy. Same argument that kept an audit gate out of site/ (#916). It wants a cleanup pass and then its own decision. 3. --skip-tests recording itself — YES, on the verdict line, as tests=ran or tests=SKIPPED. Shouted like relay=FAILED and branch=FAILED (#519, #625), because the field is saying the change above it was never proved to build, plus a block below that cannot be scrolled past. The block also names the thing that is easy to forget: the perf gate skips WITH it, so such a land writes no point and the previous one stays the baseline. Before this the only trace of a skip was one line minutes earlier, above everything anyone was watching for. Not the commit trailer the ticket offered as the alternative: the projected commit trailer set is part of the ferry ingest contract, and adding to it is a wire-adjacent change that wants its own ticket rather than riding this one. 49e4554a · 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.