Commit Graph

119 Commits

Author SHA1 Message Date
Logan Johnson
db7da12f0e fix(beehive): drain all owner requests before controller exit
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 17:22:16 -04:00
Logan Johnson
74f46b4695 feat(beehive): implement owner-gated Host lifecycle and reset
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 17:19:16 -04:00
Logan Johnson
9117c995a3 fix(beehive): retain contextual request and decline without entering section
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 15:43:21 -04:00
Logan Johnson
f635c34bd9 feat(beehive): add volatile owner session and protected section gates
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 15:31:39 -04:00
Logan Johnson
db8d5f49c2 fix(beehive): follow header selection and populate saved key masks
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 15:06:40 -04:00
Logan Johnson
20e2a6a5fc fix(beehive): keep compact provider status and recovery complete
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 14:33:17 -04:00
Logan Johnson
f130790ea2 fix(beehive): simplify provider status and honor saved workspaces
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 14:29:14 -04:00
Logan Johnson
85d287dcb0 fix(beehive): remove redundant global Add provider command
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 14:12:54 -04:00
Logan Johnson
e40789ac93 fix(beehive): place provider actions directly after details
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 13:42:26 -04:00
Logan Johnson
ee3765cad0 fix(beehive): separate provider input and action focus surfaces
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 13:30:23 -04:00
Logan Johnson
294ae0e972 fix(beehive): explain missing Databricks environment before setup
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 13:14:12 -04:00
Logan Johnson
2a35dd67e9 fix(beehive): show supported providers before account setup
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 13:02:15 -04:00
Logan Johnson
3330c3e9a1 fix(beehive): bind provider results to their selected account
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 12:55:46 -04:00
Logan Johnson
766ca0803b fix(beehive): expose provider results at minimum terminal size
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 12:53:20 -04:00
Logan Johnson
7a9ac365ad feat(beehive): implement signed-out provider management in OpenTUI
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 12:43:00 -04:00
Logan Johnson
8a9732be9b fix(beehive): own custom harness discovery independently of Desktop
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 12:20:09 -04:00
Logan Johnson
caa7eca39e fix(beehive): align harness inventory visuals
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 11:54:14 -04:00
Logan Johnson
7ffb9a6973 fix(beehive): discover desktop harnesses on startup
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 11:33:32 -04:00
Logan Johnson
835de08052 fix(beehive): remove compact shell mode
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 11:09:32 -04:00
Logan Johnson
ab284879f2 fix(beehive): preserve refresh selection
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 11:07:15 -04:00
Logan Johnson
d1c4c930b9 feat(beehive): add the Harnesses tracer
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 10:47:15 -04:00
Logan Johnson
e765229a16 fix(beehive): correct pane navigation
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-21 09:29:07 -04:00
Logan Johnson
917294bb17 fix(beehive): keep help text clear of scrollbars
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-18 18:28:47 -04:00
Logan Johnson
182ad339c0 fix(beehive): match shell pane and dialog layout
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-18 18:20:58 -04:00
Logan Johnson
880a56e2b2 feat(beehive): rebuild shell with OpenTUI
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-18 18:04:10 -04:00
Logan Johnson
8e63957079 feat(beehive): rebuild never-signed-in shell
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-18 16:10:42 -04:00
BetterCallSol
a64d831e9b fix(beehive): separate registration from runtime setup
Signed-off-by: BetterCallSol <886fabdb38ceb1aede220bc237b7bb34736490f12a7d79e235e5ecfd63a36514@buzz.block.builderlab.xyz>
2026-09-16 17:10:54 -04:00
Logan Johnson
24a9e43cad fix(beehive): verify durable registration completion
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 16:35:11 -04:00
Logan Johnson
e3024fab94 feat(beehive): bind Details actions to selected rows
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 16:13:09 -04:00
Logan Johnson
240ac47fa5 fix(beehive): retain registered agents in snapshots
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 15:46:03 -04:00
Logan Johnson
4d87740f8f feat(beehive): configure agents directly and resume contextual sign-in
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 15:19:28 -04:00
Logan Johnson
d216bbed7e refactor(beehive): put agent actions inside the detail pane
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 14:58:01 -04:00
BetterCallSol
4fbaeb12f7 fix(beehive): repair provider credential forms
Signed-off-by: BetterCallSol <886fabdb38ceb1aede220bc237b7bb34736490f12a7d79e235e5ecfd63a36514@buzz.block.builderlab.xyz>
2026-09-16 14:20:38 -04:00
BetterCallSol
438daa1b89 perf(beehive): hydrate only owned agent candidates
Signed-off-by: BetterCallSol <886fabdb38ceb1aede220bc237b7bb34736490f12a7d79e235e5ecfd63a36514@buzz.block.builderlab.xyz>
2026-09-16 14:00:21 -04:00
BetterCallSol
1085eadf45 fix(beehive): filter agent roster by owner
Signed-off-by: BetterCallSol <886fabdb38ceb1aede220bc237b7bb34736490f12a7d79e235e5ecfd63a36514@buzz.block.builderlab.xyz>
2026-09-16 13:35:59 -04:00
Logan Johnson
9aef40a3f6 fix(beehive): derive first-use owner directly from Buzz key
Bypass manual routing for Buzz sign-in, derive and validate identity in the controller, and initialize only public owner routing using the current Host relay after the stale/cancel fence. Retained owners still must match; custody remains session-only.

Regression drives the real Node/Bun UI once with no controller owner configured and an explicit synthetic credential fixture. Focused 12-test checks, typecheck, and first-use PTY walkthrough pass. Earlier broad-suite 400-second failure remains unresolved; no production Keychain access or native rebuild.

Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 13:22:09 -04:00
Logan Johnson
e9d5a0d9f9 fix(beehive): sign in with Buzz key on selection alone
Selecting Sign in with Buzz key now dispatches the read of the saved Buzz
owner key immediately. The extra Beehive confirmation before it is removed:
selection itself is the explicit user gesture. While the read is in flight
the status line keeps the custody disclosure (Keychain read only, session
only, no local copy) and states that an OS keychain permission dialog is
separate and never bypassed or promised away.

Saved-key and matching-key import sign-in keep their confirmation and
input paths; helper source, owner matching, session-only custody,
cancellation and all backend behavior are unchanged. The test-only fixture
gains an inert env-gated pacing knob so a PTY driver can observe the
pending state and exercise Esc cancellation deterministically.

Verified with the synthetic source-UI PTY driver in a fresh
beehive-pairing-cli- HOME with explicit BEEHIVE_TEST_CREDENTIAL_FILE,
installed loader and service fences; production Keychain never read: one
selection reaches signed-in controls with no further Beehive input, and
Esc still cancels the in-flight read. Focused 12/12 backend and 8/8
renderer suites and package typecheck re-passed.

Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 13:07:11 -04:00
Logan Johnson
1f4c78591b beehive: add explicit read-only Buzz owner key sign-in
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 12:19:05 -04:00
Logan Johnson
1157e98f7f fix(beehive): name action targets and retire transient UX state
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 11:22:38 -04:00
Logan Johnson
7d455ded43 feat(beehive): keep controls visible beside details and preserve scroll across pushes
Move the action list out of the Details scroll into a bordered, bounded
Controls region in the right pane so agent actions stay reachable and
visibly focused beside arbitrarily long detail text, for pointer and
keyboard alike. Map clicks through the pinned SelectRenderable's
deterministic window so every visible action runs exactly itself when
the real 13-action Agents menu overflows the bounded region; wheel and
keyboard movement keep the remaining actions reachable.

Only a genuine item or section change re-routes selection and presents
its details from the top. Unchanged snapshot pushes, background or
explicit refresh, preserve the user's Details scroll position.

Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 11:10:05 -04:00
Logan Johnson
446bbbca4d feat(beehive): align saved providers and model choices with Desktop
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 10:22:16 -04:00
Logan Johnson
86921025b1 feat(beehive): enroll local agents under explicit owner Start
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 10:04:35 -04:00
Logan Johnson
f59436c1aa feat(beehive): authenticate pinned-assignment Move between private hosts
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 09:48:34 -04:00
Logan Johnson
8c15d7d736 feat(beehive): checkpoint directory and registration continuation (partial)
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 09:26:08 -04:00
Logan Johnson
63a7be1c67 feat(beehive): configure runtime environment and type manager completion
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 08:59:46 -04:00
Logan Johnson
a83a47b19a feat(beehive): separate manager sections and enable guarded restart
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-16 08:49:42 -04:00
Logan Johnson
747d011a70 fix(beehive): isolate Codex homes for ordinary saved-runtime slots
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-12 12:15:27 -04:00
Logan Johnson
4b338d3371 fix(beehive): publish manager-credential fixture PID marker atomically
The orchestration test polls for the fixture's readiness marker with
existsSync and then reads the PID. The fixture published the marker with
a single writeFileSync, so a child descheduled between the internal open
and write exposed a zero-byte file; Number('') is 0 and process.kill(0, 0)
probes the caller's process group, so the protected ESRCH assertion failed
with "Missing expected exception" while the production SIGKILL plus
awaited-close teardown had demonstrably worked.

Publish through a staging file and renameSync, the same atomic pattern
as the blocker() fixture in credential-helper.test.ts, so a reader that
sees the marker always sees the complete owned PID. Assertions, poll
budget, timeout and production behavior are unchanged; negative controls
in the task triage report show broken kill or broken awaited-close still
fail the protected assertion.

Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-12 12:12:17 -04:00
Logan Johnson
8f02dd3c2b feat(beehive): execute Pi with saved providers and owned refresh
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-12 12:09:50 -04:00
Logan Johnson
344585fb77 feat(beehive): connect saved OpenAI providers to Codex runtime bindings
Signed-off-by: Logan Johnson <loganj@squareup.com>
2026-09-12 11:55:15 -04:00