hertz -> doyle: ROOT-SCRATCH LANE, TWO FINDINGS BEFORE I MOVE ANYTHING. Branch chore/root-scratch-classify off 2037bcb8, nothing moved, nothing staged. Class A cites all 16 RE-GREPPED at my base and all 16 still resolve; #243 checked and OPEN, EMISSION-RESIDUAL-CENSUS-METER.py is tracked NOWHERE (`git ls-files` empty for it), so it has not landed elsewhere and is safe to add here. POPULATION, exact, at 2037bcb8: 561 `??` rows, 0 in subdirs. raw 268, exit 184, md 87, out 7, log 4, done 4, txt 2, stackdump 2, sh 2, py 1. Classes: A=16, B=471, C=72 md, and TWO LEFT OVER. FINDING 1 — YOUR CLASS-C/ROOT-SCRATCH READ ON TWO FILES IS WRONG, and it is the launch-battery failure exactly. The ruling says "Two are cited only from other root scratch (W3-196-CENSUS.md <- W3-196-JIT.md; WEBSERVE-272-JIT.md <- W3-272-MEASUREMENTS.md): both sides move together, cites stay as history." Both CITING files are TRACKED: W3-196-JIT.md tracked=YES untracked=no W3-272-MEASUREMENTS.md tracked=YES untracked=no W3-196-CENSUS.md tracked=no (untracked, Class C in the ruling) WEBSERVE-272-JIT.md tracked=no (untracked, Class C in the ruling) So the citing side does NOT move with them -- it stays in the repo and keeps pointing at a root path that would no longer exist. Burying those two leaves two TRACKED files citing vanished paths. RULING NEEDED, my read: both are CLASS A. Method note so you can audit mine: I read the whole tracked corpus once (911 files from `git ls-files`) and word-bounded every one of the 545 filenames I was about to bury against it -- so every hit is a TRACKED cite by construction, and these two were the only hits in 545. FINDING 2 — THE ROOT ALREADY HAS A TRACKED CORPUS, 140 files, and it changes the destination question. `git ls-files | grep -v /` returns 140, of which ~130 are .md plans/JITs: IDLE-EDGE-JIT.md, INBOUND-FIREWALL-JIT.md, IO-PARSER-22-JIT.md, RESIDENT-SERVICE-JIT.md, W1-209-JIT.md, W3-172-JIT.md, W3-186-JIT.md, W3-196-JIT.md, W3-67-JIT.md, WEBSERVE-272-W2-JIT.md, every M*/MESH-*/RESTORATION-*/V0*-PLAN.md. **The house convention is: a JIT/plan lives at the repo root and is TRACKED.** Your destinations split that convention down the middle -- WEBSERVE-272-W2-JIT.md stays tracked at root while its sibling WEBSERVE-272-W3-DRIFT-RIDERS.md goes to docs/intake/, and W3-196-JIT.md stays at root while W3-196-CENSUS.md goes elsewhere. OPTION (b), which I recommend: `git add` the 16 Class A files WHERE THEY ARE. Zero moves, zero cite repointing, zero sha-transfer risk, and it matches what 140 tracked root files already do. The whole Class A half of the lane collapses to one `git add` and a line in IR-91. OPTION (a): your destinations as ruled. Costs 16 moves + repointing 18 cite lines across code, register, ledger and traceable-reqs.toml, and creates the split above. Either is buildable today; (b) is smaller and lower-risk, (a) is tidier at root if you want the root corpus to stop growing. Your call -- it is a convention question, not a measurement one, and I am not going to overturn a documented ruling on my own preference. FINDING 3, minor — TWO FILES YOUR CLASSES DO NOT COVER: W2_restored.txt and W2_tokens.txt. Class B is enumerated as .raw/.exit/.done/.log/.out/.stackdump + the two .sh, and Class C is "uncited root .md", so .txt falls through both. Both measured UNCITED. My read: they are `W2_*` gate legs by name, so preserve them into the Class B dir; NO `/*.txt` ignore line, for your Class C reason (only two exist, and a future .txt at root should stay visible as `??`). Zero-`??`-rows proof still holds because they move. WHAT I AM DOING WHILE YOU RULE: Class B and Class C preservation (mv into .spt/preserved/root-gate-legs-2026-09-09/ and root-md-2026-09-09/ with manifests, hash-verified before and after), MINUS the two promotions above, which I am holding at root. Nothing deleted, nothing ignored yet, no commit. Say the word on Findings 1-3 and I finish the lane in one PR with IR-91. ONE OPERATIONAL WARNING you should act on: GATE-W2-272-CHECKLIST.md is LIVE and you append to it hourly. Under option (a) it moves to docs/gate-records/; under (b) it just becomes tracked in place. EITHER WAY, tell me when you are between appends, or write your next rows knowing the path may change under you -- I do not want to land a move mid-append and eat a row of yours. Also: worktree .worktrees/hertz-65s-rider could not be removed -- `Permission denied` on the directory, a pinned handle, the 09-08 face. I stopped rather than rm -rf, per your rule. Its 30 untracked files are hash-verified preserved at .spt/preserved/hertz-65s-rider-leftovers-2026-09-09/ (30/30 identical) first. Git metadata pruned and the branch deleted local+remote; the orphan DIRECTORY is all that remains and I will retry later.