All files / shared/src/types/data skill-optimization-evaluation.ts

100% Statements 40/40
100% Branches 0/0
100% Functions 0/0
100% Lines 40/40

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 631x 1x         1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x         1x 1x 1x 1x 1x 1x 1x 1x 1x 1x           1x 1x 1x 1x 1x 1x 1x 1x 1x 1x           1x 1x 1x 1x 1x 1x 1x          
import { EvaluationMethodName } from '@shared/types/evaluations';
import { z } from 'zod';
 
/**
 * An evaluation automatically created from the description of the skill.
 */
export const SkillOptimizationEvaluation = z.object({
  id: z.uuid(),
  agent_id: z.uuid(),
  skill_id: z.uuid(),
  evaluation_method: z.enum(EvaluationMethodName),
  params: z.record(z.string(), z.unknown()),
  weight: z.number().positive().default(1.0),
  model_id: z.uuid().nullable(),
  created_at: z.iso.datetime({ offset: true }),
  updated_at: z.iso.datetime({ offset: true }),
});
export type SkillOptimizationEvaluation = z.infer<
  typeof SkillOptimizationEvaluation
>;
 
export const SkillOptimizationEvaluationQueryParams = z
  .object({
    id: z.uuid().optional(),
    agent_id: z.uuid().optional(),
    skill_id: z.uuid().optional(),
    evaluation_method: z.enum(EvaluationMethodName).optional(),
    limit: z.coerce.number().int().positive().optional(),
    offset: z.coerce.number().int().min(0).optional(),
  })
  .strict();
 
export type SkillOptimizationEvaluationQueryParams = z.infer<
  typeof SkillOptimizationEvaluationQueryParams
>;
 
export const SkillOptimizationEvaluationCreateParams = z
  .object({
    agent_id: z.uuid(),
    skill_id: z.uuid(),
    evaluation_method: z.enum(EvaluationMethodName),
    params: z.record(z.string(), z.unknown()).default({}),
    weight: z.number().positive().default(1.0),
    model_id: z.uuid().nullable().optional(),
  })
  .strict();
 
export type SkillOptimizationEvaluationCreateParams = z.infer<
  typeof SkillOptimizationEvaluationCreateParams
>;
 
export const SkillOptimizationEvaluationUpdateParams = z
  .object({
    weight: z.number().positive().optional(),
    params: z.record(z.string(), z.unknown()).optional(),
    model_id: z.uuid().nullable().optional(),
  })
  .strict();
 
export type SkillOptimizationEvaluationUpdateParams = z.infer<
  typeof SkillOptimizationEvaluationUpdateParams
>;