mirror of
https://github.com/rowboatlabs/rowboat.git
synced 2026-05-28 19:05:31 +02:00
Add simulation run and results types and db collection
This commit is contained in:
parent
40164734c4
commit
2c413bf165
2 changed files with 24 additions and 2 deletions
|
|
@ -7,7 +7,7 @@ import { Project } from "./types/project_types";
|
|||
import { EmbeddingDoc } from "./types/datasource_types";
|
||||
import { DataSourceDoc } from "./types/datasource_types";
|
||||
import { DataSource } from "./types/datasource_types";
|
||||
import { Scenario } from "./types/testing_types";
|
||||
import { Scenario, SimulationResult, SimulationRun } from "./types/testing_types";
|
||||
import { z } from 'zod';
|
||||
|
||||
const client = new MongoClient(process.env["MONGODB_CONNECTION_STRING"] || "mongodb://localhost:27017");
|
||||
|
|
@ -21,4 +21,6 @@ export const projectMembersCollection = db.collection<z.infer<typeof ProjectMemb
|
|||
export const webpagesCollection = db.collection<z.infer<typeof Webpage>>('webpages');
|
||||
export const agentWorkflowsCollection = db.collection<z.infer<typeof Workflow>>("agent_workflows");
|
||||
export const scenariosCollection = db.collection<z.infer<typeof Scenario>>("scenarios");
|
||||
export const apiKeysCollection = db.collection<z.infer<typeof ApiKey>>("api_keys");
|
||||
export const apiKeysCollection = db.collection<z.infer<typeof ApiKey>>("api_keys");
|
||||
export const simulationRunsCollection = db.collection<z.infer<typeof SimulationRun>>("simulation_runs");
|
||||
export const simulationResultsCollection = db.collection<z.infer<typeof SimulationResult>>("simulation_results");
|
||||
|
|
@ -20,3 +20,23 @@ export const SimulationChatMessagesData = z.object({
|
|||
});
|
||||
export const SimulationData = z.union([SimulationArticleData, SimulationScenarioData, SimulationChatMessagesData]);
|
||||
|
||||
export const SimulationRun = z.object({
|
||||
projectId: z.string(),
|
||||
status: z.union([
|
||||
z.literal('pending'),
|
||||
z.literal('running'),
|
||||
z.literal('completed'),
|
||||
z.literal('cancelled'),
|
||||
z.literal('failed')
|
||||
]),
|
||||
scenarioIds: z.array(z.string()),
|
||||
startedAt: z.string().datetime(),
|
||||
completedAt: z.string().datetime().optional(),
|
||||
});
|
||||
|
||||
export const SimulationResult = z.object({
|
||||
scenarioId: z.string(),
|
||||
result: z.union([z.literal('pass'), z.literal('fail')]),
|
||||
details: z.string()
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue