diff --git a/apps/rowboat/app/lib/types/testing_types.ts b/apps/rowboat/app/lib/types/testing_types.ts index 638abf65..64c31ba2 100644 --- a/apps/rowboat/app/lib/types/testing_types.ts +++ b/apps/rowboat/app/lib/types/testing_types.ts @@ -1,6 +1,6 @@ import { z } from "zod"; -// Relevant to new simulation features +// Base type export const Scenario = z.object({ projectId: z.string(), @@ -12,12 +12,32 @@ export const Scenario = z.object({ lastUpdatedAt: z.string().datetime(), }); +// Relevant to new simulation features + export const SimulationScenarioData = z.object({ scenario: z.string(), context: z.string().default(''), }); -export const SimulationData = z.union([SimulationScenarioData]); +// Legacy + +export const SimulationArticleData = z.object({ + articleUrl: z.string(), + articleTitle: z.string().default('').optional(), + articleContent: z.string().default('').optional(), +}); + +export const SimulationChatMessagesData = z.object({ + chatMessages: z.string(), +}); + +// Relevant to new simulation features + +export const SimulationData = z.union([ + SimulationScenarioData, + SimulationArticleData, + SimulationChatMessagesData +]); export const SimulationAggregateResult = z.object({ total: z.number(), @@ -40,16 +60,4 @@ export const SimulationResult = z.object({ scenarioId: z.string(), result: z.union([z.literal('pass'), z.literal('fail')]), details: z.string() -}); - -// Legacy - -export const SimulationArticleData = z.object({ - articleUrl: z.string(), - articleTitle: z.string().default('').optional(), - articleContent: z.string().default('').optional(), -}); - -export const SimulationChatMessagesData = z.object({ - chatMessages: z.string(), -}); +}); \ No newline at end of file