The standing instruction is to re-count the booths before scoping U7. Done against the live 19-booth set, so the scope call is a short read rather than an investigation. Two findings. Sections are worth zero and it is now measured twice: not one of the eleven gallery booths has a subdirectory, and the only two booths that do are both reports, the job where grid navigation matters least. And the grouping signal is in the filename rather than the tree -- stripping a trailing digit-run yields 5 to 16 sensible groups on four of the five large galleries and degenerates to one group on the fifth, while the competing split-on-second- hyphen heuristic is useless everywhere. The sizing case has also moved: the unit was scoped against 270-item booths and the largest gallery is now 81 items / 40 images. No U7 code and no U7 contract. The scope direction is the operator's call.
3.1 KiB
U7 re-measured before scoping — sections are dead, filename prefixes are not
2026-09-22 · booth
Pre-work, not the unit. The standing instruction is "re-count the booths before scoping U7". Done, on the live set (19 booths). No U7 code, no U7 contract — this exists so the scope call is a thirty-second read.
The set as it actually is
| booth | items | images | subdirs | shape |
|---|---|---|---|---|
miranda-is |
92 | 0 | 0 | report |
sindra-bakeoff |
81 | 40 | 0 | gallery |
sindra-corpus-v1 |
66 | 66 | 0 | gallery |
sindra |
61 | 30 | 0 | gallery |
sindra-sfw-pool |
59 | 59 | 0 | gallery |
sindra-nude-pool |
42 | 42 | 0 | gallery |
pewpew-ui-brief |
34 | 1 | 7 | report |
dfa-concepts |
21 | 14 | 1 | report |
| …11 more | ≤19 | 0 |
Finding 1 — sections are worth ZERO, and this is now measured twice
Not one gallery booth has a subdirectory. Zero of eleven. The only two
booths with subfolders are both reports, the job where grid navigation
matters least, and pewpew-ui-brief's seven subdirs hold one image.
The IA doc calls sections "most of the navigation fix". On this set they are
none of it. Cutting Item.section rendering from U7 costs nothing measurable.
(Item.section already exists from U1 and stays — this is about whether U7
builds a section RAIL, not about deleting a field.)
Finding 2 — the grouping signal is in the FILENAME, and it pays
Tested two heuristics against every large gallery. Strip a trailing digit-run from the stem and group on what remains:
| booth | images | groups | verdict |
|---|---|---|---|
sindra-corpus-v1 |
66 | 16 | useful |
sindra-nude-pool |
42 | 12 | useful |
sindra-sfw-pool |
59 | 10 | useful |
sindra-bakeoff |
40 | 5 | useful |
sindra |
30 | 1 | degenerates |
Specimens: 00-sheet-c1-market-noon.png, ac01.png, a01.png,
flag-rear.png. The competing heuristic — split on the second hyphen — is
useless everywhere (59 "groups" from 59 files).
So a prefix heuristic pays on 4 of 5 large galleries and collapses to one group on the fifth. That is a filter/grouping affordance, not a section rail, and it must degrade gracefully to "one group" rather than render a useless single-section rail.
What this implies for the scope, stated as a recommendation not a decision
U7 as written is four things: sections, a sticky rail, filters, grid keyboard. The measurement says drop sections, keep the other three, and consider prefix-grouping as the thing sections were supposed to be — with a stated degenerate case.
⚠ The sizing case has also changed: the unit was scoped against 270-item booths and the largest gallery is now 81 items / 40 images. Everything about virtualization stays parked (2026-09-21-ia-and-v1-gate-landed names it); at 66 images a lazy grid is fine and measuring it first is the rule.
The booth set churned again during this session — sindra-sfw-pool (59
images) appeared and the pancake-* set went. Re-count again before writing
the contract; do not trust this table either.