@virtualkitchenco/multiverse-sdk 0.0.14 → 0.0.16

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/README.md ADDED
@@ -0,0 +1,242 @@
1
+ # @virtualkitchenco/multiverse-sdk
2
+
3
+ Simulation testing for AI agents. Test your agent against realistic scenarios with simulated users and automated quality evaluation — no real APIs needed.
4
+
5
+ ## Install
6
+
7
+ ```bash
8
+ npm install @virtualkitchenco/multiverse-sdk
9
+ ```
10
+
11
+ ## Quick Start
12
+
13
+ ```typescript
14
+ import { multiverse, wrap } from '@virtualkitchenco/multiverse-sdk';
15
+ import { z } from 'zod';
16
+
17
+ // 1. Configure
18
+ multiverse.configure({
19
+ llm: { provider: 'anthropic', model: 'claude-sonnet-4-20250514' },
20
+ baseUrl: 'https://your-multiverse-server.com',
21
+ apiKey: process.env.MULTIVERSE_API_KEY,
22
+ });
23
+
24
+ // 2. Define output schemas
25
+ const SearchResultSchema = z.object({
26
+ flights: z.array(z.object({
27
+ id: z.string(),
28
+ from: z.string(),
29
+ to: z.string(),
30
+ price: z.number(),
31
+ airline: z.string(),
32
+ })),
33
+ });
34
+
35
+ const BookingSchema = z.object({
36
+ bookingId: z.string(),
37
+ flightId: z.string(),
38
+ passengerName: z.string(),
39
+ status: z.enum(['confirmed', 'pending', 'failed']),
40
+ });
41
+
42
+ // 3. Wrap your tools
43
+ const searchFlights = wrap(searchFlightsTool, {
44
+ output: SearchResultSchema,
45
+ effects: (output) =>
46
+ output.flights.map((f) => ({
47
+ operation: 'create' as const,
48
+ collection: 'flights',
49
+ id: f.id,
50
+ data: f,
51
+ })),
52
+ });
53
+
54
+ const bookFlight = wrap(bookFlightTool, {
55
+ output: BookingSchema,
56
+ effects: (output) => [
57
+ { operation: 'create', collection: 'bookings', id: output.bookingId, data: output },
58
+ ],
59
+ });
60
+
61
+ // 4. Define and run tests
62
+ const test = multiverse.describe({
63
+ name: 'flight-booking-agent',
64
+ task: 'Book flights for passengers',
65
+ agent: runAgent,
66
+ });
67
+
68
+ const results = await test.run({
69
+ simulateUser: true,
70
+ success: (world) => world.getCollection('bookings').size > 0,
71
+ });
72
+
73
+ console.log(`${results.passRate}% pass`);
74
+ ```
75
+
76
+ ## API
77
+
78
+ ### `multiverse.configure(config)`
79
+
80
+ Initialize the SDK. Call once at startup.
81
+
82
+ ```typescript
83
+ multiverse.configure({
84
+ llm: {
85
+ provider: 'anthropic',
86
+ model: 'claude-sonnet-4-20250514',
87
+ },
88
+ baseUrl: 'https://your-multiverse-server.com',
89
+ apiKey: process.env.MULTIVERSE_API_KEY,
90
+ });
91
+ ```
92
+
93
+ ### `wrap(tool, config)`
94
+
95
+ Wrap a LangChain tool for simulation testing.
96
+
97
+ ```typescript
98
+ import { wrap } from '@virtualkitchenco/multiverse-sdk';
99
+
100
+ const myTool = wrap(langchainTool, {
101
+ output: OutputSchema,
102
+ effects: (output, world) => [
103
+ { operation: 'create', collection: 'orders', id: output.id, data: output },
104
+ ],
105
+ invariants: [
106
+ { collection: 'inventory', field: 'quantity', condition: 'gte', value: 0 },
107
+ ],
108
+ });
109
+ ```
110
+
111
+ | Option | Type | Description |
112
+ |--------|------|-------------|
113
+ | `output` | `ZodSchema` | Output schema for responses |
114
+ | `effects` | `(output, world) => Effect[]` | Declare state changes from output |
115
+ | `invariants` | `Invariant[]` | Constraints to enforce |
116
+ | `input` | `ZodSchema` | Input schema (auto-extracted from LangChain tools) |
117
+ | `name` | `string` | Tool name (auto-extracted from LangChain tools) |
118
+ | `description` | `string` | Tool description (auto-extracted from LangChain tools) |
119
+
120
+ ### `multiverse.describe(options)`
121
+
122
+ Define a test. Returns an object with `generateScenarios()` and `run()` methods.
123
+
124
+ ```typescript
125
+ const test = multiverse.describe({
126
+ name: 'my-agent',
127
+ task: 'Complete the task for the user',
128
+ agent: runAgent,
129
+ });
130
+ ```
131
+
132
+ **Agent function signature:**
133
+
134
+ ```typescript
135
+ async function runAgent(context: {
136
+ userMessage: string;
137
+ runId: string;
138
+ }): Promise<string>
139
+ ```
140
+
141
+ ### `test.generateScenarios(options)`
142
+
143
+ Generate test scenarios upfront for inspection or reuse.
144
+
145
+ ```typescript
146
+ const scenarios = await test.generateScenarios({ count: 10 });
147
+
148
+ // With typed variables for programmatic assertions
149
+ const scenarios = await test.generateScenarios({
150
+ count: 5,
151
+ variables: z.object({
152
+ expectedBookings: z.number().describe(
153
+ 'Total bookings that should be created (e.g. 2 passengers round-trip = 4)'
154
+ ),
155
+ }),
156
+ });
157
+ ```
158
+
159
+ ### `test.run(options)`
160
+
161
+ Run tests against the agent.
162
+
163
+ ```typescript
164
+ const results = await test.run({
165
+ success: (world, trace, scenario) => {
166
+ return world.getCollection('bookings').size === scenario.variables.expectedBookings;
167
+ },
168
+ scenarios, // Pre-generated or auto-generated
169
+ scenarioCount: 5, // Auto-generate count (ignored if scenarios provided)
170
+ trialsPerScenario: 4,
171
+ simulateUser: true,
172
+ maxTurns: 20,
173
+ qualityThreshold: 70,
174
+ concurrency: 8,
175
+ onProgress: (p) => console.log(`${p.completed}/${p.total}`),
176
+ ci: {
177
+ postToPR: true, // Install the Multiverse GitHub App to enable
178
+ printReport: true,
179
+ },
180
+ });
181
+ ```
182
+
183
+ **Results:**
184
+
185
+ ```typescript
186
+ interface TestResults {
187
+ passRate: number;
188
+ runs: RunResult[];
189
+ duration: number;
190
+ url?: string;
191
+ report?: ReportResponse;
192
+ }
193
+ ```
194
+
195
+ ## LangChain Integration
196
+
197
+ `wrap()` works with any LangChain tool. It extracts `name`, `description`, and `schema` automatically:
198
+
199
+ ```typescript
200
+ import { ChatAnthropic } from '@langchain/anthropic';
201
+ import { tool } from '@langchain/core/tools';
202
+ import { createReactAgent } from '@langchain/langgraph/prebuilt';
203
+ import { multiverse, wrap } from '@virtualkitchenco/multiverse-sdk';
204
+
205
+ // Your LangChain tools
206
+ const searchFlightsTool = tool(
207
+ async ({ from, to, date }) => { /* real implementation */ },
208
+ {
209
+ name: 'searchFlights',
210
+ description: 'Search for available flights',
211
+ schema: z.object({
212
+ from: z.string().describe('Departure airport code'),
213
+ to: z.string().describe('Arrival airport code'),
214
+ date: z.string().describe('Departure date (YYYY-MM-DD)'),
215
+ }),
216
+ }
217
+ );
218
+
219
+ // Wrap for simulation
220
+ const searchFlights = wrap(searchFlightsTool, {
221
+ output: SearchResultSchema,
222
+ effects: (output) =>
223
+ output.flights.map((f) => ({
224
+ operation: 'create' as const,
225
+ collection: 'flights',
226
+ id: f.id,
227
+ data: f,
228
+ })),
229
+ });
230
+
231
+ // Use wrapped tools directly in your agent
232
+ const agent = createReactAgent({
233
+ llm: new ChatAnthropic({ model: 'claude-sonnet-4-20250514' }),
234
+ tools: [searchFlights, bookFlight],
235
+ });
236
+ ```
237
+
238
+ Wrapped tools are drop-in replacements — they preserve the original tool's type, name, and schema.
239
+
240
+ ## License
241
+
242
+ Proprietary. All rights reserved.
package/dist/client.d.ts CHANGED
@@ -13,15 +13,19 @@ export interface CreateSessionRequest {
13
13
  tools: Array<{
14
14
  name: string;
15
15
  description: string;
16
+ inputSchema?: Record<string, unknown>;
16
17
  }>;
17
18
  scenarioConfig?: {
18
19
  count?: number;
19
20
  };
20
- seed?: Record<string, Record<string, unknown>>;
21
21
  llmConfig: {
22
22
  provider: string;
23
23
  model?: string;
24
24
  };
25
+ /** Pre-generated scenarios — skips server-side generation */
26
+ scenarios?: Scenario[];
27
+ /** JSON schema for variables to generate per scenario */
28
+ variablesSchema?: Record<string, unknown>;
25
29
  }
26
30
  export interface SimulateRequest {
27
31
  tool: string;
@@ -43,6 +47,8 @@ export interface SimulateResponse {
43
47
  data?: Record<string, unknown>;
44
48
  }>;
45
49
  worldState: Record<string, unknown>;
50
+ /** True when output is a planned failure (bad_data/empty) — skip effects */
51
+ isFailure?: boolean;
46
52
  analysis?: {
47
53
  action: string;
48
54
  matches: string[];
@@ -52,8 +58,6 @@ export interface SimulateResponse {
52
58
  }
53
59
  export interface ReportResponse {
54
60
  markdown: string;
55
- summary: string;
56
- tier: 'S' | 'A' | 'B' | 'C' | 'D';
57
61
  passRate: number;
58
62
  analysis: {
59
63
  summary: string;
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@
6
6
  * 2. Orchestrates test runs via API
7
7
  * 3. Runs user's agent code and success function locally
8
8
  */
9
- import type { Criterion, ToolDef, Infer, Schema, TestResults, LLMConfig, SuccessFn, EffectsFn, Invariant } from '@virtualkitchenco/multiverse-types';
9
+ import type { Criterion, Scenario, Trace, ToolDef, Infer, Schema, TestResults, LLMConfig, WorldStateAccessor, EffectsFn, Invariant } from '@virtualkitchenco/multiverse-types';
10
10
  interface MultiverseConfig {
11
11
  /** Base URL of the Multiverse API server (required) */
12
12
  baseUrl: string;
@@ -19,10 +19,6 @@ interface MultiverseConfig {
19
19
  * Configure Multiverse
20
20
  */
21
21
  declare function configure(options: MultiverseConfig): void;
22
- /**
23
- * Seed initial world state
24
- */
25
- declare function seed(data: Record<string, Record<string, unknown>>): void;
26
22
  /**
27
23
  * Check if configured
28
24
  */
@@ -75,21 +71,25 @@ export interface AgentContext {
75
71
  }
76
72
  type AgentFn = (context: AgentContext) => Promise<unknown>;
77
73
  export type { Criterion };
78
- interface TestOptions {
74
+ interface DescribeOptions {
79
75
  /** Agent name for grouping in the dashboard */
80
76
  name: string;
77
+ /** Task description — what the agent is being tested on */
78
+ task: string;
81
79
  /** Agent function to test. Must be safe for parallel execution — use context.runId to scope conversation memory. */
82
80
  agent: AgentFn;
83
- /** Task description */
84
- task: string;
81
+ }
82
+ interface RunOptions<S extends Scenario = Scenario> {
85
83
  /** Success function - returns true if task completed */
86
- success: SuccessFn;
84
+ success: (world: WorldStateAccessor, trace: Trace, scenario: S) => boolean;
85
+ /** Pre-generated scenarios. If provided, scenarioCount is ignored. */
86
+ scenarios?: S[];
87
87
  /** Custom scoring criteria. Defaults to communication, error_handling, efficiency, accuracy. */
88
88
  criteria?: Criterion[];
89
- /** Number of scenarios to generate */
89
+ /** Number of scenarios to generate (ignored if scenarios are provided) */
90
90
  scenarioCount?: number;
91
- /** Runs per scenario */
92
- runsPerScenario?: number;
91
+ /** Trials per scenario */
92
+ trialsPerScenario?: number;
93
93
  /** Enable multi-turn user simulation */
94
94
  simulateUser?: boolean;
95
95
  /** Max conversation turns */
@@ -114,16 +114,30 @@ interface TestOptions {
114
114
  printReport?: boolean;
115
115
  };
116
116
  }
117
- /**
118
- * Run tests against an agent
119
- */
120
- declare function test(options: TestOptions): Promise<TestResults>;
117
+ interface GenerateScenariosOptions {
118
+ /** Number of scenarios to generate */
119
+ count?: number;
120
+ }
121
+ declare function describe(options: DescribeOptions): {
122
+ /**
123
+ * Generate scenarios upfront for inspection, editing, or reuse.
124
+ * If a `variables` schema is provided, each scenario includes a typed `variables` object.
125
+ */
126
+ generateScenarios: <TVar extends Schema>(opts: GenerateScenariosOptions & {
127
+ variables: TVar;
128
+ }) => Promise<Array<Scenario & {
129
+ variables: Infer<TVar>;
130
+ }>>;
131
+ /**
132
+ * Run test scenarios against the agent.
133
+ */
134
+ run: <S extends Scenario>(opts: RunOptions<S>) => Promise<TestResults>;
135
+ };
121
136
  export { tool };
122
137
  export declare const multiverse: {
123
138
  configure: typeof configure;
124
- seed: typeof seed;
125
139
  tool: typeof tool;
126
- test: typeof test;
140
+ describe: typeof describe;
127
141
  getTools: typeof getTools;
128
142
  clearTools: typeof clearTools;
129
143
  isConfigured: typeof isConfigured;
@@ -1 +1 @@
1
- {"version":3,"file":"multiverse.d.ts","sourceRoot":"","sources":["../src/multiverse.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EACV,SAAS,EAET,OAAO,EACP,KAAK,EACL,MAAM,EACN,WAAW,EAEX,SAAS,EACT,SAAS,EAGT,SAAS,EACT,SAAS,EACV,MAAM,oCAAoC,CAAC;AA2G5C,UAAU,gBAAgB;IACxB,uDAAuD;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,0CAA0C;IAC1C,GAAG,EAAE,SAAS,CAAC;IACf,0CAA0C;IAC1C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAMD;;GAEG;AACH,iBAAS,SAAS,CAAC,OAAO,EAAE,gBAAgB,GAAG,IAAI,CASlD;AAED;;GAEG;AACH,iBAAS,IAAI,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAAG,IAAI,CAEjE;AAED;;GAEG;AACH,iBAAS,YAAY,IAAI,OAAO,CAE/B;AAoBD,iBAAS,SAAS,IAAI,OAAO,CAE5B;AAMD,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,EAAE,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC;IAC7B,UAAU,CAAC,EAAE,SAAS,EAAE,CAAC;CAC1B;AAID;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,iBAAS,IAAI,CACX,YAAY,SAAS,MAAM,EAC3B,aAAa,SAAS,MAAM,EAE5B,GAAG,EAAE,OAAO,CAAC,YAAY,EAAE,aAAa,CAAC,GACxC,CAAC,KAAK,EAAE,KAAK,CAAC,YAAY,CAAC,KAAK,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAyF/D;AAED;;GAEG;AACH,iBAAS,QAAQ,IAAI,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAE/C;AAED;;GAEG;AACH,iBAAS,UAAU,IAAI,IAAI,CAE1B;AAMD,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,+GAA+G;IAC/G,KAAK,EAAE,MAAM,CAAC;CACf;AAED,KAAK,OAAO,GAAG,CAAC,OAAO,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAE3D,YAAY,EAAE,SAAS,EAAE,CAAC;AAS1B,UAAU,WAAW;IACnB,+CAA+C;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,oHAAoH;IACpH,KAAK,EAAE,OAAO,CAAC;IACf,uBAAuB;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,wDAAwD;IACxD,OAAO,EAAE,SAAS,CAAC;IACnB,gGAAgG;IAChG,QAAQ,CAAC,EAAE,SAAS,EAAE,CAAC;IACvB,sCAAsC;IACtC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,wCAAwC;IACxC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,6BAA6B;IAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wBAAwB;IACxB,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IACxF,mEAAmE;IACnE,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6BAA6B;IAC7B,EAAE,CAAC,EAAE;QACH,qDAAqD;QACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,kCAAkC;QAClC,WAAW,CAAC,EAAE,OAAO,CAAC;KACvB,CAAC;CACH;AAED;;GAEG;AACH,iBAAe,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAgS9D;AAyCD,OAAO,EAAE,IAAI,EAAE,CAAC;AAEhB,eAAO,MAAM,UAAU;;;;;;;;;CAStB,CAAC"}
1
+ {"version":3,"file":"multiverse.d.ts","sourceRoot":"","sources":["../src/multiverse.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,14 @@ import { MultiverseClient } from './client.js';
12
12
  import { detectCI } from './ci.js';
13
13
  import { postReportToPR } from './github.js';
14
14
  // ============================================================================
15
+ // Utilities
16
+ // ============================================================================
17
+ function createDeferred() {
18
+ let resolve;
19
+ const promise = new Promise(r => { resolve = r; });
20
+ return { promise, resolve };
21
+ }
22
+ // ============================================================================
15
23
  // Schema Serialization (Zod -> JSON)
16
24
  // ============================================================================
17
25
  /**
@@ -98,7 +106,6 @@ function serializeZodType(zodType) {
98
106
  }
99
107
  let config = null;
100
108
  let client = null;
101
- let seedData = null;
102
109
  /**
103
110
  * Configure Multiverse
104
111
  */
@@ -112,12 +119,6 @@ function configure(options) {
112
119
  apiKey: options.apiKey,
113
120
  });
114
121
  }
115
- /**
116
- * Seed initial world state
117
- */
118
- function seed(data) {
119
- seedData = data;
120
- }
121
122
  /**
122
123
  * Check if configured
123
124
  */
@@ -125,6 +126,17 @@ function isConfigured() {
125
126
  return config !== null && client !== null;
126
127
  }
127
128
  const sessionStorage = new AsyncLocalStorage();
129
+ /**
130
+ * Per-run lock to serialize tool calls within a simulation run.
131
+ *
132
+ * LLM agents (e.g. LangChain ReAct) can fire multiple tool calls in parallel.
133
+ * Without serialization, call N+1's simulation runs against stale world state
134
+ * because call N's effects haven't been synced yet. This causes duplicate IDs
135
+ * and lost mutations.
136
+ *
137
+ * Keyed by `${apiSessionId}:${apiRunId}` — each run gets its own chain.
138
+ */
139
+ const runLocks = new Map();
128
140
  function getCurrentSession() {
129
141
  return sessionStorage.getStore() || null;
130
142
  }
@@ -172,66 +184,67 @@ function tool(def) {
172
184
  if (!session || !client) {
173
185
  return fn(toolInput);
174
186
  }
175
- // Call the API to simulate
176
- const result = await client.simulate(session.apiSessionId, session.apiRunId, {
177
- tool: name,
178
- input: toolInput,
179
- description,
180
- inputSchema: serializeSchema(input),
181
- outputSchema: serializeSchema(output),
182
- hasClientEffects: !!effects,
183
- });
184
- // Check if response indicates an error (shouldn't compute effects for errors)
185
- const isErrorResponse = (output) => {
186
- if (typeof output === 'string')
187
- return true;
188
- if (output && typeof output === 'object') {
189
- const o = output;
190
- if (o.success === false)
191
- return true;
192
- if ('error' in o && Object.keys(o).length <= 2)
193
- return true;
194
- }
195
- return false;
196
- };
197
- // Compute mutations from effects function (if defined) and send to server
198
- // Skip effects for error responses - they don't have the expected output shape
199
- if (effects && !isErrorResponse(result.output)) {
200
- const worldState = result.worldState;
201
- const worldAccessor = {
202
- getCollection: (collName) => {
203
- const coll = worldState[collName];
204
- if (!coll)
205
- return new Map();
206
- return new Map(Object.entries(coll).map(([id, entity]) => [
207
- id,
208
- entity,
209
- ]));
210
- },
211
- getEntity: (collection, id) => {
212
- const coll = worldState[collection];
213
- if (!coll || !coll[id])
214
- return undefined;
215
- return coll[id];
216
- },
217
- hasEntity: (collection, id) => {
218
- const coll = worldState[collection];
219
- return coll ? id in coll : false;
220
- },
221
- getCollectionNames: () => Object.keys(worldState),
222
- };
223
- const computed = effects(result.output, worldAccessor);
224
- const mutations = computed.map(e => ({
225
- operation: e.operation,
226
- collection: e.collection,
227
- id: e.id,
228
- data: e.data,
229
- }));
230
- if (mutations.length > 0) {
231
- await client.applyMutations(session.apiSessionId, session.apiRunId, mutations, name);
187
+ // Serialize tool calls within the same run.
188
+ // This ensures simulate effects → applyMutations completes atomically
189
+ // before the next tool call starts, so each simulation sees up-to-date world state.
190
+ const lockKey = `${session.apiSessionId}:${session.apiRunId}`;
191
+ const prev = runLocks.get(lockKey) ?? Promise.resolve();
192
+ const { promise, resolve } = createDeferred();
193
+ runLocks.set(lockKey, promise);
194
+ // Wait for previous tool call in this run to finish
195
+ await prev;
196
+ try {
197
+ // Call the API to simulate
198
+ const result = await client.simulate(session.apiSessionId, session.apiRunId, {
199
+ tool: name,
200
+ input: toolInput,
201
+ description,
202
+ inputSchema: serializeSchema(input),
203
+ outputSchema: serializeSchema(output),
204
+ hasClientEffects: !!effects,
205
+ });
206
+ // Compute mutations from effects function (if defined) and send to server
207
+ // Skip effects for failure responses (bad_data/empty) — they don't match the output schema
208
+ if (effects && !result.isFailure) {
209
+ const worldState = result.worldState;
210
+ const worldAccessor = {
211
+ getCollection: (collName) => {
212
+ const coll = worldState[collName];
213
+ if (!coll)
214
+ return new Map();
215
+ return new Map(Object.entries(coll).map(([id, entity]) => [
216
+ id,
217
+ entity,
218
+ ]));
219
+ },
220
+ getEntity: (collection, id) => {
221
+ const coll = worldState[collection];
222
+ if (!coll || !coll[id])
223
+ return undefined;
224
+ return coll[id];
225
+ },
226
+ hasEntity: (collection, id) => {
227
+ const coll = worldState[collection];
228
+ return coll ? id in coll : false;
229
+ },
230
+ getCollectionNames: () => Object.keys(worldState),
231
+ };
232
+ const computed = effects(result.output, worldAccessor);
233
+ const mutations = computed.map(e => ({
234
+ operation: e.operation,
235
+ collection: e.collection,
236
+ id: e.id,
237
+ data: e.data,
238
+ }));
239
+ if (mutations.length > 0) {
240
+ await client.applyMutations(session.apiSessionId, session.apiRunId, mutations, name);
241
+ }
232
242
  }
243
+ return result.output;
244
+ }
245
+ finally {
246
+ resolve();
233
247
  }
234
- return result.output;
235
248
  };
236
249
  }
237
250
  /**
@@ -252,45 +265,78 @@ const DEFAULT_CRITERIA = [
252
265
  { name: 'efficiency', description: 'Completes the task efficiently without unnecessary steps' },
253
266
  { name: 'accuracy', description: 'Does not hallucinate or fabricate information' },
254
267
  ];
255
- /**
256
- * Run tests against an agent
257
- */
258
- async function test(options) {
268
+ async function generateScenariosInternal(task, opts) {
259
269
  if (!config || !client) {
260
270
  throw new Error('Multiverse not configured. Call multiverse.configure() first.');
261
271
  }
262
- if (!options.name || typeof options.name !== 'string' || options.name.trim() === '') {
263
- throw new Error('name is required — it groups tests under an agent in the dashboard');
264
- }
265
- if (!options.task || typeof options.task !== 'string' || options.task.trim() === '') {
266
- throw new Error('task is required — it describes what the agent is being tested on');
272
+ const count = opts?.count ?? 5;
273
+ const variables = opts?.variables;
274
+ const toolDefs = Array.from(registeredTools.values()).map(t => ({
275
+ name: t.name,
276
+ description: t.description,
277
+ inputSchema: serializeSchema(t.input),
278
+ }));
279
+ const variablesSchema = serializeSchema(variables);
280
+ const { scenarios } = await client.createSession({
281
+ task,
282
+ tools: toolDefs,
283
+ scenarioConfig: { count },
284
+ llmConfig: config.llm,
285
+ variablesSchema,
286
+ });
287
+ return scenarios;
288
+ }
289
+ function describe(options) {
290
+ const { name, task, agent } = options;
291
+ return {
292
+ /**
293
+ * Generate scenarios upfront for inspection, editing, or reuse.
294
+ * If a `variables` schema is provided, each scenario includes a typed `variables` object.
295
+ */
296
+ generateScenarios: (opts) => generateScenariosInternal(task, opts),
297
+ /**
298
+ * Run test scenarios against the agent.
299
+ */
300
+ run: (opts) => {
301
+ return runTest(name, task, agent, opts);
302
+ },
303
+ };
304
+ }
305
+ // ============================================================================
306
+ // Internal Test Runner
307
+ // ============================================================================
308
+ async function runTest(name, task, agent, options) {
309
+ if (!config || !client) {
310
+ throw new Error('Multiverse not configured. Call multiverse.configure() first.');
267
311
  }
268
- const { name, agent, task, success: successFn, criteria = DEFAULT_CRITERIA, scenarioCount = 5, runsPerScenario = 1, simulateUser = false, maxTurns = 10, qualityThreshold = 70, onProgress, } = options;
312
+ const { success: successFn, criteria = DEFAULT_CRITERIA, scenarioCount = 5, trialsPerScenario = 1, simulateUser = false, maxTurns = 10, qualityThreshold = 70, onProgress, } = options;
269
313
  const testId = nanoid(10);
270
314
  const startTime = Date.now();
271
315
  // Get tool definitions for API
272
316
  const toolDefs = Array.from(registeredTools.values()).map(t => ({
273
317
  name: t.name,
274
318
  description: t.description,
319
+ inputSchema: serializeSchema(t.input),
275
320
  }));
276
321
  // Create session via API
322
+ // If scenarios are provided, pass them directly (server skips generation)
277
323
  const { sessionId, scenarios } = await client.createSession({
278
324
  task,
279
325
  tools: toolDefs,
280
326
  scenarioConfig: { count: scenarioCount },
281
- seed: seedData || undefined,
282
327
  llmConfig: config.llm,
328
+ scenarios: options.scenarios,
283
329
  });
284
330
  // Build run configs
331
+ const typedScenarios = scenarios;
285
332
  const runConfigs = [];
286
- for (const scenario of scenarios) {
287
- for (let i = 0; i < runsPerScenario; i++) {
333
+ for (const scenario of typedScenarios) {
334
+ for (let i = 0; i < trialsPerScenario; i++) {
288
335
  runConfigs.push({ scenario, runIndex: i });
289
336
  }
290
337
  }
291
338
  const totalRuns = runConfigs.length;
292
339
  let completed = 0;
293
- // Execute a single run (never throws — returns a failed result on error)
294
340
  async function executeRun(runConfig) {
295
341
  const { scenario, runIndex } = runConfig;
296
342
  const runStartTime = Date.now();
@@ -350,9 +396,12 @@ async function test(options) {
350
396
  }
351
397
  });
352
398
  const { worldState, trace } = await client.getState(sessionId, runId);
399
+ // Clean up per-run lock after getState to ensure no tool calls
400
+ // can race with the final state fetch
401
+ runLocks.delete(`${sessionId}:${runId}`);
353
402
  const worldAccessor = {
354
- getCollection: (name) => {
355
- const collection = worldState[name];
403
+ getCollection: (collName) => {
404
+ const collection = worldState[collName];
356
405
  if (!collection)
357
406
  return new Map();
358
407
  return new Map(Object.entries(collection));
@@ -369,7 +418,7 @@ async function test(options) {
369
418
  },
370
419
  getCollectionNames: () => Object.keys(worldState),
371
420
  };
372
- const taskCompleted = agentError === null && successFn(worldAccessor, trace);
421
+ const taskCompleted = agentError === null && successFn(worldAccessor, trace, scenario);
373
422
  const quality = await client.judge(sessionId, runId, taskCompleted, criteria);
374
423
  const passed = taskCompleted && quality.score >= qualityThreshold && agentError === null;
375
424
  completed++;
@@ -385,8 +434,7 @@ async function test(options) {
385
434
  duration: Date.now() - runStartTime,
386
435
  };
387
436
  }
388
- // Execute runs with a concurrency pool — always keep N in flight.
389
- // Each worker pulls the next run when it finishes, so no idle slots.
437
+ // Execute runs with a concurrency pool
390
438
  const concurrency = options.concurrency ?? 8;
391
439
  const results = [];
392
440
  let nextIndex = 0;
@@ -400,15 +448,14 @@ async function test(options) {
400
448
  await Promise.all(workers);
401
449
  // Aggregate results
402
450
  const passedCount = results.filter(r => r.passed).length;
403
- // Find weak spots
404
451
  const scenarioResults = new Map();
405
452
  for (const result of results) {
406
- const name = result.scenario.name;
407
- const current = scenarioResults.get(name) || { passed: 0, total: 0 };
453
+ const sName = result.scenario.name;
454
+ const current = scenarioResults.get(sName) || { passed: 0, total: 0 };
408
455
  current.total++;
409
456
  if (result.passed)
410
457
  current.passed++;
411
- scenarioResults.set(name, current);
458
+ scenarioResults.set(sName, current);
412
459
  }
413
460
  const weakSpots = Array.from(scenarioResults.entries())
414
461
  .map(([scenario, data]) => ({
@@ -428,7 +475,6 @@ async function test(options) {
428
475
  url: `${config.baseUrl}/tests/${testId}`,
429
476
  };
430
477
  // Sync results to server for dashboard
431
- // Serialize runs (remove non-serializable worldState accessor)
432
478
  const serializedRuns = results.map(r => ({
433
479
  id: r.id,
434
480
  runId: `${testId}-${r.scenario.name}-${r.id}`,
@@ -457,42 +503,27 @@ async function test(options) {
457
503
  // CI Integration
458
504
  const ciContext = detectCI();
459
505
  const ciOptions = options.ci || {};
460
- // Fetch report from server (server does LLM analysis)
461
506
  let markdown;
462
- let summary;
463
- let tier;
464
507
  if (options.skipReport) {
465
508
  markdown = generateFallbackReport(testResults);
466
- summary = `Multiverse: ${passedCount}/${results.length} tests passed (${testResults.passRate}%)`;
467
- tier = calculateTier(testResults.passRate);
468
509
  }
469
510
  else {
470
511
  try {
471
512
  const report = await client.fetchReport(testId, config.llm);
472
513
  markdown = report.markdown;
473
- summary = report.summary;
474
- tier = report.tier;
475
514
  }
476
515
  catch (err) {
477
516
  console.warn('Failed to fetch report from server:', err);
478
517
  markdown = generateFallbackReport(testResults);
479
- summary = `Multiverse: ${passedCount}/${results.length} tests passed (${testResults.passRate}%)`;
480
- tier = calculateTier(testResults.passRate);
481
518
  }
482
519
  }
483
- // Add markdown and CI info to results
484
520
  const enhancedResults = {
485
521
  ...testResults,
486
522
  markdown,
487
- summary,
488
- tier,
489
- ci: ciContext,
490
523
  };
491
- // Print report if requested or in CI
492
524
  if (ciOptions.printReport || ciContext.isCI) {
493
525
  console.log('\n' + markdown + '\n');
494
526
  }
495
- // Post to PR if in CI with PR context (via multiverse-bot)
496
527
  if (ciOptions.postToPR !== false && ciContext.isCI && ciContext.isPR) {
497
528
  const result = await postReportToPR(markdown, ciContext, config.baseUrl, config.apiKey);
498
529
  if (result.posted) {
@@ -504,24 +535,6 @@ async function test(options) {
504
535
  }
505
536
  return enhancedResults;
506
537
  }
507
- /**
508
- * Calculate tier from pass rate
509
- * Note: Intentionally duplicated from core to avoid SDK depending on core
510
- */
511
- function calculateTier(passRate) {
512
- if (passRate >= 95)
513
- return 'S';
514
- if (passRate >= 85)
515
- return 'A';
516
- if (passRate >= 70)
517
- return 'B';
518
- if (passRate >= 50)
519
- return 'C';
520
- return 'D';
521
- }
522
- /**
523
- * Generate fallback report if server is unavailable
524
- */
525
538
  function generateFallbackReport(results) {
526
539
  const passed = results.runs.filter(r => r.passed).length;
527
540
  const failed = results.runs.length - passed;
@@ -541,13 +554,11 @@ function generateFallbackReport(results) {
541
554
  // ============================================================================
542
555
  // Exports
543
556
  // ============================================================================
544
- // Export for adapters
545
557
  export { tool };
546
558
  export const multiverse = {
547
559
  configure,
548
- seed,
549
560
  tool,
550
- test,
561
+ describe,
551
562
  getTools,
552
563
  clearTools,
553
564
  isConfigured,
@@ -1 +1 @@
1
- {"version":3,"file":"multiverse.js","sourceRoot":"","sources":["../src/multiverse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"multiverse.js","sourceRoot":"","sources":["../src/multiverse.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@virtualkitchenco/multiverse-sdk",
3
- "version": "0.0.14",
3
+ "version": "0.0.16",
4
4
  "description": "Simulated worlds for AI agents - 6 months production in 6 minutes",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -25,7 +25,7 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "nanoid": "^5.0.4",
28
- "@virtualkitchenco/multiverse-types": "0.0.14"
28
+ "@virtualkitchenco/multiverse-types": "0.0.16"
29
29
  },
30
30
  "devDependencies": {
31
31
  "@types/node": "^20.11.0",
@@ -51,7 +51,7 @@
51
51
  "files": [
52
52
  "dist"
53
53
  ],
54
- "license": "MIT",
54
+ "license": "UNLICENSED",
55
55
  "keywords": [
56
56
  "ai",
57
57
  "agents",