@getpaseo/server 0.1.97-beta.3 → 0.1.98
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/server/server/agent/agent-manager.d.ts +11 -3
- package/dist/server/server/agent/agent-manager.js +95 -23
- package/dist/server/server/agent/agent-prompt.d.ts +1 -1
- package/dist/server/server/agent/agent-prompt.js +3 -10
- package/dist/server/server/agent/agent-response-loop.js +9 -3
- package/dist/server/server/agent/agent-sdk-types.d.ts +9 -3
- package/dist/server/server/agent/agent-storage.d.ts +20 -240
- package/dist/server/server/agent/agent-storage.js +6 -6
- package/dist/server/server/agent/create-agent/create.d.ts +2 -0
- package/dist/server/server/agent/create-agent/create.js +8 -7
- package/dist/server/server/agent/lifecycle-command.d.ts +15 -1
- package/dist/server/server/agent/lifecycle-command.js +9 -2
- package/dist/server/server/agent/mcp-server.js +263 -119
- package/dist/server/server/agent/mcp-shared.d.ts +35 -179
- package/dist/server/server/agent/provider-notices.d.ts +3 -0
- package/dist/server/server/agent/provider-notices.js +5 -0
- package/dist/server/server/agent/provider-registry.d.ts +2 -0
- package/dist/server/server/agent/provider-registry.js +10 -3
- package/dist/server/server/agent/provider-snapshot-manager.d.ts +3 -0
- package/dist/server/server/agent/provider-snapshot-manager.js +11 -2
- package/dist/server/server/agent/providers/claude/agent.js +257 -143
- package/dist/server/server/agent/providers/claude/models.js +7 -3
- package/dist/server/server/agent/providers/claude/project-dir.js +9 -6
- package/dist/server/server/agent/providers/claude/task-notification-tool-call.d.ts +2 -22
- package/dist/server/server/agent/providers/codex/app-server-transport.d.ts +8 -118
- package/dist/server/server/agent/providers/codex-app-server-agent.d.ts +4 -3
- package/dist/server/server/agent/providers/codex-app-server-agent.js +43 -1
- package/dist/server/server/agent/providers/copilot-acp-agent.js +4 -1
- package/dist/server/server/agent/providers/diagnostic-utils.d.ts +9 -0
- package/dist/server/server/agent/providers/diagnostic-utils.js +188 -0
- package/dist/server/server/agent/providers/generic-acp-agent.d.ts +1 -5
- package/dist/server/server/agent/providers/mock-slow-provider.js +1 -1
- package/dist/server/server/agent/providers/opencode/server-manager.d.ts +29 -2
- package/dist/server/server/agent/providers/opencode/server-manager.js +83 -17
- package/dist/server/server/agent/providers/opencode-agent.d.ts +2 -0
- package/dist/server/server/agent/providers/opencode-agent.js +14 -9
- package/dist/server/server/agent/providers/pi/agent.d.ts +1 -5
- package/dist/server/server/agent/providers/pi/agent.js +27 -14
- package/dist/server/server/agent/providers/tool-call-detail-primitives.d.ts +391 -1261
- package/dist/server/server/agent/providers/tool-call-detail-primitives.js +26 -16
- package/dist/server/server/bootstrap.d.ts +2 -0
- package/dist/server/server/bootstrap.js +32 -2
- package/dist/server/server/loop-service.d.ts +60 -359
- package/dist/server/server/managed-processes/managed-processes.d.ts +76 -0
- package/dist/server/server/managed-processes/managed-processes.js +326 -0
- package/dist/server/server/migrations/backfill-workspace-id.migration.js +10 -6
- package/dist/server/server/package-version.d.ts +1 -7
- package/dist/server/server/paseo-worktree-service.js +15 -1
- package/dist/server/server/persisted-config.d.ts +138 -1009
- package/dist/server/server/persisted-config.js +1 -1
- package/dist/server/server/pid-lock.d.ts +1 -15
- package/dist/server/server/resolve-worktree-creation-intent.d.ts +3 -0
- package/dist/server/server/resolve-worktree-creation-intent.js +3 -3
- package/dist/server/server/session.d.ts +18 -1
- package/dist/server/server/session.js +424 -64
- package/dist/server/server/speech/providers/local/sherpa/model-catalog.d.ts +2 -2
- package/dist/server/server/speech/providers/openai/runtime.js +3 -4
- package/dist/server/server/speech/speech-types.d.ts +9 -11
- package/dist/server/server/websocket-server.d.ts +1 -0
- package/dist/server/server/websocket-server.js +15 -0
- package/dist/server/server/workspace-archive-service.js +2 -3
- package/dist/server/server/workspace-directory.js +5 -5
- package/dist/server/server/workspace-reconciliation-service.js +2 -2
- package/dist/server/server/workspace-registry.d.ts +17 -48
- package/dist/server/server/workspace-registry.js +9 -0
- package/dist/server/server/worktree-core.d.ts +1 -0
- package/dist/server/server/worktree-core.js +5 -1
- package/dist/server/services/quota-fetcher/manifest.d.ts +4 -0
- package/dist/server/services/quota-fetcher/manifest.js +47 -0
- package/dist/server/services/quota-fetcher/provider.d.ts +17 -0
- package/dist/server/services/quota-fetcher/provider.js +2 -0
- package/dist/server/services/quota-fetcher/providers/claude.d.ts +26 -0
- package/dist/server/services/quota-fetcher/providers/claude.js +217 -0
- package/dist/server/services/quota-fetcher/providers/codex.d.ts +23 -0
- package/dist/server/services/quota-fetcher/providers/codex.js +211 -0
- package/dist/server/services/quota-fetcher/providers/copilot.d.ts +17 -0
- package/dist/server/services/quota-fetcher/providers/copilot.js +75 -0
- package/dist/server/services/quota-fetcher/providers/cursor.d.ts +17 -0
- package/dist/server/services/quota-fetcher/providers/cursor.js +123 -0
- package/dist/server/services/quota-fetcher/providers/grok.d.ts +18 -0
- package/dist/server/services/quota-fetcher/providers/grok.js +89 -0
- package/dist/server/services/quota-fetcher/providers/kimi.d.ts +20 -0
- package/dist/server/services/quota-fetcher/providers/kimi.js +89 -0
- package/dist/server/services/quota-fetcher/providers/zai.d.ts +17 -0
- package/dist/server/services/quota-fetcher/providers/zai.js +58 -0
- package/dist/server/services/quota-fetcher/service.d.ts +28 -0
- package/dist/server/services/quota-fetcher/service.js +58 -0
- package/dist/server/services/quota-fetcher/usage.d.ts +22 -0
- package/dist/server/services/quota-fetcher/usage.js +49 -0
- package/dist/server/terminal/terminal-session-controller.d.ts +8 -0
- package/dist/server/terminal/terminal-session-controller.js +23 -3
- package/dist/server/utils/checkout-git.js +36 -76
- package/dist/server/utils/directory-suggestions.js +98 -2
- package/dist/server/utils/worktree-metadata.d.ts +7 -59
- package/dist/src/server/persisted-config.js +1 -1
- package/package.json +9 -9
|
@@ -370,7 +370,10 @@ const ToolReadOutputPathSchema = z.union([
|
|
|
370
370
|
})),
|
|
371
371
|
]);
|
|
372
372
|
export const ToolReadOutputSchema = ToolReadOutputContentSchema;
|
|
373
|
-
export const ToolReadOutputWithPathSchema = z.union([
|
|
373
|
+
export const ToolReadOutputWithPathSchema = z.union([
|
|
374
|
+
ToolReadOutputContentSchema,
|
|
375
|
+
ToolReadOutputPathSchema,
|
|
376
|
+
]);
|
|
374
377
|
export const ToolWriteContentSchema = z
|
|
375
378
|
.object({
|
|
376
379
|
content: z.string().optional(),
|
|
@@ -735,34 +738,41 @@ export function toFetchToolDetail(input, output) {
|
|
|
735
738
|
};
|
|
736
739
|
}
|
|
737
740
|
export function toolDetailBranchByName(name, inputSchema, outputSchema, mapper) {
|
|
738
|
-
const
|
|
741
|
+
const shape = {
|
|
739
742
|
name: z.literal(name),
|
|
740
|
-
input:
|
|
741
|
-
output:
|
|
742
|
-
}
|
|
743
|
+
input: z.nullable(inputSchema),
|
|
744
|
+
output: z.nullable(outputSchema),
|
|
745
|
+
};
|
|
746
|
+
const schema = z.object(shape);
|
|
743
747
|
return schema.transform((value) => {
|
|
744
|
-
|
|
748
|
+
// Zod v4 drops generic unknown-valued shape fields from object output inference here.
|
|
749
|
+
const parsedValue = value;
|
|
750
|
+
return mapper(parsedValue.input, parsedValue.output);
|
|
745
751
|
});
|
|
746
752
|
}
|
|
747
753
|
export function toolDetailBranchByToolName(toolName, inputSchema, outputSchema, mapper) {
|
|
748
|
-
const
|
|
754
|
+
const shape = {
|
|
749
755
|
toolName: z.literal(toolName),
|
|
750
|
-
input:
|
|
751
|
-
output:
|
|
752
|
-
}
|
|
756
|
+
input: z.nullable(inputSchema),
|
|
757
|
+
output: z.nullable(outputSchema),
|
|
758
|
+
};
|
|
759
|
+
const schema = z.object(shape);
|
|
753
760
|
return schema.transform((value) => {
|
|
754
|
-
|
|
761
|
+
const parsedValue = value;
|
|
762
|
+
return mapper(parsedValue.input, parsedValue.output);
|
|
755
763
|
});
|
|
756
764
|
}
|
|
757
765
|
export function toolDetailBranchByNameWithCwd(name, inputSchema, outputSchema, mapper) {
|
|
758
|
-
const
|
|
766
|
+
const shape = {
|
|
759
767
|
name: z.literal(name),
|
|
760
|
-
input:
|
|
761
|
-
output:
|
|
768
|
+
input: z.nullable(inputSchema),
|
|
769
|
+
output: z.nullable(outputSchema),
|
|
762
770
|
cwd: z.string().optional().nullable(),
|
|
763
|
-
}
|
|
771
|
+
};
|
|
772
|
+
const schema = z.object(shape);
|
|
764
773
|
return schema.transform((value) => {
|
|
765
|
-
|
|
774
|
+
const parsedValue = value;
|
|
775
|
+
return mapper(parsedValue.input, parsedValue.output, parsedValue.cwd ?? null);
|
|
766
776
|
});
|
|
767
777
|
}
|
|
768
778
|
//# sourceMappingURL=tool-call-detail-primitives.js.map
|
|
@@ -25,6 +25,7 @@ import type { AgentProviderRuntimeSettingsMap, ProviderOverride } from "./agent/
|
|
|
25
25
|
import type { PersistedConfig } from "./persisted-config.js";
|
|
26
26
|
import { type ServiceProxySubsystem } from "./service-proxy.js";
|
|
27
27
|
import { WorkspaceScriptRuntimeStore } from "./workspace-script-runtime-store.js";
|
|
28
|
+
import { type ManagedProcessRegistry } from "./managed-processes/managed-processes.js";
|
|
28
29
|
import { type HostnamesConfig } from "./hostnames.js";
|
|
29
30
|
import { type DaemonAuthConfig } from "./auth.js";
|
|
30
31
|
export declare function createTerminalActivityRouteHandler(terminalManager: TerminalManager): express.RequestHandler;
|
|
@@ -97,6 +98,7 @@ export interface PaseoDaemonConfig {
|
|
|
97
98
|
log?: PersistedConfig["log"];
|
|
98
99
|
onLifecycleIntent?: (intent: DaemonLifecycleIntent) => void;
|
|
99
100
|
pushNotificationSender?: PushNotificationSender;
|
|
101
|
+
managedProcesses?: ManagedProcessRegistry;
|
|
100
102
|
}
|
|
101
103
|
export interface PaseoDaemon {
|
|
102
104
|
config: PaseoDaemonConfig;
|
|
@@ -52,12 +52,15 @@ export function parseListenString(listen) {
|
|
|
52
52
|
}
|
|
53
53
|
// 6. host:port — TCP
|
|
54
54
|
if (listen.includes(":")) {
|
|
55
|
-
const
|
|
55
|
+
const lastColonIdx = listen.lastIndexOf(":");
|
|
56
|
+
const host = listen.slice(0, lastColonIdx);
|
|
57
|
+
const portStr = listen.slice(lastColonIdx + 1);
|
|
56
58
|
const parsedPort = parseInt(portStr, 10);
|
|
57
59
|
if (!Number.isFinite(parsedPort)) {
|
|
58
60
|
throw new Error(`Invalid port in listen string: ${listen}`);
|
|
59
61
|
}
|
|
60
|
-
|
|
62
|
+
const cleanHost = host.startsWith("[") && host.endsWith("]") ? host.slice(1, -1) : host;
|
|
63
|
+
return { type: "tcp", host: cleanHost || "127.0.0.1", port: parsedPort };
|
|
61
64
|
}
|
|
62
65
|
throw new Error(`Invalid listen string: ${listen}`);
|
|
63
66
|
}
|
|
@@ -105,6 +108,8 @@ import { createServiceProxySubsystem } from "./service-proxy.js";
|
|
|
105
108
|
import { ScriptHealthMonitor } from "./script-health-monitor.js";
|
|
106
109
|
import { createScriptStatusEmitter } from "./script-status-projection.js";
|
|
107
110
|
import { WorkspaceScriptRuntimeStore } from "./workspace-script-runtime-store.js";
|
|
111
|
+
import { createManagedProcessRegistry, createSystemManagedProcessTable, } from "./managed-processes/managed-processes.js";
|
|
112
|
+
import { terminateWithTreeKill } from "../utils/tree-kill.js";
|
|
108
113
|
import { isHostnameAllowed } from "./hostnames.js";
|
|
109
114
|
import { createRequireBearerMiddleware, isAgentMcpRequestAuthorized, } from "./auth.js";
|
|
110
115
|
const MAX_MCP_DEBUG_BATCH_ITEMS = 10;
|
|
@@ -207,6 +212,23 @@ function summarizeAgentMcpDebugBody(body) {
|
|
|
207
212
|
...(body.length > messages.length ? { omitted: body.length - messages.length } : {}),
|
|
208
213
|
};
|
|
209
214
|
}
|
|
215
|
+
function createBootstrapManagedProcessRegistry(config, logger) {
|
|
216
|
+
if (config.managedProcesses) {
|
|
217
|
+
return config.managedProcesses;
|
|
218
|
+
}
|
|
219
|
+
return createManagedProcessRegistry({
|
|
220
|
+
paseoHome: config.paseoHome,
|
|
221
|
+
processTable: createSystemManagedProcessTable(),
|
|
222
|
+
terminateProcess: terminateWithTreeKill,
|
|
223
|
+
logger,
|
|
224
|
+
});
|
|
225
|
+
}
|
|
226
|
+
async function reconcileManagedProcessLedger(managedProcesses, logger) {
|
|
227
|
+
const reapResult = await managedProcesses.reapStale();
|
|
228
|
+
if (reapResult.checked > 0 || reapResult.errors.length > 0) {
|
|
229
|
+
logger.info(reapResult, "Managed helper process ledger reconciled");
|
|
230
|
+
}
|
|
231
|
+
}
|
|
210
232
|
export async function createPaseoDaemon(config, rootLogger) {
|
|
211
233
|
const logger = rootLogger.child({ module: "bootstrap" });
|
|
212
234
|
const bootstrapStart = performance.now();
|
|
@@ -233,6 +255,13 @@ export async function createPaseoDaemon(config, rootLogger) {
|
|
|
233
255
|
}, logger);
|
|
234
256
|
const serverId = getOrCreateServerId(config.paseoHome, { logger });
|
|
235
257
|
const daemonKeyPair = await loadOrCreateDaemonKeyPair(config.paseoHome, logger);
|
|
258
|
+
const managedProcesses = createBootstrapManagedProcessRegistry(config, logger);
|
|
259
|
+
// Reconcile the helper-process ledger in the background so it never blocks the
|
|
260
|
+
// daemon from coming up; terminating a live leftover can take a few seconds.
|
|
261
|
+
// Best-effort, so a failure is logged here rather than crashing startup.
|
|
262
|
+
void reconcileManagedProcessLedger(managedProcesses, logger).catch((error) => {
|
|
263
|
+
logger.warn({ err: error }, "Failed to reconcile managed helper process ledger");
|
|
264
|
+
});
|
|
236
265
|
let relayTransport = null;
|
|
237
266
|
const staticDir = config.staticDir;
|
|
238
267
|
const downloadTokenTtlMs = config.downloadTokenTtlMs ?? 60000;
|
|
@@ -434,6 +463,7 @@ export async function createPaseoDaemon(config, rootLogger) {
|
|
|
434
463
|
runtimeSettings: config.agentProviderSettings,
|
|
435
464
|
providerOverrides: config.providerOverrides,
|
|
436
465
|
workspaceGitService,
|
|
466
|
+
managedProcesses,
|
|
437
467
|
isDev: config.isDev === true,
|
|
438
468
|
extraClients: config.agentClients,
|
|
439
469
|
});
|
|
@@ -7,24 +7,18 @@ declare const LoopLogEntrySchema: z.ZodObject<{
|
|
|
7
7
|
seq: z.ZodNumber;
|
|
8
8
|
timestamp: z.ZodString;
|
|
9
9
|
iteration: z.ZodNullable<z.ZodNumber>;
|
|
10
|
-
source: z.ZodEnum<
|
|
11
|
-
|
|
10
|
+
source: z.ZodEnum<{
|
|
11
|
+
loop: "loop";
|
|
12
|
+
worker: "worker";
|
|
13
|
+
verifier: "verifier";
|
|
14
|
+
"verify-check": "verify-check";
|
|
15
|
+
}>;
|
|
16
|
+
level: z.ZodEnum<{
|
|
17
|
+
error: "error";
|
|
18
|
+
info: "info";
|
|
19
|
+
}>;
|
|
12
20
|
text: z.ZodString;
|
|
13
|
-
},
|
|
14
|
-
text: string;
|
|
15
|
-
level: "error" | "info";
|
|
16
|
-
seq: number;
|
|
17
|
-
timestamp: string;
|
|
18
|
-
source: "loop" | "worker" | "verifier" | "verify-check";
|
|
19
|
-
iteration: number | null;
|
|
20
|
-
}, {
|
|
21
|
-
text: string;
|
|
22
|
-
level: "error" | "info";
|
|
23
|
-
seq: number;
|
|
24
|
-
timestamp: string;
|
|
25
|
-
source: "loop" | "worker" | "verifier" | "verify-check";
|
|
26
|
-
iteration: number | null;
|
|
27
|
-
}>;
|
|
21
|
+
}, z.core.$strip>;
|
|
28
22
|
declare const LoopVerifyCheckResultSchema: z.ZodObject<{
|
|
29
23
|
command: z.ZodString;
|
|
30
24
|
exitCode: z.ZodNumber;
|
|
@@ -33,50 +27,31 @@ declare const LoopVerifyCheckResultSchema: z.ZodObject<{
|
|
|
33
27
|
stderr: z.ZodString;
|
|
34
28
|
startedAt: z.ZodString;
|
|
35
29
|
completedAt: z.ZodString;
|
|
36
|
-
},
|
|
37
|
-
stdout: string;
|
|
38
|
-
exitCode: number;
|
|
39
|
-
command: string;
|
|
40
|
-
stderr: string;
|
|
41
|
-
startedAt: string;
|
|
42
|
-
completedAt: string;
|
|
43
|
-
passed: boolean;
|
|
44
|
-
}, {
|
|
45
|
-
stdout: string;
|
|
46
|
-
exitCode: number;
|
|
47
|
-
command: string;
|
|
48
|
-
stderr: string;
|
|
49
|
-
startedAt: string;
|
|
50
|
-
completedAt: string;
|
|
51
|
-
passed: boolean;
|
|
52
|
-
}>;
|
|
30
|
+
}, z.core.$strip>;
|
|
53
31
|
declare const LoopVerifyPromptResultSchema: z.ZodObject<{
|
|
54
32
|
passed: z.ZodBoolean;
|
|
55
33
|
reason: z.ZodString;
|
|
56
34
|
verifierAgentId: z.ZodNullable<z.ZodString>;
|
|
57
35
|
startedAt: z.ZodString;
|
|
58
36
|
completedAt: z.ZodString;
|
|
59
|
-
},
|
|
60
|
-
startedAt: string;
|
|
61
|
-
completedAt: string;
|
|
62
|
-
reason: string;
|
|
63
|
-
passed: boolean;
|
|
64
|
-
verifierAgentId: string | null;
|
|
65
|
-
}, {
|
|
66
|
-
startedAt: string;
|
|
67
|
-
completedAt: string;
|
|
68
|
-
reason: string;
|
|
69
|
-
passed: boolean;
|
|
70
|
-
verifierAgentId: string | null;
|
|
71
|
-
}>;
|
|
37
|
+
}, z.core.$strip>;
|
|
72
38
|
declare const LoopIterationRecordSchema: z.ZodObject<{
|
|
73
39
|
index: z.ZodNumber;
|
|
74
40
|
workerAgentId: z.ZodNullable<z.ZodString>;
|
|
75
41
|
workerStartedAt: z.ZodString;
|
|
76
42
|
workerCompletedAt: z.ZodNullable<z.ZodString>;
|
|
77
43
|
verifierAgentId: z.ZodNullable<z.ZodString>;
|
|
78
|
-
status: z.ZodEnum<
|
|
79
|
-
|
|
44
|
+
status: z.ZodEnum<{
|
|
45
|
+
running: "running";
|
|
46
|
+
failed: "failed";
|
|
47
|
+
succeeded: "succeeded";
|
|
48
|
+
stopped: "stopped";
|
|
49
|
+
}>;
|
|
50
|
+
workerOutcome: z.ZodNullable<z.ZodEnum<{
|
|
51
|
+
completed: "completed";
|
|
52
|
+
failed: "failed";
|
|
53
|
+
canceled: "canceled";
|
|
54
|
+
}>>;
|
|
80
55
|
failureReason: z.ZodNullable<z.ZodString>;
|
|
81
56
|
verifyChecks: z.ZodArray<z.ZodObject<{
|
|
82
57
|
command: z.ZodString;
|
|
@@ -86,93 +61,15 @@ declare const LoopIterationRecordSchema: z.ZodObject<{
|
|
|
86
61
|
stderr: z.ZodString;
|
|
87
62
|
startedAt: z.ZodString;
|
|
88
63
|
completedAt: z.ZodString;
|
|
89
|
-
},
|
|
90
|
-
stdout: string;
|
|
91
|
-
exitCode: number;
|
|
92
|
-
command: string;
|
|
93
|
-
stderr: string;
|
|
94
|
-
startedAt: string;
|
|
95
|
-
completedAt: string;
|
|
96
|
-
passed: boolean;
|
|
97
|
-
}, {
|
|
98
|
-
stdout: string;
|
|
99
|
-
exitCode: number;
|
|
100
|
-
command: string;
|
|
101
|
-
stderr: string;
|
|
102
|
-
startedAt: string;
|
|
103
|
-
completedAt: string;
|
|
104
|
-
passed: boolean;
|
|
105
|
-
}>, "many">;
|
|
64
|
+
}, z.core.$strip>>;
|
|
106
65
|
verifyPrompt: z.ZodNullable<z.ZodObject<{
|
|
107
66
|
passed: z.ZodBoolean;
|
|
108
67
|
reason: z.ZodString;
|
|
109
68
|
verifierAgentId: z.ZodNullable<z.ZodString>;
|
|
110
69
|
startedAt: z.ZodString;
|
|
111
70
|
completedAt: z.ZodString;
|
|
112
|
-
},
|
|
113
|
-
|
|
114
|
-
completedAt: string;
|
|
115
|
-
reason: string;
|
|
116
|
-
passed: boolean;
|
|
117
|
-
verifierAgentId: string | null;
|
|
118
|
-
}, {
|
|
119
|
-
startedAt: string;
|
|
120
|
-
completedAt: string;
|
|
121
|
-
reason: string;
|
|
122
|
-
passed: boolean;
|
|
123
|
-
verifierAgentId: string | null;
|
|
124
|
-
}>>;
|
|
125
|
-
}, "strip", z.ZodTypeAny, {
|
|
126
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
127
|
-
index: number;
|
|
128
|
-
verifierAgentId: string | null;
|
|
129
|
-
workerAgentId: string | null;
|
|
130
|
-
workerStartedAt: string;
|
|
131
|
-
workerCompletedAt: string | null;
|
|
132
|
-
workerOutcome: "completed" | "failed" | "canceled" | null;
|
|
133
|
-
failureReason: string | null;
|
|
134
|
-
verifyChecks: {
|
|
135
|
-
stdout: string;
|
|
136
|
-
exitCode: number;
|
|
137
|
-
command: string;
|
|
138
|
-
stderr: string;
|
|
139
|
-
startedAt: string;
|
|
140
|
-
completedAt: string;
|
|
141
|
-
passed: boolean;
|
|
142
|
-
}[];
|
|
143
|
-
verifyPrompt: {
|
|
144
|
-
startedAt: string;
|
|
145
|
-
completedAt: string;
|
|
146
|
-
reason: string;
|
|
147
|
-
passed: boolean;
|
|
148
|
-
verifierAgentId: string | null;
|
|
149
|
-
} | null;
|
|
150
|
-
}, {
|
|
151
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
152
|
-
index: number;
|
|
153
|
-
verifierAgentId: string | null;
|
|
154
|
-
workerAgentId: string | null;
|
|
155
|
-
workerStartedAt: string;
|
|
156
|
-
workerCompletedAt: string | null;
|
|
157
|
-
workerOutcome: "completed" | "failed" | "canceled" | null;
|
|
158
|
-
failureReason: string | null;
|
|
159
|
-
verifyChecks: {
|
|
160
|
-
stdout: string;
|
|
161
|
-
exitCode: number;
|
|
162
|
-
command: string;
|
|
163
|
-
stderr: string;
|
|
164
|
-
startedAt: string;
|
|
165
|
-
completedAt: string;
|
|
166
|
-
passed: boolean;
|
|
167
|
-
}[];
|
|
168
|
-
verifyPrompt: {
|
|
169
|
-
startedAt: string;
|
|
170
|
-
completedAt: string;
|
|
171
|
-
reason: string;
|
|
172
|
-
passed: boolean;
|
|
173
|
-
verifierAgentId: string | null;
|
|
174
|
-
} | null;
|
|
175
|
-
}>;
|
|
71
|
+
}, z.core.$strip>>;
|
|
72
|
+
}, z.core.$strip>;
|
|
176
73
|
declare const LoopRecordSchema: z.ZodObject<{
|
|
177
74
|
id: z.ZodString;
|
|
178
75
|
name: z.ZodNullable<z.ZodString>;
|
|
@@ -187,12 +84,17 @@ declare const LoopRecordSchema: z.ZodObject<{
|
|
|
187
84
|
verifierModel: z.ZodNullable<z.ZodString>;
|
|
188
85
|
verifierModeId: z.ZodDefault<z.ZodNullable<z.ZodString>>;
|
|
189
86
|
verifyPrompt: z.ZodNullable<z.ZodString>;
|
|
190
|
-
verifyChecks: z.ZodArray<z.ZodString
|
|
87
|
+
verifyChecks: z.ZodArray<z.ZodString>;
|
|
191
88
|
archive: z.ZodBoolean;
|
|
192
89
|
sleepMs: z.ZodNumber;
|
|
193
90
|
maxIterations: z.ZodNullable<z.ZodNumber>;
|
|
194
91
|
maxTimeMs: z.ZodNullable<z.ZodNumber>;
|
|
195
|
-
status: z.ZodEnum<
|
|
92
|
+
status: z.ZodEnum<{
|
|
93
|
+
running: "running";
|
|
94
|
+
failed: "failed";
|
|
95
|
+
succeeded: "succeeded";
|
|
96
|
+
stopped: "stopped";
|
|
97
|
+
}>;
|
|
196
98
|
createdAt: z.ZodString;
|
|
197
99
|
updatedAt: z.ZodString;
|
|
198
100
|
startedAt: z.ZodString;
|
|
@@ -204,8 +106,17 @@ declare const LoopRecordSchema: z.ZodObject<{
|
|
|
204
106
|
workerStartedAt: z.ZodString;
|
|
205
107
|
workerCompletedAt: z.ZodNullable<z.ZodString>;
|
|
206
108
|
verifierAgentId: z.ZodNullable<z.ZodString>;
|
|
207
|
-
status: z.ZodEnum<
|
|
208
|
-
|
|
109
|
+
status: z.ZodEnum<{
|
|
110
|
+
running: "running";
|
|
111
|
+
failed: "failed";
|
|
112
|
+
succeeded: "succeeded";
|
|
113
|
+
stopped: "stopped";
|
|
114
|
+
}>;
|
|
115
|
+
workerOutcome: z.ZodNullable<z.ZodEnum<{
|
|
116
|
+
completed: "completed";
|
|
117
|
+
failed: "failed";
|
|
118
|
+
canceled: "canceled";
|
|
119
|
+
}>>;
|
|
209
120
|
failureReason: z.ZodNullable<z.ZodString>;
|
|
210
121
|
verifyChecks: z.ZodArray<z.ZodObject<{
|
|
211
122
|
command: z.ZodString;
|
|
@@ -215,246 +126,36 @@ declare const LoopRecordSchema: z.ZodObject<{
|
|
|
215
126
|
stderr: z.ZodString;
|
|
216
127
|
startedAt: z.ZodString;
|
|
217
128
|
completedAt: z.ZodString;
|
|
218
|
-
},
|
|
219
|
-
stdout: string;
|
|
220
|
-
exitCode: number;
|
|
221
|
-
command: string;
|
|
222
|
-
stderr: string;
|
|
223
|
-
startedAt: string;
|
|
224
|
-
completedAt: string;
|
|
225
|
-
passed: boolean;
|
|
226
|
-
}, {
|
|
227
|
-
stdout: string;
|
|
228
|
-
exitCode: number;
|
|
229
|
-
command: string;
|
|
230
|
-
stderr: string;
|
|
231
|
-
startedAt: string;
|
|
232
|
-
completedAt: string;
|
|
233
|
-
passed: boolean;
|
|
234
|
-
}>, "many">;
|
|
129
|
+
}, z.core.$strip>>;
|
|
235
130
|
verifyPrompt: z.ZodNullable<z.ZodObject<{
|
|
236
131
|
passed: z.ZodBoolean;
|
|
237
132
|
reason: z.ZodString;
|
|
238
133
|
verifierAgentId: z.ZodNullable<z.ZodString>;
|
|
239
134
|
startedAt: z.ZodString;
|
|
240
135
|
completedAt: z.ZodString;
|
|
241
|
-
},
|
|
242
|
-
|
|
243
|
-
completedAt: string;
|
|
244
|
-
reason: string;
|
|
245
|
-
passed: boolean;
|
|
246
|
-
verifierAgentId: string | null;
|
|
247
|
-
}, {
|
|
248
|
-
startedAt: string;
|
|
249
|
-
completedAt: string;
|
|
250
|
-
reason: string;
|
|
251
|
-
passed: boolean;
|
|
252
|
-
verifierAgentId: string | null;
|
|
253
|
-
}>>;
|
|
254
|
-
}, "strip", z.ZodTypeAny, {
|
|
255
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
256
|
-
index: number;
|
|
257
|
-
verifierAgentId: string | null;
|
|
258
|
-
workerAgentId: string | null;
|
|
259
|
-
workerStartedAt: string;
|
|
260
|
-
workerCompletedAt: string | null;
|
|
261
|
-
workerOutcome: "completed" | "failed" | "canceled" | null;
|
|
262
|
-
failureReason: string | null;
|
|
263
|
-
verifyChecks: {
|
|
264
|
-
stdout: string;
|
|
265
|
-
exitCode: number;
|
|
266
|
-
command: string;
|
|
267
|
-
stderr: string;
|
|
268
|
-
startedAt: string;
|
|
269
|
-
completedAt: string;
|
|
270
|
-
passed: boolean;
|
|
271
|
-
}[];
|
|
272
|
-
verifyPrompt: {
|
|
273
|
-
startedAt: string;
|
|
274
|
-
completedAt: string;
|
|
275
|
-
reason: string;
|
|
276
|
-
passed: boolean;
|
|
277
|
-
verifierAgentId: string | null;
|
|
278
|
-
} | null;
|
|
279
|
-
}, {
|
|
280
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
281
|
-
index: number;
|
|
282
|
-
verifierAgentId: string | null;
|
|
283
|
-
workerAgentId: string | null;
|
|
284
|
-
workerStartedAt: string;
|
|
285
|
-
workerCompletedAt: string | null;
|
|
286
|
-
workerOutcome: "completed" | "failed" | "canceled" | null;
|
|
287
|
-
failureReason: string | null;
|
|
288
|
-
verifyChecks: {
|
|
289
|
-
stdout: string;
|
|
290
|
-
exitCode: number;
|
|
291
|
-
command: string;
|
|
292
|
-
stderr: string;
|
|
293
|
-
startedAt: string;
|
|
294
|
-
completedAt: string;
|
|
295
|
-
passed: boolean;
|
|
296
|
-
}[];
|
|
297
|
-
verifyPrompt: {
|
|
298
|
-
startedAt: string;
|
|
299
|
-
completedAt: string;
|
|
300
|
-
reason: string;
|
|
301
|
-
passed: boolean;
|
|
302
|
-
verifierAgentId: string | null;
|
|
303
|
-
} | null;
|
|
304
|
-
}>, "many">;
|
|
136
|
+
}, z.core.$strip>>;
|
|
137
|
+
}, z.core.$strip>>;
|
|
305
138
|
logs: z.ZodArray<z.ZodObject<{
|
|
306
139
|
seq: z.ZodNumber;
|
|
307
140
|
timestamp: z.ZodString;
|
|
308
141
|
iteration: z.ZodNullable<z.ZodNumber>;
|
|
309
|
-
source: z.ZodEnum<
|
|
310
|
-
|
|
142
|
+
source: z.ZodEnum<{
|
|
143
|
+
loop: "loop";
|
|
144
|
+
worker: "worker";
|
|
145
|
+
verifier: "verifier";
|
|
146
|
+
"verify-check": "verify-check";
|
|
147
|
+
}>;
|
|
148
|
+
level: z.ZodEnum<{
|
|
149
|
+
error: "error";
|
|
150
|
+
info: "info";
|
|
151
|
+
}>;
|
|
311
152
|
text: z.ZodString;
|
|
312
|
-
},
|
|
313
|
-
text: string;
|
|
314
|
-
level: "error" | "info";
|
|
315
|
-
seq: number;
|
|
316
|
-
timestamp: string;
|
|
317
|
-
source: "loop" | "worker" | "verifier" | "verify-check";
|
|
318
|
-
iteration: number | null;
|
|
319
|
-
}, {
|
|
320
|
-
text: string;
|
|
321
|
-
level: "error" | "info";
|
|
322
|
-
seq: number;
|
|
323
|
-
timestamp: string;
|
|
324
|
-
source: "loop" | "worker" | "verifier" | "verify-check";
|
|
325
|
-
iteration: number | null;
|
|
326
|
-
}>, "many">;
|
|
153
|
+
}, z.core.$strip>>;
|
|
327
154
|
nextLogSeq: z.ZodNumber;
|
|
328
155
|
activeIteration: z.ZodNullable<z.ZodNumber>;
|
|
329
156
|
activeWorkerAgentId: z.ZodNullable<z.ZodString>;
|
|
330
157
|
activeVerifierAgentId: z.ZodNullable<z.ZodString>;
|
|
331
|
-
},
|
|
332
|
-
cwd: string;
|
|
333
|
-
name: string | null;
|
|
334
|
-
id: string;
|
|
335
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
336
|
-
provider: string;
|
|
337
|
-
createdAt: string;
|
|
338
|
-
updatedAt: string;
|
|
339
|
-
modeId: string | null;
|
|
340
|
-
model: string | null;
|
|
341
|
-
startedAt: string;
|
|
342
|
-
completedAt: string | null;
|
|
343
|
-
prompt: string;
|
|
344
|
-
iterations: {
|
|
345
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
346
|
-
index: number;
|
|
347
|
-
verifierAgentId: string | null;
|
|
348
|
-
workerAgentId: string | null;
|
|
349
|
-
workerStartedAt: string;
|
|
350
|
-
workerCompletedAt: string | null;
|
|
351
|
-
workerOutcome: "completed" | "failed" | "canceled" | null;
|
|
352
|
-
failureReason: string | null;
|
|
353
|
-
verifyChecks: {
|
|
354
|
-
stdout: string;
|
|
355
|
-
exitCode: number;
|
|
356
|
-
command: string;
|
|
357
|
-
stderr: string;
|
|
358
|
-
startedAt: string;
|
|
359
|
-
completedAt: string;
|
|
360
|
-
passed: boolean;
|
|
361
|
-
}[];
|
|
362
|
-
verifyPrompt: {
|
|
363
|
-
startedAt: string;
|
|
364
|
-
completedAt: string;
|
|
365
|
-
reason: string;
|
|
366
|
-
passed: boolean;
|
|
367
|
-
verifierAgentId: string | null;
|
|
368
|
-
} | null;
|
|
369
|
-
}[];
|
|
370
|
-
verifyChecks: string[];
|
|
371
|
-
verifyPrompt: string | null;
|
|
372
|
-
workerProvider: string | null;
|
|
373
|
-
workerModel: string | null;
|
|
374
|
-
verifierProvider: string | null;
|
|
375
|
-
verifierModel: string | null;
|
|
376
|
-
verifierModeId: string | null;
|
|
377
|
-
archive: boolean;
|
|
378
|
-
sleepMs: number;
|
|
379
|
-
maxIterations: number | null;
|
|
380
|
-
maxTimeMs: number | null;
|
|
381
|
-
stopRequestedAt: string | null;
|
|
382
|
-
logs: {
|
|
383
|
-
text: string;
|
|
384
|
-
level: "error" | "info";
|
|
385
|
-
seq: number;
|
|
386
|
-
timestamp: string;
|
|
387
|
-
source: "loop" | "worker" | "verifier" | "verify-check";
|
|
388
|
-
iteration: number | null;
|
|
389
|
-
}[];
|
|
390
|
-
nextLogSeq: number;
|
|
391
|
-
activeIteration: number | null;
|
|
392
|
-
activeWorkerAgentId: string | null;
|
|
393
|
-
activeVerifierAgentId: string | null;
|
|
394
|
-
}, {
|
|
395
|
-
cwd: string;
|
|
396
|
-
name: string | null;
|
|
397
|
-
id: string;
|
|
398
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
399
|
-
provider: string;
|
|
400
|
-
createdAt: string;
|
|
401
|
-
updatedAt: string;
|
|
402
|
-
model: string | null;
|
|
403
|
-
startedAt: string;
|
|
404
|
-
completedAt: string | null;
|
|
405
|
-
prompt: string;
|
|
406
|
-
iterations: {
|
|
407
|
-
status: "running" | "failed" | "succeeded" | "stopped";
|
|
408
|
-
index: number;
|
|
409
|
-
verifierAgentId: string | null;
|
|
410
|
-
workerAgentId: string | null;
|
|
411
|
-
workerStartedAt: string;
|
|
412
|
-
workerCompletedAt: string | null;
|
|
413
|
-
workerOutcome: "completed" | "failed" | "canceled" | null;
|
|
414
|
-
failureReason: string | null;
|
|
415
|
-
verifyChecks: {
|
|
416
|
-
stdout: string;
|
|
417
|
-
exitCode: number;
|
|
418
|
-
command: string;
|
|
419
|
-
stderr: string;
|
|
420
|
-
startedAt: string;
|
|
421
|
-
completedAt: string;
|
|
422
|
-
passed: boolean;
|
|
423
|
-
}[];
|
|
424
|
-
verifyPrompt: {
|
|
425
|
-
startedAt: string;
|
|
426
|
-
completedAt: string;
|
|
427
|
-
reason: string;
|
|
428
|
-
passed: boolean;
|
|
429
|
-
verifierAgentId: string | null;
|
|
430
|
-
} | null;
|
|
431
|
-
}[];
|
|
432
|
-
verifyChecks: string[];
|
|
433
|
-
verifyPrompt: string | null;
|
|
434
|
-
workerProvider: string | null;
|
|
435
|
-
workerModel: string | null;
|
|
436
|
-
verifierProvider: string | null;
|
|
437
|
-
verifierModel: string | null;
|
|
438
|
-
archive: boolean;
|
|
439
|
-
sleepMs: number;
|
|
440
|
-
maxIterations: number | null;
|
|
441
|
-
maxTimeMs: number | null;
|
|
442
|
-
stopRequestedAt: string | null;
|
|
443
|
-
logs: {
|
|
444
|
-
text: string;
|
|
445
|
-
level: "error" | "info";
|
|
446
|
-
seq: number;
|
|
447
|
-
timestamp: string;
|
|
448
|
-
source: "loop" | "worker" | "verifier" | "verify-check";
|
|
449
|
-
iteration: number | null;
|
|
450
|
-
}[];
|
|
451
|
-
nextLogSeq: number;
|
|
452
|
-
activeIteration: number | null;
|
|
453
|
-
activeWorkerAgentId: string | null;
|
|
454
|
-
activeVerifierAgentId: string | null;
|
|
455
|
-
modeId?: string | null | undefined;
|
|
456
|
-
verifierModeId?: string | null | undefined;
|
|
457
|
-
}>;
|
|
158
|
+
}, z.core.$strip>;
|
|
458
159
|
export type LoopStatus = z.infer<typeof LoopRecordSchema>["status"];
|
|
459
160
|
export type LoopLogEntry = z.infer<typeof LoopLogEntrySchema>;
|
|
460
161
|
export type LoopVerifyCheckResult = z.infer<typeof LoopVerifyCheckResultSchema>;
|