Files
buzz/beehive/UX_CORRECTIONS.md
2026-09-16 11:22:38 -04:00

71 lines
4.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Manager UX corrections (F2–F5)
Presentation names are snapshot metadata only: command targets, revisions,
assignment and host-local enrollment authority remain unchanged. Confirmations
share agent/host presentation for Start, Stop, Restart, Move and saved choices.
Prompt first lines are short task titles; field guidance follows in the body.
Temporary notices retire only while still current, composing across nested
requests without erasing a newer result. Truly empty lists have zero options;
Controls remain available and retained real selections keep their existing policy.
## Short repeatable UX check
Run `beehive/tools/ux-walkthrough.sh` in a **100×30 terminal**. This uses the explicit
synthetic loader, fresh `beehive-pairing-cli-` credential file, private transport
and owned processes, and fences installed service/provider/native sign-in calls.
Do not substitute an ordinary manager launch or HOME-only isolation.
1. Agents while signed out: blank list, **0/0**, non-selectable “No items.”;
arrows and Enter create no selection. Register/sign-in Controls stay visible.
2. Register → Runtime → hidden key → Esc: idle status returns; settings unchanged.
3. Sign in: title “Sign in”, shortened owner identity; Esc returns idle. Sign in
again using the fixture's saved key; the real agent row replaces the empty list.
4. Start: title “Start agent?”, **Review agent / Review host**, not target JSON.
Esc returns idle. Start → yes → Runtime → Esc retains the continuation result
and leaves settings unchanged.
5. Focus Controls; wheel Details; refresh unchanged data: Controls remain visible,
Details scroll stays put, and visible action clicks route to those actions.
Provider/runtime forms use “Save provider”, “Save runtime”, “Custom model” and
“Environment” titles, with context below, not a truncated sentence in the title.
Never enter live credentials. The fixture help supplies the canonical synthetic
nsec if testing registration beyond the cancellation checks above.
## Evidence for this delta
Workspace artifacts: `/Users/loganj/.buzz/artifacts/beehive-ux-f2-f5/`.
- **F2:** `f17-start-confirm.txt` / `.ansi` show named agent and local start host;
`f08-signin-confirm.txt` shows shortened owner. Controller regression checks
offer label projection and exact unchanged target JSON; existing lifecycle
gates in that test still execute against the exact target/revision.
- **F3:** `f08`, `f17` show short titles in real PTY. Runtime form regression binds
Save runtime, Custom model and Environment title/body labels to production forms.
Other confirmation call sites share the same short-title convention.
- **F4:** `f07`, `f09`, `f18` show idle after cancellation; `f20` retains the
continuation result. PTY verifies byte-identical settings after cancels.
Renderer regression exercises nested notice retirement, newer result retention
and the real action runner's completion cleanup.
- **F5:** `f02`–`f04` show zero rows through arrow/Enter. Renderer regression covers
zero callbacks, accessible Controls, and transition back to real rows.
- **F1 retained:** renderer's original scroll/overflow-click/visibility regressions
pass; `f12`–`f16` retain real PTY Controls and pointer/wheel evidence.
Direct Node **24.15.0** TypeScript passed. Focused controller/runtime/navigation:
**24 passed**. Pinned Bun **1.4.2** renderer: **8 passed**. Real synthetic PTY:
**20 checkpoints**, cancellation settings unchanged, clean exit **0**.
One final default-concurrent package suite: **245 passed, 1 failed, 19 skipped**
(43.507s). The unchanged broker test failed with “Conversation response timed out;
check relay admission and local sign-in”; full output is preserved in
`full-suite.log`. No deadlines/assertions weakened and no full-suite rerun.
No installed-opt-in rerun, live credential/provider/relay/browser operations,
service replacement, push, or repository-wide `just ci` claim. Earlier unchanged
provider/enrollment/Move/native evidence remains separately attributed in
`beehive-parity-b5cd2aa0` and `beehive-ux-25a9e2b7`.
The first PTY driver attempt incorrectly expected the Sign in title and Esc hint
on one line. Its stream/logs remain in `driver-first/`; only that observation
pattern was corrected, with the original deadline retained. The initial Bun
invocation lacked the required `./` path prefix and discovered no tests; the
explicit-path invocation above executed all eight tests.