agentv 0.16.0 → 0.17.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.
@@ -3,11 +3,11 @@ import {
3
3
  __export,
4
4
  __toESM,
5
5
  require_token_error
6
- } from "./chunk-7XYYGJAC.js";
6
+ } from "./chunk-UE4GLFVL.js";
7
7
 
8
- // ../../node_modules/.pnpm/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-context.js
8
+ // ../../node_modules/.bun/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-context.js
9
9
  var require_get_context = __commonJS({
10
- "../../node_modules/.pnpm/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-context.js"(exports, module) {
10
+ "../../node_modules/.bun/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-context.js"(exports, module) {
11
11
  "use strict";
12
12
  var __defProp2 = Object.defineProperty;
13
13
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -40,9 +40,9 @@ var require_get_context = __commonJS({
40
40
  }
41
41
  });
42
42
 
43
- // ../../node_modules/.pnpm/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js
43
+ // ../../node_modules/.bun/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js
44
44
  var require_get_vercel_oidc_token = __commonJS({
45
- "../../node_modules/.pnpm/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js"(exports, module) {
45
+ "../../node_modules/.bun/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/get-vercel-oidc-token.js"(exports, module) {
46
46
  "use strict";
47
47
  var __defProp2 = Object.defineProperty;
48
48
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -79,8 +79,8 @@ var require_get_vercel_oidc_token = __commonJS({
79
79
  }
80
80
  try {
81
81
  const [{ getTokenPayload, isExpired }, { refreshToken }] = await Promise.all([
82
- await import("./token-util-SOXXDYPK.js"),
83
- await import("./token-O4PKPL7Y.js")
82
+ await import("./token-util-KCWYFARR.js"),
83
+ await import("./token-S7Q7YUO6.js")
84
84
  ]);
85
85
  if (!token2 || isExpired(getTokenPayload(token2))) {
86
86
  await refreshToken();
@@ -107,9 +107,9 @@ ${error40.message}`;
107
107
  }
108
108
  });
109
109
 
110
- // ../../node_modules/.pnpm/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/index.js
110
+ // ../../node_modules/.bun/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/index.js
111
111
  var require_dist = __commonJS({
112
- "../../node_modules/.pnpm/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/index.js"(exports, module) {
112
+ "../../node_modules/.bun/@vercel+oidc@3.0.5/node_modules/@vercel/oidc/dist/index.js"(exports, module) {
113
113
  "use strict";
114
114
  var __defProp2 = Object.defineProperty;
115
115
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -141,20 +141,26 @@ var require_dist = __commonJS({
141
141
  });
142
142
 
143
143
  // src/index.ts
144
- import { Command } from "commander";
145
144
  import { readFileSync as readFileSync2 } from "node:fs";
145
+ import { Command } from "commander";
146
146
 
147
147
  // src/commands/eval/index.ts
148
- import fg from "fast-glob";
149
148
  import { stat as stat3 } from "node:fs/promises";
150
149
  import path19 from "node:path";
150
+ import fg from "fast-glob";
151
+
152
+ // src/commands/eval/run-eval.ts
153
+ import { constants as constants6 } from "node:fs";
154
+ import { access as access6, mkdir as mkdir6 } from "node:fs/promises";
155
+ import path18 from "node:path";
156
+ import { pathToFileURL } from "node:url";
151
157
 
152
- // ../../packages/core/dist/chunk-IOCVST3R.js
158
+ // ../../packages/core/dist/chunk-YCIZ33BO.js
153
159
  import { constants } from "node:fs";
154
160
  import { access, readFile } from "node:fs/promises";
155
161
  import path from "node:path";
156
162
 
157
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/external.js
163
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/external.js
158
164
  var external_exports = {};
159
165
  __export(external_exports, {
160
166
  BRAND: () => BRAND,
@@ -266,7 +272,7 @@ __export(external_exports, {
266
272
  void: () => voidType
267
273
  });
268
274
 
269
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/util.js
275
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/util.js
270
276
  var util;
271
277
  (function(util3) {
272
278
  util3.assertEqual = (_) => {
@@ -400,7 +406,7 @@ var getParsedType = (data) => {
400
406
  }
401
407
  };
402
408
 
403
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/ZodError.js
409
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/ZodError.js
404
410
  var ZodIssueCode = util.arrayToEnum([
405
411
  "invalid_type",
406
412
  "invalid_literal",
@@ -518,7 +524,7 @@ ZodError.create = (issues) => {
518
524
  return error40;
519
525
  };
520
526
 
521
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/locales/en.js
527
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/locales/en.js
522
528
  var errorMap = (issue2, _ctx) => {
523
529
  let message;
524
530
  switch (issue2.code) {
@@ -621,7 +627,7 @@ var errorMap = (issue2, _ctx) => {
621
627
  };
622
628
  var en_default = errorMap;
623
629
 
624
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/errors.js
630
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/errors.js
625
631
  var overrideErrorMap = en_default;
626
632
  function setErrorMap(map2) {
627
633
  overrideErrorMap = map2;
@@ -630,7 +636,7 @@ function getErrorMap() {
630
636
  return overrideErrorMap;
631
637
  }
632
638
 
633
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js
639
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/parseUtil.js
634
640
  var makeIssue = (params) => {
635
641
  const { data, path: path25, errorMaps, issueData } = params;
636
642
  const fullPath = [...path25, ...issueData.path || []];
@@ -740,14 +746,14 @@ var isDirty = (x) => x.status === "dirty";
740
746
  var isValid = (x) => x.status === "valid";
741
747
  var isAsync = (x) => typeof Promise !== "undefined" && x instanceof Promise;
742
748
 
743
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js
749
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/helpers/errorUtil.js
744
750
  var errorUtil;
745
751
  (function(errorUtil2) {
746
752
  errorUtil2.errToObj = (message) => typeof message === "string" ? { message } : message || {};
747
753
  errorUtil2.toString = (message) => typeof message === "string" ? message : message?.message;
748
754
  })(errorUtil || (errorUtil = {}));
749
755
 
750
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v3/types.js
756
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v3/types.js
751
757
  var ParseInputLazyPath = class {
752
758
  constructor(parent, value, path25, key2) {
753
759
  this._cachedPath = [];
@@ -4195,7 +4201,7 @@ var coerce = {
4195
4201
  };
4196
4202
  var NEVER = INVALID;
4197
4203
 
4198
- // ../../packages/core/dist/chunk-IOCVST3R.js
4204
+ // ../../packages/core/dist/chunk-YCIZ33BO.js
4199
4205
  async function fileExists(filePath) {
4200
4206
  try {
4201
4207
  await access(filePath, constants.F_OK);
@@ -4302,7 +4308,14 @@ async function resolveFileReference(rawValue, searchRoots) {
4302
4308
  }
4303
4309
  return { displayPath, attempted };
4304
4310
  }
4305
- var CLI_PLACEHOLDERS = /* @__PURE__ */ new Set(["PROMPT", "GUIDELINES", "EVAL_ID", "ATTEMPT", "FILES", "OUTPUT_FILE"]);
4311
+ var CLI_PLACEHOLDERS = /* @__PURE__ */ new Set([
4312
+ "PROMPT",
4313
+ "GUIDELINES",
4314
+ "EVAL_ID",
4315
+ "ATTEMPT",
4316
+ "FILES",
4317
+ "OUTPUT_FILE"
4318
+ ]);
4306
4319
  var BASE_TARGET_SCHEMA = external_exports.object({
4307
4320
  name: external_exports.string().min(1, "target name is required"),
4308
4321
  provider: external_exports.string().min(1, "provider is required"),
@@ -4547,11 +4560,18 @@ function resolveMockConfig(target) {
4547
4560
  return { response };
4548
4561
  }
4549
4562
  function resolveVSCodeConfig(target, env, insiders) {
4550
- const workspaceTemplateEnvVar = resolveOptionalLiteralString(target.workspace_template ?? target.workspaceTemplate);
4551
- const workspaceTemplate = workspaceTemplateEnvVar ? resolveOptionalString(workspaceTemplateEnvVar, env, `${target.name} workspace template path`, {
4552
- allowLiteral: false,
4553
- optionalEnv: true
4554
- }) : void 0;
4563
+ const workspaceTemplateEnvVar = resolveOptionalLiteralString(
4564
+ target.workspace_template ?? target.workspaceTemplate
4565
+ );
4566
+ const workspaceTemplate = workspaceTemplateEnvVar ? resolveOptionalString(
4567
+ workspaceTemplateEnvVar,
4568
+ env,
4569
+ `${target.name} workspace template path`,
4570
+ {
4571
+ allowLiteral: false,
4572
+ optionalEnv: true
4573
+ }
4574
+ ) : void 0;
4555
4575
  const commandSource = target.vscode_cmd ?? target.command;
4556
4576
  const waitSource = target.wait;
4557
4577
  const dryRunSource = target.dry_run ?? target.dryRun;
@@ -4578,7 +4598,10 @@ function resolveCliConfig(target, env) {
4578
4598
  allowLiteral: true,
4579
4599
  optionalEnv: true
4580
4600
  });
4581
- const timeoutMs = resolveTimeoutMs(target.timeout_seconds ?? target.timeoutSeconds, `${target.name} timeout`);
4601
+ const timeoutMs = resolveTimeoutMs(
4602
+ target.timeout_seconds ?? target.timeoutSeconds,
4603
+ `${target.name} timeout`
4604
+ );
4582
4605
  const healthcheck = resolveCliHealthcheck(target.healthcheck, env, target.name);
4583
4606
  const commandTemplate = resolveString(
4584
4607
  commandTemplateSource,
@@ -4706,7 +4729,9 @@ function resolveOptionalString(source2, env, description, options) {
4706
4729
  }
4707
4730
  const allowLiteral = options?.allowLiteral ?? false;
4708
4731
  if (!allowLiteral) {
4709
- throw new Error(`${description} must use \${{ VARIABLE_NAME }} syntax for environment variables or be marked as allowing literals`);
4732
+ throw new Error(
4733
+ `${description} must use \${{ VARIABLE_NAME }} syntax for environment variables or be marked as allowing literals`
4734
+ );
4710
4735
  }
4711
4736
  return trimmed;
4712
4737
  }
@@ -4841,7 +4866,6 @@ var PROVIDER_ALIASES = [
4841
4866
  "vertex"
4842
4867
  // legacy/future support
4843
4868
  ];
4844
- var TARGETS_SCHEMA_V2 = "agentv-targets-v2.2";
4845
4869
  function isAgentProvider(provider) {
4846
4870
  return provider ? AGENT_PROVIDER_KINDS.includes(provider.kind) : false;
4847
4871
  }
@@ -4850,9 +4874,9 @@ function isAgentProvider(provider) {
4850
4874
  import { readFile as readFile5 } from "node:fs/promises";
4851
4875
  import path62 from "node:path";
4852
4876
  import { parse as parse22 } from "yaml";
4853
- import micromatch from "micromatch";
4854
4877
  import { readFile as readFile3 } from "node:fs/promises";
4855
4878
  import path22 from "node:path";
4879
+ import micromatch from "micromatch";
4856
4880
  import { parse as parse5 } from "yaml";
4857
4881
  import { constants as constants3 } from "node:fs";
4858
4882
  import { access as access3 } from "node:fs/promises";
@@ -4864,7 +4888,7 @@ import path42 from "node:path";
4864
4888
  import { readFile as readFile4 } from "node:fs/promises";
4865
4889
  import path52 from "node:path";
4866
4890
 
4867
- // ../../node_modules/.pnpm/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/dist/index.mjs
4891
+ // ../../node_modules/.bun/@ai-sdk+provider@2.0.0/node_modules/@ai-sdk/provider/dist/index.mjs
4868
4892
  var marker = "vercel.ai.error";
4869
4893
  var symbol = Symbol.for(marker);
4870
4894
  var _a;
@@ -5173,7 +5197,7 @@ var UnsupportedFunctionalityError = class extends AISDKError {
5173
5197
  };
5174
5198
  _a14 = symbol14;
5175
5199
 
5176
- // ../../node_modules/.pnpm/eventsource-parser@3.0.6/node_modules/eventsource-parser/dist/index.js
5200
+ // ../../node_modules/.bun/eventsource-parser@3.0.6/node_modules/eventsource-parser/dist/index.js
5177
5201
  var ParseError = class extends Error {
5178
5202
  constructor(message, options) {
5179
5203
  super(message), this.name = "ParseError", this.type = options.type, this.field = options.field, this.value = options.value, this.line = options.line;
@@ -5276,7 +5300,7 @@ function splitLines(chunk) {
5276
5300
  return [lines, incompleteLine];
5277
5301
  }
5278
5302
 
5279
- // ../../node_modules/.pnpm/eventsource-parser@3.0.6/node_modules/eventsource-parser/dist/stream.js
5303
+ // ../../node_modules/.bun/eventsource-parser@3.0.6/node_modules/eventsource-parser/dist/stream.js
5280
5304
  var EventSourceParserStream = class extends TransformStream {
5281
5305
  constructor({ onError, onRetry, onComment } = {}) {
5282
5306
  let parser;
@@ -5300,7 +5324,7 @@ var EventSourceParserStream = class extends TransformStream {
5300
5324
  }
5301
5325
  };
5302
5326
 
5303
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/external.js
5327
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/external.js
5304
5328
  var external_exports2 = {};
5305
5329
  __export(external_exports2, {
5306
5330
  $brand: () => $brand,
@@ -5512,7 +5536,7 @@ __export(external_exports2, {
5512
5536
  xid: () => xid2
5513
5537
  });
5514
5538
 
5515
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/index.js
5539
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/index.js
5516
5540
  var core_exports2 = {};
5517
5541
  __export(core_exports2, {
5518
5542
  $ZodAny: () => $ZodAny,
@@ -5756,7 +5780,7 @@ __export(core_exports2, {
5756
5780
  version: () => version
5757
5781
  });
5758
5782
 
5759
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/core.js
5783
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/core.js
5760
5784
  var NEVER2 = Object.freeze({
5761
5785
  status: "aborted"
5762
5786
  });
@@ -5816,7 +5840,7 @@ function config(newConfig) {
5816
5840
  return globalConfig;
5817
5841
  }
5818
5842
 
5819
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/util.js
5843
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/util.js
5820
5844
  var util_exports = {};
5821
5845
  __export(util_exports, {
5822
5846
  BIGINT_FORMAT_RANGES: () => BIGINT_FORMAT_RANGES,
@@ -6337,7 +6361,7 @@ var Class = class {
6337
6361
  }
6338
6362
  };
6339
6363
 
6340
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/errors.js
6364
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/errors.js
6341
6365
  var initializer = (inst, def) => {
6342
6366
  inst.name = "$ZodError";
6343
6367
  Object.defineProperty(inst, "_zod", {
@@ -6484,7 +6508,7 @@ function prettifyError(error40) {
6484
6508
  return lines.join("\n");
6485
6509
  }
6486
6510
 
6487
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/parse.js
6511
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/parse.js
6488
6512
  var _parse = (_Err) => (schema, value, _ctx, _params) => {
6489
6513
  const ctx = _ctx ? Object.assign(_ctx, { async: false }) : { async: false };
6490
6514
  const result = schema._zod.run({ value, issues: [] }, ctx);
@@ -6536,7 +6560,7 @@ var _safeParseAsync = (_Err) => async (schema, value, _ctx) => {
6536
6560
  };
6537
6561
  var safeParseAsync = /* @__PURE__ */ _safeParseAsync($ZodRealError);
6538
6562
 
6539
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/regexes.js
6563
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/regexes.js
6540
6564
  var regexes_exports = {};
6541
6565
  __export(regexes_exports, {
6542
6566
  _emoji: () => _emoji,
@@ -6649,7 +6673,7 @@ var _undefined = /undefined/i;
6649
6673
  var lowercase = /^[^A-Z]*$/;
6650
6674
  var uppercase = /^[^a-z]*$/;
6651
6675
 
6652
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/checks.js
6676
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/checks.js
6653
6677
  var $ZodCheck = /* @__PURE__ */ $constructor("$ZodCheck", (inst, def) => {
6654
6678
  var _a17;
6655
6679
  inst._zod ?? (inst._zod = {});
@@ -7187,7 +7211,7 @@ var $ZodCheckOverwrite = /* @__PURE__ */ $constructor("$ZodCheckOverwrite", (ins
7187
7211
  };
7188
7212
  });
7189
7213
 
7190
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/doc.js
7214
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/doc.js
7191
7215
  var Doc = class {
7192
7216
  constructor(args = []) {
7193
7217
  this.content = [];
@@ -7223,14 +7247,14 @@ var Doc = class {
7223
7247
  }
7224
7248
  };
7225
7249
 
7226
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/versions.js
7250
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/versions.js
7227
7251
  var version = {
7228
7252
  major: 4,
7229
7253
  minor: 0,
7230
7254
  patch: 0
7231
7255
  };
7232
7256
 
7233
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/schemas.js
7257
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/schemas.js
7234
7258
  var $ZodType = /* @__PURE__ */ $constructor("$ZodType", (inst, def) => {
7235
7259
  var _a17;
7236
7260
  inst ?? (inst = {});
@@ -8857,7 +8881,7 @@ function handleRefineResult(result, payload, input, inst) {
8857
8881
  }
8858
8882
  }
8859
8883
 
8860
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/index.js
8884
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/index.js
8861
8885
  var locales_exports = {};
8862
8886
  __export(locales_exports, {
8863
8887
  ar: () => ar_default,
@@ -8901,7 +8925,7 @@ __export(locales_exports, {
8901
8925
  zhTW: () => zh_TW_default
8902
8926
  });
8903
8927
 
8904
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ar.js
8928
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ar.js
8905
8929
  var error = () => {
8906
8930
  const Sizable = {
8907
8931
  string: { unit: "\u062D\u0631\u0641", verb: "\u0623\u0646 \u064A\u062D\u0648\u064A" },
@@ -9018,7 +9042,7 @@ function ar_default() {
9018
9042
  };
9019
9043
  }
9020
9044
 
9021
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/az.js
9045
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/az.js
9022
9046
  var error2 = () => {
9023
9047
  const Sizable = {
9024
9048
  string: { unit: "simvol", verb: "olmal\u0131d\u0131r" },
@@ -9134,7 +9158,7 @@ function az_default() {
9134
9158
  };
9135
9159
  }
9136
9160
 
9137
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/be.js
9161
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/be.js
9138
9162
  function getBelarusianPlural(count, one, few, many) {
9139
9163
  const absCount = Math.abs(count);
9140
9164
  const lastDigit = absCount % 10;
@@ -9299,7 +9323,7 @@ function be_default() {
9299
9323
  };
9300
9324
  }
9301
9325
 
9302
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ca.js
9326
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ca.js
9303
9327
  var error4 = () => {
9304
9328
  const Sizable = {
9305
9329
  string: { unit: "car\xE0cters", verb: "contenir" },
@@ -9419,7 +9443,7 @@ function ca_default() {
9419
9443
  };
9420
9444
  }
9421
9445
 
9422
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/cs.js
9446
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/cs.js
9423
9447
  var error5 = () => {
9424
9448
  const Sizable = {
9425
9449
  string: { unit: "znak\u016F", verb: "m\xEDt" },
@@ -9555,7 +9579,7 @@ function cs_default() {
9555
9579
  };
9556
9580
  }
9557
9581
 
9558
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/de.js
9582
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/de.js
9559
9583
  var error6 = () => {
9560
9584
  const Sizable = {
9561
9585
  string: { unit: "Zeichen", verb: "zu haben" },
@@ -9672,7 +9696,7 @@ function de_default() {
9672
9696
  };
9673
9697
  }
9674
9698
 
9675
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/en.js
9699
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/en.js
9676
9700
  var parsedType = (data) => {
9677
9701
  const t = typeof data;
9678
9702
  switch (t) {
@@ -9790,7 +9814,7 @@ function en_default2() {
9790
9814
  };
9791
9815
  }
9792
9816
 
9793
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/eo.js
9817
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/eo.js
9794
9818
  var parsedType2 = (data) => {
9795
9819
  const t = typeof data;
9796
9820
  switch (t) {
@@ -9907,7 +9931,7 @@ function eo_default() {
9907
9931
  };
9908
9932
  }
9909
9933
 
9910
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/es.js
9934
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/es.js
9911
9935
  var error9 = () => {
9912
9936
  const Sizable = {
9913
9937
  string: { unit: "caracteres", verb: "tener" },
@@ -10025,7 +10049,7 @@ function es_default() {
10025
10049
  };
10026
10050
  }
10027
10051
 
10028
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/fa.js
10052
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/fa.js
10029
10053
  var error10 = () => {
10030
10054
  const Sizable = {
10031
10055
  string: { unit: "\u06A9\u0627\u0631\u0627\u06A9\u062A\u0631", verb: "\u062F\u0627\u0634\u062A\u0647 \u0628\u0627\u0634\u062F" },
@@ -10148,7 +10172,7 @@ function fa_default() {
10148
10172
  };
10149
10173
  }
10150
10174
 
10151
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/fi.js
10175
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/fi.js
10152
10176
  var error11 = () => {
10153
10177
  const Sizable = {
10154
10178
  string: { unit: "merkki\xE4", subject: "merkkijonon" },
@@ -10271,7 +10295,7 @@ function fi_default() {
10271
10295
  };
10272
10296
  }
10273
10297
 
10274
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/fr.js
10298
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/fr.js
10275
10299
  var error12 = () => {
10276
10300
  const Sizable = {
10277
10301
  string: { unit: "caract\xE8res", verb: "avoir" },
@@ -10388,7 +10412,7 @@ function fr_default() {
10388
10412
  };
10389
10413
  }
10390
10414
 
10391
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/fr-CA.js
10415
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/fr-CA.js
10392
10416
  var error13 = () => {
10393
10417
  const Sizable = {
10394
10418
  string: { unit: "caract\xE8res", verb: "avoir" },
@@ -10506,7 +10530,7 @@ function fr_CA_default() {
10506
10530
  };
10507
10531
  }
10508
10532
 
10509
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/he.js
10533
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/he.js
10510
10534
  var error14 = () => {
10511
10535
  const Sizable = {
10512
10536
  string: { unit: "\u05D0\u05D5\u05EA\u05D9\u05D5\u05EA", verb: "\u05DC\u05DB\u05DC\u05D5\u05DC" },
@@ -10624,7 +10648,7 @@ function he_default() {
10624
10648
  };
10625
10649
  }
10626
10650
 
10627
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/hu.js
10651
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/hu.js
10628
10652
  var error15 = () => {
10629
10653
  const Sizable = {
10630
10654
  string: { unit: "karakter", verb: "legyen" },
@@ -10742,7 +10766,7 @@ function hu_default() {
10742
10766
  };
10743
10767
  }
10744
10768
 
10745
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/id.js
10769
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/id.js
10746
10770
  var error16 = () => {
10747
10771
  const Sizable = {
10748
10772
  string: { unit: "karakter", verb: "memiliki" },
@@ -10859,7 +10883,7 @@ function id_default() {
10859
10883
  };
10860
10884
  }
10861
10885
 
10862
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/it.js
10886
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/it.js
10863
10887
  var error17 = () => {
10864
10888
  const Sizable = {
10865
10889
  string: { unit: "caratteri", verb: "avere" },
@@ -10977,7 +11001,7 @@ function it_default() {
10977
11001
  };
10978
11002
  }
10979
11003
 
10980
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ja.js
11004
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ja.js
10981
11005
  var error18 = () => {
10982
11006
  const Sizable = {
10983
11007
  string: { unit: "\u6587\u5B57", verb: "\u3067\u3042\u308B" },
@@ -11093,7 +11117,7 @@ function ja_default() {
11093
11117
  };
11094
11118
  }
11095
11119
 
11096
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/kh.js
11120
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/kh.js
11097
11121
  var error19 = () => {
11098
11122
  const Sizable = {
11099
11123
  string: { unit: "\u178F\u17BD\u17A2\u1780\u17D2\u179F\u179A", verb: "\u1782\u17BD\u179A\u1798\u17B6\u1793" },
@@ -11211,7 +11235,7 @@ function kh_default() {
11211
11235
  };
11212
11236
  }
11213
11237
 
11214
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ko.js
11238
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ko.js
11215
11239
  var error20 = () => {
11216
11240
  const Sizable = {
11217
11241
  string: { unit: "\uBB38\uC790", verb: "to have" },
@@ -11333,7 +11357,7 @@ function ko_default() {
11333
11357
  };
11334
11358
  }
11335
11359
 
11336
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/mk.js
11360
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/mk.js
11337
11361
  var error21 = () => {
11338
11362
  const Sizable = {
11339
11363
  string: { unit: "\u0437\u043D\u0430\u0446\u0438", verb: "\u0434\u0430 \u0438\u043C\u0430\u0430\u0442" },
@@ -11452,7 +11476,7 @@ function mk_default() {
11452
11476
  };
11453
11477
  }
11454
11478
 
11455
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ms.js
11479
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ms.js
11456
11480
  var error22 = () => {
11457
11481
  const Sizable = {
11458
11482
  string: { unit: "aksara", verb: "mempunyai" },
@@ -11569,7 +11593,7 @@ function ms_default() {
11569
11593
  };
11570
11594
  }
11571
11595
 
11572
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/nl.js
11596
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/nl.js
11573
11597
  var error23 = () => {
11574
11598
  const Sizable = {
11575
11599
  string: { unit: "tekens" },
@@ -11687,7 +11711,7 @@ function nl_default() {
11687
11711
  };
11688
11712
  }
11689
11713
 
11690
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/no.js
11714
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/no.js
11691
11715
  var error24 = () => {
11692
11716
  const Sizable = {
11693
11717
  string: { unit: "tegn", verb: "\xE5 ha" },
@@ -11804,7 +11828,7 @@ function no_default() {
11804
11828
  };
11805
11829
  }
11806
11830
 
11807
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ota.js
11831
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ota.js
11808
11832
  var error25 = () => {
11809
11833
  const Sizable = {
11810
11834
  string: { unit: "harf", verb: "olmal\u0131d\u0131r" },
@@ -11922,7 +11946,7 @@ function ota_default() {
11922
11946
  };
11923
11947
  }
11924
11948
 
11925
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ps.js
11949
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ps.js
11926
11950
  var error26 = () => {
11927
11951
  const Sizable = {
11928
11952
  string: { unit: "\u062A\u0648\u06A9\u064A", verb: "\u0648\u0644\u0631\u064A" },
@@ -12045,7 +12069,7 @@ function ps_default() {
12045
12069
  };
12046
12070
  }
12047
12071
 
12048
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/pl.js
12072
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/pl.js
12049
12073
  var error27 = () => {
12050
12074
  const Sizable = {
12051
12075
  string: { unit: "znak\xF3w", verb: "mie\u0107" },
@@ -12163,7 +12187,7 @@ function pl_default() {
12163
12187
  };
12164
12188
  }
12165
12189
 
12166
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/pt.js
12190
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/pt.js
12167
12191
  var error28 = () => {
12168
12192
  const Sizable = {
12169
12193
  string: { unit: "caracteres", verb: "ter" },
@@ -12280,7 +12304,7 @@ function pt_default() {
12280
12304
  };
12281
12305
  }
12282
12306
 
12283
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ru.js
12307
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ru.js
12284
12308
  function getRussianPlural(count, one, few, many) {
12285
12309
  const absCount = Math.abs(count);
12286
12310
  const lastDigit = absCount % 10;
@@ -12445,7 +12469,7 @@ function ru_default() {
12445
12469
  };
12446
12470
  }
12447
12471
 
12448
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/sl.js
12472
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/sl.js
12449
12473
  var error30 = () => {
12450
12474
  const Sizable = {
12451
12475
  string: { unit: "znakov", verb: "imeti" },
@@ -12563,7 +12587,7 @@ function sl_default() {
12563
12587
  };
12564
12588
  }
12565
12589
 
12566
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/sv.js
12590
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/sv.js
12567
12591
  var error31 = () => {
12568
12592
  const Sizable = {
12569
12593
  string: { unit: "tecken", verb: "att ha" },
@@ -12682,7 +12706,7 @@ function sv_default() {
12682
12706
  };
12683
12707
  }
12684
12708
 
12685
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ta.js
12709
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ta.js
12686
12710
  var error32 = () => {
12687
12711
  const Sizable = {
12688
12712
  string: { unit: "\u0B8E\u0BB4\u0BC1\u0BA4\u0BCD\u0BA4\u0BC1\u0B95\u0BCD\u0B95\u0BB3\u0BCD", verb: "\u0B95\u0BCA\u0BA3\u0BCD\u0B9F\u0BBF\u0BB0\u0BC1\u0B95\u0BCD\u0B95 \u0BB5\u0BC7\u0BA3\u0BCD\u0B9F\u0BC1\u0BAE\u0BCD" },
@@ -12800,7 +12824,7 @@ function ta_default() {
12800
12824
  };
12801
12825
  }
12802
12826
 
12803
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/th.js
12827
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/th.js
12804
12828
  var error33 = () => {
12805
12829
  const Sizable = {
12806
12830
  string: { unit: "\u0E15\u0E31\u0E27\u0E2D\u0E31\u0E01\u0E29\u0E23", verb: "\u0E04\u0E27\u0E23\u0E21\u0E35" },
@@ -12918,7 +12942,7 @@ function th_default() {
12918
12942
  };
12919
12943
  }
12920
12944
 
12921
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/tr.js
12945
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/tr.js
12922
12946
  var parsedType3 = (data) => {
12923
12947
  const t = typeof data;
12924
12948
  switch (t) {
@@ -13034,7 +13058,7 @@ function tr_default() {
13034
13058
  };
13035
13059
  }
13036
13060
 
13037
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ua.js
13061
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ua.js
13038
13062
  var error35 = () => {
13039
13063
  const Sizable = {
13040
13064
  string: { unit: "\u0441\u0438\u043C\u0432\u043E\u043B\u0456\u0432", verb: "\u043C\u0430\u0442\u0438\u043C\u0435" },
@@ -13152,7 +13176,7 @@ function ua_default() {
13152
13176
  };
13153
13177
  }
13154
13178
 
13155
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/ur.js
13179
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/ur.js
13156
13180
  var error36 = () => {
13157
13181
  const Sizable = {
13158
13182
  string: { unit: "\u062D\u0631\u0648\u0641", verb: "\u06C1\u0648\u0646\u0627" },
@@ -13270,7 +13294,7 @@ function ur_default() {
13270
13294
  };
13271
13295
  }
13272
13296
 
13273
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/vi.js
13297
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/vi.js
13274
13298
  var error37 = () => {
13275
13299
  const Sizable = {
13276
13300
  string: { unit: "k\xFD t\u1EF1", verb: "c\xF3" },
@@ -13387,7 +13411,7 @@ function vi_default() {
13387
13411
  };
13388
13412
  }
13389
13413
 
13390
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/zh-CN.js
13414
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/zh-CN.js
13391
13415
  var error38 = () => {
13392
13416
  const Sizable = {
13393
13417
  string: { unit: "\u5B57\u7B26", verb: "\u5305\u542B" },
@@ -13504,7 +13528,7 @@ function zh_CN_default() {
13504
13528
  };
13505
13529
  }
13506
13530
 
13507
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/locales/zh-TW.js
13531
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/locales/zh-TW.js
13508
13532
  var error39 = () => {
13509
13533
  const Sizable = {
13510
13534
  string: { unit: "\u5B57\u5143", verb: "\u64C1\u6709" },
@@ -13622,7 +13646,7 @@ function zh_TW_default() {
13622
13646
  };
13623
13647
  }
13624
13648
 
13625
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/registries.js
13649
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/registries.js
13626
13650
  var $output = Symbol("ZodOutput");
13627
13651
  var $input = Symbol("ZodInput");
13628
13652
  var $ZodRegistry = class {
@@ -13672,7 +13696,7 @@ function registry() {
13672
13696
  }
13673
13697
  var globalRegistry = /* @__PURE__ */ registry();
13674
13698
 
13675
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/api.js
13699
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/api.js
13676
13700
  function _string(Class2, params) {
13677
13701
  return new Class2({
13678
13702
  type: "string",
@@ -14530,7 +14554,7 @@ function _stringFormat(Class2, format, fnOrRegex, _params = {}) {
14530
14554
  return inst;
14531
14555
  }
14532
14556
 
14533
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/function.js
14557
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/function.js
14534
14558
  var $ZodFunction = class {
14535
14559
  constructor(def) {
14536
14560
  this._def = def;
@@ -14600,7 +14624,7 @@ function _function(params) {
14600
14624
  });
14601
14625
  }
14602
14626
 
14603
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/to-json-schema.js
14627
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/to-json-schema.js
14604
14628
  var JSONSchemaGenerator = class {
14605
14629
  constructor(params) {
14606
14630
  this.counter = 0;
@@ -15367,10 +15391,10 @@ function isTransforming(_schema, _ctx) {
15367
15391
  throw new Error(`Unknown schema type: ${def.type}`);
15368
15392
  }
15369
15393
 
15370
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/core/json-schema.js
15394
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/core/json-schema.js
15371
15395
  var json_schema_exports = {};
15372
15396
 
15373
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/iso.js
15397
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/iso.js
15374
15398
  var iso_exports = {};
15375
15399
  __export(iso_exports, {
15376
15400
  ZodISODate: () => ZodISODate,
@@ -15411,7 +15435,7 @@ function duration2(params) {
15411
15435
  return _isoDuration(ZodISODuration, params);
15412
15436
  }
15413
15437
 
15414
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/errors.js
15438
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/errors.js
15415
15439
  var initializer2 = (inst, issues) => {
15416
15440
  $ZodError.init(inst, issues);
15417
15441
  inst.name = "ZodError";
@@ -15445,13 +15469,13 @@ var ZodRealError = $constructor("ZodError", initializer2, {
15445
15469
  Parent: Error
15446
15470
  });
15447
15471
 
15448
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/parse.js
15472
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/parse.js
15449
15473
  var parse2 = /* @__PURE__ */ _parse(ZodRealError);
15450
15474
  var parseAsync2 = /* @__PURE__ */ _parseAsync(ZodRealError);
15451
15475
  var safeParse2 = /* @__PURE__ */ _safeParse(ZodRealError);
15452
15476
  var safeParseAsync2 = /* @__PURE__ */ _safeParseAsync(ZodRealError);
15453
15477
 
15454
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/schemas.js
15478
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/schemas.js
15455
15479
  var ZodType2 = /* @__PURE__ */ $constructor("ZodType", (inst, def) => {
15456
15480
  $ZodType.init(inst, def);
15457
15481
  inst.def = def;
@@ -16388,7 +16412,7 @@ function preprocess(fn, schema) {
16388
16412
  return pipe(transform(fn), schema);
16389
16413
  }
16390
16414
 
16391
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/compat.js
16415
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/compat.js
16392
16416
  var ZodIssueCode2 = {
16393
16417
  invalid_type: "invalid_type",
16394
16418
  too_big: "too_big",
@@ -16411,7 +16435,7 @@ function getErrorMap2() {
16411
16435
  return config().customError;
16412
16436
  }
16413
16437
 
16414
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/coerce.js
16438
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/coerce.js
16415
16439
  var coerce_exports = {};
16416
16440
  __export(coerce_exports, {
16417
16441
  bigint: () => bigint3,
@@ -16436,10 +16460,10 @@ function date4(params) {
16436
16460
  return _coercedDate(ZodDate2, params);
16437
16461
  }
16438
16462
 
16439
- // ../../node_modules/.pnpm/zod@3.25.76/node_modules/zod/v4/classic/external.js
16463
+ // ../../node_modules/.bun/zod@3.25.76/node_modules/zod/v4/classic/external.js
16440
16464
  config(en_default2());
16441
16465
 
16442
- // ../../node_modules/.pnpm/@ai-sdk+provider-utils@3.0.18_zod@3.25.76/node_modules/@ai-sdk/provider-utils/dist/index.mjs
16466
+ // ../../node_modules/.bun/@ai-sdk+provider-utils@3.0.19+27912429049419a2/node_modules/@ai-sdk/provider-utils/dist/index.mjs
16443
16467
  function combineHeaders(...headers) {
16444
16468
  return headers.reduce(
16445
16469
  (combinedHeaders, currentHeaders) => ({
@@ -16592,7 +16616,7 @@ function withUserAgentSuffix(headers, ...userAgentSuffixParts) {
16592
16616
  );
16593
16617
  return Object.fromEntries(normalizedHeaders.entries());
16594
16618
  }
16595
- var VERSION = true ? "3.0.18" : "0.0.0-test";
16619
+ var VERSION = true ? "3.0.19" : "0.0.0-test";
16596
16620
  var getOriginalFetch = () => globalThis.fetch;
16597
16621
  var getFromApi = async ({
16598
16622
  url: url2,
@@ -17254,6 +17278,31 @@ var createBinaryResponseHandler = () => async ({ response, url: url2, requestBod
17254
17278
  });
17255
17279
  }
17256
17280
  };
17281
+ function addAdditionalPropertiesToJsonSchema(jsonSchema2) {
17282
+ if (jsonSchema2.type === "object") {
17283
+ jsonSchema2.additionalProperties = false;
17284
+ const properties = jsonSchema2.properties;
17285
+ if (properties != null) {
17286
+ for (const property in properties) {
17287
+ properties[property] = addAdditionalPropertiesToJsonSchema(
17288
+ properties[property]
17289
+ );
17290
+ }
17291
+ }
17292
+ }
17293
+ if (jsonSchema2.type === "array" && jsonSchema2.items != null) {
17294
+ if (Array.isArray(jsonSchema2.items)) {
17295
+ jsonSchema2.items = jsonSchema2.items.map(
17296
+ (item) => addAdditionalPropertiesToJsonSchema(item)
17297
+ );
17298
+ } else {
17299
+ jsonSchema2.items = addAdditionalPropertiesToJsonSchema(
17300
+ jsonSchema2.items
17301
+ );
17302
+ }
17303
+ }
17304
+ return jsonSchema2;
17305
+ }
17257
17306
  var getRelativePath = (pathA, pathB) => {
17258
17307
  let i = 0;
17259
17308
  for (; i < pathA.length && i < pathB.length; i++) {
@@ -18375,11 +18424,13 @@ function zod4Schema(zodSchema2, options) {
18375
18424
  const useReferences = (_a17 = options == null ? void 0 : options.useReferences) != null ? _a17 : false;
18376
18425
  return jsonSchema(
18377
18426
  // defer json schema creation to avoid unnecessary computation when only validation is needed
18378
- () => toJSONSchema(zodSchema2, {
18379
- target: "draft-7",
18380
- io: "output",
18381
- reused: useReferences ? "ref" : "inline"
18382
- }),
18427
+ () => addAdditionalPropertiesToJsonSchema(
18428
+ toJSONSchema(zodSchema2, {
18429
+ target: "draft-7",
18430
+ io: "input",
18431
+ reused: useReferences ? "ref" : "inline"
18432
+ })
18433
+ ),
18383
18434
  {
18384
18435
  validate: async (value) => {
18385
18436
  const result = await safeParseAsync2(zodSchema2, value);
@@ -18474,8 +18525,8 @@ async function* executeTool({
18474
18525
  }
18475
18526
  }
18476
18527
 
18477
- // ../../node_modules/.pnpm/@ai-sdk+anthropic@2.0.53_zod@3.25.76/node_modules/@ai-sdk/anthropic/dist/index.mjs
18478
- var VERSION2 = true ? "2.0.53" : "0.0.0-test";
18528
+ // ../../node_modules/.bun/@ai-sdk+anthropic@2.0.56+27912429049419a2/node_modules/@ai-sdk/anthropic/dist/index.mjs
18529
+ var VERSION2 = true ? "2.0.56" : "0.0.0-test";
18479
18530
  var anthropicErrorDataSchema = lazySchema(
18480
18531
  () => zodSchema(
18481
18532
  external_exports2.object({
@@ -18563,11 +18614,18 @@ var anthropicMessagesResponseSchema = lazySchema(
18563
18614
  type: external_exports2.literal("document"),
18564
18615
  title: external_exports2.string().nullable(),
18565
18616
  citations: external_exports2.object({ enabled: external_exports2.boolean() }).optional(),
18566
- source: external_exports2.object({
18567
- type: external_exports2.literal("text"),
18568
- media_type: external_exports2.string(),
18569
- data: external_exports2.string()
18570
- })
18617
+ source: external_exports2.union([
18618
+ external_exports2.object({
18619
+ type: external_exports2.literal("base64"),
18620
+ media_type: external_exports2.literal("application/pdf"),
18621
+ data: external_exports2.string()
18622
+ }),
18623
+ external_exports2.object({
18624
+ type: external_exports2.literal("text"),
18625
+ media_type: external_exports2.literal("text/plain"),
18626
+ data: external_exports2.string()
18627
+ })
18628
+ ])
18571
18629
  })
18572
18630
  }),
18573
18631
  external_exports2.object({
@@ -18746,11 +18804,18 @@ var anthropicMessagesChunkSchema = lazySchema(
18746
18804
  type: external_exports2.literal("document"),
18747
18805
  title: external_exports2.string().nullable(),
18748
18806
  citations: external_exports2.object({ enabled: external_exports2.boolean() }).optional(),
18749
- source: external_exports2.object({
18750
- type: external_exports2.literal("text"),
18751
- media_type: external_exports2.string(),
18752
- data: external_exports2.string()
18753
- })
18807
+ source: external_exports2.union([
18808
+ external_exports2.object({
18809
+ type: external_exports2.literal("base64"),
18810
+ media_type: external_exports2.literal("application/pdf"),
18811
+ data: external_exports2.string()
18812
+ }),
18813
+ external_exports2.object({
18814
+ type: external_exports2.literal("text"),
18815
+ media_type: external_exports2.literal("text/plain"),
18816
+ data: external_exports2.string()
18817
+ })
18818
+ ])
18754
18819
  })
18755
18820
  }),
18756
18821
  external_exports2.object({
@@ -19121,7 +19186,7 @@ var webSearch_20250305OutputSchema = lazySchema(
19121
19186
  external_exports2.array(
19122
19187
  external_exports2.object({
19123
19188
  url: external_exports2.string(),
19124
- title: external_exports2.string(),
19189
+ title: external_exports2.string().nullable(),
19125
19190
  pageAge: external_exports2.string().nullable(),
19126
19191
  encryptedContent: external_exports2.string(),
19127
19192
  type: external_exports2.literal("web_search_result")
@@ -19163,7 +19228,7 @@ var webFetch_20250910OutputSchema = lazySchema(
19163
19228
  url: external_exports2.string(),
19164
19229
  content: external_exports2.object({
19165
19230
  type: external_exports2.literal("document"),
19166
- title: external_exports2.string(),
19231
+ title: external_exports2.string().nullable(),
19167
19232
  citations: external_exports2.object({ enabled: external_exports2.boolean() }).optional(),
19168
19233
  source: external_exports2.union([
19169
19234
  external_exports2.object({
@@ -21632,7 +21697,7 @@ function createAnthropic(options = {}) {
21632
21697
  }
21633
21698
  var anthropic = createAnthropic();
21634
21699
 
21635
- // ../../node_modules/.pnpm/@ai-sdk+openai@2.0.76_zod@3.25.76/node_modules/@ai-sdk/openai/dist/internal/index.mjs
21700
+ // ../../node_modules/.bun/@ai-sdk+openai@2.0.85+27912429049419a2/node_modules/@ai-sdk/openai/dist/internal/index.mjs
21636
21701
  var openaiErrorDataSchema = external_exports2.object({
21637
21702
  error: external_exports2.object({
21638
21703
  message: external_exports2.string(),
@@ -21648,6 +21713,20 @@ var openaiFailedResponseHandler = createJsonErrorResponseHandler({
21648
21713
  errorSchema: openaiErrorDataSchema,
21649
21714
  errorToMessage: (data) => data.error.message
21650
21715
  });
21716
+ function getOpenAILanguageModelCapabilities(modelId) {
21717
+ const supportsFlexProcessing = modelId.startsWith("o3") || modelId.startsWith("o4-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-chat");
21718
+ const supportsPriorityProcessing = modelId.startsWith("gpt-4") || modelId.startsWith("gpt-5-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-nano") && !modelId.startsWith("gpt-5-chat") || modelId.startsWith("o3") || modelId.startsWith("o4-mini");
21719
+ const isReasoningModel = !(modelId.startsWith("gpt-3") || modelId.startsWith("gpt-4") || modelId.startsWith("chatgpt-4o") || modelId.startsWith("gpt-5-chat"));
21720
+ const supportsNonReasoningParameters = modelId.startsWith("gpt-5.1");
21721
+ const systemMessageMode = isReasoningModel ? "developer" : "system";
21722
+ return {
21723
+ supportsFlexProcessing,
21724
+ supportsPriorityProcessing,
21725
+ isReasoningModel,
21726
+ systemMessageMode,
21727
+ supportsNonReasoningParameters
21728
+ };
21729
+ }
21651
21730
  function convertToOpenAIChatMessages({
21652
21731
  prompt,
21653
21732
  systemMessageMode = "system"
@@ -22014,7 +22093,7 @@ var openaiChatLanguageModelOptions = lazyValidator(
22014
22093
  /**
22015
22094
  * Reasoning effort for reasoning models. Defaults to `medium`.
22016
22095
  */
22017
- reasoningEffort: external_exports2.enum(["none", "minimal", "low", "medium", "high"]).optional(),
22096
+ reasoningEffort: external_exports2.enum(["none", "minimal", "low", "medium", "high", "xhigh"]).optional(),
22018
22097
  /**
22019
22098
  * Maximum number of completion tokens to generate. Useful for reasoning models.
22020
22099
  */
@@ -22177,6 +22256,7 @@ var OpenAIChatLanguageModel = class {
22177
22256
  schema: openaiChatLanguageModelOptions
22178
22257
  })) != null ? _a17 : {};
22179
22258
  const structuredOutputs = (_b8 = openaiOptions.structuredOutputs) != null ? _b8 : true;
22259
+ const modelCapabilities = getOpenAILanguageModelCapabilities(this.modelId);
22180
22260
  if (topK != null) {
22181
22261
  warnings.push({
22182
22262
  type: "unsupported-setting",
@@ -22193,7 +22273,7 @@ var OpenAIChatLanguageModel = class {
22193
22273
  const { messages, warnings: messageWarnings } = convertToOpenAIChatMessages(
22194
22274
  {
22195
22275
  prompt,
22196
- systemMessageMode: getSystemMessageMode(this.modelId)
22276
+ systemMessageMode: modelCapabilities.systemMessageMode
22197
22277
  }
22198
22278
  );
22199
22279
  warnings.push(...messageWarnings);
@@ -22239,22 +22319,31 @@ var OpenAIChatLanguageModel = class {
22239
22319
  // messages:
22240
22320
  messages
22241
22321
  };
22242
- if (isReasoningModel(this.modelId)) {
22243
- if (baseArgs.temperature != null) {
22244
- baseArgs.temperature = void 0;
22245
- warnings.push({
22246
- type: "unsupported-setting",
22247
- setting: "temperature",
22248
- details: "temperature is not supported for reasoning models"
22249
- });
22250
- }
22251
- if (baseArgs.top_p != null) {
22252
- baseArgs.top_p = void 0;
22253
- warnings.push({
22254
- type: "unsupported-setting",
22255
- setting: "topP",
22256
- details: "topP is not supported for reasoning models"
22257
- });
22322
+ if (modelCapabilities.isReasoningModel) {
22323
+ if (openaiOptions.reasoningEffort !== "none" || !modelCapabilities.supportsNonReasoningParameters) {
22324
+ if (baseArgs.temperature != null) {
22325
+ baseArgs.temperature = void 0;
22326
+ warnings.push({
22327
+ type: "unsupported-setting",
22328
+ setting: "temperature",
22329
+ details: "temperature is not supported for reasoning models"
22330
+ });
22331
+ }
22332
+ if (baseArgs.top_p != null) {
22333
+ baseArgs.top_p = void 0;
22334
+ warnings.push({
22335
+ type: "unsupported-setting",
22336
+ setting: "topP",
22337
+ details: "topP is not supported for reasoning models"
22338
+ });
22339
+ }
22340
+ if (baseArgs.logprobs != null) {
22341
+ baseArgs.logprobs = void 0;
22342
+ warnings.push({
22343
+ type: "other",
22344
+ message: "logprobs is not supported for reasoning models"
22345
+ });
22346
+ }
22258
22347
  }
22259
22348
  if (baseArgs.frequency_penalty != null) {
22260
22349
  baseArgs.frequency_penalty = void 0;
@@ -22279,13 +22368,6 @@ var OpenAIChatLanguageModel = class {
22279
22368
  message: "logitBias is not supported for reasoning models"
22280
22369
  });
22281
22370
  }
22282
- if (baseArgs.logprobs != null) {
22283
- baseArgs.logprobs = void 0;
22284
- warnings.push({
22285
- type: "other",
22286
- message: "logprobs is not supported for reasoning models"
22287
- });
22288
- }
22289
22371
  if (baseArgs.top_logprobs != null) {
22290
22372
  baseArgs.top_logprobs = void 0;
22291
22373
  warnings.push({
@@ -22309,7 +22391,7 @@ var OpenAIChatLanguageModel = class {
22309
22391
  });
22310
22392
  }
22311
22393
  }
22312
- if (openaiOptions.serviceTier === "flex" && !supportsFlexProcessing(this.modelId)) {
22394
+ if (openaiOptions.serviceTier === "flex" && !modelCapabilities.supportsFlexProcessing) {
22313
22395
  warnings.push({
22314
22396
  type: "unsupported-setting",
22315
22397
  setting: "serviceTier",
@@ -22317,7 +22399,7 @@ var OpenAIChatLanguageModel = class {
22317
22399
  });
22318
22400
  baseArgs.service_tier = void 0;
22319
22401
  }
22320
- if (openaiOptions.serviceTier === "priority" && !supportsPriorityProcessing(this.modelId)) {
22402
+ if (openaiOptions.serviceTier === "priority" && !modelCapabilities.supportsPriorityProcessing) {
22321
22403
  warnings.push({
22322
22404
  type: "unsupported-setting",
22323
22405
  setting: "serviceTier",
@@ -22638,42 +22720,6 @@ var OpenAIChatLanguageModel = class {
22638
22720
  };
22639
22721
  }
22640
22722
  };
22641
- function isReasoningModel(modelId) {
22642
- return (modelId.startsWith("o") || modelId.startsWith("gpt-5")) && !modelId.startsWith("gpt-5-chat");
22643
- }
22644
- function supportsFlexProcessing(modelId) {
22645
- return modelId.startsWith("o3") || modelId.startsWith("o4-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-chat");
22646
- }
22647
- function supportsPriorityProcessing(modelId) {
22648
- return modelId.startsWith("gpt-4") || modelId.startsWith("gpt-5-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-nano") && !modelId.startsWith("gpt-5-chat") || modelId.startsWith("o3") || modelId.startsWith("o4-mini");
22649
- }
22650
- function getSystemMessageMode(modelId) {
22651
- var _a17, _b8;
22652
- if (!isReasoningModel(modelId)) {
22653
- return "system";
22654
- }
22655
- return (_b8 = (_a17 = reasoningModels[modelId]) == null ? void 0 : _a17.systemMessageMode) != null ? _b8 : "developer";
22656
- }
22657
- var reasoningModels = {
22658
- o3: {
22659
- systemMessageMode: "developer"
22660
- },
22661
- "o3-2025-04-16": {
22662
- systemMessageMode: "developer"
22663
- },
22664
- "o3-mini": {
22665
- systemMessageMode: "developer"
22666
- },
22667
- "o3-mini-2025-01-31": {
22668
- systemMessageMode: "developer"
22669
- },
22670
- "o4-mini": {
22671
- systemMessageMode: "developer"
22672
- },
22673
- "o4-mini-2025-04-16": {
22674
- systemMessageMode: "developer"
22675
- }
22676
- };
22677
22723
  function convertToOpenAICompletionPrompt({
22678
22724
  prompt,
22679
22725
  user = "user",
@@ -24097,12 +24143,12 @@ var openaiResponsesChunkSchema = lazyValidator(
24097
24143
  }),
24098
24144
  external_exports2.object({
24099
24145
  type: external_exports2.literal("open_page"),
24100
- url: external_exports2.string()
24146
+ url: external_exports2.string().nullish()
24101
24147
  }),
24102
24148
  external_exports2.object({
24103
- type: external_exports2.literal("find"),
24104
- url: external_exports2.string(),
24105
- pattern: external_exports2.string()
24149
+ type: external_exports2.literal("find_in_page"),
24150
+ url: external_exports2.string().nullish(),
24151
+ pattern: external_exports2.string().nullish()
24106
24152
  })
24107
24153
  ])
24108
24154
  }),
@@ -24307,12 +24353,12 @@ var openaiResponsesResponseSchema = lazyValidator(
24307
24353
  }),
24308
24354
  external_exports2.object({
24309
24355
  type: external_exports2.literal("open_page"),
24310
- url: external_exports2.string()
24356
+ url: external_exports2.string().nullish()
24311
24357
  }),
24312
24358
  external_exports2.object({
24313
- type: external_exports2.literal("find"),
24314
- url: external_exports2.string(),
24315
- pattern: external_exports2.string()
24359
+ type: external_exports2.literal("find_in_page"),
24360
+ url: external_exports2.string().nullish(),
24361
+ pattern: external_exports2.string().nullish()
24316
24362
  })
24317
24363
  ])
24318
24364
  }),
@@ -24427,7 +24473,11 @@ var openaiResponsesReasoningModelIds = [
24427
24473
  "gpt-5.1",
24428
24474
  "gpt-5.1-chat-latest",
24429
24475
  "gpt-5.1-codex-mini",
24430
- "gpt-5.1-codex"
24476
+ "gpt-5.1-codex",
24477
+ "gpt-5.1-codex-max",
24478
+ "gpt-5.2",
24479
+ "gpt-5.2-chat-latest",
24480
+ "gpt-5.2-pro"
24431
24481
  ];
24432
24482
  var openaiResponsesModelIds = [
24433
24483
  "gpt-4.1",
@@ -24510,6 +24560,16 @@ var openaiResponsesProviderOptionsSchema = lazyValidator(
24510
24560
  * @default 'in_memory'
24511
24561
  */
24512
24562
  promptCacheRetention: external_exports2.enum(["in_memory", "24h"]).nullish(),
24563
+ /**
24564
+ * Reasoning effort for reasoning models. Defaults to `medium`. If you use
24565
+ * `providerOptions` to set the `reasoningEffort` option, this model setting will be ignored.
24566
+ * Valid values: 'none' | 'minimal' | 'low' | 'medium' | 'high' | 'xhigh'
24567
+ *
24568
+ * The 'none' type for `reasoningEffort` is only available for OpenAI's GPT-5.1
24569
+ * models. Also, the 'xhigh' type for `reasoningEffort` is only available for
24570
+ * OpenAI's GPT-5.1-Codex-Max model. Setting `reasoningEffort` to 'none' or 'xhigh' with unsupported models will result in
24571
+ * an error.
24572
+ */
24513
24573
  reasoningEffort: external_exports2.string().nullish(),
24514
24574
  reasoningSummary: external_exports2.string().nullish(),
24515
24575
  safetyIdentifier: external_exports2.string().nullish(),
@@ -24565,8 +24625,8 @@ var codeInterpreter = (args = {}) => {
24565
24625
  };
24566
24626
  var comparisonFilterSchema = external_exports2.object({
24567
24627
  key: external_exports2.string(),
24568
- type: external_exports2.enum(["eq", "ne", "gt", "gte", "lt", "lte"]),
24569
- value: external_exports2.union([external_exports2.string(), external_exports2.number(), external_exports2.boolean()])
24628
+ type: external_exports2.enum(["eq", "ne", "gt", "gte", "lt", "lte", "in", "nin"]),
24629
+ value: external_exports2.union([external_exports2.string(), external_exports2.number(), external_exports2.boolean(), external_exports2.array(external_exports2.string())])
24570
24630
  });
24571
24631
  var compoundFilterSchema = external_exports2.object({
24572
24632
  type: external_exports2.enum(["and", "or"]),
@@ -24636,12 +24696,12 @@ var webSearchOutputSchema = lazySchema(
24636
24696
  }),
24637
24697
  external_exports2.object({
24638
24698
  type: external_exports2.literal("openPage"),
24639
- url: external_exports2.string()
24699
+ url: external_exports2.string().nullish()
24640
24700
  }),
24641
24701
  external_exports2.object({
24642
- type: external_exports2.literal("find"),
24643
- url: external_exports2.string(),
24644
- pattern: external_exports2.string()
24702
+ type: external_exports2.literal("findInPage"),
24703
+ url: external_exports2.string().nullish(),
24704
+ pattern: external_exports2.string().nullish()
24645
24705
  })
24646
24706
  ]),
24647
24707
  sources: external_exports2.array(
@@ -24686,12 +24746,12 @@ var webSearchPreviewOutputSchema = lazySchema(
24686
24746
  }),
24687
24747
  external_exports2.object({
24688
24748
  type: external_exports2.literal("openPage"),
24689
- url: external_exports2.string()
24749
+ url: external_exports2.string().nullish()
24690
24750
  }),
24691
24751
  external_exports2.object({
24692
- type: external_exports2.literal("find"),
24693
- url: external_exports2.string(),
24694
- pattern: external_exports2.string()
24752
+ type: external_exports2.literal("findInPage"),
24753
+ url: external_exports2.string().nullish(),
24754
+ pattern: external_exports2.string().nullish()
24695
24755
  })
24696
24756
  ])
24697
24757
  })
@@ -24902,7 +24962,7 @@ var OpenAIResponsesLanguageModel = class {
24902
24962
  }) {
24903
24963
  var _a17, _b8, _c, _d;
24904
24964
  const warnings = [];
24905
- const modelConfig = getResponsesModelConfig(this.modelId);
24965
+ const modelCapabilities = getOpenAILanguageModelCapabilities(this.modelId);
24906
24966
  if (topK != null) {
24907
24967
  warnings.push({ type: "unsupported-setting", setting: "topK" });
24908
24968
  }
@@ -24938,7 +24998,7 @@ var OpenAIResponsesLanguageModel = class {
24938
24998
  }
24939
24999
  const { input, warnings: inputWarnings } = await convertToOpenAIResponsesInput({
24940
25000
  prompt,
24941
- systemMessageMode: modelConfig.systemMessageMode,
25001
+ systemMessageMode: modelCapabilities.systemMessageMode,
24942
25002
  fileIdPrefixes: this.config.fileIdPrefixes,
24943
25003
  store: (_a17 = openaiOptions == null ? void 0 : openaiOptions.store) != null ? _a17 : true,
24944
25004
  hasLocalShellTool: hasOpenAITool("openai.local_shell")
@@ -24972,7 +25032,7 @@ var OpenAIResponsesLanguageModel = class {
24972
25032
  addInclude("code_interpreter_call.outputs");
24973
25033
  }
24974
25034
  const store = openaiOptions == null ? void 0 : openaiOptions.store;
24975
- if (store === false && modelConfig.isReasoningModel) {
25035
+ if (store === false && modelCapabilities.isReasoningModel) {
24976
25036
  addInclude("reasoning.encrypted_content");
24977
25037
  }
24978
25038
  const baseArgs = {
@@ -25014,7 +25074,7 @@ var OpenAIResponsesLanguageModel = class {
25014
25074
  top_logprobs: topLogprobs,
25015
25075
  truncation: openaiOptions == null ? void 0 : openaiOptions.truncation,
25016
25076
  // model-specific settings:
25017
- ...modelConfig.isReasoningModel && ((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null || (openaiOptions == null ? void 0 : openaiOptions.reasoningSummary) != null) && {
25077
+ ...modelCapabilities.isReasoningModel && ((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null || (openaiOptions == null ? void 0 : openaiOptions.reasoningSummary) != null) && {
25018
25078
  reasoning: {
25019
25079
  ...(openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null && {
25020
25080
  effort: openaiOptions.reasoningEffort
@@ -25025,22 +25085,24 @@ var OpenAIResponsesLanguageModel = class {
25025
25085
  }
25026
25086
  }
25027
25087
  };
25028
- if (modelConfig.isReasoningModel) {
25029
- if (baseArgs.temperature != null) {
25030
- baseArgs.temperature = void 0;
25031
- warnings.push({
25032
- type: "unsupported-setting",
25033
- setting: "temperature",
25034
- details: "temperature is not supported for reasoning models"
25035
- });
25036
- }
25037
- if (baseArgs.top_p != null) {
25038
- baseArgs.top_p = void 0;
25039
- warnings.push({
25040
- type: "unsupported-setting",
25041
- setting: "topP",
25042
- details: "topP is not supported for reasoning models"
25043
- });
25088
+ if (modelCapabilities.isReasoningModel) {
25089
+ if (!((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) === "none" && modelCapabilities.supportsNonReasoningParameters)) {
25090
+ if (baseArgs.temperature != null) {
25091
+ baseArgs.temperature = void 0;
25092
+ warnings.push({
25093
+ type: "unsupported-setting",
25094
+ setting: "temperature",
25095
+ details: "temperature is not supported for reasoning models"
25096
+ });
25097
+ }
25098
+ if (baseArgs.top_p != null) {
25099
+ baseArgs.top_p = void 0;
25100
+ warnings.push({
25101
+ type: "unsupported-setting",
25102
+ setting: "topP",
25103
+ details: "topP is not supported for reasoning models"
25104
+ });
25105
+ }
25044
25106
  }
25045
25107
  } else {
25046
25108
  if ((openaiOptions == null ? void 0 : openaiOptions.reasoningEffort) != null) {
@@ -25058,7 +25120,7 @@ var OpenAIResponsesLanguageModel = class {
25058
25120
  });
25059
25121
  }
25060
25122
  }
25061
- if ((openaiOptions == null ? void 0 : openaiOptions.serviceTier) === "flex" && !modelConfig.supportsFlexProcessing) {
25123
+ if ((openaiOptions == null ? void 0 : openaiOptions.serviceTier) === "flex" && !modelCapabilities.supportsFlexProcessing) {
25062
25124
  warnings.push({
25063
25125
  type: "unsupported-setting",
25064
25126
  setting: "serviceTier",
@@ -25066,7 +25128,7 @@ var OpenAIResponsesLanguageModel = class {
25066
25128
  });
25067
25129
  delete baseArgs.service_tier;
25068
25130
  }
25069
- if ((openaiOptions == null ? void 0 : openaiOptions.serviceTier) === "priority" && !modelConfig.supportsPriorityProcessing) {
25131
+ if ((openaiOptions == null ? void 0 : openaiOptions.serviceTier) === "priority" && !modelCapabilities.supportsPriorityProcessing) {
25070
25132
  warnings.push({
25071
25133
  type: "unsupported-setting",
25072
25134
  setting: "serviceTier",
@@ -25923,32 +25985,6 @@ function isResponseAnnotationAddedChunk(chunk) {
25923
25985
  function isErrorChunk(chunk) {
25924
25986
  return chunk.type === "error";
25925
25987
  }
25926
- function getResponsesModelConfig(modelId) {
25927
- const supportsFlexProcessing2 = modelId.startsWith("o3") || modelId.startsWith("o4-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-chat");
25928
- const supportsPriorityProcessing2 = modelId.startsWith("gpt-4") || modelId.startsWith("gpt-5-mini") || modelId.startsWith("gpt-5") && !modelId.startsWith("gpt-5-nano") && !modelId.startsWith("gpt-5-chat") || modelId.startsWith("o3") || modelId.startsWith("o4-mini");
25929
- const defaults = {
25930
- systemMessageMode: "system",
25931
- supportsFlexProcessing: supportsFlexProcessing2,
25932
- supportsPriorityProcessing: supportsPriorityProcessing2
25933
- };
25934
- if (modelId.startsWith("gpt-5-chat")) {
25935
- return {
25936
- ...defaults,
25937
- isReasoningModel: false
25938
- };
25939
- }
25940
- if (modelId.startsWith("o") || modelId.startsWith("gpt-5") || modelId.startsWith("codex-") || modelId.startsWith("computer-use")) {
25941
- return {
25942
- ...defaults,
25943
- isReasoningModel: true,
25944
- systemMessageMode: "developer"
25945
- };
25946
- }
25947
- return {
25948
- ...defaults,
25949
- isReasoningModel: false
25950
- };
25951
- }
25952
25988
  function mapWebSearchOutput(action) {
25953
25989
  var _a17;
25954
25990
  switch (action.type) {
@@ -25960,21 +25996,25 @@ function mapWebSearchOutput(action) {
25960
25996
  };
25961
25997
  case "open_page":
25962
25998
  return { action: { type: "openPage", url: action.url } };
25963
- case "find":
25999
+ case "find_in_page":
25964
26000
  return {
25965
- action: { type: "find", url: action.url, pattern: action.pattern }
26001
+ action: {
26002
+ type: "findInPage",
26003
+ url: action.url,
26004
+ pattern: action.pattern
26005
+ }
25966
26006
  };
25967
26007
  }
25968
26008
  }
25969
26009
 
25970
- // ../../node_modules/.pnpm/@ai-sdk+azure@2.0.78_zod@3.25.76/node_modules/@ai-sdk/azure/dist/index.mjs
26010
+ // ../../node_modules/.bun/@ai-sdk+azure@2.0.87+27912429049419a2/node_modules/@ai-sdk/azure/dist/index.mjs
25971
26011
  var azureOpenaiTools = {
25972
26012
  codeInterpreter,
25973
26013
  fileSearch,
25974
26014
  imageGeneration,
25975
26015
  webSearchPreview
25976
26016
  };
25977
- var VERSION3 = true ? "2.0.78" : "0.0.0-test";
26017
+ var VERSION3 = true ? "2.0.87" : "0.0.0-test";
25978
26018
  function createAzure(options = {}) {
25979
26019
  var _a17;
25980
26020
  const getHeaders = () => {
@@ -26074,8 +26114,8 @@ function createAzure(options = {}) {
26074
26114
  }
26075
26115
  var azure = createAzure();
26076
26116
 
26077
- // ../../node_modules/.pnpm/@ai-sdk+google@2.0.44_zod@3.25.76/node_modules/@ai-sdk/google/dist/index.mjs
26078
- var VERSION4 = true ? "2.0.44" : "0.0.0-test";
26117
+ // ../../node_modules/.bun/@ai-sdk+google@2.0.46+27912429049419a2/node_modules/@ai-sdk/google/dist/index.mjs
26118
+ var VERSION4 = true ? "2.0.46" : "0.0.0-test";
26079
26119
  var googleErrorDataSchema = lazySchema(
26080
26120
  () => zodSchema(
26081
26121
  external_exports2.object({
@@ -27759,7 +27799,7 @@ function createGoogleGenerativeAI(options = {}) {
27759
27799
  }
27760
27800
  var google = createGoogleGenerativeAI();
27761
27801
 
27762
- // ../../node_modules/.pnpm/@ai-sdk+gateway@2.0.18_zod@3.25.76/node_modules/@ai-sdk/gateway/dist/index.mjs
27802
+ // ../../node_modules/.bun/@ai-sdk+gateway@2.0.21+27912429049419a2/node_modules/@ai-sdk/gateway/dist/index.mjs
27763
27803
  var import_oidc = __toESM(require_dist(), 1);
27764
27804
  var import_oidc2 = __toESM(require_dist(), 1);
27765
27805
  var marker15 = "vercel.ai.gateway.error";
@@ -28475,7 +28515,7 @@ async function getVercelRequestId() {
28475
28515
  var _a83;
28476
28516
  return (_a83 = (0, import_oidc.getContext)().headers) == null ? void 0 : _a83["x-vercel-id"];
28477
28517
  }
28478
- var VERSION5 = true ? "2.0.18" : "0.0.0-test";
28518
+ var VERSION5 = true ? "2.0.21" : "0.0.0-test";
28479
28519
  var AI_GATEWAY_PROTOCOL_VERSION = "0.0.1";
28480
28520
  function createGatewayProvider(options = {}) {
28481
28521
  var _a83, _b8;
@@ -28622,13 +28662,13 @@ async function getGatewayAuthToken(options) {
28622
28662
  }
28623
28663
  }
28624
28664
 
28625
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js
28665
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/platform/node/globalThis.js
28626
28666
  var _globalThis = typeof globalThis === "object" ? globalThis : global;
28627
28667
 
28628
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/version.js
28668
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/version.js
28629
28669
  var VERSION6 = "1.9.0";
28630
28670
 
28631
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/internal/semver.js
28671
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/internal/semver.js
28632
28672
  var re = /^(\d+)\.(\d+)\.(\d+)(-(.+))?$/;
28633
28673
  function _makeCompatibilityCheck(ownVersion) {
28634
28674
  var acceptedVersions = /* @__PURE__ */ new Set([ownVersion]);
@@ -28695,7 +28735,7 @@ function _makeCompatibilityCheck(ownVersion) {
28695
28735
  }
28696
28736
  var isCompatible = _makeCompatibilityCheck(VERSION6);
28697
28737
 
28698
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js
28738
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/internal/global-utils.js
28699
28739
  var major = VERSION6.split(".")[0];
28700
28740
  var GLOBAL_OPENTELEMETRY_API_KEY = Symbol.for("opentelemetry.js.api." + major);
28701
28741
  var _global = _globalThis;
@@ -28737,7 +28777,7 @@ function unregisterGlobal(type, diag) {
28737
28777
  }
28738
28778
  }
28739
28779
 
28740
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js
28780
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/diag/ComponentLogger.js
28741
28781
  var __read = function(o, n) {
28742
28782
  var m = typeof Symbol === "function" && o[Symbol.iterator];
28743
28783
  if (!m) return o;
@@ -28817,7 +28857,7 @@ function logProxy(funcName, namespace, args) {
28817
28857
  return logger[funcName].apply(logger, __spreadArray([], __read(args), false));
28818
28858
  }
28819
28859
 
28820
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/diag/types.js
28860
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/diag/types.js
28821
28861
  var DiagLogLevel;
28822
28862
  (function(DiagLogLevel2) {
28823
28863
  DiagLogLevel2[DiagLogLevel2["NONE"] = 0] = "NONE";
@@ -28829,7 +28869,7 @@ var DiagLogLevel;
28829
28869
  DiagLogLevel2[DiagLogLevel2["ALL"] = 9999] = "ALL";
28830
28870
  })(DiagLogLevel || (DiagLogLevel = {}));
28831
28871
 
28832
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js
28872
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/diag/internal/logLevelLogger.js
28833
28873
  function createLogLevelDiagLogger(maxLevel, logger) {
28834
28874
  if (maxLevel < DiagLogLevel.NONE) {
28835
28875
  maxLevel = DiagLogLevel.NONE;
@@ -28854,7 +28894,7 @@ function createLogLevelDiagLogger(maxLevel, logger) {
28854
28894
  };
28855
28895
  }
28856
28896
 
28857
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/api/diag.js
28897
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/api/diag.js
28858
28898
  var __read2 = function(o, n) {
28859
28899
  var m = typeof Symbol === "function" && o[Symbol.iterator];
28860
28900
  if (!m) return o;
@@ -28946,7 +28986,7 @@ var DiagAPI = (
28946
28986
  }()
28947
28987
  );
28948
28988
 
28949
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/context/context.js
28989
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/context/context.js
28950
28990
  function createContextKey(description) {
28951
28991
  return Symbol.for(description);
28952
28992
  }
@@ -28975,7 +29015,7 @@ var BaseContext = (
28975
29015
  );
28976
29016
  var ROOT_CONTEXT = new BaseContext();
28977
29017
 
28978
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js
29018
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/context/NoopContextManager.js
28979
29019
  var __read3 = function(o, n) {
28980
29020
  var m = typeof Symbol === "function" && o[Symbol.iterator];
28981
29021
  if (!m) return o;
@@ -29030,7 +29070,7 @@ var NoopContextManager = (
29030
29070
  }()
29031
29071
  );
29032
29072
 
29033
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/api/context.js
29073
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/api/context.js
29034
29074
  var __read4 = function(o, n) {
29035
29075
  var m = typeof Symbol === "function" && o[Symbol.iterator];
29036
29076
  if (!m) return o;
@@ -29098,14 +29138,14 @@ var ContextAPI = (
29098
29138
  }()
29099
29139
  );
29100
29140
 
29101
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js
29141
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/trace_flags.js
29102
29142
  var TraceFlags;
29103
29143
  (function(TraceFlags2) {
29104
29144
  TraceFlags2[TraceFlags2["NONE"] = 0] = "NONE";
29105
29145
  TraceFlags2[TraceFlags2["SAMPLED"] = 1] = "SAMPLED";
29106
29146
  })(TraceFlags || (TraceFlags = {}));
29107
29147
 
29108
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js
29148
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/invalid-span-constants.js
29109
29149
  var INVALID_SPANID = "0000000000000000";
29110
29150
  var INVALID_TRACEID = "00000000000000000000000000000000";
29111
29151
  var INVALID_SPAN_CONTEXT = {
@@ -29114,7 +29154,7 @@ var INVALID_SPAN_CONTEXT = {
29114
29154
  traceFlags: TraceFlags.NONE
29115
29155
  };
29116
29156
 
29117
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js
29157
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/NonRecordingSpan.js
29118
29158
  var NonRecordingSpan = (
29119
29159
  /** @class */
29120
29160
  function() {
@@ -29159,7 +29199,7 @@ var NonRecordingSpan = (
29159
29199
  }()
29160
29200
  );
29161
29201
 
29162
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js
29202
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/context-utils.js
29163
29203
  var SPAN_KEY = createContextKey("OpenTelemetry Context Key SPAN");
29164
29204
  function getSpan(context) {
29165
29205
  return context.getValue(SPAN_KEY) || void 0;
@@ -29181,7 +29221,7 @@ function getSpanContext(context) {
29181
29221
  return (_a17 = getSpan(context)) === null || _a17 === void 0 ? void 0 : _a17.spanContext();
29182
29222
  }
29183
29223
 
29184
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js
29224
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/spancontext-utils.js
29185
29225
  var VALID_TRACEID_REGEX = /^([0-9a-f]{32})$/i;
29186
29226
  var VALID_SPANID_REGEX = /^[0-9a-f]{16}$/i;
29187
29227
  function isValidTraceId(traceId) {
@@ -29197,7 +29237,7 @@ function wrapSpanContext(spanContext) {
29197
29237
  return new NonRecordingSpan(spanContext);
29198
29238
  }
29199
29239
 
29200
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js
29240
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/NoopTracer.js
29201
29241
  var contextApi = ContextAPI.getInstance();
29202
29242
  var NoopTracer = (
29203
29243
  /** @class */
@@ -29247,7 +29287,7 @@ function isSpanContext(spanContext) {
29247
29287
  return typeof spanContext === "object" && typeof spanContext["spanId"] === "string" && typeof spanContext["traceId"] === "string" && typeof spanContext["traceFlags"] === "number";
29248
29288
  }
29249
29289
 
29250
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js
29290
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracer.js
29251
29291
  var NOOP_TRACER = new NoopTracer();
29252
29292
  var ProxyTracer = (
29253
29293
  /** @class */
@@ -29280,7 +29320,7 @@ var ProxyTracer = (
29280
29320
  }()
29281
29321
  );
29282
29322
 
29283
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js
29323
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/NoopTracerProvider.js
29284
29324
  var NoopTracerProvider = (
29285
29325
  /** @class */
29286
29326
  function() {
@@ -29293,7 +29333,7 @@ var NoopTracerProvider = (
29293
29333
  }()
29294
29334
  );
29295
29335
 
29296
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js
29336
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/ProxyTracerProvider.js
29297
29337
  var NOOP_TRACER_PROVIDER = new NoopTracerProvider();
29298
29338
  var ProxyTracerProvider = (
29299
29339
  /** @class */
@@ -29319,7 +29359,7 @@ var ProxyTracerProvider = (
29319
29359
  }()
29320
29360
  );
29321
29361
 
29322
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/status.js
29362
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace/status.js
29323
29363
  var SpanStatusCode;
29324
29364
  (function(SpanStatusCode2) {
29325
29365
  SpanStatusCode2[SpanStatusCode2["UNSET"] = 0] = "UNSET";
@@ -29327,7 +29367,7 @@ var SpanStatusCode;
29327
29367
  SpanStatusCode2[SpanStatusCode2["ERROR"] = 2] = "ERROR";
29328
29368
  })(SpanStatusCode || (SpanStatusCode = {}));
29329
29369
 
29330
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/api/trace.js
29370
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/api/trace.js
29331
29371
  var API_NAME3 = "trace";
29332
29372
  var TraceAPI = (
29333
29373
  /** @class */
@@ -29370,10 +29410,10 @@ var TraceAPI = (
29370
29410
  }()
29371
29411
  );
29372
29412
 
29373
- // ../../node_modules/.pnpm/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace-api.js
29413
+ // ../../node_modules/.bun/@opentelemetry+api@1.9.0/node_modules/@opentelemetry/api/build/esm/trace-api.js
29374
29414
  var trace = TraceAPI.getInstance();
29375
29415
 
29376
- // ../../node_modules/.pnpm/ai@5.0.106_zod@3.25.76/node_modules/ai/dist/index.mjs
29416
+ // ../../node_modules/.bun/ai@5.0.112+27912429049419a2/node_modules/ai/dist/index.mjs
29377
29417
  var __defProp = Object.defineProperty;
29378
29418
  var __export2 = (target, all) => {
29379
29419
  for (var name16 in all)
@@ -29776,7 +29816,7 @@ function detectMediaType({
29776
29816
  }
29777
29817
  return void 0;
29778
29818
  }
29779
- var VERSION7 = true ? "5.0.106" : "0.0.0-test";
29819
+ var VERSION7 = true ? "5.0.112" : "0.0.0-test";
29780
29820
  var download = async ({ url: url2 }) => {
29781
29821
  var _a162;
29782
29822
  const urlText = url2.toString();
@@ -30422,7 +30462,7 @@ function wrapGatewayError(error40) {
30422
30462
  if (GatewayAuthenticationError.isInstance(error40) || GatewayModelNotFoundError.isInstance(error40)) {
30423
30463
  return new AISDKError({
30424
30464
  name: "GatewayError",
30425
- message: "Vercel AI Gateway access failed. If you want to use AI SDK providers directly, use the providers, e.g. @ai-sdk/openai, or register a different global default provider.",
30465
+ message: "Unauthenticated. Configure AI_GATEWAY_API_KEY or configure and use a provider module. Learn more: https://vercel.link/unauthenticated-ai-gateway",
30426
30466
  cause: error40
30427
30467
  });
30428
30468
  }
@@ -32441,20 +32481,20 @@ import { promisify as promisify2 } from "node:util";
32441
32481
  import { exec as execCallback, spawn as spawn2 } from "node:child_process";
32442
32482
  import { randomUUID } from "node:crypto";
32443
32483
  import { constants as constants22, createWriteStream } from "node:fs";
32444
- import { access as access22, mkdtemp, mkdir as mkdir3, rm as rm2, writeFile as writeFile3 } from "node:fs/promises";
32484
+ import { access as access22, mkdir as mkdir3, mkdtemp, rm as rm2, writeFile as writeFile3 } from "node:fs/promises";
32445
32485
  import { tmpdir } from "node:os";
32446
32486
  import path9 from "node:path";
32447
32487
  import { promisify as promisify22 } from "node:util";
32448
32488
  import path82 from "node:path";
32449
32489
  import path10 from "node:path";
32450
32490
 
32451
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/vscode/agentDispatch.js
32491
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/vscode/agentDispatch.js
32452
32492
  import { exec, spawn } from "child_process";
32453
32493
  import { copyFile, mkdir as mkdir2, readdir as readdir2, readFile as readFile2, stat as stat2, writeFile } from "fs/promises";
32454
32494
  import path6 from "path";
32455
32495
  import { promisify } from "util";
32456
32496
 
32457
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/vscode/constants.js
32497
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/vscode/constants.js
32458
32498
  import os from "os";
32459
32499
  import path2 from "path";
32460
32500
  var DEFAULT_LOCK_NAME = "subagent.lock";
@@ -32465,7 +32505,7 @@ function getDefaultSubagentRoot(vscodeCmd = "code") {
32465
32505
  }
32466
32506
  var DEFAULT_SUBAGENT_ROOT = getDefaultSubagentRoot();
32467
32507
 
32468
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/utils/fs.js
32508
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/utils/fs.js
32469
32509
  import { constants as constants2 } from "fs";
32470
32510
  import { access as access2, mkdir, readdir, rm, stat } from "fs/promises";
32471
32511
  import path3 from "path";
@@ -32498,7 +32538,7 @@ async function removeIfExists(target) {
32498
32538
  }
32499
32539
  }
32500
32540
 
32501
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/utils/path.js
32541
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/utils/path.js
32502
32542
  import path4 from "path";
32503
32543
  function pathToFileUri(filePath) {
32504
32544
  const absolutePath = path4.isAbsolute(filePath) ? filePath : path4.resolve(filePath);
@@ -32509,17 +32549,17 @@ function pathToFileUri(filePath) {
32509
32549
  return `file://${normalizedPath}`;
32510
32550
  }
32511
32551
 
32512
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/utils/time.js
32552
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/utils/time.js
32513
32553
  function sleep(ms) {
32514
32554
  return new Promise((resolve2) => {
32515
32555
  setTimeout(resolve2, ms);
32516
32556
  });
32517
32557
  }
32518
32558
 
32519
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/utils/workspace.js
32559
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/utils/workspace.js
32520
32560
  import path5 from "path";
32521
32561
 
32522
- // ../../node_modules/.pnpm/json5@2.2.3/node_modules/json5/dist/index.mjs
32562
+ // ../../node_modules/.bun/json5@2.2.3/node_modules/json5/dist/index.mjs
32523
32563
  var Space_Separator = /[\u1680\u2000-\u200A\u202F\u205F\u3000]/;
32524
32564
  var ID_Start = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1877\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDE80-\uDE9C\uDEA0-\uDED0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF75\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00\uDE10-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE4\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC03-\uDC37\uDC83-\uDCAF\uDCD0-\uDCE8\uDD03-\uDD26\uDD50-\uDD72\uDD76\uDD83-\uDDB2\uDDC1-\uDDC4\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE2B\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEDE\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3D\uDF50\uDF5D-\uDF61]|\uD805[\uDC00-\uDC34\uDC47-\uDC4A\uDC80-\uDCAF\uDCC4\uDCC5\uDCC7\uDD80-\uDDAE\uDDD8-\uDDDB\uDE00-\uDE2F\uDE44\uDE80-\uDEAA\uDF00-\uDF19]|\uD806[\uDCA0-\uDCDF\uDCFF\uDE00\uDE0B-\uDE32\uDE3A\uDE50\uDE5C-\uDE83\uDE86-\uDE89\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC2E\uDC40\uDC72-\uDC8F\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD30\uDD46]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDED0-\uDEED\uDF00-\uDF2F\uDF40-\uDF43\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50\uDF93-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB]|\uD83A[\uDC00-\uDCC4\uDD00-\uDD43]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]/;
32525
32565
  var ID_Continue = /[\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0300-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u0483-\u0487\u048A-\u052F\u0531-\u0556\u0559\u0561-\u0587\u0591-\u05BD\u05BF\u05C1\u05C2\u05C4\u05C5\u05C7\u05D0-\u05EA\u05F0-\u05F2\u0610-\u061A\u0620-\u0669\u066E-\u06D3\u06D5-\u06DC\u06DF-\u06E8\u06EA-\u06FC\u06FF\u0710-\u074A\u074D-\u07B1\u07C0-\u07F5\u07FA\u0800-\u082D\u0840-\u085B\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u08D4-\u08E1\u08E3-\u0963\u0966-\u096F\u0971-\u0983\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BC-\u09C4\u09C7\u09C8\u09CB-\u09CE\u09D7\u09DC\u09DD\u09DF-\u09E3\u09E6-\u09F1\u09FC\u0A01-\u0A03\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A3C\u0A3E-\u0A42\u0A47\u0A48\u0A4B-\u0A4D\u0A51\u0A59-\u0A5C\u0A5E\u0A66-\u0A75\u0A81-\u0A83\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABC-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0AD0\u0AE0-\u0AE3\u0AE6-\u0AEF\u0AF9-\u0AFF\u0B01-\u0B03\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3C-\u0B44\u0B47\u0B48\u0B4B-\u0B4D\u0B56\u0B57\u0B5C\u0B5D\u0B5F-\u0B63\u0B66-\u0B6F\u0B71\u0B82\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD0\u0BD7\u0BE6-\u0BEF\u0C00-\u0C03\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55\u0C56\u0C58-\u0C5A\u0C60-\u0C63\u0C66-\u0C6F\u0C80-\u0C83\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBC-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5\u0CD6\u0CDE\u0CE0-\u0CE3\u0CE6-\u0CEF\u0CF1\u0CF2\u0D00-\u0D03\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D44\u0D46-\u0D48\u0D4A-\u0D4E\u0D54-\u0D57\u0D5F-\u0D63\u0D66-\u0D6F\u0D7A-\u0D7F\u0D82\u0D83\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0DCA\u0DCF-\u0DD4\u0DD6\u0DD8-\u0DDF\u0DE6-\u0DEF\u0DF2\u0DF3\u0E01-\u0E3A\u0E40-\u0E4E\u0E50-\u0E59\u0E81\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB9\u0EBB-\u0EBD\u0EC0-\u0EC4\u0EC6\u0EC8-\u0ECD\u0ED0-\u0ED9\u0EDC-\u0EDF\u0F00\u0F18\u0F19\u0F20-\u0F29\u0F35\u0F37\u0F39\u0F3E-\u0F47\u0F49-\u0F6C\u0F71-\u0F84\u0F86-\u0F97\u0F99-\u0FBC\u0FC6\u1000-\u1049\u1050-\u109D\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u135D-\u135F\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1714\u1720-\u1734\u1740-\u1753\u1760-\u176C\u176E-\u1770\u1772\u1773\u1780-\u17D3\u17D7\u17DC\u17DD\u17E0-\u17E9\u180B-\u180D\u1810-\u1819\u1820-\u1877\u1880-\u18AA\u18B0-\u18F5\u1900-\u191E\u1920-\u192B\u1930-\u193B\u1946-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u19D0-\u19D9\u1A00-\u1A1B\u1A20-\u1A5E\u1A60-\u1A7C\u1A7F-\u1A89\u1A90-\u1A99\u1AA7\u1AB0-\u1ABD\u1B00-\u1B4B\u1B50-\u1B59\u1B6B-\u1B73\u1B80-\u1BF3\u1C00-\u1C37\u1C40-\u1C49\u1C4D-\u1C7D\u1C80-\u1C88\u1CD0-\u1CD2\u1CD4-\u1CF9\u1D00-\u1DF9\u1DFB-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u203F\u2040\u2054\u2071\u207F\u2090-\u209C\u20D0-\u20DC\u20E1\u20E5-\u20F0\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D7F-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2DE0-\u2DFF\u2E2F\u3005-\u3007\u3021-\u302F\u3031-\u3035\u3038-\u303C\u3041-\u3096\u3099\u309A\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312E\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEA\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA62B\uA640-\uA66F\uA674-\uA67D\uA67F-\uA6F1\uA717-\uA71F\uA722-\uA788\uA78B-\uA7AE\uA7B0-\uA7B7\uA7F7-\uA827\uA840-\uA873\uA880-\uA8C5\uA8D0-\uA8D9\uA8E0-\uA8F7\uA8FB\uA8FD\uA900-\uA92D\uA930-\uA953\uA960-\uA97C\uA980-\uA9C0\uA9CF-\uA9D9\uA9E0-\uA9FE\uAA00-\uAA36\uAA40-\uAA4D\uAA50-\uAA59\uAA60-\uAA76\uAA7A-\uAAC2\uAADB-\uAADD\uAAE0-\uAAEF\uAAF2-\uAAF6\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABEA\uABEC\uABED\uABF0-\uABF9\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE00-\uFE0F\uFE20-\uFE2F\uFE33\uFE34\uFE4D-\uFE4F\uFE70-\uFE74\uFE76-\uFEFC\uFF10-\uFF19\uFF21-\uFF3A\uFF3F\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]|\uD800[\uDC00-\uDC0B\uDC0D-\uDC26\uDC28-\uDC3A\uDC3C\uDC3D\uDC3F-\uDC4D\uDC50-\uDC5D\uDC80-\uDCFA\uDD40-\uDD74\uDDFD\uDE80-\uDE9C\uDEA0-\uDED0\uDEE0\uDF00-\uDF1F\uDF2D-\uDF4A\uDF50-\uDF7A\uDF80-\uDF9D\uDFA0-\uDFC3\uDFC8-\uDFCF\uDFD1-\uDFD5]|\uD801[\uDC00-\uDC9D\uDCA0-\uDCA9\uDCB0-\uDCD3\uDCD8-\uDCFB\uDD00-\uDD27\uDD30-\uDD63\uDE00-\uDF36\uDF40-\uDF55\uDF60-\uDF67]|\uD802[\uDC00-\uDC05\uDC08\uDC0A-\uDC35\uDC37\uDC38\uDC3C\uDC3F-\uDC55\uDC60-\uDC76\uDC80-\uDC9E\uDCE0-\uDCF2\uDCF4\uDCF5\uDD00-\uDD15\uDD20-\uDD39\uDD80-\uDDB7\uDDBE\uDDBF\uDE00-\uDE03\uDE05\uDE06\uDE0C-\uDE13\uDE15-\uDE17\uDE19-\uDE33\uDE38-\uDE3A\uDE3F\uDE60-\uDE7C\uDE80-\uDE9C\uDEC0-\uDEC7\uDEC9-\uDEE6\uDF00-\uDF35\uDF40-\uDF55\uDF60-\uDF72\uDF80-\uDF91]|\uD803[\uDC00-\uDC48\uDC80-\uDCB2\uDCC0-\uDCF2]|\uD804[\uDC00-\uDC46\uDC66-\uDC6F\uDC7F-\uDCBA\uDCD0-\uDCE8\uDCF0-\uDCF9\uDD00-\uDD34\uDD36-\uDD3F\uDD50-\uDD73\uDD76\uDD80-\uDDC4\uDDCA-\uDDCC\uDDD0-\uDDDA\uDDDC\uDE00-\uDE11\uDE13-\uDE37\uDE3E\uDE80-\uDE86\uDE88\uDE8A-\uDE8D\uDE8F-\uDE9D\uDE9F-\uDEA8\uDEB0-\uDEEA\uDEF0-\uDEF9\uDF00-\uDF03\uDF05-\uDF0C\uDF0F\uDF10\uDF13-\uDF28\uDF2A-\uDF30\uDF32\uDF33\uDF35-\uDF39\uDF3C-\uDF44\uDF47\uDF48\uDF4B-\uDF4D\uDF50\uDF57\uDF5D-\uDF63\uDF66-\uDF6C\uDF70-\uDF74]|\uD805[\uDC00-\uDC4A\uDC50-\uDC59\uDC80-\uDCC5\uDCC7\uDCD0-\uDCD9\uDD80-\uDDB5\uDDB8-\uDDC0\uDDD8-\uDDDD\uDE00-\uDE40\uDE44\uDE50-\uDE59\uDE80-\uDEB7\uDEC0-\uDEC9\uDF00-\uDF19\uDF1D-\uDF2B\uDF30-\uDF39]|\uD806[\uDCA0-\uDCE9\uDCFF\uDE00-\uDE3E\uDE47\uDE50-\uDE83\uDE86-\uDE99\uDEC0-\uDEF8]|\uD807[\uDC00-\uDC08\uDC0A-\uDC36\uDC38-\uDC40\uDC50-\uDC59\uDC72-\uDC8F\uDC92-\uDCA7\uDCA9-\uDCB6\uDD00-\uDD06\uDD08\uDD09\uDD0B-\uDD36\uDD3A\uDD3C\uDD3D\uDD3F-\uDD47\uDD50-\uDD59]|\uD808[\uDC00-\uDF99]|\uD809[\uDC00-\uDC6E\uDC80-\uDD43]|[\uD80C\uD81C-\uD820\uD840-\uD868\uD86A-\uD86C\uD86F-\uD872\uD874-\uD879][\uDC00-\uDFFF]|\uD80D[\uDC00-\uDC2E]|\uD811[\uDC00-\uDE46]|\uD81A[\uDC00-\uDE38\uDE40-\uDE5E\uDE60-\uDE69\uDED0-\uDEED\uDEF0-\uDEF4\uDF00-\uDF36\uDF40-\uDF43\uDF50-\uDF59\uDF63-\uDF77\uDF7D-\uDF8F]|\uD81B[\uDF00-\uDF44\uDF50-\uDF7E\uDF8F-\uDF9F\uDFE0\uDFE1]|\uD821[\uDC00-\uDFEC]|\uD822[\uDC00-\uDEF2]|\uD82C[\uDC00-\uDD1E\uDD70-\uDEFB]|\uD82F[\uDC00-\uDC6A\uDC70-\uDC7C\uDC80-\uDC88\uDC90-\uDC99\uDC9D\uDC9E]|\uD834[\uDD65-\uDD69\uDD6D-\uDD72\uDD7B-\uDD82\uDD85-\uDD8B\uDDAA-\uDDAD\uDE42-\uDE44]|\uD835[\uDC00-\uDC54\uDC56-\uDC9C\uDC9E\uDC9F\uDCA2\uDCA5\uDCA6\uDCA9-\uDCAC\uDCAE-\uDCB9\uDCBB\uDCBD-\uDCC3\uDCC5-\uDD05\uDD07-\uDD0A\uDD0D-\uDD14\uDD16-\uDD1C\uDD1E-\uDD39\uDD3B-\uDD3E\uDD40-\uDD44\uDD46\uDD4A-\uDD50\uDD52-\uDEA5\uDEA8-\uDEC0\uDEC2-\uDEDA\uDEDC-\uDEFA\uDEFC-\uDF14\uDF16-\uDF34\uDF36-\uDF4E\uDF50-\uDF6E\uDF70-\uDF88\uDF8A-\uDFA8\uDFAA-\uDFC2\uDFC4-\uDFCB\uDFCE-\uDFFF]|\uD836[\uDE00-\uDE36\uDE3B-\uDE6C\uDE75\uDE84\uDE9B-\uDE9F\uDEA1-\uDEAF]|\uD838[\uDC00-\uDC06\uDC08-\uDC18\uDC1B-\uDC21\uDC23\uDC24\uDC26-\uDC2A]|\uD83A[\uDC00-\uDCC4\uDCD0-\uDCD6\uDD00-\uDD4A\uDD50-\uDD59]|\uD83B[\uDE00-\uDE03\uDE05-\uDE1F\uDE21\uDE22\uDE24\uDE27\uDE29-\uDE32\uDE34-\uDE37\uDE39\uDE3B\uDE42\uDE47\uDE49\uDE4B\uDE4D-\uDE4F\uDE51\uDE52\uDE54\uDE57\uDE59\uDE5B\uDE5D\uDE5F\uDE61\uDE62\uDE64\uDE67-\uDE6A\uDE6C-\uDE72\uDE74-\uDE77\uDE79-\uDE7C\uDE7E\uDE80-\uDE89\uDE8B-\uDE9B\uDEA1-\uDEA3\uDEA5-\uDEA9\uDEAB-\uDEBB]|\uD869[\uDC00-\uDED6\uDF00-\uDFFF]|\uD86D[\uDC00-\uDF34\uDF40-\uDFFF]|\uD86E[\uDC00-\uDC1D\uDC20-\uDFFF]|\uD873[\uDC00-\uDEA1\uDEB0-\uDFFF]|\uD87A[\uDC00-\uDFE0]|\uD87E[\uDC00-\uDE1D]|\uDB40[\uDD00-\uDDEF]/;
@@ -33604,7 +33644,7 @@ var JSON5 = {
33604
33644
  var lib = JSON5;
33605
33645
  var dist_default = lib;
33606
33646
 
33607
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/utils/workspace.js
33647
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/utils/workspace.js
33608
33648
  function transformWorkspacePaths(workspaceContent, templateDir) {
33609
33649
  let workspace;
33610
33650
  try {
@@ -33677,7 +33717,7 @@ function transformWorkspacePaths(workspaceContent, templateDir) {
33677
33717
  return JSON.stringify(transformedWorkspace, null, 2);
33678
33718
  }
33679
33719
 
33680
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/vscode/agentDispatch.js
33720
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/vscode/agentDispatch.js
33681
33721
  var execAsync = promisify(exec);
33682
33722
  function generateTimestamp() {
33683
33723
  return (/* @__PURE__ */ new Date()).toISOString().replace(/[-:TZ.]/g, "").slice(0, 14);
@@ -34259,7 +34299,7 @@ async function dispatchBatchAgent(options) {
34259
34299
  }
34260
34300
  }
34261
34301
 
34262
- // ../../node_modules/.pnpm/subagent@0.4.7/node_modules/subagent/dist/vscode/provision.js
34302
+ // ../../node_modules/.bun/subagent@0.4.7/node_modules/subagent/dist/vscode/provision.js
34263
34303
  import { writeFile as writeFile2 } from "fs/promises";
34264
34304
  import path7 from "path";
34265
34305
  var DEFAULT_WORKSPACE_TEMPLATE2 = {
@@ -34439,11 +34479,11 @@ function extractCodeBlocks(segments) {
34439
34479
  const CODE_BLOCK_PATTERN = /```[\s\S]*?```/g;
34440
34480
  const codeBlocks = [];
34441
34481
  for (const segment of segments) {
34442
- const typeValue = segment["type"];
34482
+ const typeValue = segment.type;
34443
34483
  if (typeof typeValue !== "string" || typeValue !== "text") {
34444
34484
  continue;
34445
34485
  }
34446
- const textValue = segment["value"];
34486
+ const textValue = segment.value;
34447
34487
  if (typeof textValue !== "string") {
34448
34488
  continue;
34449
34489
  }
@@ -34645,8 +34685,9 @@ Please add '$schema: ${SCHEMA_CONFIG_V2}' at the top of the file.`;
34645
34685
  guideline_patterns: guidelinePatterns
34646
34686
  };
34647
34687
  } catch (error40) {
34648
- logWarning(`Could not read .agentv/config.yaml at ${configPath}: ${error40.message}`);
34649
- continue;
34688
+ logWarning(
34689
+ `Could not read .agentv/config.yaml at ${configPath}: ${error40.message}`
34690
+ );
34650
34691
  }
34651
34692
  }
34652
34693
  return null;
@@ -34681,9 +34722,7 @@ var TEMPLATE_VARIABLES = {
34681
34722
  REFERENCE_ANSWER: "reference_answer",
34682
34723
  INPUT_MESSAGES: "input_messages"
34683
34724
  };
34684
- var VALID_TEMPLATE_VARIABLES = new Set(
34685
- Object.values(TEMPLATE_VARIABLES)
34686
- );
34725
+ var VALID_TEMPLATE_VARIABLES = new Set(Object.values(TEMPLATE_VARIABLES));
34687
34726
  var REQUIRED_TEMPLATE_VARIABLES = /* @__PURE__ */ new Set([
34688
34727
  TEMPLATE_VARIABLES.CANDIDATE_ANSWER,
34689
34728
  TEMPLATE_VARIABLES.EXPECTED_MESSAGES
@@ -34698,13 +34737,14 @@ function validateTemplateVariables(content, source2) {
34698
34737
  const variablePattern = /\{\{\s*([a-zA-Z0-9_]+)\s*\}\}/g;
34699
34738
  const foundVariables = /* @__PURE__ */ new Set();
34700
34739
  const invalidVariables = [];
34701
- let match;
34702
- while ((match = variablePattern.exec(content)) !== null) {
34740
+ let match = variablePattern.exec(content);
34741
+ while (match !== null) {
34703
34742
  const varName = match[1];
34704
34743
  foundVariables.add(varName);
34705
34744
  if (!VALID_TEMPLATE_VARIABLES.has(varName)) {
34706
34745
  invalidVariables.push(varName);
34707
34746
  }
34747
+ match = variablePattern.exec(content);
34708
34748
  }
34709
34749
  const hasCandidateAnswer = foundVariables.has(TEMPLATE_VARIABLES.CANDIDATE_ANSWER);
34710
34750
  const hasExpectedMessages = foundVariables.has(TEMPLATE_VARIABLES.EXPECTED_MESSAGES);
@@ -35131,7 +35171,14 @@ function needsRoleMarkers(messages, processedSegmentsByMessage) {
35131
35171
  return messagesWithContent > 1;
35132
35172
  }
35133
35173
  function buildChatPromptFromSegments(options) {
35134
- const { messages, segmentsByMessage, guidelinePatterns, guidelineContent, systemPrompt, mode = "lm" } = options;
35174
+ const {
35175
+ messages,
35176
+ segmentsByMessage,
35177
+ guidelinePatterns,
35178
+ guidelineContent,
35179
+ systemPrompt,
35180
+ mode = "lm"
35181
+ } = options;
35135
35182
  if (messages.length === 0) {
35136
35183
  return void 0;
35137
35184
  }
@@ -35211,7 +35258,6 @@ function logWarning4(message) {
35211
35258
  var ANSI_YELLOW6 = "\x1B[33m";
35212
35259
  var ANSI_RED = "\x1B[31m";
35213
35260
  var ANSI_RESET6 = "\x1B[0m";
35214
- var SCHEMA_EVAL_V2 = "agentv-eval-v2";
35215
35261
  async function readTestSuiteMetadata(testFilePath) {
35216
35262
  try {
35217
35263
  const absolutePath = path62.resolve(testFilePath);
@@ -35242,12 +35288,6 @@ async function loadEvalCases(evalFilePath, repoRoot, options) {
35242
35288
  const datasetNameFromSuite = asString5(suite.dataset)?.trim();
35243
35289
  const fallbackDataset = path62.basename(absoluteTestPath).replace(/\.ya?ml$/i, "") || "eval";
35244
35290
  const datasetName = datasetNameFromSuite && datasetNameFromSuite.length > 0 ? datasetNameFromSuite : fallbackDataset;
35245
- const schema = suite.$schema;
35246
- if (schema !== SCHEMA_EVAL_V2) {
35247
- const message = typeof schema === "string" ? `Invalid $schema value '${schema}' in ${evalFilePath}. Expected '${SCHEMA_EVAL_V2}'` : `Missing required field '$schema' in ${evalFilePath}.
35248
- Please add '$schema: ${SCHEMA_EVAL_V2}' at the top of the file.`;
35249
- throw new Error(message);
35250
- }
35251
35291
  const rawTestcases = suite.evalcases;
35252
35292
  if (!Array.isArray(rawTestcases)) {
35253
35293
  throw new Error(`Invalid test file format: ${evalFilePath} - missing 'evalcases' field`);
@@ -35271,11 +35311,15 @@ Please add '$schema: ${SCHEMA_EVAL_V2}' at the top of the file.`;
35271
35311
  const inputMessagesValue = evalcase.input_messages;
35272
35312
  const expectedMessagesValue = evalcase.expected_messages;
35273
35313
  if (!id || !outcome || !Array.isArray(inputMessagesValue)) {
35274
- logError(`Skipping incomplete eval case: ${id ?? "unknown"}. Missing required fields: id, outcome, and/or input_messages`);
35314
+ logError(
35315
+ `Skipping incomplete eval case: ${id ?? "unknown"}. Missing required fields: id, outcome, and/or input_messages`
35316
+ );
35275
35317
  continue;
35276
35318
  }
35277
35319
  const hasExpectedMessages = Array.isArray(expectedMessagesValue) && expectedMessagesValue.length > 0;
35278
- const inputMessages = inputMessagesValue.filter((msg) => isTestMessage(msg));
35320
+ const inputMessages = inputMessagesValue.filter(
35321
+ (msg) => isTestMessage(msg)
35322
+ );
35279
35323
  const expectedMessages = hasExpectedMessages ? expectedMessagesValue.filter((msg) => isTestMessage(msg)) : [];
35280
35324
  if (hasExpectedMessages && expectedMessages.length === 0) {
35281
35325
  logError(`No valid expected message found for eval case: ${id}`);
@@ -35982,9 +36026,7 @@ function buildPromptDocument(request, inputFiles, options) {
35982
36026
  options?.guidelineOverrides
35983
36027
  );
35984
36028
  const inputFilesList = collectInputFiles(inputFiles);
35985
- const nonGuidelineInputFiles = inputFilesList.filter(
35986
- (file2) => !guidelineFiles.includes(file2)
35987
- );
36029
+ const nonGuidelineInputFiles = inputFilesList.filter((file2) => !guidelineFiles.includes(file2));
35988
36030
  const prereadBlock = buildMandatoryPrereadBlock(guidelineFiles, nonGuidelineInputFiles);
35989
36031
  if (prereadBlock.length > 0) {
35990
36032
  parts.push("\n", prereadBlock);
@@ -36154,7 +36196,15 @@ var CodexProvider = class {
36154
36196
  return path9.resolve(this.config.cwd);
36155
36197
  }
36156
36198
  buildCodexArgs() {
36157
- const args = ["--ask-for-approval", "never", "exec", "--json", "--color", "never", "--skip-git-repo-check"];
36199
+ const args = [
36200
+ "--ask-for-approval",
36201
+ "never",
36202
+ "exec",
36203
+ "--json",
36204
+ "--color",
36205
+ "never",
36206
+ "--skip-git-repo-check"
36207
+ ];
36158
36208
  if (this.config.args && this.config.args.length > 0) {
36159
36209
  args.push(...this.config.args);
36160
36210
  }
@@ -36889,9 +36939,7 @@ function buildPromptDocument2(request, attachments, guidelinePatterns) {
36889
36939
  }
36890
36940
  const guidelineFiles = collectGuidelineFiles2(attachments, guidelinePatterns);
36891
36941
  const attachmentFiles = collectAttachmentFiles(attachments);
36892
- const nonGuidelineAttachments = attachmentFiles.filter(
36893
- (file2) => !guidelineFiles.includes(file2)
36894
- );
36942
+ const nonGuidelineAttachments = attachmentFiles.filter((file2) => !guidelineFiles.includes(file2));
36895
36943
  const prereadBlock = buildMandatoryPrereadBlock2(guidelineFiles, nonGuidelineAttachments);
36896
36944
  if (prereadBlock.length > 0) {
36897
36945
  parts.push("\n", prereadBlock);
@@ -37000,8 +37048,10 @@ async function ensureVSCodeSubagents(options) {
37000
37048
  if (result.skippedExisting.length > 0) {
37001
37049
  console.log(`Reusing ${result.skippedExisting.length} existing unlocked subagent(s)`);
37002
37050
  }
37003
- console.log(`
37004
- total unlocked subagents available: ${result.created.length + result.skippedExisting.length}`);
37051
+ console.log(
37052
+ `
37053
+ total unlocked subagents available: ${result.created.length + result.skippedExisting.length}`
37054
+ );
37005
37055
  }
37006
37056
  return {
37007
37057
  provisioned: true,
@@ -37021,27 +37071,6 @@ total unlocked subagents available: ${result.created.length + result.skippedExis
37021
37071
  function isRecord(value) {
37022
37072
  return typeof value === "object" && value !== null && !Array.isArray(value);
37023
37073
  }
37024
- function checkSchema(parsed, absolutePath) {
37025
- const schema = parsed.$schema;
37026
- if (schema === void 0) {
37027
- throw new Error(
37028
- `Missing $schema field in targets.yaml at ${absolutePath}.
37029
- Please add '$schema: ${TARGETS_SCHEMA_V2}' at the top of the file.`
37030
- );
37031
- }
37032
- if (typeof schema !== "string") {
37033
- throw new Error(
37034
- `Invalid $schema field in targets.yaml at ${absolutePath}.
37035
- Expected a string value '${TARGETS_SCHEMA_V2}'.`
37036
- );
37037
- }
37038
- if (schema !== TARGETS_SCHEMA_V2) {
37039
- throw new Error(
37040
- `Invalid $schema '${schema}' in targets.yaml at ${absolutePath}.
37041
- Expected '${TARGETS_SCHEMA_V2}'.`
37042
- );
37043
- }
37044
- }
37045
37074
  function extractTargetsArray(parsed, absolutePath) {
37046
37075
  const targets = parsed.targets;
37047
37076
  if (!Array.isArray(targets)) {
@@ -37056,7 +37085,9 @@ function assertTargetDefinition(value, index, filePath) {
37056
37085
  const name16 = value.name;
37057
37086
  const provider = value.provider;
37058
37087
  if (typeof name16 !== "string" || name16.trim().length === 0) {
37059
- throw new Error(`targets.yaml entry at index ${index} in ${filePath} is missing a valid 'name'`);
37088
+ throw new Error(
37089
+ `targets.yaml entry at index ${index} in ${filePath} is missing a valid 'name'`
37090
+ );
37060
37091
  }
37061
37092
  if (typeof provider !== "string" || provider.trim().length === 0) {
37062
37093
  throw new Error(`targets.yaml entry '${name16}' in ${filePath} is missing a valid 'provider'`);
@@ -37079,11 +37110,12 @@ async function readTargetDefinitions(filePath) {
37079
37110
  const raw = await readFile6(absolutePath, "utf8");
37080
37111
  const parsed = parse32(raw);
37081
37112
  if (!isRecord(parsed)) {
37082
- throw new Error(`targets.yaml at ${absolutePath} must be a YAML object with '$schema' and 'targets' fields`);
37113
+ throw new Error(`targets.yaml at ${absolutePath} must be a YAML object with a 'targets' field`);
37083
37114
  }
37084
- checkSchema(parsed, absolutePath);
37085
37115
  const targets = extractTargetsArray(parsed, absolutePath);
37086
- const definitions = targets.map((entry, index) => assertTargetDefinition(entry, index, absolutePath));
37116
+ const definitions = targets.map(
37117
+ (entry, index) => assertTargetDefinition(entry, index, absolutePath)
37118
+ );
37087
37119
  return definitions;
37088
37120
  }
37089
37121
  function listTargetNames(definitions) {
@@ -37152,7 +37184,11 @@ var LlmJudgeEvaluator = class {
37152
37184
  const formattedQuestion = context.promptInputs.question && context.promptInputs.question.trim().length > 0 ? context.promptInputs.question : context.evalCase.question;
37153
37185
  const variables = {
37154
37186
  [TEMPLATE_VARIABLES.INPUT_MESSAGES]: JSON.stringify(context.evalCase.input_segments, null, 2),
37155
- [TEMPLATE_VARIABLES.EXPECTED_MESSAGES]: JSON.stringify(context.evalCase.expected_segments, null, 2),
37187
+ [TEMPLATE_VARIABLES.EXPECTED_MESSAGES]: JSON.stringify(
37188
+ context.evalCase.expected_segments,
37189
+ null,
37190
+ 2
37191
+ ),
37156
37192
  [TEMPLATE_VARIABLES.CANDIDATE_ANSWER]: context.candidate.trim(),
37157
37193
  [TEMPLATE_VARIABLES.REFERENCE_ANSWER]: (context.evalCase.reference_answer ?? "").trim(),
37158
37194
  [TEMPLATE_VARIABLES.EXPECTED_OUTCOME]: context.evalCase.expected_outcome.trim(),
@@ -37424,6 +37460,9 @@ var Queue = class {
37424
37460
  }
37425
37461
  this.#head = this.#head.next;
37426
37462
  this.#size--;
37463
+ if (!this.#head) {
37464
+ this.#tail = void 0;
37465
+ }
37427
37466
  return current.value;
37428
37467
  }
37429
37468
  peek() {
@@ -37626,7 +37665,9 @@ async function runEvaluation(options) {
37626
37665
  } catch (error40) {
37627
37666
  if (verbose) {
37628
37667
  const message = error40 instanceof Error ? error40.message : String(error40);
37629
- console.warn(`Provider batch execution failed, falling back to per-case dispatch: ${message}`);
37668
+ console.warn(
37669
+ `Provider batch execution failed, falling back to per-case dispatch: ${message}`
37670
+ );
37630
37671
  }
37631
37672
  }
37632
37673
  }
@@ -37790,7 +37831,14 @@ async function runBatchEvaluation(options) {
37790
37831
  agentTimeoutMs
37791
37832
  });
37792
37833
  } catch (error40) {
37793
- const errorResult = buildErrorResult(evalCase, target.name, nowFn(), error40, promptInputs, provider);
37834
+ const errorResult = buildErrorResult(
37835
+ evalCase,
37836
+ target.name,
37837
+ nowFn(),
37838
+ error40,
37839
+ promptInputs,
37840
+ provider
37841
+ );
37794
37842
  results.push(errorResult);
37795
37843
  if (onResult) {
37796
37844
  await onResult(errorResult);
@@ -37968,7 +38016,18 @@ async function evaluateCandidate(options) {
37968
38016
  };
37969
38017
  }
37970
38018
  async function runEvaluatorsForCase(options) {
37971
- const { evalCase, candidate, target, provider, evaluators, attempt, promptInputs, now, judgeProvider, agentTimeoutMs } = options;
38019
+ const {
38020
+ evalCase,
38021
+ candidate,
38022
+ target,
38023
+ provider,
38024
+ evaluators,
38025
+ attempt,
38026
+ promptInputs,
38027
+ now,
38028
+ judgeProvider,
38029
+ agentTimeoutMs
38030
+ } = options;
37972
38031
  if (evalCase.evaluators && evalCase.evaluators.length > 0) {
37973
38032
  return runEvaluatorList({
37974
38033
  evalCase,
@@ -38069,7 +38128,6 @@ async function runEvaluatorList(options) {
38069
38128
  reasoning: score2.reasoning,
38070
38129
  evaluator_provider_request: score2.evaluatorRawRequest
38071
38130
  });
38072
- continue;
38073
38131
  }
38074
38132
  } catch (error40) {
38075
38133
  const message = error40 instanceof Error ? error40.message : String(error40);
@@ -38080,7 +38138,11 @@ async function runEvaluatorList(options) {
38080
38138
  expectedAspectCount: 1,
38081
38139
  reasoning: message
38082
38140
  };
38083
- scored.push({ score: fallbackScore, name: evaluator.name ?? "unknown", type: evaluator.type ?? "unknown" });
38141
+ scored.push({
38142
+ score: fallbackScore,
38143
+ name: evaluator.name ?? "unknown",
38144
+ type: evaluator.type ?? "unknown"
38145
+ });
38084
38146
  evaluatorResults.push({
38085
38147
  name: evaluator.name ?? "unknown",
38086
38148
  type: evaluator.type ?? "unknown",
@@ -38094,7 +38156,10 @@ async function runEvaluatorList(options) {
38094
38156
  const aggregateScore = scored.length > 0 ? scored.reduce((total, entry) => total + entry.score.score, 0) / scored.length : 0;
38095
38157
  const hits = scored.flatMap((entry) => entry.score.hits);
38096
38158
  const misses = scored.flatMap((entry) => entry.score.misses);
38097
- const expectedAspectCount = scored.reduce((total, entry) => total + (entry.score.expectedAspectCount ?? 0), 0);
38159
+ const expectedAspectCount = scored.reduce(
38160
+ (total, entry) => total + (entry.score.expectedAspectCount ?? 0),
38161
+ 0
38162
+ );
38098
38163
  const rawAspects = scored.flatMap((entry) => entry.score.rawAspects ?? []);
38099
38164
  const reasoningParts = scored.map((entry) => entry.score.reasoning ? `${entry.name}: ${entry.score.reasoning}` : void 0).filter(isNonEmptyString2);
38100
38165
  const reasoning = reasoningParts.length > 0 ? reasoningParts.join(" | ") : void 0;
@@ -38109,7 +38174,18 @@ async function runEvaluatorList(options) {
38109
38174
  return { score, evaluatorResults };
38110
38175
  }
38111
38176
  async function runLlmJudgeEvaluator(options) {
38112
- const { config: config2, evalCase, candidate, target, provider, evaluatorRegistry, attempt, promptInputs, now, judgeProvider } = options;
38177
+ const {
38178
+ config: config2,
38179
+ evalCase,
38180
+ candidate,
38181
+ target,
38182
+ provider,
38183
+ evaluatorRegistry,
38184
+ attempt,
38185
+ promptInputs,
38186
+ now,
38187
+ judgeProvider
38188
+ } = options;
38113
38189
  const customPrompt = await resolveCustomPrompt(config2);
38114
38190
  return evaluatorRegistry.llm_judge.evaluate({
38115
38191
  evalCase,
@@ -38280,17 +38356,11 @@ function createAgentKernel() {
38280
38356
  return { status: "stub" };
38281
38357
  }
38282
38358
 
38283
- // src/commands/eval/run-eval.ts
38284
- import { constants as constants6 } from "node:fs";
38285
- import { access as access6, mkdir as mkdir6 } from "node:fs/promises";
38286
- import path18 from "node:path";
38287
- import { pathToFileURL } from "node:url";
38288
-
38289
38359
  // src/commands/eval/env.ts
38290
- import { config as loadDotenv } from "dotenv";
38291
38360
  import { constants as constants4 } from "node:fs";
38292
38361
  import { access as access4 } from "node:fs/promises";
38293
38362
  import path13 from "node:path";
38363
+ import { config as loadDotenv } from "dotenv";
38294
38364
  function uniqueDirs(directories) {
38295
38365
  const seen = /* @__PURE__ */ new Set();
38296
38366
  const result = [];
@@ -38333,11 +38403,7 @@ async function loadEnvFromHierarchy(options) {
38333
38403
  const { testFilePath, repoRoot, verbose } = options;
38334
38404
  const testDir = path13.dirname(path13.resolve(testFilePath));
38335
38405
  const cwd = process.cwd();
38336
- const searchDirs = uniqueDirs([
38337
- ...collectAncestorDirectories(testDir, repoRoot),
38338
- repoRoot,
38339
- cwd
38340
- ]);
38406
+ const searchDirs = uniqueDirs([...collectAncestorDirectories(testDir, repoRoot), repoRoot, cwd]);
38341
38407
  for (const dir of searchDirs) {
38342
38408
  const candidate = path13.join(dir, ".env");
38343
38409
  if (await fileExists4(candidate)) {
@@ -38354,7 +38420,13 @@ async function loadEnvFromHierarchy(options) {
38354
38420
  return void 0;
38355
38421
  }
38356
38422
 
38357
- // ../../node_modules/.pnpm/async-mutex@0.5.0/node_modules/async-mutex/index.mjs
38423
+ // src/commands/eval/jsonl-writer.ts
38424
+ import { createWriteStream as createWriteStream2 } from "node:fs";
38425
+ import { mkdir as mkdir4 } from "node:fs/promises";
38426
+ import path14 from "node:path";
38427
+ import { finished } from "node:stream/promises";
38428
+
38429
+ // ../../node_modules/.bun/async-mutex@0.5.0/node_modules/async-mutex/index.mjs
38358
38430
  var E_TIMEOUT = new Error("timeout while waiting for mutex to become available");
38359
38431
  var E_ALREADY_LOCKED = new Error("mutex already locked");
38360
38432
  var E_CANCELED = new Error("request for lock canceled");
@@ -38561,10 +38633,6 @@ var Mutex = class {
38561
38633
  };
38562
38634
 
38563
38635
  // src/commands/eval/jsonl-writer.ts
38564
- import { createWriteStream as createWriteStream2 } from "node:fs";
38565
- import { mkdir as mkdir4 } from "node:fs/promises";
38566
- import path14 from "node:path";
38567
- import { finished } from "node:stream/promises";
38568
38636
  var JsonlWriter = class _JsonlWriter {
38569
38637
  stream;
38570
38638
  mutex = new Mutex();
@@ -38733,7 +38801,9 @@ var ProgressDisplay = class {
38733
38801
  if (progress.status === "completed") {
38734
38802
  console.log(`\u2713 Eval ${progress.evalId}${targetSuffix} completed`);
38735
38803
  } else if (progress.status === "failed") {
38736
- console.log(`\u2717 Eval ${progress.evalId}${targetSuffix} failed${progress.error ? `: ${progress.error}` : ""}`);
38804
+ console.log(
38805
+ `\u2717 Eval ${progress.evalId}${targetSuffix} failed${progress.error ? `: ${progress.error}` : ""}`
38806
+ );
38737
38807
  }
38738
38808
  }
38739
38809
  }
@@ -38860,7 +38930,8 @@ var ProgressDisplay = class {
38860
38930
  (a, b) => a.workerId - b.workerId
38861
38931
  );
38862
38932
  for (const worker of sortedWorkers) {
38863
- this.write(this.formatWorkerLine(worker) + "\n");
38933
+ this.write(`${this.formatWorkerLine(worker)}
38934
+ `);
38864
38935
  }
38865
38936
  this.write("\n");
38866
38937
  }
@@ -38976,11 +39047,11 @@ function formatEvaluationSummary(summary) {
38976
39047
  lines.push("\n==================================================");
38977
39048
  lines.push("ERRORS");
38978
39049
  lines.push("==================================================");
38979
- summary.errors.forEach((error40) => {
39050
+ for (const error40 of summary.errors) {
38980
39051
  lines.push(`
38981
39052
  \u274C ${error40.evalId}`);
38982
39053
  lines.push(` ${error40.error}`);
38983
- });
39054
+ }
38984
39055
  lines.push("");
38985
39056
  }
38986
39057
  lines.push("\n==================================================");
@@ -39014,6 +39085,11 @@ function formatEvaluationSummary(summary) {
39014
39085
  return lines.join("\n");
39015
39086
  }
39016
39087
 
39088
+ // src/commands/eval/targets.ts
39089
+ import { constants as constants5 } from "node:fs";
39090
+ import { access as access5 } from "node:fs/promises";
39091
+ import path17 from "node:path";
39092
+
39017
39093
  // ../../packages/core/dist/evaluation/validation/index.js
39018
39094
  import { readFile as readFile7 } from "node:fs/promises";
39019
39095
  import { parse as parse6 } from "yaml";
@@ -39028,7 +39104,7 @@ import { parse as parse42 } from "yaml";
39028
39104
  import { readFile as readFile52 } from "node:fs/promises";
39029
39105
  import path33 from "node:path";
39030
39106
  import { parse as parse52 } from "yaml";
39031
- var SCHEMA_EVAL_V22 = "agentv-eval-v2";
39107
+ var SCHEMA_EVAL_V2 = "agentv-eval-v2";
39032
39108
  var SCHEMA_TARGETS_V2 = "agentv-targets-v2.2";
39033
39109
  var SCHEMA_CONFIG_V22 = "agentv-config-v2";
39034
39110
  async function detectFileType(filePath) {
@@ -39039,12 +39115,12 @@ async function detectFileType(filePath) {
39039
39115
  return "unknown";
39040
39116
  }
39041
39117
  const record2 = parsed;
39042
- const schema = record2["$schema"];
39118
+ const schema = record2.$schema;
39043
39119
  if (typeof schema !== "string") {
39044
39120
  return "unknown";
39045
39121
  }
39046
39122
  switch (schema) {
39047
- case SCHEMA_EVAL_V22:
39123
+ case SCHEMA_EVAL_V2:
39048
39124
  return "eval";
39049
39125
  case SCHEMA_TARGETS_V2:
39050
39126
  return "targets";
@@ -39057,7 +39133,6 @@ async function detectFileType(filePath) {
39057
39133
  return "unknown";
39058
39134
  }
39059
39135
  }
39060
- var SCHEMA_EVAL_V222 = "agentv-eval-v2";
39061
39136
  function isObject2(value) {
39062
39137
  return typeof value === "object" && value !== null && !Array.isArray(value);
39063
39138
  }
@@ -39094,17 +39169,7 @@ async function validateEvalFile(filePath) {
39094
39169
  errors
39095
39170
  };
39096
39171
  }
39097
- const schema = parsed["$schema"];
39098
- if (schema !== SCHEMA_EVAL_V222) {
39099
- const message = typeof schema === "string" ? `Invalid $schema value '${schema}'. Expected '${SCHEMA_EVAL_V222}'` : `Missing required field '$schema'. Expected '${SCHEMA_EVAL_V222}'`;
39100
- errors.push({
39101
- severity: "error",
39102
- filePath: absolutePath,
39103
- location: "$schema",
39104
- message
39105
- });
39106
- }
39107
- const evalcases = parsed["evalcases"];
39172
+ const evalcases = parsed.evalcases;
39108
39173
  if (!Array.isArray(evalcases)) {
39109
39174
  errors.push({
39110
39175
  severity: "error",
@@ -39131,7 +39196,7 @@ async function validateEvalFile(filePath) {
39131
39196
  });
39132
39197
  continue;
39133
39198
  }
39134
- const id = evalCase["id"];
39199
+ const id = evalCase.id;
39135
39200
  if (typeof id !== "string" || id.trim().length === 0) {
39136
39201
  errors.push({
39137
39202
  severity: "error",
@@ -39140,7 +39205,7 @@ async function validateEvalFile(filePath) {
39140
39205
  message: "Missing or invalid 'id' field (must be a non-empty string)"
39141
39206
  });
39142
39207
  }
39143
- const outcome = evalCase["outcome"];
39208
+ const outcome = evalCase.outcome;
39144
39209
  if (typeof outcome !== "string" || outcome.trim().length === 0) {
39145
39210
  errors.push({
39146
39211
  severity: "error",
@@ -39149,7 +39214,7 @@ async function validateEvalFile(filePath) {
39149
39214
  message: "Missing or invalid 'outcome' field (must be a non-empty string)"
39150
39215
  });
39151
39216
  }
39152
- const inputMessages = evalCase["input_messages"];
39217
+ const inputMessages = evalCase.input_messages;
39153
39218
  if (!Array.isArray(inputMessages)) {
39154
39219
  errors.push({
39155
39220
  severity: "error",
@@ -39160,7 +39225,7 @@ async function validateEvalFile(filePath) {
39160
39225
  } else {
39161
39226
  validateMessages(inputMessages, `${location}.input_messages`, absolutePath, errors);
39162
39227
  }
39163
- const expectedMessages = evalCase["expected_messages"];
39228
+ const expectedMessages = evalCase.expected_messages;
39164
39229
  if (expectedMessages !== void 0 && !Array.isArray(expectedMessages)) {
39165
39230
  errors.push({
39166
39231
  severity: "error",
@@ -39192,7 +39257,7 @@ function validateMessages(messages, location, filePath, errors) {
39192
39257
  });
39193
39258
  continue;
39194
39259
  }
39195
- const role = message["role"];
39260
+ const role = message.role;
39196
39261
  const validRoles = ["system", "user", "assistant"];
39197
39262
  if (!validRoles.includes(role)) {
39198
39263
  errors.push({
@@ -39202,7 +39267,7 @@ function validateMessages(messages, location, filePath, errors) {
39202
39267
  message: `Invalid role '${role}'. Must be one of: ${validRoles.join(", ")}`
39203
39268
  });
39204
39269
  }
39205
- const content = message["content"];
39270
+ const content = message.content;
39206
39271
  if (typeof content === "string") {
39207
39272
  validateContentForRoleMarkers(content, `${msgLocation}.content`, filePath, errors);
39208
39273
  } else if (Array.isArray(content)) {
@@ -39212,7 +39277,7 @@ function validateMessages(messages, location, filePath, errors) {
39212
39277
  if (typeof contentItem === "string") {
39213
39278
  validateContentForRoleMarkers(contentItem, contentLocation, filePath, errors);
39214
39279
  } else if (isObject2(contentItem)) {
39215
- const type = contentItem["type"];
39280
+ const type = contentItem.type;
39216
39281
  if (typeof type !== "string") {
39217
39282
  errors.push({
39218
39283
  severity: "error",
@@ -39222,7 +39287,7 @@ function validateMessages(messages, location, filePath, errors) {
39222
39287
  });
39223
39288
  }
39224
39289
  if (type === "text") {
39225
- const value = contentItem["value"];
39290
+ const value = contentItem.value;
39226
39291
  if (typeof value !== "string") {
39227
39292
  errors.push({
39228
39293
  severity: "error",
@@ -39269,10 +39334,7 @@ function validateContentForRoleMarkers(content, location, filePath, errors) {
39269
39334
  function isObject22(value) {
39270
39335
  return typeof value === "object" && value !== null && !Array.isArray(value);
39271
39336
  }
39272
- var COMMON_SETTINGS = /* @__PURE__ */ new Set([
39273
- "provider_batching",
39274
- "providerBatching"
39275
- ]);
39337
+ var COMMON_SETTINGS = /* @__PURE__ */ new Set(["provider_batching", "providerBatching"]);
39276
39338
  var RETRY_SETTINGS = /* @__PURE__ */ new Set([
39277
39339
  "max_retries",
39278
39340
  "maxRetries",
@@ -39444,7 +39506,7 @@ async function validateTargetsFile(filePath) {
39444
39506
  };
39445
39507
  }
39446
39508
  function validateCliSettings(target, absolutePath2, location, errors2) {
39447
- const commandTemplate = target["command_template"] ?? target["commandTemplate"];
39509
+ const commandTemplate = target.command_template ?? target.commandTemplate;
39448
39510
  if (typeof commandTemplate !== "string" || commandTemplate.trim().length === 0) {
39449
39511
  errors2.push({
39450
39512
  severity: "error",
@@ -39453,9 +39515,14 @@ async function validateTargetsFile(filePath) {
39453
39515
  message: "CLI provider requires 'commandTemplate' as a non-empty string"
39454
39516
  });
39455
39517
  } else {
39456
- recordUnknownPlaceholders(commandTemplate, absolutePath2, `${location}.commandTemplate`, errors2);
39518
+ recordUnknownPlaceholders(
39519
+ commandTemplate,
39520
+ absolutePath2,
39521
+ `${location}.commandTemplate`,
39522
+ errors2
39523
+ );
39457
39524
  }
39458
- const attachmentsFormat = target["attachments_format"] ?? target["attachmentsFormat"];
39525
+ const attachmentsFormat = target.attachments_format ?? target.attachmentsFormat;
39459
39526
  if (attachmentsFormat !== void 0 && typeof attachmentsFormat !== "string") {
39460
39527
  errors2.push({
39461
39528
  severity: "error",
@@ -39464,7 +39531,7 @@ async function validateTargetsFile(filePath) {
39464
39531
  message: "'attachmentsFormat' must be a string when provided"
39465
39532
  });
39466
39533
  }
39467
- const filesFormat = target["files_format"] ?? target["filesFormat"];
39534
+ const filesFormat = target.files_format ?? target.filesFormat;
39468
39535
  if (filesFormat !== void 0 && typeof filesFormat !== "string") {
39469
39536
  errors2.push({
39470
39537
  severity: "error",
@@ -39473,7 +39540,7 @@ async function validateTargetsFile(filePath) {
39473
39540
  message: "'filesFormat' must be a string when provided"
39474
39541
  });
39475
39542
  }
39476
- const cwd = target["cwd"];
39543
+ const cwd = target.cwd;
39477
39544
  if (cwd !== void 0 && typeof cwd !== "string") {
39478
39545
  errors2.push({
39479
39546
  severity: "error",
@@ -39482,7 +39549,7 @@ async function validateTargetsFile(filePath) {
39482
39549
  message: "'cwd' must be a string when provided"
39483
39550
  });
39484
39551
  }
39485
- const timeoutSeconds = target["timeout_seconds"] ?? target["timeoutSeconds"];
39552
+ const timeoutSeconds = target.timeout_seconds ?? target.timeoutSeconds;
39486
39553
  if (timeoutSeconds !== void 0) {
39487
39554
  const numericTimeout = Number(timeoutSeconds);
39488
39555
  if (!Number.isFinite(numericTimeout) || numericTimeout <= 0) {
@@ -39494,7 +39561,7 @@ async function validateTargetsFile(filePath) {
39494
39561
  });
39495
39562
  }
39496
39563
  }
39497
- const healthcheck = target["healthcheck"];
39564
+ const healthcheck = target.healthcheck;
39498
39565
  if (healthcheck !== void 0) {
39499
39566
  validateCliHealthcheck(healthcheck, absolutePath2, `${location}.healthcheck`, errors2);
39500
39567
  }
@@ -39509,7 +39576,7 @@ async function validateTargetsFile(filePath) {
39509
39576
  });
39510
39577
  return;
39511
39578
  }
39512
- const type = healthcheck["type"];
39579
+ const type = healthcheck.type;
39513
39580
  if (type !== "http" && type !== "command") {
39514
39581
  errors2.push({
39515
39582
  severity: "error",
@@ -39519,7 +39586,7 @@ async function validateTargetsFile(filePath) {
39519
39586
  });
39520
39587
  return;
39521
39588
  }
39522
- const timeoutSeconds = healthcheck["timeout_seconds"] ?? healthcheck["timeoutSeconds"];
39589
+ const timeoutSeconds = healthcheck.timeout_seconds ?? healthcheck.timeoutSeconds;
39523
39590
  if (timeoutSeconds !== void 0) {
39524
39591
  const numericTimeout = Number(timeoutSeconds);
39525
39592
  if (!Number.isFinite(numericTimeout) || numericTimeout <= 0) {
@@ -39532,7 +39599,7 @@ async function validateTargetsFile(filePath) {
39532
39599
  }
39533
39600
  }
39534
39601
  if (type === "http") {
39535
- const url2 = healthcheck["url"];
39602
+ const url2 = healthcheck.url;
39536
39603
  if (typeof url2 !== "string" || url2.trim().length === 0) {
39537
39604
  errors2.push({
39538
39605
  severity: "error",
@@ -39543,7 +39610,7 @@ async function validateTargetsFile(filePath) {
39543
39610
  }
39544
39611
  return;
39545
39612
  }
39546
- const commandTemplate = healthcheck["command_template"] ?? healthcheck["commandTemplate"];
39613
+ const commandTemplate = healthcheck.command_template ?? healthcheck.commandTemplate;
39547
39614
  if (typeof commandTemplate !== "string" || commandTemplate.trim().length === 0) {
39548
39615
  errors2.push({
39549
39616
  severity: "error",
@@ -39552,9 +39619,14 @@ async function validateTargetsFile(filePath) {
39552
39619
  message: "healthcheck.commandTemplate must be a non-empty string for command checks"
39553
39620
  });
39554
39621
  } else {
39555
- recordUnknownPlaceholders(commandTemplate, absolutePath2, `${location}.commandTemplate`, errors2);
39622
+ recordUnknownPlaceholders(
39623
+ commandTemplate,
39624
+ absolutePath2,
39625
+ `${location}.commandTemplate`,
39626
+ errors2
39627
+ );
39556
39628
  }
39557
- const cwd = healthcheck["cwd"];
39629
+ const cwd = healthcheck.cwd;
39558
39630
  if (cwd !== void 0 && typeof cwd !== "string") {
39559
39631
  errors2.push({
39560
39632
  severity: "error",
@@ -39601,17 +39673,7 @@ async function validateTargetsFile(filePath) {
39601
39673
  errors
39602
39674
  };
39603
39675
  }
39604
- const schema = parsed["$schema"];
39605
- if (schema !== TARGETS_SCHEMA_V2) {
39606
- const message = typeof schema === "string" ? `Invalid $schema value '${schema}'. Expected '${TARGETS_SCHEMA_V2}'` : `Missing required field '$schema'. Expected '${TARGETS_SCHEMA_V2}'`;
39607
- errors.push({
39608
- severity: "error",
39609
- filePath: absolutePath,
39610
- location: "$schema",
39611
- message
39612
- });
39613
- }
39614
- const targets = parsed["targets"];
39676
+ const targets = parsed.targets;
39615
39677
  if (!Array.isArray(targets)) {
39616
39678
  errors.push({
39617
39679
  severity: "error",
@@ -39639,7 +39701,7 @@ async function validateTargetsFile(filePath) {
39639
39701
  });
39640
39702
  continue;
39641
39703
  }
39642
- const name16 = target["name"];
39704
+ const name16 = target.name;
39643
39705
  if (typeof name16 !== "string" || name16.trim().length === 0) {
39644
39706
  errors.push({
39645
39707
  severity: "error",
@@ -39648,7 +39710,7 @@ async function validateTargetsFile(filePath) {
39648
39710
  message: "Missing or invalid 'name' field (must be a non-empty string)"
39649
39711
  });
39650
39712
  }
39651
- const provider = target["provider"];
39713
+ const provider = target.provider;
39652
39714
  const providerValue = typeof provider === "string" ? provider.trim().toLowerCase() : void 0;
39653
39715
  if (typeof provider !== "string" || provider.trim().length === 0) {
39654
39716
  errors.push({
@@ -39671,7 +39733,7 @@ async function validateTargetsFile(filePath) {
39671
39733
  if (typeof provider === "string") {
39672
39734
  validateUnknownSettings(target, provider, absolutePath, location, errors);
39673
39735
  }
39674
- const judgeTarget = target["judge_target"];
39736
+ const judgeTarget = target.judge_target;
39675
39737
  if (judgeTarget !== void 0 && typeof judgeTarget !== "string") {
39676
39738
  errors.push({
39677
39739
  severity: "error",
@@ -39703,7 +39765,7 @@ async function validateConfigFile(filePath) {
39703
39765
  return { valid: false, filePath, fileType: "config", errors };
39704
39766
  }
39705
39767
  const config2 = parsed;
39706
- const schema = config2["$schema"];
39768
+ const schema = config2.$schema;
39707
39769
  if (schema !== SCHEMA_CONFIG_V222) {
39708
39770
  const message = typeof schema === "string" ? `Invalid $schema value '${schema}'. Expected '${SCHEMA_CONFIG_V222}'` : `Missing required field '$schema'. Please add '$schema: ${SCHEMA_CONFIG_V222}' at the top of the file.`;
39709
39771
  errors.push({
@@ -39713,7 +39775,7 @@ async function validateConfigFile(filePath) {
39713
39775
  message
39714
39776
  });
39715
39777
  }
39716
- const guidelinePatterns = config2["guideline_patterns"];
39778
+ const guidelinePatterns = config2.guideline_patterns;
39717
39779
  if (guidelinePatterns !== void 0) {
39718
39780
  if (!Array.isArray(guidelinePatterns)) {
39719
39781
  errors.push({
@@ -39788,7 +39850,7 @@ async function validateFileReferences(evalFilePath) {
39788
39850
  if (!isObject3(parsed)) {
39789
39851
  return errors;
39790
39852
  }
39791
- const evalcases = parsed["evalcases"];
39853
+ const evalcases = parsed.evalcases;
39792
39854
  if (!Array.isArray(evalcases)) {
39793
39855
  return errors;
39794
39856
  }
@@ -39797,13 +39859,25 @@ async function validateFileReferences(evalFilePath) {
39797
39859
  if (!isObject3(evalCase)) {
39798
39860
  continue;
39799
39861
  }
39800
- const inputMessages = evalCase["input_messages"];
39862
+ const inputMessages = evalCase.input_messages;
39801
39863
  if (Array.isArray(inputMessages)) {
39802
- await validateMessagesFileRefs(inputMessages, `evalcases[${i}].input_messages`, searchRoots, absolutePath, errors);
39864
+ await validateMessagesFileRefs(
39865
+ inputMessages,
39866
+ `evalcases[${i}].input_messages`,
39867
+ searchRoots,
39868
+ absolutePath,
39869
+ errors
39870
+ );
39803
39871
  }
39804
- const expectedMessages = evalCase["expected_messages"];
39872
+ const expectedMessages = evalCase.expected_messages;
39805
39873
  if (Array.isArray(expectedMessages)) {
39806
- await validateMessagesFileRefs(expectedMessages, `evalcases[${i}].expected_messages`, searchRoots, absolutePath, errors);
39874
+ await validateMessagesFileRefs(
39875
+ expectedMessages,
39876
+ `evalcases[${i}].expected_messages`,
39877
+ searchRoots,
39878
+ absolutePath,
39879
+ errors
39880
+ );
39807
39881
  }
39808
39882
  }
39809
39883
  return errors;
@@ -39814,7 +39888,7 @@ async function validateMessagesFileRefs(messages, location, searchRoots, filePat
39814
39888
  if (!isObject3(message)) {
39815
39889
  continue;
39816
39890
  }
39817
- const content = message["content"];
39891
+ const content = message.content;
39818
39892
  if (typeof content === "string") {
39819
39893
  continue;
39820
39894
  }
@@ -39826,11 +39900,11 @@ async function validateMessagesFileRefs(messages, location, searchRoots, filePat
39826
39900
  if (!isObject3(contentItem)) {
39827
39901
  continue;
39828
39902
  }
39829
- const type = contentItem["type"];
39903
+ const type = contentItem.type;
39830
39904
  if (type !== "file") {
39831
39905
  continue;
39832
39906
  }
39833
- const value = contentItem["value"];
39907
+ const value = contentItem.value;
39834
39908
  if (typeof value !== "string") {
39835
39909
  errors.push({
39836
39910
  severity: "error",
@@ -39873,9 +39947,6 @@ async function validateMessagesFileRefs(messages, location, searchRoots, filePat
39873
39947
  }
39874
39948
 
39875
39949
  // src/commands/eval/targets.ts
39876
- import { constants as constants5 } from "node:fs";
39877
- import { access as access5 } from "node:fs/promises";
39878
- import path17 from "node:path";
39879
39950
  var TARGET_FILE_CANDIDATES = [
39880
39951
  "targets.yaml",
39881
39952
  "targets.yml",
@@ -39942,7 +40013,18 @@ function pickTargetName(options) {
39942
40013
  return { name: "default", source: "default" };
39943
40014
  }
39944
40015
  async function selectTarget(options) {
39945
- const { testFilePath, repoRoot, cwd, explicitTargetsPath, cliTargetName, dryRun, dryRunDelay, dryRunDelayMin, dryRunDelayMax, env } = options;
40016
+ const {
40017
+ testFilePath,
40018
+ repoRoot,
40019
+ cwd,
40020
+ explicitTargetsPath,
40021
+ cliTargetName,
40022
+ dryRun,
40023
+ dryRunDelay,
40024
+ dryRunDelayMin,
40025
+ dryRunDelayMax,
40026
+ env
40027
+ } = options;
39946
40028
  const targetsFilePath = await discoverTargetsFile({
39947
40029
  explicitPath: explicitTargetsPath,
39948
40030
  testFilePath,
@@ -39978,7 +40060,9 @@ Errors in ${targetsFilePath}:`);
39978
40060
  const definitions = await readTargetDefinitions(targetsFilePath);
39979
40061
  const fileTargetName = await readTestSuiteTarget(testFilePath);
39980
40062
  const targetChoice = pickTargetName({ cliTargetName, fileTargetName });
39981
- const targetDefinition = definitions.find((definition) => definition.name === targetChoice.name);
40063
+ const targetDefinition = definitions.find(
40064
+ (definition) => definition.name === targetChoice.name
40065
+ );
39982
40066
  if (!targetDefinition) {
39983
40067
  const available = listTargetNames(definitions).join(", ");
39984
40068
  throw new Error(
@@ -40168,7 +40252,10 @@ async function prepareFileMetadata(params) {
40168
40252
  });
40169
40253
  const providerLabel = options.dryRun ? `${selection.resolvedTarget.kind} (dry-run)` : selection.resolvedTarget.kind;
40170
40254
  const inlineTargetLabel = `${selection.targetName} [provider=${providerLabel}]`;
40171
- const evalCases = await loadEvalCases(testFilePath, repoRoot, { verbose: options.verbose, evalId: options.evalId });
40255
+ const evalCases = await loadEvalCases(testFilePath, repoRoot, {
40256
+ verbose: options.verbose,
40257
+ evalId: options.evalId
40258
+ });
40172
40259
  const filteredIds = options.evalId ? evalCases.filter((value) => value.id === options.evalId).map((value) => value.id) : evalCases.map((value) => value.id);
40173
40260
  return { evalIds: filteredIds, evalCases, selection, inlineTargetLabel };
40174
40261
  }
@@ -40225,7 +40312,9 @@ async function runSingleEvalFile(params) {
40225
40312
  resolvedTargetSelection.resolvedTarget.kind
40226
40313
  );
40227
40314
  if (isVSCodeProvider && resolvedWorkers > 1) {
40228
- console.warn(`Warning: VSCode providers require window focus. Limiting workers from ${resolvedWorkers} to 1 to prevent race conditions.`);
40315
+ console.warn(
40316
+ `Warning: VSCode providers require window focus. Limiting workers from ${resolvedWorkers} to 1 to prevent race conditions.`
40317
+ );
40229
40318
  resolvedWorkers = 1;
40230
40319
  }
40231
40320
  if (options.verbose) {
@@ -40295,7 +40384,10 @@ async function runEvalCommand(input) {
40295
40384
  const resolvedTestFiles = input.testFiles.map((file2) => path18.resolve(file2));
40296
40385
  const displayIdTracker = createDisplayIdTracker();
40297
40386
  const totalWorkers = options.workers ?? DEFAULT_WORKERS;
40298
- const fileConcurrency = Math.min(Math.max(1, totalWorkers), Math.max(1, resolvedTestFiles.length));
40387
+ const fileConcurrency = Math.min(
40388
+ Math.max(1, totalWorkers),
40389
+ Math.max(1, resolvedTestFiles.length)
40390
+ );
40299
40391
  const perFileWorkers = options.workers ? Math.max(1, Math.floor(totalWorkers / fileConcurrency)) : void 0;
40300
40392
  const fileMetadata = /* @__PURE__ */ new Map();
40301
40393
  for (const testFilePath of resolvedTestFiles) {
@@ -40479,7 +40571,9 @@ async function resolveEvalPaths(evalPaths, cwd) {
40479
40571
  unmatched.push(pattern);
40480
40572
  continue;
40481
40573
  }
40482
- yamlMatches.forEach((filePath) => results.add(path19.normalize(filePath)));
40574
+ for (const filePath of yamlMatches) {
40575
+ results.add(path19.normalize(filePath));
40576
+ }
40483
40577
  }
40484
40578
  if (unmatched.length > 0) {
40485
40579
  throw new Error(
@@ -40502,47 +40596,45 @@ import * as readline from "node:readline/promises";
40502
40596
  import { readFileSync, readdirSync, statSync } from "node:fs";
40503
40597
  import path20 from "node:path";
40504
40598
  import { fileURLToPath } from "node:url";
40505
- var TemplateManager = class {
40506
- static getGithubTemplates() {
40507
- return this.getTemplatesFromDir(".github");
40508
- }
40509
- static getAgentvTemplates() {
40510
- return this.getTemplatesFromDir(".agentv");
40511
- }
40512
- static getClaudeTemplates() {
40513
- return this.getTemplatesFromDir(".claude");
40514
- }
40515
- static getTemplatesFromDir(subdir) {
40516
- const currentDir = path20.dirname(fileURLToPath(import.meta.url));
40517
- let templatesDir;
40518
- if (currentDir.includes(path20.sep + "dist")) {
40519
- templatesDir = path20.join(currentDir, "templates", subdir);
40599
+ function getGithubTemplates() {
40600
+ return getTemplatesFromDir(".github");
40601
+ }
40602
+ function getAgentvTemplates() {
40603
+ return getTemplatesFromDir(".agentv");
40604
+ }
40605
+ function getClaudeTemplates() {
40606
+ return getTemplatesFromDir(".claude");
40607
+ }
40608
+ function getTemplatesFromDir(subdir) {
40609
+ const currentDir = path20.dirname(fileURLToPath(import.meta.url));
40610
+ let templatesDir;
40611
+ if (currentDir.includes(`${path20.sep}dist`)) {
40612
+ templatesDir = path20.join(currentDir, "templates", subdir);
40613
+ } else {
40614
+ templatesDir = path20.join(currentDir, subdir);
40615
+ }
40616
+ return readTemplatesRecursively(templatesDir, "");
40617
+ }
40618
+ function readTemplatesRecursively(dir, relativePath) {
40619
+ const templates = [];
40620
+ const entries = readdirSync(dir);
40621
+ for (const entry of entries) {
40622
+ const fullPath = path20.join(dir, entry);
40623
+ const stat5 = statSync(fullPath);
40624
+ const entryRelativePath = relativePath ? path20.join(relativePath, entry) : entry;
40625
+ if (stat5.isDirectory()) {
40626
+ templates.push(...readTemplatesRecursively(fullPath, entryRelativePath));
40520
40627
  } else {
40521
- templatesDir = path20.join(currentDir, subdir);
40522
- }
40523
- return this.readTemplatesRecursively(templatesDir, "");
40524
- }
40525
- static readTemplatesRecursively(dir, relativePath) {
40526
- const templates = [];
40527
- const entries = readdirSync(dir);
40528
- for (const entry of entries) {
40529
- const fullPath = path20.join(dir, entry);
40530
- const stat5 = statSync(fullPath);
40531
- const entryRelativePath = relativePath ? path20.join(relativePath, entry) : entry;
40532
- if (stat5.isDirectory()) {
40533
- templates.push(...this.readTemplatesRecursively(fullPath, entryRelativePath));
40534
- } else {
40535
- const content = readFileSync(fullPath, "utf-8");
40536
- templates.push({
40537
- path: entryRelativePath.split(path20.sep).join("/"),
40538
- // Normalize to forward slashes
40539
- content
40540
- });
40541
- }
40628
+ const content = readFileSync(fullPath, "utf-8");
40629
+ templates.push({
40630
+ path: entryRelativePath.split(path20.sep).join("/"),
40631
+ // Normalize to forward slashes
40632
+ content
40633
+ });
40542
40634
  }
40543
- return templates;
40544
40635
  }
40545
- };
40636
+ return templates;
40637
+ }
40546
40638
 
40547
40639
  // src/commands/init/index.ts
40548
40640
  async function promptYesNo(message) {
@@ -40562,9 +40654,9 @@ async function initCommand(options = {}) {
40562
40654
  const githubDir = path21.join(targetPath, ".github");
40563
40655
  const agentvDir = path21.join(targetPath, ".agentv");
40564
40656
  const claudeDir = path21.join(targetPath, ".claude");
40565
- const githubTemplates = TemplateManager.getGithubTemplates();
40566
- const agentvTemplates = TemplateManager.getAgentvTemplates();
40567
- const claudeTemplates = TemplateManager.getClaudeTemplates();
40657
+ const githubTemplates = getGithubTemplates();
40658
+ const agentvTemplates = getAgentvTemplates();
40659
+ const claudeTemplates = getClaudeTemplates();
40568
40660
  const envTemplate = agentvTemplates.find((t) => t.path === ".env.template");
40569
40661
  const otherAgentvTemplates = agentvTemplates.filter((t) => t.path !== ".env.template");
40570
40662
  const existingFiles = [];
@@ -40600,7 +40692,9 @@ async function initCommand(options = {}) {
40600
40692
  }
40601
40693
  if (existingFiles.length > 0) {
40602
40694
  console.log("We detected an existing setup:");
40603
- existingFiles.forEach((file2) => console.log(` - ${file2}`));
40695
+ for (const file2 of existingFiles) {
40696
+ console.log(` - ${file2}`);
40697
+ }
40604
40698
  console.log();
40605
40699
  const shouldReplace = await promptYesNo("Do you want to replace these files?");
40606
40700
  if (!shouldReplace) {
@@ -40651,20 +40745,25 @@ async function initCommand(options = {}) {
40651
40745
  console.log(`Created ${path21.relative(targetPath, targetFilePath)}`);
40652
40746
  }
40653
40747
  console.log("\nAgentV initialized successfully!");
40654
- console.log(`
40655
- Files installed to root:`);
40748
+ console.log("\nFiles installed to root:");
40656
40749
  if (envTemplate) {
40657
- console.log(` - .env.template`);
40750
+ console.log(" - .env.template");
40658
40751
  }
40659
40752
  console.log(`
40660
40753
  Files installed to ${path21.relative(targetPath, githubDir)}:`);
40661
- githubTemplates.forEach((t) => console.log(` - ${t.path}`));
40754
+ for (const t of githubTemplates) {
40755
+ console.log(` - ${t.path}`);
40756
+ }
40662
40757
  console.log(`
40663
40758
  Files installed to ${path21.relative(targetPath, agentvDir)}:`);
40664
- otherAgentvTemplates.forEach((t) => console.log(` - ${t.path}`));
40759
+ for (const t of otherAgentvTemplates) {
40760
+ console.log(` - ${t.path}`);
40761
+ }
40665
40762
  console.log(`
40666
40763
  Files installed to ${path21.relative(targetPath, claudeDir)}:`);
40667
- claudeTemplates.forEach((t) => console.log(` - ${t.path}`));
40764
+ for (const t of claudeTemplates) {
40765
+ console.log(` - ${t.path}`);
40766
+ }
40668
40767
  console.log("\nYou can now:");
40669
40768
  console.log(" 1. Copy .env.template to .env and add your API credentials");
40670
40769
  console.log(" 2. Configure targets in .agentv/targets.yaml");
@@ -40898,7 +40997,9 @@ function createProgram() {
40898
40997
  registerStatusCommand(program);
40899
40998
  registerEvalCommand(program);
40900
40999
  registerValidateCommand(program);
40901
- program.command("init [path]").description("Initialize AgentV in your project (installs prompt templates and schema to .github)").action(async (targetPath) => {
41000
+ program.command("init [path]").description(
41001
+ "Initialize AgentV in your project (installs prompt templates and schema to .github)"
41002
+ ).action(async (targetPath) => {
40902
41003
  try {
40903
41004
  await initCommand({ targetPath });
40904
41005
  } catch (error40) {
@@ -40918,4 +41019,4 @@ export {
40918
41019
  createProgram,
40919
41020
  runCli
40920
41021
  };
40921
- //# sourceMappingURL=chunk-HWGALLUR.js.map
41022
+ //# sourceMappingURL=chunk-KL3Y2C6J.js.map