docs/RUST.md: P1 started on Iris's word, sub-order P1a-P1e by what makes the bench fair
This commit is contained in:
1 parent
e1030d69f6
commit
0449a324ef
1 file changed
+48
-1
+48
-1
@@ -5374,7 +5374,54 @@ device.
|
||||
before/after screenshot pair for item 3 (blocked on item 2); anything
|
||||
on Vulkan or the real phone.
|
||||
|
||||
- [ ] **P1 — session screen parity.** History paging backward (with the
|
||||
- [ ] **P1 — session screen parity.** **Started 2026-09-06, on Iris's
|
||||
word**: "just continue with the plan for now; try to move towards
|
||||
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):
|
||||
- [ ] **P1a — markdown block rendering parity.** Now that a row is
|
||||
a column of per-block widgets (`e1030d6`), draw each block
|
||||
the way Compose does: headings at their sizes, fences in a
|
||||
mono face with `client-core`'s `highlight` spans and a
|
||||
distinct background, bullet/numbered lists with indent,
|
||||
tables as aligned columns, block quotes, links as tappable
|
||||
spans (opening through the platform — the "tappable link"
|
||||
primitive in IRIS_TODO's "Build (for the port)"). Against
|
||||
`app/bench-fixture/`, screenshot beside the Compose bench
|
||||
build on the same emulator. Pure parts (block → style
|
||||
mapping) tested in `client-core`/`transcript-ui`.
|
||||
- [ ] **P1b — tool-call cards and grouping.** `ToolRows.kt`/
|
||||
`ToolInput.kt`'s cards: a collapsed row per call with name
|
||||
and a one-line summary, expand to input and output, runs of
|
||||
calls grouped (`adopt_run` already groups in `client-core`),
|
||||
the busy/failed states, and the kilobyte outputs the fixture
|
||||
carries without laying them out while collapsed.
|
||||
- [ ] **P1c — history paging and jump-to-latest.** Wire
|
||||
`client-core::transcript_source` into `transcript-ui`:
|
||||
the opening page, paging back on scroll with the cushion
|
||||
measured in on-screen viewports (`HISTORY_SCREENS`, IRIS_TODO
|
||||
"Build (for the port)"), the `NothingLoaded`/empty/error
|
||||
states drawn distinctly (UI_RULES: design the unknown state
|
||||
first), `join_pages` at each seam, and a jump-to-latest
|
||||
control that pins to the newest end. Pass condition: the
|
||||
P1 pass condition below, against `ui-sandbox.sh` with
|
||||
`AI_SANDBOX_BIG_MB` and `--delay`.
|
||||
- [ ] **P1d — images, the session settings dialog, attachments,
|
||||
usage bar.** `SessionImage` thumbnails (the scaled image
|
||||
widget), the modal primitive and `SessionSettingsDialog`/
|
||||
`UsageDialog`, `PendingAttachments` over the attachments
|
||||
route (`api.rs` gap), `SessionUsageBar` (the gauge widget).
|
||||
- [ ] **P1e — keyboard and insets behaviours** from AGENTS.md's
|
||||
"Things that have bitten", re-verified on the phone build:
|
||||
composer never left floating after the keyboard closes
|
||||
mid-stream, `adjustResize` + edge-to-edge together, one
|
||||
recomposition-equivalent per keyboard toggle (the
|
||||
`iris insets:` log line count).
|
||||
|
||||
History paging backward (with the
|
||||
page-boundary healing `client-core` does not have yet, below),
|
||||
`TranscriptSource`-backed cache/server stitching, jump-to-latest,
|
||||
tool-call cards and grouping, the session settings dialog, composer
|
||||
|
||||
Reference in new issue
Block a user