@kortyx/agent 0.37.1 → 0.38.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 +40 -0
- package/README.md +16 -0
- package/dist/evals.d.ts +70 -3
- package/dist/evals.js +188 -110
- package/dist/evals.js.map +1 -1
- package/dist/index.d.ts +11 -5
- package/dist/index.js +1219 -647
- package/dist/index.js.map +1 -1
- package/dist/{studio-judge-Dsz6KDY2.d.ts → studio-judge-DCAw3v60.d.ts} +310 -6
- package/package.json +10 -10
package/dist/evals.js
CHANGED
|
@@ -24,6 +24,7 @@ __export(evals_exports, {
|
|
|
24
24
|
EvalCostAmountSchema: () => EvalCostAmountSchema,
|
|
25
25
|
EvalCostsSchema: () => EvalCostsSchema,
|
|
26
26
|
EvalEvidencePolicySchema: () => EvalEvidencePolicySchema,
|
|
27
|
+
EvalIssueSchema: () => EvalIssueSchema,
|
|
27
28
|
EvalJudgeIdentitySchema: () => EvalJudgeIdentitySchema,
|
|
28
29
|
EvalJudgeUsageSchema: () => EvalJudgeUsageSchema,
|
|
29
30
|
EvalManifestSchema: () => EvalManifestSchema,
|
|
@@ -49,6 +50,7 @@ __export(evals_exports, {
|
|
|
49
50
|
StudioEvaluationResultsSchema: () => StudioEvaluationResultsSchema,
|
|
50
51
|
StudioEvaluationStartRequestSchema: () => StudioEvaluationStartRequestSchema,
|
|
51
52
|
StudioEvaluationSummarySchema: () => StudioEvaluationSummarySchema,
|
|
53
|
+
createEvalIssue: () => createEvalIssue,
|
|
52
54
|
createStudioEvalJudge: () => createStudioEvalJudge,
|
|
53
55
|
defineSuite: () => defineSuite,
|
|
54
56
|
getEvalGradeEvidence: () => getEvalGradeEvidence,
|
|
@@ -57,6 +59,7 @@ __export(evals_exports, {
|
|
|
57
59
|
module.exports = __toCommonJS(evals_exports);
|
|
58
60
|
|
|
59
61
|
// src/evals/contracts.ts
|
|
62
|
+
var import_errors = require("@kortyx/core/errors");
|
|
60
63
|
var import_browser = require("@kortyx/prompts/browser");
|
|
61
64
|
var import_zod2 = require("zod");
|
|
62
65
|
|
|
@@ -100,6 +103,9 @@ var EvalEvidencePolicySchema = import_zod.z.object({
|
|
|
100
103
|
|
|
101
104
|
// src/evals/contracts.ts
|
|
102
105
|
var id2 = import_zod2.z.string().trim().min(1).max(256);
|
|
106
|
+
var failureDescriptor = import_zod2.z.custom(import_errors.isFailureDescriptor).transform(
|
|
107
|
+
(value) => JSON.parse(JSON.stringify((0, import_errors.serializeFailure)(value)))
|
|
108
|
+
);
|
|
103
109
|
var handler = import_zod2.z.object({ using: id2, params: import_zod2.z.json().optional() }).strict();
|
|
104
110
|
var EvalResumeResponseSchema = import_zod2.z.discriminatedUnion("type", [
|
|
105
111
|
import_zod2.z.object({ type: import_zod2.z.literal("text"), text: import_zod2.z.string() }).strict(),
|
|
@@ -162,6 +168,8 @@ var EvalVerdictSchema = import_zod2.z.object({
|
|
|
162
168
|
evidence: import_zod2.z.array(import_zod2.z.string().min(1))
|
|
163
169
|
}).strict();
|
|
164
170
|
var EvalObservationSchema = import_zod2.z.object({
|
|
171
|
+
failure: failureDescriptor.optional(),
|
|
172
|
+
diagnosticId: import_zod2.z.uuid().optional(),
|
|
165
173
|
promptUsage: import_zod2.z.array(
|
|
166
174
|
import_zod2.z.object({
|
|
167
175
|
id: import_zod2.z.string(),
|
|
@@ -201,7 +209,9 @@ var EvalObservationSchema = import_zod2.z.object({
|
|
|
201
209
|
});
|
|
202
210
|
});
|
|
203
211
|
var status = import_zod2.z.enum(["passed", "failed", "error", "cancelled", "ungraded"]);
|
|
204
|
-
var
|
|
212
|
+
var EvalIssueSchema = import_zod2.z.object({
|
|
213
|
+
failure: failureDescriptor.optional(),
|
|
214
|
+
diagnosticId: import_zod2.z.uuid().optional(),
|
|
205
215
|
phase: import_zod2.z.enum([
|
|
206
216
|
"params",
|
|
207
217
|
"setup",
|
|
@@ -209,12 +219,14 @@ var issue = import_zod2.z.object({
|
|
|
209
219
|
"responder",
|
|
210
220
|
"reference",
|
|
211
221
|
"grading",
|
|
222
|
+
"verification",
|
|
212
223
|
"cleanup",
|
|
213
224
|
"reporting"
|
|
214
225
|
]),
|
|
215
226
|
code: import_zod2.z.string(),
|
|
216
227
|
message: import_zod2.z.string()
|
|
217
228
|
}).strict();
|
|
229
|
+
var issue = EvalIssueSchema;
|
|
218
230
|
var EvalJudgeUsageSchema = import_zod2.z.object({
|
|
219
231
|
provider: import_zod2.z.string().min(1),
|
|
220
232
|
model: import_zod2.z.string().min(1),
|
|
@@ -266,6 +278,8 @@ var EvalStepResultSchema = import_zod2.z.object({
|
|
|
266
278
|
}).strict();
|
|
267
279
|
var runtimeExecution = import_zod2.z.object({ sessionId: import_zod2.z.string().min(1), runId: import_zod2.z.string().min(1) }).strict();
|
|
268
280
|
var EvalCaseResultSchema = import_zod2.z.object({
|
|
281
|
+
verification: EvalVerdictSchema.optional(),
|
|
282
|
+
phaseDurationsMs: import_zod2.z.partialRecord(issue.shape.phase, import_zod2.z.number().finite().nonnegative()).optional(),
|
|
269
283
|
caseId: id2,
|
|
270
284
|
repetition: import_zod2.z.number().int().positive(),
|
|
271
285
|
attemptId: import_zod2.z.uuid().optional(),
|
|
@@ -340,6 +354,16 @@ var EvalManifestSchema = import_zod2.z.object({
|
|
|
340
354
|
judge: judge.optional()
|
|
341
355
|
}).strict();
|
|
342
356
|
var EvalProgressSchema = import_zod2.z.discriminatedUnion("type", [
|
|
357
|
+
import_zod2.z.object({
|
|
358
|
+
type: import_zod2.z.literal("case-dispatch"),
|
|
359
|
+
caseId: id2,
|
|
360
|
+
repetition: import_zod2.z.number().int().positive(),
|
|
361
|
+
status: import_zod2.z.enum(["queued", "retrying", "reconnecting"]),
|
|
362
|
+
retryAt: import_zod2.z.iso.datetime().optional(),
|
|
363
|
+
httpStatus: import_zod2.z.number().int().min(100).max(599).optional(),
|
|
364
|
+
executionId: import_zod2.z.uuid().optional(),
|
|
365
|
+
generation: import_zod2.z.uuid().optional()
|
|
366
|
+
}).strict(),
|
|
343
367
|
import_zod2.z.object({
|
|
344
368
|
type: import_zod2.z.literal("case-runtime-associated"),
|
|
345
369
|
caseId: id2,
|
|
@@ -411,9 +435,27 @@ var StudioEvalStartRequestSchema = EvalRemoteRunRequestSchema.omit({
|
|
|
411
435
|
judge: import_zod2.z.enum(["studio", "app"]).default("studio")
|
|
412
436
|
});
|
|
413
437
|
var EvalWireEventSchema = import_zod2.z.discriminatedUnion("type", [
|
|
414
|
-
import_zod2.z.object({
|
|
415
|
-
|
|
416
|
-
|
|
438
|
+
import_zod2.z.object({
|
|
439
|
+
type: import_zod2.z.literal("execution-status"),
|
|
440
|
+
state: import_zod2.z.enum(["queued", "running", "completed", "cancelled", "unknown"])
|
|
441
|
+
}).strict(),
|
|
442
|
+
import_zod2.z.object({
|
|
443
|
+
type: import_zod2.z.literal("progress"),
|
|
444
|
+
event: EvalProgressSchema,
|
|
445
|
+
sequence: import_zod2.z.number().int().positive().optional()
|
|
446
|
+
}).strict(),
|
|
447
|
+
import_zod2.z.object({
|
|
448
|
+
type: import_zod2.z.literal("result"),
|
|
449
|
+
result: EvalRunResultSchema,
|
|
450
|
+
sequence: import_zod2.z.number().int().positive().optional()
|
|
451
|
+
}).strict(),
|
|
452
|
+
import_zod2.z.object({
|
|
453
|
+
type: import_zod2.z.literal("error"),
|
|
454
|
+
message: import_zod2.z.string(),
|
|
455
|
+
failure: failureDescriptor.optional(),
|
|
456
|
+
diagnosticId: import_zod2.z.uuid().optional(),
|
|
457
|
+
sequence: import_zod2.z.number().int().positive().optional()
|
|
458
|
+
}).strict()
|
|
417
459
|
]);
|
|
418
460
|
var EvalConfigurationError = class extends Error {
|
|
419
461
|
name = "EvalConfigurationError";
|
|
@@ -445,24 +487,58 @@ function defineSuite(suite) {
|
|
|
445
487
|
return suite;
|
|
446
488
|
}
|
|
447
489
|
|
|
490
|
+
// src/evals/errors.ts
|
|
491
|
+
var import_errors2 = require("@kortyx/core/errors");
|
|
492
|
+
var import_zod3 = require("zod");
|
|
493
|
+
var messages = {
|
|
494
|
+
params: "Case parameters failed validation.",
|
|
495
|
+
setup: "Case setup failed.",
|
|
496
|
+
execute: "Agent execution failed or returned an invalid observation.",
|
|
497
|
+
responder: "Interrupt response failed or was incompatible with the waiting contract.",
|
|
498
|
+
reference: "Reference resolution failed or returned non-JSON data.",
|
|
499
|
+
grading: "Grading failed or returned an invalid verdict.",
|
|
500
|
+
verification: "Case verification failed or returned an invalid verdict.",
|
|
501
|
+
cleanup: "Case cleanup failed.",
|
|
502
|
+
reporting: "Progress reporting failed."
|
|
503
|
+
};
|
|
504
|
+
function createEvalIssue(phase, error, options = {}) {
|
|
505
|
+
const control = (0, import_errors2.isControlFlowError)(error);
|
|
506
|
+
const declared = !control && ((0, import_errors2.isFailureDescriptor)(error) || (0, import_errors2.isFailureDescriptor)((0, import_errors2.errorProperty)(error, "failure")));
|
|
507
|
+
const failure = (0, import_errors2.serializeFailure)(control ? void 0 : error);
|
|
508
|
+
let diagnosticId = options.diagnosticId ?? (0, import_errors2.errorProperty)(error, "diagnosticId");
|
|
509
|
+
if (!control && !diagnosticId && options.reportError) {
|
|
510
|
+
try {
|
|
511
|
+
diagnosticId = options.reportError(error, options.correlation);
|
|
512
|
+
} catch {
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
return {
|
|
516
|
+
phase,
|
|
517
|
+
code: declared ? failure.code : options.code ?? "EVAL_HOOK_FAILED",
|
|
518
|
+
message: declared ? failure.message : messages[phase],
|
|
519
|
+
failure,
|
|
520
|
+
...typeof diagnosticId === "string" && import_zod3.z.uuid().safeParse(diagnosticId).success ? { diagnosticId } : {}
|
|
521
|
+
};
|
|
522
|
+
}
|
|
523
|
+
|
|
448
524
|
// src/evals/evaluation-contracts.ts
|
|
449
|
-
var
|
|
525
|
+
var import_zod5 = require("zod");
|
|
450
526
|
|
|
451
527
|
// src/evals/studio-contracts.ts
|
|
452
528
|
var import_browser2 = require("@kortyx/prompts/browser");
|
|
453
|
-
var
|
|
454
|
-
var StudioEvalTargetsResponseSchema =
|
|
455
|
-
canRun:
|
|
529
|
+
var import_zod4 = require("zod");
|
|
530
|
+
var StudioEvalTargetsResponseSchema = import_zod4.z.object({
|
|
531
|
+
canRun: import_zod4.z.boolean(),
|
|
456
532
|
studioJudge: EvalJudgeIdentitySchema.nullable().optional(),
|
|
457
|
-
targets:
|
|
458
|
-
|
|
459
|
-
id:
|
|
460
|
-
name:
|
|
461
|
-
environment:
|
|
462
|
-
error:
|
|
533
|
+
targets: import_zod4.z.array(
|
|
534
|
+
import_zod4.z.object({
|
|
535
|
+
id: import_zod4.z.string(),
|
|
536
|
+
name: import_zod4.z.string(),
|
|
537
|
+
environment: import_zod4.z.string(),
|
|
538
|
+
error: import_zod4.z.string().nullable(),
|
|
463
539
|
// Safe discovery diagnostics; optional for compatibility with older APIs.
|
|
464
|
-
diagnostic:
|
|
465
|
-
code:
|
|
540
|
+
diagnostic: import_zod4.z.object({
|
|
541
|
+
code: import_zod4.z.enum([
|
|
466
542
|
"environment_forbidden",
|
|
467
543
|
"environment_unavailable",
|
|
468
544
|
"endpoint_not_found",
|
|
@@ -471,44 +547,44 @@ var StudioEvalTargetsResponseSchema = import_zod3.z.object({
|
|
|
471
547
|
"endpoint_unreachable",
|
|
472
548
|
"manifest_invalid"
|
|
473
549
|
]),
|
|
474
|
-
httpStatus:
|
|
550
|
+
httpStatus: import_zod4.z.number().int().min(100).max(599).optional()
|
|
475
551
|
}).nullable().optional(),
|
|
476
552
|
manifest: EvalManifestSchema.nullable(),
|
|
477
|
-
revisions:
|
|
553
|
+
revisions: import_zod4.z.record(import_zod4.z.string(), import_zod4.z.string())
|
|
478
554
|
})
|
|
479
555
|
)
|
|
480
556
|
});
|
|
481
|
-
var EvalCostAmountSchema =
|
|
482
|
-
costSummary:
|
|
483
|
-
amounts:
|
|
484
|
-
|
|
485
|
-
amount:
|
|
486
|
-
currency:
|
|
557
|
+
var EvalCostAmountSchema = import_zod4.z.object({
|
|
558
|
+
costSummary: import_zod4.z.object({
|
|
559
|
+
amounts: import_zod4.z.array(
|
|
560
|
+
import_zod4.z.object({
|
|
561
|
+
amount: import_zod4.z.number().finite().nonnegative(),
|
|
562
|
+
currency: import_zod4.z.string().nullable()
|
|
487
563
|
})
|
|
488
564
|
),
|
|
489
|
-
complete:
|
|
565
|
+
complete: import_zod4.z.boolean()
|
|
490
566
|
}).optional(),
|
|
491
|
-
amount:
|
|
492
|
-
currency:
|
|
493
|
-
status:
|
|
494
|
-
calls:
|
|
495
|
-
unpricedCalls:
|
|
496
|
-
estimated:
|
|
567
|
+
amount: import_zod4.z.number().finite().nonnegative().nullable(),
|
|
568
|
+
currency: import_zod4.z.string().nullable(),
|
|
569
|
+
status: import_zod4.z.enum(["complete", "partial", "unavailable"]),
|
|
570
|
+
calls: import_zod4.z.number().int().nonnegative(),
|
|
571
|
+
unpricedCalls: import_zod4.z.number().int().nonnegative(),
|
|
572
|
+
estimated: import_zod4.z.boolean()
|
|
497
573
|
});
|
|
498
|
-
var EvalCostsSchema =
|
|
574
|
+
var EvalCostsSchema = import_zod4.z.object({
|
|
499
575
|
workflow: EvalCostAmountSchema,
|
|
500
576
|
judge: EvalCostAmountSchema,
|
|
501
577
|
total: EvalCostAmountSchema
|
|
502
578
|
});
|
|
503
|
-
var StudioEvalRunSummarySchema =
|
|
504
|
-
id:
|
|
505
|
-
evaluationId:
|
|
506
|
-
targetId:
|
|
507
|
-
targetName:
|
|
508
|
-
environment:
|
|
509
|
-
suiteId:
|
|
510
|
-
suiteRevision:
|
|
511
|
-
status:
|
|
579
|
+
var StudioEvalRunSummarySchema = import_zod4.z.object({
|
|
580
|
+
id: import_zod4.z.uuid(),
|
|
581
|
+
evaluationId: import_zod4.z.uuid().nullable().optional(),
|
|
582
|
+
targetId: import_zod4.z.string(),
|
|
583
|
+
targetName: import_zod4.z.string(),
|
|
584
|
+
environment: import_zod4.z.string(),
|
|
585
|
+
suiteId: import_zod4.z.string(),
|
|
586
|
+
suiteRevision: import_zod4.z.string(),
|
|
587
|
+
status: import_zod4.z.enum([
|
|
512
588
|
"queued",
|
|
513
589
|
"running",
|
|
514
590
|
"passed",
|
|
@@ -516,49 +592,49 @@ var StudioEvalRunSummarySchema = import_zod3.z.object({
|
|
|
516
592
|
"error",
|
|
517
593
|
"cancelled"
|
|
518
594
|
]),
|
|
519
|
-
createdAt:
|
|
520
|
-
startedAt:
|
|
521
|
-
endedAt:
|
|
522
|
-
error:
|
|
523
|
-
cancelRequestedAt:
|
|
595
|
+
createdAt: import_zod4.z.string(),
|
|
596
|
+
startedAt: import_zod4.z.string().nullable(),
|
|
597
|
+
endedAt: import_zod4.z.string().nullable(),
|
|
598
|
+
error: import_zod4.z.string().nullable(),
|
|
599
|
+
cancelRequestedAt: import_zod4.z.string().nullable(),
|
|
524
600
|
costs: EvalCostsSchema.optional(),
|
|
525
|
-
counts:
|
|
526
|
-
passed:
|
|
527
|
-
failed:
|
|
528
|
-
error:
|
|
529
|
-
cancelled:
|
|
601
|
+
counts: import_zod4.z.object({
|
|
602
|
+
passed: import_zod4.z.number(),
|
|
603
|
+
failed: import_zod4.z.number(),
|
|
604
|
+
error: import_zod4.z.number(),
|
|
605
|
+
cancelled: import_zod4.z.number()
|
|
530
606
|
}).nullable().optional(),
|
|
531
|
-
suiteName:
|
|
532
|
-
totalAttempts:
|
|
533
|
-
completedAttempts:
|
|
534
|
-
phase:
|
|
607
|
+
suiteName: import_zod4.z.string().nullable().optional(),
|
|
608
|
+
totalAttempts: import_zod4.z.number().int().nonnegative().optional(),
|
|
609
|
+
completedAttempts: import_zod4.z.number().int().nonnegative().optional(),
|
|
610
|
+
phase: import_zod4.z.string().optional()
|
|
535
611
|
});
|
|
536
|
-
var StudioEvalHistorySchema =
|
|
537
|
-
runs:
|
|
612
|
+
var StudioEvalHistorySchema = import_zod4.z.object({
|
|
613
|
+
runs: import_zod4.z.array(StudioEvalRunSummarySchema)
|
|
538
614
|
});
|
|
539
|
-
var StudioEvalDetailSchema =
|
|
615
|
+
var StudioEvalDetailSchema = import_zod4.z.object({
|
|
540
616
|
run: StudioEvalRunSummarySchema.extend({
|
|
541
|
-
caseCosts:
|
|
542
|
-
request:
|
|
543
|
-
caseIds:
|
|
544
|
-
grading:
|
|
617
|
+
caseCosts: import_zod4.z.record(import_zod4.z.string(), EvalCostsSchema).optional(),
|
|
618
|
+
request: import_zod4.z.object({
|
|
619
|
+
caseIds: import_zod4.z.array(import_zod4.z.string()).optional(),
|
|
620
|
+
grading: import_zod4.z.enum(["app", "studio"]).optional(),
|
|
545
621
|
judge: EvalJudgeIdentitySchema.optional(),
|
|
546
|
-
repetitions:
|
|
547
|
-
concurrency:
|
|
622
|
+
repetitions: import_zod4.z.number().int().positive(),
|
|
623
|
+
concurrency: import_zod4.z.number().optional(),
|
|
548
624
|
promptSnapshot: import_browser2.PromptSnapshotSchema.optional(),
|
|
549
|
-
promptGroupName:
|
|
625
|
+
promptGroupName: import_zod4.z.string().optional()
|
|
550
626
|
}).optional(),
|
|
551
627
|
suite: EvalSuiteSchema,
|
|
552
628
|
result: EvalRunResultSchema.nullable(),
|
|
553
|
-
events:
|
|
629
|
+
events: import_zod4.z.array(import_zod4.z.object({ id: import_zod4.z.number(), event: EvalProgressSchema }))
|
|
554
630
|
})
|
|
555
631
|
});
|
|
556
632
|
|
|
557
633
|
// src/evals/evaluation-contracts.ts
|
|
558
|
-
var EvaluationMetadataSchema =
|
|
559
|
-
source:
|
|
560
|
-
commit:
|
|
561
|
-
deploymentUrl:
|
|
634
|
+
var EvaluationMetadataSchema = import_zod5.z.object({
|
|
635
|
+
source: import_zod5.z.enum(["manual", "deployment", "schedule", "ci"]).default("manual"),
|
|
636
|
+
commit: import_zod5.z.string().trim().min(1).max(100).optional(),
|
|
637
|
+
deploymentUrl: import_zod5.z.url().refine((value) => {
|
|
562
638
|
try {
|
|
563
639
|
const url = new URL(value);
|
|
564
640
|
return ["https:", "http:"].includes(url.protocol) && !url.username && !url.password;
|
|
@@ -567,62 +643,62 @@ var EvaluationMetadataSchema = import_zod4.z.object({
|
|
|
567
643
|
}
|
|
568
644
|
}, "Expected an HTTP(S) URL without credentials").optional()
|
|
569
645
|
}).strict();
|
|
570
|
-
var StudioEvaluationStartRequestSchema =
|
|
571
|
-
targetId:
|
|
572
|
-
name:
|
|
646
|
+
var StudioEvaluationStartRequestSchema = import_zod5.z.object({
|
|
647
|
+
targetId: import_zod5.z.string().trim().min(1),
|
|
648
|
+
name: import_zod5.z.string().trim().min(1).max(200).optional(),
|
|
573
649
|
promptSelection: StudioEvalStartRequestSchema.shape.promptSelection,
|
|
574
|
-
selection:
|
|
575
|
-
suites:
|
|
576
|
-
|
|
577
|
-
suiteId:
|
|
578
|
-
suiteRevision:
|
|
579
|
-
caseIds:
|
|
650
|
+
selection: import_zod5.z.enum(["all", "selected"]),
|
|
651
|
+
suites: import_zod5.z.array(
|
|
652
|
+
import_zod5.z.object({
|
|
653
|
+
suiteId: import_zod5.z.string().min(1),
|
|
654
|
+
suiteRevision: import_zod5.z.string().regex(/^[a-f0-9]{64}$/),
|
|
655
|
+
caseIds: import_zod5.z.array(import_zod5.z.string().min(1)).min(1).max(100).optional()
|
|
580
656
|
}).strict()
|
|
581
657
|
).min(1).max(100),
|
|
582
|
-
judge:
|
|
583
|
-
repetitions:
|
|
584
|
-
concurrency:
|
|
658
|
+
judge: import_zod5.z.enum(["studio", "app"]).default("studio"),
|
|
659
|
+
repetitions: import_zod5.z.number().int().min(1).max(20).default(1),
|
|
660
|
+
concurrency: import_zod5.z.number().int().min(1).max(20).default(1),
|
|
585
661
|
metadata: EvaluationMetadataSchema.default({ source: "manual" }),
|
|
586
|
-
idempotencyKey:
|
|
662
|
+
idempotencyKey: import_zod5.z.string().trim().min(1).max(200).optional()
|
|
587
663
|
}).strict();
|
|
588
|
-
var StudioEvaluationSummarySchema =
|
|
589
|
-
id:
|
|
590
|
-
name:
|
|
591
|
-
targetId:
|
|
592
|
-
targetName:
|
|
593
|
-
environment:
|
|
594
|
-
selection:
|
|
664
|
+
var StudioEvaluationSummarySchema = import_zod5.z.object({
|
|
665
|
+
id: import_zod5.z.uuid(),
|
|
666
|
+
name: import_zod5.z.string(),
|
|
667
|
+
targetId: import_zod5.z.string(),
|
|
668
|
+
targetName: import_zod5.z.string(),
|
|
669
|
+
environment: import_zod5.z.string(),
|
|
670
|
+
selection: import_zod5.z.enum(["all", "selected"]),
|
|
595
671
|
metadata: EvaluationMetadataSchema,
|
|
596
672
|
judge: EvalJudgeIdentitySchema.optional(),
|
|
597
673
|
status: StudioEvalRunSummarySchema.shape.status,
|
|
598
|
-
createdAt:
|
|
599
|
-
startedAt:
|
|
600
|
-
endedAt:
|
|
601
|
-
cancelRequestedAt:
|
|
602
|
-
suiteCount:
|
|
603
|
-
completedSuites:
|
|
604
|
-
totalAttempts:
|
|
605
|
-
completedAttempts:
|
|
606
|
-
counts:
|
|
607
|
-
passed:
|
|
608
|
-
failed:
|
|
609
|
-
error:
|
|
610
|
-
cancelled:
|
|
674
|
+
createdAt: import_zod5.z.string(),
|
|
675
|
+
startedAt: import_zod5.z.string().nullable(),
|
|
676
|
+
endedAt: import_zod5.z.string().nullable(),
|
|
677
|
+
cancelRequestedAt: import_zod5.z.string().nullable(),
|
|
678
|
+
suiteCount: import_zod5.z.number().int().nonnegative(),
|
|
679
|
+
completedSuites: import_zod5.z.number().int().nonnegative(),
|
|
680
|
+
totalAttempts: import_zod5.z.number().int().nonnegative(),
|
|
681
|
+
completedAttempts: import_zod5.z.number().int().nonnegative(),
|
|
682
|
+
counts: import_zod5.z.object({
|
|
683
|
+
passed: import_zod5.z.number(),
|
|
684
|
+
failed: import_zod5.z.number(),
|
|
685
|
+
error: import_zod5.z.number(),
|
|
686
|
+
cancelled: import_zod5.z.number()
|
|
611
687
|
}),
|
|
612
688
|
costs: EvalCostsSchema.optional(),
|
|
613
|
-
legacy:
|
|
689
|
+
legacy: import_zod5.z.boolean().optional()
|
|
614
690
|
});
|
|
615
|
-
var StudioEvaluationHistorySchema =
|
|
616
|
-
runs:
|
|
691
|
+
var StudioEvaluationHistorySchema = import_zod5.z.object({
|
|
692
|
+
runs: import_zod5.z.array(StudioEvaluationSummarySchema)
|
|
617
693
|
});
|
|
618
|
-
var StudioEvaluationDetailSchema =
|
|
694
|
+
var StudioEvaluationDetailSchema = import_zod5.z.object({
|
|
619
695
|
run: StudioEvaluationSummarySchema.extend({
|
|
620
|
-
suites:
|
|
696
|
+
suites: import_zod5.z.array(StudioEvalRunSummarySchema)
|
|
621
697
|
})
|
|
622
698
|
});
|
|
623
|
-
var StudioEvaluationResultsSchema =
|
|
699
|
+
var StudioEvaluationResultsSchema = import_zod5.z.object({
|
|
624
700
|
run: StudioEvaluationSummarySchema.extend({
|
|
625
|
-
suites:
|
|
701
|
+
suites: import_zod5.z.array(StudioEvalDetailSchema.shape.run)
|
|
626
702
|
})
|
|
627
703
|
});
|
|
628
704
|
|
|
@@ -831,6 +907,7 @@ async function createStudioEvalJudge(options) {
|
|
|
831
907
|
EvalCostAmountSchema,
|
|
832
908
|
EvalCostsSchema,
|
|
833
909
|
EvalEvidencePolicySchema,
|
|
910
|
+
EvalIssueSchema,
|
|
834
911
|
EvalJudgeIdentitySchema,
|
|
835
912
|
EvalJudgeUsageSchema,
|
|
836
913
|
EvalManifestSchema,
|
|
@@ -856,6 +933,7 @@ async function createStudioEvalJudge(options) {
|
|
|
856
933
|
StudioEvaluationResultsSchema,
|
|
857
934
|
StudioEvaluationStartRequestSchema,
|
|
858
935
|
StudioEvaluationSummarySchema,
|
|
936
|
+
createEvalIssue,
|
|
859
937
|
createStudioEvalJudge,
|
|
860
938
|
defineSuite,
|
|
861
939
|
getEvalGradeEvidence,
|