82c006cd598fd4c516a20afc5908170a104ab203
Iris #18 is at `e166e00`, and warm layout now agrees with cold on every rig the repository has: all fifteen shrinker cases at 400 seeds of depth 5, and the oracle at 1000 seeds of depth 6. Both pass for the first time. The handoff's two standing leads, shrinker seed 288 and oracle seed 326, were one defect and are gone. What found them was asking why the `tabs` render differed, rather than counting the pixels that differed: - `d8ae9c3`: `redraw`'s second ask handed the final box over as if it were an offer, so a locally redrawn widget with its own alignment was placed twice. - `2bc6bdf`: `Stack` and `Pad` overrode every child's alignment with the near edge, which is owed only where the box really is the child's own answer. `tabs`'s counters and `text`'s narrow panel match canonical `main` again. - `38eba54`: `Holds::through`'s allowance was four half steps where three is the floor, and tightening it moved none of the rig's work counters. Why it cannot go to zero is recorded with it. - `e166e00`: pins what the gap question was actually about -- a length in pixels is that many pixels at any nesting depth, and a share is one or two steps off, which is a trade for the row filling exactly. Two corrections to this document. The bisect it reported for the partial-repaint defect named a commit that cannot have caused it, and the reasoning built on that was wrong. And its claim that `tabs` "differs only in the widget count it prints about itself" was checked at `8220a78` and left to cover `d3b0ebf`, which changed the render twice more. One API question is open: `.width()` now overwrites what `.sized()` set, since both are properties of one widget, so `tabs`'s centred square is a bar. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Languages
Rust
53%
Kotlin
44.4%
Shell
2.6%