@netlify/axis 1.1.7 → 1.5.0

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.
Files changed (69) hide show
  1. package/README.md +8 -8
  2. package/dist/adapters/base/agent-adapter.d.ts.map +1 -1
  3. package/dist/adapters/base/agent-adapter.js +43 -2
  4. package/dist/adapters/base/agent-adapter.js.map +1 -1
  5. package/dist/adapters/registry.d.ts +2 -0
  6. package/dist/adapters/registry.d.ts.map +1 -1
  7. package/dist/adapters/registry.js +6 -2
  8. package/dist/adapters/registry.js.map +1 -1
  9. package/dist/cli.js +126 -9
  10. package/dist/cli.js.map +1 -1
  11. package/dist/config/loader.d.ts +2 -2
  12. package/dist/config/loader.d.ts.map +1 -1
  13. package/dist/config/loader.js +232 -28
  14. package/dist/config/loader.js.map +1 -1
  15. package/dist/config/validator.d.ts +9 -1
  16. package/dist/config/validator.d.ts.map +1 -1
  17. package/dist/config/validator.js +91 -6
  18. package/dist/config/validator.js.map +1 -1
  19. package/dist/report-ui/index.html +319 -151
  20. package/dist/reports/html.d.ts.map +1 -1
  21. package/dist/reports/html.js +2 -1
  22. package/dist/reports/html.js.map +1 -1
  23. package/dist/reports/writer.d.ts.map +1 -1
  24. package/dist/reports/writer.js +19 -1
  25. package/dist/reports/writer.js.map +1 -1
  26. package/dist/runner/artifacts.d.ts +31 -0
  27. package/dist/runner/artifacts.d.ts.map +1 -0
  28. package/dist/runner/artifacts.js +213 -0
  29. package/dist/runner/artifacts.js.map +1 -0
  30. package/dist/runner/lifecycle.d.ts +14 -0
  31. package/dist/runner/lifecycle.d.ts.map +1 -1
  32. package/dist/runner/lifecycle.js +55 -0
  33. package/dist/runner/lifecycle.js.map +1 -1
  34. package/dist/runner/runner.d.ts +6 -0
  35. package/dist/runner/runner.d.ts.map +1 -1
  36. package/dist/runner/runner.js +225 -39
  37. package/dist/runner/runner.js.map +1 -1
  38. package/dist/scoring/index.d.ts.map +1 -1
  39. package/dist/scoring/index.js +7 -1
  40. package/dist/scoring/index.js.map +1 -1
  41. package/dist/scoring/judge.js +1 -1
  42. package/dist/scoring/judge.js.map +1 -1
  43. package/dist/scoring/sparse-index.d.ts +6 -1
  44. package/dist/scoring/sparse-index.d.ts.map +1 -1
  45. package/dist/scoring/sparse-index.js +43 -15
  46. package/dist/scoring/sparse-index.js.map +1 -1
  47. package/dist/transcript/extract.d.ts.map +1 -1
  48. package/dist/transcript/extract.js +33 -3
  49. package/dist/transcript/extract.js.map +1 -1
  50. package/dist/types/agent.d.ts +4 -0
  51. package/dist/types/agent.d.ts.map +1 -1
  52. package/dist/types/config.d.ts +34 -2
  53. package/dist/types/config.d.ts.map +1 -1
  54. package/dist/types/output.d.ts +31 -2
  55. package/dist/types/output.d.ts.map +1 -1
  56. package/dist/types/output.js.map +1 -1
  57. package/dist/types/report.d.ts +9 -1
  58. package/dist/types/report.d.ts.map +1 -1
  59. package/dist/types/scenario.d.ts +23 -2
  60. package/dist/types/scenario.d.ts.map +1 -1
  61. package/dist/types/scoring.d.ts +4 -0
  62. package/dist/types/scoring.d.ts.map +1 -1
  63. package/dist/ui/LiveStatus.js +10 -5
  64. package/dist/ui/LiveStatus.js.map +1 -1
  65. package/dist/ui/format.d.ts +4 -0
  66. package/dist/ui/format.d.ts.map +1 -1
  67. package/dist/ui/format.js +34 -18
  68. package/dist/ui/format.js.map +1 -1
  69. package/package.json +5 -3
@@ -3,9 +3,56 @@ import * as os from "node:os";
3
3
  import * as path from "node:path";
4
4
  import { loadConfig, discoverScenarios } from "../config/loader.js";
5
5
  import { getAdapter, registerAdapter } from "../adapters/registry.js";
6
- import { executeLifecycleActions } from "./lifecycle.js";
6
+ import { runLifecyclePhase } from "./lifecycle.js";
7
+ import { captureArtifacts, resolveArtifactPatterns } from "./artifacts.js";
7
8
  import { silentLogger as defaultLogger, formatError } from "../types/output.js";
8
9
  import { resolveSkills } from "../skills/resolver.js";
10
+ // ---------------------------------------------------------------------------
11
+ // Limit resolution
12
+ // ---------------------------------------------------------------------------
13
+ /** Default per-scenario time limit when none is configured (15 minutes). */
14
+ const DEFAULT_SCENARIO_TIME_MINUTES = 15;
15
+ function resolveJobLimits(scenario, defaultLimits) {
16
+ const effective = scenario.limits ?? defaultLimits;
17
+ const timeMinutes = effective?.time_minutes ?? DEFAULT_SCENARIO_TIME_MINUTES;
18
+ return {
19
+ timeoutMs: timeMinutes * 60 * 1000,
20
+ tokenLimit: effective?.tokens,
21
+ };
22
+ }
23
+ function formatLimitMinutes(ms) {
24
+ const minutes = ms / 60_000;
25
+ return Number.isInteger(minutes) ? `${minutes}m` : `${minutes.toFixed(1)}m`;
26
+ }
27
+ /** Build the materialized configuration that was actually applied to a run, with defaults filled in. */
28
+ function buildResolvedRunConfig(scenario, axisConfig, agentConfig) {
29
+ // Limits: scenario-level overrides default; default time_minutes always applied.
30
+ const limitsBase = scenario.limits ?? axisConfig.settings?.limits?.scenario;
31
+ const limits = {
32
+ time_minutes: limitsBase?.time_minutes ?? DEFAULT_SCENARIO_TIME_MINUTES,
33
+ ...(limitsBase?.tokens !== undefined ? { tokens: limitsBase.tokens } : {}),
34
+ };
35
+ // Skills merge axis → agent → scenario, dedup preserving order.
36
+ const seen = new Set();
37
+ const skills = [];
38
+ for (const s of [...(axisConfig.skills ?? []), ...(agentConfig.skills ?? []), ...(scenario.skills ?? [])]) {
39
+ if (!seen.has(s)) {
40
+ seen.add(s);
41
+ skills.push(s);
42
+ }
43
+ }
44
+ // MCP: merge top-level + scenario; scenario keys override.
45
+ const mcpServers = { ...(axisConfig.mcp_servers ?? {}), ...(scenario.mcp_servers ?? {}) };
46
+ const artifactPatterns = resolveArtifactPatterns(axisConfig, scenario);
47
+ return {
48
+ limits,
49
+ skills: skills.length > 0 ? skills : undefined,
50
+ setup: scenario.setup && scenario.setup.length > 0 ? scenario.setup : undefined,
51
+ teardown: scenario.teardown && scenario.teardown.length > 0 ? scenario.teardown : undefined,
52
+ mcpServers: Object.keys(mcpServers).length > 0 ? mcpServers : undefined,
53
+ artifacts: artifactPatterns.length > 0 ? artifactPatterns : undefined,
54
+ };
55
+ }
9
56
  /** System vars always passed through to isolated environments. */
10
57
  const SYSTEM_VARS = ["PATH", "USER", "SHELL", "LANG", "TERM", "TMPDIR"];
11
58
  /** Default env when not specified in config. */
@@ -50,8 +97,10 @@ export async function run(options = {}) {
50
97
  ? scenarios.filter((s) => options.scenarioFilter.some((f) => f === s.key || (s.key.includes("@") && f === s.key.split("@")[0])))
51
98
  : scenarios;
52
99
  for (const scenario of filteredScenarios) {
53
- // Scenario-level agent override: if set, only listed agents run this scenario
54
- if (scenario.agents && !scenario.agents.includes(agentName)) {
100
+ // Scenario-level agent override: if set, only listed agents run this scenario.
101
+ // Match either the full generated name or the base agent (so users can list
102
+ // `claude-code` to target every claude-code|<model> instance).
103
+ if (scenario.agents && !scenarioAgentFilterMatches(scenario.agents, agentName, agentConfig.agent)) {
55
104
  continue;
56
105
  }
57
106
  jobs.push({ index: jobs.length, agentName, agentConfig, scenario, configDir, axisConfig: config });
@@ -105,14 +154,14 @@ export async function run(options = {}) {
105
154
  // ink's cursor tracking when it starts rendering the live display.
106
155
  const checkedAdapters = new Set();
107
156
  for (const job of jobs) {
108
- if (checkedAdapters.has(job.agentConfig.adapter))
157
+ if (checkedAdapters.has(job.agentConfig.agent))
109
158
  continue;
110
- checkedAdapters.add(job.agentConfig.adapter);
111
- const adapter = getAdapter(job.agentConfig.adapter);
159
+ checkedAdapters.add(job.agentConfig.agent);
160
+ const adapter = getAdapter(job.agentConfig.agent);
112
161
  const required = adapter.requiredEnv?.() ?? [];
113
162
  const missing = required.filter((key) => !jobEnv[key]);
114
163
  if (missing.length > 0) {
115
- throw new Error(`The "${job.agentConfig.adapter}" adapter requires environment variable${missing.length > 1 ? "s" : ""} ${missing.join(", ")} ` +
164
+ throw new Error(`The "${job.agentConfig.agent}" agent requires environment variable${missing.length > 1 ? "s" : ""} ${missing.join(", ")} ` +
116
165
  `but ${missing.length > 1 ? "they are" : "it is"} not set. ` +
117
166
  `Add ${missing.length > 1 ? "them" : "it"} to your shell environment or to the "env" array in axis.config.json.`);
118
167
  }
@@ -147,36 +196,81 @@ export async function run(options = {}) {
147
196
  }
148
197
  // Emit initial state after pre-flight so ink's first render is clean
149
198
  logger.onJobUpdate?.(jobStates, jobMeta);
199
+ // --- Resolve overall limits ---
200
+ const runLimits = config.settings?.limits?.run;
201
+ const defaultScenarioLimits = config.settings?.limits?.scenario;
202
+ const runAbortController = new AbortController();
203
+ let runTimeLimitTimer;
204
+ // Start overall time limit timer
205
+ if (runLimits?.time_minutes) {
206
+ const runTimeMs = runLimits.time_minutes * 60 * 1000;
207
+ runTimeLimitTimer = setTimeout(() => {
208
+ if (!runAbortController.signal.aborted) {
209
+ runAbortController.abort(`Overall time limit reached (${formatLimitMinutes(runTimeMs)})`);
210
+ }
211
+ }, runTimeMs);
212
+ }
213
+ // Overall token limit: check cumulative tokens on every update
214
+ const runTokenLimit = runLimits?.tokens;
215
+ const checkOverallTokenLimit = () => {
216
+ if (!runTokenLimit || runAbortController.signal.aborted)
217
+ return;
218
+ const cumulative = jobStates.reduce((sum, s) => sum + (s.liveTokens ?? 0), 0);
219
+ if (cumulative >= runTokenLimit) {
220
+ runAbortController.abort(`Overall token limit reached (${runTokenLimit} tokens)`);
221
+ }
222
+ };
150
223
  // --- Execute jobs with concurrency control ---
151
224
  const concurrency = options.concurrency ?? Infinity;
152
225
  const tasks = jobs.map((job) => async () => {
153
- const { result, cleanup } = await executeJob(job, jobEnv, logger, updateStatus, updateTokens, resolvedSkillMap, options.registerCleanup, options.debug);
226
+ // If overall abort already fired, fail immediately
227
+ if (runAbortController.signal.aborted) {
228
+ const reason = String(runAbortController.signal.reason);
229
+ updateStatus(job.index, "failed", 0);
230
+ return buildFailedResult(job, reason);
231
+ }
232
+ // Per-job abort controller, linked to overall
233
+ const jobAbortController = new AbortController();
234
+ const onRunAbort = () => {
235
+ jobAbortController.abort(runAbortController.signal.reason);
236
+ };
237
+ runAbortController.signal.addEventListener("abort", onRunAbort, { once: true });
238
+ const jobLimits = resolveJobLimits(job.scenario, defaultScenarioLimits);
154
239
  try {
155
- // Allow external processing (e.g. scoring/verification) before teardown.
156
- // If onResult returns a Promise, we await it so the judge can verify
157
- // results before teardown scripts destroy resources.
158
- if (options.onResult) {
159
- await options.onResult(result);
240
+ const { result, cleanup } = await executeJob(job, jobEnv, logger, updateStatus, updateTokens, resolvedSkillMap, options.registerCleanup, options.debug, jobAbortController, jobLimits, checkOverallTokenLimit, options.reportDir);
241
+ try {
242
+ // Allow external processing (e.g. scoring/verification) before teardown.
243
+ // If onResult returns a Promise, we await it so the judge can verify
244
+ // results before teardown scripts destroy resources.
245
+ if (options.onResult) {
246
+ await options.onResult(result);
247
+ }
160
248
  }
249
+ finally {
250
+ await cleanup();
251
+ }
252
+ return result;
161
253
  }
162
254
  finally {
163
- await cleanup();
255
+ runAbortController.signal.removeEventListener("abort", onRunAbort);
164
256
  }
165
- return result;
166
257
  });
167
258
  const results = await runWithConcurrency(tasks, concurrency);
259
+ // Clean up overall time limit timer
260
+ if (runTimeLimitTimer)
261
+ clearTimeout(runTimeLimitTimer);
168
262
  return buildOutput(runStart, results, skippedCount);
169
263
  }
170
- async function executeJob(job, env, logger, updateStatus, updateTokens, resolvedSkillMap, registerCleanup, _debug) {
171
- const { index, agentName, agentConfig, scenario, axisConfig } = job;
264
+ async function executeJob(job, env, logger, updateStatus, updateTokens, resolvedSkillMap, registerCleanup, _debug, jobAbortController, jobLimits, checkOverallTokenLimit, reportDir) {
265
+ const { index, agentName, agentConfig, scenario, axisConfig, configDir } = job;
172
266
  const label = `${scenario.key} (${agentName})`;
173
267
  const jobStart = Date.now();
174
268
  // Create isolated workspace and point HOME there so agents
175
269
  // don't pick up the user's global settings (e.g. ~/.claude/).
176
270
  const workspace = createWorkspace();
177
- const adapter = getAdapter(agentConfig.adapter);
271
+ const adapter = getAdapter(agentConfig.agent);
178
272
  const adapterIsolation = adapter.isolationEnv?.(workspace) ?? {};
179
- const jobEnv = { ...adapterIsolation, ...env, HOME: workspace };
273
+ const jobEnv = { ...adapterIsolation, ...env, HOME: workspace, AXIS_CONFIG_DIR: configDir };
180
274
  logger.verbose?.(`[${label}] Workspace: ${workspace}`);
181
275
  // Register workspace for cleanup on process signal (Ctrl-C)
182
276
  registerCleanup?.(() => {
@@ -187,12 +281,34 @@ async function executeJob(job, env, logger, updateStatus, updateTokens, resolved
187
281
  /* best-effort */
188
282
  }
189
283
  });
284
+ const artifactPatterns = resolveArtifactPatterns(axisConfig, scenario);
285
+ // The result reference is needed inside cleanup so we can attach the
286
+ // captured artifacts before the function returns. It is assigned in the
287
+ // try block below, before cleanup is invoked.
288
+ let resultRef;
190
289
  const cleanup = async () => {
191
290
  if (scenario.teardown?.length) {
192
291
  logger.verbose?.(`[${label}] Running teardown...`);
193
- await executeLifecycleActions(scenario.teardown, workspace, jobEnv).catch((teardownErr) => {
194
- logger.error(`[${label}] Teardown failed: ${formatError(teardownErr)}`);
195
- });
292
+ const outcome = await runLifecyclePhase(scenario.teardown, workspace, jobEnv, "teardown");
293
+ if (outcome.error) {
294
+ logger.error(`[${label}] Teardown failed: ${formatError(outcome.error)}`);
295
+ }
296
+ if (resultRef && outcome.output) {
297
+ resultRef.teardownOutput = outcome.output;
298
+ }
299
+ }
300
+ if (resultRef && reportDir && artifactPatterns.length > 0) {
301
+ const destDir = path.join(reportDir, "scenarios", scenario.key, agentName, "artifacts");
302
+ try {
303
+ const captured = captureArtifacts(workspace, artifactPatterns, destDir, logger);
304
+ if (captured.length > 0) {
305
+ resultRef.artifacts = captured;
306
+ logger.verbose?.(`[${label}] Captured ${captured.length} artifact(s)`);
307
+ }
308
+ }
309
+ catch (err) {
310
+ logger.error(`[${label}] Artifact capture failed: ${formatError(err)}`);
311
+ }
196
312
  }
197
313
  try {
198
314
  fs.rmSync(workspace, { recursive: true, force: true });
@@ -203,10 +319,14 @@ async function executeJob(job, env, logger, updateStatus, updateTokens, resolved
203
319
  }
204
320
  };
205
321
  // Setup
322
+ let setupOutput;
206
323
  if (scenario.setup?.length) {
207
324
  updateStatus(index, "setup");
208
325
  logger.verbose?.(`[${label}] Running setup...`);
209
- await executeLifecycleActions(scenario.setup, workspace, jobEnv);
326
+ const outcome = await runLifecyclePhase(scenario.setup, workspace, jobEnv, "setup");
327
+ setupOutput = outcome.output;
328
+ if (outcome.error)
329
+ throw outcome.error;
210
330
  }
211
331
  try {
212
332
  updateStatus(index, "running");
@@ -235,8 +355,32 @@ async function executeJob(job, env, logger, updateStatus, updateTokens, resolved
235
355
  ? { ...axisConfig.mcp_servers, ...scenario.mcp_servers }
236
356
  : axisConfig.mcp_servers,
237
357
  resolvedSkills: agentSkills.length > 0 ? agentSkills : undefined,
238
- onTokenProgress: (tokens) => updateTokens(index, tokens),
358
+ onTokenProgress: (tokens) => {
359
+ updateTokens(index, tokens);
360
+ // Per-scenario token limit
361
+ if (jobLimits?.tokenLimit && tokens >= jobLimits.tokenLimit) {
362
+ jobAbortController?.abort(`Scenario token limit reached (${jobLimits.tokenLimit} tokens)`);
363
+ }
364
+ // Overall token limit (checks cumulative across all jobs)
365
+ checkOverallTokenLimit?.();
366
+ },
367
+ ...(jobLimits?.timeoutMs ? { timeoutMs: jobLimits.timeoutMs } : {}),
368
+ ...(jobAbortController ? { signal: jobAbortController.signal } : {}),
239
369
  });
370
+ // Rewrite adapter timeout error to scenario-specific message when a
371
+ // per-scenario time limit was the cause.
372
+ if (output.metadata.error?.startsWith("Agent timed out") && jobLimits?.timeoutMs) {
373
+ output.metadata.error = `Scenario time limit reached (${formatLimitMinutes(jobLimits.timeoutMs)})`;
374
+ }
375
+ // If the abort signal fired during execution but the adapter didn't
376
+ // handle it (e.g. mock adapters, custom adapters without signal support),
377
+ // apply the abort reason as the error on the runner side.
378
+ if (jobAbortController?.signal.aborted && !output.metadata.error) {
379
+ output.metadata.error = String(jobAbortController.signal.reason);
380
+ if (output.metadata.exitCode === 0) {
381
+ output.metadata.exitCode = 1;
382
+ }
383
+ }
240
384
  // Snap the live counter up to the real total (input + output + cache).
241
385
  // The UI animates up to this value — it won't exceed it because
242
386
  // `updateTokens` is monotonic. Passing `final: true` marks `tokensFinal`
@@ -246,23 +390,26 @@ async function executeJob(job, env, logger, updateStatus, updateTokens, resolved
246
390
  if (usage) {
247
391
  const realTotal = (usage.input ?? 0) + (usage.output ?? 0) + (usage.cacheReadInput ?? 0);
248
392
  updateTokens(index, realTotal, true);
393
+ // Re-check overall token limit with the authoritative total
394
+ checkOverallTokenLimit?.();
249
395
  }
250
396
  const durationMs = output.metadata.durationMs || Date.now() - jobStart;
251
397
  const failed = output.metadata.exitCode !== 0 || !!output.metadata.error;
252
398
  updateStatus(index, failed ? "failed" : "done", durationMs);
253
- return {
254
- result: {
255
- scenarioKey: scenario.key,
256
- scenarioName: scenario.name,
257
- agentName,
258
- prompt: scenario.prompt,
259
- rubric: scenario.rubric,
260
- agentConfig,
261
- output,
262
- workingDirectory: workspace,
263
- },
264
- cleanup,
399
+ const result = {
400
+ scenarioKey: scenario.key,
401
+ scenarioName: scenario.name,
402
+ agentName,
403
+ prompt: scenario.prompt,
404
+ rubric: scenario.rubric,
405
+ agentConfig,
406
+ output,
407
+ workingDirectory: workspace,
408
+ resolvedConfig: buildResolvedRunConfig(scenario, axisConfig, agentConfig),
409
+ ...(setupOutput ? { setupOutput } : {}),
265
410
  };
411
+ resultRef = result;
412
+ return { result, cleanup };
266
413
  }
267
414
  catch (err) {
268
415
  updateStatus(index, "failed", Date.now() - jobStart);
@@ -305,12 +452,19 @@ function buildJobEnv(config) {
305
452
  }
306
453
  return env;
307
454
  }
455
+ /**
456
+ * Build the display name for each agent entry. Naming rules:
457
+ * - `{agent}|{model}` whenever a model is specified
458
+ * - `{agent}` otherwise
459
+ * - `-N` numeric suffix appended only as a tie-breaker if the rules above
460
+ * still produce duplicates (e.g. two entries with the same agent and no model)
461
+ */
308
462
  function normalizeAgents(agents) {
309
- const nameCounts = new Map();
310
463
  const result = [];
464
+ const nameCounts = new Map();
311
465
  for (const entry of agents) {
312
- const config = typeof entry === "string" ? { adapter: entry } : entry;
313
- const baseName = config.adapter;
466
+ const config = typeof entry === "string" ? { agent: entry } : entry;
467
+ const baseName = config.model ? `${config.agent}|${config.model}` : config.agent;
314
468
  const count = (nameCounts.get(baseName) ?? 0) + 1;
315
469
  nameCounts.set(baseName, count);
316
470
  const name = count === 1 ? baseName : `${baseName}-${count}`;
@@ -318,6 +472,38 @@ function normalizeAgents(agents) {
318
472
  }
319
473
  return result;
320
474
  }
475
+ /**
476
+ * Per-scenario `agents: [...]` filter: an entry matches if it equals the
477
+ * generated agent name OR its base agent (the part before `|model`).
478
+ * This lets `agents: ["claude-code"]` apply to `claude-code|opus`,
479
+ * `claude-code|sonnet`, etc. without enumerating every model.
480
+ */
481
+ function scenarioAgentFilterMatches(filter, generatedName, baseAgent) {
482
+ return filter.includes(generatedName) || filter.includes(baseAgent);
483
+ }
484
+ function buildFailedResult(job, error) {
485
+ const now = new Date().toISOString();
486
+ return {
487
+ scenarioKey: job.scenario.key,
488
+ scenarioName: job.scenario.name,
489
+ agentName: job.agentName,
490
+ prompt: job.scenario.prompt,
491
+ rubric: job.scenario.rubric,
492
+ agentConfig: job.agentConfig,
493
+ resolvedConfig: buildResolvedRunConfig(job.scenario, job.axisConfig, job.agentConfig),
494
+ output: {
495
+ transcript: [],
496
+ result: null,
497
+ metadata: {
498
+ startTime: now,
499
+ endTime: now,
500
+ durationMs: 0,
501
+ exitCode: 1,
502
+ error,
503
+ },
504
+ },
505
+ };
506
+ }
321
507
  function buildOutput(runStart, results, skippedCount = 0) {
322
508
  const completed = results.filter((r) => r.output.metadata.exitCode === 0 && !r.output.metadata.error).length;
323
509
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/runner/runner.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scoring/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAgBtG;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CAuF1G;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,YAAY,CAoBtG;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAIxG"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/scoring/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAe,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAgBtG;;;GAGG;AACH,wBAAsB,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CA6F1G;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,SAAS,EAAE,SAAS,EAAE,aAAa,EAAE,eAAe,EAAE,GAAG,YAAY,CAoBtG;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,YAAY,CAAC,CAIxG"}
@@ -24,7 +24,10 @@ export async function scoreRunResult(result, options) {
24
24
  // Step 1: Normalize transcript (existing, unchanged)
25
25
  const normalized = normalizeTranscript(result.output.transcript);
26
26
  // Step 2: Build sparse index (deterministic) and populate content for reports
27
- const sparseIndex = buildSparseIndex(normalized);
27
+ const sparseIndex = buildSparseIndex(normalized, {
28
+ agentStartTime: result.output.metadata.startTime,
29
+ agentEndTime: result.output.metadata.endTime,
30
+ });
28
31
  populateInteractionContent(sparseIndex, normalized);
29
32
  // Step 3: Write raw data to report dir so LLM judges can read it
30
33
  if (options?.reportDir) {
@@ -72,6 +75,9 @@ export async function scoreRunResult(result, options) {
72
75
  agentConfig: result.agentConfig,
73
76
  output: result.output,
74
77
  score,
78
+ ...(result.workingDirectory !== undefined ? { workingDirectory: result.workingDirectory } : {}),
79
+ ...(result.resolvedConfig !== undefined ? { resolvedConfig: result.resolvedConfig } : {}),
80
+ ...(result.artifacts !== undefined ? { artifacts: result.artifacts } : {}),
75
81
  };
76
82
  }
77
83
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scoring/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scoring/index.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ import { getAdapter } from "../adapters/registry.js";
11
11
  * no workspace is set (e.g. programmatic API usage without the runner).
12
12
  */
13
13
  export async function callJudge(runResult, prompt, options) {
14
- const adapter = getAdapter(runResult.agentConfig.adapter);
14
+ const adapter = getAdapter(runResult.agentConfig.agent);
15
15
  const originalWorkspace = runResult.workingDirectory;
16
16
  const workspace = originalWorkspace ?? fs.mkdtempSync(path.join(os.tmpdir(), `axis-${options.scenarioKey}-`));
17
17
  const shouldCleanup = !originalWorkspace;
@@ -1 +1 @@
1
- {"version":3,"file":"judge.js","sourceRoot":"","sources":["../../src/scoring/judge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAAoB,EACpB,MAAc,EACd,OAAyB;IAEzB,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAC1D,MAAM,iBAAiB,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAErD,MAAM,SAAS,GAAG,iBAAiB,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC9G,MAAM,aAAa,GAAG,CAAC,iBAAiB,CAAC;IAEzC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/B,MAAM;YACN,MAAM,EAAE,SAAS,CAAC,WAAW;YAC7B,QAAQ,EAAE;gBACR,GAAG,EAAE,OAAO,CAAC,WAAW;gBACxB,IAAI,EAAE,OAAO,CAAC,YAAY;gBAC1B,MAAM;gBACN,MAAM,EAAE,EAAE;aACX;YACD,gBAAgB,EAAE,SAAS;SAC5B,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;IAC7B,CAAC;YAAS,CAAC;QACT,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"judge.js","sourceRoot":"","sources":["../../src/scoring/judge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAUrD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAAoB,EACpB,MAAc,EACd,OAAyB;IAEzB,MAAM,OAAO,GAAG,UAAU,CAAC,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IACxD,MAAM,iBAAiB,GAAG,SAAS,CAAC,gBAAgB,CAAC;IAErD,MAAM,SAAS,GAAG,iBAAiB,IAAI,EAAE,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,QAAQ,OAAO,CAAC,WAAW,GAAG,CAAC,CAAC,CAAC;IAC9G,MAAM,aAAa,GAAG,CAAC,iBAAiB,CAAC;IAEzC,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC/B,MAAM;YACN,MAAM,EAAE,SAAS,CAAC,WAAW;YAC7B,QAAQ,EAAE;gBACR,GAAG,EAAE,OAAO,CAAC,WAAW;gBACxB,IAAI,EAAE,OAAO,CAAC,YAAY;gBAC1B,MAAM;gBACN,MAAM,EAAE,EAAE;aACX;YACD,gBAAgB,EAAE,SAAS;SAC5B,CAAC,CAAC;QACH,OAAO,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;IAC7B,CAAC;YAAS,CAAC;QACT,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC;gBACH,EAAE,CAAC,MAAM,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC;YACzD,CAAC;YAAC,MAAM,CAAC;gBACP,YAAY;YACd,CAAC;QACH,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -6,7 +6,12 @@ import type { SparseIndex } from "../types/scoring.js";
6
6
  *
7
7
  * Purely deterministic — no LLM calls, no side effects.
8
8
  */
9
- export declare function buildSparseIndex(normalized: NormalizedTranscript): SparseIndex;
9
+ export interface BuildSparseIndexOptions {
10
+ /** Wall-clock timestamps of the agent process (ISO strings). When provided, used to compute startupMs/shutdownMs gaps. */
11
+ agentStartTime?: string;
12
+ agentEndTime?: string;
13
+ }
14
+ export declare function buildSparseIndex(normalized: NormalizedTranscript, options?: BuildSparseIndexOptions): SparseIndex;
10
15
  /**
11
16
  * Populate the `content` field on each interaction with formatted entry content
12
17
  * for display in reports. Mutates interactions in-place.
@@ -1 +1 @@
1
- {"version":3,"file":"sparse-index.d.ts","sourceRoot":"","sources":["../../src/scoring/sparse-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,KAAK,EAAoC,WAAW,EAAE,MAAM,qBAAqB,CAAC;AASzF;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,oBAAoB,GAAG,WAAW,CAkC9E;AAiSD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,oBAAoB,GAAG,IAAI,CA2C3G"}
1
+ {"version":3,"file":"sparse-index.d.ts","sourceRoot":"","sources":["../../src/scoring/sparse-index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAmB,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AACpF,OAAO,KAAK,EAAoC,WAAW,EAAE,MAAM,qBAAqB,CAAC;AASzF;;;;;GAKG;AACH,MAAM,WAAW,uBAAuB;IACtC,0HAA0H;IAC1H,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,gBAAgB,CAC9B,UAAU,EAAE,oBAAoB,EAChC,OAAO,GAAE,uBAA4B,GACpC,WAAW,CAgDb;AAySD;;;GAGG;AACH,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,oBAAoB,GAAG,IAAI,CAsD3G"}