Record the seventh sweep, over the rigs and the sixth sweep's own fix

Six findings in iris f8aa0c5, and the seven things that tripped a rule and
were left. Three of those are named as work waiting for the pre-review-gate
pass, since they pre-date #19 and are outside its diff.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
iris-aiandClaude Opus 5 committed 2026-09-20 02:54:22 -04:00
1 parent 29dd84e04e
commit 5b34d406c7
2 files changed
+133 -10

No files matched your search

+22 -10
View File
@@ -6,8 +6,8 @@ found is in `docs/LAYOUT_LOG.md`.
## The Iris layout repair is submitted
**Iris PR #19** (`layout/one-ask`) replaces closed #18. The tip is `b7b8d09`,
and past the reviewed `cadfba0` it is eight rounds, each described in
**Iris PR #19** (`layout/one-ask`) replaces closed #18. The tip is `f8aa0c5`,
and past the reviewed `cadfba0` it is nine rounds, each described in
`docs/LAYOUT_LOG.md`:
- **The repair**, `add6774` and `84dad21` -- collapsed-share placement,
@@ -32,10 +32,16 @@ and past the reviewed `cadfba0` it is eight rounds, each described in
two constants the shader and the CPU both count in written twice, and a
`Scroll` positioning content the framework positions, which cost a redraw
at the default alignment.
- **A sweep over the rigs, `Fixed`, and `b7b8d09` itself**, `f8aa0c5` -- the
other half of that same `Scroll` test, which could never decide it; a grid
conversion and its helper that only their own test called; `Len`
arithmetic written a component at a time; a question asked through a value
one line from its `&self` sibling; and `run-headless.sh --resize` leaving
a replayed gesture scaled against the mode the output used to have.
The settled design of the last three is in `docs/LAYOUT.md` under "Three
names, and the one argument that says them". Bryan settled the API over
2026-09-17 to 19; it is current, not frozen.
The settled design of the vocabulary rounds is in `docs/LAYOUT.md` under
"Three names, and the one argument that says them". Bryan settled the API
over 2026-09-17 to 19; it is current, not frozen.
The core design remains sound. Round-to-nearest is still unchanged.
@@ -105,16 +111,22 @@ a compile error, which reads exactly like a fuzzer failure.
1. **Bryan's review of #19.** Fixes are themselves unreviewed code: repeat
`pre-submit-review` over each round's changes, and apply the gate above to
whatever each one touched. The ordinary oracle does not replace absolute
geometry and retained-primitive expectations.
geometry and retained-primitive expectations. The seventh sweep is the
evidence: reading `b7b8d09`, the sixth sweep's own fix, found that it had
removed one dead operand from a test and left the one beside it.
2. **A review of everything written before the review gate existed.**
`pre-submit-review` and the rule that nothing is submitted unreviewed
arrived on 2026-09-13, well after the Rust port and most of Iris were
written, so all of that code went in unreviewed and none of the five
sweeps above covered more than the layout branch. It wants a pass of its
own (Bryan, 2026-09-20). The surface-texture defect in `02048ea` is the
written, so all of that code went in unreviewed and none of the sweeps
above covered more than the layout branch. It wants a pass of its own
(Bryan, 2026-09-20). The surface-texture defect in `02048ea` is the
argument: nothing about that arm was hard, and it was written wrong
anyway, which is what a first reader catches and a later sweep of some
other subject does not.
other subject does not. Three things it already has waiting, left out of
#19 because they are outside its diff: `Align::tuple` and both
`partial_align`s have no callers, `Vec2::align`/`partial_align` are
`UiVec2`'s with a conversion in front, and `impl_op!` carries four
grammars of which `core/src/util/vec2.rs` uses two, one line apart.
3. **Integrate the app's Iris capabilities before changing its pin.**
`32f6ad8` has 45 commits not reachable from the review branch; shared UI
ownership, richer masks, Android support, and app-side performance work