@kortyx/agent 0.30.0 → 0.31.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/dist/index.js CHANGED
@@ -543,7 +543,7 @@ var require_dist = __commonJS({
543
543
  workflowCallFingerprint: () => workflowCallFingerprint
544
544
  });
545
545
  module2.exports = __toCommonJS2(index_exports2);
546
- var import_zod9 = require("zod");
546
+ var import_zod11 = require("zod");
547
547
  var import_node_async_hooks = require("async_hooks");
548
548
  var storage = new import_node_async_hooks.AsyncLocalStorage();
549
549
  var isRecord5 = (value) => Boolean(value) && typeof value === "object" && !Array.isArray(value);
@@ -735,9 +735,9 @@ var require_dist = __commonJS({
735
735
  runtime: { ...ctx.state.runtime, ...buildRuntimeStateUpdates(ctx) }
736
736
  };
737
737
  }
738
- var optionsSchema = import_zod9.z.object({
739
- message: import_zod9.z.string().optional(),
740
- data: import_zod9.z.json().optional()
738
+ var optionsSchema = import_zod11.z.object({
739
+ message: import_zod11.z.string().optional(),
740
+ data: import_zod11.z.json().optional()
741
741
  }).strict();
742
742
  async function completeResponse(options = {}) {
743
743
  const ctx = getHookContext();
@@ -4843,10 +4843,16 @@ __export(index_exports, {
4843
4843
  EvalRunResultSchema: () => EvalRunResultSchema,
4844
4844
  EvalSuiteSchema: () => EvalSuiteSchema,
4845
4845
  EvalWireEventSchema: () => EvalWireEventSchema,
4846
+ EvaluationMetadataSchema: () => EvaluationMetadataSchema,
4846
4847
  ExecutionRequestError: () => ExecutionRequestError,
4847
4848
  StudioEvalJudgeRequestSchema: () => StudioEvalJudgeRequestSchema,
4848
4849
  StudioEvalJudgeResponseSchema: () => StudioEvalJudgeResponseSchema,
4849
4850
  StudioEvalStartRequestSchema: () => StudioEvalStartRequestSchema,
4851
+ StudioEvaluationDetailSchema: () => StudioEvaluationDetailSchema,
4852
+ StudioEvaluationHistorySchema: () => StudioEvaluationHistorySchema,
4853
+ StudioEvaluationResultsSchema: () => StudioEvaluationResultsSchema,
4854
+ StudioEvaluationStartRequestSchema: () => StudioEvaluationStartRequestSchema,
4855
+ StudioEvaluationSummarySchema: () => StudioEvaluationSummarySchema,
4850
4856
  createAgent: () => createAgent,
4851
4857
  createChatRouteHandler: () => createChatRouteHandler,
4852
4858
  createCheckpointRouteHandler: () => createCheckpointRouteHandler,
@@ -9164,8 +9170,176 @@ function defineSuite(suite) {
9164
9170
  return suite;
9165
9171
  }
9166
9172
 
9167
- // src/evals/judge.ts
9173
+ // src/evals/evaluation-contracts.ts
9174
+ var import_zod9 = require("zod");
9175
+
9176
+ // src/evals/studio-contracts.ts
9168
9177
  var import_zod8 = require("zod");
9178
+ var StudioEvalTargetsResponseSchema = import_zod8.z.object({
9179
+ canRun: import_zod8.z.boolean(),
9180
+ studioJudge: EvalJudgeIdentitySchema.nullable().optional(),
9181
+ targets: import_zod8.z.array(
9182
+ import_zod8.z.object({
9183
+ id: import_zod8.z.string(),
9184
+ name: import_zod8.z.string(),
9185
+ environment: import_zod8.z.string(),
9186
+ error: import_zod8.z.string().nullable(),
9187
+ // Safe discovery diagnostics; optional for compatibility with older APIs.
9188
+ diagnostic: import_zod8.z.object({
9189
+ code: import_zod8.z.enum([
9190
+ "environment_forbidden",
9191
+ "environment_unavailable",
9192
+ "endpoint_not_found",
9193
+ "endpoint_unauthorized",
9194
+ "endpoint_http_error",
9195
+ "endpoint_unreachable",
9196
+ "manifest_invalid"
9197
+ ]),
9198
+ httpStatus: import_zod8.z.number().int().min(100).max(599).optional()
9199
+ }).nullable().optional(),
9200
+ manifest: EvalManifestSchema.nullable(),
9201
+ revisions: import_zod8.z.record(import_zod8.z.string(), import_zod8.z.string())
9202
+ })
9203
+ )
9204
+ });
9205
+ var EvalCostAmountSchema = import_zod8.z.object({
9206
+ amount: import_zod8.z.number().finite().nonnegative().nullable(),
9207
+ currency: import_zod8.z.string().nullable(),
9208
+ status: import_zod8.z.enum(["complete", "partial", "unavailable"]),
9209
+ calls: import_zod8.z.number().int().nonnegative(),
9210
+ unpricedCalls: import_zod8.z.number().int().nonnegative(),
9211
+ estimated: import_zod8.z.boolean()
9212
+ });
9213
+ var EvalCostsSchema = import_zod8.z.object({
9214
+ workflow: EvalCostAmountSchema,
9215
+ judge: EvalCostAmountSchema,
9216
+ total: EvalCostAmountSchema
9217
+ });
9218
+ var StudioEvalRunSummarySchema = import_zod8.z.object({
9219
+ id: import_zod8.z.uuid(),
9220
+ evaluationId: import_zod8.z.uuid().nullable().optional(),
9221
+ targetId: import_zod8.z.string(),
9222
+ targetName: import_zod8.z.string(),
9223
+ environment: import_zod8.z.string(),
9224
+ suiteId: import_zod8.z.string(),
9225
+ suiteRevision: import_zod8.z.string(),
9226
+ status: import_zod8.z.enum([
9227
+ "queued",
9228
+ "running",
9229
+ "passed",
9230
+ "failed",
9231
+ "error",
9232
+ "cancelled"
9233
+ ]),
9234
+ createdAt: import_zod8.z.string(),
9235
+ startedAt: import_zod8.z.string().nullable(),
9236
+ endedAt: import_zod8.z.string().nullable(),
9237
+ error: import_zod8.z.string().nullable(),
9238
+ cancelRequestedAt: import_zod8.z.string().nullable(),
9239
+ costs: EvalCostsSchema.optional(),
9240
+ counts: import_zod8.z.object({
9241
+ passed: import_zod8.z.number(),
9242
+ failed: import_zod8.z.number(),
9243
+ error: import_zod8.z.number(),
9244
+ cancelled: import_zod8.z.number()
9245
+ }).nullable().optional(),
9246
+ suiteName: import_zod8.z.string().nullable().optional(),
9247
+ totalAttempts: import_zod8.z.number().int().nonnegative().optional(),
9248
+ completedAttempts: import_zod8.z.number().int().nonnegative().optional(),
9249
+ phase: import_zod8.z.string().optional()
9250
+ });
9251
+ var StudioEvalHistorySchema = import_zod8.z.object({
9252
+ runs: import_zod8.z.array(StudioEvalRunSummarySchema)
9253
+ });
9254
+ var StudioEvalDetailSchema = import_zod8.z.object({
9255
+ run: StudioEvalRunSummarySchema.extend({
9256
+ caseCosts: import_zod8.z.record(import_zod8.z.string(), EvalCostsSchema).optional(),
9257
+ request: import_zod8.z.object({
9258
+ caseIds: import_zod8.z.array(import_zod8.z.string()).optional(),
9259
+ grading: import_zod8.z.enum(["app", "studio"]).optional(),
9260
+ judge: EvalJudgeIdentitySchema.optional(),
9261
+ repetitions: import_zod8.z.number().int().positive(),
9262
+ concurrency: import_zod8.z.number().optional()
9263
+ }).optional(),
9264
+ suite: EvalSuiteSchema,
9265
+ result: EvalRunResultSchema.nullable(),
9266
+ events: import_zod8.z.array(import_zod8.z.object({ id: import_zod8.z.number(), event: EvalProgressSchema }))
9267
+ })
9268
+ });
9269
+
9270
+ // src/evals/evaluation-contracts.ts
9271
+ var EvaluationMetadataSchema = import_zod9.z.object({
9272
+ source: import_zod9.z.enum(["manual", "deployment", "schedule", "ci"]).default("manual"),
9273
+ commit: import_zod9.z.string().trim().min(1).max(100).optional(),
9274
+ deploymentUrl: import_zod9.z.url().refine((value) => {
9275
+ try {
9276
+ const url = new URL(value);
9277
+ return ["https:", "http:"].includes(url.protocol) && !url.username && !url.password;
9278
+ } catch {
9279
+ return false;
9280
+ }
9281
+ }, "Expected an HTTP(S) URL without credentials").optional()
9282
+ }).strict();
9283
+ var StudioEvaluationStartRequestSchema = import_zod9.z.object({
9284
+ targetId: import_zod9.z.string().trim().min(1),
9285
+ name: import_zod9.z.string().trim().min(1).max(200).optional(),
9286
+ selection: import_zod9.z.enum(["all", "selected"]),
9287
+ suites: import_zod9.z.array(
9288
+ import_zod9.z.object({
9289
+ suiteId: import_zod9.z.string().min(1),
9290
+ suiteRevision: import_zod9.z.string().regex(/^[a-f0-9]{64}$/),
9291
+ caseIds: import_zod9.z.array(import_zod9.z.string().min(1)).min(1).max(100).optional()
9292
+ }).strict()
9293
+ ).min(1).max(100),
9294
+ judge: import_zod9.z.enum(["studio", "app"]).default("studio"),
9295
+ repetitions: import_zod9.z.number().int().min(1).max(20).default(1),
9296
+ concurrency: import_zod9.z.number().int().min(1).max(4).default(1),
9297
+ metadata: EvaluationMetadataSchema.default({ source: "manual" }),
9298
+ idempotencyKey: import_zod9.z.string().trim().min(1).max(200).optional()
9299
+ }).strict();
9300
+ var StudioEvaluationSummarySchema = import_zod9.z.object({
9301
+ id: import_zod9.z.uuid(),
9302
+ name: import_zod9.z.string(),
9303
+ targetId: import_zod9.z.string(),
9304
+ targetName: import_zod9.z.string(),
9305
+ environment: import_zod9.z.string(),
9306
+ selection: import_zod9.z.enum(["all", "selected"]),
9307
+ metadata: EvaluationMetadataSchema,
9308
+ judge: EvalJudgeIdentitySchema.optional(),
9309
+ status: StudioEvalRunSummarySchema.shape.status,
9310
+ createdAt: import_zod9.z.string(),
9311
+ startedAt: import_zod9.z.string().nullable(),
9312
+ endedAt: import_zod9.z.string().nullable(),
9313
+ cancelRequestedAt: import_zod9.z.string().nullable(),
9314
+ suiteCount: import_zod9.z.number().int().nonnegative(),
9315
+ completedSuites: import_zod9.z.number().int().nonnegative(),
9316
+ totalAttempts: import_zod9.z.number().int().nonnegative(),
9317
+ completedAttempts: import_zod9.z.number().int().nonnegative(),
9318
+ counts: import_zod9.z.object({
9319
+ passed: import_zod9.z.number(),
9320
+ failed: import_zod9.z.number(),
9321
+ error: import_zod9.z.number(),
9322
+ cancelled: import_zod9.z.number()
9323
+ }),
9324
+ costs: EvalCostsSchema.optional(),
9325
+ legacy: import_zod9.z.boolean().optional()
9326
+ });
9327
+ var StudioEvaluationHistorySchema = import_zod9.z.object({
9328
+ runs: import_zod9.z.array(StudioEvaluationSummarySchema)
9329
+ });
9330
+ var StudioEvaluationDetailSchema = import_zod9.z.object({
9331
+ run: StudioEvaluationSummarySchema.extend({
9332
+ suites: import_zod9.z.array(StudioEvalRunSummarySchema)
9333
+ })
9334
+ });
9335
+ var StudioEvaluationResultsSchema = import_zod9.z.object({
9336
+ run: StudioEvaluationSummarySchema.extend({
9337
+ suites: import_zod9.z.array(StudioEvalDetailSchema.shape.run)
9338
+ })
9339
+ });
9340
+
9341
+ // src/evals/judge.ts
9342
+ var import_zod10 = require("zod");
9169
9343
  function createEvalJudge({
9170
9344
  model,
9171
9345
  id: id2 = `${model.provider.id}/${model.modelId}`,
@@ -9192,7 +9366,7 @@ function createEvalJudge({
9192
9366
  responseFormat: {
9193
9367
  type: "json",
9194
9368
  name: "eval_verdict",
9195
- schema: import_zod8.z.toJSONSchema(EvalVerdictSchema)
9369
+ schema: import_zod10.z.toJSONSchema(EvalVerdictSchema)
9196
9370
  }
9197
9371
  });
9198
9372
  const result = await judge2.invoke([
@@ -9510,10 +9684,16 @@ async function createStudioEvalJudge(options) {
9510
9684
  EvalRunResultSchema,
9511
9685
  EvalSuiteSchema,
9512
9686
  EvalWireEventSchema,
9687
+ EvaluationMetadataSchema,
9513
9688
  ExecutionRequestError,
9514
9689
  StudioEvalJudgeRequestSchema,
9515
9690
  StudioEvalJudgeResponseSchema,
9516
9691
  StudioEvalStartRequestSchema,
9692
+ StudioEvaluationDetailSchema,
9693
+ StudioEvaluationHistorySchema,
9694
+ StudioEvaluationResultsSchema,
9695
+ StudioEvaluationStartRequestSchema,
9696
+ StudioEvaluationSummarySchema,
9517
9697
  createAgent,
9518
9698
  createChatRouteHandler,
9519
9699
  createCheckpointRouteHandler,