From a116713b9a74f22629df62f7caa3a9707d162b67 Mon Sep 17 00:00:00 2001 From: Dotta <34892728+cryppadotta@users.noreply.github.com> Date: Tue, 14 Jul 2026 15:31:12 -0500 Subject: [PATCH] feat(mcp) [split 6/8]: add Tools and Profiles UI foundation (#9561) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ## Thinking Path > - Paperclip is the open source app people use to manage AI agents for work > - Governed MCP access spans contracts, runtime enforcement, adapters, UI surfaces, and operator verification > - The parity reference PR #9534 is too large for effective automated or human review > - The feature therefore needs a linear stack whose individual diffs stay below the 100-file review limit > - This pull request is split 6/8 and focuses on UI API, shared components, and Tools/Profile surfaces > - The benefit is a standalone, testable review boundary while preserving byte-for-byte parity at the top of the stack ## Linked Issues or Issue Description - Related parity reference: #9534 - Problem: Operators need typed clients and administration surfaces that compile independently before navigation exposes them. - Proposed solution: Adds UI APIs, hooks, libraries, shared components, Tools/Profiles pages, and the plugin settings consumer required by the new company-scoped API. - Alternatives considered: keeping #9534 as one 403-file review, or rewriting the feature to manufacture seams; both were rejected in favor of path extraction plus compile-driven boundary moves. - Roadmap alignment: this advances the existing governed MCP/tool-access work already represented by #9534; it does not introduce a separate roadmap initiative. - Stack position: base branch is `pap10341-split/05-runtime-integration`. - Merge policy: merge bottom-up, in order, only after the complete eight-PR stack has been reviewed and the top-of-stack parity gate remains empty. - Requested review: UXDesigner sanity pass on Tools/Profile surfaces; Greptile on every PR. ## What Changed - Adds UI APIs, hooks, libraries, shared components, Tools/Profiles pages, and the plugin settings consumer required by the new company-scoped API. - Keeps this PR below 100 changed files and independently typecheckable. - Preserves the final tree from #9534 when combined with the other seven stack levels. ## Verification - `pnpm typecheck` - `pnpm check:token-gates` — all gates clean - Focused UI Vitest run with `NODE_ENV=test` — 28 files, 183 tests passed ## Risks - Large dead-code UI additions can drift from activation routes; PR 7 supplies the registration layer and top-level parity catches omissions. - Stack risk: merging out of order can expose incomplete layers; mitigate by following the documented bottom-up merge policy. - Parity risk: later edits to an intermediate branch can drift from #9534; mitigate by re-running the empty top-of-stack diff before merge. > For core feature work, check [`ROADMAP.md`](ROADMAP.md) first and discuss it in `#dev` before opening the PR. Feature PRs that overlap with planned core work may need to be redirected — check the roadmap first. See `CONTRIBUTING.md`. ## Model Used - OpenAI Codex, exact model ID `gpt-5.4`; runtime-managed context window; medium reasoning with repository, shell, Git, GitHub CLI, and code-execution tools enabled. ## Checklist - [x] I have included a thinking path that traces from project context to this change - [x] I have specified the model used (with version and capability details) - [x] I have checked ROADMAP.md and confirmed this PR does not duplicate planned core work - [x] I have searched GitHub for duplicate or related PRs and linked them above - [x] I have either (a) linked existing issues with `Fixes: #` / `Closes #` / `Refs #` OR (b) described the issue in-PR following the relevant issue template - [x] Internal references are omitted except the execution-plan link explicitly required for this coordinated split stack - [x] My branch name describes the change and contains no internal Paperclip ticket id or instance-derived details - [x] I have run tests locally and they pass - [x] I have added or updated tests where applicable - [x] I have updated relevant documentation to reflect my changes - [x] I have considered and documented any risks above - [ ] All Paperclip CI gates are green - [ ] Greptile is 5/5 with no open P2s, recommendations, or follow-ups - [x] I will address all Greptile and reviewer comments before requesting merge ## Stack Coordination - Internal execution plan: [PAP-13874](/PAP/issues/PAP-13874#document-plan) - Parity reference: #9534 - Stack: #9556 → #9557 → #9558 → #9559 → #9560 → #9561 → #9562 → #9563 - Merge bottom-up only after full-stack review and an empty parity diff at #9563. ## UI Evidence QA captured these from the live Garden MCP split stack at 1440px and verified clean rendering: ![Profiles index](https://raw.githubusercontent.com/paperclipai/paperclip/ac72de3ec85feb14c5ec1ed0a3d39b29baa0abff/doc/screenshots/garden-mcp-split-stack/profiles-index.png) ![Profile wizard](https://raw.githubusercontent.com/paperclipai/paperclip/ac72de3ec85feb14c5ec1ed0a3d39b29baa0abff/doc/screenshots/garden-mcp-split-stack/profile-wizard.png) ![Policies](https://raw.githubusercontent.com/paperclipai/paperclip/ac72de3ec85feb14c5ec1ed0a3d39b29baa0abff/doc/screenshots/garden-mcp-split-stack/policies.png) --------- Co-authored-by: Paperclip --- .../garden-mcp-split-stack/policies.png | Bin 0 -> 97712 bytes .../garden-mcp-split-stack/profile-wizard.png | Bin 0 -> 87246 bytes .../garden-mcp-split-stack/profiles-index.png | Bin 0 -> 94291 bytes .../adapters/use-disabled-adapters.test.tsx | 59 + ui/src/adapters/use-disabled-adapters.ts | 4 +- ui/src/api/auth.ts | 62 +- ui/src/api/client.ts | 11 +- ui/src/api/companies-query.test.ts | 22 + ui/src/api/companies-query.ts | 2 +- ui/src/api/plugins.ts | 12 +- ui/src/api/smokeLab.ts | 68 + ui/src/api/tools.ts | 460 ++++++ ui/src/components/AgentMultiSelect.test.tsx | 139 ++ ui/src/components/AgentMultiSelect.tsx | 224 +++ .../CompanySettingsSidebar.test.tsx | 6 + ui/src/components/EmptyState.tsx | 16 +- ui/src/components/EnforcementBanner.tsx | 175 +++ .../IssueThreadInteractionCard.test.tsx | 130 ++ .../components/IssueThreadInteractionCard.tsx | 609 +++++++- ui/src/components/JsonSchemaForm.test.tsx | 8 +- ui/src/components/JsonSchemaForm.tsx | 42 +- ui/src/components/OnboardingWizard.tsx | 8 +- .../components/SmokeLabDashboardCard.test.tsx | 131 ++ ui/src/components/SmokeLabDashboardCard.tsx | 89 ++ ui/src/components/StatusBadge.tsx | 6 +- ui/src/components/actions/ActionCard.test.tsx | 141 ++ ui/src/components/actions/ActionCard.tsx | 322 ++++ .../transcript/RunTranscriptView.test.tsx | 101 +- .../transcript/RunTranscriptView.tsx | 212 ++- ui/src/components/ui/toggle-switch.test.tsx | 57 + ui/src/components/ui/toggle-switch.tsx | 10 +- .../issueThreadInteractionFixtures.ts | 176 +++ ui/src/hooks/useAppsEnabled.ts | 15 + ui/src/hooks/useSmokeLabEnabled.ts | 45 + ui/src/lib/app-gallery-copy.ts | 133 ++ ui/src/lib/company-routes.test.ts | 10 + ui/src/lib/company-routes.ts | 2 + ui/src/lib/issue-thread-interactions.ts | 2 + ui/src/lib/queryKeys.ts | 54 +- ui/src/lib/redact-url-secrets.test.ts | 40 + ui/src/lib/redact-url-secrets.ts | 55 + ui/src/lib/status-colors.ts | 15 + ui/src/lib/tool-installs.ts | 59 + ui/src/pages/PluginSettings.tsx | 39 +- ui/src/pages/tools/AdvancedToolsRoute.tsx | 57 + ui/src/pages/tools/AuditTab.test.tsx | 262 ++++ ui/src/pages/tools/AuditTab.tsx | 498 ++++++ ui/src/pages/tools/GatewaysTab.test.tsx | 262 ++++ ui/src/pages/tools/GatewaysTab.tsx | 659 ++++++++ ui/src/pages/tools/PasteConfigTab.test.tsx | 317 ++++ ui/src/pages/tools/PasteConfigTab.tsx | 457 ++++++ ui/src/pages/tools/PoliciesTab.test.tsx | 282 ++++ ui/src/pages/tools/PoliciesTab.tsx | 1192 ++++++++++++++ ui/src/pages/tools/ProfilesTab.test.ts | 195 +++ ui/src/pages/tools/ProfilesTab.tsx | 1384 +++++++++++++++++ ui/src/pages/tools/RunYourOwnTab.tsx | 290 ++++ ui/src/pages/tools/RuntimeTab.test.tsx | 244 +++ ui/src/pages/tools/RuntimeTab.tsx | 660 ++++++++ ui/src/pages/tools/SmokeLabTab.test.tsx | 194 +++ ui/src/pages/tools/SmokeLabTab.tsx | 494 ++++++ ui/src/pages/tools/ToolsAccess.test.tsx | 108 ++ ui/src/pages/tools/ToolsAccess.tsx | 149 ++ ui/src/pages/tools/connection-dialogs.tsx | 567 +++++++ .../tools/profiles/ProfileActionDialog.tsx | 84 + .../tools/profiles/ProfileDetail.test.tsx | 347 +++++ ui/src/pages/tools/profiles/ProfileDetail.tsx | 848 ++++++++++ .../tools/profiles/ProfileDetailRoute.tsx | 35 + .../tools/profiles/ProfileWizard.test.tsx | 158 ++ ui/src/pages/tools/profiles/ProfileWizard.tsx | 697 +++++++++ .../tools/profiles/ProfileWizardRoute.tsx | 63 + .../tools/profiles/ProfilesIndex.test.tsx | 297 ++++ ui/src/pages/tools/profiles/ProfilesIndex.tsx | 398 +++++ .../pages/tools/profiles/ToolsAdminGate.tsx | 56 + .../tools/profiles/WizardToolsStep.test.tsx | 124 ++ .../pages/tools/profiles/WizardToolsStep.tsx | 431 +++++ .../tools/profiles/profile-model.test.ts | 277 ++++ ui/src/pages/tools/profiles/profile-model.ts | 399 +++++ .../tools/profiles/profile-summary.test.ts | 59 + .../pages/tools/profiles/profile-summary.ts | 55 + .../pages/tools/profiles/useProfilesData.ts | 83 + .../pages/tools/profiles/wizard-draft.test.ts | 40 + ui/src/pages/tools/profiles/wizard-draft.ts | 45 + ui/src/pages/tools/shared.tsx | 240 +++ ui/src/pages/tools/smoke-lab-matrix.test.ts | 91 ++ ui/src/pages/tools/smoke-lab-matrix.ts | 108 ++ ui/src/pages/tools/tool-tabs.ts | 55 + 86 files changed, 16969 insertions(+), 63 deletions(-) create mode 100644 doc/screenshots/garden-mcp-split-stack/policies.png create mode 100644 doc/screenshots/garden-mcp-split-stack/profile-wizard.png create mode 100644 doc/screenshots/garden-mcp-split-stack/profiles-index.png create mode 100644 ui/src/adapters/use-disabled-adapters.test.tsx create mode 100644 ui/src/api/companies-query.test.ts create mode 100644 ui/src/api/smokeLab.ts create mode 100644 ui/src/api/tools.ts create mode 100644 ui/src/components/AgentMultiSelect.test.tsx create mode 100644 ui/src/components/AgentMultiSelect.tsx create mode 100644 ui/src/components/EnforcementBanner.tsx create mode 100644 ui/src/components/SmokeLabDashboardCard.test.tsx create mode 100644 ui/src/components/SmokeLabDashboardCard.tsx create mode 100644 ui/src/components/actions/ActionCard.test.tsx create mode 100644 ui/src/components/actions/ActionCard.tsx create mode 100644 ui/src/components/ui/toggle-switch.test.tsx create mode 100644 ui/src/hooks/useAppsEnabled.ts create mode 100644 ui/src/hooks/useSmokeLabEnabled.ts create mode 100644 ui/src/lib/app-gallery-copy.ts create mode 100644 ui/src/lib/redact-url-secrets.test.ts create mode 100644 ui/src/lib/redact-url-secrets.ts create mode 100644 ui/src/lib/tool-installs.ts create mode 100644 ui/src/pages/tools/AdvancedToolsRoute.tsx create mode 100644 ui/src/pages/tools/AuditTab.test.tsx create mode 100644 ui/src/pages/tools/AuditTab.tsx create mode 100644 ui/src/pages/tools/GatewaysTab.test.tsx create mode 100644 ui/src/pages/tools/GatewaysTab.tsx create mode 100644 ui/src/pages/tools/PasteConfigTab.test.tsx create mode 100644 ui/src/pages/tools/PasteConfigTab.tsx create mode 100644 ui/src/pages/tools/PoliciesTab.test.tsx create mode 100644 ui/src/pages/tools/PoliciesTab.tsx create mode 100644 ui/src/pages/tools/ProfilesTab.test.ts create mode 100644 ui/src/pages/tools/ProfilesTab.tsx create mode 100644 ui/src/pages/tools/RunYourOwnTab.tsx create mode 100644 ui/src/pages/tools/RuntimeTab.test.tsx create mode 100644 ui/src/pages/tools/RuntimeTab.tsx create mode 100644 ui/src/pages/tools/SmokeLabTab.test.tsx create mode 100644 ui/src/pages/tools/SmokeLabTab.tsx create mode 100644 ui/src/pages/tools/ToolsAccess.test.tsx create mode 100644 ui/src/pages/tools/ToolsAccess.tsx create mode 100644 ui/src/pages/tools/connection-dialogs.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileActionDialog.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileDetail.test.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileDetail.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileDetailRoute.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileWizard.test.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileWizard.tsx create mode 100644 ui/src/pages/tools/profiles/ProfileWizardRoute.tsx create mode 100644 ui/src/pages/tools/profiles/ProfilesIndex.test.tsx create mode 100644 ui/src/pages/tools/profiles/ProfilesIndex.tsx create mode 100644 ui/src/pages/tools/profiles/ToolsAdminGate.tsx create mode 100644 ui/src/pages/tools/profiles/WizardToolsStep.test.tsx create mode 100644 ui/src/pages/tools/profiles/WizardToolsStep.tsx create mode 100644 ui/src/pages/tools/profiles/profile-model.test.ts create mode 100644 ui/src/pages/tools/profiles/profile-model.ts create mode 100644 ui/src/pages/tools/profiles/profile-summary.test.ts create mode 100644 ui/src/pages/tools/profiles/profile-summary.ts create mode 100644 ui/src/pages/tools/profiles/useProfilesData.ts create mode 100644 ui/src/pages/tools/profiles/wizard-draft.test.ts create mode 100644 ui/src/pages/tools/profiles/wizard-draft.ts create mode 100644 ui/src/pages/tools/shared.tsx create mode 100644 ui/src/pages/tools/smoke-lab-matrix.test.ts create mode 100644 ui/src/pages/tools/smoke-lab-matrix.ts create mode 100644 ui/src/pages/tools/tool-tabs.ts diff --git a/doc/screenshots/garden-mcp-split-stack/policies.png b/doc/screenshots/garden-mcp-split-stack/policies.png new file mode 100644 index 0000000000000000000000000000000000000000..5a4377af550e063e2ef34eb91c4d3360d64c56dd GIT binary patch literal 97712 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 literal 0 HcmV?d00001 diff --git a/doc/screenshots/garden-mcp-split-stack/profile-wizard.png b/doc/screenshots/garden-mcp-split-stack/profile-wizard.png new file mode 100644 index 0000000000000000000000000000000000000000..112a1f88e7ab6371acc982dcd5bd305ac8d6a01f GIT binary patch literal 87246 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 literal 0 HcmV?d00001 diff --git a/doc/screenshots/garden-mcp-split-stack/profiles-index.png b/doc/screenshots/garden-mcp-split-stack/profiles-index.png new file mode 100644 index 0000000000000000000000000000000000000000..53bed4af380d66a9d0af94e99946e3f49a304e6f GIT binary patch literal 94291 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 Bm5KlW literal 0 HcmV?d00001 diff --git a/ui/src/adapters/use-disabled-adapters.test.tsx b/ui/src/adapters/use-disabled-adapters.test.tsx new file mode 100644 index 0000000000..c31d1eba4e --- /dev/null +++ b/ui/src/adapters/use-disabled-adapters.test.tsx @@ -0,0 +1,59 @@ +// @vitest-environment jsdom + +import { flushSync } from "react-dom"; +import { createRoot, type Root } from "react-dom/client"; +import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import { useDisabledAdaptersSync } from "./use-disabled-adapters"; + +const mockAdaptersApi = vi.hoisted(() => ({ + list: vi.fn(), +})); + +vi.mock("@/api/adapters", () => ({ + adaptersApi: mockAdaptersApi, +})); + +function Probe({ enabled }: { enabled: boolean }) { + useDisabledAdaptersSync({ enabled }); + return null; +} + +describe("useDisabledAdaptersSync", () => { + let container: HTMLDivElement; + let root: Root; + let queryClient: QueryClient; + + beforeEach(() => { + (globalThis as { IS_REACT_ACT_ENVIRONMENT?: boolean }).IS_REACT_ACT_ENVIRONMENT = true; + container = document.createElement("div"); + document.body.appendChild(container); + root = createRoot(container); + queryClient = new QueryClient({ + defaultOptions: { + queries: { retry: false }, + }, + }); + }); + + afterEach(() => { + flushSync(() => { + root.unmount(); + }); + queryClient.clear(); + container.remove(); + vi.clearAllMocks(); + }); + + it("does not fetch adapters when disabled", () => { + flushSync(() => { + root.render( + + + , + ); + }); + + expect(mockAdaptersApi.list).not.toHaveBeenCalled(); + }); +}); diff --git a/ui/src/adapters/use-disabled-adapters.ts b/ui/src/adapters/use-disabled-adapters.ts index ebc63946cd..d3140fed6d 100644 --- a/ui/src/adapters/use-disabled-adapters.ts +++ b/ui/src/adapters/use-disabled-adapters.ts @@ -16,10 +16,12 @@ import { queryKeys } from "@/lib/queryKeys"; * Returns a reactive Set of disabled types for use as useMemo dependencies. * Call this at the top of any component that renders adapter menus. */ -export function useDisabledAdaptersSync(): Set { +export function useDisabledAdaptersSync(options: { enabled?: boolean } = {}): Set { + const enabled = options.enabled ?? true; const { data: adapters } = useQuery({ queryKey: queryKeys.adapters.all, queryFn: () => adaptersApi.list(), + enabled, staleTime: 5 * 60 * 1000, }); diff --git a/ui/src/api/auth.ts b/ui/src/api/auth.ts index b0da51651a..8c59e37d96 100644 --- a/ui/src/api/auth.ts +++ b/ui/src/api/auth.ts @@ -5,6 +5,7 @@ import { type CurrentUserProfile, type UpdateCurrentUserProfile, } from "@paperclipai/shared"; +import { redactUrlSecrets } from "@/lib/redact-url-secrets"; type AuthErrorBody = | { @@ -60,15 +61,66 @@ function extractAuthError(payload: AuthErrorBody, status: number) { return new AuthApiError(message, status, payload, code); } -async function authPost(path: string, body: Record) { - const res = await fetch(`/api/auth${path}`, { - method: "POST", +// Rich diagnostics for auth requests. Network-layer failures (Safari +// "Load failed" / Chrome "Failed to fetch") throw a TypeError *before* any +// HTTP response, so they are indistinguishable from a bad password in the UI +// unless we log the resolved request URL + origin here. See PAP-13466. +function resolveAuthUrl(path: string) { + const relative = `/api/auth${path}`; + try { + return new URL(relative, window.location.origin).href; + } catch { + return relative; + } +} + +function logAuthNetworkFailure(method: string, path: string, error: unknown) { + // eslint-disable-next-line no-console + console.error("[auth] request failed at the network layer (no HTTP response)", { + method, + requestUrl: resolveAuthUrl(path), + pageOrigin: typeof window !== "undefined" ? window.location.origin : "(no window)", + pageHref: typeof window !== "undefined" ? redactUrlSecrets(window.location.href) : "(no window)", credentials: "include", - headers: { "Content-Type": "application/json" }, - body: JSON.stringify(body), + online: typeof navigator !== "undefined" ? navigator.onLine : "(no navigator)", + errorName: error instanceof Error ? error.name : typeof error, + errorMessage: error instanceof Error ? error.message : String(error), + error, + hint: + "This means the browser never got a response from the server. Common causes: " + + "the page origin differs from the API host (mixed http/https, wrong hostname/port, " + + "or a proxy/tunnel that only forwards the page but not /api), an SSL error, or the " + + "connection was reset. A wrong password would instead return HTTP 401, not this.", }); +} + +function logAuthHttpError(method: string, path: string, status: number, statusText: string, body: unknown) { + // eslint-disable-next-line no-console + console.error("[auth] request returned an error status", { + method, + requestUrl: resolveAuthUrl(path), + status, + statusText, + body, + }); +} + +async function authPost(path: string, body: Record) { + let res: Response; + try { + res = await fetch(`/api/auth${path}`, { + method: "POST", + credentials: "include", + headers: { "Content-Type": "application/json" }, + body: JSON.stringify(body), + }); + } catch (networkError) { + logAuthNetworkFailure("POST", path, networkError); + throw networkError; + } const payload = await res.json().catch(() => null); if (!res.ok) { + logAuthHttpError("POST", path, res.status, res.statusText, payload); throw extractAuthError(payload as AuthErrorBody, res.status); } return payload; diff --git a/ui/src/api/client.ts b/ui/src/api/client.ts index 2a27addedf..a90efb8fc1 100644 --- a/ui/src/api/client.ts +++ b/ui/src/api/client.ts @@ -139,6 +139,10 @@ export function __inflightGetCount(): number { return inflightGets.size; } +function isRequestOptions(value: unknown): value is RequestOptions { + return typeof value === "object" && value !== null && "signal" in value; +} + export const api = { get: (path: string, options?: RequestOptions) => coalescedGet(path, options), post: (path: string, body: unknown, options?: RequestOptions) => @@ -149,8 +153,11 @@ export const api = { request(path, { method: "PUT", body: JSON.stringify(body), signal: options?.signal }), patch: (path: string, body: unknown, options?: RequestOptions) => request(path, { method: "PATCH", body: JSON.stringify(body), signal: options?.signal }), - delete: (path: string, options?: RequestOptions) => - request(path, { method: "DELETE", signal: options?.signal }), + delete: (path: string, bodyOrOptions?: unknown, options?: RequestOptions) => { + const requestOptions = isRequestOptions(bodyOrOptions) ? bodyOrOptions : options; + const body = bodyOrOptions === undefined || isRequestOptions(bodyOrOptions) ? undefined : JSON.stringify(bodyOrOptions); + return request(path, { method: "DELETE", ...(body === undefined ? {} : { body }), signal: requestOptions?.signal }); + }, deleteWithBody: (path: string, body: unknown, options?: RequestOptions) => request(path, { method: "DELETE", body: JSON.stringify(body), signal: options?.signal }), }; diff --git a/ui/src/api/companies-query.test.ts b/ui/src/api/companies-query.test.ts new file mode 100644 index 0000000000..2d114d39a5 --- /dev/null +++ b/ui/src/api/companies-query.test.ts @@ -0,0 +1,22 @@ +import { describe, expect, it, vi } from "vitest"; +import { companiesListQueryOptions } from "./companies-query"; +import { ApiError } from "./client"; + +const mockCompaniesApi = vi.hoisted(() => ({ + list: vi.fn(), +})); + +vi.mock("./companies", () => ({ + companiesApi: mockCompaniesApi, +})); + +describe("companiesListQueryOptions", () => { + it.each([401, 403])("treats %s company-list failures as unauthorized bootstrap state", async (status) => { + mockCompaniesApi.list.mockRejectedValueOnce(new ApiError("Board access required", status, { error: "Board access required" })); + + await expect(companiesListQueryOptions.queryFn()).resolves.toEqual({ + companies: [], + unauthorized: true, + }); + }); +}); diff --git a/ui/src/api/companies-query.ts b/ui/src/api/companies-query.ts index c01c481a93..4250193d04 100644 --- a/ui/src/api/companies-query.ts +++ b/ui/src/api/companies-query.ts @@ -15,7 +15,7 @@ export const companiesListQueryOptions = { try { return { companies: await companiesApi.list(), unauthorized: false }; } catch (err) { - if (err instanceof ApiError && err.status === 401) { + if (err instanceof ApiError && (err.status === 401 || err.status === 403)) { return { companies: [], unauthorized: true }; } throw err; diff --git a/ui/src/api/plugins.ts b/ui/src/api/plugins.ts index 0b32cfd845..412f87fe96 100644 --- a/ui/src/api/plugins.ts +++ b/ui/src/api/plugins.ts @@ -358,8 +358,8 @@ export const pluginsApi = { * * @param pluginId - UUID of the plugin. */ - getConfig: (pluginId: string) => - api.get(`/plugins/${pluginId}/config`), + getConfig: (pluginId: string, companyId: string) => + api.get(`/plugins/${pluginId}/config?companyId=${encodeURIComponent(companyId)}`), /** * Save (create or update) the configuration for a plugin. @@ -370,8 +370,8 @@ export const pluginsApi = { * @param pluginId - UUID of the plugin. * @param configJson - Configuration values matching the plugin's `instanceConfigSchema`. */ - saveConfig: (pluginId: string, configJson: Record) => - api.post(`/plugins/${pluginId}/config`, { configJson }), + saveConfig: (pluginId: string, companyId: string, configJson: Record) => + api.post(`/plugins/${pluginId}/config`, { companyId, configJson }), /** * Call the plugin's `validateConfig` RPC method to test the configuration @@ -385,8 +385,8 @@ export const pluginsApi = { * @param pluginId - UUID of the plugin. * @param configJson - Configuration values to validate. */ - testConfig: (pluginId: string, configJson: Record) => - api.post<{ valid: boolean; message?: string }>(`/plugins/${pluginId}/config/test`, { configJson }), + testConfig: (pluginId: string, companyId: string, configJson: Record) => + api.post<{ valid: boolean; message?: string }>(`/plugins/${pluginId}/config/test`, { companyId, configJson }), /** * List manifest-declared and stored company-scoped local folders for a plugin. diff --git a/ui/src/api/smokeLab.ts b/ui/src/api/smokeLab.ts new file mode 100644 index 0000000000..e5dd2410f7 --- /dev/null +++ b/ui/src/api/smokeLab.ts @@ -0,0 +1,68 @@ +import type { + CreateSmokeRun, + RecordSmokeRunStep, + SmokeLabServiceStatus, + SmokeRun, + SmokeRunStep, + UpdateSmokeRun, +} from "@paperclipai/shared"; +import { api } from "./client"; + +/** + * Smoke Lab API client (PAP-13347 / S2, plan §D3). Mirrors the S1 results API + * shipped in `server/src/routes/smoke-lab.ts` (PAP-13346). Every endpoint is + * company-scoped and gated server-side on `experimental.enableSmokeLab`, + * `deploymentMode === local_trusted`, and a non-production environment — the UI + * only ever surfaces these screens when the board-readable experimental flag is + * on, but the server stays authoritative. + */ + +export interface SmokeLabServicesResponse { + services: SmokeLabServiceStatus[]; +} + +export interface SmokeLabInstallFixturesResponse { + created: boolean; + applications: Array<{ id: string; name: string }>; + connections: Array<{ id: string; name: string }>; + catalog: unknown[]; + profile: { id: string }; +} + +export interface SmokeLabRunsResponse { + runs: SmokeRun[]; +} + +export interface SmokeLabRunDetailResponse { + run: SmokeRun; + steps: SmokeRunStep[]; +} + +const base = (companyId: string) => `/companies/${companyId}/smoke-lab`; + +export const smokeLabApi = { + listServices: (companyId: string) => + api.get(`${base(companyId)}/services`), + startServices: (companyId: string) => + api.post(`${base(companyId)}/services/start`, {}), + stopServices: (companyId: string) => + api.post(`${base(companyId)}/services/stop`, {}), + installFixtures: (companyId: string) => + api.post(`${base(companyId)}/install-fixtures`, {}), + reset: (companyId: string) => + api.post<{ reset: boolean }>(`${base(companyId)}/reset`, {}), + + listRuns: (companyId: string) => + api.get(`${base(companyId)}/runs`), + getRun: (companyId: string, runId: string) => + api.get(`${base(companyId)}/runs/${runId}`), + createRun: (companyId: string, input: CreateSmokeRun) => + api.post<{ run: SmokeRun }>(`${base(companyId)}/runs`, input), + updateRun: (companyId: string, runId: string, input: UpdateSmokeRun) => + api.patch<{ run: SmokeRun }>(`${base(companyId)}/runs/${runId}`, input), + recordStep: (companyId: string, runId: string, input: RecordSmokeRunStep) => + api.post<{ step: SmokeRunStep; summary: Record }>( + `${base(companyId)}/runs/${runId}/steps`, + input, + ), +}; diff --git a/ui/src/api/tools.ts b/ui/src/api/tools.ts new file mode 100644 index 0000000000..3f93ac8cd2 --- /dev/null +++ b/ui/src/api/tools.ts @@ -0,0 +1,460 @@ +import type { + ToolApplication, + ToolConnection, + ToolConnectionInstall, + ToolConnectionInstallSnapshot, + ConnectToolAppResult, + FinishToolAppResult, + ToolCatalogEntry, + ToolRuntimeSlot, + ToolPolicy, + ToolConnectionHealthCheckResult, + ToolCatalogRefreshResult, + ToolAccessDecision, + ToolAccessDecisionInput, + CreateToolPolicy, + DuplicateToolPolicy, + McpJsonImportPreview, + ToolRuntimeHealthSummary, + ToolRunDecisionLookup, + ToolOAuthStartResult, + ToolStdioCommandTemplate, + ToolProfileBinding, + ToolProfileBindingTargetType, + ToolProfileDefaultAction, + ToolProfileEffectiveSummary, + ToolProfileEntry, + ToolProfileEntryEffect, + ToolProfileEntrySelectorType, + ToolProfileStatus, + ToolProfileWithDetails, + ToolProfileNewToolReviewDecision, + ToolProfileNewToolsReview, + ToolProfileNewToolsReviewResult, + ToolRiskLevel, + UpdateToolPolicy, + ReorderToolPolicies, + AppGalleryEntry, + ToolAppsAttentionResponse, + ToolConnectionActivityResponse, + ToolConnectionTestAgentsResponse, + ToolConnectionTestCallResult, + ToolConnectionTestCallStatus, + ToolActionRequest, + ToolActionRequestStatus, + ToolActionRequestsResponse, + ToolMcpGatewayWithTokens, + ToolMcpGatewayTokenCreated, + ToolMcpGatewayToken, + CreateToolMcpGateway, + CreateToolMcpGatewayToken, + UpdateToolMcpGateway, + CreateToolTrustRuleFromActionRequest, +} from "@paperclipai/shared"; +import { api } from "./client"; + +/** + * Tools & Access API client (Phase 6, PAP-10389). + * + * Mirrors the governed MCP/tool-access contracts shipped by Phases 2-5 + * (`server/src/routes/tool-access.ts` and `tool-gateway.ts`). The UI consumes + * server-side enforcement contracts directly instead of faking tool access in + * the browser. + */ + +export type ToolApplicationsResponse = { applications: ToolApplication[] }; +export type ToolConnectionsResponse = { connections: ToolConnection[] }; +export type ToolCatalogResponse = { catalog: ToolCatalogEntry[] }; +export type ToolRuntimeSlotsResponse = { runtimeSlots: ToolRuntimeSlot[] }; +export type ToolRuntimeHealthResponse = ToolRuntimeHealthSummary; +export type ToolTrustRulesResponse = { trustRules: ToolPolicy[] }; +export type ToolPoliciesResponse = { policies: ToolPolicy[] }; +export type ToolProfilesResponse = { profiles: ToolProfileWithDetails[] }; +export type ToolGalleryResponse = { apps: AppGalleryEntry[] }; +export type ToolMcpGatewaysResponse = { gateways: ToolMcpGatewayWithTokens[] }; +export type CreateGatewayTokenInput = Omit & { + expiresAt?: string | Date | null; +}; +/** Gateway update payload — `companyId` is injected by the client method. */ +export type UpdateGatewayInput = Omit; +export type ReviewNewToolsInput = { + decisions: Array<{ catalogEntryId: string; decision: ToolProfileNewToolReviewDecision }>; +}; + +export type StdioTemplateSummary = ToolStdioCommandTemplate; +export type StdioTemplatesResponse = { templates: StdioTemplateSummary[] }; + +/** Admin "run your own" command-template create input (M8b, PAP-10862). */ +export interface CreateStdioTemplateInput { + templateId: string; + name: string; + description?: string | null; + command: string; + args?: string[]; + envKeys?: string[]; +} + +export interface CreateToolApplicationInput { + name: string; + description?: string | null; + type: ToolApplication["type"]; + pluginId?: string | null; + metadata?: Record | null; +} + +export interface UpdateToolApplicationInput { + name?: string; + description?: string | null; + status?: ToolApplication["status"]; + metadata?: Record | null; +} + +export interface CreateToolConnectionInput { + applicationId?: string; + applicationName?: string; + name: string; + transport: NonNullable; + status?: ToolConnection["status"]; + config?: Record; + credentialRefs?: ToolConnection["credentialRefs"]; + enabled?: boolean; +} + +export interface UpdateToolConnectionInput { + name?: string; + status?: ToolConnection["status"]; + config?: Record; + transportConfig?: Record; + credentialRefs?: ToolConnection["credentialRefs"]; + enabled?: boolean; +} + +export interface ToolProfileEntryInput { + selectorType: ToolProfileEntrySelectorType; + effect?: ToolProfileEntryEffect; + applicationId?: string | null; + connectionId?: string | null; + catalogEntryId?: string | null; + toolName?: string | null; + riskLevel?: ToolRiskLevel | null; + conditions?: Record | null; +} + +export interface CreateToolProfileInput { + profileKey: string; + name: string; + description?: string | null; + status?: ToolProfileStatus; + defaultAction?: ToolProfileDefaultAction; + metadata?: Record | null; + entries?: ToolProfileEntryInput[]; +} + +export interface UpdateToolProfileInput { + profileKey?: string; + name?: string; + description?: string | null; + status?: ToolProfileStatus; + defaultAction?: ToolProfileDefaultAction; + metadata?: Record | null; + entries?: ToolProfileEntryInput[]; +} + +export interface ToolProfileBindingInput { + targetType: ToolProfileBindingTargetType; + targetId: string; + priority?: number; + metadata?: Record | null; +} + +export type UnbindToolProfileInput = Pick; + +/** Redacted tool-gateway audit row (subset of `activity_log`). */ +export interface ToolGatewayAuditRow { + id: string; + companyId: string; + action: string; + actorType: string | null; + actorId: string | null; + entityType: string | null; + entityId: string | null; + details: Record | null; + createdAt: string; +} + +/** Normalized outcome for the humanized Activity feed. */ +export type ToolAuditOutcome = + | "allowed" + | "blocked" + | "asked_first" + | "waiting" + | "failed" + | "unknown"; + +/** + * Audit row enriched server-side with humanized display names and a normalized + * outcome — the shape returned by `GET /tool-gateway/audit`. + */ +export interface ToolGatewayActivityEvent extends ToolGatewayAuditRow { + agentId: string | null; + runId: string | null; + applicationId: string | null; + connectionId: string | null; + agentDisplayName: string | null; + appDisplayName: string | null; + applicationDisplayName: string | null; + connectionDisplayName: string | null; + toolDisplayName: string | null; + normalizedOutcome: ToolAuditOutcome; +} + +export type ToolGatewayActivityResponse = { + events: ToolGatewayActivityEvent[]; + nextCursor: string | null; +}; + +export type ToolAuditWindow = "1h" | "24h" | "7d" | "30d"; + +export interface ListActivityParams { + app?: string | null; + agent?: string | null; + outcome?: string | null; + window?: ToolAuditWindow; + search?: string | null; + limit?: number; + cursor?: string | null; +} + +export type ToolPolicyTestResponse = { + decision: ToolAccessDecision; + auditEvent: unknown | null; +}; + +export const toolsApi = { + // --- Applications --- + listGallery: (companyId: string) => + api.get(`/companies/${companyId}/tools/gallery`), + connectApp: (companyId: string, input: { + galleryKey?: string; + link?: string; + name?: string; + credentialValues?: Record; + configValues?: Record; + applicationId?: string; + }) => + api.post(`/companies/${companyId}/tools/apps/connect`, input), + startOAuth: (connectionId: string) => + api.post(`/tools/oauth/${connectionId}/start`, {}), + finishApp: (companyId: string, connectionId: string, input: { + enabledCatalogEntryIds: string[]; + askFirstCatalogEntryIds: string[]; + access: "all_agents" | { agentIds: string[] }; + }) => + api.post( + `/companies/${companyId}/tools/apps/${connectionId}/finish`, + input, + ), + listAppsAttention: (companyId: string) => + api.get(`/companies/${companyId}/tools/apps/attention`), + listApplications: (companyId: string) => + api.get(`/companies/${companyId}/tools/applications`), + createApplication: (companyId: string, input: CreateToolApplicationInput) => + api.post(`/companies/${companyId}/tools/applications`, input), + updateApplication: (applicationId: string, input: UpdateToolApplicationInput) => + api.patch(`/tool-applications/${applicationId}`, input), + deleteApplication: (applicationId: string) => + api.delete(`/tool-applications/${applicationId}`), + + // --- Connections --- + listConnections: (companyId: string) => + api.get(`/companies/${companyId}/tools/connections`), + getConnection: (connectionId: string) => + api.get(`/tool-connections/${connectionId}`), + // --- Installs (Phase 3b, PAP-13618): which agents carry this connection's + // tools in their runtime context. `installed ⊆ permitted`; the server + // auto-extends access (adds profile bindings) for any newly-installed target. + getConnectionInstalls: (connectionId: string) => + api.get<{ connectionId: string; installs: ToolConnectionInstall[] }>( + `/tool-connections/${connectionId}/installs`, + ), + putConnectionInstalls: ( + connectionId: string, + installs: Array<{ targetType: "company" | "agent"; targetId: string }>, + ) => + api.put( + `/tool-connections/${connectionId}/installs`, + { installs }, + ), + createConnection: (companyId: string, input: CreateToolConnectionInput) => + api.post(`/companies/${companyId}/tools/connections`, input), + updateConnection: (connectionId: string, input: UpdateToolConnectionInput) => + api.patch(`/tool-connections/${connectionId}`, input), + archiveConnection: (connectionId: string) => + api.delete(`/tool-connections/${connectionId}`), + checkConnectionHealth: (connectionId: string) => + api.post(`/tool-connections/${connectionId}/health-check`, {}), + reconnectConnection: (connectionId: string, credentialValues: Record) => + api.post(`/tool-connections/${connectionId}/reconnect`, { + credentialValues, + }), + refreshCatalog: (connectionId: string) => + api.post(`/tool-connections/${connectionId}/catalog/refresh`, {}), + listCatalog: (connectionId: string) => + api.get(`/tool-connections/${connectionId}/catalog`), + listConnectionActivity: (connectionId: string, limit = 20) => + api.get( + `/tool-connections/${connectionId}/activity?limit=${limit}`, + ), + listTestAgents: (connectionId: string) => + api.get( + `/tool-connections/${connectionId}/test-agents`, + ), + runTestCall: ( + connectionId: string, + input: { agentId: string; toolName: string; parameters?: Record }, + ) => + api.post( + `/tool-connections/${connectionId}/test-calls`, + input, + ), + getTestCallStatus: (connectionId: string, actionRequestId: string) => + api.get( + `/tool-connections/${connectionId}/test-calls/${actionRequestId}`, + ), + importMcpJson: (companyId: string, body: { mcpJson: unknown }) => + api.post(`/companies/${companyId}/tools/mcp/import-json`, body), + listStdioTemplates: (companyId: string) => + api.get(`/companies/${companyId}/tools/stdio-templates`), + createStdioTemplate: (companyId: string, input: CreateStdioTemplateInput) => + api.post(`/companies/${companyId}/tools/stdio-templates`, input), + disableStdioTemplate: (companyId: string, templateId: string, reason?: string | null) => + api.post( + `/companies/${companyId}/tools/stdio-templates/${encodeURIComponent(templateId)}/disable`, + { reason: reason ?? null }, + ), + + // --- Profiles --- + listProfiles: (companyId: string) => + api.get(`/companies/${companyId}/tools/profiles`), + getProfileNewTools: (profileId: string) => + api.get(`/tool-profiles/${profileId}/new-tools`), + reviewProfileNewTools: (profileId: string, input: ReviewNewToolsInput) => + api.post(`/tool-profiles/${profileId}/new-tools/review`, input), + createProfile: (companyId: string, input: CreateToolProfileInput) => + api.post(`/companies/${companyId}/tools/profiles`, input), + updateProfile: (profileId: string, input: UpdateToolProfileInput) => + api.patch(`/tool-profiles/${profileId}`, input), + duplicateProfile: ( + profileId: string, + input: { name: string; includeAssignments?: boolean }, + ) => api.post(`/tool-profiles/${profileId}/duplicate`, input), + deleteProfile: ( + profileId: string, + input: { force?: boolean; reassignToProfileId?: string } = {}, + ) => api.delete<{ deleted: true }>(`/tool-profiles/${profileId}`, input), + addProfileEntry: (profileId: string, input: ToolProfileEntryInput) => + api.post(`/tool-profiles/${profileId}/entries`, input), + updateProfileEntry: (entryId: string, input: Partial) => + api.patch(`/tool-profile-entries/${entryId}`, input), + deleteProfileEntry: (entryId: string) => + api.delete(`/tool-profile-entries/${entryId}`), + bindProfile: (companyId: string, profileId: string, input: ToolProfileBindingInput) => + api.post(`/companies/${companyId}/tools/profiles/${profileId}/bind`, input), + unbindProfile: (companyId: string, profileId: string, input: UnbindToolProfileInput) => + api.post<{ unbound: number }>(`/companies/${companyId}/tools/profiles/${profileId}/unbind`, input), + getEffectiveProfilesForAgent: (companyId: string, agentId: string) => + api.get( + `/companies/${companyId}/tools/profiles/effective/agents/${encodeURIComponent(agentId)}`, + ), + + // --- Runtime --- + listRuntimeSlots: (companyId: string) => + api.get(`/companies/${companyId}/tools/runtime-slots`), + stopRuntimeSlot: (companyId: string, slotId: string) => + api.post(`/companies/${companyId}/tools/runtime-slots/${slotId}/stop`, {}), + restartRuntimeSlot: (companyId: string, slotId: string) => + api.post(`/companies/${companyId}/tools/runtime-slots/${slotId}/restart`, {}), + getRuntimeHealth: (companyId: string) => + api.get(`/companies/${companyId}/tools/runtime-health`), + getRunDecisionLookup: (companyId: string, runId: string) => + api.get(`/companies/${companyId}/tools/runs/${runId}/decisions`), + listLiveRuntimeSlots: (companyId: string) => + api.get(`/tool-gateway/runtime-slots?companyId=${encodeURIComponent(companyId)}`), + + // --- Policies (trust rules + decision simulator) --- + listPolicies: (companyId: string) => + api.get(`/companies/${companyId}/tools/policies`), + createPolicy: (companyId: string, input: CreateToolPolicy) => + api.post(`/companies/${companyId}/tools/policies`, input), + reorderPolicies: (companyId: string, input: ReorderToolPolicies) => + api.post(`/companies/${companyId}/tools/policies/reorder`, input), + duplicatePolicy: (companyId: string, policyId: string, input: DuplicateToolPolicy = {}) => + api.post(`/companies/${companyId}/tools/policies/${policyId}/duplicate`, input), + updatePolicy: (companyId: string, policyId: string, input: UpdateToolPolicy) => + api.patch(`/companies/${companyId}/tools/policies/${policyId}`, input), + deletePolicy: (companyId: string, policyId: string) => + api.delete(`/companies/${companyId}/tools/policies/${policyId}`), + listTrustRules: (companyId: string) => + api.get(`/companies/${companyId}/tools/trust-rules`), + revokeTrustRule: (companyId: string, policyId: string, reason?: string | null) => + api.post(`/companies/${companyId}/tools/trust-rules/${policyId}/revoke`, { + reason: reason ?? null, + }), + testPolicy: (companyId: string, input: Omit) => + api.post(`/companies/${companyId}/tools/policy/test`, input), + + // --- Review queue (Ask first) --- + listActionRequests: (companyId: string, status: ToolActionRequestStatus = "pending") => + api.get( + `/companies/${companyId}/tools/action-requests?status=${encodeURIComponent(status)}`, + ), + approveActionRequest: (companyId: string, actionRequestId: string) => + api.post(`/tool-gateway/action-requests/${actionRequestId}/approve`, { companyId }), + declineActionRequest: (companyId: string, actionRequestId: string) => + api.post(`/tool-gateway/action-requests/${actionRequestId}/decline`, { companyId }), + createTrustRuleFromActionRequest: ( + companyId: string, + actionRequestId: string, + input: CreateToolTrustRuleFromActionRequest = {}, + ) => + api.post( + `/companies/${companyId}/tools/action-requests/${actionRequestId}/trust-rule`, + input, + ), + + // --- Named MCP gateways --- + listGateways: (companyId: string) => + api.get(`/companies/${companyId}/tools/gateways`), + createGateway: (companyId: string, input: CreateToolMcpGateway) => + api.post(`/companies/${companyId}/tools/gateways`, input), + updateGateway: (companyId: string, gatewayId: string, input: UpdateGatewayInput) => + api.patch(`/tool-gateway/gateways/${gatewayId}`, { ...input, companyId }), + createGatewayToken: (companyId: string, gatewayId: string, input: CreateGatewayTokenInput) => + api.post(`/tool-gateway/gateways/${gatewayId}/tokens`, { ...input, companyId }), + revokeGatewayToken: (companyId: string, tokenId: string) => + api.post(`/tool-gateway/gateway-tokens/${tokenId}/revoke`, { companyId }), + + // --- Audit / Activity --- + /** + * Humanized Activity feed with server-side filters and cursor pagination. + * Returns `{ events, nextCursor }`. + */ + listActivity: (companyId: string, params: ListActivityParams = {}) => { + const search = new URLSearchParams({ companyId }); + if (params.app) search.set("app", params.app); + if (params.agent) search.set("agent", params.agent); + if (params.outcome) search.set("outcome", params.outcome); + if (params.window) search.set("window", params.window); + if (params.search) search.set("search", params.search); + if (params.cursor) search.set("cursor", params.cursor); + search.set("limit", String(params.limit ?? 50)); + return api.get(`/tool-gateway/audit?${search.toString()}`); + }, + /** Flat audit sample (no pagination) — used by derived counters/banners. */ + listAudit: (companyId: string, limit = 100) => + api + .get( + `/tool-gateway/audit?companyId=${encodeURIComponent(companyId)}&window=30d&limit=${Math.min(limit, 100)}`, + ) + .then((res) => res.events), +}; diff --git a/ui/src/components/AgentMultiSelect.test.tsx b/ui/src/components/AgentMultiSelect.test.tsx new file mode 100644 index 0000000000..26004b70af --- /dev/null +++ b/ui/src/components/AgentMultiSelect.test.tsx @@ -0,0 +1,139 @@ +// @vitest-environment jsdom + +import { flushSync } from "react-dom"; +import { createRoot, type Root } from "react-dom/client"; +import { afterEach, beforeEach, describe, expect, it, vi } from "vitest"; +import { AgentMultiSelect } from "./AgentMultiSelect"; + +// eslint-disable-next-line @typescript-eslint/no-explicit-any +(globalThis as any).IS_REACT_ACT_ENVIRONMENT = true; + +function act(callback: () => void | Promise) { + let result: void | Promise | undefined; + flushSync(() => { + result = callback(); + }); + return result; +} + +async function flush() { + await act(async () => { + await Promise.resolve(); + }); +} + +function setInputValue(input: HTMLInputElement, value: string) { + act(() => { + const valueSetter = Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype, "value")?.set; + valueSetter?.call(input, value); + input.dispatchEvent(new InputEvent("input", { bubbles: true, data: value, inputType: "insertText" })); + }); +} + +describe("AgentMultiSelect", () => { + let container: HTMLDivElement; + let root: Root | null; + + beforeEach(() => { + container = document.createElement("div"); + document.body.appendChild(container); + root = null; + }); + + afterEach(() => { + if (root) { + act(() => { + root?.unmount(); + }); + } + container.remove(); + document.body.innerHTML = ""; + }); + + it("keeps agent lists compact and searchable", async () => { + const onChange = vi.fn(); + const agents = Array.from({ length: 20 }, (_, index) => ({ + id: `agent-${index}`, + name: index === 17 ? "Search Target" : `Agent ${index}`, + title: `Role ${index}`, + })); + + root = createRoot(container); + act(() => { + root?.render( + , + ); + }); + + expect(container.textContent).toBe("Select agents"); + expect(document.body.textContent).not.toContain("Agent 0"); + + act(() => { + container.querySelector("button")?.dispatchEvent(new MouseEvent("click", { bubbles: true })); + }); + await flush(); + + const filter = document.body.querySelector('input[placeholder="Filter agents"]'); + expect(filter).not.toBeNull(); + setInputValue(filter!, "search target"); + await flush(); + + expect(document.body.textContent).toContain("Search Target"); + expect(document.body.textContent).not.toContain("Agent 0"); + + act(() => { + document.body + .querySelector('[aria-label="Allow Search Target"]') + ?.dispatchEvent(new MouseEvent("click", { bubbles: true })); + }); + await flush(); + + expect(onChange).toHaveBeenCalledTimes(1); + expect(onChange.mock.calls[0]?.[0]).toEqual(new Set(["agent-17"])); + }); + + it("previews selected agents and stages changes until save", async () => { + const onSave = vi.fn(); + const agents = Array.from({ length: 6 }, (_, index) => ({ + id: `agent-${index}`, + name: `Agent ${index}`, + })); + + root = createRoot(container); + act(() => { + root?.render( + , + ); + }); + + expect(container.textContent).toContain("Agent 0"); + expect(container.textContent).toContain("Agent 2"); + expect(container.textContent).toContain("and 2 more"); + expect(container.textContent).not.toContain("Agent 4"); + + act(() => { + container.querySelector("button")?.dispatchEvent(new MouseEvent("click", { bubbles: true })); + }); + await flush(); + act(() => { + document.body + .querySelector('[aria-label="Allow Agent 5"]') + ?.dispatchEvent(new MouseEvent("click", { bubbles: true })); + }); + await flush(); + + expect(onSave).not.toHaveBeenCalled(); + const save = Array.from(document.body.querySelectorAll("button")).find((button) => button.textContent === "Save"); + act(() => { + save?.dispatchEvent(new MouseEvent("click", { bubbles: true })); + }); + await flush(); + + expect(onSave).toHaveBeenCalledWith(new Set(agents.map((agent) => agent.id))); + }); +}); diff --git a/ui/src/components/AgentMultiSelect.tsx b/ui/src/components/AgentMultiSelect.tsx new file mode 100644 index 0000000000..b1a693f900 --- /dev/null +++ b/ui/src/components/AgentMultiSelect.tsx @@ -0,0 +1,224 @@ +import { useEffect, useMemo, useState, type ComponentProps, type ReactNode } from "react"; +import { ChevronRight } from "lucide-react"; +import { AgentIcon } from "@/components/AgentIconPicker"; +import { Button } from "@/components/ui/button"; +import { Checkbox } from "@/components/ui/checkbox"; +import { Input } from "@/components/ui/input"; +import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; +import { Skeleton } from "@/components/ui/skeleton"; +import { cn } from "@/lib/utils"; + +export interface AgentMultiSelectOption { + id: string; + name: string; + title?: string | null; + icon?: string | null; +} + +export function AgentMultiSelect({ + agents, + selectedAgentIds, + onChange, + onSave, + loading = false, + disabled = false, + pending = false, + getDescription, + isAgentDisabled, + renderNameSuffix, + triggerLabel, + triggerIcon, + triggerVariant = "outline", + triggerSize = "default", + triggerFullWidth = true, + triggerClassName, + contentAlign = "start", + headerContent, + emptyMessage = "No agents yet.", + showSelectionPreview = true, + onOpenChange, +}: { + agents: AgentMultiSelectOption[]; + selectedAgentIds: Set; + onChange?: (next: Set) => void; + onSave?: (next: Set) => void; + loading?: boolean; + disabled?: boolean; + pending?: boolean; + getDescription?: (agent: AgentMultiSelectOption) => string | null | undefined; + isAgentDisabled?: (agent: AgentMultiSelectOption) => boolean; + renderNameSuffix?: (agent: AgentMultiSelectOption) => ReactNode; + triggerLabel?: string; + triggerIcon?: ReactNode; + triggerVariant?: ComponentProps["variant"]; + triggerSize?: ComponentProps["size"]; + triggerFullWidth?: boolean; + triggerClassName?: string; + contentAlign?: ComponentProps["align"]; + headerContent?: ReactNode; + emptyMessage?: string; + showSelectionPreview?: boolean; + onOpenChange?: (open: boolean) => void; +}) { + const [open, setOpen] = useState(false); + const [filter, setFilter] = useState(""); + const [draftAgentIds, setDraftAgentIds] = useState>(new Set(selectedAgentIds)); + const staged = Boolean(onSave); + const workingAgentIds = staged ? draftAgentIds : selectedAgentIds; + + useEffect(() => { + if (open && staged) setDraftAgentIds(new Set(selectedAgentIds)); + }, [open, selectedAgentIds, staged]); + + const normalizedFilter = filter.trim().toLowerCase(); + const filteredAgents = useMemo( + () => + agents + .filter((agent) => { + const description = getDescription?.(agent) ?? agent.title ?? ""; + return `${agent.name} ${description}`.toLowerCase().includes(normalizedFilter); + }) + .sort((a, b) => { + const aSelected = workingAgentIds.has(a.id); + const bSelected = workingAgentIds.has(b.id); + if (aSelected !== bSelected) return aSelected ? -1 : 1; + return a.name.localeCompare(b.name); + }), + [agents, getDescription, normalizedFilter, workingAgentIds], + ); + const selectedCount = selectedAgentIds.size; + const selectedAgents = agents.filter((agent) => selectedAgentIds.has(agent.id)); + + function setSelection(next: Set) { + if (staged) setDraftAgentIds(next); + else onChange?.(next); + } + + return ( +

+ { + setOpen(nextOpen); + onOpenChange?.(nextOpen); + if (!nextOpen) setFilter(""); + }} + > + + + + +
+ setFilter(event.target.value)} + placeholder="Filter agents" + className="h-8" + autoFocus + /> + {headerContent} +
+ {loading ? ( +
+ + +
+ ) : agents.length === 0 ? ( +
{emptyMessage}
+ ) : ( +
+ {filteredAgents.map((agent) => { + const description = getDescription?.(agent) ?? agent.title; + const optionDisabled = isAgentDisabled?.(agent) ?? false; + return ( + + ); + })} + {filteredAgents.length === 0 ? ( +
No matches.
+ ) : null} +
+ )} +
+ + {workingAgentIds.size === 0 ? "No agents selected" : `${workingAgentIds.size} selected`} + +
+ {staged ? ( + + ) : null} + +
+
+
+
+ {showSelectionPreview && selectedAgents.length > 0 ? ( +
+ {selectedAgents.slice(0, 3).map((agent) => ( +
+ + {agent.name} +
+ ))} + {selectedAgents.length > 3 ? ( +

and {selectedAgents.length - 3} more

+ ) : null} +
+ ) : null} +
+ ); +} diff --git a/ui/src/components/CompanySettingsSidebar.test.tsx b/ui/src/components/CompanySettingsSidebar.test.tsx index ea05266794..bd1156bbeb 100644 --- a/ui/src/components/CompanySettingsSidebar.test.tsx +++ b/ui/src/components/CompanySettingsSidebar.test.tsx @@ -160,6 +160,7 @@ describe("CompanySettingsSidebar", () => { expect(container.textContent).not.toContain("Cloud upstream"); expect(container.textContent).toContain("Invites"); expect(container.textContent).toContain("Secrets"); + expect(container.textContent).not.toContain("Tools & Access"); expect(sidebarNavItemMock).toHaveBeenCalledWith( expect.objectContaining({ to: "/company/settings", @@ -222,6 +223,11 @@ describe("CompanySettingsSidebar", () => { label: "Adapters", }), ); + expect(sidebarNavItemMock).not.toHaveBeenCalledWith( + expect.objectContaining({ + to: "/company/settings/tools", + }), + ); await act(async () => { root.unmount(); diff --git a/ui/src/components/EmptyState.tsx b/ui/src/components/EmptyState.tsx index 9fcfc35d90..972b8dbce6 100644 --- a/ui/src/components/EmptyState.tsx +++ b/ui/src/components/EmptyState.tsx @@ -7,6 +7,8 @@ interface EmptyStateProps { /** Optional bold heading rendered above the message. */ title?: string; message: string; + /** Optional secondary line rendered under the primary message. */ + description?: string; action?: string; onAction?: () => void; /** Hide the leading "+" glyph on the action button (e.g. for a "Set up" CTA). */ @@ -17,6 +19,7 @@ export function EmptyState({ icon: Icon, title, message, + description, action, onAction, hideActionIcon = false, @@ -26,8 +29,17 @@ export function EmptyState({
- {title &&

{title}

} -

{message}

+ {title ? ( + <> +

{title}

+

{message}

+ + ) : ( + <> +

{message}

+ {description &&

{description}

} + + )} {action && onAction && (
+ ) : null} + + ); + } + + if (state === "failed") { + const errorText = result?.errorMessage?.trim(); + const errorCode = result?.errorCode?.trim(); + return ( +
+
+ +
+
Failed · approved by {who}{whenSuffix}
+

+ You approved it and it ran, but the connector returned an error.{" "} + {requestedByLabel} was resumed with this error. +

+
+
+ {errorText || errorCode ? ( +
+ {errorCode ? ( +
+ {errorCode} +
+ ) : null} + {errorText ? ( +

{errorText}

+ ) : null} +
+ ) : null} +
+ ); + } + + if (state === "declined") { + const reason = interaction.result?.reason?.trim(); + return ( +
+
+ +
+
Declined by {who}{whenSuffix}
+

+ The action did not run. {requestedByLabel} was resumed with + your reason and told not to retry the same call. +

+
+
+ {reason ? ( +
+ {reason} +
+ ) : null} +
+ ); + } + + // expired + return ( +
+
+ +
+
+ Expired{when ? ` at ${when}` : ""} — no one responded within 60 minutes +
+

+ The action did not run. If it's still needed, the agent can + request approval again — a fresh card will appear. +

+
+
+
+ ); +} + +function RequestToolActionCard({ + interaction, + state, + resolvedByLabel, + requestedByLabel, + onAcceptInteraction, + onRejectInteraction, + externalReferences, +}: { + interaction: RequestConfirmationInteraction; + state: ToolActionCardState; + resolvedByLabel: string | null; + requestedByLabel: string; + onAcceptInteraction?: ( + interaction: RequestConfirmationInteraction, + ) => Promise | void; + onRejectInteraction?: ( + interaction: RequestConfirmationInteraction, + reason?: string, + ) => Promise | void; + externalReferences?: MarkdownExternalReferenceMap; +}) { + const payload = interaction.payload.toolAction!; + const [rejecting, setRejecting] = useState(false); + const [rejectReason, setRejectReason] = useState(""); + const [working, setWorking] = useState<"accept" | "reject" | null>(null); + const [actionError, setActionError] = useState(null); + const [nowMs, setNowMs] = useState(() => Date.now()); + const isPending = state === "pending"; + const isDestructive = payload.risk === "destructive"; + + useEffect(() => { + if (!isPending) return; + const timer = setInterval(() => setNowMs(Date.now()), 30000); + return () => clearInterval(timer); + }, [isPending]); + + useEffect(() => { + if (state !== "pending") { + setRejecting(false); + setWorking(null); + } + }, [interaction.id, state]); + + async function handleAccept() { + if (!onAcceptInteraction) return; + setWorking("accept"); + setActionError(null); + try { + await onAcceptInteraction(interaction); + } catch { + setActionError("Couldn't submit. Try again."); + } finally { + setWorking(null); + } + } + + async function handleReject() { + if (!onRejectInteraction) return; + setWorking("reject"); + setActionError(null); + try { + await onRejectInteraction(interaction, rejectReason.trim() || undefined); + setRejecting(false); + } catch { + setActionError("Couldn't submit. Try again."); + } finally { + setWorking(null); + } + } + + const countdown = isPending ? formatToolActionCountdown(payload.expiresAt, nowMs) : null; + + return ( +
+ + +
+ + {payload.previewMarkdown} + +
+ + + + {isPending ? ( + <> + {countdown ? ( +
+ + {countdown.text} +
+ ) : null} + +
+
+ + + + Approving runs this action now. + +
+ + {rejecting ? ( +
+