Record the ninth sweep, over the widget vocabulary
Eight findings in iris `c2b8bf8`, the largest a widget's own size hint overriding a length rule that hint cannot express -- which no widget here but `Image` can reach, so the dump is unchanged and the case builds its own widget. The lesson for the next round is in the handoff beside the seventh and eighth sweeps' own: where a round fixed a class of defect one instance at a time, the check belongs in the shared helper, which closes the class and tests the instances that round said were already fine. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
0b60713806
commit
8adad924b9
2 files changed
+126
-3
No files matched your search
+14
-3
@@ -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 `77ed7a2`,
|
||||
and past the reviewed `cadfba0` it is ten rounds, each described in
|
||||
**Iris PR #19** (`layout/one-ask`) replaces closed #18. The tip is `c2b8bf8`,
|
||||
and past the reviewed `cadfba0` it is eleven rounds, each described in
|
||||
`docs/LAYOUT_LOG.md`:
|
||||
|
||||
- **The repair**, `add6774` and `84dad21` -- collapsed-share placement,
|
||||
@@ -44,6 +44,12 @@ and past the reviewed `cadfba0` it is ten rounds, each described in
|
||||
sitting at the top of the same file, the GPU rigs' adapter probe written
|
||||
twice, a mask resolved three times, a field nothing reads, a shrinker
|
||||
claim its own assertion does not make, and three stale numbers.
|
||||
- **A sweep over the widget vocabulary and the eighth sweep's own fix**,
|
||||
`c2b8bf8` -- a widget's own size hint overriding a length rule the hint
|
||||
cannot express, marking a widget for redraw having no name at twenty-one
|
||||
call sites, the helper the eighth sweep shared being unable to see the
|
||||
defect it had just fixed, two bare arrays where the framework names the
|
||||
pair, forty-five lines nothing references, and one word for two things.
|
||||
|
||||
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
|
||||
@@ -126,7 +132,10 @@ a compile error, which reads exactly like a fuzzer failure.
|
||||
The eighth adds a second lesson, about the tests themselves: a fixture a
|
||||
fuzzer shrank is a regression test, so a round that rewrites one has to
|
||||
prove the tree is the same rather than that the case still passes, since
|
||||
a fixture that quietly changed still passes and covers nothing.
|
||||
a fixture that quietly changed still passes and covers nothing. The ninth
|
||||
adds a third: where a round fixed a class of defect one instance at a
|
||||
time, put the check in the shared helper, which both closes the class and
|
||||
tests the instances that round said were already fine.
|
||||
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
|
||||
@@ -140,6 +149,8 @@ a compile error, which reads exactly like a fuzzer failure.
|
||||
`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.
|
||||
`Align` now has `Index<Axis>`, so the `if let Some` each
|
||||
`partial_align` writes twice collapses when that sweep reaches them.
|
||||
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
|
||||
|
||||
Reference in new issue
Block a user