Commit Graph
21 Commits
Author SHA1 Message Date
iris-aiandClaude Opus 5 60bf2568f8 Say what the two measurement worktrees are for now
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 18:52:23 -04:00
iris-aiandClaude Opus 5 d50e791130 Record what the shaping store cost and what it bought
Both gestures, since two widths in turn flatters a store and a drag does
not, and the memory beside the time: the question that decided the shape
of it was whether it is a fixed cost or one per text widget.

Bring LAYOUT.md's §1 and §2 to what shipped. A widget returns its size
rather than recording it, a slot carries a box rather than a
translation, and the per-axis answer is `OnResize` rather than
`is_size_independent` -- and the constraint the position chain replaced
was an agent's, which the text now says.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 18:51:34 -04:00
iris-aiandClaude Opus 5 2acfcf51aa Compare the retained layout with the old code on one tree
The random generator grew during the work, so the seed that names a
1061-widget tree in the pre-#16 rows names a 144-widget one now. Every
"still N times the old resize" here was measured across that change and
says nothing; a hand-written fixture that compiles on both revisions
says the old code is 2.2x cheaper and puts a paragraph outside the
output, for two reasons it records as deliberate.

Record what a resize frame is actually spent on -- 63% text, 0.9%
draw_inner -- and what removing the single-entry shaping and placement
caches measures at.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 18:10:14 -04:00
iris-ai ecce4448f0 Document per-axis retained layout 2026-09-14 17:49:42 -04:00
iris-ai 974d6c7a52 Document coalesced resize layout 2026-09-14 17:06:41 -04:00
iris-ai 986f98380d Document retained layout diagnostics 2026-09-14 16:42:42 -04:00
iris-ai ccc75d24fe Separate layout cost from draw counts 2026-09-14 16:25:54 -04:00
iris-ai cb1cfff0bf Record retained layout optimization results 2026-09-14 15:58:10 -04:00
iris-aiandClaude Opus 5 38f6f9ac07 Record what the layout actually costs, and what of it is necessary
The random tree at depth 7 measured against the two revisions before it: the
GPU pass is a tenth of a millisecond everywhere, and every difference is the
CPU laying out. A repaint of one leaf costs 1313 draws and 6.5 ms where the
pre-#16 code cost one draw, because `redraw` escalates to the top size reader
before knowing whether the size changed at all. Drawing first and escalating
only on a different size takes that to one draw and takes a resize below the
pre-#16 number, but misplaces four widgets in the resize case, so it is the
owner's to call.

Also records the measure-by-drawing multiplier -- 1.3x the drawn widgets at
depth 4, 5.2x at depth 8 -- and that scrolling is now part of the random
trees.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-14 14:36:11 -04:00
iris-ai ba275fc966 Rewrite the handoff around what is true now: the chain's invariants, the open pixel decision, and what is left 2026-09-14 14:07:11 -04:00
iris-ai d5486b124a Record the random tree's padding nodes and span add/remove scenarios 2026-09-14 13:48:53 -04:00
iris-ai e442481a30 Record the two reuse defects the random trees found, their fixes, and the one-pixel tabs difference left for Iris to call 2026-09-14 13:31:46 -04:00
iris-ai 19b9ca7413 Record #18's three agreed changes, the measurement, and the wrapping-text divergence the random-tree rig found 2026-09-14 13:06:49 -04:00
iris-aiandClaude Fable 5.1 5959d58e44 Record the agreed plan after #18: opt-in slots, a rewalk stretch, Span saying Scale
And the open question beside it: a slot that carries a box rather than a
translation, which would make a move and a stretch of a Scale subtree
one write each. To be measured with chain_cost before it is chosen.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-09-14 11:39:45 -04:00
iris-ai c683e62e4f Bring the handoff up to date: #18's state, the open question, and the rigs 2026-09-14 11:08:59 -04:00
iris-ai e90b026969 Record the chain-depth measurement and the question it opens 2026-09-14 03:32:03 -04:00
iris-ai 836c222f0c Record #16 and #17 merged, and #18 opened for the position chain 2026-09-14 03:16:29 -04:00
iris-ai 9f039d6440 Record that Remap is temporary, to be deleted by region chaining 2026-09-14 02:44:58 -04:00
iris-ai d373a1b05c Record the Remap contract and the measured resize cost 2026-09-14 01:27:48 -04:00
iris-ai 270fe66802 Record the resize change, and why the position chain moved up 2026-09-14 01:09:33 -04:00
iris-ai 0aaa1f92db Record both review rounds answered, and what alignment now follows 2026-09-14 00:40:52 -04:00