@amodalai/runtime 0.3.34 → 0.3.36

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.
@@ -54,6 +54,7 @@ import { createStoresRouter } from './routes/stores.js';
54
54
  import { createSessionsHistoryRouter } from '../routes/sessions-history.js';
55
55
  import { createFilesRouter } from './routes/files.js';
56
56
  import { createContextRouter } from './routes/context.js';
57
+ import { createEvalRouter } from '../routes/evals.js';
57
58
  import { errorHandler } from '../middleware/error-handler.js';
58
59
  import { asyncHandler } from '../routes/route-helpers.js';
59
60
  import { createPostgresStoreBackend } from '../stores/postgres-store-backend.js';
@@ -380,9 +381,12 @@ export async function createLocalServer(config) {
380
381
  active_sessions: sessionManager.size,
381
382
  });
382
383
  });
383
- // Auth token endpoint — local dev returns empty (no auth needed)
384
+ // Auth token endpoint — local dev has no auth system.
385
+ // Return 404 so the frontend falls into the "no auth" path
386
+ // (sets token='local', status='none', all data hooks fire).
387
+ // Cloud deployments override this with a real auth handler.
384
388
  app.post('/auth/token', (_req, res) => {
385
- res.json({ token: '', expires_at: null });
389
+ res.status(404).json({ error: 'No auth configured' });
386
390
  });
387
391
  // RoleProvider — defaults to "everyone is ops" for amodal dev.
388
392
  // Self-hosted ISVs can plug in their own provider to gate routes by role.
@@ -497,6 +501,13 @@ export async function createLocalServer(config) {
497
501
  if (storeBackend) {
498
502
  app.use(createStoresRouter({ repo: bundle, storeBackend, appId }));
499
503
  }
504
+ // Eval runner
505
+ app.use(createEvalRouter({
506
+ getBundle,
507
+ sessionManager,
508
+ bundleResolver: { staticBundle: bundle },
509
+ shared,
510
+ }));
500
511
  // Build user pages (if pages/ directory exists)
501
512
  let builtPages = [];
502
513
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"local-server.js","sourceRoot":"","sources":["../../../src/agent/local-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"local-server.js","sourceRoot":"","sources":["../../../src/agent/local-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ /**
7
+ * Eval execution route.
8
+ *
9
+ * Accepts POST to /api/evals/run, runs the specified evals from the
10
+ * agent bundle against the session manager directly, judges the
11
+ * results with an LLM, and streams SSE progress events back to the
12
+ * caller (typically the Studio ArenaPage).
13
+ */
14
+ import { Router } from 'express';
15
+ import type { AgentBundle } from '@amodalai/types';
16
+ import type { StandaloneSessionManager } from '../session/manager.js';
17
+ import type { BundleResolver, SharedResources } from './session-resolver.js';
18
+ export interface EvalRouterOptions {
19
+ /** Returns the current agent bundle (may be hot-reloaded). */
20
+ getBundle: () => AgentBundle;
21
+ sessionManager: StandaloneSessionManager;
22
+ bundleResolver: BundleResolver;
23
+ shared: SharedResources;
24
+ }
25
+ export declare function createEvalRouter(options: EvalRouterOptions): Router;
@@ -0,0 +1,261 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2026 Amodal Labs, Inc.
4
+ * SPDX-License-Identifier: MIT
5
+ */
6
+ /**
7
+ * Eval execution route.
8
+ *
9
+ * Accepts POST to /api/evals/run, runs the specified evals from the
10
+ * agent bundle against the session manager directly, judges the
11
+ * results with an LLM, and streams SSE progress events back to the
12
+ * caller (typically the Studio ArenaPage).
13
+ */
14
+ import { Router } from 'express';
15
+ import { judgeAllAssertions, computeEvalCost } from '@amodalai/core';
16
+ import { SSEEventType } from '../types.js';
17
+ import { resolveSession } from './session-resolver.js';
18
+ import { asyncHandler } from './route-helpers.js';
19
+ import { log } from '../logger.js';
20
+ // ---------------------------------------------------------------------------
21
+ // Helpers
22
+ // ---------------------------------------------------------------------------
23
+ /**
24
+ * Run a message through the session manager and collect the full response,
25
+ * tool calls, tool results, and usage from the SSE event stream.
26
+ */
27
+ async function queryViaSession(sessionManager, bundleResolver, shared, message, model, signal) {
28
+ const { session, toolContextFactory } = await resolveSession(undefined, {
29
+ sessionManager,
30
+ bundleResolver,
31
+ shared,
32
+ ...(model ? { pinnedModel: model } : {}),
33
+ });
34
+ const stream = sessionManager.runMessage(session.id, message, {
35
+ signal,
36
+ buildToolContext: toolContextFactory,
37
+ });
38
+ let fullResponse = '';
39
+ const toolCalls = [];
40
+ const toolResults = [];
41
+ let usage;
42
+ // Track tool names by tool_id so we can match results
43
+ const toolNames = new Map();
44
+ try {
45
+ for await (const event of stream) {
46
+ if (signal?.aborted)
47
+ break;
48
+ if (event.type === SSEEventType.TextDelta) {
49
+ fullResponse += event.content;
50
+ }
51
+ else if (event.type === SSEEventType.ToolCallStart) {
52
+ toolNames.set(event.tool_id, event.tool_name);
53
+ toolCalls.push({
54
+ name: event.tool_name,
55
+ parameters: event.parameters,
56
+ });
57
+ }
58
+ else if (event.type === SSEEventType.ToolCallResult) {
59
+ const result = event.result ?? event.error ?? '';
60
+ const preview = result.length > 300 ? result.substring(0, 300) + '...' : result;
61
+ toolResults.push(preview);
62
+ }
63
+ else if (event.type === SSEEventType.Done) {
64
+ if (event.usage) {
65
+ const inputTokens = event.usage.input_tokens;
66
+ const outputTokens = event.usage.output_tokens;
67
+ if (inputTokens > 0 || outputTokens > 0) {
68
+ usage = {
69
+ inputTokens,
70
+ outputTokens,
71
+ ...(event.usage.cached_tokens ? { cacheReadInputTokens: event.usage.cached_tokens } : {}),
72
+ ...(event.usage.cache_creation_tokens ? { cacheCreationInputTokens: event.usage.cache_creation_tokens } : {}),
73
+ };
74
+ }
75
+ }
76
+ }
77
+ }
78
+ }
79
+ finally {
80
+ // Destroy the eval session — eval sessions are ephemeral
81
+ await sessionManager.destroy(session.id);
82
+ }
83
+ // Estimate usage if runtime didn't report it
84
+ if (!usage) {
85
+ const outputChars = fullResponse.length + toolCalls.reduce((n, tc) => n + JSON.stringify(tc.parameters).length, 0);
86
+ const estimatedOutput = Math.ceil(outputChars / 4);
87
+ const estimatedInput = estimatedOutput * 3;
88
+ usage = { inputTokens: estimatedInput, outputTokens: estimatedOutput };
89
+ }
90
+ return { response: fullResponse, toolCalls, toolResults, usage };
91
+ }
92
+ /**
93
+ * Create a judge provider that runs messages through the session manager.
94
+ */
95
+ function createJudgeProvider(sessionManager, bundleResolver, shared) {
96
+ return {
97
+ judge: async (prompt) => {
98
+ const { session, toolContextFactory } = await resolveSession(undefined, {
99
+ sessionManager,
100
+ bundleResolver,
101
+ shared,
102
+ });
103
+ const stream = sessionManager.runMessage(session.id, prompt, {
104
+ signal: AbortSignal.timeout(120_000),
105
+ buildToolContext: toolContextFactory,
106
+ });
107
+ let result = '';
108
+ try {
109
+ for await (const event of stream) {
110
+ if (event.type === SSEEventType.TextDelta) {
111
+ result += event.content;
112
+ }
113
+ }
114
+ }
115
+ finally {
116
+ await sessionManager.destroy(session.id);
117
+ }
118
+ return result;
119
+ },
120
+ };
121
+ }
122
+ /**
123
+ * Write an SSE event to the response.
124
+ */
125
+ function sendSSE(res, data) {
126
+ res.write(`data: ${JSON.stringify(data)}\n\n`);
127
+ }
128
+ // ---------------------------------------------------------------------------
129
+ // Router
130
+ // ---------------------------------------------------------------------------
131
+ export function createEvalRouter(options) {
132
+ const router = Router();
133
+ router.post('/api/evals/run', asyncHandler(async (req, res) => {
134
+ // Validate request body
135
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- Express body
136
+ const body = req.body;
137
+ if (!body || !Array.isArray(body['evalNames']) || body['evalNames'].length === 0) {
138
+ res.status(400).json({
139
+ error: { code: 'BAD_REQUEST', message: 'Request body must include "evalNames" as a non-empty array' },
140
+ });
141
+ return;
142
+ }
143
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- validated above
144
+ const { evalNames, model } = body;
145
+ const bundle = options.getBundle();
146
+ // Set up SSE headers
147
+ res.setHeader('Content-Type', 'text/event-stream');
148
+ res.setHeader('Cache-Control', 'no-cache');
149
+ res.setHeader('Connection', 'keep-alive');
150
+ res.flushHeaders();
151
+ const controller = new AbortController();
152
+ res.on('close', () => controller.abort());
153
+ const judgeProvider = createJudgeProvider(options.sessionManager, options.bundleResolver, options.shared);
154
+ const modelName = model ? model.model : (bundle.config.models?.main?.model ?? 'unknown');
155
+ log.info('eval_run_started', { evalNames, model: modelName, evalCount: evalNames.length });
156
+ try {
157
+ for (const evalName of evalNames) {
158
+ if (controller.signal.aborted)
159
+ break;
160
+ // Find eval in bundle
161
+ const ev = bundle.evals.find((e) => e.name === evalName);
162
+ if (!ev) {
163
+ sendSSE(res, {
164
+ type: 'eval_complete',
165
+ evalName,
166
+ passed: false,
167
+ result: {
168
+ response: '',
169
+ toolCalls: [],
170
+ toolResults: [],
171
+ assertions: [],
172
+ durationMs: 0,
173
+ error: `Eval "${evalName}" not found in agent bundle`,
174
+ },
175
+ });
176
+ continue;
177
+ }
178
+ const start = Date.now();
179
+ try {
180
+ // Run the query through the session manager directly
181
+ const queryResult = await queryViaSession(options.sessionManager, options.bundleResolver, options.shared, ev.query, model, controller.signal);
182
+ // Signal query done — ArenaPage uses this for the "judging" phase indicator
183
+ sendSSE(res, { type: 'done', usage: queryResult.usage ? {
184
+ input_tokens: queryResult.usage.inputTokens,
185
+ output_tokens: queryResult.usage.outputTokens,
186
+ ...(queryResult.usage.cacheReadInputTokens ? { cache_read_input_tokens: queryResult.usage.cacheReadInputTokens } : {}),
187
+ ...(queryResult.usage.cacheCreationInputTokens ? { cache_creation_input_tokens: queryResult.usage.cacheCreationInputTokens } : {}),
188
+ } : undefined });
189
+ // Build enriched response for the judge (include tool call info)
190
+ let enrichedResponse = queryResult.response;
191
+ if (queryResult.toolCalls.length > 0) {
192
+ const toolSummary = queryResult.toolCalls
193
+ .map((tc) => `- ${tc.name}(${JSON.stringify(tc.parameters)})`)
194
+ .join('\n');
195
+ enrichedResponse += `\n\n## Tool Calls Made\n${toolSummary}`;
196
+ }
197
+ if (queryResult.toolResults.length > 0) {
198
+ enrichedResponse += `\n\n## Tool Results\n${queryResult.toolResults.map((r) => `- ${r}`).join('\n')}`;
199
+ }
200
+ // Judge all assertions
201
+ const assertions = await judgeAllAssertions(enrichedResponse, ev.assertions, judgeProvider);
202
+ const passed = assertions.every((a) => a.passed);
203
+ const durationMs = Date.now() - start;
204
+ // Compute costs
205
+ const queryCost = queryResult.usage
206
+ ? computeEvalCost(queryResult.usage.inputTokens, queryResult.usage.outputTokens, modelName, queryResult.usage.cacheReadInputTokens, queryResult.usage.cacheCreationInputTokens)
207
+ : undefined;
208
+ const resultEvent = {
209
+ type: 'eval_complete',
210
+ evalName,
211
+ passed,
212
+ result: {
213
+ response: queryResult.response,
214
+ toolCalls: queryResult.toolCalls,
215
+ toolResults: queryResult.toolResults,
216
+ assertions,
217
+ durationMs,
218
+ queryCost,
219
+ },
220
+ };
221
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion -- structured event to JSON
222
+ sendSSE(res, resultEvent);
223
+ }
224
+ catch (err) {
225
+ if (controller.signal.aborted)
226
+ break;
227
+ const durationMs = Date.now() - start;
228
+ sendSSE(res, {
229
+ type: 'eval_complete',
230
+ evalName,
231
+ passed: false,
232
+ result: {
233
+ response: '',
234
+ toolCalls: [],
235
+ toolResults: [],
236
+ assertions: ev.assertions.map((a) => ({
237
+ text: a.text,
238
+ negated: a.negated,
239
+ passed: false,
240
+ reason: `Eval execution error: ${err instanceof Error ? err.message : String(err)}`,
241
+ })),
242
+ durationMs,
243
+ error: err instanceof Error ? err.message : String(err),
244
+ },
245
+ });
246
+ }
247
+ }
248
+ }
249
+ catch (err) {
250
+ if (!controller.signal.aborted) {
251
+ sendSSE(res, {
252
+ type: 'agent_error',
253
+ error: err instanceof Error ? err.message : String(err),
254
+ });
255
+ }
256
+ }
257
+ res.end();
258
+ }));
259
+ return router;
260
+ }
261
+ //# sourceMappingURL=evals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"evals.js","sourceRoot":"","sources":["../../../src/routes/evals.ts"],"names":[],"mappings":"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"}