@kky42/pievo-server 2.0.3 → 2.1.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/.output/nitro.json +1 -1
- package/.output/public/assets/{LoopView-CCYqXrKq.js → LoopView-Pbp2YtUu.js} +1 -1
- package/.output/public/assets/{Modal-BhRzAXQg.js → Modal-B3xpEtcf.js} +1 -1
- package/.output/public/assets/{SignIn-CV3jqX_8.js → SignIn-9vsaKv_p.js} +1 -1
- package/.output/public/assets/{actionUi-BRtdWVvO.js → actionUi-DDDfD0WX.js} +1 -1
- package/.output/public/assets/app-CStTBRt2.css +2 -0
- package/.output/public/assets/{artifactView-DekEs5ME.js → artifactView-BV-yQVrj.js} +1 -1
- package/.output/public/assets/{index-BATGA0jG.js → index-DT_reRxT.js} +4 -4
- package/.output/public/assets/{invite._token-Dp2HL9X5.js → invite._token-5zhVSA26.js} +1 -1
- package/.output/public/assets/{invite._token-CQgv8lTC.js → invite._token-C3t4JfAY.js} +1 -1
- package/.output/public/assets/{lifecycleUi-C3k2MlX8.js → lifecycleUi-CMFw5Nlj.js} +1 -1
- package/.output/public/assets/{loopApi-5s2-kCnu.js → loopApi-C_Dtw-nL.js} +1 -1
- package/.output/public/assets/loops._loopId-6JlPOCsY.js +4 -0
- package/.output/public/assets/{loops._loopId_.runs._runId-BNN-dLrW.js → loops._loopId_.runs._runId-wFUMHN9w.js} +2 -2
- package/.output/public/assets/{notifyFns-DuBElaqG.js → notifyFns-CF12Yboc.js} +1 -1
- package/.output/public/assets/{preload-helper-3xcHsDtt.js → preload-helper--VCqDT5m.js} +2 -2
- package/.output/public/assets/{routes-CmuCVIIS.js → routes-DsdcURfk.js} +1 -1
- package/.output/public/assets/{routes-YnrsFY5X.js → routes-WVPuW976.js} +1 -1
- package/.output/public/assets/{t._teamId-BlE4mCSj.js → t._teamId-BdVLnwih.js} +1 -1
- package/.output/public/assets/{t._teamId-Bi-C9s5j.js → t._teamId-C9uEyAh_.js} +1 -1
- package/.output/public/assets/ui-Gb1413-F.js +1 -0
- package/.output/server/_ssr/{DashboardView-2eNPqWcy.mjs → DashboardView-DJMpoucm.mjs} +8 -8
- package/.output/server/_ssr/{LoopPlaybook-CnQ8Qgyf.mjs → LoopPlaybook-WFNer22Y.mjs} +3 -3
- package/.output/server/_ssr/{LoopView-DM30OPCN.mjs → LoopView-Dsc6oik9.mjs} +7 -7
- package/.output/server/_ssr/{Modal-B7gBr5Pm.mjs → Modal-Bc_5TYGr.mjs} +2 -2
- package/.output/server/_ssr/{SignIn-CaAi4_mk.mjs → SignIn-2qr-vtR5.mjs} +3 -3
- package/.output/server/_ssr/{actionUi-Be7dmMxb.mjs → actionUi-BKF6xI3d.mjs} +2 -2
- package/.output/server/_ssr/{adapters-CHURWoZx.mjs → adapters-Bwuh6uek.mjs} +2 -2
- package/.output/server/_ssr/{artifactFiles-D6b_RP78.mjs → artifactFiles-Cp1IBHne.mjs} +3 -3
- package/.output/server/_ssr/{artifactView-CYV1r48i.mjs → artifactView-DX4P3Krh.mjs} +2 -2
- package/.output/server/_ssr/artifacts-9G_Ai7vO.mjs +2 -0
- package/.output/server/_ssr/{auth-B_OxPpFr.mjs → auth-uQ19WsD1.mjs} +9 -9
- package/.output/server/_ssr/{boot-BNoivm21.mjs → boot-DPoPmSLh.mjs} +1236 -314
- package/.output/server/_ssr/boot-Zz5AJgfy.mjs +2 -0
- package/.output/server/_ssr/{bun-sqlite-dialect-BW9W1_Ps-B3RHdVjo.mjs → bun-sqlite-dialect-BW9W1_Ps-CqcLCApi.mjs} +2 -2
- package/.output/server/_ssr/{d1-sqlite-dialect-BLC8LXE6-DpVe1foU.mjs → d1-sqlite-dialect-BLC8LXE6-AuWb61y8.mjs} +2 -2
- package/.output/server/_ssr/db-BMANvbZu.mjs +2 -0
- package/.output/server/_ssr/{dist-BTx1ljg7.mjs → dist-CtYTvPCD.mjs} +2 -2
- package/.output/server/_ssr/{factory-TSnFcS96.mjs → factory-BtqxMS8a.mjs} +2 -2
- package/.output/server/_ssr/{invite._token-CvqaKH2R.mjs → invite._token-BlbVjz-o.mjs} +2 -2
- package/.output/server/_ssr/{invite._token-CDpO3cfB.mjs → invite._token-DBttmaDb.mjs} +6 -6
- package/.output/server/_ssr/{invite._token-DWOPXXLS.mjs → invite._token-DtAfQyfP.mjs} +5 -5
- package/.output/server/_ssr/{kysely-adapter-BWjzeCGK.mjs → kysely-adapter-bSpTlW7Z.mjs} +1 -1
- package/.output/server/_ssr/{lifecycleUi-5jMhxINb.mjs → lifecycleUi-Djb44Aj3.mjs} +4 -4
- package/.output/server/_ssr/logger-CR1a0flR.mjs +2 -0
- package/.output/server/_ssr/{loopApi-BfMnXaKT.mjs → loopApi-7MTSs6hy.mjs} +5 -5
- package/.output/server/_ssr/{loopApi-Cpm8YV3U.mjs → loopApi-BXRBFGWh.mjs} +23 -23
- package/.output/server/_ssr/{loops._loopId-C-y4Pux_.mjs → loops._loopId-6Q0DMXU0.mjs} +4 -4
- package/.output/server/_ssr/{loops._loopId-DfrHw2mZ.mjs → loops._loopId-C0x0SE8F.mjs} +85 -85
- package/.output/server/_ssr/{loops._loopId_.runs._runId-BXyyqXwX.mjs → loops._loopId_.runs._runId-BOJBJu_a.mjs} +4 -4
- package/.output/server/_ssr/{loops._loopId_.runs._runId-C9d0EC2Q.mjs → loops._loopId_.runs._runId-CkM0-ckn.mjs} +9 -9
- package/.output/server/_ssr/{machineFns-CRbwYxD3.mjs → machineFns-CQuvvdXx.mjs} +3 -3
- package/.output/server/_ssr/{node-sqlite-dialect-B10G6C4W.mjs → node-sqlite-dialect-ZOyD6D7F.mjs} +2 -2
- package/.output/server/_ssr/{notifyFns-DvH4C-GH.mjs → notifyFns-BOeYZDRp.mjs} +3 -3
- package/.output/server/_ssr/{notifyFns-CtmSVNmE.mjs → notifyFns-UFZ2j7Fv.mjs} +7 -7
- package/.output/server/_ssr/{router-B4ipreZ4.mjs → router-jnPelPNh.mjs} +32 -32
- package/.output/server/_ssr/{routes-DKox93l0.mjs → routes-Bx0bRxt9.mjs} +2 -2
- package/.output/server/_ssr/{routes-iHT61OkI.mjs → routes-CMAUcUsZ.mjs} +5 -5
- package/.output/server/_ssr/{routes-l7tUe3lr.mjs → routes-CXnbFjB_.mjs} +6 -6
- package/.output/server/_ssr/runDiff-CDPvl_cY.mjs +2 -0
- package/.output/server/_ssr/ssr.mjs +51 -51
- package/.output/server/_ssr/store-DDOk2Ty_.mjs +2 -0
- package/.output/server/_ssr/{t._teamId-jO8dUmSQ.mjs → t._teamId-36z-mmyw.mjs} +5 -5
- package/.output/server/_ssr/{t._teamId-BPK2mrN3.mjs → t._teamId-Bsm4WrJl.mjs} +6 -6
- package/.output/server/_ssr/{t._teamId-B3g0Cs8B.mjs → t._teamId-D9nCEa2h.mjs} +2 -2
- package/.output/server/_ssr/{teamFns-D4I-0dEB.mjs → teamFns-BBIbatdZ.mjs} +2 -2
- package/.output/server/_ssr/{teamFns-6zjFV7lM.mjs → teamFns-DAx4a1z4.mjs} +3 -3
- package/.output/server/_ssr/tokens-7KEKpLnu.mjs +2 -0
- package/.output/server/_ssr/{ui-CI-OeTr7.mjs → ui-B6mE5-5v.mjs} +6 -6
- package/.output/server/{_tanstack-start-manifest_v-CxHUYCv8.mjs → _tanstack-start-manifest_v-5iQOchGB.mjs} +28 -28
- package/.output/server/drizzle/0015_run_history_foundation.sql +43 -0
- package/.output/server/drizzle/0016_plural_machine_runs.sql +4 -0
- package/.output/server/drizzle/meta/_journal.json +14 -0
- package/.output/server/index.mjs +118 -118
- package/drizzle/0015_run_history_foundation.sql +43 -0
- package/drizzle/0016_plural_machine_runs.sql +4 -0
- package/drizzle/meta/_journal.json +14 -0
- package/package.json +1 -1
- package/.output/public/assets/app-B03JVnFn.css +0 -2
- package/.output/public/assets/loops._loopId-C9vRjZ8W.js +0 -4
- package/.output/public/assets/ui-By58RJgB.js +0 -1
- package/.output/server/_ssr/artifacts-CXMpBzMY.mjs +0 -2
- package/.output/server/_ssr/boot-C9VAWt9Z.mjs +0 -2
- package/.output/server/_ssr/db-C11vQNxP.mjs +0 -2
- package/.output/server/_ssr/logger-DE_PU5bE.mjs +0 -2
- package/.output/server/_ssr/runDiff-Bohd5W5R.mjs +0 -113
- package/.output/server/_ssr/store-Ck7kCAGf.mjs +0 -2
- package/.output/server/_ssr/tokens-oJm6yFyt.mjs +0 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { n as DefaultQueryCompiler, o as CompiledQuery, s as sql$1 } from "./auth-
|
|
1
|
+
import { n as DefaultQueryCompiler, o as CompiledQuery, s as sql$1 } from "./auth-uQ19WsD1.mjs";
|
|
2
2
|
import { n as DEFAULT_MIGRATION_TABLE, t as DEFAULT_MIGRATION_LOCK_TABLE } from "./kysely-migration-tables-JkVUjPF_-bPAX9LR_.mjs";
|
|
3
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/bun-sqlite-dialect-BW9W1_Ps-
|
|
3
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/bun-sqlite-dialect-BW9W1_Ps-CqcLCApi.js
|
|
4
4
|
var BunSqliteAdapter = class {
|
|
5
5
|
get supportsCreateIfNotExists() {
|
|
6
6
|
return true;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as SqliteQueryCompiler, i as SqliteAdapter } from "./auth-
|
|
1
|
+
import { a as SqliteQueryCompiler, i as SqliteAdapter } from "./auth-uQ19WsD1.mjs";
|
|
2
2
|
import { n as DEFAULT_MIGRATION_TABLE, t as DEFAULT_MIGRATION_LOCK_TABLE } from "./kysely-migration-tables-JkVUjPF_-bPAX9LR_.mjs";
|
|
3
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/d1-sqlite-dialect-BLC8LXE6-
|
|
3
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/d1-sqlite-dialect-BLC8LXE6-AuWb61y8.js
|
|
4
4
|
var D1SqliteAdapter = class extends SqliteAdapter {};
|
|
5
5
|
var D1SqliteDriver = class {
|
|
6
6
|
#config;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { _ as logger, o as createAdapterFactory } from "./factory-
|
|
2
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/dist-
|
|
1
|
+
import { _ as logger, o as createAdapterFactory } from "./factory-BtqxMS8a.mjs";
|
|
2
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/dist-CtYTvPCD.js
|
|
3
3
|
/**
|
|
4
4
|
* Case-insensitive in-memory comparison helpers.
|
|
5
5
|
* Used when evaluating where clauses in the memory adapter.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import {
|
|
2
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/factory-
|
|
1
|
+
import { J as getEnvVar, a as BetterAuthError, z as env } from "./boot-DPoPmSLh.mjs";
|
|
2
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/factory-BtqxMS8a.js
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __commonJSMin = (cb, mod) => () => (mod || (cb((mod = { exports: {} }).exports, mod), cb = null), mod.exports);
|
|
5
5
|
var __exportAll = (all, no_symbols) => {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { g as require_jsx_runtime } from "../_libs/@base-ui/react+[...].mjs";
|
|
2
2
|
import { f as useRouter } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
3
|
-
import { r as LoadErrorCard } from "./actionUi-
|
|
4
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/invite._token-
|
|
3
|
+
import { r as LoadErrorCard } from "./actionUi-BKF6xI3d.mjs";
|
|
4
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/invite._token-BlbVjz-o.js
|
|
5
5
|
var import_jsx_runtime = require_jsx_runtime();
|
|
6
6
|
/**
|
|
7
7
|
* Invite-link redeem (`/invite/<token>`, design §4 option B). The recipient opens
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { o as __toESM } from "../_runtime.mjs";
|
|
2
2
|
import { g as require_jsx_runtime, h as require_react } from "../_libs/@base-ui/react+[...].mjs";
|
|
3
|
-
import { l as btnPrimary } from "./ui-
|
|
3
|
+
import { l as btnPrimary } from "./ui-B6mE5-5v.mjs";
|
|
4
4
|
import { d as useNavigate } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
5
|
-
import { i as PievoLogo, s as useSession } from "./LoopPlaybook-
|
|
5
|
+
import { i as PievoLogo, s as useSession } from "./LoopPlaybook-WFNer22Y.mjs";
|
|
6
6
|
import { t as setActiveTeamCookie } from "./teamCookie-B7hLOIie.mjs";
|
|
7
|
-
import { c as redeemTeamInvite } from "./teamFns-
|
|
8
|
-
import { t as Route } from "./invite._token-
|
|
9
|
-
import { t as SignIn } from "./SignIn-
|
|
10
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/invite._token-
|
|
7
|
+
import { c as redeemTeamInvite } from "./teamFns-BBIbatdZ.mjs";
|
|
8
|
+
import { t as Route } from "./invite._token-DtAfQyfP.mjs";
|
|
9
|
+
import { t as SignIn } from "./SignIn-2qr-vtR5.mjs";
|
|
10
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/invite._token-DBttmaDb.js
|
|
11
11
|
var import_react = /* @__PURE__ */ __toESM(require_react());
|
|
12
12
|
var import_jsx_runtime = require_jsx_runtime();
|
|
13
13
|
/**
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { c as createFileRoute, s as lazyRouteComponent } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
2
|
-
import { c as getAuthState } from "./loopApi-
|
|
3
|
-
import { a as authClient } from "./LoopPlaybook-
|
|
4
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/invite._token-
|
|
5
|
-
var $$splitErrorComponentImporter = () => import("./invite._token-
|
|
6
|
-
var $$splitComponentImporter = () => import("./invite._token-
|
|
2
|
+
import { c as getAuthState } from "./loopApi-7MTSs6hy.mjs";
|
|
3
|
+
import { a as authClient } from "./LoopPlaybook-WFNer22Y.mjs";
|
|
4
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/invite._token-DtAfQyfP.js
|
|
5
|
+
var $$splitErrorComponentImporter = () => import("./invite._token-BlbVjz-o.mjs");
|
|
6
|
+
var $$splitComponentImporter = () => import("./invite._token-DBttmaDb.mjs");
|
|
7
7
|
/**
|
|
8
8
|
* Invite-link redeem (`/invite/<token>`, design §4 option B). The recipient opens
|
|
9
9
|
* the link the owner shared; if signed out (under the gate) they hit the normal
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { r as kyselyAdapter, t as createKyselyAdapter } from "./auth-
|
|
1
|
+
import { r as kyselyAdapter, t as createKyselyAdapter } from "./auth-uQ19WsD1.mjs";
|
|
2
2
|
export { createKyselyAdapter, kyselyAdapter };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/lifecycleUi-
|
|
1
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/lifecycleUi-Djb44Aj3.js
|
|
2
2
|
var DAEMON_UPGRADE_REQUIRED = "Daemon upgrade required to stop a running process. Run `npm install -g @kky42/pievo@latest`, then `pievo daemon restart`.";
|
|
3
3
|
/** Derive product lifecycle state only from durable server facts. */
|
|
4
4
|
function deriveLoopLifecycle(job) {
|
|
@@ -10,9 +10,9 @@ function deriveLoopLifecycle(job) {
|
|
|
10
10
|
return "active";
|
|
11
11
|
}
|
|
12
12
|
function daemonStopSupport(protocol) {
|
|
13
|
-
return protocol ===
|
|
13
|
+
return protocol === 3 ? {
|
|
14
14
|
supported: true,
|
|
15
|
-
label: `Daemon protocol
|
|
15
|
+
label: `Daemon protocol 3 · Stop supported`
|
|
16
16
|
} : {
|
|
17
17
|
supported: false,
|
|
18
18
|
label: `Daemon protocol ${protocol ?? "unknown"} · upgrade required`
|
|
@@ -22,7 +22,7 @@ function daemonStopSupport(protocol) {
|
|
|
22
22
|
function lifecycleDisplay(detail) {
|
|
23
23
|
const state = deriveLoopLifecycle(detail.summary);
|
|
24
24
|
const running = detail.summary.runs.find((run) => run.running);
|
|
25
|
-
if (running && detail.machine.daemonProtocol !==
|
|
25
|
+
if (running && detail.machine.daemonProtocol !== 3) return DAEMON_UPGRADE_REQUIRED;
|
|
26
26
|
if (state === "stopping" && running && !detail.machine.online) return `Stopping · waiting for ${detail.machine.name || "machine"}`;
|
|
27
27
|
switch (state) {
|
|
28
28
|
case "deleting": return "Deleting";
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as createServerFn, r as getServerFnById, t as TSS_SERVER_FUNCTION } from "./ssr.mjs";
|
|
2
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/loopApi-
|
|
2
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/loopApi-7MTSs6hy.js
|
|
3
3
|
var createSsrRpc = (functionId) => {
|
|
4
4
|
const url = "/_serverFn/" + functionId;
|
|
5
5
|
const serverFnMeta = { id: functionId };
|
|
@@ -86,9 +86,9 @@ var deleteJob = createServerFn({ method: "POST" }).validator((id) => id).handler
|
|
|
86
86
|
createServerFn({ method: "POST" }).validator((d) => d).handler(createSsrRpc("0cb2218861830aae4338b814b3819e15100942beab970bc4c188f88b8cb6bc7e"));
|
|
87
87
|
var runJob = createServerFn({ method: "POST" }).validator((id) => id).handler(createSsrRpc("0c9031f2f6a9ac0b1c60075833169755ef1815324918d1426c966ac8db563798"));
|
|
88
88
|
var evolveJob = createServerFn({ method: "POST" }).validator((id) => id).handler(createSsrRpc("8a11b8d76ad42203a4bf128db0b8e0f2d6c947300dbee7a51498418404f211cd"));
|
|
89
|
-
/** Agent-
|
|
90
|
-
* updated in place;
|
|
91
|
-
var
|
|
89
|
+
/** Agent-first steer: durably queue an owner instruction. A pending steer is
|
|
90
|
+
* updated in place; a steer already running gets one follow-up. */
|
|
91
|
+
var requestSteer = createServerFn({ method: "POST" }).validator((d) => d).handler(createSsrRpc("38b831a8de4883e3d877f2169eaebde5864a2f256b1c5c790fa669702968cff9"));
|
|
92
92
|
/** Dedicated Stop-run operation. Pending work cancels immediately; running work
|
|
93
93
|
* records intent and stays Running until the daemon reports its actual result. */
|
|
94
94
|
var stopRun = createServerFn({ method: "POST" }).validator((id) => id).handler(createSsrRpc("6850ba403da9dec5aff45794eb52636ca540ddec2d9e59f5c75ccbb852bfeacb"));
|
|
@@ -102,4 +102,4 @@ var mintClaim = createServerFn({ method: "POST" }).validator((teamId) => teamId)
|
|
|
102
102
|
/** Poll a claim while the New-loop dialog waits for Claude Code to create the loop. */
|
|
103
103
|
var claimStatus = createServerFn({ method: "GET" }).validator((token) => token).handler(createSsrRpc("4b0db7d6c8f25383a3526598cb0c1881db6cf413e451e9478687c05666461347"));
|
|
104
104
|
//#endregion
|
|
105
|
-
export { stopJob as C, startJob as S, mintClaim as _, evolveJob as a,
|
|
105
|
+
export { stopJob as C, startJob as S, mintClaim as _, evolveJob as a, requestSteer as b, getAuthState as c, getJobDetail as d, getRunDiff as f, loadOlderRuns as g, listTemplates as h, deleteJob as i, getConfig as l, listMyTeams as m, claimStatus as n, getArtifact as o, listJobs as p, createSsrRpc as r, getArtifacts as s, canViewTeam as t, getDefaultTeam as u, patchJob as v, stopRun as w, runJob as x, pauseJob as y };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { $ as getMachine, $t as tryDeleteLoop, Et as listRunsBefore, It as normalizeProviderSetting, K as getChannel, L as ensureServer, Lt as pauseLoop, Nt as machinePresence, Ot as listTeamsForUser, Q as getLoop, Ut as requestDeleteLoop, V as forceDeleteLoop, Wt as requestRunCancel, Xt as stopLoop, Yt as startLoop, _ as canEvolve, b as coerceUi, en as updateLoop, in as validateSteerInstruction, it as getTeamMember, nt as getRun, ot as hasRunningRun, rn as validateSchema, rt as getTeam, xt as listLoops, y as coerceCodingAgent } from "./boot-DPoPmSLh.mjs";
|
|
2
2
|
import { n as createServerFn } from "./ssr.mjs";
|
|
3
|
-
import { i as toRunSummary, n as toJobDetail, r as toJobSummary } from "./adapters-
|
|
4
|
-
import { canAccessLoop, requestScope } from "./auth-
|
|
3
|
+
import { i as toRunSummary, n as toJobDetail, r as toJobSummary } from "./adapters-Bwuh6uek.mjs";
|
|
4
|
+
import { canAccessLoop, requestScope } from "./auth-uQ19WsD1.mjs";
|
|
5
5
|
import { t as createServerRpc } from "./createServerRpc-BD8Xn_0_.mjs";
|
|
6
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/loopApi-
|
|
6
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/loopApi-BXRBFGWh.js
|
|
7
7
|
var meta_default$6 = {
|
|
8
8
|
name: "dependency-triage",
|
|
9
9
|
label: "Dependency Triage",
|
|
@@ -135,7 +135,7 @@ var getAuthState_createServerFn_handler = createServerRpc({
|
|
|
135
135
|
filename: "src/server/loopApi.ts"
|
|
136
136
|
}, (opts) => getAuthState.__executeServer(opts));
|
|
137
137
|
var getAuthState = createServerFn({ method: "GET" }).handler(getAuthState_createServerFn_handler, async () => {
|
|
138
|
-
const { authEnabled } = await import("./auth-
|
|
138
|
+
const { authEnabled } = await import("./auth-uQ19WsD1.mjs");
|
|
139
139
|
return { enabled: authEnabled };
|
|
140
140
|
});
|
|
141
141
|
var getConfig_createServerFn_handler = createServerRpc({
|
|
@@ -244,7 +244,7 @@ var getArtifacts_createServerFn_handler = createServerRpc({
|
|
|
244
244
|
var getArtifacts = createServerFn({ method: "GET" }).validator((d) => d).handler(getArtifacts_createServerFn_handler, async ({ data }) => {
|
|
245
245
|
await backend();
|
|
246
246
|
if (!await ownedLoop(data.loopId)) return [];
|
|
247
|
-
const { listLoopArtifacts } = await import("./artifactFiles-
|
|
247
|
+
const { listLoopArtifacts } = await import("./artifactFiles-Cp1IBHne.mjs");
|
|
248
248
|
return listLoopArtifacts(data.loopId);
|
|
249
249
|
});
|
|
250
250
|
var getArtifact_createServerFn_handler = createServerRpc({
|
|
@@ -255,7 +255,7 @@ var getArtifact_createServerFn_handler = createServerRpc({
|
|
|
255
255
|
var getArtifact = createServerFn({ method: "GET" }).validator((d) => d).handler(getArtifact_createServerFn_handler, async ({ data }) => {
|
|
256
256
|
await backend();
|
|
257
257
|
if (!await ownedLoop(data.loopId)) return { error: "file not found" };
|
|
258
|
-
const { readLoopArtifact } = await import("./artifactFiles-
|
|
258
|
+
const { readLoopArtifact } = await import("./artifactFiles-Cp1IBHne.mjs");
|
|
259
259
|
return readLoopArtifact(data.loopId, data.path);
|
|
260
260
|
});
|
|
261
261
|
var getRunDiff_createServerFn_handler = createServerRpc({
|
|
@@ -274,7 +274,7 @@ var getRunDiff = createServerFn({ method: "GET" }).validator((d) => d).handler(g
|
|
|
274
274
|
hasSnapshot: false,
|
|
275
275
|
files: []
|
|
276
276
|
};
|
|
277
|
-
const { computeRunDiff } = await import("./runDiff-
|
|
277
|
+
const { computeRunDiff } = await import("./runDiff-CDPvl_cY.mjs");
|
|
278
278
|
return computeRunDiff(data.runId);
|
|
279
279
|
});
|
|
280
280
|
var listTemplates_createServerFn_handler = createServerRpc({
|
|
@@ -367,7 +367,7 @@ var stopJob = createServerFn({ method: "POST" }).validator((id) => id).handler(s
|
|
|
367
367
|
const owned = await ownedLoop(id);
|
|
368
368
|
if (!owned) return { error: "not found" };
|
|
369
369
|
if (await hasRunningRun(id)) {
|
|
370
|
-
if ((await getMachine(owned.loop.machineId))?.daemonProtocol !==
|
|
370
|
+
if ((await getMachine(owned.loop.machineId))?.daemonProtocol !== 3) return { error: "Daemon upgrade required to stop a running process" };
|
|
371
371
|
}
|
|
372
372
|
const stopped = await stopLoop(id);
|
|
373
373
|
if (!stopped) return { error: "not found" };
|
|
@@ -390,12 +390,12 @@ var deleteJob = createServerFn({ method: "POST" }).validator((id) => id).handler
|
|
|
390
390
|
const unreachable = machinePresence(machine?.online, machine?.lastSeen) !== "online";
|
|
391
391
|
const actor = await requestScope();
|
|
392
392
|
const mayRetireAuthority = !owned.enforce || !!(actor.userId && owned.loop.teamId && (await getTeamMember(owned.loop.teamId, actor.userId))?.role === "owner");
|
|
393
|
-
if (!unreachable && await hasRunningRun(id) && machine?.daemonProtocol !==
|
|
393
|
+
if (!unreachable && await hasRunningRun(id) && machine?.daemonProtocol !== 3) return { error: "Daemon upgrade required to stop a running process" };
|
|
394
394
|
scheduler.removeLoop(id);
|
|
395
395
|
if (!await requestDeleteLoop(id)) return { error: "not found" };
|
|
396
396
|
if (unreachable && mayRetireAuthority) {
|
|
397
397
|
if (!await forceDeleteLoop(id)) return { error: "delete failed; server data was not deleted" };
|
|
398
|
-
const { logger } = await import("./logger-
|
|
398
|
+
const { logger } = await import("./logger-CR1a0flR.mjs");
|
|
399
399
|
logger.child({ mod: "loop-lifecycle" }).warn({
|
|
400
400
|
action: "unreachable-delete",
|
|
401
401
|
loopId: id,
|
|
@@ -435,7 +435,7 @@ var forceDeleteJob = createServerFn({ method: "POST" }).validator((d) => d).hand
|
|
|
435
435
|
}
|
|
436
436
|
scheduler.removeLoop(data.id);
|
|
437
437
|
if (!await forceDeleteLoop(data.id)) return { error: "force delete failed; server data was not deleted" };
|
|
438
|
-
const { logger } = await import("./logger-
|
|
438
|
+
const { logger } = await import("./logger-CR1a0flR.mjs");
|
|
439
439
|
logger.child({ mod: "loop-lifecycle" }).warn({
|
|
440
440
|
action: "force-delete",
|
|
441
441
|
loopId: data.id,
|
|
@@ -483,17 +483,17 @@ var evolveJob = createServerFn({ method: "POST" }).validator((id) => id).handler
|
|
|
483
483
|
coalesced: queued.state === "coalesced"
|
|
484
484
|
};
|
|
485
485
|
});
|
|
486
|
-
var
|
|
487
|
-
id: "
|
|
488
|
-
name: "
|
|
486
|
+
var requestSteer_createServerFn_handler = createServerRpc({
|
|
487
|
+
id: "38b831a8de4883e3d877f2169eaebde5864a2f256b1c5c790fa669702968cff9",
|
|
488
|
+
name: "requestSteer",
|
|
489
489
|
filename: "src/server/loopApi.ts"
|
|
490
|
-
}, (opts) =>
|
|
491
|
-
var
|
|
490
|
+
}, (opts) => requestSteer.__executeServer(opts));
|
|
491
|
+
var requestSteer = createServerFn({ method: "POST" }).validator((d) => d).handler(requestSteer_createServerFn_handler, async ({ data }) => {
|
|
492
492
|
const { scheduler } = await backend();
|
|
493
493
|
if (!await ownedLoop(data.id)) return { error: "not found" };
|
|
494
|
-
const instruction = data.instruction
|
|
495
|
-
if (!instruction) return { error:
|
|
496
|
-
const queued = await scheduler.
|
|
494
|
+
const instruction = validateSteerInstruction(data.instruction);
|
|
495
|
+
if (!instruction.ok) return { error: instruction.detail };
|
|
496
|
+
const queued = await scheduler.requestSteer(data.id, instruction.value);
|
|
497
497
|
if (!("run" in queued)) return { error: queued.reason };
|
|
498
498
|
return {
|
|
499
499
|
ok: true,
|
|
@@ -512,7 +512,7 @@ var stopRun = createServerFn({ method: "POST" }).validator((id) => id).handler(s
|
|
|
512
512
|
const run = await getRun(id);
|
|
513
513
|
const owned = run ? await ownedLoop(run.loopId) : void 0;
|
|
514
514
|
if (!run || !owned) return { error: "run not found" };
|
|
515
|
-
if (run.phase === "running" && (await getMachine(owned.loop.machineId))?.daemonProtocol !==
|
|
515
|
+
if (run.phase === "running" && (await getMachine(owned.loop.machineId))?.daemonProtocol !== 3) return { error: "Daemon upgrade required to stop a running process" };
|
|
516
516
|
const result = await requestRunCancel(run.loopId, id);
|
|
517
517
|
return result ? {
|
|
518
518
|
ok: true,
|
|
@@ -526,7 +526,7 @@ var mintClaim_createServerFn_handler = createServerRpc({
|
|
|
526
526
|
}, (opts) => mintClaim.__executeServer(opts));
|
|
527
527
|
var mintClaim = createServerFn({ method: "POST" }).validator((teamId) => teamId).handler(mintClaim_createServerFn_handler, async ({ data: teamId }) => {
|
|
528
528
|
await backend();
|
|
529
|
-
const { mintDeviceToken, rememberConnectKey } = await import("./tokens-
|
|
529
|
+
const { mintDeviceToken, rememberConnectKey } = await import("./tokens-7KEKpLnu.mjs");
|
|
530
530
|
const { userId, teamId: active } = await requestScope(teamId);
|
|
531
531
|
const owner = userId ?? "shared";
|
|
532
532
|
const token = mintDeviceToken();
|
|
@@ -551,4 +551,4 @@ var claimStatus = createServerFn({ method: "GET" }).validator((token) => token).
|
|
|
551
551
|
} : { done: false };
|
|
552
552
|
});
|
|
553
553
|
//#endregion
|
|
554
|
-
export { canViewTeam_createServerFn_handler, claimStatus_createServerFn_handler, deleteJob_createServerFn_handler, evolveJob_createServerFn_handler, forceDeleteJob_createServerFn_handler, getArtifact_createServerFn_handler, getArtifacts_createServerFn_handler, getAuthState_createServerFn_handler, getConfig_createServerFn_handler, getDefaultTeam_createServerFn_handler, getJobDetail_createServerFn_handler, getRunDiff_createServerFn_handler, listJobs_createServerFn_handler, listMyTeams_createServerFn_handler, listTemplates_createServerFn_handler, loadOlderRuns_createServerFn_handler, mintClaim_createServerFn_handler, patchJob_createServerFn_handler, pauseJob_createServerFn_handler,
|
|
554
|
+
export { canViewTeam_createServerFn_handler, claimStatus_createServerFn_handler, deleteJob_createServerFn_handler, evolveJob_createServerFn_handler, forceDeleteJob_createServerFn_handler, getArtifact_createServerFn_handler, getArtifacts_createServerFn_handler, getAuthState_createServerFn_handler, getConfig_createServerFn_handler, getDefaultTeam_createServerFn_handler, getJobDetail_createServerFn_handler, getRunDiff_createServerFn_handler, listJobs_createServerFn_handler, listMyTeams_createServerFn_handler, listTemplates_createServerFn_handler, loadOlderRuns_createServerFn_handler, mintClaim_createServerFn_handler, patchJob_createServerFn_handler, pauseJob_createServerFn_handler, requestSteer_createServerFn_handler, runJob_createServerFn_handler, startJob_createServerFn_handler, stopJob_createServerFn_handler, stopRun_createServerFn_handler };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { c as createFileRoute, s as lazyRouteComponent } from "../_libs/@tanstack/react-router+[...].mjs";
|
|
2
|
-
import { c as getAuthState } from "./loopApi-
|
|
3
|
-
import { a as authClient } from "./LoopPlaybook-
|
|
4
|
-
//#region node_modules/.nitro/vite/services/ssr/assets/loops._loopId-
|
|
5
|
-
var $$splitComponentImporter = () => import("./loops._loopId-
|
|
2
|
+
import { c as getAuthState } from "./loopApi-7MTSs6hy.mjs";
|
|
3
|
+
import { a as authClient } from "./LoopPlaybook-WFNer22Y.mjs";
|
|
4
|
+
//#region node_modules/.nitro/vite/services/ssr/assets/loops._loopId-6Q0DMXU0.js
|
|
5
|
+
var $$splitComponentImporter = () => import("./loops._loopId-C0x0SE8F.mjs");
|
|
6
6
|
/**
|
|
7
7
|
* Loop detail PAGE — `/loops/$loopId`. The dedicated page that replaced the old
|
|
8
8
|
* dashboard modal: a loop header + action toolbar, the unified Files panel (task
|