Component 68d33b4..1d03545 (pushed). Round-3 findings fixed with regressions; rounds spent. Two limits recorded in the task line. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
8 lines
2.1 KiB
Markdown
8 lines
2.1 KiB
Markdown
FAIL
|
||
|
||
- `Ely-GPUI-Components/src/documents/document/format/apply.rs:39`: The 16 KiB cutoff still allows a format parse followed by the visual document's synchronous reparse (`document/mod.rs:308`) in one uninterrupted UI update, so round 2's PERF-02 defect remains. In Visual mode with no open block, put the caret at byte 3 of `format!("word\n\n{}", "~*a*~".repeat(3270))` (16,356 bytes) and toggle Strong. Thirty full-document calls measured 234 ms P95 with the component and parser optimized; all 30 emitted `Parsed` before yielding. A separate release build of the unchanged toggle plus just the subsequent parser call took 133–144 ms, excluding rendering and reader conversion. Budget the complete update, reusing a valid parse or moving expensive work off the UI thread, and cover this visual-mode case. Evidence: `.work/R4.6-r3-review/optimized-probes.log`, `timing-confirm.log`, and `review.log`.
|
||
|
||
- `Ely-GPUI-Components/src/documents/document/mod.rs:44`: Lowering the shared cutoff makes previously synchronous initial reads preserve the rendered end placeholder's scroll anchor when `adopt` inserts the document's blocks. Opening `format!("alpha beta\n\n{}", "x".repeat(20000))` directly in Visual mode now finishes at line 2 near the bottom of the second block, with the first block offscreen. The same test passes at line 0 with the first block visible when only `AT_ONCE` is restored to its previous 128 KiB value. Preserve the initial or requested document position when the first asynchronous read replaces the placeholder, and add a visual-opening regression between the two cutoffs. Evidence: `.work/R4.6-r3-review/optimized-probes.log` and `previous-cutoff.log`.
|
||
|
||
- `Ely-GPUI-Components/src/documents/document/tests/format.rs:3`: The new `std::time::Instant` import violates the component's explicit `web_time::Instant` rule and fails the mandatory time-source check in `scripts/check.sh`. Running that exact scan on the unmodified checkout identifies this line and returns the house-rule failure. Use `web_time::Instant` in the timing test. Evidence: `.work/R4.6-r3-review/house-rules.log`.
|