pmacs/pmacs-gpu
Levi Neuwirth 2dccc2b69c
feat(gui-1b): B6's routing rows --- the minimap scrolls the document
B6's mechanism landed with B1: WheelTarget::Minimap maps to its own
ResidualOwner, and the horizontal leg already skips it. What was owed is
the evidence, and apply_wheel had none --- the accumulator had unit rows,
but nothing drove a wheel through dispatch_window_event to the effect.

Three rows on EffectHarness, which holds a real App and a real daemon
socket, so the classifier, the accumulator and the local step are all
production code:

- one notch over the minimap scrolls the document viewport by one notch
  and re-declares it, exactly as over text;
- a part-notch over the minimap does not complete one over the document
  --- the surface-switch jump B1 forbids, and the minimap is its sharpest
  case because both surfaces move the same viewport, so sharing a bank
  would look harmless and produce a jump nothing explains. A third step
  gives the document bank the rest of its notch, so the row cannot pass
  by measuring nothing;
- a horizontal notch over the minimap is inert while the same notch over
  text scrolls sideways.

All three mutations fire, disjointly: an inert arm for the minimap fires
the first, ResidualOwner::Document fires the second, dropping the
horizontal guard fires the third.

The third row is why EffectHarness now takes a document. Its first
version asserted inertness over the default fixture and the setup
assertion caught it twice: four-column lines pin the saturated right
bound to zero, and wrapping --- on by default --- pins the left edge to
zero regardless of target. Either would have reported inertness the row
never tested. It now uses wide lines and turns wrap off through
LineWrapFacts, the message production uses, asserting the wrap landed.
`new()` keeps the 200-line fixture and its M22 rationale verbatim.

Gates: fmt; clippy --workspace --all-targets -D warnings (which caught a
float_cmp in the first draft of the inertness assertion); pmacs-gpu 312;
--lib 1997; --lib --features crdt 2190; git diff --check.
2026-09-01 20:29:48 +02:00
..
fonts feat(math): bundle Latin Modern Math and read its MATH constants 2026-07-24 18:27:34 -04:00
src feat(gui-1b): B6's routing rows --- the minimap scrolls the document 2026-09-01 20:29:48 +02:00
Cargo.toml feat(release): binaries on tag — Distribution Stage 1 2026-08-01 14:40:47 -04:00