bazilion 0.17.0 → 0.18.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.
- package/dist/cli.js +336 -67
- package/dist/cli.js.map +1 -1
- package/dist/daemon.js +1770 -151
- package/dist/daemon.js.map +1 -1
- package/dist/migrations/0001_init.sql +107 -0
- package/dist/web/client/assets/{ChatPane-BI3QVX2A.js → ChatPane-CAYS_fIQ.js} +1 -1
- package/dist/web/client/assets/ConfirmDialog-BzIiABOP.js +1 -0
- package/dist/web/client/assets/{FieldRow-swJ5qn2h.js → FieldRow-W_54rw5c.js} +1 -1
- package/dist/web/client/assets/{ProductionTeamPolicyEditor-LGw1UuF-.js → ProductionTeamPolicyEditor-DNXVX8Lz.js} +2 -2
- package/dist/web/client/assets/{ProfileCommunicationEditor-raoau_YB.js → ProfileCommunicationEditor-DN0fOzqn.js} +1 -1
- package/dist/web/client/assets/{ResultSourceConversation-BEwkhFog.js → ResultSourceConversation-DoU4tOWc.js} +1 -1
- package/dist/web/client/assets/TeamTabs-BmTZRI4T.js +1 -0
- package/dist/web/client/assets/{TemplatesTabs-BX5hhEJ7.js → TemplatesTabs-Bs_OXKwx.js} +1 -1
- package/dist/web/client/assets/{UnsavedChangesGuard-CVJtmR1D.js → UnsavedChangesGuard-CPRtFReU.js} +1 -1
- package/dist/web/client/assets/{_id-DmEVZIlx.js → _id-CxAB4TDr.js} +1 -1
- package/dist/web/client/assets/{_id-DHqq2W34.js → _id-DL4tJFQB.js} +1 -1
- package/dist/web/client/assets/{_id-BQPOE3gj.js → _id-DR9eFC17.js} +1 -1
- package/dist/web/client/assets/{_id-BkYrUP0R.js → _id-Dbmei5tg.js} +1 -1
- package/dist/web/client/assets/{_id-CriixlZD.js → _id-ybF-pqmr.js} +1 -1
- package/dist/web/client/assets/{activity-Bzr8R18n.js → activity-oUyy77jD.js} +1 -1
- package/dist/web/client/assets/{agents-13oafeOA.js → agents-D_TrEqAg.js} +1 -1
- package/dist/web/client/assets/{agents-DF4NALmJ.js → agents-DkjJp7JP.js} +1 -1
- package/dist/web/client/assets/{approvals-DsG0Ijls.js → approvals-DhOerWdt.js} +1 -1
- package/dist/web/client/assets/{attention-DG7K25mz.js → attention-DGwiF-Jy.js} +1 -1
- package/dist/web/client/assets/chevron-right-DSa4xPTs.js +1 -0
- package/dist/web/client/assets/{config-DAaDbFhS.js → config-BJ2ZzHPR.js} +1 -1
- package/dist/web/client/assets/{inbox-C9e7QjsX.js → inbox-BUElnGep.js} +1 -1
- package/dist/web/client/assets/{index-Dsstm2hf.js → index-Bi-HxcPG.js} +2 -2
- package/dist/web/client/assets/{learning-23arTd21.js → learning-BiTHNwB3.js} +1 -1
- package/dist/web/client/assets/login-BmcZvAH2.js +1 -0
- package/dist/web/client/assets/{mcp-Cdx9qAl8.js → mcp-Cwk9V82W.js} +1 -1
- package/dist/web/client/assets/{members-fotOz4rR.js → members-CHDNabFh.js} +1 -1
- package/dist/web/client/assets/{memory-C7UznVot.js → memory-Cx_Fpd4e.js} +1 -1
- package/dist/web/client/assets/{policy-CactLW1X.js → policy-C0nMdwcG.js} +1 -1
- package/dist/web/client/assets/{results-DqEuYnQH.js → results-Bz3jASs-.js} +1 -1
- package/dist/web/client/assets/{review-CnBSYclb.js → review-AK9WGmpv.js} +1 -1
- package/dist/web/client/assets/routes-DsMY_6oy.js +1 -0
- package/dist/web/client/assets/{services-xEANwZAu.js → services-DItA6fJ7.js} +1 -1
- package/dist/web/client/assets/{skills-CamV6wYM.js → skills-DbNV2vgL.js} +1 -1
- package/dist/web/client/assets/{teams-B12dMSjW.js → teams-D83scDxw.js} +1 -1
- package/dist/web/client/assets/{teams-CbH43zSG.js → teams-DAny1ypN.js} +1 -1
- package/dist/web/client/assets/{telegram-muIql4u-.js → telegram-BOmf9vUh.js} +1 -1
- package/dist/web/client/assets/{tokens-DGFmApdF.js → tokens-DBGH6Bw5.js} +1 -1
- package/dist/web/client/assets/{triggers-D8n3sCBW.js → triggers-D1_pseI3.js} +1 -1
- package/dist/web/client/assets/verifications-CBTo-FyV.js +2 -0
- package/dist/web/client/assets/{welcome-CMHWRZhs.js → welcome-DAfPOm15.js} +1 -1
- package/dist/web/client/assets/{x-BGCHwZOH.js → x-CWY-gUaM.js} +1 -1
- package/dist/web/server/assets/{TeamTabs-DQXh-3ij.js → TeamTabs-Dg4v6x0-.js} +4 -0
- package/dist/web/server/assets/{_id-DDyA9CGX.js → _id--onriuvj.js} +1 -1
- package/dist/web/server/assets/{_id-XkxlX036.js → _id--zoh1vv7.js} +1 -1
- package/dist/web/server/assets/{_id-Dw3gKOGv.js → _id-6p-mDmI8.js} +1 -1
- package/dist/web/server/assets/{_id-CPfILjMa.js → _id-DptBl3X8.js} +1 -1
- package/dist/web/server/assets/{_id-DtJn-yzu.js → _id-EAjRXNbD.js} +2 -2
- package/dist/web/server/assets/{_id-DSPFJMzf.js → _id-dUnXL-My2.js} +1 -1
- package/dist/web/server/assets/{_tanstack-start-manifest_v-vOXRfKJD.js → _tanstack-start-manifest_v-B3M-dfRO.js} +90 -79
- package/dist/web/server/assets/{activity-pYQPT3QT.js → activity-C5jpoEQI.js} +1 -1
- package/dist/web/server/assets/{activity-BX1jZBPQ.js → activity-Cu7zKPGD.js} +1 -1
- package/dist/web/server/assets/{activity-bozPMU2v.js → activity-Dn50vkQP.js} +2 -2
- package/dist/web/server/assets/{agents-BKBfW700.js → agents-RE6aYOb-.js} +1 -1
- package/dist/web/server/assets/{agents-CVCfxnE2.js → agents-nAOx_H7s.js} +1 -1
- package/dist/web/server/assets/{approvals-C3ya6B6U.js → approvals-DhHxIDrL.js} +1 -1
- package/dist/web/server/assets/{attention-l28hGCHS.js → attention-CBWzWRni.js} +1 -1
- package/dist/web/server/assets/{auth-AvDFNeOv.js → auth-tB3i6cFd.js} +1 -1
- package/dist/web/server/assets/{config-BWKn4XII.js → config-D1k_tTAw.js} +1 -1
- package/dist/web/server/assets/{daemon-client-Cgx-YW4l.js → daemon-client-C7qjQ2iO.js} +15 -0
- package/dist/web/server/assets/{git-review-f_uta4Mx.js → git-review-Bf5ABFJg.js} +1 -1
- package/dist/web/server/assets/{inbox-BBZiOOQs.js → inbox-Dw4pTevh.js} +1 -1
- package/dist/web/server/assets/{learning-CheVay1i.js → learning-CF8ZzFVD.js} +1 -1
- package/dist/web/server/assets/{mcp-DCBDmNtQ.js → mcp-D5dmBT82.js} +1 -1
- package/dist/web/server/assets/{members-C5FQruRZ.js → members-Bd0OtiTr.js} +1 -1
- package/dist/web/server/assets/{members-C2He8mrU.js → members-CvwEN9pm.js} +1 -1
- package/dist/web/server/assets/{members-C_2xB9pr.js → members-xSXoYUOd.js} +2 -2
- package/dist/web/server/assets/{memory-rmiFNj7T.js → memory-CcPK7um7.js} +1 -1
- package/dist/web/server/assets/{memory-BTcmf0sD.js → memory-UP6AsRkO.js} +2 -2
- package/dist/web/server/assets/{memory-4tI-UbOf.js → memory-lo2vHRNw.js} +1 -1
- package/dist/web/server/assets/{policy-C3D2Q1EA.js → policy-B62WXIFo.js} +1 -1
- package/dist/web/server/assets/{policy-BGILKGHz.js → policy-Bze9Krhg.js} +2 -2
- package/dist/web/server/assets/{policy-DS7LGe--.js → policy-Dh6wd2wN.js} +1 -1
- package/dist/web/server/assets/{results-_6K_zXQS.js → results-BFqs2iOu.js} +1 -1
- package/dist/web/server/assets/{results-C6H42tjq.js → results-BWnu3gXP.js} +1 -1
- package/dist/web/server/assets/{results-Cgx7SrFt.js → results-CzZk50Fu.js} +2 -2
- package/dist/web/server/assets/{review-DHhiL-JQ.js → review-DUe3vHPU.js} +2 -2
- package/dist/web/server/assets/{review-DSTMCwP4.js → review-c_-cFi7H.js} +1 -1
- package/dist/web/server/assets/{router-ElARvZzI.js → router-Deq94UJQ.js} +33 -26
- package/dist/web/server/assets/{routes-BgMvLvS-.js → routes-CVKkvFVv.js} +1 -1
- package/dist/web/server/assets/{services-yHZroxsi.js → services-CEr61xb5.js} +1 -1
- package/dist/web/server/assets/{skills--bIKID1Q.js → skills-BImC3LTO.js} +1 -1
- package/dist/web/server/assets/{teams-BbRfuVXY.js → teams-8zEIo08E.js} +1 -1
- package/dist/web/server/assets/{teams--a956vWL.js → teams-D-yaAWLV.js} +1 -1
- package/dist/web/server/assets/{telegram-4kMxRtVZ.js → telegram-CGl_LFtJ.js} +1 -1
- package/dist/web/server/assets/{tokens-BYwTN9JZ.js → tokens-cB-uf7qm.js} +1 -1
- package/dist/web/server/assets/{triggers-BM6mzLuH.js → triggers-CtSj79L0.js} +1 -1
- package/dist/web/server/assets/verification-B5QjcpIo.js +97 -0
- package/dist/web/server/assets/verifications-BfQsfwSE.js +268 -0
- package/dist/web/server/assets/verifications-CUq_6ZqL.js +26 -0
- package/dist/web/server/server.js +51 -35
- package/dist/worker.js +178 -4
- package/dist/worker.js.map +1 -1
- package/package.json +3 -3
- package/dist/web/client/assets/ConfirmDialog-Qam6Ut08.js +0 -1
- package/dist/web/client/assets/TeamTabs-BDdTLGIf.js +0 -1
- package/dist/web/client/assets/chevron-right-DFqFHtLy.js +0 -1
- package/dist/web/client/assets/login-BIXnBsuj.js +0 -1
- package/dist/web/client/assets/routes-COxMuwVz.js +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { t as Route } from "./policy-
|
|
1
|
+
import { t as Route } from "./policy-B62WXIFo.js";
|
|
2
2
|
import { r as PageShell } from "./Page-Bz-ydB8j.js";
|
|
3
3
|
import { t as Button } from "./Button-Dsnw22OF.js";
|
|
4
4
|
import { t as RecoveryState } from "./RecoveryState-B2SG-mrY.js";
|
|
5
|
-
import { t as TeamTabs } from "./TeamTabs-
|
|
5
|
+
import { t as TeamTabs } from "./TeamTabs-Dg4v6x0-.js";
|
|
6
6
|
import { t as ProductionTeamPolicyEditor } from "./ProductionTeamPolicyEditor-DQSdP7Yx.js";
|
|
7
7
|
import { useEffect, useMemo, useState } from "react";
|
|
8
8
|
import { jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/teams/$id/policy.tsx?tss-serverfn-split
|
|
5
5
|
var fetchPolicy_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "fc940d6dec5305aa64bdb9b9f5f7d4f925b2ba0608cb6d39af854a94872fc867",
|
|
@@ -2,7 +2,7 @@ import { n as createServerFn } from "../server.js";
|
|
|
2
2
|
import { t as createSsrRpc } from "./createSsrRpc-6LHNEsSK.js";
|
|
3
3
|
import { createFileRoute, lazyRouteComponent } from "@tanstack/react-router";
|
|
4
4
|
//#region src/routes/teams/$id/results.tsx
|
|
5
|
-
var $$splitComponentImporter = () => import("./results-
|
|
5
|
+
var $$splitComponentImporter = () => import("./results-CzZk50Fu.js");
|
|
6
6
|
var fetchTeam = createServerFn({ method: "POST" }).validator((data) => data).handler(createSsrRpc("6650438083b26964e4d4f7bf27caa6fe94c74a008e5b37a4d609180a9bf98b59"));
|
|
7
7
|
var Route = createFileRoute("/teams/$id/results")({
|
|
8
8
|
loader: ({ params }) => fetchTeam({ data: { id: params.id } }),
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/teams/$id/results.tsx?tss-serverfn-split
|
|
5
5
|
var fetchTeam_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "6650438083b26964e4d4f7bf27caa6fe94c74a008e5b37a4d609180a9bf98b59",
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { t as Route } from "./results-
|
|
1
|
+
import { t as Route } from "./results-BFqs2iOu.js";
|
|
2
2
|
import { r as PageShell } from "./Page-Bz-ydB8j.js";
|
|
3
3
|
import { t as Button } from "./Button-Dsnw22OF.js";
|
|
4
4
|
import { t as ResultCard } from "./ResultCard-B3zD9N0t.js";
|
|
5
5
|
import { n as ResultSourceLink } from "./ResultSourceConversation-BmXTcEOA.js";
|
|
6
6
|
import { t as ConfirmDialog } from "./ConfirmDialog-C-MPYYSU.js";
|
|
7
|
-
import { t as TeamTabs } from "./TeamTabs-
|
|
7
|
+
import { t as TeamTabs } from "./TeamTabs-Dg4v6x0-.js";
|
|
8
8
|
import { useEffect, useState } from "react";
|
|
9
9
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
10
10
|
//#region src/routes/teams/$id/results.tsx?tsr-split=component
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { a as fetchTeamSnapshot, i as fetchTeamReview, n as fetchFileDiff, o as prepareReviewFeedback, s as sendReviewFeedback, t as captureTeamSnapshot } from "./git-review-BB3M9nYg.js";
|
|
2
|
-
import { t as Route } from "./review-
|
|
2
|
+
import { t as Route } from "./review-c_-cFi7H.js";
|
|
3
3
|
import { r as PageShell } from "./Page-Bz-ydB8j.js";
|
|
4
4
|
import { t as Button } from "./Button-Dsnw22OF.js";
|
|
5
5
|
import { a as referenceLabel, i as changeSummary, o as snapshotLabel, r as baseLabel, s as unavailableMessage } from "./git-review-presentation-TJiHJhen.js";
|
|
6
|
-
import { t as TeamTabs } from "./TeamTabs-
|
|
6
|
+
import { t as TeamTabs } from "./TeamTabs-Dg4v6x0-.js";
|
|
7
7
|
import { useState } from "react";
|
|
8
8
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
9
9
|
//#region src/routes/teams/$id/review.tsx?tsr-split=component
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { i as fetchTeamReview } from "./git-review-BB3M9nYg.js";
|
|
2
2
|
import { createFileRoute, lazyRouteComponent, redirect } from "@tanstack/react-router";
|
|
3
3
|
//#region src/routes/teams/$id/review.tsx
|
|
4
|
-
var $$splitComponentImporter = () => import("./review-
|
|
4
|
+
var $$splitComponentImporter = () => import("./review-DUe3vHPU.js");
|
|
5
5
|
var Route = createFileRoute("/teams/$id/review")({
|
|
6
6
|
loader: async ({ params }) => {
|
|
7
7
|
const data = await fetchTeamReview({ data: { id: params.id } });
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as getCookie, n as createServerFn } from "../server.js";
|
|
2
|
-
import { t as DAEMON_BASE_URL } from "./daemon-client-
|
|
2
|
+
import { t as DAEMON_BASE_URL } from "./daemon-client-C7qjQ2iO.js";
|
|
3
3
|
import { t as webOriginConfig } from "./public-origin-xV0lm0Ty.js";
|
|
4
4
|
import { i as BaziuLogo, n as ThemeToggle, r as PawIcon, t as Route$5 } from "./login-rDox7PRD.js";
|
|
5
5
|
import { t as createSsrRpc } from "./createSsrRpc-6LHNEsSK.js";
|
|
@@ -16,20 +16,21 @@ import { t as Route$15 } from "./services-DgoU1udp.js";
|
|
|
16
16
|
import { t as Route$16 } from "./mcp-B0goWO8Q.js";
|
|
17
17
|
import { t as Route$17 } from "./teams-BJuoNOTB.js";
|
|
18
18
|
import { t as Route$18 } from "./agents-CJk4pxKu.js";
|
|
19
|
-
import { t as Route$19 } from "./_id
|
|
19
|
+
import { t as Route$19 } from "./_id--onriuvj.js";
|
|
20
20
|
import { t as Route$20 } from "./_id-BN1BPEDI.js";
|
|
21
|
-
import { t as Route$21 } from "./
|
|
22
|
-
import { t as Route$22 } from "./
|
|
23
|
-
import { t as Route$23 } from "./
|
|
24
|
-
import { t as Route$24 } from "./
|
|
25
|
-
import { t as Route$25 } from "./
|
|
26
|
-
import { t as Route$26 } from "./
|
|
27
|
-
import { t as Route$27 } from "./
|
|
28
|
-
import { t as Route$28 } from "./
|
|
29
|
-
import { t as Route$29 } from "./
|
|
30
|
-
import { t as Route$30 } from "./
|
|
31
|
-
import { t as Route$31 } from "./
|
|
32
|
-
import { t as Route$32 } from "./_id-
|
|
21
|
+
import { t as Route$21 } from "./verifications-CUq_6ZqL.js";
|
|
22
|
+
import { t as Route$22 } from "./review-c_-cFi7H.js";
|
|
23
|
+
import { t as Route$23 } from "./results-BFqs2iOu.js";
|
|
24
|
+
import { t as Route$24 } from "./policy-B62WXIFo.js";
|
|
25
|
+
import { t as Route$25 } from "./memory-lo2vHRNw.js";
|
|
26
|
+
import { t as Route$26 } from "./members-Bd0OtiTr.js";
|
|
27
|
+
import { t as Route$27 } from "./activity-Cu7zKPGD.js";
|
|
28
|
+
import { t as Route$28 } from "./telegram-Zd1rIZxg.js";
|
|
29
|
+
import { t as Route$29 } from "./triggers-BvjYNmmY.js";
|
|
30
|
+
import { t as Route$30 } from "./learning-BaKM6qaw.js";
|
|
31
|
+
import { t as Route$31 } from "./inbox-cu3jLzNP.js";
|
|
32
|
+
import { t as Route$32 } from "./_id-BwvCtzlD.js";
|
|
33
|
+
import { t as Route$33 } from "./_id-BYKpT2Tu.js";
|
|
33
34
|
import { useEffect, useState } from "react";
|
|
34
35
|
import { HeadContent, Link, Outlet, Scripts, createFileRoute, createRootRoute, createRouter, lazyRouteComponent, redirect, useRouterState } from "@tanstack/react-router";
|
|
35
36
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
@@ -726,27 +727,32 @@ var AgentsIdIndexRoute = Route$20.update({
|
|
|
726
727
|
path: "/agents/$id/",
|
|
727
728
|
getParentRoute: () => Route$4
|
|
728
729
|
});
|
|
729
|
-
var
|
|
730
|
+
var TeamsIdVerificationsRoute = Route$21.update({
|
|
731
|
+
id: "/teams/$id/verifications",
|
|
732
|
+
path: "/teams/$id/verifications",
|
|
733
|
+
getParentRoute: () => Route$4
|
|
734
|
+
});
|
|
735
|
+
var TeamsIdReviewRoute = Route$22.update({
|
|
730
736
|
id: "/teams/$id/review",
|
|
731
737
|
path: "/teams/$id/review",
|
|
732
738
|
getParentRoute: () => Route$4
|
|
733
739
|
});
|
|
734
|
-
var TeamsIdResultsRoute = Route$
|
|
740
|
+
var TeamsIdResultsRoute = Route$23.update({
|
|
735
741
|
id: "/teams/$id/results",
|
|
736
742
|
path: "/teams/$id/results",
|
|
737
743
|
getParentRoute: () => Route$4
|
|
738
744
|
});
|
|
739
|
-
var TeamsIdPolicyRoute = Route$
|
|
745
|
+
var TeamsIdPolicyRoute = Route$24.update({
|
|
740
746
|
id: "/teams/$id/policy",
|
|
741
747
|
path: "/teams/$id/policy",
|
|
742
748
|
getParentRoute: () => Route$4
|
|
743
749
|
});
|
|
744
|
-
var TeamsIdMemoryRoute = Route$
|
|
750
|
+
var TeamsIdMemoryRoute = Route$25.update({
|
|
745
751
|
id: "/teams/$id/memory",
|
|
746
752
|
path: "/teams/$id/memory",
|
|
747
753
|
getParentRoute: () => Route$4
|
|
748
754
|
});
|
|
749
|
-
var TeamsIdMembersRoute = Route$
|
|
755
|
+
var TeamsIdMembersRoute = Route$26.update({
|
|
750
756
|
id: "/teams/$id/members",
|
|
751
757
|
path: "/teams/$id/members",
|
|
752
758
|
getParentRoute: () => Route$4
|
|
@@ -756,32 +762,32 @@ var TeamsIdContextRoute = Route.update({
|
|
|
756
762
|
path: "/teams/$id/context",
|
|
757
763
|
getParentRoute: () => Route$4
|
|
758
764
|
});
|
|
759
|
-
var TeamsIdActivityRoute = Route$
|
|
765
|
+
var TeamsIdActivityRoute = Route$27.update({
|
|
760
766
|
id: "/teams/$id/activity",
|
|
761
767
|
path: "/teams/$id/activity",
|
|
762
768
|
getParentRoute: () => Route$4
|
|
763
769
|
});
|
|
764
|
-
var ConfigIntegrationsTelegramRoute = Route$
|
|
770
|
+
var ConfigIntegrationsTelegramRoute = Route$28.update({
|
|
765
771
|
id: "/config/integrations/telegram",
|
|
766
772
|
path: "/config/integrations/telegram",
|
|
767
773
|
getParentRoute: () => Route$4
|
|
768
774
|
});
|
|
769
|
-
var AgentsIdTriggersRoute = Route$
|
|
775
|
+
var AgentsIdTriggersRoute = Route$29.update({
|
|
770
776
|
id: "/agents/$id/triggers",
|
|
771
777
|
path: "/agents/$id/triggers",
|
|
772
778
|
getParentRoute: () => Route$4
|
|
773
779
|
});
|
|
774
|
-
var AgentsIdLearningRoute = Route$
|
|
780
|
+
var AgentsIdLearningRoute = Route$30.update({
|
|
775
781
|
id: "/agents/$id/learning",
|
|
776
782
|
path: "/agents/$id/learning",
|
|
777
783
|
getParentRoute: () => Route$4
|
|
778
784
|
});
|
|
779
|
-
var AgentsIdInboxRoute = Route$
|
|
785
|
+
var AgentsIdInboxRoute = Route$31.update({
|
|
780
786
|
id: "/agents/$id/inbox",
|
|
781
787
|
path: "/agents/$id/inbox",
|
|
782
788
|
getParentRoute: () => Route$4
|
|
783
789
|
});
|
|
784
|
-
var TemplatesTeamsIdIndexRoute = Route$
|
|
790
|
+
var TemplatesTeamsIdIndexRoute = Route$32.update({
|
|
785
791
|
id: "/templates/teams/$id/",
|
|
786
792
|
path: "/templates/teams/$id/",
|
|
787
793
|
getParentRoute: () => Route$4
|
|
@@ -813,11 +819,12 @@ var rootRouteChildren = {
|
|
|
813
819
|
TeamsIdPolicyRoute,
|
|
814
820
|
TeamsIdResultsRoute,
|
|
815
821
|
TeamsIdReviewRoute,
|
|
822
|
+
TeamsIdVerificationsRoute,
|
|
816
823
|
AgentsIdIndexRoute,
|
|
817
824
|
TeamsIdIndexRoute,
|
|
818
825
|
TemplatesAgentsIndexRoute,
|
|
819
826
|
TemplatesTeamsIndexRoute,
|
|
820
|
-
TemplatesAgentsIdIndexRoute: Route$
|
|
827
|
+
TemplatesAgentsIdIndexRoute: Route$33.update({
|
|
821
828
|
id: "/templates/agents/$id/",
|
|
822
829
|
path: "/templates/agents/$id/",
|
|
823
830
|
getParentRoute: () => Route$4
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { a as getCookie, n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient, r as ApiClientError } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient, r as ApiClientError } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
import { t as SIDEBAR_OPEN_GROUPS_COOKIE } from "./Sidebar-DKyk7oIo.js";
|
|
5
5
|
//#region src/routes/index.tsx?tss-serverfn-split
|
|
6
6
|
function parseOpenGroupsCookie(raw) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/config/services.tsx?tss-serverfn-split
|
|
5
5
|
var fetchServices_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "6afd81bef0ee381d6e3641cd8e269968429c874e2f9d56c8f818cc9d180ee477",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/skills/index.tsx?tss-serverfn-split
|
|
5
5
|
var fetchSkills_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "ae1d30575b229c1e2622fbaf2252800a9a7acc84afdd68cba025ca890b8d52c5",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/templates/teams/index.tsx?tss-serverfn-split
|
|
5
5
|
var fetchTeams_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "1bb12262aaa902fa208aafaa70b69c63da34c1fe523ab0322fe766903fc6b4c1",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/teams/index.tsx?tss-serverfn-split
|
|
5
5
|
var fetchTeamsData_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "1ab05a58944792f34ad279deeaa56f70e9360687856b18327f335b022e8d21a5",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/config/integrations/telegram.tsx?tss-serverfn-split
|
|
5
5
|
var fetchTelegramConfig_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "00a157dd07824e1f126f06646effd1d876f280f6fc64c144d2f6429414a4e58a",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/config/tokens.tsx?tss-serverfn-split
|
|
5
5
|
var fetchTokens_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "46e35c9f1afc79423cb49703b454ef684344db08ec19775efd70a8768c7837f1",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as createServerFn } from "../server.js";
|
|
2
2
|
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
-
import { n as daemonClient, r as ApiClientError } from "./daemon-client-
|
|
3
|
+
import { n as daemonClient, r as ApiClientError } from "./daemon-client-C7qjQ2iO.js";
|
|
4
4
|
//#region src/routes/agents/$id/triggers.tsx?tss-serverfn-split
|
|
5
5
|
var fetchTriggers_createServerFn_handler = createServerRpc({
|
|
6
6
|
id: "57ebf437fdb3fcfc63b176e796a55f04bdfec0b230059673196e98d413d15c4d",
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { n as createServerFn } from "../server.js";
|
|
2
|
+
import { t as createServerRpc } from "./createServerRpc-B7Yr1K8i.js";
|
|
3
|
+
import { n as daemonClient, r as ApiClientError } from "./daemon-client-C7qjQ2iO.js";
|
|
4
|
+
//#region src/lib/verification.ts?tss-serverfn-split
|
|
5
|
+
function failure(error, fallback) {
|
|
6
|
+
if (!(error instanceof ApiClientError)) throw error;
|
|
7
|
+
const body = error.body;
|
|
8
|
+
return {
|
|
9
|
+
code: body.code,
|
|
10
|
+
message: body.error ?? fallback
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
var fetchTeamVerifications_createServerFn_handler = createServerRpc({
|
|
14
|
+
id: "2a72cbadf7e2fa943de062817aed454cd746f9ab8b95fce78f94d327756363b1",
|
|
15
|
+
name: "fetchTeamVerifications",
|
|
16
|
+
filename: "src/lib/verification.ts"
|
|
17
|
+
}, (opts) => fetchTeamVerifications.__executeServer(opts));
|
|
18
|
+
var fetchTeamVerifications = createServerFn({ method: "POST" }).validator((input) => input).handler(fetchTeamVerifications_createServerFn_handler, async ({ data }) => {
|
|
19
|
+
const client = daemonClient();
|
|
20
|
+
try {
|
|
21
|
+
const [listed, agents] = await Promise.all([client.get(`/api/teams/${encodeURIComponent(data.id)}/verifications`), client.get("/api/agents")]);
|
|
22
|
+
return {
|
|
23
|
+
requests: listed.requests,
|
|
24
|
+
members: agents.filter((agent) => agent.teamId === data.id).map((agent) => ({
|
|
25
|
+
id: agent.id,
|
|
26
|
+
name: agent.name
|
|
27
|
+
})),
|
|
28
|
+
unavailable: null
|
|
29
|
+
};
|
|
30
|
+
} catch (error) {
|
|
31
|
+
return {
|
|
32
|
+
requests: [],
|
|
33
|
+
members: [],
|
|
34
|
+
unavailable: failure(error, "Verifications unavailable")
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
var fetchVerification_createServerFn_handler = createServerRpc({
|
|
39
|
+
id: "9160671c06186ff835338f053559f4fad74360808e5cdb399e45c3a198f57f59",
|
|
40
|
+
name: "fetchVerification",
|
|
41
|
+
filename: "src/lib/verification.ts"
|
|
42
|
+
}, (opts) => fetchVerification.__executeServer(opts));
|
|
43
|
+
var fetchVerification = createServerFn({ method: "POST" }).validator((input) => input).handler(fetchVerification_createServerFn_handler, async ({ data }) => {
|
|
44
|
+
try {
|
|
45
|
+
return { report: (await daemonClient().get(`/api/teams/${encodeURIComponent(data.id)}/verifications/${encodeURIComponent(data.requestId)}`)).request };
|
|
46
|
+
} catch (error) {
|
|
47
|
+
const unavailable = failure(error, "Verification request could not be loaded");
|
|
48
|
+
if (unavailable) return unavailable;
|
|
49
|
+
throw error;
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
var createVerification_createServerFn_handler = createServerRpc({
|
|
53
|
+
id: "74977c4474f1c4e67bbd844d3c182cb5ceeda6e70b71cda2ad0ba046bb53e67a",
|
|
54
|
+
name: "createVerification",
|
|
55
|
+
filename: "src/lib/verification.ts"
|
|
56
|
+
}, (opts) => createVerification.__executeServer(opts));
|
|
57
|
+
var createVerification = createServerFn({ method: "POST" }).validator((input) => input).handler(createVerification_createServerFn_handler, async ({ data }) => {
|
|
58
|
+
try {
|
|
59
|
+
await daemonClient().post(`/api/teams/${encodeURIComponent(data.id)}/verifications`, {
|
|
60
|
+
recipientAgentId: data.recipientAgentId,
|
|
61
|
+
snapshotId: data.snapshotId,
|
|
62
|
+
checks: data.checks,
|
|
63
|
+
summary: data.summary ?? null
|
|
64
|
+
});
|
|
65
|
+
return { ok: true };
|
|
66
|
+
} catch (error) {
|
|
67
|
+
if (error instanceof ApiClientError && error.status === 409) {
|
|
68
|
+
const body = error.body;
|
|
69
|
+
if (body.blocked) return {
|
|
70
|
+
ok: false,
|
|
71
|
+
blocker: body.blocked
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
const unavailable = failure(error, "Verification could not be requested");
|
|
75
|
+
if (unavailable) return unavailable;
|
|
76
|
+
throw error;
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
var cancelVerification_createServerFn_handler = createServerRpc({
|
|
80
|
+
id: "8f81bc274b3fa565cdb912454629cacae4686a46b7e672331432b113484722c3",
|
|
81
|
+
name: "cancelVerification",
|
|
82
|
+
filename: "src/lib/verification.ts"
|
|
83
|
+
}, (opts) => cancelVerification.__executeServer(opts));
|
|
84
|
+
var cancelVerification = createServerFn({ method: "POST" }).validator((input) => input).handler(cancelVerification_createServerFn_handler, async ({ data }) => {
|
|
85
|
+
try {
|
|
86
|
+
await daemonClient().post(`/api/teams/${encodeURIComponent(data.id)}/verifications/${encodeURIComponent(data.requestId)}/cancel`, {});
|
|
87
|
+
return { ok: true };
|
|
88
|
+
} catch (error) {
|
|
89
|
+
if (error instanceof ApiClientError) return {
|
|
90
|
+
ok: false,
|
|
91
|
+
message: error.body?.error ?? `cancel failed (${error.status})`
|
|
92
|
+
};
|
|
93
|
+
throw error;
|
|
94
|
+
}
|
|
95
|
+
});
|
|
96
|
+
//#endregion
|
|
97
|
+
export { cancelVerification_createServerFn_handler, createVerification_createServerFn_handler, fetchTeamVerifications_createServerFn_handler, fetchVerification_createServerFn_handler };
|
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
import { a as fetchVerification, i as fetchTeamVerifications, n as cancelVerification, r as createVerification, t as Route } from "./verifications-CUq_6ZqL.js";
|
|
2
|
+
import { r as PageShell } from "./Page-Bz-ydB8j.js";
|
|
3
|
+
import { t as Button } from "./Button-Dsnw22OF.js";
|
|
4
|
+
import { t as TeamTabs } from "./TeamTabs-Dg4v6x0-.js";
|
|
5
|
+
import { useState } from "react";
|
|
6
|
+
import { Link } from "@tanstack/react-router";
|
|
7
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
8
|
+
//#region src/routes/teams/$id/verifications.tsx?tsr-split=component
|
|
9
|
+
/** Three-valued and never a badge: "changed" proves the source moved, not that it was relevant. */
|
|
10
|
+
function applicabilityLabel(comparison) {
|
|
11
|
+
if (comparison === "identical") return "unchanged since capture";
|
|
12
|
+
if (comparison === "changed") return "changed since capture — re-verify";
|
|
13
|
+
return "not checked";
|
|
14
|
+
}
|
|
15
|
+
function outcomeLabel(state, exitCode) {
|
|
16
|
+
if (state === "not_executed") return "not run";
|
|
17
|
+
if (state === "succeeded") return `ok${exitCode === null ? "" : ` (exit ${exitCode})`}`;
|
|
18
|
+
if (state === "failed") return `failed${exitCode === null ? "" : ` (exit ${exitCode})`}`;
|
|
19
|
+
return state.replace(/_/g, " ");
|
|
20
|
+
}
|
|
21
|
+
function VerificationsPage() {
|
|
22
|
+
const loaded = Route.useLoaderData();
|
|
23
|
+
const teamId = Route.useParams().id;
|
|
24
|
+
const [requests, setRequests] = useState(loaded.requests);
|
|
25
|
+
const [unavailable, setUnavailable] = useState(loaded.unavailable);
|
|
26
|
+
const [agentId, setAgentId] = useState(() => loaded.members[0]?.id ?? "");
|
|
27
|
+
const [snapshotId, setSnapshotId] = useState("");
|
|
28
|
+
const [checks, setChecks] = useState("pnpm test :: unit suite");
|
|
29
|
+
const [summary, setSummary] = useState("");
|
|
30
|
+
const [status, setStatus] = useState(null);
|
|
31
|
+
const [busy, setBusy] = useState(false);
|
|
32
|
+
const [applicability, setApplicability] = useState({});
|
|
33
|
+
async function reload() {
|
|
34
|
+
const next = await fetchTeamVerifications({ data: { id: teamId } });
|
|
35
|
+
if (next) {
|
|
36
|
+
setRequests(next.requests);
|
|
37
|
+
setUnavailable(next.unavailable);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async function request() {
|
|
41
|
+
setBusy(true);
|
|
42
|
+
setStatus({
|
|
43
|
+
kind: "info",
|
|
44
|
+
message: "Capturing the request…"
|
|
45
|
+
});
|
|
46
|
+
try {
|
|
47
|
+
const result = await createVerification({ data: {
|
|
48
|
+
id: teamId,
|
|
49
|
+
recipientAgentId: agentId,
|
|
50
|
+
snapshotId,
|
|
51
|
+
checks: checks.split("\n").map((line) => line.trim()).filter(Boolean).map((line) => {
|
|
52
|
+
const [command, purpose, cwd, seconds] = line.split("::").map((part) => part?.trim());
|
|
53
|
+
return {
|
|
54
|
+
command: command ?? "",
|
|
55
|
+
purpose: purpose ?? "",
|
|
56
|
+
cwd: cwd || ".",
|
|
57
|
+
timeoutMs: Math.round((seconds ? Number(seconds) : 120) * 1e3)
|
|
58
|
+
};
|
|
59
|
+
}),
|
|
60
|
+
...summary ? { summary } : {}
|
|
61
|
+
} });
|
|
62
|
+
if ("blocker" in result && result.blocker) {
|
|
63
|
+
setStatus({
|
|
64
|
+
kind: "error",
|
|
65
|
+
message: `Blocked: ${result.blocker.detail}`
|
|
66
|
+
});
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if ("ok" in result && result.ok) {
|
|
70
|
+
setStatus({
|
|
71
|
+
kind: "info",
|
|
72
|
+
message: "Captured. The specialist is admitted by the scheduler."
|
|
73
|
+
});
|
|
74
|
+
setSnapshotId("");
|
|
75
|
+
await reload();
|
|
76
|
+
return;
|
|
77
|
+
}
|
|
78
|
+
setStatus({
|
|
79
|
+
kind: "error",
|
|
80
|
+
message: "message" in result ? result.message ?? "Request failed" : "Request failed"
|
|
81
|
+
});
|
|
82
|
+
} finally {
|
|
83
|
+
setBusy(false);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
async function checkApplicability(requestId) {
|
|
87
|
+
setBusy(true);
|
|
88
|
+
try {
|
|
89
|
+
const result = await fetchVerification({ data: {
|
|
90
|
+
id: teamId,
|
|
91
|
+
requestId
|
|
92
|
+
} });
|
|
93
|
+
setApplicability((current) => ({
|
|
94
|
+
...current,
|
|
95
|
+
[requestId]: "report" in result ? applicabilityLabel(result.report.applicability.comparison) : "unavailable"
|
|
96
|
+
}));
|
|
97
|
+
} finally {
|
|
98
|
+
setBusy(false);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
async function cancel(requestId) {
|
|
102
|
+
setBusy(true);
|
|
103
|
+
try {
|
|
104
|
+
const result = await cancelVerification({ data: {
|
|
105
|
+
id: teamId,
|
|
106
|
+
requestId
|
|
107
|
+
} });
|
|
108
|
+
setStatus(result.ok ? {
|
|
109
|
+
kind: "info",
|
|
110
|
+
message: "Cancellation requested."
|
|
111
|
+
} : {
|
|
112
|
+
kind: "error",
|
|
113
|
+
message: result.message ?? "Cancel failed"
|
|
114
|
+
});
|
|
115
|
+
await reload();
|
|
116
|
+
} finally {
|
|
117
|
+
setBusy(false);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return /* @__PURE__ */ jsxs(PageShell, { children: [
|
|
121
|
+
/* @__PURE__ */ jsx(TeamTabs, { teamId }),
|
|
122
|
+
/* @__PURE__ */ jsx("h2", { children: "Specialist verification" }),
|
|
123
|
+
unavailable ? /* @__PURE__ */ jsx("p", {
|
|
124
|
+
className: "muted",
|
|
125
|
+
children: unavailable.message
|
|
126
|
+
}) : null,
|
|
127
|
+
status ? /* @__PURE__ */ jsx("p", {
|
|
128
|
+
className: status.kind === "error" ? "error" : "muted",
|
|
129
|
+
role: "status",
|
|
130
|
+
children: status.message
|
|
131
|
+
}) : null,
|
|
132
|
+
/* @__PURE__ */ jsxs("section", {
|
|
133
|
+
"aria-label": "Request verification",
|
|
134
|
+
className: "card",
|
|
135
|
+
children: [
|
|
136
|
+
/* @__PURE__ */ jsx("h3", { children: "Request verification of a captured change" }),
|
|
137
|
+
/* @__PURE__ */ jsxs("p", {
|
|
138
|
+
className: "muted",
|
|
139
|
+
children: [
|
|
140
|
+
"Capture a source snapshot on the",
|
|
141
|
+
" ",
|
|
142
|
+
/* @__PURE__ */ jsx(Link, {
|
|
143
|
+
to: "/teams/$id/review",
|
|
144
|
+
params: { id: teamId },
|
|
145
|
+
children: "Review"
|
|
146
|
+
}),
|
|
147
|
+
" ",
|
|
148
|
+
"page first, then name it here with the checks you want run. Nothing runs until the daemon admits the request."
|
|
149
|
+
]
|
|
150
|
+
}),
|
|
151
|
+
/* @__PURE__ */ jsxs("label", { children: ["Specialist", /* @__PURE__ */ jsx("select", {
|
|
152
|
+
value: agentId,
|
|
153
|
+
onChange: (event) => setAgentId(event.target.value),
|
|
154
|
+
children: loaded.members.map((member) => /* @__PURE__ */ jsx("option", {
|
|
155
|
+
value: member.id,
|
|
156
|
+
children: member.name
|
|
157
|
+
}, member.id))
|
|
158
|
+
})] }),
|
|
159
|
+
/* @__PURE__ */ jsxs("label", { children: ["Snapshot id", /* @__PURE__ */ jsx("input", {
|
|
160
|
+
value: snapshotId,
|
|
161
|
+
onChange: (event) => setSnapshotId(event.target.value),
|
|
162
|
+
placeholder: "captured snapshot id"
|
|
163
|
+
})] }),
|
|
164
|
+
/* @__PURE__ */ jsxs("label", { children: ["Checks (one per line: command :: purpose [:: cwd] [:: seconds])", /* @__PURE__ */ jsx("textarea", {
|
|
165
|
+
value: checks,
|
|
166
|
+
onChange: (event) => setChecks(event.target.value),
|
|
167
|
+
rows: 4
|
|
168
|
+
})] }),
|
|
169
|
+
/* @__PURE__ */ jsxs("label", { children: ["Acceptance summary (optional)", /* @__PURE__ */ jsx("input", {
|
|
170
|
+
value: summary,
|
|
171
|
+
onChange: (event) => setSummary(event.target.value)
|
|
172
|
+
})] }),
|
|
173
|
+
/* @__PURE__ */ jsx(Button, {
|
|
174
|
+
variant: "primary",
|
|
175
|
+
disabled: busy || !agentId || !snapshotId || !checks.trim(),
|
|
176
|
+
onClick: request,
|
|
177
|
+
children: "Request verification"
|
|
178
|
+
})
|
|
179
|
+
]
|
|
180
|
+
}),
|
|
181
|
+
/* @__PURE__ */ jsxs("section", {
|
|
182
|
+
"aria-label": "Verification requests",
|
|
183
|
+
children: [/* @__PURE__ */ jsx("h3", { children: "Requests" }), requests.length === 0 ? /* @__PURE__ */ jsx("p", {
|
|
184
|
+
className: "muted",
|
|
185
|
+
children: "No verification requests yet."
|
|
186
|
+
}) : /* @__PURE__ */ jsx("ul", {
|
|
187
|
+
className: "list",
|
|
188
|
+
children: requests.map((report) => {
|
|
189
|
+
const attempt = [...report.attempts].sort((a, b) => b.attemptNumber - a.attemptNumber)[0];
|
|
190
|
+
const outcomes = new Map((attempt?.outcomes ?? []).map((outcome) => [outcome.ordinal, outcome]));
|
|
191
|
+
const cancellable = report.request.state === "pending" || report.request.state === "awaiting_approval" || report.request.state === "running";
|
|
192
|
+
return /* @__PURE__ */ jsxs("li", {
|
|
193
|
+
className: "card",
|
|
194
|
+
children: [
|
|
195
|
+
/* @__PURE__ */ jsxs("div", { children: [
|
|
196
|
+
/* @__PURE__ */ jsx("strong", { children: report.request.state }),
|
|
197
|
+
" ",
|
|
198
|
+
/* @__PURE__ */ jsxs("span", {
|
|
199
|
+
className: "muted",
|
|
200
|
+
children: [
|
|
201
|
+
report.request.recipientAgentId,
|
|
202
|
+
" · ",
|
|
203
|
+
report.request.id
|
|
204
|
+
]
|
|
205
|
+
})
|
|
206
|
+
] }),
|
|
207
|
+
/* @__PURE__ */ jsxs("p", {
|
|
208
|
+
className: "muted",
|
|
209
|
+
children: [
|
|
210
|
+
"change ",
|
|
211
|
+
report.request.snapshot.id.slice(0, 12),
|
|
212
|
+
" ·",
|
|
213
|
+
" ",
|
|
214
|
+
report.request.environment.image,
|
|
215
|
+
" (shell ",
|
|
216
|
+
report.request.environment.sandbox,
|
|
217
|
+
")"
|
|
218
|
+
]
|
|
219
|
+
}),
|
|
220
|
+
/* @__PURE__ */ jsx("ul", { children: report.checks.map((check) => {
|
|
221
|
+
const outcome = outcomes.get(check.ordinal);
|
|
222
|
+
return /* @__PURE__ */ jsxs("li", { children: [
|
|
223
|
+
"[",
|
|
224
|
+
check.ordinal,
|
|
225
|
+
"] ",
|
|
226
|
+
outcomeLabel(outcome?.state ?? "not_executed", outcome?.exitCode ?? null),
|
|
227
|
+
" ",
|
|
228
|
+
"— ",
|
|
229
|
+
/* @__PURE__ */ jsx("code", { children: check.command }),
|
|
230
|
+
outcome?.commandId ? /* @__PURE__ */ jsxs(Fragment, { children: [" ", /* @__PURE__ */ jsxs("span", {
|
|
231
|
+
className: "muted",
|
|
232
|
+
children: ["receipt ", outcome.commandId.slice(0, 8)]
|
|
233
|
+
})] }) : outcome?.receiptUnavailable ? /* @__PURE__ */ jsxs(Fragment, { children: [" ", /* @__PURE__ */ jsx("span", {
|
|
234
|
+
className: "muted",
|
|
235
|
+
children: "receipt no longer available"
|
|
236
|
+
})] }) : null
|
|
237
|
+
] }, check.ordinal);
|
|
238
|
+
}) }),
|
|
239
|
+
attempt?.error ? /* @__PURE__ */ jsxs("p", {
|
|
240
|
+
className: "muted",
|
|
241
|
+
children: ["note: ", attempt.error]
|
|
242
|
+
}) : null,
|
|
243
|
+
/* @__PURE__ */ jsxs("p", {
|
|
244
|
+
className: "muted",
|
|
245
|
+
children: ["applicability: ", applicability[report.request.id] ?? "not checked"]
|
|
246
|
+
}),
|
|
247
|
+
/* @__PURE__ */ jsx(Button, {
|
|
248
|
+
variant: "ghost",
|
|
249
|
+
disabled: busy,
|
|
250
|
+
onClick: () => checkApplicability(report.request.id),
|
|
251
|
+
children: "Check applicability"
|
|
252
|
+
}),
|
|
253
|
+
" ",
|
|
254
|
+
cancellable ? /* @__PURE__ */ jsx(Button, {
|
|
255
|
+
variant: "danger",
|
|
256
|
+
disabled: busy,
|
|
257
|
+
onClick: () => cancel(report.request.id),
|
|
258
|
+
children: "Cancel"
|
|
259
|
+
}) : null
|
|
260
|
+
]
|
|
261
|
+
}, report.request.id);
|
|
262
|
+
})
|
|
263
|
+
})]
|
|
264
|
+
})
|
|
265
|
+
] });
|
|
266
|
+
}
|
|
267
|
+
//#endregion
|
|
268
|
+
export { VerificationsPage as component };
|