agentv 4.43.0-next.1 → 4.44.0-next.1

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 (24) hide show
  1. package/dist/{artifact-writer-STR7E5UO.js → artifact-writer-72MQQELS.js} +4 -4
  2. package/dist/{chunk-IFQXBQSY.js → chunk-2N3YSEMI.js} +6 -6
  3. package/dist/{chunk-RFJM2UBD.js → chunk-5DYGN547.js} +65 -12
  4. package/dist/chunk-5DYGN547.js.map +1 -0
  5. package/dist/{chunk-ROLNQBYU.js → chunk-CXHYTYHU.js} +8 -8
  6. package/dist/{chunk-ROLNQBYU.js.map → chunk-CXHYTYHU.js.map} +1 -1
  7. package/dist/{chunk-E2NL57MZ.js → chunk-KAGZRUO6.js} +2 -2
  8. package/dist/{chunk-5NDSGGMJ.js → chunk-NCNDA3F6.js} +2 -2
  9. package/dist/cli.js +5 -5
  10. package/dist/{dist-FTTL5IOY.js → dist-L4YCQOQ6.js} +3 -3
  11. package/dist/index.js +5 -5
  12. package/dist/{interactive-RE4DXH4A.js → interactive-DRNRKLEQ.js} +5 -5
  13. package/dist/skills/agentv-eval-writer/SKILL.md +1 -1
  14. package/dist/skills/agentv-eval-writer/references/config-schema.json +16 -0
  15. package/dist/{ts-eval-loader-HQDMXQQV-LBW3N3W6.js → ts-eval-loader-S7ESROX2-6CB3HB6H.js} +2 -2
  16. package/package.json +1 -1
  17. package/dist/chunk-RFJM2UBD.js.map +0 -1
  18. /package/dist/{artifact-writer-STR7E5UO.js.map → artifact-writer-72MQQELS.js.map} +0 -0
  19. /package/dist/{chunk-IFQXBQSY.js.map → chunk-2N3YSEMI.js.map} +0 -0
  20. /package/dist/{chunk-E2NL57MZ.js.map → chunk-KAGZRUO6.js.map} +0 -0
  21. /package/dist/{chunk-5NDSGGMJ.js.map → chunk-NCNDA3F6.js.map} +0 -0
  22. /package/dist/{dist-FTTL5IOY.js.map → dist-L4YCQOQ6.js.map} +0 -0
  23. /package/dist/{interactive-RE4DXH4A.js.map → interactive-DRNRKLEQ.js.map} +0 -0
  24. /package/dist/{ts-eval-loader-HQDMXQQV-LBW3N3W6.js.map → ts-eval-loader-S7ESROX2-6CB3HB6H.js.map} +0 -0
@@ -4,8 +4,8 @@ import {
4
4
  buildResultIndexArtifact,
5
5
  writeArtifactsFromResults,
6
6
  writePerTestArtifacts
7
- } from "./chunk-E2NL57MZ.js";
8
- import "./chunk-5NDSGGMJ.js";
7
+ } from "./chunk-KAGZRUO6.js";
8
+ import "./chunk-NCNDA3F6.js";
9
9
  import "./chunk-76FOHROU.js";
10
10
  import "./chunk-BPGJ4HBU.js";
11
11
  import {
@@ -20,7 +20,7 @@ import {
20
20
  parseJsonlResults,
21
21
  writeArtifacts,
22
22
  writeInitialBenchmarkArtifact
23
- } from "./chunk-RFJM2UBD.js";
23
+ } from "./chunk-5DYGN547.js";
24
24
  import "./chunk-NPVGBFF6.js";
25
25
  import "./chunk-M7BUKBAF.js";
26
26
  import "./chunk-5H446C7X.js";
@@ -41,4 +41,4 @@ export {
41
41
  writeInitialBenchmarkArtifact,
42
42
  writePerTestArtifacts
43
43
  };
44
- //# sourceMappingURL=artifact-writer-STR7E5UO.js.map
44
+ //# sourceMappingURL=artifact-writer-72MQQELS.js.map
@@ -64,12 +64,12 @@ import {
64
64
  validateTargetsFile,
65
65
  validateWorkspacePaths,
66
66
  writeRunTags
67
- } from "./chunk-ROLNQBYU.js";
67
+ } from "./chunk-CXHYTYHU.js";
68
68
  import {
69
69
  materializeEvalBundle,
70
70
  toSnakeCaseDeep as toSnakeCaseDeep2,
71
71
  writeArtifactsFromResults as writeArtifactsFromResults2
72
- } from "./chunk-E2NL57MZ.js";
72
+ } from "./chunk-KAGZRUO6.js";
73
73
  import {
74
74
  DEFAULT_CATEGORY,
75
75
  deriveCategory,
@@ -86,7 +86,7 @@ import {
86
86
  syncProjects,
87
87
  transpileEvalYamlFile,
88
88
  trimBaselineResult
89
- } from "./chunk-5NDSGGMJ.js";
89
+ } from "./chunk-NCNDA3F6.js";
90
90
  import {
91
91
  AGENTV_RESULTS_ARTIFACTS_REF,
92
92
  DEFAULT_THRESHOLD,
@@ -145,7 +145,7 @@ import {
145
145
  traceEnvelopeToTranscriptMessages,
146
146
  traceFromTranscriptJsonLines,
147
147
  writeArtifactsFromResults
148
- } from "./chunk-RFJM2UBD.js";
148
+ } from "./chunk-5DYGN547.js";
149
149
  import {
150
150
  __commonJS,
151
151
  __require,
@@ -4828,7 +4828,7 @@ var evalRunCommand = command({
4828
4828
  },
4829
4829
  handler: async (args) => {
4830
4830
  if (args.evalPaths.length === 0 && process.stdin.isTTY) {
4831
- const { launchInteractiveWizard } = await import("./interactive-RE4DXH4A.js");
4831
+ const { launchInteractiveWizard } = await import("./interactive-DRNRKLEQ.js");
4832
4832
  await launchInteractiveWizard();
4833
4833
  return;
4834
4834
  }
@@ -18765,4 +18765,4 @@ export {
18765
18765
  preprocessArgv,
18766
18766
  runCli
18767
18767
  };
18768
- //# sourceMappingURL=chunk-IFQXBQSY.js.map
18768
+ //# sourceMappingURL=chunk-2N3YSEMI.js.map
@@ -4056,7 +4056,7 @@ var coerce = {
4056
4056
  };
4057
4057
  var NEVER = INVALID;
4058
4058
 
4059
- // ../../packages/core/dist/chunk-WSIPYTCH.js
4059
+ // ../../packages/core/dist/chunk-FMQSS3SC.js
4060
4060
  import { parse } from "yaml";
4061
4061
  import os from "node:os";
4062
4062
  import path from "node:path";
@@ -5547,6 +5547,7 @@ function resolvePiCliConfig(target, env, _evalFilePath) {
5547
5547
  allowLiteral: true,
5548
5548
  optionalEnv: true
5549
5549
  });
5550
+ const piCliSubprovider = normalizePiCliSubprovider(subprovider, baseUrl);
5550
5551
  const tools = resolveOptionalString(toolsSource, env, `${target.name} pi-cli tools`, {
5551
5552
  allowLiteral: true,
5552
5553
  optionalEnv: true
@@ -5570,7 +5571,7 @@ function resolvePiCliConfig(target, env, _evalFilePath) {
5570
5571
  const systemPrompt = typeof systemPromptSource === "string" && systemPromptSource.trim().length > 0 ? systemPromptSource.trim() : void 0;
5571
5572
  return {
5572
5573
  executable,
5573
- subprovider,
5574
+ subprovider: piCliSubprovider,
5574
5575
  model,
5575
5576
  apiKey,
5576
5577
  baseUrl,
@@ -5585,6 +5586,13 @@ function resolvePiCliConfig(target, env, _evalFilePath) {
5585
5586
  systemPrompt
5586
5587
  };
5587
5588
  }
5589
+ function normalizePiCliSubprovider(subprovider, baseUrl) {
5590
+ if (!baseUrl) return subprovider;
5591
+ if (!subprovider || subprovider.toLowerCase() === "openai") {
5592
+ return "azure";
5593
+ }
5594
+ return subprovider;
5595
+ }
5588
5596
  function resolveClaudeConfig(target, env, _evalFilePath) {
5589
5597
  const executableSource = target.executable ?? target.command ?? target.binary;
5590
5598
  const modelSource = target.model;
@@ -6261,7 +6269,7 @@ async function expandFileReferences(tests, evalFileDir) {
6261
6269
  return expanded;
6262
6270
  }
6263
6271
 
6264
- // ../../packages/core/dist/chunk-5W7DQNEF.js
6272
+ // ../../packages/core/dist/chunk-BPMHQXAX.js
6265
6273
  import path51 from "node:path";
6266
6274
  import { pathToFileURL as pathToFileURL2 } from "node:url";
6267
6275
  import { existsSync as existsSync7 } from "node:fs";
@@ -18926,7 +18934,7 @@ var RequestError = class _RequestError extends Error {
18926
18934
  }
18927
18935
  };
18928
18936
 
18929
- // ../../packages/core/dist/chunk-5W7DQNEF.js
18937
+ // ../../packages/core/dist/chunk-BPMHQXAX.js
18930
18938
  import { exec as execCallback } from "node:child_process";
18931
18939
  import { readdirSync, statSync } from "node:fs";
18932
18940
  import { readFile as readFile32, readdir as readdir2, stat as stat2 } from "node:fs/promises";
@@ -34898,11 +34906,13 @@ var RepoManager = class {
34898
34906
  progress;
34899
34907
  heartbeatMs;
34900
34908
  timeoutMs;
34909
+ projectConfigDir;
34901
34910
  constructor(verbose = false, options = {}) {
34902
34911
  this.verbose = verbose;
34903
34912
  this.progress = options.progress ?? true;
34904
34913
  this.heartbeatMs = options.heartbeatMs ?? DEFAULT_HEARTBEAT_MS;
34905
34914
  this.timeoutMs = options.timeoutMs ?? DEFAULT_TIMEOUT_MS2;
34915
+ this.projectConfigDir = options.projectConfigDir;
34906
34916
  }
34907
34917
  async runGit(args, opts) {
34908
34918
  const startedAt = Date.now();
@@ -35005,8 +35015,7 @@ ${output}` : ""}`
35005
35015
  });
35006
35016
  });
35007
35017
  }
35008
- loadConfiguredMirrors() {
35009
- const filePath = configPath();
35018
+ loadConfiguredMirrorsFrom(filePath) {
35010
35019
  if (!existsSync5(filePath)) return {};
35011
35020
  try {
35012
35021
  const parsed = parseYamlValue(readFileSync3(filePath, "utf-8"));
@@ -35027,6 +35036,50 @@ ${output}` : ""}`
35027
35036
  return {};
35028
35037
  }
35029
35038
  }
35039
+ findProjectAgentvDir() {
35040
+ if (!this.projectConfigDir) return void 0;
35041
+ let current = path38.resolve(this.projectConfigDir);
35042
+ while (true) {
35043
+ const candidateDir = path38.join(current, ".agentv");
35044
+ if (existsSync5(path38.join(candidateDir, "config.yaml")) || existsSync5(path38.join(candidateDir, "config.override.yaml"))) {
35045
+ return candidateDir;
35046
+ }
35047
+ const reachedRepoRoot = existsSync5(path38.join(current, ".git"));
35048
+ const parent = path38.dirname(current);
35049
+ if (reachedRepoRoot || parent === current) return void 0;
35050
+ current = parent;
35051
+ }
35052
+ }
35053
+ mergeConfiguredMirrorLayers(layers) {
35054
+ const mirrorsByRepo = /* @__PURE__ */ new Map();
35055
+ const repoByIdentity = /* @__PURE__ */ new Map();
35056
+ for (const layer of layers) {
35057
+ for (const [repo, localPath] of Object.entries(layer)) {
35058
+ const repoIdentity = normalizeRepoIdentity(repo);
35059
+ const previousRepo = repoByIdentity.get(repoIdentity);
35060
+ if (previousRepo) mirrorsByRepo.delete(previousRepo);
35061
+ repoByIdentity.set(repoIdentity, repo);
35062
+ mirrorsByRepo.set(repo, localPath);
35063
+ }
35064
+ }
35065
+ return Object.fromEntries(mirrorsByRepo);
35066
+ }
35067
+ loadConfiguredMirrors() {
35068
+ const globalMirrors = this.loadConfiguredMirrorsFrom(configPath());
35069
+ const projectAgentvDir = this.findProjectAgentvDir();
35070
+ if (!projectAgentvDir) return globalMirrors;
35071
+ const projectMirrors = this.loadConfiguredMirrorsFrom(
35072
+ path38.join(projectAgentvDir, "config.yaml")
35073
+ );
35074
+ const projectOverrideMirrors = this.loadConfiguredMirrorsFrom(
35075
+ path38.join(projectAgentvDir, "config.override.yaml")
35076
+ );
35077
+ return this.mergeConfiguredMirrorLayers([
35078
+ globalMirrors,
35079
+ projectMirrors,
35080
+ projectOverrideMirrors
35081
+ ]);
35082
+ }
35030
35083
  findConfiguredMirror(repoIdentity) {
35031
35084
  const mirrors = this.loadConfiguredMirrors();
35032
35085
  for (const [repo, localPath] of Object.entries(mirrors)) {
@@ -35548,7 +35601,7 @@ async function prepareSharedWorkspaceSetup(options) {
35548
35601
  const slotsNeeded = workers;
35549
35602
  setupLog(`acquiring ${slotsNeeded} workspace pool slot(s) (pool capacity: ${poolMaxSlots})`);
35550
35603
  poolManager = new WorkspacePoolManager(getWorkspacePoolRoot());
35551
- const poolRepoManager = new RepoManager(verbose);
35604
+ const poolRepoManager = new RepoManager(verbose, { projectConfigDir: evalDir });
35552
35605
  repoManager = poolRepoManager;
35553
35606
  for (let i = 0; i < slotsNeeded; i++) {
35554
35607
  const slot = await poolManager.acquireWorkspace({
@@ -35597,7 +35650,7 @@ async function prepareSharedWorkspaceSetup(options) {
35597
35650
  const hasReposToMaterialize = !!suiteWorkspace?.repos?.length && !usePool && !isPerTestIsolation;
35598
35651
  const needsRepoMaterialisation = hasReposToMaterialize && (!useStaticWorkspace || staticMaterialised);
35599
35652
  const needsPerRepoCheck = hasReposToMaterialize && useStaticWorkspace && !staticMaterialised && isYamlConfiguredPath;
35600
- repoManager = repoManager ?? (needsRepoMaterialisation || needsPerRepoCheck ? new RepoManager(verbose) : void 0);
35653
+ repoManager = repoManager ?? (needsRepoMaterialisation || needsPerRepoCheck ? new RepoManager(verbose, { projectConfigDir: evalDir }) : void 0);
35601
35654
  if ((needsRepoMaterialisation || needsPerRepoCheck) && repoManager && sharedWorkspacePath && suiteWorkspace?.repos) {
35602
35655
  try {
35603
35656
  if (needsPerRepoCheck) {
@@ -35972,7 +36025,7 @@ async function prepareEvalCaseWorkspace(options) {
35972
36025
  await mkdir17(workspacePath, { recursive: true });
35973
36026
  }
35974
36027
  if (evalCase.workspace?.repos?.length && workspacePath) {
35975
- const perCaseRepoManager = new RepoManager(setupDebug);
36028
+ const perCaseRepoManager = new RepoManager(setupDebug, { projectConfigDir: evalDir });
35976
36029
  try {
35977
36030
  if (setupDebug) {
35978
36031
  console.log(
@@ -39815,7 +39868,7 @@ async function loadTestSuite(evalFilePath, repoRoot, options) {
39815
39868
  return { tests: await loadTestsFromAgentSkills(evalFilePath) };
39816
39869
  }
39817
39870
  if (format === "typescript") {
39818
- const { loadTsEvalSuite: loadTsEvalSuite2 } = await import("./ts-eval-loader-HQDMXQQV-LBW3N3W6.js");
39871
+ const { loadTsEvalSuite: loadTsEvalSuite2 } = await import("./ts-eval-loader-S7ESROX2-6CB3HB6H.js");
39819
39872
  return loadTsEvalSuite2(evalFilePath, resolveToAbsolutePath(repoRoot), options);
39820
39873
  }
39821
39874
  const { tests, parsed, suiteWorkspacePath } = await loadTestsFromYaml(
@@ -39844,7 +39897,7 @@ async function loadTests(evalFilePath, repoRoot, options) {
39844
39897
  return loadTestsFromAgentSkills(evalFilePath);
39845
39898
  }
39846
39899
  if (format === "typescript") {
39847
- const { loadTsEvalSuite: loadTsEvalSuite2 } = await import("./ts-eval-loader-HQDMXQQV-LBW3N3W6.js");
39900
+ const { loadTsEvalSuite: loadTsEvalSuite2 } = await import("./ts-eval-loader-S7ESROX2-6CB3HB6H.js");
39848
39901
  const suite = await loadTsEvalSuite2(evalFilePath, resolveToAbsolutePath(repoRoot), options);
39849
39902
  return suite.tests;
39850
39903
  }
@@ -46368,4 +46421,4 @@ export {
46368
46421
  loadTsEvalFile,
46369
46422
  loadTsEvalSuite
46370
46423
  };
46371
- //# sourceMappingURL=chunk-RFJM2UBD.js.map
46424
+ //# sourceMappingURL=chunk-5DYGN547.js.map