From 8d9680547ab7e0d9e2eb50a288c47fc19fbdbab3 Mon Sep 17 00:00:00 2001 From: iris <2+iris@noreply.localhost> Date: Sun, 13 Sep 2026 19:23:44 -0400 Subject: [PATCH] Record the input restructure as a slice, and what guards it Co-Authored-By: Claude Opus 5 --- docs/IRIS_EXTRACTION_HANDOFF.md | 21 +++++++++++++++------ 1 file changed, 15 insertions(+), 6 deletions(-) diff --git a/docs/IRIS_EXTRACTION_HANDOFF.md b/docs/IRIS_EXTRACTION_HANDOFF.md index 13cf2d8..d14c9e0 100644 --- a/docs/IRIS_EXTRACTION_HANDOFF.md +++ b/docs/IRIS_EXTRACTION_HANDOFF.md @@ -45,13 +45,14 @@ packing images into arrays like atlas pages, and a bindless `binding_array` (the squash merge of #10). - Agent fork: `git@git.arirex.me:iris-ai/iris.git`. The bot cannot push canonical; work in the fork and open PRs into `iris/iris:main`. -- **#13** `split/13-wgpu30`, worktree `/home/bob/repos/iris-pr13`, head - `0a5eb2d`, one commit on `b234497`. Not reviewed yet. +- Canonical `main` is `00d2230` (#13, wgpu 30). `/home/bob/repos/iris-pr13` + is a merged branch now; do not build new work on it. - **#12** `split/12-pointer-routing`, worktree `/home/bob/repos/iris-pr12`, - head `0e7076a`, current `main` merged in. A widget takes only the input it - answers to, so a button over a list leaves the scroll. Self-reviewed on - 2026-09-13 under the new process, which found that consumption was decided - once a frame rather than per kind; waiting on the owner. + head `71ba372`, current `main` merged in. A widget takes only the input it + answers to, and only where the cursor is. Self-reviewed under the new + process, which found two defects: consumption decided once a frame rather + than per kind, and a press firing on a widget the cursor had just left. + Six tests across layers; three fail on `main`. Waiting on the owner. - `/home/bob/repos/ai-app-2` is on `rustify`, worktree clean. ## What #11 became @@ -173,6 +174,7 @@ readable references; do not build new work on them. | #9 | Preserve primitive-count recursion (`b90c855`) | | #10 | Text layout and rendering on Parley (`0f6a28b`) | | #11 | Atlas as an array texture, and the primitive rendering overhaul (`b234497`) | +| #13 | Build on wgpu 30 (`00d2230`) | URLs are `https://git.arirex.me/iris/iris/pulls/{number}`. @@ -204,6 +206,13 @@ ready, and a slice lands with tests rather than with a script in `/tmp`. Still in the target and not yet claimed: +- **The input restructure** -- `src/default/sense.rs` becomes `src/rsc/sense.rs` + (308 lines to 2313), plus `core/src/event/controller.rs`, `desktop/input.rs`, + `android/input.rs` and `sense_tests.rs`: pointer capture, drag slop and axis, + platform cancellation, mask-aware hit testing, event timestamps. It replaces + the file #12 fixes, and **the archived copy carries the same per-frame + consumption defect #12 removes** -- extracting it as-is brings the bug back, + so `tests/pointer_routing.rs` is the acceptance criterion for that slice. - Widget draw size and measurement cleanup (source commit `6671194`). - Retained span, scrolling and layout placement. - Retained paints, selection, overlays and shared UI runtime state.