mirror of
https://github.com/block/buzz.git
synced 2026-10-30 05:51:46 +00:00
71 lines
4.4 KiB
Markdown
71 lines
4.4 KiB
Markdown
# 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.
|