Files
ElyOffice/tasks/reviews/R4.5-r2.md
T
ZacharyZhang-NYandClaude Opus 5.5 07c0b43542 R4.5: a press lands on the pressed character [~]
Component 5af11fe..c35fdac (pushed): a press opens its block with the
caret on the pressed character; a secondary press moves the caret and
emits DocumentEvent::Pointed. Three review rounds failed; the round-3
findings are fixed with the reviewer's probes as regressions, unreviewed.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-10-14 11:35:38 -04:00

3.0 KiB

FAIL

  1. Ely-GPUI-Components/src/documents/tree/blocks.rs:140 — A decoded newline can panic while opening valid Markdown. marker calls past_line before checking whether the quote is an alert, and past_line assumes the decoded newline exists literally in the source. Parsing > alpha&#10;beta without a final newline panics with its line end is written; > [!NOTE]&#10;alpha beta also panics. Derive the retained text's position through the decoded-to-source mapping, and only adjust a confirmed alert; do not assert that decoded breaks must be physical line endings. Reproduced by both review_r2_*_with_encoded_newline_does_not_panic probes in .work/R4.5-r2-review/point-final.log.

  2. Ely-GPUI-Components/src/documents/tree/sources.rs:55 — CRLF lines fail character mapping because written loses its trailing CR while shown retains it. The failed suffix comparison makes on_point use the body's initial offset. In a bare fenced code block with CRLF and body alpha followed by beta, pressing p returns byte 5 instead of 7, with both mouse buttons. Multiline CRLF front matter returns 5 instead of 12 for v in title: value; a multiline link definition returns 0 instead of 10. The new helpers also ignore CR-only line endings: the code body starts at the closing fence's end. Read LF, CRLF and CR consistently on both sides while retaining original byte offsets. The CRLF mouse probes and review_r2_line_mapping_matrix fail in .work/R4.5-r2-review/point-final.log; the existing regression only exercises the final CRLF code line.

  3. Ely-GPUI-Components/src/documents/tree/sources.rs:143 — Greedy equality still mistakes removed syntax for the pressed glyph. Right-pressing the displayed backslash in a \\ z reports byte 2, the escape, instead of byte 3. In > <div>\n> >alpha beta</div>, pressing the displayed > reports byte 8, the quote prefix, instead of byte 10. The same ambiguity maps the retained leading space in the code span of a ` xy ` z to trimmed byte 3 instead of byte 4. Preserve which bytes are escapes, container prefixes and trimmed code delimiters before matching retained characters. The backslash and quoted-HTML mouse probes, plus review_r2_code_normalized_space_reads_back, reproduce these remaining round-1 alignment cases in .work/R4.5-r2-review/point-final.log.

  4. Ely-GPUI-Components/src/documents/document/point.rs:132 — Comparing only the pressed block's raw text does not detect changed reference targets, so a write-back can still emit stale context. Open [ref]: https://old.dev\n\nGo [there][ref]\n, edit the first block's definition to https://new.dev, then right-press there. The definition is committed and the paragraph resolves to the new address, but Pointed.link is still https://old.dev because the paragraph's source text is unchanged. Resolve the target from the committed parse, or reject the press when its resolved metadata changes as well as when its source changes. review_r2_changed_definition_does_not_emit_old_link fails with the old address in .work/R4.5-r2-review/point-final.log.