docs: phone report 2026-09-07 night -- catching a fling, silent Copy report, third-party debug flooding the ring

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
irisandClaude Fable 5.1 committed 2026-09-07 21:18:29 -04:00
1 parent 92985ba8e3
commit b38e797db3
2 files changed
+48

No files matched your search

+42
View File
@@ -1070,3 +1070,45 @@ do not duplicate it there.
drowned in per-frame `debug!` lines that predated this pass) is fixed
in the same change -- see RUST.md's section for which four call
sites.
## From the phone, 2026-09-07, night (build 92985ba, ai-app-bench bf2088b)
Iris pasted a full Copy report (Mali-G715 Vulkan, 2.55, 120Hz). What it
showed, beyond her words:
- [ ] **"Sometimes when I try to catch it while it's still moving
(particularly if I drag) then it fails to stop & snap to where finger
is."** The report's release lines show catches ending as
`v=-41`/`v=-274` pans, so the gesture *does* reach `Panning`, but the
content under the finger does not follow it while the fling is still
running and the slop has not been crossed. Compose: a down while
`isScrollInProgress` stops the fling *at the down* and starts the
drag immediately with no touch slop (`scrollable`'s
`startDragImmediately = isScrollInProgress`); the content is pinned to
the finger from the first sample. Port that: `PressStart` on a list
with a live fling ends the fling on that sample and enters `Panning`
without waiting for `DRAG_SLOP`; a release with no movement is then a
`Released(None)`, not a tap (Compose does not deliver a click either).
Layer-1 test on a flick followed by a down + small drag 150 ms later:
offset tracks the finger sample-for-sample from the down.
- [ ] **"The copy report button seemed impossible to hit until I hit the
diagnostics one."** Not hit-testing: the button logged `iris bench
report: nothing to copy -- run the benchmark first` six times and did
nothing on screen. A control that silently declines is the UI_RULES
failure "a failure is reported where it happened": Copy report must
always copy something -- the diagnostics and the log with a first line
saying no benchmark has run -- and never depend on another button
having been pressed first.
- [ ] **"The logs seem way too big to send in this message box, causes a
lot of lag."** Two causes. (1) The ring was 1339 lines of `naga::front`
/ `wgpu_core` / `jni` DEBUG output with 4050 dropped: the ring logger
accepts every crate at Debug, and the trace gate (992c472) only covers
iris's own lines. The ring must take Debug only from `iris`/`client_core`
targets when trace is on, and Info and above from everything else --
one filter at the ring, not per callsite. (2) Copy report appends the
whole ring. It should append the last ~150 lines and a first line
saying "N earlier lines omitted; full log in Dev Updater's Runtime
tab" -- the full ring is what the devlog provider is for.
- [x] Keyboard: the report shows `ime_bottom=891 ime_visible=true` then
back to 0 on the phone, so the insets now arrive with a height; the
push-up was not reported broken this time.