ab4acd00
docs: record selection-follow approval and demo teardown
a73x 2026-09-06 13:32
Commit message
RETRO.md
| Old | New | ||
|---|---|---|---|
| @@ -1573,3 +1573,14 @@ Next owners/triggers: | |||
| 1573 | still deferred. Platform owner: Linux evidence does not establish macOS. | 1573 | still deferred. Platform owner: Linux evidence does not establish macOS. |
| 1574 | - Coordinator, on acceptance: record product review separately from architecture | 1574 | - Coordinator, on acceptance: record product review separately from architecture |
| 1575 | and tests, verify/stop this demo server, and only then begin an authorized slice. | 1575 | and tests, verify/stop this demo server, and only then begin an authorized slice. |
| 1576 | |||
| 1577 | |||
| 1578 | Selection-follow product sign-off — 2026-09-06: the user approved after reporting | ||
| 1579 | that drag selection remains highlighted when scrolling the wheel and discussing | ||
| 1580 | the held-drag limitation. Clarified viewport movement versus terminal output | ||
| 1581 | moving the underlying rows. Recorded that specific hands-on observation and | ||
| 1582 | approval without treating it as manual coverage of every test. Verified ownership | ||
| 1583 | and stopped localhost demo server PID 257482; port 18778 is closed. Its compositor | ||
| 1584 | and app fixtures had already stopped. Retained the page, 25-second recording and | ||
| 1585 | check evidence, preserved unrelated services, and left the known NVIDIA frame | ||
| 1586 | budget debt open. No next sprint was started. | ||
docs/demos/native-selection-follow.html
| Old | New | ||
|---|---|---|---|
| @@ -14,7 +14,7 @@ | |||
| 14 | </head> | 14 | </head> |
| 15 | <body> | 15 | <body> |
| 16 | <main> | 16 | <main> |
| 17 | <span class="status">Functional checks passed · product review pending</span> | 17 | <span class="status">Product approved · 6 September 2026</span> |
| 18 | <h1>Selection follows terminal output</h1> | 18 | <h1>Selection follows terminal output</h1> |
| 19 | <p class="lede">A completed selection keeps naming the same terminal occurrence when new output scrolls it upward. The recording uses a duplicate marker and its distinct successor so a stale coordinate or the other duplicate cannot pass the check.</p> | 19 | <p class="lede">A completed selection keeps naming the same terminal occurrence when new output scrolls it upward. The recording uses a duplicate marker and its distinct successor so a stale coordinate or the other duplicate cannot pass the check.</p> |
| 20 | <section class="card"> | 20 | <section class="card"> |
| @@ -31,11 +31,11 @@ | |||
| 31 | <h2>Controls and input</h2> | 31 | <h2>Controls and input</h2> |
| 32 | <p>Ordinary drag selects locally when the application has not requested mouse reporting. Hold Shift at press to select locally inside a mouse-reporting application. Ctrl+Shift+C asks the daemon to copy the completed tracked selection. The video uses genuine Wayland pointer input with a visible cursor; fixture output is emitted through fixture-owned PTYs.</p> | 32 | <p>Ordinary drag selects locally when the application has not requested mouse reporting. Hold Shift at press to select locally inside a mouse-reporting application. Ctrl+Shift+C asks the daemon to copy the completed tracked selection. The video uses genuine Wayland pointer input with a visible cursor; fixture output is emitted through fixture-owned PTYs.</p> |
| 33 | <h2>Validation</h2> | 33 | <h2>Validation</h2> |
| 34 | <p>Native unit and integration gates passed. Real NVIDIA Wayland checks passed for selection, scrolling, scale transitions, shared foot/tmux mouse behavior, and live tmux counters in windowed and fullscreen modes. Web ABI: 798 passed, 0 failed. Full CI passed: 117 end-to-end scenarios, 10 agent checks and throughput. Architectural review has no open blocker; product acceptance is pending.</p> | 34 | <p>Native unit and integration gates passed. Real NVIDIA Wayland checks passed for selection, scrolling, scale transitions, shared foot/tmux mouse behavior, and live tmux counters in windowed and fullscreen modes. Web ABI: 798 passed, 0 failed. Full CI passed: 117 end-to-end scenarios, 10 agent checks and throughput. Architectural review has no open blocker; product acceptance was given on 6 September 2026.</p> |
| 35 | <p>Rebuild both the daemon and client: they share the new selection protocol, with one request/reply path and no compatibility fallback.</p> | 35 | <p>Rebuild both the daemon and client: they share the new selection protocol, with one request/reply path and no compatibility fallback.</p> |
| 36 | <h2>Limits and known debt</h2> | 36 | <h2>Limits and known debt</h2> |
| 37 | <ul> | 37 | <ul> |
| 38 | <li>Completed selections follow output. A held drag still cancels if its coordinate source moves; copying during a held drag remains supported. Resize/reflow, screen/mode changes and reset clear selection. Character insertion/deletion, rectangular margins and a range crossing a partially scrolled region also clear it. Paste, IME and ligatures are deferred.</li> | 38 | <li>Completed selections follow output. Moving the viewport with the wheel preserves the selection. New terminal output moving the underlying rows during a held drag still cancels it; copying during a held drag remains supported. Resize/reflow, screen/mode changes and reset clear selection. Character insertion/deletion, rectangular margins and a range crossing a partially scrolled region also clear it. Paste, IME and ligatures are deferred.</li> |
| 39 | <li>The alternate screen and mouse-reporting scenario belongs to separate automation and is not claimed by this video.</li> | 39 | <li>The alternate screen and mouse-reporting scenario belongs to separate automation and is not claimed by this video.</li> |
| 40 | <li>Evidence is Linux-only. macOS behavior remains unverified.</li> | 40 | <li>Evidence is Linux-only. macOS behavior remains unverified.</li> |
| 41 | <li>The NVIDIA raw-output frame gate remains red: p99 20.7 ms against 20 ms. Output continued and reopen succeeded; sampled input-to-painted time stayed at or below 60.4 ms (including 5 ms polling). Prior-sprint measurements also missed this budget; no performance improvement is claimed.</li> | 41 | <li>The NVIDIA raw-output frame gate remains red: p99 20.7 ms against 20 ms. Output continued and reopen succeeded; sampled input-to-painted time stayed at or below 60.4 ms (including 5 ms polling). Prior-sprint measurements also missed this budget; no performance improvement is claimed.</li> |
docs/superpowers/plans/2026-09-06-native-selection-follow.md
| Old | New | ||
|---|---|---|---|
| @@ -1,7 +1,7 @@ | |||
| 1 | # Native selection follows output | 1 | # Native selection follows output |
| 2 | 2 | ||
| 3 | Status: implemented, functionally validated and architecturally reviewed. | 3 | Status: implemented, functionally validated and architecturally reviewed. |
| 4 | Product acceptance pending; existing NVIDIA frame-time debt remains open. | 4 | Product accepted on 2026-09-06; existing NVIDIA frame-time debt remains open. |
| 5 | 5 | ||
| 6 | Goal: a completed local selection follows the same terminal text as output | 6 | Goal: a completed local selection follows the same terminal text as output |
| 7 | scrolls. This includes Shift+drag in an application using mouse reporting. | 7 | scrolls. This includes Shift+drag in an application using mouse reporting. |
| @@ -119,10 +119,16 @@ NVIDIA Wayland at 200% scale. It shows a real pointer drag, three appended rows, | |||
| 119 | neighbour output and independently read clipboard replacement/recopy. | 119 | neighbour output and independently read clipboard replacement/recopy. |
| 120 | Video decoding, page loading and HTTP byte ranges were verified. | 120 | Video decoding, page loading and HTTP byte ranges were verified. |
| 121 | 121 | ||
| 122 | Local review URL: <http://localhost:18778/selection-follow/>. No publication was | 122 | Product sign-off — 2026-09-06: the user approved after confirming that wheel |
| 123 | requested or created. Server PID 257482 is recorded in | 123 | scrolling the viewport preserves the highlight. The held-drag limitation concerns |
| 124 | `dist/selection-follow/server.json`; after product acceptance verify its command | 124 | terminal output moving the underlying coordinate source, not merely looking at |
| 125 | still names this worktree's `dist/selection-follow/serve-page.py`, then run | 125 | other existing rows. This records the reported hands-on wheel behavior and |
| 126 | `kill 257482`. Recording and test rigs closed; owned compositor PID 141229 was | 126 | explicit approval, not hands-on verification of every automated scenario. |
| 127 | verified and stopped (`fixture-teardown.json`). Preserve unrelated services and | 127 | |
| 128 | retain page/video/check evidence. Product sign-off has not yet been given. | 128 | The former localhost review URL on port 18778 is retired. No publication was |
| 129 | created. Verified server PID 257482 named this worktree's | ||
| 130 | `dist/selection-follow/serve-page.py`, stopped it, and verified port 18778 closed. | ||
| 131 | `dist/selection-follow/accepted-demo-teardown.json` records the cleanup. | ||
| 132 | Recording and test rigs had already closed; owned compositor PID 141229 had | ||
| 133 | already been stopped. Page, recording and validation evidence remain; unrelated | ||
| 134 | services were preserved. No next sprint was started by this approval. | ||