@kortyx/telemetry-contracts 0.13.0 → 0.15.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/CHANGELOG.md +15 -0
- package/dist/index.d.ts +209 -3
- package/dist/index.js +623 -409
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -21,6 +21,13 @@ var index_exports = {};
|
|
|
21
21
|
__export(index_exports, {
|
|
22
22
|
ClearScoreResponseSchema: () => ClearScoreResponseSchema,
|
|
23
23
|
ClearUserFeedbackRequestSchema: () => ClearUserFeedbackRequestSchema,
|
|
24
|
+
DIAGNOSTIC_LIMITS: () => DIAGNOSTIC_LIMITS,
|
|
25
|
+
DiagnosticContentSchema: () => DiagnosticContentSchema,
|
|
26
|
+
DiagnosticCorrelationSchema: () => DiagnosticCorrelationSchema,
|
|
27
|
+
DiagnosticManifestSchema: () => DiagnosticManifestSchema,
|
|
28
|
+
DiagnosticNoteSchema: () => DiagnosticNoteSchema,
|
|
29
|
+
DiagnosticPartSchema: () => DiagnosticPartSchema,
|
|
30
|
+
DiagnosticResponseSchema: () => DiagnosticResponseSchema,
|
|
24
31
|
EnsureWorkflowTopologyRequestSchema: () => EnsureWorkflowTopologyRequestSchema,
|
|
25
32
|
EnsureWorkflowTopologyResponseSchema: () => EnsureWorkflowTopologyResponseSchema,
|
|
26
33
|
FEEDBACK_FILTERS: () => FEEDBACK_FILTERS,
|
|
@@ -94,15 +101,19 @@ __export(index_exports, {
|
|
|
94
101
|
WorkflowTopologyEdgeSchema: () => WorkflowTopologyEdgeSchema,
|
|
95
102
|
WorkflowTopologyNodeSchema: () => WorkflowTopologyNodeSchema,
|
|
96
103
|
WorkflowTopologyTransitionSchema: () => WorkflowTopologyTransitionSchema,
|
|
104
|
+
isPrivateDiagnosticField: () => isPrivateDiagnosticField,
|
|
97
105
|
newerStudioVersion: () => newerStudioVersion,
|
|
98
106
|
projectWorkflowCalls: () => projectWorkflowCalls,
|
|
107
|
+
redactDiagnosticContent: () => redactDiagnosticContent,
|
|
108
|
+
redactDiagnosticText: () => redactDiagnosticText,
|
|
99
109
|
resolveStudioInterruptStatus: () => resolveStudioInterruptStatus,
|
|
100
110
|
resolveStudioTimeRange: () => resolveStudioTimeRange,
|
|
101
111
|
studioUpdateRunning: () => studioUpdateRunning,
|
|
112
|
+
summarizeDiagnostic: () => summarizeDiagnostic,
|
|
102
113
|
summarizeUserFeedback: () => summarizeUserFeedback
|
|
103
114
|
});
|
|
104
115
|
module.exports = __toCommonJS(index_exports);
|
|
105
|
-
var
|
|
116
|
+
var import_zod5 = require("zod");
|
|
106
117
|
|
|
107
118
|
// src/scores.ts
|
|
108
119
|
var import_zod = require("zod");
|
|
@@ -177,94 +188,285 @@ function summarizeUserFeedback(scores) {
|
|
|
177
188
|
return feedback;
|
|
178
189
|
}
|
|
179
190
|
|
|
180
|
-
// src/
|
|
191
|
+
// src/diagnostics.ts
|
|
181
192
|
var import_zod2 = require("zod");
|
|
182
|
-
var
|
|
193
|
+
var DIAGNOSTIC_LIMITS = {
|
|
194
|
+
bytes: 8 * 1024 * 1024,
|
|
195
|
+
partBytes: 64 * 1024,
|
|
196
|
+
parts: 128,
|
|
197
|
+
nodes: 1e4,
|
|
198
|
+
depth: 128,
|
|
199
|
+
properties: 1e3
|
|
200
|
+
};
|
|
201
|
+
var DiagnosticNoteSchema = import_zod2.z.object({
|
|
202
|
+
path: import_zod2.z.string().max(4096),
|
|
203
|
+
reason: import_zod2.z.string().max(128),
|
|
204
|
+
originalBytes: import_zod2.z.number().int().nonnegative().optional(),
|
|
205
|
+
originalCount: import_zod2.z.number().int().nonnegative().optional()
|
|
206
|
+
}).strict();
|
|
207
|
+
var DiagnosticContentSchema = import_zod2.z.object({
|
|
208
|
+
schemaVersion: import_zod2.z.literal(1),
|
|
209
|
+
data: import_zod2.z.record(import_zod2.z.string(), import_zod2.z.unknown()),
|
|
210
|
+
capture: import_zod2.z.object({
|
|
211
|
+
status: import_zod2.z.enum(["complete", "partial", "failed"]),
|
|
212
|
+
omissions: import_zod2.z.array(DiagnosticNoteSchema).max(1e4),
|
|
213
|
+
redactions: import_zod2.z.array(DiagnosticNoteSchema).max(1e4)
|
|
214
|
+
}).strict()
|
|
215
|
+
}).strict();
|
|
216
|
+
var DiagnosticCorrelationSchema = import_zod2.z.object({
|
|
217
|
+
runId: import_zod2.z.string().optional(),
|
|
218
|
+
workflowId: import_zod2.z.string().optional(),
|
|
219
|
+
nodeId: import_zod2.z.string().optional(),
|
|
220
|
+
sessionId: import_zod2.z.string().optional(),
|
|
221
|
+
invocationId: import_zod2.z.string().optional(),
|
|
222
|
+
parentInvocationId: import_zod2.z.string().optional(),
|
|
223
|
+
branchId: import_zod2.z.string().optional(),
|
|
224
|
+
toolCallId: import_zod2.z.string().optional(),
|
|
225
|
+
attemptId: import_zod2.z.string().optional(),
|
|
226
|
+
workflowRevisionId: import_zod2.z.string().optional(),
|
|
227
|
+
traceId: import_zod2.z.string().optional(),
|
|
228
|
+
spanId: import_zod2.z.string().optional(),
|
|
229
|
+
parentSpanId: import_zod2.z.string().optional()
|
|
230
|
+
}).strict();
|
|
231
|
+
var DiagnosticManifestSchema = import_zod2.z.object({
|
|
232
|
+
schemaVersion: import_zod2.z.literal(1),
|
|
233
|
+
diagnosticId: import_zod2.z.string().uuid(),
|
|
234
|
+
occurrenceId: import_zod2.z.string().uuid(),
|
|
235
|
+
occurredAt: import_zod2.z.string().datetime({ offset: true }),
|
|
236
|
+
environment: import_zod2.z.string().min(1).max(256),
|
|
237
|
+
service: import_zod2.z.object({
|
|
238
|
+
name: import_zod2.z.string().min(1).max(256),
|
|
239
|
+
deploymentRef: import_zod2.z.string().max(1024).optional()
|
|
240
|
+
}).strict(),
|
|
241
|
+
correlation: DiagnosticCorrelationSchema,
|
|
242
|
+
handled: import_zod2.z.boolean(),
|
|
243
|
+
severity: import_zod2.z.enum(["warning", "error"]),
|
|
244
|
+
mechanism: import_zod2.z.enum(["span", "report", "tool"]),
|
|
245
|
+
summary: import_zod2.z.object({ type: import_zod2.z.string().max(256), message: import_zod2.z.string().max(8192) }).strict(),
|
|
246
|
+
captureStatus: import_zod2.z.enum(["complete", "partial", "failed"]),
|
|
247
|
+
checksum: import_zod2.z.string().regex(/^[a-f0-9]{64}$/),
|
|
248
|
+
byteLength: import_zod2.z.number().int().min(1).max(DIAGNOSTIC_LIMITS.bytes),
|
|
249
|
+
partCount: import_zod2.z.number().int().min(1).max(DIAGNOSTIC_LIMITS.parts)
|
|
250
|
+
}).strict().superRefine((value, ctx) => {
|
|
251
|
+
if (value.partCount !== Math.ceil(value.byteLength / DIAGNOSTIC_LIMITS.partBytes))
|
|
252
|
+
ctx.addIssue({
|
|
253
|
+
code: "custom",
|
|
254
|
+
path: ["partCount"],
|
|
255
|
+
message: "Part count does not match byte length."
|
|
256
|
+
});
|
|
257
|
+
});
|
|
258
|
+
var DiagnosticPartSchema = import_zod2.z.object({
|
|
259
|
+
index: import_zod2.z.number().int().min(0).max(DIAGNOSTIC_LIMITS.parts - 1),
|
|
260
|
+
data: import_zod2.z.string().max(Math.ceil(DIAGNOSTIC_LIMITS.partBytes / 3) * 4).regex(
|
|
261
|
+
/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/
|
|
262
|
+
)
|
|
263
|
+
}).strict();
|
|
264
|
+
var DiagnosticResponseSchema = import_zod2.z.object({
|
|
265
|
+
manifest: DiagnosticManifestSchema,
|
|
266
|
+
state: import_zod2.z.enum(["pending", "available", "incomplete", "expired"]),
|
|
267
|
+
receivedParts: import_zod2.z.number().int().nonnegative(),
|
|
268
|
+
expiresAt: import_zod2.z.string().datetime({ offset: true }),
|
|
269
|
+
content: DiagnosticContentSchema.nullable(),
|
|
270
|
+
contentChecksum: import_zod2.z.string().regex(/^[a-f0-9]{64}$/).nullable(),
|
|
271
|
+
contentByteLength: import_zod2.z.number().int().nonnegative().nullable()
|
|
272
|
+
}).strict();
|
|
273
|
+
var isPrivateDiagnosticField = (key) => /^(?:password|passwd|secret|clientsecret|privatekey|credential|credentials|authorization|proxyauthorization|bearer|bearertoken|jwt|token|accesstoken|refreshtoken|authtoken|apikey|xapikey|apitoken|xauthtoken|xaccesstoken|awsaccesskeyid|awssecretaccesskey|awssessiontoken|xamzsecuritytoken|apisecret|cookie|setcookie|resumehandle|resumetoken)$/.test(
|
|
274
|
+
key.toLowerCase().replace(/[^a-z0-9]/g, "")
|
|
275
|
+
);
|
|
276
|
+
function redactDiagnosticText(value) {
|
|
277
|
+
return value.replace(/\bBearer\s+[A-Za-z0-9._~+/-]+=*/gi, "Bearer [REDACTED]").replace(
|
|
278
|
+
/\b(?:ktyx_(?:test|live)_[^\s"'<>]+|sk-(?:proj-|ant-)?[A-Za-z0-9_-]{12,}|AIza[A-Za-z0-9_-]{20,}|eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+)/g,
|
|
279
|
+
"[REDACTED]"
|
|
280
|
+
).replace(
|
|
281
|
+
/(["']?(?:api[_-]?key|access[_-]?token|refresh[_-]?token|password|passwd|secret|token|client[_-]?secret|authorization|cookie)["']?\s*[:=]\s*)(["'])(.*?)\2/gi,
|
|
282
|
+
"$1$2[REDACTED]$2"
|
|
283
|
+
).replace(
|
|
284
|
+
/(\b(?:api[_-]?key|access[_-]?token|refresh[_-]?token|password|passwd|secret|token|client[_-]?secret)\s*[:=]\s*)(?!["'[])[^\s,;}&]+/gi,
|
|
285
|
+
"$1[REDACTED]"
|
|
286
|
+
).replace(
|
|
287
|
+
/(\b(?:authorization|proxy-authorization)\s*:\s*Basic\s+)[A-Za-z0-9+/=]+/gi,
|
|
288
|
+
"$1[REDACTED]"
|
|
289
|
+
).replace(
|
|
290
|
+
/([?&](?:api[_-]?key|token|access[_-]?token|password)=)[^&#\s]+/gi,
|
|
291
|
+
"$1[REDACTED]"
|
|
292
|
+
).replace(/(https?:\/\/)[^\s/@:]+:[^\s/@]+@/gi, "$1[REDACTED]@");
|
|
293
|
+
}
|
|
294
|
+
function summarizeDiagnostic(data, depth = 0) {
|
|
295
|
+
return {
|
|
296
|
+
type: typeof data.type === "string" ? data.type.slice(0, 256) : "Error",
|
|
297
|
+
message: typeof data.message === "string" ? data.message.slice(0, 8192) : "Execution reported a fault.",
|
|
298
|
+
...typeof data.stack === "string" ? { stack: data.stack.slice(0, 32768) } : {},
|
|
299
|
+
...depth < 4 && data.cause && typeof data.cause === "object" && !Array.isArray(data.cause) ? {
|
|
300
|
+
cause: summarizeDiagnostic(
|
|
301
|
+
data.cause,
|
|
302
|
+
depth + 1
|
|
303
|
+
)
|
|
304
|
+
} : {}
|
|
305
|
+
};
|
|
306
|
+
}
|
|
307
|
+
function redactDiagnosticContent(content) {
|
|
308
|
+
const redactions = [...content.capture.redactions];
|
|
309
|
+
const omissions = [...content.capture.omissions];
|
|
310
|
+
let nodes = 0;
|
|
311
|
+
const visit = (value, path, depth = 0) => {
|
|
312
|
+
if (++nodes > DIAGNOSTIC_LIMITS.nodes || depth > DIAGNOSTIC_LIMITS.depth) {
|
|
313
|
+
const reason = depth > DIAGNOSTIC_LIMITS.depth ? "server_depth_limit" : "server_node_limit";
|
|
314
|
+
if (omissions.length < 1e4)
|
|
315
|
+
omissions.push({ path: path.slice(0, 4096), reason });
|
|
316
|
+
return { $omitted: reason };
|
|
317
|
+
}
|
|
318
|
+
if (typeof value === "string") {
|
|
319
|
+
const clean = redactDiagnosticText(value);
|
|
320
|
+
if (clean !== value && redactions.length < 1e4)
|
|
321
|
+
redactions.push({
|
|
322
|
+
path: path.slice(0, 4096),
|
|
323
|
+
reason: "server_credential_text"
|
|
324
|
+
});
|
|
325
|
+
return clean;
|
|
326
|
+
}
|
|
327
|
+
if (Array.isArray(value)) {
|
|
328
|
+
if (value.length > DIAGNOSTIC_LIMITS.properties && omissions.length < 1e4)
|
|
329
|
+
omissions.push({
|
|
330
|
+
path: path.slice(0, 4096),
|
|
331
|
+
reason: "server_collection_limit",
|
|
332
|
+
originalCount: value.length
|
|
333
|
+
});
|
|
334
|
+
return value.slice(0, DIAGNOSTIC_LIMITS.properties).map((item, index) => visit(item, `${path}/${index}`, depth + 1));
|
|
335
|
+
}
|
|
336
|
+
if (value && typeof value === "object") {
|
|
337
|
+
const keys = Object.keys(value);
|
|
338
|
+
if (keys.length > DIAGNOSTIC_LIMITS.properties && omissions.length < 1e4)
|
|
339
|
+
omissions.push({
|
|
340
|
+
path: path.slice(0, 4096),
|
|
341
|
+
reason: "server_property_limit",
|
|
342
|
+
originalCount: keys.length
|
|
343
|
+
});
|
|
344
|
+
return Object.fromEntries(
|
|
345
|
+
keys.slice(0, DIAGNOSTIC_LIMITS.properties).map((key) => {
|
|
346
|
+
const nested = value[key];
|
|
347
|
+
if (isPrivateDiagnosticField(key)) {
|
|
348
|
+
if (redactions.length < 1e4 && nested !== "[REDACTED]")
|
|
349
|
+
redactions.push({
|
|
350
|
+
path: `${path}/${key}`.slice(0, 4096),
|
|
351
|
+
reason: "server_credential_field"
|
|
352
|
+
});
|
|
353
|
+
return [key, "[REDACTED]"];
|
|
354
|
+
}
|
|
355
|
+
return [key, visit(nested, `${path}/${key}`, depth + 1)];
|
|
356
|
+
})
|
|
357
|
+
);
|
|
358
|
+
}
|
|
359
|
+
return value;
|
|
360
|
+
};
|
|
361
|
+
return {
|
|
362
|
+
...content,
|
|
363
|
+
data: visit(content.data, "#/data"),
|
|
364
|
+
capture: {
|
|
365
|
+
...content.capture,
|
|
366
|
+
status: content.capture.status === "failed" ? "failed" : omissions.length ? "partial" : "complete",
|
|
367
|
+
omissions: omissions.map((note) => ({
|
|
368
|
+
...note,
|
|
369
|
+
path: redactDiagnosticText(note.path),
|
|
370
|
+
reason: redactDiagnosticText(note.reason)
|
|
371
|
+
})),
|
|
372
|
+
redactions: redactions.map((note) => ({
|
|
373
|
+
...note,
|
|
374
|
+
path: redactDiagnosticText(note.path),
|
|
375
|
+
reason: redactDiagnosticText(note.reason)
|
|
376
|
+
}))
|
|
377
|
+
}
|
|
378
|
+
};
|
|
379
|
+
}
|
|
380
|
+
|
|
381
|
+
// src/tools.ts
|
|
382
|
+
var import_zod3 = require("zod");
|
|
383
|
+
var ToolOutcomeSchema = import_zod3.z.enum([
|
|
183
384
|
"success",
|
|
184
385
|
"denied",
|
|
185
386
|
"fault",
|
|
186
387
|
"cancelled"
|
|
187
388
|
]);
|
|
188
|
-
var ToolObservationSchema =
|
|
189
|
-
version:
|
|
190
|
-
name:
|
|
191
|
-
toolCallId:
|
|
192
|
-
attemptId:
|
|
193
|
-
callingMode:
|
|
194
|
-
executed:
|
|
389
|
+
var ToolObservationSchema = import_zod3.z.object({
|
|
390
|
+
version: import_zod3.z.literal(1),
|
|
391
|
+
name: import_zod3.z.string().min(1).max(256),
|
|
392
|
+
toolCallId: import_zod3.z.string().min(1),
|
|
393
|
+
attemptId: import_zod3.z.string().min(1),
|
|
394
|
+
callingMode: import_zod3.z.enum(["direct", "model"]),
|
|
395
|
+
executed: import_zod3.z.boolean(),
|
|
195
396
|
outcome: ToolOutcomeSchema.optional(),
|
|
196
|
-
denialCode:
|
|
197
|
-
errorType:
|
|
198
|
-
errorMessage:
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
397
|
+
denialCode: import_zod3.z.string().regex(/^[A-Z][A-Z0-9_]{0,63}$/).optional(),
|
|
398
|
+
errorType: import_zod3.z.string().max(256).optional(),
|
|
399
|
+
errorMessage: import_zod3.z.string().max(8192).optional(),
|
|
400
|
+
diagnosticId: import_zod3.z.string().uuid().optional(),
|
|
401
|
+
durationMs: import_zod3.z.number().finite().nonnegative().optional(),
|
|
402
|
+
workflowId: import_zod3.z.string().optional(),
|
|
403
|
+
nodeId: import_zod3.z.string().optional(),
|
|
404
|
+
workflowRevisionId: import_zod3.z.string().optional(),
|
|
405
|
+
runId: import_zod3.z.string().optional(),
|
|
406
|
+
invocationId: import_zod3.z.string().optional(),
|
|
407
|
+
parentInvocationId: import_zod3.z.string().optional(),
|
|
408
|
+
branchId: import_zod3.z.string().optional(),
|
|
409
|
+
observationKind: import_zod3.z.enum(["reused", "waiting"]).optional(),
|
|
410
|
+
suspended: import_zod3.z.boolean().optional(),
|
|
411
|
+
source: import_zod3.z.object({
|
|
412
|
+
runId: import_zod3.z.string().optional(),
|
|
413
|
+
invocationId: import_zod3.z.string().optional(),
|
|
414
|
+
branchId: import_zod3.z.string().optional(),
|
|
415
|
+
toolCallId: import_zod3.z.string(),
|
|
416
|
+
attemptId: import_zod3.z.string()
|
|
215
417
|
}).strict().optional()
|
|
216
418
|
});
|
|
217
|
-
var WorkflowToolSchema =
|
|
218
|
-
name:
|
|
219
|
-
description:
|
|
220
|
-
callingMode:
|
|
221
|
-
provenance:
|
|
222
|
-
inputFields:
|
|
223
|
-
|
|
419
|
+
var WorkflowToolSchema = import_zod3.z.object({
|
|
420
|
+
name: import_zod3.z.string().min(1).max(256),
|
|
421
|
+
description: import_zod3.z.string().max(4096).optional(),
|
|
422
|
+
callingMode: import_zod3.z.enum(["direct", "model"]),
|
|
423
|
+
provenance: import_zod3.z.enum(["source", "observed"]),
|
|
424
|
+
inputFields: import_zod3.z.array(
|
|
425
|
+
import_zod3.z.object({ name: import_zod3.z.string(), type: import_zod3.z.string(), required: import_zod3.z.boolean() }).strict()
|
|
224
426
|
).optional()
|
|
225
427
|
}).strict();
|
|
226
|
-
var ToolDiscoverySchema =
|
|
227
|
-
status:
|
|
228
|
-
publishedAt:
|
|
229
|
-
warnings:
|
|
428
|
+
var ToolDiscoverySchema = import_zod3.z.object({
|
|
429
|
+
status: import_zod3.z.enum(["complete", "unresolved"]),
|
|
430
|
+
publishedAt: import_zod3.z.string().datetime().optional(),
|
|
431
|
+
warnings: import_zod3.z.array(import_zod3.z.string()).optional()
|
|
230
432
|
}).strict();
|
|
231
433
|
var StudioToolSchema = WorkflowToolSchema.extend({
|
|
232
|
-
callingMode:
|
|
233
|
-
calls:
|
|
234
|
-
replays:
|
|
235
|
-
successes:
|
|
236
|
-
denials:
|
|
237
|
-
faults:
|
|
238
|
-
cancellations:
|
|
239
|
-
p50DurationMs:
|
|
240
|
-
p95DurationMs:
|
|
434
|
+
callingMode: import_zod3.z.enum(["direct", "model", "unknown"]),
|
|
435
|
+
calls: import_zod3.z.number().nonnegative(),
|
|
436
|
+
replays: import_zod3.z.number().nonnegative(),
|
|
437
|
+
successes: import_zod3.z.number().nonnegative(),
|
|
438
|
+
denials: import_zod3.z.number().nonnegative(),
|
|
439
|
+
faults: import_zod3.z.number().nonnegative(),
|
|
440
|
+
cancellations: import_zod3.z.number().nonnegative(),
|
|
441
|
+
p50DurationMs: import_zod3.z.number().nonnegative().nullable(),
|
|
442
|
+
p95DurationMs: import_zod3.z.number().nonnegative().nullable()
|
|
241
443
|
}).strict();
|
|
242
444
|
|
|
243
445
|
// src/studio-updates.ts
|
|
244
|
-
var
|
|
245
|
-
var StudioReleaseVersionSchema =
|
|
246
|
-
var StudioReleaseDeploymentSchema =
|
|
247
|
-
strategy:
|
|
446
|
+
var import_zod4 = require("zod");
|
|
447
|
+
var StudioReleaseVersionSchema = import_zod4.z.string().regex(/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/);
|
|
448
|
+
var StudioReleaseDeploymentSchema = import_zod4.z.object({
|
|
449
|
+
strategy: import_zod4.z.enum(["rolling", "recreate"])
|
|
248
450
|
});
|
|
249
|
-
var StudioReleaseSchema =
|
|
250
|
-
format:
|
|
251
|
-
installer:
|
|
451
|
+
var StudioReleaseSchema = import_zod4.z.object({
|
|
452
|
+
format: import_zod4.z.literal(1),
|
|
453
|
+
installer: import_zod4.z.literal(1),
|
|
252
454
|
version: StudioReleaseVersionSchema,
|
|
253
|
-
api:
|
|
254
|
-
studio:
|
|
455
|
+
api: import_zod4.z.string().regex(/^ghcr\.io\/kortyx-io\/kortyx-api@sha256:[a-f0-9]{64}$/),
|
|
456
|
+
studio: import_zod4.z.string().regex(/^ghcr\.io\/kortyx-io\/kortyx-studio@sha256:[a-f0-9]{64}$/),
|
|
255
457
|
deployment: StudioReleaseDeploymentSchema.default({
|
|
256
458
|
strategy: "recreate"
|
|
257
459
|
})
|
|
258
460
|
});
|
|
259
|
-
var StudioUpdateSettingsSchema =
|
|
260
|
-
automatic:
|
|
261
|
-
hourUtc:
|
|
461
|
+
var StudioUpdateSettingsSchema = import_zod4.z.object({
|
|
462
|
+
automatic: import_zod4.z.boolean(),
|
|
463
|
+
hourUtc: import_zod4.z.number().int().min(0).max(23)
|
|
262
464
|
});
|
|
263
|
-
var StudioUpdateOperationSchema =
|
|
264
|
-
id:
|
|
265
|
-
from:
|
|
465
|
+
var StudioUpdateOperationSchema = import_zod4.z.object({
|
|
466
|
+
id: import_zod4.z.uuid(),
|
|
467
|
+
from: import_zod4.z.string(),
|
|
266
468
|
release: StudioReleaseSchema,
|
|
267
|
-
phase:
|
|
469
|
+
phase: import_zod4.z.enum([
|
|
268
470
|
"starting",
|
|
269
471
|
"pulling",
|
|
270
472
|
"backup",
|
|
@@ -273,16 +475,16 @@ var StudioUpdateOperationSchema = import_zod3.z.object({
|
|
|
273
475
|
"succeeded",
|
|
274
476
|
"failed"
|
|
275
477
|
]),
|
|
276
|
-
startedAt:
|
|
277
|
-
updatedAt:
|
|
278
|
-
backup:
|
|
279
|
-
messages:
|
|
478
|
+
startedAt: import_zod4.z.iso.datetime(),
|
|
479
|
+
updatedAt: import_zod4.z.iso.datetime(),
|
|
480
|
+
backup: import_zod4.z.string().nullable(),
|
|
481
|
+
messages: import_zod4.z.array(import_zod4.z.string()).max(100)
|
|
280
482
|
});
|
|
281
|
-
var StudioUpdateStatusSchema =
|
|
282
|
-
current:
|
|
483
|
+
var StudioUpdateStatusSchema = import_zod4.z.object({
|
|
484
|
+
current: import_zod4.z.string().nullable(),
|
|
283
485
|
available: StudioReleaseSchema.nullable(),
|
|
284
|
-
checkedAt:
|
|
285
|
-
checkError:
|
|
486
|
+
checkedAt: import_zod4.z.iso.datetime().nullable(),
|
|
487
|
+
checkError: import_zod4.z.string().nullable(),
|
|
286
488
|
settings: StudioUpdateSettingsSchema,
|
|
287
489
|
operation: StudioUpdateOperationSchema.nullable()
|
|
288
490
|
});
|
|
@@ -437,82 +639,82 @@ var TELEMETRY_EVENT_TYPES = [
|
|
|
437
639
|
"session.forked",
|
|
438
640
|
"session.rolled_back"
|
|
439
641
|
];
|
|
440
|
-
var TelemetryServiceSchema =
|
|
441
|
-
name:
|
|
442
|
-
deploymentRef:
|
|
642
|
+
var TelemetryServiceSchema = import_zod5.z.object({
|
|
643
|
+
name: import_zod5.z.string().min(1),
|
|
644
|
+
deploymentRef: import_zod5.z.string().min(1).optional()
|
|
443
645
|
}).strict();
|
|
444
|
-
var WorkflowTopologyNodeSchema =
|
|
445
|
-
id:
|
|
446
|
-
label:
|
|
447
|
-
type:
|
|
448
|
-
provider:
|
|
449
|
-
model:
|
|
450
|
-
metadata:
|
|
451
|
-
tools:
|
|
646
|
+
var WorkflowTopologyNodeSchema = import_zod5.z.object({
|
|
647
|
+
id: import_zod5.z.string().min(1),
|
|
648
|
+
label: import_zod5.z.string().optional(),
|
|
649
|
+
type: import_zod5.z.string().optional(),
|
|
650
|
+
provider: import_zod5.z.string().optional(),
|
|
651
|
+
model: import_zod5.z.string().optional(),
|
|
652
|
+
metadata: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()).optional(),
|
|
653
|
+
tools: import_zod5.z.array(WorkflowToolSchema).optional(),
|
|
452
654
|
toolDiscovery: ToolDiscoverySchema.optional()
|
|
453
655
|
}).strict();
|
|
454
|
-
var WorkflowTopologyEdgeSchema =
|
|
455
|
-
sourceNodeId:
|
|
456
|
-
targetNodeId:
|
|
457
|
-
condition:
|
|
656
|
+
var WorkflowTopologyEdgeSchema = import_zod5.z.object({
|
|
657
|
+
sourceNodeId: import_zod5.z.string().min(1),
|
|
658
|
+
targetNodeId: import_zod5.z.string().min(1),
|
|
659
|
+
condition: import_zod5.z.string().optional()
|
|
458
660
|
}).strict();
|
|
459
|
-
var WorkflowTopologyCallSchema =
|
|
460
|
-
sourceNodeId:
|
|
461
|
-
targetWorkflowId:
|
|
661
|
+
var WorkflowTopologyCallSchema = import_zod5.z.object({
|
|
662
|
+
sourceNodeId: import_zod5.z.string().min(1),
|
|
663
|
+
targetWorkflowId: import_zod5.z.string().min(1)
|
|
462
664
|
}).strict();
|
|
463
|
-
var WorkflowTopologyTransitionSchema =
|
|
464
|
-
sourceNodeId:
|
|
465
|
-
targetWorkflowId:
|
|
466
|
-
condition:
|
|
467
|
-
intent:
|
|
468
|
-
kind:
|
|
665
|
+
var WorkflowTopologyTransitionSchema = import_zod5.z.object({
|
|
666
|
+
sourceNodeId: import_zod5.z.string().min(1).optional(),
|
|
667
|
+
targetWorkflowId: import_zod5.z.string().min(1),
|
|
668
|
+
condition: import_zod5.z.string().optional(),
|
|
669
|
+
intent: import_zod5.z.string().optional(),
|
|
670
|
+
kind: import_zod5.z.enum(["call", "handoff"]).optional()
|
|
469
671
|
}).strict();
|
|
470
|
-
var EnsureWorkflowTopologyRequestSchema =
|
|
471
|
-
schemaVersion:
|
|
472
|
-
environment:
|
|
672
|
+
var EnsureWorkflowTopologyRequestSchema = import_zod5.z.object({
|
|
673
|
+
schemaVersion: import_zod5.z.literal(1),
|
|
674
|
+
environment: import_zod5.z.string().min(1),
|
|
473
675
|
service: TelemetryServiceSchema,
|
|
474
|
-
workflow:
|
|
475
|
-
id:
|
|
476
|
-
declaredVersion:
|
|
477
|
-
description:
|
|
478
|
-
tags:
|
|
479
|
-
topologyHash:
|
|
480
|
-
nodes:
|
|
481
|
-
edges:
|
|
482
|
-
transitions:
|
|
483
|
-
calls:
|
|
676
|
+
workflow: import_zod5.z.object({
|
|
677
|
+
id: import_zod5.z.string().min(1),
|
|
678
|
+
declaredVersion: import_zod5.z.string().min(1),
|
|
679
|
+
description: import_zod5.z.string().optional(),
|
|
680
|
+
tags: import_zod5.z.array(import_zod5.z.string()).optional(),
|
|
681
|
+
topologyHash: import_zod5.z.string().regex(/^[a-f0-9]{64}$/),
|
|
682
|
+
nodes: import_zod5.z.array(WorkflowTopologyNodeSchema),
|
|
683
|
+
edges: import_zod5.z.array(WorkflowTopologyEdgeSchema),
|
|
684
|
+
transitions: import_zod5.z.array(WorkflowTopologyTransitionSchema).optional(),
|
|
685
|
+
calls: import_zod5.z.array(WorkflowTopologyCallSchema).optional()
|
|
484
686
|
}).strict()
|
|
485
687
|
}).strict();
|
|
486
|
-
var EnsureWorkflowTopologyResponseSchema =
|
|
487
|
-
var TelemetryEventTypeSchema =
|
|
488
|
-
var TelemetryEventSchema =
|
|
489
|
-
schemaVersion:
|
|
490
|
-
eventId:
|
|
491
|
-
occurredAt:
|
|
492
|
-
environment:
|
|
688
|
+
var EnsureWorkflowTopologyResponseSchema = import_zod5.z.object({ workflowRevisionId: import_zod5.z.string().min(1), created: import_zod5.z.boolean() }).strict();
|
|
689
|
+
var TelemetryEventTypeSchema = import_zod5.z.enum(TELEMETRY_EVENT_TYPES);
|
|
690
|
+
var TelemetryEventSchema = import_zod5.z.object({
|
|
691
|
+
schemaVersion: import_zod5.z.literal(1),
|
|
692
|
+
eventId: import_zod5.z.string().min(1),
|
|
693
|
+
occurredAt: import_zod5.z.string().datetime({ offset: true }),
|
|
694
|
+
environment: import_zod5.z.string().min(1),
|
|
493
695
|
service: TelemetryServiceSchema,
|
|
494
|
-
correlation:
|
|
495
|
-
invocationId:
|
|
496
|
-
parentInvocationId:
|
|
497
|
-
branchId:
|
|
498
|
-
traceId:
|
|
499
|
-
spanId:
|
|
500
|
-
parentSpanId:
|
|
501
|
-
runId:
|
|
502
|
-
sessionId:
|
|
503
|
-
workflowId:
|
|
504
|
-
workflowRevisionId:
|
|
505
|
-
topologyHash:
|
|
506
|
-
nodeId:
|
|
696
|
+
correlation: import_zod5.z.object({
|
|
697
|
+
invocationId: import_zod5.z.string().optional(),
|
|
698
|
+
parentInvocationId: import_zod5.z.string().optional(),
|
|
699
|
+
branchId: import_zod5.z.string().optional(),
|
|
700
|
+
traceId: import_zod5.z.string().optional(),
|
|
701
|
+
spanId: import_zod5.z.string().optional(),
|
|
702
|
+
parentSpanId: import_zod5.z.string().optional(),
|
|
703
|
+
runId: import_zod5.z.string().min(1),
|
|
704
|
+
sessionId: import_zod5.z.string().optional(),
|
|
705
|
+
workflowId: import_zod5.z.string().min(1),
|
|
706
|
+
workflowRevisionId: import_zod5.z.string().optional(),
|
|
707
|
+
topologyHash: import_zod5.z.string().regex(/^[a-f0-9]{64}$/).optional(),
|
|
708
|
+
nodeId: import_zod5.z.string().optional()
|
|
507
709
|
}).strict(),
|
|
508
|
-
context:
|
|
509
|
-
userId:
|
|
510
|
-
tenantId:
|
|
511
|
-
tags:
|
|
512
|
-
metadata:
|
|
710
|
+
context: import_zod5.z.object({
|
|
711
|
+
userId: import_zod5.z.string().optional(),
|
|
712
|
+
tenantId: import_zod5.z.string().optional(),
|
|
713
|
+
tags: import_zod5.z.array(import_zod5.z.string()).optional(),
|
|
714
|
+
metadata: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()).optional()
|
|
513
715
|
}).strict().optional(),
|
|
514
716
|
type: TelemetryEventTypeSchema,
|
|
515
|
-
payload:
|
|
717
|
+
payload: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown())
|
|
516
718
|
}).strict().superRefine((event, ctx) => {
|
|
517
719
|
if (!event.type.startsWith("tool.")) return;
|
|
518
720
|
const canonical = event.payload.version === 1 || [
|
|
@@ -555,20 +757,20 @@ var TelemetryEventSchema = import_zod4.z.object({
|
|
|
555
757
|
});
|
|
556
758
|
}
|
|
557
759
|
});
|
|
558
|
-
var TelemetryEventBatchSchema =
|
|
559
|
-
var TelemetryEventBatchResponseSchema =
|
|
560
|
-
accepted:
|
|
561
|
-
inserted:
|
|
562
|
-
duplicates:
|
|
760
|
+
var TelemetryEventBatchSchema = import_zod5.z.object({ events: import_zod5.z.array(TelemetryEventSchema).min(1) }).strict();
|
|
761
|
+
var TelemetryEventBatchResponseSchema = import_zod5.z.object({
|
|
762
|
+
accepted: import_zod5.z.number().int().nonnegative(),
|
|
763
|
+
inserted: import_zod5.z.number().int().nonnegative(),
|
|
764
|
+
duplicates: import_zod5.z.number().int().nonnegative()
|
|
563
765
|
}).strict();
|
|
564
|
-
var TelemetryPricingSourceSchema =
|
|
766
|
+
var TelemetryPricingSourceSchema = import_zod5.z.enum([
|
|
565
767
|
"sdk",
|
|
566
768
|
"provider",
|
|
567
769
|
"custom",
|
|
568
770
|
"project-rate-card",
|
|
569
771
|
"default-rate-card"
|
|
570
772
|
]);
|
|
571
|
-
var TelemetryPricingUnitSchema =
|
|
773
|
+
var TelemetryPricingUnitSchema = import_zod5.z.enum([
|
|
572
774
|
"token",
|
|
573
775
|
"character",
|
|
574
776
|
"request",
|
|
@@ -581,7 +783,7 @@ var TelemetryPricingUnitSchema = import_zod4.z.enum([
|
|
|
581
783
|
"minute",
|
|
582
784
|
"custom"
|
|
583
785
|
]);
|
|
584
|
-
var TelemetryPricingUsageTypeSchema =
|
|
786
|
+
var TelemetryPricingUsageTypeSchema = import_zod5.z.enum([
|
|
585
787
|
"input",
|
|
586
788
|
"output",
|
|
587
789
|
"reasoning",
|
|
@@ -597,42 +799,42 @@ var TelemetryPricingUsageTypeSchema = import_zod4.z.enum([
|
|
|
597
799
|
"request",
|
|
598
800
|
"custom"
|
|
599
801
|
]);
|
|
600
|
-
var TelemetryUsageItemSchema =
|
|
802
|
+
var TelemetryUsageItemSchema = import_zod5.z.object({
|
|
601
803
|
usageType: TelemetryPricingUsageTypeSchema,
|
|
602
|
-
quantity:
|
|
804
|
+
quantity: import_zod5.z.number().nonnegative(),
|
|
603
805
|
unit: TelemetryPricingUnitSchema,
|
|
604
|
-
label:
|
|
806
|
+
label: import_zod5.z.string().optional()
|
|
605
807
|
}).strict();
|
|
606
|
-
var TelemetryUnitPriceSchema =
|
|
808
|
+
var TelemetryUnitPriceSchema = import_zod5.z.object({
|
|
607
809
|
usageType: TelemetryPricingUsageTypeSchema,
|
|
608
810
|
unit: TelemetryPricingUnitSchema,
|
|
609
|
-
unitQuantity:
|
|
610
|
-
priceMicros:
|
|
611
|
-
label:
|
|
811
|
+
unitQuantity: import_zod5.z.number().positive().default(1),
|
|
812
|
+
priceMicros: import_zod5.z.number().int().nonnegative(),
|
|
813
|
+
label: import_zod5.z.string().optional()
|
|
612
814
|
}).strict();
|
|
613
|
-
var TelemetryPricingLineItemSchema =
|
|
815
|
+
var TelemetryPricingLineItemSchema = import_zod5.z.object({
|
|
614
816
|
usageType: TelemetryPricingUsageTypeSchema,
|
|
615
|
-
quantity:
|
|
817
|
+
quantity: import_zod5.z.number().nonnegative(),
|
|
616
818
|
unit: TelemetryPricingUnitSchema,
|
|
617
|
-
unitQuantity:
|
|
618
|
-
unitPriceMicros:
|
|
619
|
-
totalCostMicros:
|
|
620
|
-
label:
|
|
819
|
+
unitQuantity: import_zod5.z.number().positive().default(1),
|
|
820
|
+
unitPriceMicros: import_zod5.z.number().int().nonnegative().optional(),
|
|
821
|
+
totalCostMicros: import_zod5.z.number().int().nonnegative().optional(),
|
|
822
|
+
label: import_zod5.z.string().optional()
|
|
621
823
|
}).strict().refine(
|
|
622
824
|
(value) => value.totalCostMicros !== void 0 || value.unitPriceMicros !== void 0,
|
|
623
825
|
"line item requires totalCostMicros or unitPriceMicros"
|
|
624
826
|
);
|
|
625
|
-
var TelemetryPricingHintSchema =
|
|
827
|
+
var TelemetryPricingHintSchema = import_zod5.z.object({
|
|
626
828
|
source: TelemetryPricingSourceSchema.extract(["sdk", "provider", "custom"]),
|
|
627
|
-
currency:
|
|
628
|
-
actualCostMicros:
|
|
629
|
-
lineItems:
|
|
630
|
-
unitPrices:
|
|
631
|
-
usageItems:
|
|
632
|
-
pricingRef:
|
|
633
|
-
metadata:
|
|
829
|
+
currency: import_zod5.z.string().min(3).max(12).default("USD"),
|
|
830
|
+
actualCostMicros: import_zod5.z.number().int().nonnegative().optional(),
|
|
831
|
+
lineItems: import_zod5.z.array(TelemetryPricingLineItemSchema).optional(),
|
|
832
|
+
unitPrices: import_zod5.z.array(TelemetryUnitPriceSchema).optional(),
|
|
833
|
+
usageItems: import_zod5.z.array(TelemetryUsageItemSchema).optional(),
|
|
834
|
+
pricingRef: import_zod5.z.string().min(1).optional(),
|
|
835
|
+
metadata: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()).optional()
|
|
634
836
|
}).strict();
|
|
635
|
-
var StudioRunStatusSchema =
|
|
837
|
+
var StudioRunStatusSchema = import_zod5.z.enum([
|
|
636
838
|
"running",
|
|
637
839
|
"completed",
|
|
638
840
|
"interrupted",
|
|
@@ -648,16 +850,16 @@ var STUDIO_TIME_RANGES = [
|
|
|
648
850
|
"All time",
|
|
649
851
|
"Custom range"
|
|
650
852
|
];
|
|
651
|
-
var StudioTimeRangeSchema =
|
|
652
|
-
var StudioTimeRangeQuerySchema =
|
|
853
|
+
var StudioTimeRangeSchema = import_zod5.z.enum(STUDIO_TIME_RANGES);
|
|
854
|
+
var StudioTimeRangeQuerySchema = import_zod5.z.object({
|
|
653
855
|
range: StudioTimeRangeSchema.optional(),
|
|
654
|
-
startedAfter:
|
|
655
|
-
startedBefore:
|
|
856
|
+
startedAfter: import_zod5.z.string().optional(),
|
|
857
|
+
startedBefore: import_zod5.z.string().optional()
|
|
656
858
|
}).strict();
|
|
657
|
-
var StudioTimeRangeContextSchema =
|
|
859
|
+
var StudioTimeRangeContextSchema = import_zod5.z.object({
|
|
658
860
|
range: StudioTimeRangeSchema,
|
|
659
|
-
startedAfter:
|
|
660
|
-
startedBefore:
|
|
861
|
+
startedAfter: import_zod5.z.string().datetime({ offset: true }).nullable(),
|
|
862
|
+
startedBefore: import_zod5.z.string().datetime({ offset: true }).nullable()
|
|
661
863
|
}).strict();
|
|
662
864
|
var STUDIO_TIME_RANGE_MILLISECONDS = {
|
|
663
865
|
"Last hour": 60 * 60 * 1e3,
|
|
@@ -731,7 +933,7 @@ var resolveStudioTimeRange = (input, now = /* @__PURE__ */ new Date()) => {
|
|
|
731
933
|
}
|
|
732
934
|
};
|
|
733
935
|
};
|
|
734
|
-
var StudioInterruptStatusSchema =
|
|
936
|
+
var StudioInterruptStatusSchema = import_zod5.z.enum([
|
|
735
937
|
"pending",
|
|
736
938
|
"resolved",
|
|
737
939
|
"expired",
|
|
@@ -744,334 +946,342 @@ var resolveStudioInterruptStatus = (input, now = Date.now()) => {
|
|
|
744
946
|
const nowMs = typeof now === "number" ? now : now.getTime();
|
|
745
947
|
return Number.isFinite(expiresAt) && Number.isFinite(nowMs) && expiresAt <= nowMs ? "expired" : input.status;
|
|
746
948
|
};
|
|
747
|
-
var StudioInterruptTypeSchema =
|
|
949
|
+
var StudioInterruptTypeSchema = import_zod5.z.enum([
|
|
748
950
|
"choice",
|
|
749
951
|
"multi-choice",
|
|
750
952
|
"text",
|
|
751
953
|
"structured",
|
|
752
954
|
"unknown"
|
|
753
955
|
]);
|
|
754
|
-
var StudioInterruptInteractionModeSchema =
|
|
956
|
+
var StudioInterruptInteractionModeSchema = import_zod5.z.enum([
|
|
755
957
|
"static-options",
|
|
756
958
|
"dynamic-picker",
|
|
757
959
|
"freeform",
|
|
758
960
|
"unknown"
|
|
759
961
|
]);
|
|
760
|
-
var StudioInterruptOptionSchema =
|
|
761
|
-
id:
|
|
762
|
-
label:
|
|
763
|
-
description:
|
|
962
|
+
var StudioInterruptOptionSchema = import_zod5.z.object({
|
|
963
|
+
id: import_zod5.z.string().min(1),
|
|
964
|
+
label: import_zod5.z.string().min(1),
|
|
965
|
+
description: import_zod5.z.string().nullable()
|
|
764
966
|
}).strip();
|
|
765
|
-
var StudioInterruptValueSchema =
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
|
|
967
|
+
var StudioInterruptValueSchema = import_zod5.z.union([
|
|
968
|
+
import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()),
|
|
969
|
+
import_zod5.z.array(import_zod5.z.unknown()),
|
|
970
|
+
import_zod5.z.string(),
|
|
971
|
+
import_zod5.z.number(),
|
|
972
|
+
import_zod5.z.boolean()
|
|
771
973
|
]);
|
|
772
|
-
var StudioResumeOutcomeSchema =
|
|
974
|
+
var StudioResumeOutcomeSchema = import_zod5.z.enum([
|
|
773
975
|
"resumed",
|
|
774
976
|
"resume failed",
|
|
775
977
|
"expired before resume",
|
|
776
978
|
"cancelled"
|
|
777
979
|
]);
|
|
778
|
-
var StudioWorkflowHealthSchema =
|
|
980
|
+
var StudioWorkflowHealthSchema = import_zod5.z.enum([
|
|
779
981
|
"unknown",
|
|
780
982
|
"healthy",
|
|
781
983
|
"degraded",
|
|
782
984
|
"failing",
|
|
783
985
|
"idle"
|
|
784
986
|
]);
|
|
785
|
-
var StudioPricingStatusSchema =
|
|
987
|
+
var StudioPricingStatusSchema = import_zod5.z.enum([
|
|
786
988
|
"priced",
|
|
787
989
|
"unpriced",
|
|
788
990
|
"unknown"
|
|
789
991
|
]);
|
|
790
992
|
var StudioPricingSourceSchema = TelemetryPricingSourceSchema.nullable();
|
|
791
|
-
var StudioChangeResourceSchema =
|
|
993
|
+
var StudioChangeResourceSchema = import_zod5.z.enum([
|
|
792
994
|
"evals",
|
|
793
995
|
"workflows",
|
|
794
996
|
"runs",
|
|
795
997
|
"sessions",
|
|
796
998
|
"interrupts"
|
|
797
999
|
]);
|
|
798
|
-
var StudioChangeSchema =
|
|
799
|
-
schemaVersion:
|
|
800
|
-
changeId:
|
|
801
|
-
emittedAt:
|
|
802
|
-
organizationId:
|
|
803
|
-
projectId:
|
|
804
|
-
|
|
1000
|
+
var StudioChangeSchema = import_zod5.z.object({
|
|
1001
|
+
schemaVersion: import_zod5.z.literal(1),
|
|
1002
|
+
changeId: import_zod5.z.string().min(1),
|
|
1003
|
+
emittedAt: import_zod5.z.string().datetime({ offset: true }),
|
|
1004
|
+
organizationId: import_zod5.z.string().min(1),
|
|
1005
|
+
projectId: import_zod5.z.string().min(1),
|
|
1006
|
+
environment: import_zod5.z.string().min(1).optional(),
|
|
1007
|
+
resources: import_zod5.z.array(StudioChangeResourceSchema).min(1)
|
|
805
1008
|
}).strict();
|
|
806
|
-
var StudioMetricSchema =
|
|
807
|
-
runCount:
|
|
808
|
-
successRate:
|
|
809
|
-
errorRate:
|
|
810
|
-
retryCount:
|
|
811
|
-
interruptRate:
|
|
812
|
-
p50DurationMs:
|
|
813
|
-
p95DurationMs:
|
|
814
|
-
averageTokens:
|
|
815
|
-
averageCost:
|
|
816
|
-
currency:
|
|
1009
|
+
var StudioMetricSchema = import_zod5.z.object({
|
|
1010
|
+
runCount: import_zod5.z.number().int().nonnegative(),
|
|
1011
|
+
successRate: import_zod5.z.number().min(0).max(100).nullable(),
|
|
1012
|
+
errorRate: import_zod5.z.number().min(0).max(100).nullable(),
|
|
1013
|
+
retryCount: import_zod5.z.number().int().nonnegative().nullable(),
|
|
1014
|
+
interruptRate: import_zod5.z.number().min(0).max(100).nullable(),
|
|
1015
|
+
p50DurationMs: import_zod5.z.number().nonnegative().nullable(),
|
|
1016
|
+
p95DurationMs: import_zod5.z.number().nonnegative().nullable(),
|
|
1017
|
+
averageTokens: import_zod5.z.number().nonnegative().nullable(),
|
|
1018
|
+
averageCost: import_zod5.z.number().nonnegative().nullable(),
|
|
1019
|
+
currency: import_zod5.z.string().nullable()
|
|
817
1020
|
}).strip();
|
|
818
|
-
var StudioRunSchema =
|
|
819
|
-
id:
|
|
1021
|
+
var StudioRunSchema = import_zod5.z.object({
|
|
1022
|
+
id: import_zod5.z.string().min(1),
|
|
820
1023
|
feedback: FeedbackSummarySchema.optional(),
|
|
821
|
-
callerNodeId:
|
|
822
|
-
parentRunId:
|
|
823
|
-
parentWorkflowId:
|
|
824
|
-
invocationId:
|
|
825
|
-
branchId:
|
|
826
|
-
callId:
|
|
1024
|
+
callerNodeId: import_zod5.z.string().optional(),
|
|
1025
|
+
parentRunId: import_zod5.z.string().optional(),
|
|
1026
|
+
parentWorkflowId: import_zod5.z.string().optional(),
|
|
1027
|
+
invocationId: import_zod5.z.string().optional(),
|
|
1028
|
+
branchId: import_zod5.z.string().optional(),
|
|
1029
|
+
callId: import_zod5.z.string().optional(),
|
|
827
1030
|
status: StudioRunStatusSchema,
|
|
828
|
-
startedAt:
|
|
829
|
-
endedAt:
|
|
830
|
-
workflowId:
|
|
831
|
-
workflowIds:
|
|
832
|
-
workflowRefs:
|
|
833
|
-
|
|
834
|
-
workflowId:
|
|
835
|
-
workflowRevisionId:
|
|
836
|
-
declaredVersion:
|
|
1031
|
+
startedAt: import_zod5.z.string().datetime({ offset: true }),
|
|
1032
|
+
endedAt: import_zod5.z.string().datetime({ offset: true }).nullable(),
|
|
1033
|
+
workflowId: import_zod5.z.string().min(1),
|
|
1034
|
+
workflowIds: import_zod5.z.array(import_zod5.z.string().min(1)),
|
|
1035
|
+
workflowRefs: import_zod5.z.array(
|
|
1036
|
+
import_zod5.z.object({
|
|
1037
|
+
workflowId: import_zod5.z.string().min(1),
|
|
1038
|
+
workflowRevisionId: import_zod5.z.string().nullable(),
|
|
1039
|
+
declaredVersion: import_zod5.z.string().nullable()
|
|
837
1040
|
}).strip()
|
|
838
1041
|
),
|
|
839
|
-
workflowRevisionId:
|
|
840
|
-
declaredVersion:
|
|
841
|
-
transitionIds:
|
|
842
|
-
path:
|
|
843
|
-
sessionId:
|
|
844
|
-
provider:
|
|
845
|
-
model:
|
|
846
|
-
models:
|
|
847
|
-
durationMs:
|
|
848
|
-
tokens:
|
|
849
|
-
cost:
|
|
1042
|
+
workflowRevisionId: import_zod5.z.string().nullable(),
|
|
1043
|
+
declaredVersion: import_zod5.z.string().nullable(),
|
|
1044
|
+
transitionIds: import_zod5.z.array(import_zod5.z.string().min(1)),
|
|
1045
|
+
path: import_zod5.z.array(import_zod5.z.string()),
|
|
1046
|
+
sessionId: import_zod5.z.string().nullable(),
|
|
1047
|
+
provider: import_zod5.z.string().nullable(),
|
|
1048
|
+
model: import_zod5.z.string().nullable(),
|
|
1049
|
+
models: import_zod5.z.array(import_zod5.z.string()),
|
|
1050
|
+
durationMs: import_zod5.z.number().nonnegative().nullable(),
|
|
1051
|
+
tokens: import_zod5.z.number().int().nonnegative().nullable(),
|
|
1052
|
+
cost: import_zod5.z.number().nonnegative().nullable(),
|
|
850
1053
|
pricingStatus: StudioPricingStatusSchema,
|
|
851
1054
|
pricingSource: StudioPricingSourceSchema,
|
|
852
|
-
currency:
|
|
853
|
-
result:
|
|
854
|
-
environment:
|
|
855
|
-
userId:
|
|
856
|
-
tenantId:
|
|
857
|
-
hasTool:
|
|
858
|
-
hasRetry:
|
|
859
|
-
interruptNodeId:
|
|
860
|
-
interruptId:
|
|
1055
|
+
currency: import_zod5.z.string().nullable(),
|
|
1056
|
+
result: import_zod5.z.string().nullable(),
|
|
1057
|
+
environment: import_zod5.z.string().min(1),
|
|
1058
|
+
userId: import_zod5.z.string().nullable(),
|
|
1059
|
+
tenantId: import_zod5.z.string().nullable(),
|
|
1060
|
+
hasTool: import_zod5.z.boolean(),
|
|
1061
|
+
hasRetry: import_zod5.z.boolean(),
|
|
1062
|
+
interruptNodeId: import_zod5.z.string().nullable(),
|
|
1063
|
+
interruptId: import_zod5.z.string().nullable().optional(),
|
|
861
1064
|
interruptStatus: StudioInterruptStatusSchema.nullable().optional(),
|
|
862
|
-
interruptExpiresAt:
|
|
1065
|
+
interruptExpiresAt: import_zod5.z.string().datetime({ offset: true }).nullable().optional()
|
|
863
1066
|
}).strip();
|
|
864
|
-
var StudioSessionSchema =
|
|
865
|
-
id:
|
|
1067
|
+
var StudioSessionSchema = import_zod5.z.object({
|
|
1068
|
+
id: import_zod5.z.string().min(1),
|
|
866
1069
|
status: StudioRunStatusSchema,
|
|
867
|
-
lastActivityAt:
|
|
868
|
-
workflowIds:
|
|
869
|
-
workflowCount:
|
|
870
|
-
activeWorkflowId:
|
|
871
|
-
activeVersion:
|
|
872
|
-
userId:
|
|
873
|
-
tenantId:
|
|
874
|
-
runs:
|
|
875
|
-
succeeded:
|
|
876
|
-
failed:
|
|
877
|
-
interrupted:
|
|
878
|
-
checkpoints:
|
|
879
|
-
hasFork:
|
|
880
|
-
durationMs:
|
|
881
|
-
tokens:
|
|
882
|
-
cost:
|
|
1070
|
+
lastActivityAt: import_zod5.z.string().datetime({ offset: true }),
|
|
1071
|
+
workflowIds: import_zod5.z.array(import_zod5.z.string()),
|
|
1072
|
+
workflowCount: import_zod5.z.number().int().nonnegative(),
|
|
1073
|
+
activeWorkflowId: import_zod5.z.string().nullable(),
|
|
1074
|
+
activeVersion: import_zod5.z.string().nullable(),
|
|
1075
|
+
userId: import_zod5.z.string().nullable(),
|
|
1076
|
+
tenantId: import_zod5.z.string().nullable(),
|
|
1077
|
+
runs: import_zod5.z.number().int().nonnegative(),
|
|
1078
|
+
succeeded: import_zod5.z.number().int().nonnegative(),
|
|
1079
|
+
failed: import_zod5.z.number().int().nonnegative(),
|
|
1080
|
+
interrupted: import_zod5.z.number().int().nonnegative(),
|
|
1081
|
+
checkpoints: import_zod5.z.number().int().nonnegative(),
|
|
1082
|
+
hasFork: import_zod5.z.boolean(),
|
|
1083
|
+
durationMs: import_zod5.z.number().nonnegative().nullable(),
|
|
1084
|
+
tokens: import_zod5.z.number().int().nonnegative().nullable(),
|
|
1085
|
+
cost: import_zod5.z.number().nonnegative().nullable(),
|
|
883
1086
|
pricingStatus: StudioPricingStatusSchema,
|
|
884
1087
|
pricingSource: StudioPricingSourceSchema,
|
|
885
|
-
currency:
|
|
886
|
-
latestResult:
|
|
887
|
-
latestError:
|
|
888
|
-
pendingInterruptId:
|
|
1088
|
+
currency: import_zod5.z.string().nullable(),
|
|
1089
|
+
latestResult: import_zod5.z.string().nullable(),
|
|
1090
|
+
latestError: import_zod5.z.string().nullable(),
|
|
1091
|
+
pendingInterruptId: import_zod5.z.string().nullable(),
|
|
889
1092
|
interruptStatus: StudioInterruptStatusSchema.nullable().optional(),
|
|
890
|
-
interruptExpiresAt:
|
|
891
|
-
providers:
|
|
892
|
-
models:
|
|
893
|
-
tags:
|
|
894
|
-
environment:
|
|
1093
|
+
interruptExpiresAt: import_zod5.z.string().datetime({ offset: true }).nullable().optional(),
|
|
1094
|
+
providers: import_zod5.z.array(import_zod5.z.string()),
|
|
1095
|
+
models: import_zod5.z.array(import_zod5.z.string()),
|
|
1096
|
+
tags: import_zod5.z.array(import_zod5.z.string()),
|
|
1097
|
+
environment: import_zod5.z.string().min(1)
|
|
895
1098
|
}).strip();
|
|
896
|
-
var StudioInterruptSchema =
|
|
897
|
-
afterResponseCompleted:
|
|
898
|
-
id:
|
|
1099
|
+
var StudioInterruptSchema = import_zod5.z.object({
|
|
1100
|
+
afterResponseCompleted: import_zod5.z.boolean().optional(),
|
|
1101
|
+
id: import_zod5.z.string().min(1),
|
|
899
1102
|
status: StudioInterruptStatusSchema,
|
|
900
1103
|
type: StudioInterruptTypeSchema,
|
|
901
1104
|
interactionMode: StudioInterruptInteractionModeSchema,
|
|
902
|
-
contract:
|
|
903
|
-
schemaId:
|
|
904
|
-
schemaVersion:
|
|
905
|
-
createdAt:
|
|
906
|
-
resolvedAt:
|
|
907
|
-
expiresAt:
|
|
908
|
-
question:
|
|
909
|
-
contentCaptured:
|
|
910
|
-
request:
|
|
911
|
-
requestCaptured:
|
|
912
|
-
optionCount:
|
|
913
|
-
options:
|
|
914
|
-
workflowId:
|
|
915
|
-
nodeId:
|
|
916
|
-
sessionId:
|
|
917
|
-
userId:
|
|
918
|
-
tenantId:
|
|
919
|
-
response:
|
|
1105
|
+
contract: import_zod5.z.string().nullable().default(null),
|
|
1106
|
+
schemaId: import_zod5.z.string().nullable(),
|
|
1107
|
+
schemaVersion: import_zod5.z.string().nullable(),
|
|
1108
|
+
createdAt: import_zod5.z.string().datetime({ offset: true }),
|
|
1109
|
+
resolvedAt: import_zod5.z.string().datetime({ offset: true }).nullable(),
|
|
1110
|
+
expiresAt: import_zod5.z.string().datetime({ offset: true }).nullable(),
|
|
1111
|
+
question: import_zod5.z.string().nullable(),
|
|
1112
|
+
contentCaptured: import_zod5.z.boolean(),
|
|
1113
|
+
request: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()).nullable().default(null),
|
|
1114
|
+
requestCaptured: import_zod5.z.boolean().default(false),
|
|
1115
|
+
optionCount: import_zod5.z.number().int().nonnegative().nullable(),
|
|
1116
|
+
options: import_zod5.z.array(StudioInterruptOptionSchema).nullable(),
|
|
1117
|
+
workflowId: import_zod5.z.string().min(1),
|
|
1118
|
+
nodeId: import_zod5.z.string().nullable(),
|
|
1119
|
+
sessionId: import_zod5.z.string().nullable(),
|
|
1120
|
+
userId: import_zod5.z.string().nullable(),
|
|
1121
|
+
tenantId: import_zod5.z.string().nullable(),
|
|
1122
|
+
response: import_zod5.z.string().nullable(),
|
|
920
1123
|
responseValue: StudioInterruptValueSchema.nullable().default(null),
|
|
921
|
-
responseCaptured:
|
|
1124
|
+
responseCaptured: import_zod5.z.boolean(),
|
|
922
1125
|
resumeOutcome: StudioResumeOutcomeSchema.nullable(),
|
|
923
|
-
resumeError:
|
|
924
|
-
runId:
|
|
925
|
-
resumeToken:
|
|
926
|
-
resolvedBy:
|
|
927
|
-
environment:
|
|
1126
|
+
resumeError: import_zod5.z.string().nullable(),
|
|
1127
|
+
runId: import_zod5.z.string().min(1),
|
|
1128
|
+
resumeToken: import_zod5.z.string().nullable(),
|
|
1129
|
+
resolvedBy: import_zod5.z.string().nullable(),
|
|
1130
|
+
environment: import_zod5.z.string().min(1)
|
|
928
1131
|
}).strip();
|
|
929
|
-
var StudioDetailEventSchema =
|
|
930
|
-
id:
|
|
1132
|
+
var StudioDetailEventSchema = import_zod5.z.object({
|
|
1133
|
+
id: import_zod5.z.string().min(1),
|
|
931
1134
|
// Studio readers must preserve future event kinds within the same API major.
|
|
932
|
-
type:
|
|
933
|
-
occurredAt:
|
|
934
|
-
receivedAt:
|
|
935
|
-
environment:
|
|
936
|
-
serviceName:
|
|
937
|
-
deploymentRef:
|
|
938
|
-
traceId:
|
|
939
|
-
spanId:
|
|
940
|
-
parentSpanId:
|
|
941
|
-
runId:
|
|
942
|
-
sessionId:
|
|
943
|
-
workflowId:
|
|
944
|
-
workflowRevisionId:
|
|
945
|
-
nodeId:
|
|
946
|
-
userId:
|
|
947
|
-
tenantId:
|
|
948
|
-
tags:
|
|
949
|
-
metadata:
|
|
950
|
-
payload:
|
|
1135
|
+
type: import_zod5.z.string().min(1),
|
|
1136
|
+
occurredAt: import_zod5.z.string().datetime({ offset: true }),
|
|
1137
|
+
receivedAt: import_zod5.z.string().datetime({ offset: true }),
|
|
1138
|
+
environment: import_zod5.z.string().min(1),
|
|
1139
|
+
serviceName: import_zod5.z.string().min(1),
|
|
1140
|
+
deploymentRef: import_zod5.z.string().nullable(),
|
|
1141
|
+
traceId: import_zod5.z.string().nullable(),
|
|
1142
|
+
spanId: import_zod5.z.string().nullable(),
|
|
1143
|
+
parentSpanId: import_zod5.z.string().nullable(),
|
|
1144
|
+
runId: import_zod5.z.string().min(1),
|
|
1145
|
+
sessionId: import_zod5.z.string().nullable(),
|
|
1146
|
+
workflowId: import_zod5.z.string().min(1),
|
|
1147
|
+
workflowRevisionId: import_zod5.z.string().nullable(),
|
|
1148
|
+
nodeId: import_zod5.z.string().nullable(),
|
|
1149
|
+
userId: import_zod5.z.string().nullable(),
|
|
1150
|
+
tenantId: import_zod5.z.string().nullable(),
|
|
1151
|
+
tags: import_zod5.z.array(import_zod5.z.string()),
|
|
1152
|
+
metadata: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown()).nullable(),
|
|
1153
|
+
payload: import_zod5.z.record(import_zod5.z.string(), import_zod5.z.unknown())
|
|
951
1154
|
}).strip();
|
|
952
|
-
var StudioWorkflowNodeSchema =
|
|
953
|
-
tools:
|
|
1155
|
+
var StudioWorkflowNodeSchema = import_zod5.z.object({
|
|
1156
|
+
tools: import_zod5.z.array(StudioToolSchema).optional(),
|
|
954
1157
|
toolDiscovery: ToolDiscoverySchema.optional(),
|
|
955
|
-
id:
|
|
956
|
-
label:
|
|
957
|
-
type:
|
|
958
|
-
state:
|
|
959
|
-
provider:
|
|
960
|
-
model:
|
|
1158
|
+
id: import_zod5.z.string().min(1),
|
|
1159
|
+
label: import_zod5.z.string(),
|
|
1160
|
+
type: import_zod5.z.string().nullable(),
|
|
1161
|
+
state: import_zod5.z.enum(["healthy", "warning", "failed", "interrupted", "retried"]).nullable(),
|
|
1162
|
+
provider: import_zod5.z.string().nullable(),
|
|
1163
|
+
model: import_zod5.z.string().nullable(),
|
|
961
1164
|
metrics: StudioMetricSchema
|
|
962
1165
|
}).strip();
|
|
963
|
-
var StudioWorkflowInternalEdgeSchema =
|
|
964
|
-
id:
|
|
965
|
-
source:
|
|
966
|
-
target:
|
|
967
|
-
condition:
|
|
1166
|
+
var StudioWorkflowInternalEdgeSchema = import_zod5.z.object({
|
|
1167
|
+
id: import_zod5.z.string().min(1),
|
|
1168
|
+
source: import_zod5.z.string().min(1),
|
|
1169
|
+
target: import_zod5.z.string().min(1),
|
|
1170
|
+
condition: import_zod5.z.string().nullable()
|
|
968
1171
|
}).strip();
|
|
969
|
-
var StudioWorkflowTransitionSchema =
|
|
970
|
-
kind:
|
|
971
|
-
id:
|
|
972
|
-
sourceWorkflowId:
|
|
973
|
-
sourceNodeId:
|
|
974
|
-
targetWorkflowId:
|
|
975
|
-
condition:
|
|
976
|
-
volume:
|
|
977
|
-
successRate:
|
|
978
|
-
medianDurationMs:
|
|
979
|
-
errorRate:
|
|
1172
|
+
var StudioWorkflowTransitionSchema = import_zod5.z.object({
|
|
1173
|
+
kind: import_zod5.z.enum(["call", "handoff"]).optional(),
|
|
1174
|
+
id: import_zod5.z.string().min(1),
|
|
1175
|
+
sourceWorkflowId: import_zod5.z.string().min(1),
|
|
1176
|
+
sourceNodeId: import_zod5.z.string().nullable(),
|
|
1177
|
+
targetWorkflowId: import_zod5.z.string().min(1),
|
|
1178
|
+
condition: import_zod5.z.string().nullable(),
|
|
1179
|
+
volume: import_zod5.z.number().int().nonnegative(),
|
|
1180
|
+
successRate: import_zod5.z.number().min(0).max(100).nullable(),
|
|
1181
|
+
medianDurationMs: import_zod5.z.number().nonnegative().nullable(),
|
|
1182
|
+
errorRate: import_zod5.z.number().min(0).max(100).nullable()
|
|
980
1183
|
}).strip();
|
|
981
|
-
var StudioWorkflowSchema =
|
|
982
|
-
id:
|
|
983
|
-
name:
|
|
984
|
-
description:
|
|
985
|
-
versions:
|
|
986
|
-
activeVersion:
|
|
987
|
-
activeRevisionId:
|
|
1184
|
+
var StudioWorkflowSchema = import_zod5.z.object({
|
|
1185
|
+
id: import_zod5.z.string().min(1),
|
|
1186
|
+
name: import_zod5.z.string().min(1),
|
|
1187
|
+
description: import_zod5.z.string().nullable(),
|
|
1188
|
+
versions: import_zod5.z.array(import_zod5.z.string()),
|
|
1189
|
+
activeVersion: import_zod5.z.string().nullable(),
|
|
1190
|
+
activeRevisionId: import_zod5.z.string().nullable(),
|
|
988
1191
|
health: StudioWorkflowHealthSchema,
|
|
989
|
-
tags:
|
|
990
|
-
lastActivityAt:
|
|
1192
|
+
tags: import_zod5.z.array(import_zod5.z.string()),
|
|
1193
|
+
lastActivityAt: import_zod5.z.string().datetime({ offset: true }).nullable(),
|
|
991
1194
|
metrics: StudioMetricSchema,
|
|
992
|
-
nodes:
|
|
993
|
-
internalEdges:
|
|
1195
|
+
nodes: import_zod5.z.array(StudioWorkflowNodeSchema),
|
|
1196
|
+
internalEdges: import_zod5.z.array(StudioWorkflowInternalEdgeSchema)
|
|
994
1197
|
}).strip();
|
|
995
|
-
var StudioRunsResponseSchema =
|
|
996
|
-
runs:
|
|
997
|
-
totalCount:
|
|
1198
|
+
var StudioRunsResponseSchema = import_zod5.z.object({
|
|
1199
|
+
runs: import_zod5.z.array(StudioRunSchema),
|
|
1200
|
+
totalCount: import_zod5.z.number().int().nonnegative()
|
|
998
1201
|
}).strip();
|
|
999
|
-
var StudioSessionsResponseSchema =
|
|
1000
|
-
sessions:
|
|
1001
|
-
totalCount:
|
|
1202
|
+
var StudioSessionsResponseSchema = import_zod5.z.object({
|
|
1203
|
+
sessions: import_zod5.z.array(StudioSessionSchema),
|
|
1204
|
+
totalCount: import_zod5.z.number().int().nonnegative()
|
|
1002
1205
|
}).strip();
|
|
1003
|
-
var StudioInterruptsResponseSchema =
|
|
1004
|
-
interrupts:
|
|
1005
|
-
totalCount:
|
|
1206
|
+
var StudioInterruptsResponseSchema = import_zod5.z.object({
|
|
1207
|
+
interrupts: import_zod5.z.array(StudioInterruptSchema),
|
|
1208
|
+
totalCount: import_zod5.z.number().int().nonnegative()
|
|
1006
1209
|
}).strip();
|
|
1007
|
-
var StudioRunDetailResponseSchema =
|
|
1210
|
+
var StudioRunDetailResponseSchema = import_zod5.z.object({
|
|
1008
1211
|
run: StudioRunSchema,
|
|
1009
|
-
scores:
|
|
1010
|
-
canReview:
|
|
1011
|
-
reviewActorId:
|
|
1012
|
-
events:
|
|
1212
|
+
scores: import_zod5.z.array(StudioScoreSchema).optional(),
|
|
1213
|
+
canReview: import_zod5.z.boolean().optional(),
|
|
1214
|
+
reviewActorId: import_zod5.z.string().optional(),
|
|
1215
|
+
events: import_zod5.z.array(StudioDetailEventSchema),
|
|
1013
1216
|
session: StudioSessionSchema.nullable(),
|
|
1014
|
-
interrupts:
|
|
1015
|
-
updatedAt:
|
|
1217
|
+
interrupts: import_zod5.z.array(StudioInterruptSchema),
|
|
1218
|
+
updatedAt: import_zod5.z.string().datetime({ offset: true })
|
|
1016
1219
|
}).strip();
|
|
1017
|
-
var StudioSessionDetailResponseSchema =
|
|
1220
|
+
var StudioSessionDetailResponseSchema = import_zod5.z.object({
|
|
1018
1221
|
session: StudioSessionSchema,
|
|
1019
|
-
runs:
|
|
1020
|
-
events:
|
|
1021
|
-
interrupts:
|
|
1022
|
-
updatedAt:
|
|
1222
|
+
runs: import_zod5.z.array(StudioRunSchema),
|
|
1223
|
+
events: import_zod5.z.array(StudioDetailEventSchema),
|
|
1224
|
+
interrupts: import_zod5.z.array(StudioInterruptSchema),
|
|
1225
|
+
updatedAt: import_zod5.z.string().datetime({ offset: true })
|
|
1023
1226
|
}).strip();
|
|
1024
|
-
var StudioInterruptDetailResponseSchema =
|
|
1227
|
+
var StudioInterruptDetailResponseSchema = import_zod5.z.object({
|
|
1025
1228
|
interrupt: StudioInterruptSchema,
|
|
1026
|
-
events:
|
|
1229
|
+
events: import_zod5.z.array(StudioDetailEventSchema),
|
|
1027
1230
|
run: StudioRunSchema.nullable(),
|
|
1028
1231
|
session: StudioSessionSchema.nullable(),
|
|
1029
|
-
updatedAt:
|
|
1232
|
+
updatedAt: import_zod5.z.string().datetime({ offset: true })
|
|
1030
1233
|
}).strip();
|
|
1031
|
-
var StudioWorkflowsResponseSchema =
|
|
1032
|
-
workflows:
|
|
1033
|
-
observedCalls:
|
|
1234
|
+
var StudioWorkflowsResponseSchema = import_zod5.z.object({
|
|
1235
|
+
workflows: import_zod5.z.array(StudioWorkflowSchema),
|
|
1236
|
+
observedCalls: import_zod5.z.array(
|
|
1034
1237
|
StudioWorkflowTransitionSchema.extend({
|
|
1035
|
-
runId:
|
|
1036
|
-
invocationId:
|
|
1037
|
-
branchId:
|
|
1238
|
+
runId: import_zod5.z.string(),
|
|
1239
|
+
invocationId: import_zod5.z.string(),
|
|
1240
|
+
branchId: import_zod5.z.string()
|
|
1038
1241
|
})
|
|
1039
1242
|
).optional(),
|
|
1040
|
-
transitions:
|
|
1243
|
+
transitions: import_zod5.z.array(StudioWorkflowTransitionSchema),
|
|
1041
1244
|
cohort: StudioTimeRangeContextSchema.extend({
|
|
1042
|
-
workflowId:
|
|
1043
|
-
version:
|
|
1245
|
+
workflowId: import_zod5.z.string().nullable(),
|
|
1246
|
+
version: import_zod5.z.string().nullable()
|
|
1044
1247
|
}).strip()
|
|
1045
1248
|
}).strip();
|
|
1046
|
-
var StudioCatalogsResponseSchema =
|
|
1047
|
-
environments:
|
|
1048
|
-
providers:
|
|
1049
|
-
models:
|
|
1050
|
-
workflows:
|
|
1051
|
-
tags:
|
|
1249
|
+
var StudioCatalogsResponseSchema = import_zod5.z.object({
|
|
1250
|
+
environments: import_zod5.z.array(import_zod5.z.string()),
|
|
1251
|
+
providers: import_zod5.z.array(import_zod5.z.string()),
|
|
1252
|
+
models: import_zod5.z.array(import_zod5.z.string()),
|
|
1253
|
+
workflows: import_zod5.z.array(import_zod5.z.string()),
|
|
1254
|
+
tags: import_zod5.z.array(import_zod5.z.string())
|
|
1052
1255
|
}).strip();
|
|
1053
|
-
var StudioContextResponseSchema =
|
|
1054
|
-
organization:
|
|
1055
|
-
name:
|
|
1056
|
-
}).strip(),
|
|
1057
|
-
project: import_zod4.z.object({
|
|
1058
|
-
name: import_zod4.z.string().min(1)
|
|
1256
|
+
var StudioContextResponseSchema = import_zod5.z.object({
|
|
1257
|
+
organization: import_zod5.z.object({
|
|
1258
|
+
name: import_zod5.z.string().min(1)
|
|
1059
1259
|
}).strip(),
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
mode: import_zod4.z.enum(["test", "live"]),
|
|
1063
|
-
scopes: import_zod4.z.array(import_zod4.z.string())
|
|
1260
|
+
project: import_zod5.z.object({
|
|
1261
|
+
name: import_zod5.z.string().min(1)
|
|
1064
1262
|
}).strip(),
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1263
|
+
environments: import_zod5.z.array(import_zod5.z.string()),
|
|
1264
|
+
apiKey: import_zod5.z.object({
|
|
1265
|
+
mode: import_zod5.z.enum(["test", "live"]),
|
|
1266
|
+
scopes: import_zod5.z.array(import_zod5.z.string())
|
|
1267
|
+
}).strip().nullable(),
|
|
1268
|
+
api: import_zod5.z.object({
|
|
1269
|
+
status: import_zod5.z.literal("ok"),
|
|
1270
|
+
service: import_zod5.z.literal("kortyx-api"),
|
|
1271
|
+
version: import_zod5.z.string().min(1)
|
|
1069
1272
|
}).strip()
|
|
1070
1273
|
}).strip();
|
|
1071
1274
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1072
1275
|
0 && (module.exports = {
|
|
1073
1276
|
ClearScoreResponseSchema,
|
|
1074
1277
|
ClearUserFeedbackRequestSchema,
|
|
1278
|
+
DIAGNOSTIC_LIMITS,
|
|
1279
|
+
DiagnosticContentSchema,
|
|
1280
|
+
DiagnosticCorrelationSchema,
|
|
1281
|
+
DiagnosticManifestSchema,
|
|
1282
|
+
DiagnosticNoteSchema,
|
|
1283
|
+
DiagnosticPartSchema,
|
|
1284
|
+
DiagnosticResponseSchema,
|
|
1075
1285
|
EnsureWorkflowTopologyRequestSchema,
|
|
1076
1286
|
EnsureWorkflowTopologyResponseSchema,
|
|
1077
1287
|
FEEDBACK_FILTERS,
|
|
@@ -1145,11 +1355,15 @@ var StudioContextResponseSchema = import_zod4.z.object({
|
|
|
1145
1355
|
WorkflowTopologyEdgeSchema,
|
|
1146
1356
|
WorkflowTopologyNodeSchema,
|
|
1147
1357
|
WorkflowTopologyTransitionSchema,
|
|
1358
|
+
isPrivateDiagnosticField,
|
|
1148
1359
|
newerStudioVersion,
|
|
1149
1360
|
projectWorkflowCalls,
|
|
1361
|
+
redactDiagnosticContent,
|
|
1362
|
+
redactDiagnosticText,
|
|
1150
1363
|
resolveStudioInterruptStatus,
|
|
1151
1364
|
resolveStudioTimeRange,
|
|
1152
1365
|
studioUpdateRunning,
|
|
1366
|
+
summarizeDiagnostic,
|
|
1153
1367
|
summarizeUserFeedback
|
|
1154
1368
|
});
|
|
1155
1369
|
//# sourceMappingURL=index.js.map
|