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 { EmbeddingDoc } from "./types/datasource_types";
|
||||||
import { DataSourceDoc } from "./types/datasource_types";
|
import { DataSourceDoc } from "./types/datasource_types";
|
||||||
import { DataSource } 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';
|
import { z } from 'zod';
|
||||||
|
|
||||||
const client = new MongoClient(process.env["MONGODB_CONNECTION_STRING"] || "mongodb://localhost:27017");
|
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 webpagesCollection = db.collection<z.infer<typeof Webpage>>('webpages');
|
||||||
export const agentWorkflowsCollection = db.collection<z.infer<typeof Workflow>>("agent_workflows");
|
export const agentWorkflowsCollection = db.collection<z.infer<typeof Workflow>>("agent_workflows");
|
||||||
export const scenariosCollection = db.collection<z.infer<typeof Scenario>>("scenarios");
|
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 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