docs/RUST.md: the work is done inline, not handed to subagents (Iris, 2026-09-08)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
1 parent
476609e1d3
commit
cdeb7b0857
1 file changed
+37
-35
+37
-35
@@ -34,14 +34,13 @@ the emulator, not by Mesa" and "the present mode was not the cause" are
|
||||
worth as much as the successes, because they are what stops the next
|
||||
session spending an afternoon on them again.
|
||||
|
||||
## Where things stand (2026-09-06, orchestrator plan)
|
||||
## Where things stand (2026-09-06)
|
||||
|
||||
Written by the design agent on picking the branch up after a `/clear`, so
|
||||
the next session can resume from here. P0 is delivered and Iris's phone
|
||||
report v2 is in (`docs/bench/iris-phone-v2-2026-09-06.md`); **P1 stays
|
||||
gated on her verdict**, so this pass works the P0 defects and the pure
|
||||
prerequisites in this order. Each item is ticked here by the agent that
|
||||
closes it.
|
||||
Written on picking the branch up after a `/clear`, so the next session can
|
||||
resume from here. P0 is delivered and Iris's phone report v2 is in
|
||||
(`docs/bench/iris-phone-v2-2026-09-06.md`); **P1 stays gated on her
|
||||
verdict**, so this pass works the P0 defects and the pure prerequisites in
|
||||
this order. Each item is ticked here as it closes.
|
||||
|
||||
### The transcript's edges (2026-09-07, e922b73 + d507ae4)
|
||||
|
||||
@@ -603,10 +602,16 @@ Committed: `iris/android-app/Cargo.toml`'s `[profile.release]` now reads
|
||||
`panic = "abort"`, `strip = true`, `lto = "fat"`, `codegen-units = 1`,
|
||||
`opt-level = "s"`, with a comment naming the measured savings.
|
||||
|
||||
### Queue, 2026-09-07 (orchestrator)
|
||||
### Queue, 2026-09-07
|
||||
|
||||
In order; two builders at a time. Each is ticked here by the agent that
|
||||
closes it.
|
||||
In order. Each is ticked here as it closes.
|
||||
|
||||
**2026-09-08: this work is no longer split across subagents.** Iris said
|
||||
so on that date -- "I'm no longer using subagents for this. Please do the
|
||||
work yourself" -- so the queue below is a list of work, not an assignment
|
||||
to anybody, and nothing here should be read as a brief to hand out. The
|
||||
entries that recorded who owned what are kept only where they explain why
|
||||
a change landed the way it did.
|
||||
|
||||
- [x] Test rig, layers 1 and 2 ("Three test layers" below), landed 2026-09-07.
|
||||
- [x] Fling parity with Compose, and the phone's keyboard push-up, with
|
||||
@@ -615,18 +620,13 @@ closes it.
|
||||
the estimator in the "later" one (Lsq2, not Impulse -- see the box
|
||||
below), and the catch in b87f5a5. **Not yet confirmed from the
|
||||
phone**, which is what would close it for Iris rather than for us.
|
||||
- **Orchestrator note, 2026-09-07 late**: the tree was found holding a
|
||||
non-compiling diff from two killed agents (catch-a-fling in
|
||||
`sense.rs`/`selection.rs`; shaped masks in the render files). One
|
||||
opus agent owns splitting and landing both (catch-a-fling first);
|
||||
one sonnet agent owns report hygiene and the bench header in
|
||||
`bench_client.rs` and client-core's log ring. If both boxes below
|
||||
are still open and nothing is running, that work was cut off again.
|
||||
**2026-09-08: it was cut off again** -- the sonnet agent's two boxes
|
||||
had landed (7485d78, b8ea723), catch-a-fling had landed unticked
|
||||
(b87f5a5), and the shaped-mask diff was left uncommitted in the tree
|
||||
with one failing test. Both are closed below, by one session working
|
||||
inline rather than by agents. Nothing is running now.
|
||||
- **Note, 2026-09-07 late**: the tree was found holding a non-compiling
|
||||
diff, half-written (catch-a-fling in `sense.rs`/`selection.rs`; shaped
|
||||
masks in the render files). **2026-09-08**: both are closed below --
|
||||
report hygiene and the bench header landed in 7485d78 and b8ea723,
|
||||
catch-a-fling in b87f5a5, and the shaped-mask diff was found
|
||||
uncommitted with one failing test and finished inline. The tree is
|
||||
clean and nothing is outstanding from it.
|
||||
- [x] Rows at the transcript's top edge: culled too early in one state,
|
||||
drawn through the header in the other (docs/IRIS_TODO.md, 2026-09-07).
|
||||
Done 2026-09-07, e922b73 + d507ae4; the root causes and the test names
|
||||
@@ -5367,7 +5367,7 @@ silently on real hardware.
|
||||
## The port, in order (decided 2026-09-05)
|
||||
|
||||
Iris decided iris over Masonry (`DECISIONS.md`). This is the ordered plan
|
||||
for the rest of the app, decided by the design agent per the standing
|
||||
for the rest of the app, decided here per Iris's standing
|
||||
"decide technical questions yourself" instruction — a serious
|
||||
user-facing tradeoff is not in play in the ordering itself, so it is not
|
||||
deferred to her. **Crate shape, decided here**: the screens live in one
|
||||
@@ -6348,9 +6348,8 @@ device.
|
||||
access), and item 1's root cause (needs either the phone's next
|
||||
Diagnostics-page report or a Mali trace).
|
||||
|
||||
**Recorded but not fixed this pass** (a follow-up agent takes these,
|
||||
to avoid colliding with this pass's `bench_client.rs`/`view.rs`
|
||||
changes) -- see `IRIS_TODO.md`'s "From the phone, 2026-09-06":
|
||||
**Recorded but not fixed this pass** (held back to avoid colliding
|
||||
with this pass's `bench_client.rs`/`view.rs` changes) -- see `IRIS_TODO.md`'s "From the phone, 2026-09-06":
|
||||
swiping has no momentum (stops exactly where the finger releases,
|
||||
unlike Compose's fling), and scrolling down sometimes jitters the
|
||||
text.
|
||||
@@ -6392,8 +6391,9 @@ device.
|
||||
resize on this pass's emulator (no display keyboard exercised
|
||||
end-to-end here); the reasoning is a direct code read plus the
|
||||
existing `resize` path already being surface-only, not a
|
||||
screenshot diff -- **the next agent with emulator time should do
|
||||
the before/after screenshot this box originally asked for.**
|
||||
screenshot diff -- **the before/after screenshot this box
|
||||
originally asked for is still owed, next time the emulator is
|
||||
up.**
|
||||
|
||||
**2. The blur.** Root cause: the P0 fix that made text the right
|
||||
*size* (dividing the whole window into a "logical" space, then
|
||||
@@ -6839,8 +6839,8 @@ device.
|
||||
drag arbitration into `sense.rs` behind a new `Drop` event: this
|
||||
fix touches only `attr.rs` (new `press_track`/`on_press`) and
|
||||
`iris/src/widget/text/edit.rs` (the new `press_origin` field), not
|
||||
`sense.rs` itself, so it should merge cleanly, but the next agent
|
||||
through here should check whether `Selector`/`Selectable`'s
|
||||
`sense.rs` itself, so it should merge cleanly, but whoever comes
|
||||
through here next should check whether `Selector`/`Selectable`'s
|
||||
`Pressing`-frame delivery still arrives the way this code assumes
|
||||
once that lands.
|
||||
|
||||
@@ -6858,9 +6858,8 @@ device.
|
||||
feature parity for the transcript screen so that the test can be
|
||||
more fair." So P0's "must pass before P1 starts" is lifted — the
|
||||
phone bench continues alongside, and parity is what makes its
|
||||
comparison fair. **Sub-order, decided by the design agent, by what
|
||||
the bench fixture exercises and Compose already draws** (each is
|
||||
one agent; tick and date in place):
|
||||
comparison fair. **Sub-order, by what the bench fixture exercises
|
||||
and Compose already draws** (tick and date each in place):
|
||||
- [x] **P1a — markdown block rendering parity.** Done 2026-09-06.
|
||||
Each top-level block is drawn in one of **three frames**
|
||||
(`transcript-ui::markdown::BlockFrame`, mapped from
|
||||
@@ -7402,10 +7401,13 @@ device.
|
||||
once more against a real `ai-server` (not the sandbox) on a real
|
||||
phone, side by side with the Compose build until it holds.
|
||||
|
||||
## For the next agent
|
||||
## For the next session
|
||||
|
||||
What to do when you pick this up, in order, so nothing here has to be
|
||||
re-derived:
|
||||
re-derived. **The work is done inline, not handed to subagents** — Iris
|
||||
said so on 2026-09-08 ("I'm no longer using subagents for this. Please do
|
||||
the work yourself"), so read the code, make the change, run the tests and
|
||||
push, in the session that picked the task up.
|
||||
|
||||
1. Read this file, then `AGENTS.md` and `PLAN.md`. The rules there
|
||||
(measure, do not read; fix the rig before accepting its limits; the
|
||||
|
||||
Reference in new issue
Block a user