Merge gh/main (220abc61) into fix/hv0r-jpba-relays

# Conflicts:
#	context/test-evidence/clients.md
#	crates/improvise-protocol/src/client.rs
This commit is contained in:
Edward Langley
2026-09-24 02:00:09 -07:00
17 changed files with 1255 additions and 216 deletions
+29 -2
View File
@@ -2891,6 +2891,11 @@ The buffer is derived from each mode rather than restated in the test —
`every_text_entry_mode_types_into_the_buffer_its_prompt_names` owns pinning what it
should be (improvise-k8h).
**Amended by improvise-fy9o.** A commit key bound to a plain command now passes only if that command, built in
the mode with text in the buffer, emits `SetBuffer { name: <buffer>, value: "" }`
itself. **Rival:** `CommitAndAdvance` without its head clear. Only this test
fails, which makes it the TUI's guard against leftover text.
### minibuffer_enter_dispatches_to_a_registered_commit
improvise-6t3: the three commit commands collapsed into a single
@@ -6235,8 +6240,9 @@ The buffer after `Enter` is **not** asserted. The keymap welds `clear-buffer`
after every commit key, so it empties the buffer `EnterEditAtCursor` has just
seeded, and the reopened editor opens blank while its captured seed is `"2"`.
That is existing behaviour (`enter_commits_the_cell_advances_and_re_enters_editing`
in `clients.md`). An `Enter` there with nothing typed therefore clears the landed cell,
measured here; that is filed as improvise-fy9o rather than fixed here.
in `clients.md`). An `Enter` there with nothing typed therefore cleared the landed
cell. It was filed as improvise-fy9o and is now fixed (see
`enter_enter_leaves_every_cell_unchanged`).
### `an_editor_typed_back_to_its_seed_still_writes`
@@ -6293,6 +6299,27 @@ flag. This test fails alone. Every other test stays green, which was the gap.
Once improvise-fy9o re-seeds the reopened editor, a stale `touched` would make
every untouched Tab or Enter write its seed.
### `enter_enter_leaves_every_cell_unchanged`
**improvise-fy9o.** The keymap welded `clear-buffer` after every commit key, so
it blanked the editor `CommitAndAdvance` had just reopened. The next Enter then
committed `""` and cleared the landed cell. The test presses `i`, Enter, Enter
on the 2×2 fixture:
- in pivot, from (1, 0);
- in records, from (1, 2), the West row's Cost column.
Every cell must be unchanged. Both cases failed before the fix, clearing
(North, Revenue). The records case was confirmed on its own, because the loop
stops at the first failure. **Rival:** the editing keys bound through the
welding `.commit` again fails both.
### `typing_after_the_reopen_still_writes`
After `i` and Enter from (1, 0), the reopened editor must hold `"2"`, the value
of (North, Revenue). Typing `5` and pressing Enter must then store `25`. Before
the fix the buffer was `""`, so the typed digit replaced the value instead of
extending it.
## `ui/project.rs` — the totals strip (improvise-wm20)
### a_ratio_columns_total_is_the_ratio_of_the_totalled_inputs