Open cells keep presses inside their field, finds open the matching cell, a closing backslash keeps the next pipe, and right presses map through typed pipes. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
3.4 KiB
FAIL
-
reference/Ely-GPUI-Components/src/documents/render/table.rs:69— [P1] The activation handler also wraps the active cell'sTextInput. Its mouse-down bubbles intopressed_cell, which commits the field and reopens it at the end. Reproduction: open the cellalpha, then click its second character; the probe gets caret 5 instead of 1. TypeX, click inside the field, typeY, press Esc, then undo once:alphaXremains instead of the originalalpha. This breaks R6.1's caret placement and single write-back transaction. Keep presses inside the active field from reactivating its cell, preserving its caret, selection and transaction; add these interaction regressions. Both failures are recorded in.work/R6.1-r1/probes-expanded.log. -
reference/Ely-GPUI-Components/src/documents/document/edit.rs:108— [P2] ChangingLanding::Endto open the last table cell breaksshow_match, which still calls it and selects offsets relative to the whole block (document/finding.rs:45). In| needle | B |\n| --- | --- |\n| C | tail |\n, findingneedleopenstail; the requested selection also lies outside that field and is discarded. ElyMark's Find navigation calls this method, so table matches are no longer selected (PRD MARK-10). Open the cell containing the match and calculate selection relative to that cell, retaining correct handling of matches spanning cells. Add a visual-mode table-search regression;review_probe_find_selects_its_table_cellreproduces the failure. -
reference/Ely-GPUI-Components/src/documents/document/cells.rs:146— [P2]guardedprotects pipes inside the input but leaves a trailing odd backslash able to escape the following table separator. Open the first header cell of|a|b|\n|---|---|\n|c|d|\n, append\, and press Esc. The result is|a\|b|\n|---|---|\n|c|d|\n, which the parser reads as a paragraph rather than a table. Editing one cell therefore changes the neighboring cell boundary, contrary to R6.1 and PRD §14.3. Protect the boundary when writing compact cells, keeping snapshot and commit consistent; test that a terminal backslash preserves the table and adjacent cells.review_probe_trailing_slash_cannot_consume_next_cellconfirms the failure. -
reference/Ely-GPUI-Components/src/documents/document/point.rs:185— [P2]point_openpasses the raw input hit offset into the escaped snapshot. The newsnapshotcode inserts backslashes before typed pipes and remaps the selection, but this independent hit offset is not remapped. In an open cell, type||||||||||[go](https://ely.dev)and right-clickg: the probe receiveslink: None, so ElyMark omits the link actions required by MARK-16. Convert the pressed byte through the same escaping transformation before callingtarget_at, and test right-click targets after newly typed pipes.review_probe_right_click_after_raw_pipes_targets_the_linkconfirms the missing target. -
reference/Ely-GPUI-Components/src/documents/document/cells.rs:12— [P3] Seven added comments violate the explicit ten-word limit: this line has 12 words;cells.rs:104,:129, and:146have 11, 13, and 11;document/lists.rs:225has 14;document/tests/cells.rs:10has 11;render/table.rs:12has 12. Counting whitespace-separated words in the added comment lines reproduces these failures (.work/R6.1-r1/static-audit.log). Shorten each to at most ten words while retaining one line.