Skip to content

fix(view): say N other beads over what rooting the forest moved - #78

Merged
GraemeF merged 2 commits into
mainfrom
wording
Sep 12, 2026
Merged

fix(view): say N other beads over what rooting the forest moved#78
GraemeF merged 2 commits into
mainfrom
wording

Conversation

@GraemeF

@GraemeF GraemeF commented Sep 12, 2026

Copy link
Copy Markdown
Contributor

The collapsed line that stands over everything Shift+F takes off the screen said 3 roots held back. Three faults in six words: it named what had been done to those roots rather than where they now are, it implied a reason the program cannot know, and it spelled them with a word readers do not use. It now says 3 other beads, and 1 other bead where there is one.

Nothing on the line says why they are behind it. An earlier version of this change carried a second clause explaining that, and it is withdrawn rather than reworded: why the reader asked for one bead is theirs, and a line guessing at it would be a claim bdi cannot support.

The number still counts the roots behind the line while the word says beads, and that is deliberate. A root whose tracker refused holds no beads at all, so counting beads would draw 0 beads over a root that is really there and really unreadable. Each thing counted is a bead in its own right, and the neighbouring cells keep the arithmetic honest without arithmetic: 3 other beads · 2 agents beneath · 1 bead beneath cannot be read as three beads of which one wants looking at, because the one that wants looking at is said to be beneath them.

Nothing is coined, so docs/design.md's terminology table gains no entry. The line is the shape phrase::elided already draws.

GroupKind::OutOfTheWay and the layout walk under it are named for what the group is rather than for what the row says, so a future rewording of the sentence moves no identifiers.

The same row carried a defect this change also fixes. Its cells abutted — 2 agents beneath⚠ 1 bead beneathF for the whole forest on the shipped screen — because this was the one state block on a row not built through draw::beside, whose own doc comment claims every one of them is. It rides here rather than in a bead of its own because it is three calls in the function this change was already rewriting. Both existing tests asserted on each cell alone, which passes whether the cells abut or not, so the assertion that holds the gap now reads the joined row.

The fix costs four columns and the new wording gives them back, so the row is no wider than it was. The block gains two gaps at two columns each, and 3 other beads is four columns shorter than 3 roots held back, as 1 other bead is than 1 root held back. The key hint F for the whole forest therefore still survives from 77 columns up, which is where it survives from on main.

The collapsed line said `N roots held back`. It said what had been done to
those roots rather than where they now are, it guessed at why the reader
pressed the key, and it spelled them with a word readers do not use for them.

Graeme settled the words: they are beads, the line names how many, and
nothing on it says why they are behind the line, because why the reader asked
for one bead is theirs and this program cannot know it.

`GroupKind` and the layout walk take the group's own name rather than the
screen's, so nothing in the code is named for a sentence that can be
rewritten again. Nothing is coined, so the terminology table gains no entry:
the gloss of tree the argument would have leaned on is inherited from beads,
and this line is the shape `phrase::elided` already draws.

The same row's counts and its key hint abutted, because this was the one
state block on a row not built through `draw::beside`, whose doc comment
claims every one of them is. Both existing tests assert on each cell alone,
which passes whether the cells abut or not, so the assertion that holds the
gap reads the joined row.
@GraemeF
GraemeF merged commit d5b49af into main Sep 12, 2026
4 of 6 checks passed
@GraemeF
GraemeF deleted the wording branch September 12, 2026 16:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant