Record the fifth #11 review

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
irisandClaude Opus 5 committed 2026-09-13 16:53:00 -04:00
1 parent 8daf1bcac1
commit 43f6bda92d
1 file changed
+12 -11
+12 -11
View File
@@ -5,8 +5,8 @@ Not a decisions log; delete it when the extraction is done.
## Read this first ## Read this first
**Pull request #11 has been reviewed four times; the fourth is answered in **Pull request #11 has been reviewed five times; the fifth is answered in
`29d390d` and the fifth has not arrived.** Check for one before doing anything `01a9b86` and a sixth has not arrived.** Check for one before doing anything
else: else:
```sh ```sh
@@ -39,7 +39,7 @@ packing images into arrays like atlas pages, and a bindless `binding_array`
- Agent fork: `git@git.arirex.me:iris-ai/iris.git`. The bot cannot push - 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`. canonical; work in the fork and open PRs into `iris/iris:main`.
- **#11** `split/11-texture-bindings`, worktree `/home/bob/repos/iris-pr11`, - **#11** `split/11-texture-bindings`, worktree `/home/bob/repos/iris-pr11`,
head `29d390d`, nine commits on top of `0f6a28b`. Reviewed four times, all head `01a9b86`, ten commits on top of `0f6a28b`. Reviewed five times, all
answered. answered.
- **#12** `split/12-pointer-routing`, worktree `/home/bob/repos/iris-pr12`, - **#12** `split/12-pointer-routing`, worktree `/home/bob/repos/iris-pr12`,
head `028521b`. A scroll falling through a hovered button. Not reviewed as head `028521b`. A scroll falling through a hovered button. Not reviewed as
@@ -58,8 +58,8 @@ shape:
`Textures` holds standalone images only. `Textures` holds standalone images only.
- **A primitive registers itself by being drawn.** The type carries its own - **A primitive registers itself by being drawn.** The type carries its own
WGSL and `PrimitiveRegistry` keys ids by `TypeId`, so the kind comes from the WGSL and `PrimitiveRegistry` keys ids by `TypeId`, so the kind comes from the
type and there are no `RECT`/`GLYPH`/`TEXTURE` constants. Built-ins are type and there are no `RECT`/`GLYPH`/`TEXTURE` constants. Nothing is seeded,
seeded up front only so first-draw order cannot shuffle them. so an id depends on what a ui drew first and a ui pays only for what it uses.
- **Nothing dispatches dynamically.** Push, free, renumber, upload and draw are - **Nothing dispatches dynamically.** Push, free, renumber, upload and draw are
identical for every primitive; only the entry size and the pipeline differ, identical for every primitive; only the entry size and the pipeline differ,
and those are data. `InstanceList` carries a runtime stride and its data as and those are data. `InstanceList` carries a runtime stride and its data as
@@ -72,12 +72,13 @@ shape:
recorded at write time; no other pipeline mentions textures at all. recorded at write time; no other pipeline mentions textures at all.
- **`shader.wgsl` became `shader/prelude.wgsl` plus one file per primitive**, - **`shader.wgsl` became `shader/prelude.wgsl` plus one file per primitive**,
because one module cannot declare two types at the same binding. The prelude because one module cannot declare two types at the same binding. The prelude
carries the window, masks, atlas, sampler, vertex shader and `masked()`, and carries only what every primitive uses -- window, masks, vertex shader,
is the one place binding numbers are written down. `masked()` -- and its header records the group 0 binding numbers; the atlas
- **Order within a layer means nothing** and nothing claims otherwise -- but and sampler are declared by the shaders that read them.
the widgets do rely on it today, since a `Text` over a `Rect` in one layer - **Order within a layer means nothing**, and the widgets do not rely on it:
only works because glyph registers after rect. Open question, raised on the `Stack` gives each child its own layer and `TextEdit` draws its view in a
PR: text may need a layer of its own. child layer above the selection rectangles. Verified with a ui that
registers glyph before rect.
## Standing instructions from the owner ## Standing instructions from the owner