From 621f08d7253d82bf477baf9f5cffbb564877b164 Mon Sep 17 00:00:00 2001 From: iris <2+iris@noreply.localhost> Date: Sat, 5 Sep 2026 20:25:43 -0400 Subject: [PATCH] DECISIONS.md, RUST.md: Iris decided iris over Masonry, 2026-09-05 Co-Authored-By: Claude Fable 5.1 --- docs/DECISIONS.md | 12 +++++++++++- docs/RUST.md | 12 +++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/docs/DECISIONS.md b/docs/DECISIONS.md index 681be6d..dc8cda9 100644 --- a/docs/DECISIONS.md +++ b/docs/DECISIONS.md @@ -65,7 +65,17 @@ marked **DEFERRED** are ones the agent chose not to decide alone. - **Order of remaining work, updated 2026-09-05**: the two in-flight pieces and I5's Android integration are all done; next is giving iris its own frame-timing report so item 3 below can be decided by a number. -- **DEFERRED — whether to commit to iris over Masonry for `ai-app`.** +- **DECIDED by Iris, 2026-09-05: iris is the app's framework; Masonry was + the calibration.** Her words: "I think iris definitely makes more sense + based on the limitations we've found." The limitations: Masonry has no + touch scroll on Android (E2), no per-span rich text and no cross-row + selection on the pinned commit (E2), and its keyboard bridge is a TODO + (E1); iris carries the same screen under the Compose baseline on the + host GPU (p50 15.0 ms against Compose's 20.0 ms, RUST.md's I5 box). What + follows: the E-steps are closed as calibration, and the port proceeds + on iris — screens, the shell (E3/E5), and `client-core` underneath. + The item below is kept as the record of what she decided from. +- **Was DEFERRED — whether to commit to iris over Masonry for `ai-app`.** Updated 2026-09-05 with the clean comparison the recommendation wanted: same sandbox session content, same emulator, `EMU_GPU=software`, one session. Headline numbers (RUST.md's I5 box, "Clean scroll comparison, diff --git a/docs/RUST.md b/docs/RUST.md index 225f921..b8fb09d 100644 --- a/docs/RUST.md +++ b/docs/RUST.md @@ -36,6 +36,10 @@ session spending an afternoon on them again. ## Where things stand (2026-09-05) +- **Decided 2026-09-05: iris over Masonry**, by Iris, from the host-GPU + numbers in I5's box and E1/E2's findings. See the Recommendation's item + 3 and `DECISIONS.md`. Next: the remaining screens and the app on iris — + a new ordered list is the next thing to write into this file. - **I5 is now `[x]`: a clean, single-session, like-for-like 24-swipe scroll comparison between Compose and iris exists, 2026-09-05.** Same sandbox session content for both apps, same emulator, `EMU_GPU=software` @@ -692,7 +696,13 @@ light" has a knob inside the same stack. names; winit on the desktop. On top of it, **Masonry as the yardstick** (E1, E2) and **iris as the thing being built** (I0–I5), both aimed at the same transcript screen with the same pass conditions. -3. **Decide when the transcript screen exists in both**, from the +3. **Decided, 2026-09-05: iris.** Iris made the call from the host-GPU + comparison in I5's box (iris p50 15.0 ms, Compose 20.0 ms, same + content, same emulator) and from what E1/E2 found Masonry cannot do on + Android today (touch scroll, per-span rich text, cross-row selection, + the keyboard bridge). `DECISIONS.md` has the entry. The paragraph + below is what the decision was to be made from, kept for the record. + **Decide when the transcript screen exists in both**, from the measurements, and record the decision here with the numbers. If iris carries the screen within the Compose baseline, it is the app's framework and Masonry was the calibration. If it does not, the