kerfmaster pin list · UI / workflow decisions
recordStates what the code does today. Auditable against the code — this is the only type that can go stale.
Content last changed 2026-09-04 — computed from the item itself, not typed.
Built 2026-09-04 in pl_spread.spread_y (two-pass: measure every column, derive the reference rhythm, then cap and place).
The rule: thermal evening is FOR columns with something to even. A partial column (fewer units than the sheet's max-unit columns) never evens past its neighbours' rhythm: its bottom and between gaps cap at the largest final gap among the full columns -- so its bottom row lines up with the rows beside it (Jordan's 'match the Y spacing of the bottom 2 rows') -- and the leftover lands at the TOP edge as one clean rectangle instead of confetti. Larger still governs: a gap's own required minimum (bridges, standoff) outranks the cap. Full columns even exactly as before -- they ARE the reference; a sheet whose columns all hold the same unit count has nothing to cap and is untouched; a lone sparse column with no full column to reference stays evened (it is the sheet's own rhythm). Left-as-packed columns are excluded from the reference set.
Record: a capped column reports form 'capped at the full-column gap (leftover to the top)' with the cap value beside its gaps -- never silent. The gate is unchanged: the pack's own outline audit + the sheet-wide lead judge on the moved placements; a spread that cannot pass refuses whole.
Proven: test_pl_spread 22→32 controls (cap matches rhythm, leftover to top, required minimum outranks cap, equal counts untouched, lone column evens, capped layout passes the audit); real Lathrup layout re-spread via the server codepath -- sheet 10 col3 gaps [2.41, 2.41, 30.62] (was [11.81 ×3]), sheet 2's 4-unit column matched the 5-unit column's 0.8012, audit gap +0.005 / lead +0.0576 / edge +0.005 over ruled.