@legioncodeinc/hive 0.3.1 → 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. package/README.md +1 -1
  2. package/dist/daemon/dashboard/app.js +11 -11
  3. package/dist/daemon/gate.d.ts +10 -6
  4. package/dist/daemon/gate.js +20 -8
  5. package/dist/daemon/gate.js.map +1 -1
  6. package/dist/daemon/installer/config.d.ts +2 -0
  7. package/dist/daemon/installer/config.js +5 -3
  8. package/dist/daemon/installer/config.js.map +1 -1
  9. package/dist/daemon/installer/funnel-telemetry.d.ts +17 -2
  10. package/dist/daemon/installer/funnel-telemetry.js +34 -3
  11. package/dist/daemon/installer/funnel-telemetry.js.map +1 -1
  12. package/dist/daemon/installer/routes.js +6 -2
  13. package/dist/daemon/installer/routes.js.map +1 -1
  14. package/dist/daemon/installer/security.d.ts +9 -2
  15. package/dist/daemon/installer/security.js +8 -0
  16. package/dist/daemon/installer/security.js.map +1 -1
  17. package/dist/daemon/installer/token.d.ts +8 -7
  18. package/dist/daemon/installer/token.js +40 -18
  19. package/dist/daemon/installer/token.js.map +1 -1
  20. package/dist/daemon/registry.d.ts +6 -0
  21. package/dist/daemon/registry.js +15 -17
  22. package/dist/daemon/registry.js.map +1 -1
  23. package/dist/daemon/server.d.ts +14 -0
  24. package/dist/daemon/server.js +19 -0
  25. package/dist/daemon/server.js.map +1 -1
  26. package/dist/daemon/setup-tenancy.d.ts +18 -0
  27. package/dist/daemon/setup-tenancy.js +37 -0
  28. package/dist/daemon/setup-tenancy.js.map +1 -0
  29. package/dist/dashboard/web/active-tenancy-display.d.ts +34 -0
  30. package/dist/dashboard/web/active-tenancy-display.js +84 -0
  31. package/dist/dashboard/web/active-tenancy-display.js.map +1 -0
  32. package/dist/dashboard/web/app.js +6 -2
  33. package/dist/dashboard/web/app.js.map +1 -1
  34. package/dist/dashboard/web/onboarding/contracts.d.ts +1 -1
  35. package/dist/dashboard/web/onboarding/contracts.js +9 -1
  36. package/dist/dashboard/web/onboarding/contracts.js.map +1 -1
  37. package/dist/dashboard/web/onboarding/login-step.d.ts +3 -4
  38. package/dist/dashboard/web/onboarding/login-step.js +12 -18
  39. package/dist/dashboard/web/onboarding/login-step.js.map +1 -1
  40. package/dist/dashboard/web/onboarding/onboarding-screen.d.ts +8 -4
  41. package/dist/dashboard/web/onboarding/onboarding-screen.js +90 -13
  42. package/dist/dashboard/web/onboarding/onboarding-screen.js.map +1 -1
  43. package/dist/dashboard/web/onboarding/tenancy-client.d.ts +19 -0
  44. package/dist/dashboard/web/onboarding/tenancy-client.js +84 -0
  45. package/dist/dashboard/web/onboarding/tenancy-client.js.map +1 -0
  46. package/dist/dashboard/web/onboarding/tenancy-contracts.d.ts +119 -0
  47. package/dist/dashboard/web/onboarding/tenancy-contracts.js +79 -0
  48. package/dist/dashboard/web/onboarding/tenancy-contracts.js.map +1 -0
  49. package/dist/dashboard/web/onboarding/tenancy-step.d.ts +32 -0
  50. package/dist/dashboard/web/onboarding/tenancy-step.js +223 -0
  51. package/dist/dashboard/web/onboarding/tenancy-step.js.map +1 -0
  52. package/dist/dashboard/web/pages/hive-graph.js +138 -43
  53. package/dist/dashboard/web/pages/hive-graph.js.map +1 -1
  54. package/dist/dashboard/web/wire.d.ts +111 -14
  55. package/dist/dashboard/web/wire.js +105 -0
  56. package/dist/dashboard/web/wire.js.map +1 -1
  57. package/dist/install/registry.d.ts +2 -2
  58. package/dist/install/registry.js +14 -7
  59. package/dist/install/registry.js.map +1 -1
  60. package/dist/lock.d.ts +5 -2
  61. package/dist/lock.js +36 -1
  62. package/dist/lock.js.map +1 -1
  63. package/dist/service/index.d.ts +5 -0
  64. package/dist/service/index.js +9 -1
  65. package/dist/service/index.js.map +1 -1
  66. package/dist/service/templates.d.ts +22 -3
  67. package/dist/service/templates.js +47 -10
  68. package/dist/service/templates.js.map +1 -1
  69. package/dist/shared/apiary-root.d.ts +28 -0
  70. package/dist/shared/apiary-root.js +71 -0
  71. package/dist/shared/apiary-root.js.map +1 -0
  72. package/dist/shared/constants.d.ts +0 -1
  73. package/dist/shared/constants.js +3 -5
  74. package/dist/shared/constants.js.map +1 -1
  75. package/dist/shared/legacy-paths.d.ts +22 -0
  76. package/dist/shared/legacy-paths.js +48 -0
  77. package/dist/shared/legacy-paths.js.map +1 -0
  78. package/dist/shared/registry-paths.d.ts +19 -0
  79. package/dist/shared/registry-paths.js +52 -0
  80. package/dist/shared/registry-paths.js.map +1 -0
  81. package/dist/shared/state-migration.d.ts +13 -0
  82. package/dist/shared/state-migration.js +92 -0
  83. package/dist/shared/state-migration.js.map +1 -0
  84. package/dist/telemetry/emit.d.ts +27 -14
  85. package/dist/telemetry/emit.js +20 -4
  86. package/dist/telemetry/emit.js.map +1 -1
  87. package/package.json +1 -1
@@ -0,0 +1,223 @@
1
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ /**
3
+ * PRD-011a: the mandatory org + workspace selection step in the onboarding flow.
4
+ * Enters after device-code login succeeds; terminal handoff runs only after `selected: true`.
5
+ */
6
+ import React from "react";
7
+ import { Button } from "../primitives.js";
8
+ import { createTenancyClient } from "./tenancy-client.js";
9
+ /**
10
+ * W-4 loop-breaker: how many CONSECUTIVE automatic short-circuits (hydrate reads `selected: true`
11
+ * and the step auto-navigates to `/`) are allowed before the step stops reloading and renders a
12
+ * terminal manual state. In the split-brain fault (the browser's proxied tenancy read says
13
+ * selected while the gate's server-side read persistently fails), each auto-navigation bounces
14
+ * off the gate straight back here; without a bound that is an infinite reload loop re-firing
15
+ * `dashboard_reached` and `POST /api/onboarding/complete` every lap.
16
+ */
17
+ export const TENANCY_AUTO_COMPLETE_LIMIT = 2;
18
+ /** Session-scoped (per-tab) counter key; survives the full page navigations each loop lap makes. */
19
+ const AUTO_COMPLETE_COUNT_KEY = "hive.onboarding.tenancy.autoCompleteCount";
20
+ function readAutoCompleteCount() {
21
+ try {
22
+ if (typeof sessionStorage === "undefined")
23
+ return 0;
24
+ const raw = sessionStorage.getItem(AUTO_COMPLETE_COUNT_KEY);
25
+ const parsed = raw === null ? 0 : Number.parseInt(raw, 10);
26
+ return Number.isFinite(parsed) && parsed > 0 ? parsed : 0;
27
+ }
28
+ catch {
29
+ return 0;
30
+ }
31
+ }
32
+ function writeAutoCompleteCount(count) {
33
+ try {
34
+ if (typeof sessionStorage === "undefined")
35
+ return;
36
+ if (count <= 0)
37
+ sessionStorage.removeItem(AUTO_COMPLETE_COUNT_KEY);
38
+ else
39
+ sessionStorage.setItem(AUTO_COMPLETE_COUNT_KEY, String(count));
40
+ }
41
+ catch {
42
+ // Storage unavailable (private mode / quota): the bound degrades to per-mount behavior;
43
+ // never a throw into React.
44
+ }
45
+ }
46
+ /**
47
+ * Consume one lap of the bounded auto short-circuit allowance. Returns true (and records the lap)
48
+ * while within {@link TENANCY_AUTO_COMPLETE_LIMIT}; returns false once exceeded, at which point
49
+ * the caller must stop auto-navigating and surface the terminal split-brain state. Shared with
50
+ * the tokenless resume probe in `onboarding-screen.tsx`, the other automatic navigator on the
51
+ * split-brain lap.
52
+ */
53
+ export function consumeTenancyAutoComplete() {
54
+ const laps = readAutoCompleteCount() + 1;
55
+ if (laps > TENANCY_AUTO_COMPLETE_LIMIT)
56
+ return false;
57
+ writeAutoCompleteCount(laps);
58
+ return true;
59
+ }
60
+ /** Reset the auto short-circuit counter (a live picker flow or an explicit operator action). */
61
+ export function resetTenancyAutoComplete() {
62
+ writeAutoCompleteCount(0);
63
+ }
64
+ function entityLabel(entity) {
65
+ return entity.name !== "" ? entity.name : entity.id;
66
+ }
67
+ export function TenancyStep({ onboardingClient, tenancyClient: tenancyOverride, onComplete }) {
68
+ const tenancy = React.useMemo(() => tenancyOverride ?? createTenancyClient(), [tenancyOverride]);
69
+ const [view, setView] = React.useState({ kind: "loading" });
70
+ const [busy, setBusy] = React.useState(false);
71
+ const [selectError, setSelectError] = React.useState(null);
72
+ const [createName, setCreateName] = React.useState("");
73
+ const [showCreate, setShowCreate] = React.useState(false);
74
+ const shownEventRef = React.useRef(false);
75
+ const singleOrgConfirmRef = React.useRef(false);
76
+ const orgCountRef = React.useRef(0);
77
+ const completeFlow = React.useCallback(() => {
78
+ onboardingClient.sendEvent("dashboard_reached");
79
+ void (async () => {
80
+ await onboardingClient.complete();
81
+ if (onComplete !== undefined) {
82
+ onComplete();
83
+ return;
84
+ }
85
+ if (typeof window !== "undefined")
86
+ window.location.assign("/");
87
+ })();
88
+ }, [onboardingClient, onComplete]);
89
+ const loadOrgs = React.useCallback(async () => {
90
+ setView({ kind: "loading" });
91
+ setSelectError(null);
92
+ const status = await tenancy.setupTenancy();
93
+ if (status.selected) {
94
+ // W-4: bound the automatic short-circuit. Each auto-navigation consumes one lap of the
95
+ // per-tab allowance; past the limit the step stops reloading and renders the terminal
96
+ // manual state instead, breaking the split-brain reload loop deterministically.
97
+ if (!consumeTenancyAutoComplete()) {
98
+ setView({ kind: "split-brain" });
99
+ return;
100
+ }
101
+ completeFlow();
102
+ return;
103
+ }
104
+ // The normal picker flow is live: only CONSECUTIVE auto short-circuits count toward the
105
+ // bound, so a later legitimate pass through this step starts from a clean counter.
106
+ resetTenancyAutoComplete();
107
+ const orgsBody = await tenancy.listOrgs();
108
+ orgCountRef.current = orgsBody.orgs.length;
109
+ if (orgsBody.orgs.length === 0) {
110
+ setView({
111
+ kind: "error",
112
+ message: "No organizations are available for this account. Check your Deeplake credential and retry.",
113
+ });
114
+ return;
115
+ }
116
+ if (orgsBody.orgs.length === 1) {
117
+ singleOrgConfirmRef.current = true;
118
+ setView({ kind: "org-confirm", org: orgsBody.orgs[0] });
119
+ return;
120
+ }
121
+ setView({ kind: "org-list", orgs: orgsBody.orgs });
122
+ }, [tenancy, completeFlow]);
123
+ React.useEffect(() => {
124
+ if (shownEventRef.current)
125
+ return;
126
+ shownEventRef.current = true;
127
+ onboardingClient.sendEvent("tenancy_shown");
128
+ }, [onboardingClient]);
129
+ React.useEffect(() => {
130
+ void loadOrgs();
131
+ }, [loadOrgs]);
132
+ const openWorkspaces = React.useCallback(async (org) => {
133
+ setBusy(true);
134
+ setSelectError(null);
135
+ setShowCreate(false);
136
+ setCreateName("");
137
+ const ws = await tenancy.listWorkspaces(org.id);
138
+ setBusy(false);
139
+ setView({
140
+ kind: "workspace-list",
141
+ org,
142
+ workspaces: ws.workspaces,
143
+ canCreate: ws.canCreate,
144
+ });
145
+ }, [tenancy]);
146
+ const persistSelection = React.useCallback(async (org, workspace) => {
147
+ setBusy(true);
148
+ setSelectError(null);
149
+ const ack = await tenancy.selectTenancy(org.id, workspace.id);
150
+ setBusy(false);
151
+ if (ack === null || ack.selected === false) {
152
+ const message = ack !== null && ack.selected === false ? ack.error : "Selection could not be saved. Retry.";
153
+ setSelectError(message);
154
+ return;
155
+ }
156
+ // An explicit acknowledged selection resets the W-4 loop counter: if the gate still
157
+ // bounces after this, the auto short-circuit gets its full bounded allowance again.
158
+ resetTenancyAutoComplete();
159
+ const bucket = orgCountRef.current <= 1 ? "single" : orgCountRef.current <= 3 ? "few" : "many";
160
+ onboardingClient.sendEvent("tenancy_selected", {
161
+ orgCount: bucket,
162
+ singleOrgConfirm: singleOrgConfirmRef.current ? "true" : "false",
163
+ });
164
+ completeFlow();
165
+ }, [tenancy, onboardingClient, completeFlow]);
166
+ const onCreateWorkspace = React.useCallback(async () => {
167
+ if (view.kind !== "workspace-list")
168
+ return;
169
+ const trimmed = createName.trim();
170
+ if (trimmed === "")
171
+ return;
172
+ setBusy(true);
173
+ setSelectError(null);
174
+ const ack = await tenancy.createWorkspace(view.org.id, trimmed);
175
+ if (ack === null || ack.created === false) {
176
+ setBusy(false);
177
+ setSelectError(ack !== null && ack.created === false ? ack.error : "Workspace could not be created. Retry.");
178
+ return;
179
+ }
180
+ onboardingClient.sendEvent("workspace_created");
181
+ setBusy(false);
182
+ await persistSelection(view.org, ack.workspace);
183
+ }, [view, createName, tenancy, onboardingClient, persistSelection]);
184
+ const shellStyle = {
185
+ display: "flex",
186
+ flexDirection: "column",
187
+ alignItems: "center",
188
+ justifyContent: "center",
189
+ gap: 18,
190
+ minHeight: "100vh",
191
+ padding: 28,
192
+ background: "var(--bg-canvas)",
193
+ textAlign: "center",
194
+ };
195
+ if (view.kind === "loading") {
196
+ return (_jsx("div", { "data-testid": "onboarding-tenancy-step", style: shellStyle, children: _jsx("p", { style: { fontFamily: "var(--font-mono)", fontSize: "var(--text-xs)", color: "var(--text-tertiary)" }, children: "Loading your organizations\u2026" }) }));
197
+ }
198
+ if (view.kind === "error") {
199
+ return (_jsxs("div", { "data-testid": "onboarding-tenancy-step", style: shellStyle, children: [_jsx("p", { "data-testid": "onboarding-tenancy-error", style: { fontSize: "var(--text-sm)", color: "var(--severity-critical)", margin: 0 }, children: view.message }), _jsx(Button, { variant: "secondary", "data-testid": "onboarding-tenancy-retry", onClick: () => void loadOrgs(), children: "Retry" })] }));
200
+ }
201
+ // W-4: the terminal state past the auto short-circuit bound. No automatic reload happens from
202
+ // here; every further attempt is an explicit operator action.
203
+ if (view.kind === "split-brain") {
204
+ return (_jsx("div", { "data-testid": "onboarding-tenancy-step", style: shellStyle, children: _jsxs("div", { "data-testid": "onboarding-tenancy-split-brain", style: { display: "flex", flexDirection: "column", gap: 12, maxWidth: 480 }, children: [_jsx("h1", { style: { fontSize: "var(--text-xl)", fontWeight: 700, color: "var(--text-primary)", margin: 0, letterSpacing: "-0.02em" }, children: "The portal keeps returning you here" }), _jsx("p", { style: { fontSize: "var(--text-sm)", color: "var(--text-secondary)", margin: 0, lineHeight: 1.5 }, children: "Your tenancy reads as confirmed in this browser, but the portal cannot verify it and keeps redirecting back to this step. The daemon may be unreachable or out of sync. Check that the honeycomb daemon is running, then continue." }), _jsx(Button, { variant: "primary", size: "lg", "data-testid": "onboarding-tenancy-split-brain-continue", onClick: () => {
205
+ resetTenancyAutoComplete();
206
+ completeFlow();
207
+ }, children: "Go to dashboard" }), _jsx(Button, { variant: "secondary", "data-testid": "onboarding-tenancy-split-brain-retry", onClick: () => {
208
+ resetTenancyAutoComplete();
209
+ void loadOrgs();
210
+ }, children: "Try again" })] }) }));
211
+ }
212
+ return (_jsxs("div", { "data-testid": "onboarding-tenancy-step", style: shellStyle, children: [_jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 8, maxWidth: 520 }, children: [_jsx("h1", { style: { fontSize: "var(--text-xl)", fontWeight: 700, color: "var(--text-primary)", margin: 0, letterSpacing: "-0.02em" }, children: "Choose where capture writes" }), _jsx("p", { style: { fontSize: "var(--text-sm)", color: "var(--text-secondary)", margin: 0, lineHeight: 1.5 }, children: "Select the organization and workspace your fleet will write to. Nothing captures until you confirm." })] }), view.kind === "org-list" && (_jsx("div", { "data-testid": "onboarding-tenancy-org-list", style: { display: "flex", flexDirection: "column", gap: 10, width: "100%", maxWidth: 420 }, children: view.orgs.map((org) => (_jsx(Button, { variant: "secondary", size: "lg", "data-testid": "onboarding-tenancy-org-option", "data-org-id": org.id, disabled: busy, onClick: () => void openWorkspaces(org), children: entityLabel(org) }, org.id))) })), view.kind === "org-confirm" && (_jsxs("div", { "data-testid": "onboarding-tenancy-org-confirm", style: { display: "flex", flexDirection: "column", gap: 12, maxWidth: 420 }, children: [_jsx("p", { style: { fontSize: "var(--text-sm)", color: "var(--text-secondary)", margin: 0 }, children: "Your account has one organization. Confirm you want capture to write under:" }), _jsxs("code", { style: { fontFamily: "var(--font-mono)", fontSize: "var(--text-sm)", color: "var(--honey)" }, children: [entityLabel(view.org), " (", view.org.id, ")"] }), _jsx(Button, { variant: "primary", size: "lg", "data-testid": "onboarding-tenancy-org-confirm-btn", disabled: busy, onClick: () => void openWorkspaces(view.org), children: "Confirm organization" })] })), view.kind === "workspace-list" && (_jsxs("div", { "data-testid": "onboarding-tenancy-workspace-list", style: { display: "flex", flexDirection: "column", gap: 10, width: "100%", maxWidth: 420 }, children: [_jsxs("p", { style: { fontSize: "var(--text-xs)", color: "var(--text-tertiary)", margin: 0 }, children: ["Organization: ", entityLabel(view.org)] }), view.workspaces.length === 0 && !view.canCreate ? (_jsxs(_Fragment, { children: [_jsx("p", { "data-testid": "onboarding-tenancy-no-workspaces", style: { fontSize: "var(--text-sm)", color: "var(--text-secondary)", margin: 0 }, children: "No workspaces are available in this organization." }), _jsx(Button, { variant: "secondary", "data-testid": "onboarding-tenancy-back-orgs", disabled: busy, onClick: () => void loadOrgs(), children: "Back to organizations" })] })) : (_jsxs(_Fragment, { children: [view.workspaces.map((ws) => (_jsx(Button, { variant: "secondary", size: "lg", "data-testid": "onboarding-tenancy-workspace-option", "data-workspace-id": ws.id, disabled: busy, onClick: () => void persistSelection(view.org, ws), children: entityLabel(ws) }, ws.id))), view.canCreate && (_jsx("div", { style: { display: "flex", flexDirection: "column", gap: 8, marginTop: 8 }, children: !showCreate ? (_jsx(Button, { variant: "ghost", "data-testid": "onboarding-tenancy-create-toggle", disabled: busy, onClick: () => setShowCreate(true), children: "Create a new workspace" })) : (_jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 8 }, children: [_jsx("input", { "data-testid": "onboarding-tenancy-create-input", type: "text", value: createName, placeholder: "New workspace name", disabled: busy, onChange: (e) => setCreateName(e.target.value), style: {
213
+ height: 36,
214
+ padding: "0 12px",
215
+ background: "var(--bg-surface)",
216
+ border: "1px solid var(--border-default)",
217
+ borderRadius: "var(--radius-md)",
218
+ color: "var(--text-primary)",
219
+ fontFamily: "var(--font-sans)",
220
+ fontSize: "var(--text-sm)",
221
+ } }), _jsx(Button, { variant: "primary", "data-testid": "onboarding-tenancy-create-submit", disabled: busy || createName.trim() === "", onClick: () => void onCreateWorkspace(), children: "Create and select" })] })) })), view.workspaces.length > 0 && orgCountRef.current > 1 && (_jsx(Button, { variant: "ghost", "data-testid": "onboarding-tenancy-back-orgs", disabled: busy, onClick: () => void loadOrgs(), children: "Back to organizations" }))] }))] })), selectError !== null && (_jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 8, alignItems: "center" }, children: [_jsx("p", { "data-testid": "onboarding-tenancy-select-error", style: { fontSize: "var(--text-sm)", color: "var(--severity-critical)", margin: 0 }, children: selectError }), _jsx(Button, { variant: "secondary", size: "sm", "data-testid": "onboarding-tenancy-select-retry", onClick: () => setSelectError(null), children: "Dismiss" })] }))] }));
222
+ }
223
+ //# sourceMappingURL=tenancy-step.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tenancy-step.js","sourceRoot":"","sources":["../../../../src/dashboard/web/onboarding/tenancy-step.tsx"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
1
+ import { jsxs as _jsxs, jsx as _jsx, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  /**
3
3
  * PRD-015 — the Hive Graph dashboard page (`/hive-graph`).
4
4
  *
@@ -7,16 +7,111 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
7
7
  * recipe; hive's server-side proxy forwards `/api/hive-graph/*` to nectar (ADR-0002).
8
8
  */
9
9
  import React from "react";
10
+ import { deriveActiveTenancyLabel, formatNectarPanelTenancy } from "../active-tenancy-display.js";
10
11
  import { layout } from "../graph-layout.js";
11
12
  import { Panel } from "../panels.js";
12
13
  import { Badge, Button } from "../primitives.js";
13
14
  import { isTabHidden, PageFrame } from "../page-frame.js";
14
15
  import { NeedsProjectSelection } from "../needs-project.js";
16
+ import { FolderPicker } from "../folder-picker.js";
15
17
  import { useScope } from "../scope-context.js";
16
18
  import { GraphCanvasFull, KindToggle, ToolButton, IDENTITY_TRANSFORM, GRAPH_VIEW, MIN_ZOOM, MAX_ZOOM, ZOOM_STEP, applyKindFilter, centerOn, distinctKinds, } from "./graph.js";
17
- import { capGraphForRender, EMPTY_GRAPH, EMPTY_HIVE_GRAPH_STATUS, MAX_RENDER_NODES, } from "../wire.js";
19
+ import { capGraphForRender, EMPTY_GRAPH, EMPTY_HIVE_GRAPH_STATUS, MAX_RENDER_NODES, EMPTY_NECTAR_PROJECTS, UNREACHABLE_SETUP_TENANCY, } from "../wire.js";
18
20
  /** Poll interval for graph + status widgets (mirrors Memory Graph discipline). */
19
21
  const HIVE_GRAPH_POLL_MS = 8000;
22
+ const SURFACE = {
23
+ padding: 16,
24
+ background: "var(--bg-surface)",
25
+ border: "1px solid var(--border-default)",
26
+ borderRadius: "var(--radius-lg)",
27
+ };
28
+ function broodingLabel(state) {
29
+ switch (state) {
30
+ case "active":
31
+ return "brooding";
32
+ case "paused":
33
+ return "paused";
34
+ case "global-paused":
35
+ return "global-paused";
36
+ default: {
37
+ const _exhaustive = state;
38
+ return _exhaustive;
39
+ }
40
+ }
41
+ }
42
+ function broodingBadgeTone(state) {
43
+ switch (state) {
44
+ case "active":
45
+ return "verified";
46
+ case "paused":
47
+ return "neutral";
48
+ case "global-paused":
49
+ return "warning";
50
+ default: {
51
+ const _exhaustive = state;
52
+ return _exhaustive;
53
+ }
54
+ }
55
+ }
56
+ /** PRD-019c — nectar active projects + brooding controls (polls `GET /api/hive-graph/projects`). */
57
+ function NectarProjectsPanel({ wire }) {
58
+ const [projectsWire, setProjectsWire] = React.useState(EMPTY_NECTAR_PROJECTS);
59
+ const [fleetTenancy, setFleetTenancy] = React.useState(() => deriveActiveTenancyLabel(UNREACHABLE_SETUP_TENANCY));
60
+ const [hydrated, setHydrated] = React.useState(false);
61
+ const [busyKey, setBusyKey] = React.useState(null);
62
+ const inFlightRef = React.useRef(false);
63
+ const reList = React.useCallback(async () => {
64
+ const [next, tenancy] = await Promise.all([wire.nectarProjects(), wire.setupTenancy()]);
65
+ setProjectsWire(next);
66
+ setFleetTenancy(deriveActiveTenancyLabel(tenancy));
67
+ setHydrated(true);
68
+ }, [wire]);
69
+ React.useEffect(() => {
70
+ let alive = true;
71
+ const tick = async () => {
72
+ if (!alive || isTabHidden())
73
+ return;
74
+ await reList();
75
+ };
76
+ void tick();
77
+ const id = setInterval(() => void tick(), HIVE_GRAPH_POLL_MS);
78
+ return () => {
79
+ alive = false;
80
+ clearInterval(id);
81
+ };
82
+ }, [reList]);
83
+ const runBroodingWrite = React.useCallback(async (body, busy) => {
84
+ if (inFlightRef.current || projectsWire.unreachable)
85
+ return;
86
+ inFlightRef.current = true;
87
+ setBusyKey(busy);
88
+ try {
89
+ const ack = await wire.setNectarBrooding(body);
90
+ if (!ack.unreachable) {
91
+ setProjectsWire(ack);
92
+ }
93
+ await reList();
94
+ }
95
+ finally {
96
+ inFlightRef.current = false;
97
+ setBusyKey(null);
98
+ }
99
+ }, [wire, reList, projectsWire.unreachable]);
100
+ const onBound = React.useCallback(() => {
101
+ void reList();
102
+ }, [reList]);
103
+ const controlsDisabled = !hydrated || projectsWire.unreachable || busyKey !== null;
104
+ const panelTenancyLine = !projectsWire.unreachable && hydrated
105
+ ? formatNectarPanelTenancy({
106
+ org: projectsWire.tenancyOrgName ?? projectsWire.tenancyOrgId,
107
+ workspace: projectsWire.tenancyWorkspaceName ?? projectsWire.tenancyWorkspaceId,
108
+ }, fleetTenancy)
109
+ : null;
110
+ return (_jsxs(Panel, { title: "Nectar projects", right: _jsx(Button, { variant: "secondary", size: "sm", "data-testid": "nectar-global-brooding-toggle", disabled: controlsDisabled, onClick: () => void runBroodingWrite({ global: projectsWire.globalBrooding === "on" ? "paused" : "on" }, "global"), children: projectsWire.globalBrooding === "on" ? "Pause all brooding" : "Resume all brooding" }), children: [panelTenancyLine !== null && (_jsxs("p", { "data-testid": "nectar-projects-tenancy", style: { fontFamily: "var(--font-mono)", fontSize: 12, color: "var(--text-tertiary)", margin: "0 0 10px" }, children: ["Writing to: ", panelTenancyLine] })), projectsWire.unreachable ? (_jsx("div", { "data-testid": "nectar-projects-unreachable", style: { fontFamily: "var(--font-mono)", fontSize: 12, color: "var(--severity-critical)" }, children: "Nectar is unreachable \u2014 project brooding controls are disabled." })) : !hydrated ? (_jsx("span", { style: { fontFamily: "var(--font-mono)", fontSize: 12, color: "var(--text-tertiary)" }, children: "loading\u2026" })) : projectsWire.projects.length === 0 ? (_jsxs("div", { "data-testid": "nectar-needs-project", style: { display: "flex", flexDirection: "column", gap: 12 }, children: [_jsx("div", { style: { fontSize: 14, color: "var(--text-secondary)" }, children: "No active nectar projects yet. Pick a folder to activate brooding for a project directory." }), _jsx(FolderPicker, { wire: wire, onBound: onBound })] })) : (_jsx("div", { "data-testid": "nectar-projects-list", style: { display: "flex", flexDirection: "column", gap: 10 }, children: projectsWire.projects.map((project) => (_jsxs("div", { "data-testid": "nectar-project-row", "data-project-id": project.projectId, style: { ...SURFACE, display: "flex", flexDirection: "column", gap: 8 }, children: [_jsxs("div", { style: { display: "flex", alignItems: "center", gap: 10, flexWrap: "wrap" }, children: [_jsx("span", { "data-testid": "nectar-project-name", style: { fontFamily: "var(--font-mono)", fontSize: 14, fontWeight: 600, color: "var(--honey)" }, children: project.name !== "" ? project.name : project.projectId }), _jsx(Badge, { tone: broodingBadgeTone(project.brooding), mono: true, children: _jsx("span", { "data-testid": "nectar-brooding-badge", children: broodingLabel(project.brooding) }) }), _jsx("span", { style: { flex: 1 } }), _jsx(Button, { variant: "ghost", size: "sm", "data-testid": "nectar-brooding-toggle", disabled: controlsDisabled, onClick: () => void runBroodingWrite({
111
+ projectId: project.projectId,
112
+ brooding: project.brooding === "active" ? "off" : "on",
113
+ }, project.projectId), children: project.brooding === "active" ? "Turn off brooding" : "Turn on brooding" })] }), _jsx("span", { "data-testid": "nectar-project-path", style: { fontFamily: "var(--font-mono)", fontSize: 12, color: "var(--text-tertiary)", wordBreak: "break-all" }, children: project.path })] }, project.projectId))) }))] }));
114
+ }
20
115
  function clamp(n, lo, hi) {
21
116
  return Math.min(hi, Math.max(lo, n));
22
117
  }
@@ -191,51 +286,51 @@ export function HiveGraphPage({ wire }) {
191
286
  const onSelect = React.useCallback((id) => setSelected((cur) => (cur === id ? null : id)), []);
192
287
  const clearSelection = React.useCallback(() => setSelected(null), []);
193
288
  const eyebrow = `${rendered.nodes.length} files · ${rendered.edges.length} provenance links`;
194
- return (_jsx(PageFrame, { title: "Hive Graph", eyebrow: project === undefined ? "hive graph" : eyebrow, children: project === undefined ? (_jsx(NeedsProjectSelection, { surface: "Hive Graph" })) : (_jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 16 }, children: [_jsx(Panel, { title: "Pipeline status", right: _jsx(HiveGraphBuildButton, { onBuild: () => wire.hiveGraphBuild() }), children: _jsx(StatusWidgets, { status: status }) }), _jsxs(Panel, { title: "Search", children: [_jsxs("div", { style: { display: "flex", gap: 8, marginBottom: 12 }, children: [_jsx("input", { "aria-label": "search hive graph", "data-testid": "hive-graph-search-input", type: "text", value: searchQuery, disabled: project === undefined, placeholder: "search files and descriptions\u2026", onChange: (e) => setSearchQuery(e.target.value), onKeyDown: (e) => {
195
- if (e.key === "Enter")
196
- void onSearchSubmit();
197
- }, style: {
198
- flex: 1,
199
- height: 30,
200
- padding: "0 12px",
201
- background: "var(--bg-surface)",
202
- border: "1px solid var(--border-default)",
203
- borderRadius: "var(--radius-md)",
204
- color: "var(--text-primary)",
205
- fontFamily: "var(--font-mono)",
206
- fontSize: 13,
207
- } }), _jsx(Button, { variant: "primary", onClick: () => void onSearchSubmit(), disabled: searching || searchQuery.trim() === "", "data-testid": "hive-graph-search-submit", children: searching ? "Searching…" : "Search" })] }), searchResults !== null && _jsx(SearchResults, { results: searchResults, onSelect: (hit) => focusNode(hit.id) })] }), graphUnreachable || !graph.built ? (_jsx(HiveGraphEmptyState, { unreachable: graphUnreachable })) : (_jsxs(_Fragment, { children: [capped && (_jsxs("div", { "data-testid": "hive-graph-truncation-notice", style: {
208
- display: "flex",
209
- alignItems: "center",
210
- gap: 8,
211
- padding: "9px 12px",
212
- background: "var(--bg-elevated)",
213
- border: "1px solid var(--border-subtle)",
214
- borderRadius: "var(--radius-md)",
215
- fontFamily: "var(--font-mono)",
216
- fontSize: 12,
217
- color: "var(--text-tertiary)",
218
- }, children: [_jsx("span", { style: { width: 7, height: 7, borderRadius: "50%", background: "var(--severity-warning)", flex: "none" } }), "Rendering is capped at ", MAX_RENDER_NODES.toLocaleString(), " nodes. Use search and kind filters to focus."] })), _jsxs("div", { style: { display: "flex", alignItems: "center", gap: 12, flexWrap: "wrap" }, children: [_jsx("div", { style: { display: "flex", alignItems: "center", gap: 8, flexWrap: "wrap" }, children: kinds.map((k) => {
219
- const count = graph.nodes.filter((n) => n.kind === k).length;
220
- return _jsx(KindToggle, { kind: k, count: count, hidden: hiddenKinds.has(k), onToggle: () => toggleKind(k) }, k);
221
- }) }), _jsx("span", { style: { flex: 1 } }), _jsxs("div", { style: { display: "flex", alignItems: "center", gap: 6 }, children: [_jsx(ToolButton, { label: "\u2212", ariaLabel: "zoom out", onClick: zoomOut }), _jsx(ToolButton, { label: "+", ariaLabel: "zoom in", onClick: zoomIn }), _jsx("button", { type: "button", "data-testid": "hive-graph-fit-view", onClick: fit, style: {
289
+ return (_jsx(PageFrame, { title: "Hive Graph", eyebrow: project === undefined ? "hive graph" : eyebrow, children: _jsxs("div", { style: { display: "flex", flexDirection: "column", gap: 16 }, children: [_jsx(NectarProjectsPanel, { wire: wire }), project === undefined ? (_jsx(NeedsProjectSelection, { surface: "Hive Graph" })) : (_jsxs(_Fragment, { children: [_jsx(Panel, { title: "Pipeline status", right: _jsx(HiveGraphBuildButton, { onBuild: () => wire.hiveGraphBuild() }), children: _jsx(StatusWidgets, { status: status }) }), _jsxs(Panel, { title: "Search", children: [_jsxs("div", { style: { display: "flex", gap: 8, marginBottom: 12 }, children: [_jsx("input", { "aria-label": "search hive graph", "data-testid": "hive-graph-search-input", type: "text", value: searchQuery, disabled: project === undefined, placeholder: "search files and descriptions\u2026", onChange: (e) => setSearchQuery(e.target.value), onKeyDown: (e) => {
290
+ if (e.key === "Enter")
291
+ void onSearchSubmit();
292
+ }, style: {
293
+ flex: 1,
222
294
  height: 30,
223
295
  padding: "0 12px",
224
- background: "transparent",
296
+ background: "var(--bg-surface)",
225
297
  border: "1px solid var(--border-default)",
226
298
  borderRadius: "var(--radius-md)",
227
- color: "var(--text-secondary)",
299
+ color: "var(--text-primary)",
228
300
  fontFamily: "var(--font-mono)",
229
- fontSize: 12,
230
- cursor: "pointer",
231
- }, children: "fit" })] })] }), _jsxs("div", { style: { display: "flex", gap: 16, alignItems: "stretch" }, children: [_jsx("div", { style: {
232
- flex: 1,
233
- minWidth: 0,
234
- height: "70vh",
235
- background: "var(--bg-surface)",
236
- border: "1px solid var(--border-default)",
237
- borderRadius: "var(--radius-lg)",
238
- overflow: "hidden",
239
- }, children: _jsx(GraphCanvasFull, { graph: rendered, selected: selectedNode?.id ?? null, transform: transform, onSelect: onSelect, onClear: clearSelection, onPanZoom: setTransform }) }), selectedNode !== null && (_jsx(FileNodeDetailPanel, { node: selectedNode, file: files[selectedNode.id], derived: derived[selectedNode.id], onClear: clearSelection }))] })] }))] })) }));
301
+ fontSize: 13,
302
+ } }), _jsx(Button, { variant: "primary", onClick: () => void onSearchSubmit(), disabled: searching || searchQuery.trim() === "", "data-testid": "hive-graph-search-submit", children: searching ? "Searching…" : "Search" })] }), searchResults !== null && _jsx(SearchResults, { results: searchResults, onSelect: (hit) => focusNode(hit.id) })] }), graphUnreachable || !graph.built ? (_jsx(HiveGraphEmptyState, { unreachable: graphUnreachable })) : (_jsxs(_Fragment, { children: [capped && (_jsxs("div", { "data-testid": "hive-graph-truncation-notice", style: {
303
+ display: "flex",
304
+ alignItems: "center",
305
+ gap: 8,
306
+ padding: "9px 12px",
307
+ background: "var(--bg-elevated)",
308
+ border: "1px solid var(--border-subtle)",
309
+ borderRadius: "var(--radius-md)",
310
+ fontFamily: "var(--font-mono)",
311
+ fontSize: 12,
312
+ color: "var(--text-tertiary)",
313
+ }, children: [_jsx("span", { style: { width: 7, height: 7, borderRadius: "50%", background: "var(--severity-warning)", flex: "none" } }), "Rendering is capped at ", MAX_RENDER_NODES.toLocaleString(), " nodes. Use search and kind filters to focus."] })), _jsxs("div", { style: { display: "flex", alignItems: "center", gap: 12, flexWrap: "wrap" }, children: [_jsx("div", { style: { display: "flex", alignItems: "center", gap: 8, flexWrap: "wrap" }, children: kinds.map((k) => {
314
+ const count = graph.nodes.filter((n) => n.kind === k).length;
315
+ return _jsx(KindToggle, { kind: k, count: count, hidden: hiddenKinds.has(k), onToggle: () => toggleKind(k) }, k);
316
+ }) }), _jsx("span", { style: { flex: 1 } }), _jsxs("div", { style: { display: "flex", alignItems: "center", gap: 6 }, children: [_jsx(ToolButton, { label: "\u2212", ariaLabel: "zoom out", onClick: zoomOut }), _jsx(ToolButton, { label: "+", ariaLabel: "zoom in", onClick: zoomIn }), _jsx("button", { type: "button", "data-testid": "hive-graph-fit-view", onClick: fit, style: {
317
+ height: 30,
318
+ padding: "0 12px",
319
+ background: "transparent",
320
+ border: "1px solid var(--border-default)",
321
+ borderRadius: "var(--radius-md)",
322
+ color: "var(--text-secondary)",
323
+ fontFamily: "var(--font-mono)",
324
+ fontSize: 12,
325
+ cursor: "pointer",
326
+ }, children: "fit" })] })] }), _jsxs("div", { style: { display: "flex", gap: 16, alignItems: "stretch" }, children: [_jsx("div", { style: {
327
+ flex: 1,
328
+ minWidth: 0,
329
+ height: "70vh",
330
+ background: "var(--bg-surface)",
331
+ border: "1px solid var(--border-default)",
332
+ borderRadius: "var(--radius-lg)",
333
+ overflow: "hidden",
334
+ }, children: _jsx(GraphCanvasFull, { graph: rendered, selected: selectedNode?.id ?? null, transform: transform, onSelect: onSelect, onClear: clearSelection, onPanZoom: setTransform }) }), selectedNode !== null && (_jsx(FileNodeDetailPanel, { node: selectedNode, file: files[selectedNode.id], derived: derived[selectedNode.id], onClear: clearSelection }))] })] }))] }))] }) }));
240
335
  }
241
336
  //# sourceMappingURL=hive-graph.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"hive-graph.js","sourceRoot":"","sources":["../../../../src/dashboard/web/pages/hive-graph.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"hive-graph.js","sourceRoot":"","sources":["../../../../src/dashboard/web/pages/hive-graph.tsx"],"names":[],"mappings":"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"}