Repository navigation
feat: write one table cell by row and column, confirmed by reading the table again - #92
Merged
Merged
Conversation
This was referenced Oct 17, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Table cell edit (from 73's list). Builds on #86's table read.
desktop_set_celltakes pid, window, the scope snapshot, the table scope element, the row's element ID from adesktop_readtable read, a column (exact title or 0-based index) and a value.typeaction. A web grid field takes feat: type into web text fields with key events so page scripts see the input #82's web route, so it must have keyboard focus, or it is refused with the click hint.set-value.cell.readback:differs,row_changed(for example, Finder re-sorting after a rename) orunreadable.Refused before any input:
CELL_NOT_EDITABLE), with a hint pointing to a new recipeCELL_NOT_IN_SNAPSHOT)Code
table.ts: the layout is factored out ofbuildTable, with no behavior change; the existing table tests pass. AddslocateCell.cell.ts: composes the reads and the action through injected IO, like notification actions.Docs
Tests
test/cell.test.mjs, against the Finder and Numbers fixtures plus a synthetic checkbox grid:npm test: 38 pass.npm run checkis clean.Live checks: pending, screen locked. Finder rename, a web grid, and whether Numbers or Excel expose cell controls. I'll add these to #42.