@kortyx/telemetry-contracts 0.14.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 +7 -0
- package/dist/index.d.ts +206 -1
- package/dist/index.js +622 -409
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
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,335 +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
|
-
environment:
|
|
805
|
-
resources:
|
|
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)
|
|
806
1008
|
}).strict();
|
|
807
|
-
var StudioMetricSchema =
|
|
808
|
-
runCount:
|
|
809
|
-
successRate:
|
|
810
|
-
errorRate:
|
|
811
|
-
retryCount:
|
|
812
|
-
interruptRate:
|
|
813
|
-
p50DurationMs:
|
|
814
|
-
p95DurationMs:
|
|
815
|
-
averageTokens:
|
|
816
|
-
averageCost:
|
|
817
|
-
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()
|
|
818
1020
|
}).strip();
|
|
819
|
-
var StudioRunSchema =
|
|
820
|
-
id:
|
|
1021
|
+
var StudioRunSchema = import_zod5.z.object({
|
|
1022
|
+
id: import_zod5.z.string().min(1),
|
|
821
1023
|
feedback: FeedbackSummarySchema.optional(),
|
|
822
|
-
callerNodeId:
|
|
823
|
-
parentRunId:
|
|
824
|
-
parentWorkflowId:
|
|
825
|
-
invocationId:
|
|
826
|
-
branchId:
|
|
827
|
-
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(),
|
|
828
1030
|
status: StudioRunStatusSchema,
|
|
829
|
-
startedAt:
|
|
830
|
-
endedAt:
|
|
831
|
-
workflowId:
|
|
832
|
-
workflowIds:
|
|
833
|
-
workflowRefs:
|
|
834
|
-
|
|
835
|
-
workflowId:
|
|
836
|
-
workflowRevisionId:
|
|
837
|
-
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()
|
|
838
1040
|
}).strip()
|
|
839
1041
|
),
|
|
840
|
-
workflowRevisionId:
|
|
841
|
-
declaredVersion:
|
|
842
|
-
transitionIds:
|
|
843
|
-
path:
|
|
844
|
-
sessionId:
|
|
845
|
-
provider:
|
|
846
|
-
model:
|
|
847
|
-
models:
|
|
848
|
-
durationMs:
|
|
849
|
-
tokens:
|
|
850
|
-
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(),
|
|
851
1053
|
pricingStatus: StudioPricingStatusSchema,
|
|
852
1054
|
pricingSource: StudioPricingSourceSchema,
|
|
853
|
-
currency:
|
|
854
|
-
result:
|
|
855
|
-
environment:
|
|
856
|
-
userId:
|
|
857
|
-
tenantId:
|
|
858
|
-
hasTool:
|
|
859
|
-
hasRetry:
|
|
860
|
-
interruptNodeId:
|
|
861
|
-
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(),
|
|
862
1064
|
interruptStatus: StudioInterruptStatusSchema.nullable().optional(),
|
|
863
|
-
interruptExpiresAt:
|
|
1065
|
+
interruptExpiresAt: import_zod5.z.string().datetime({ offset: true }).nullable().optional()
|
|
864
1066
|
}).strip();
|
|
865
|
-
var StudioSessionSchema =
|
|
866
|
-
id:
|
|
1067
|
+
var StudioSessionSchema = import_zod5.z.object({
|
|
1068
|
+
id: import_zod5.z.string().min(1),
|
|
867
1069
|
status: StudioRunStatusSchema,
|
|
868
|
-
lastActivityAt:
|
|
869
|
-
workflowIds:
|
|
870
|
-
workflowCount:
|
|
871
|
-
activeWorkflowId:
|
|
872
|
-
activeVersion:
|
|
873
|
-
userId:
|
|
874
|
-
tenantId:
|
|
875
|
-
runs:
|
|
876
|
-
succeeded:
|
|
877
|
-
failed:
|
|
878
|
-
interrupted:
|
|
879
|
-
checkpoints:
|
|
880
|
-
hasFork:
|
|
881
|
-
durationMs:
|
|
882
|
-
tokens:
|
|
883
|
-
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(),
|
|
884
1086
|
pricingStatus: StudioPricingStatusSchema,
|
|
885
1087
|
pricingSource: StudioPricingSourceSchema,
|
|
886
|
-
currency:
|
|
887
|
-
latestResult:
|
|
888
|
-
latestError:
|
|
889
|
-
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(),
|
|
890
1092
|
interruptStatus: StudioInterruptStatusSchema.nullable().optional(),
|
|
891
|
-
interruptExpiresAt:
|
|
892
|
-
providers:
|
|
893
|
-
models:
|
|
894
|
-
tags:
|
|
895
|
-
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)
|
|
896
1098
|
}).strip();
|
|
897
|
-
var StudioInterruptSchema =
|
|
898
|
-
afterResponseCompleted:
|
|
899
|
-
id:
|
|
1099
|
+
var StudioInterruptSchema = import_zod5.z.object({
|
|
1100
|
+
afterResponseCompleted: import_zod5.z.boolean().optional(),
|
|
1101
|
+
id: import_zod5.z.string().min(1),
|
|
900
1102
|
status: StudioInterruptStatusSchema,
|
|
901
1103
|
type: StudioInterruptTypeSchema,
|
|
902
1104
|
interactionMode: StudioInterruptInteractionModeSchema,
|
|
903
|
-
contract:
|
|
904
|
-
schemaId:
|
|
905
|
-
schemaVersion:
|
|
906
|
-
createdAt:
|
|
907
|
-
resolvedAt:
|
|
908
|
-
expiresAt:
|
|
909
|
-
question:
|
|
910
|
-
contentCaptured:
|
|
911
|
-
request:
|
|
912
|
-
requestCaptured:
|
|
913
|
-
optionCount:
|
|
914
|
-
options:
|
|
915
|
-
workflowId:
|
|
916
|
-
nodeId:
|
|
917
|
-
sessionId:
|
|
918
|
-
userId:
|
|
919
|
-
tenantId:
|
|
920
|
-
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(),
|
|
921
1123
|
responseValue: StudioInterruptValueSchema.nullable().default(null),
|
|
922
|
-
responseCaptured:
|
|
1124
|
+
responseCaptured: import_zod5.z.boolean(),
|
|
923
1125
|
resumeOutcome: StudioResumeOutcomeSchema.nullable(),
|
|
924
|
-
resumeError:
|
|
925
|
-
runId:
|
|
926
|
-
resumeToken:
|
|
927
|
-
resolvedBy:
|
|
928
|
-
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)
|
|
929
1131
|
}).strip();
|
|
930
|
-
var StudioDetailEventSchema =
|
|
931
|
-
id:
|
|
1132
|
+
var StudioDetailEventSchema = import_zod5.z.object({
|
|
1133
|
+
id: import_zod5.z.string().min(1),
|
|
932
1134
|
// Studio readers must preserve future event kinds within the same API major.
|
|
933
|
-
type:
|
|
934
|
-
occurredAt:
|
|
935
|
-
receivedAt:
|
|
936
|
-
environment:
|
|
937
|
-
serviceName:
|
|
938
|
-
deploymentRef:
|
|
939
|
-
traceId:
|
|
940
|
-
spanId:
|
|
941
|
-
parentSpanId:
|
|
942
|
-
runId:
|
|
943
|
-
sessionId:
|
|
944
|
-
workflowId:
|
|
945
|
-
workflowRevisionId:
|
|
946
|
-
nodeId:
|
|
947
|
-
userId:
|
|
948
|
-
tenantId:
|
|
949
|
-
tags:
|
|
950
|
-
metadata:
|
|
951
|
-
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())
|
|
952
1154
|
}).strip();
|
|
953
|
-
var StudioWorkflowNodeSchema =
|
|
954
|
-
tools:
|
|
1155
|
+
var StudioWorkflowNodeSchema = import_zod5.z.object({
|
|
1156
|
+
tools: import_zod5.z.array(StudioToolSchema).optional(),
|
|
955
1157
|
toolDiscovery: ToolDiscoverySchema.optional(),
|
|
956
|
-
id:
|
|
957
|
-
label:
|
|
958
|
-
type:
|
|
959
|
-
state:
|
|
960
|
-
provider:
|
|
961
|
-
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(),
|
|
962
1164
|
metrics: StudioMetricSchema
|
|
963
1165
|
}).strip();
|
|
964
|
-
var StudioWorkflowInternalEdgeSchema =
|
|
965
|
-
id:
|
|
966
|
-
source:
|
|
967
|
-
target:
|
|
968
|
-
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()
|
|
969
1171
|
}).strip();
|
|
970
|
-
var StudioWorkflowTransitionSchema =
|
|
971
|
-
kind:
|
|
972
|
-
id:
|
|
973
|
-
sourceWorkflowId:
|
|
974
|
-
sourceNodeId:
|
|
975
|
-
targetWorkflowId:
|
|
976
|
-
condition:
|
|
977
|
-
volume:
|
|
978
|
-
successRate:
|
|
979
|
-
medianDurationMs:
|
|
980
|
-
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()
|
|
981
1183
|
}).strip();
|
|
982
|
-
var StudioWorkflowSchema =
|
|
983
|
-
id:
|
|
984
|
-
name:
|
|
985
|
-
description:
|
|
986
|
-
versions:
|
|
987
|
-
activeVersion:
|
|
988
|
-
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(),
|
|
989
1191
|
health: StudioWorkflowHealthSchema,
|
|
990
|
-
tags:
|
|
991
|
-
lastActivityAt:
|
|
1192
|
+
tags: import_zod5.z.array(import_zod5.z.string()),
|
|
1193
|
+
lastActivityAt: import_zod5.z.string().datetime({ offset: true }).nullable(),
|
|
992
1194
|
metrics: StudioMetricSchema,
|
|
993
|
-
nodes:
|
|
994
|
-
internalEdges:
|
|
1195
|
+
nodes: import_zod5.z.array(StudioWorkflowNodeSchema),
|
|
1196
|
+
internalEdges: import_zod5.z.array(StudioWorkflowInternalEdgeSchema)
|
|
995
1197
|
}).strip();
|
|
996
|
-
var StudioRunsResponseSchema =
|
|
997
|
-
runs:
|
|
998
|
-
totalCount:
|
|
1198
|
+
var StudioRunsResponseSchema = import_zod5.z.object({
|
|
1199
|
+
runs: import_zod5.z.array(StudioRunSchema),
|
|
1200
|
+
totalCount: import_zod5.z.number().int().nonnegative()
|
|
999
1201
|
}).strip();
|
|
1000
|
-
var StudioSessionsResponseSchema =
|
|
1001
|
-
sessions:
|
|
1002
|
-
totalCount:
|
|
1202
|
+
var StudioSessionsResponseSchema = import_zod5.z.object({
|
|
1203
|
+
sessions: import_zod5.z.array(StudioSessionSchema),
|
|
1204
|
+
totalCount: import_zod5.z.number().int().nonnegative()
|
|
1003
1205
|
}).strip();
|
|
1004
|
-
var StudioInterruptsResponseSchema =
|
|
1005
|
-
interrupts:
|
|
1006
|
-
totalCount:
|
|
1206
|
+
var StudioInterruptsResponseSchema = import_zod5.z.object({
|
|
1207
|
+
interrupts: import_zod5.z.array(StudioInterruptSchema),
|
|
1208
|
+
totalCount: import_zod5.z.number().int().nonnegative()
|
|
1007
1209
|
}).strip();
|
|
1008
|
-
var StudioRunDetailResponseSchema =
|
|
1210
|
+
var StudioRunDetailResponseSchema = import_zod5.z.object({
|
|
1009
1211
|
run: StudioRunSchema,
|
|
1010
|
-
scores:
|
|
1011
|
-
canReview:
|
|
1012
|
-
reviewActorId:
|
|
1013
|
-
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),
|
|
1014
1216
|
session: StudioSessionSchema.nullable(),
|
|
1015
|
-
interrupts:
|
|
1016
|
-
updatedAt:
|
|
1217
|
+
interrupts: import_zod5.z.array(StudioInterruptSchema),
|
|
1218
|
+
updatedAt: import_zod5.z.string().datetime({ offset: true })
|
|
1017
1219
|
}).strip();
|
|
1018
|
-
var StudioSessionDetailResponseSchema =
|
|
1220
|
+
var StudioSessionDetailResponseSchema = import_zod5.z.object({
|
|
1019
1221
|
session: StudioSessionSchema,
|
|
1020
|
-
runs:
|
|
1021
|
-
events:
|
|
1022
|
-
interrupts:
|
|
1023
|
-
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 })
|
|
1024
1226
|
}).strip();
|
|
1025
|
-
var StudioInterruptDetailResponseSchema =
|
|
1227
|
+
var StudioInterruptDetailResponseSchema = import_zod5.z.object({
|
|
1026
1228
|
interrupt: StudioInterruptSchema,
|
|
1027
|
-
events:
|
|
1229
|
+
events: import_zod5.z.array(StudioDetailEventSchema),
|
|
1028
1230
|
run: StudioRunSchema.nullable(),
|
|
1029
1231
|
session: StudioSessionSchema.nullable(),
|
|
1030
|
-
updatedAt:
|
|
1232
|
+
updatedAt: import_zod5.z.string().datetime({ offset: true })
|
|
1031
1233
|
}).strip();
|
|
1032
|
-
var StudioWorkflowsResponseSchema =
|
|
1033
|
-
workflows:
|
|
1034
|
-
observedCalls:
|
|
1234
|
+
var StudioWorkflowsResponseSchema = import_zod5.z.object({
|
|
1235
|
+
workflows: import_zod5.z.array(StudioWorkflowSchema),
|
|
1236
|
+
observedCalls: import_zod5.z.array(
|
|
1035
1237
|
StudioWorkflowTransitionSchema.extend({
|
|
1036
|
-
runId:
|
|
1037
|
-
invocationId:
|
|
1038
|
-
branchId:
|
|
1238
|
+
runId: import_zod5.z.string(),
|
|
1239
|
+
invocationId: import_zod5.z.string(),
|
|
1240
|
+
branchId: import_zod5.z.string()
|
|
1039
1241
|
})
|
|
1040
1242
|
).optional(),
|
|
1041
|
-
transitions:
|
|
1243
|
+
transitions: import_zod5.z.array(StudioWorkflowTransitionSchema),
|
|
1042
1244
|
cohort: StudioTimeRangeContextSchema.extend({
|
|
1043
|
-
workflowId:
|
|
1044
|
-
version:
|
|
1245
|
+
workflowId: import_zod5.z.string().nullable(),
|
|
1246
|
+
version: import_zod5.z.string().nullable()
|
|
1045
1247
|
}).strip()
|
|
1046
1248
|
}).strip();
|
|
1047
|
-
var StudioCatalogsResponseSchema =
|
|
1048
|
-
environments:
|
|
1049
|
-
providers:
|
|
1050
|
-
models:
|
|
1051
|
-
workflows:
|
|
1052
|
-
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())
|
|
1053
1255
|
}).strip();
|
|
1054
|
-
var StudioContextResponseSchema =
|
|
1055
|
-
organization:
|
|
1056
|
-
name:
|
|
1256
|
+
var StudioContextResponseSchema = import_zod5.z.object({
|
|
1257
|
+
organization: import_zod5.z.object({
|
|
1258
|
+
name: import_zod5.z.string().min(1)
|
|
1057
1259
|
}).strip(),
|
|
1058
|
-
project:
|
|
1059
|
-
name:
|
|
1260
|
+
project: import_zod5.z.object({
|
|
1261
|
+
name: import_zod5.z.string().min(1)
|
|
1060
1262
|
}).strip(),
|
|
1061
|
-
environments:
|
|
1062
|
-
apiKey:
|
|
1063
|
-
mode:
|
|
1064
|
-
scopes:
|
|
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())
|
|
1065
1267
|
}).strip().nullable(),
|
|
1066
|
-
api:
|
|
1067
|
-
status:
|
|
1068
|
-
service:
|
|
1069
|
-
version:
|
|
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)
|
|
1070
1272
|
}).strip()
|
|
1071
1273
|
}).strip();
|
|
1072
1274
|
// Annotate the CommonJS export names for ESM import in node:
|
|
1073
1275
|
0 && (module.exports = {
|
|
1074
1276
|
ClearScoreResponseSchema,
|
|
1075
1277
|
ClearUserFeedbackRequestSchema,
|
|
1278
|
+
DIAGNOSTIC_LIMITS,
|
|
1279
|
+
DiagnosticContentSchema,
|
|
1280
|
+
DiagnosticCorrelationSchema,
|
|
1281
|
+
DiagnosticManifestSchema,
|
|
1282
|
+
DiagnosticNoteSchema,
|
|
1283
|
+
DiagnosticPartSchema,
|
|
1284
|
+
DiagnosticResponseSchema,
|
|
1076
1285
|
EnsureWorkflowTopologyRequestSchema,
|
|
1077
1286
|
EnsureWorkflowTopologyResponseSchema,
|
|
1078
1287
|
FEEDBACK_FILTERS,
|
|
@@ -1146,11 +1355,15 @@ var StudioContextResponseSchema = import_zod4.z.object({
|
|
|
1146
1355
|
WorkflowTopologyEdgeSchema,
|
|
1147
1356
|
WorkflowTopologyNodeSchema,
|
|
1148
1357
|
WorkflowTopologyTransitionSchema,
|
|
1358
|
+
isPrivateDiagnosticField,
|
|
1149
1359
|
newerStudioVersion,
|
|
1150
1360
|
projectWorkflowCalls,
|
|
1361
|
+
redactDiagnosticContent,
|
|
1362
|
+
redactDiagnosticText,
|
|
1151
1363
|
resolveStudioInterruptStatus,
|
|
1152
1364
|
resolveStudioTimeRange,
|
|
1153
1365
|
studioUpdateRunning,
|
|
1366
|
+
summarizeDiagnostic,
|
|
1154
1367
|
summarizeUserFeedback
|
|
1155
1368
|
});
|
|
1156
1369
|
//# sourceMappingURL=index.js.map
|