@qwen-code/arena-agent 0.0.10-dev.11 → 0.0.10-dev.13

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/ask-user.js CHANGED
@@ -2,6 +2,27 @@ const maxResponseBytes = 1024 * 1024;
2
2
  const maxIdentifierLength = 1024;
3
3
  const maxCustomResponseLength = 64 * 1024;
4
4
  const maxErrorMessageLength = 16 * 1024;
5
+ let askUserFetchPromise;
6
+ const defaultAskUserFetch = async (input, init) => {
7
+ init?.signal?.throwIfAborted();
8
+ askUserFetchPromise ??= (async () => {
9
+ // Initialize Node's dispatcher before importing undici, which otherwise
10
+ // installs its own global default. Only ask_user should use this transport.
11
+ const response = await globalThis.fetch("data:,arena-ask-user-transport");
12
+ await response.body?.cancel();
13
+ const { Agent, fetch: undiciFetch } = await import("undici");
14
+ // The handler's AbortController bounds the entire response. Undici's
15
+ // default 300-second header/body timers must not cut that deadline short.
16
+ const dispatcher = new Agent({ headersTimeout: 0, bodyTimeout: 0 });
17
+ // Keep fetch and Agent from the same version: newer Node fetch internals
18
+ // are not necessarily compatible with the installed undici dispatcher.
19
+ const requestFetch = undiciFetch;
20
+ return (input, init) => requestFetch(input, { ...init, dispatcher });
21
+ })();
22
+ const requestFetch = await askUserFetchPromise;
23
+ init?.signal?.throwIfAborted();
24
+ return requestFetch(input, init);
25
+ };
5
26
  export class AskUserHandlerError extends Error {
6
27
  code;
7
28
  constructor(code, message, options) {
@@ -305,8 +326,25 @@ function parseResponseBody(body) {
305
326
  throw new AskUserHandlerError("ASK_USER_INVALID_RESPONSE", "ask_user handler returned invalid JSON", { cause: error });
306
327
  }
307
328
  }
329
+ function requestErrorMessage(error) {
330
+ const parts = [];
331
+ const seen = new Set();
332
+ let current = error;
333
+ while (current !== undefined && parts.length < 5 && !seen.has(current)) {
334
+ seen.add(current);
335
+ if (!(current instanceof Error)) {
336
+ parts.push(String(current));
337
+ break;
338
+ }
339
+ const code = record(current)?.code;
340
+ const name = parts.length > 0 ? `${current.name}: ` : "";
341
+ parts.push(`${name}${current.message}${typeof code === "string" ? ` [${code}]` : ""}`);
342
+ current = current.cause;
343
+ }
344
+ return parts.join("; cause: ").slice(0, maxErrorMessageLength);
345
+ }
308
346
  export function createRemoteAskUserHandler(options) {
309
- const requestFetch = options.fetch || globalThis.fetch;
347
+ const requestFetch = options.fetch || defaultAskUserFetch;
310
348
  const timeoutMs = options.timeoutMs ?? 60_000;
311
349
  if (!Number.isSafeInteger(timeoutMs) || timeoutMs <= 0) {
312
350
  throw new Error("ask_user timeout must be a positive integer");
@@ -334,6 +372,7 @@ export function createRemoteAskUserHandler(options) {
334
372
  try {
335
373
  if (context.signal?.aborted)
336
374
  abort();
375
+ controller.signal.throwIfAborted();
337
376
  const response = await requestFetch(options.url, {
338
377
  method: "POST",
339
378
  headers: {
@@ -366,11 +405,14 @@ export function createRemoteAskUserHandler(options) {
366
405
  }
367
406
  if (error instanceof AskUserHandlerError)
368
407
  throw error;
369
- throw new AskUserHandlerError("ASK_USER_REQUEST_FAILED", `ask_user handler request failed: ${error instanceof Error ? error.message : String(error)}`, { cause: error });
408
+ throw new AskUserHandlerError("ASK_USER_REQUEST_FAILED", `ask_user handler request failed: ${requestErrorMessage(error)}`, { cause: error });
370
409
  }
371
410
  finally {
372
411
  clearTimeout(timeout);
373
412
  context.signal?.removeEventListener("abort", abort);
413
+ // Release unread bodies too, such as a response rejected by its declared
414
+ // content-length before a reader is opened.
415
+ controller.abort();
374
416
  }
375
417
  };
376
418
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../src/ask-user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-user.js","sourceRoot":"","sources":["../src/ask-user.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ToolDefinition } from "./types.js";
2
+ /** Called only for Code Arena; Agent Arena retains its existing wire contract. */
3
+ export declare function codeArenaRequestTools(tools: ToolDefinition[], strict: boolean): ToolDefinition[];
@@ -0,0 +1,92 @@
1
+ // Official Code Arena tools overview, 2026-10-19/20. Keep the original
2
+ // captures intact: these documented runtime options are restored at the wire
3
+ // boundary, before applying the selected provider's strict-schema rules.
4
+ const optionalParameters = {
5
+ read_file: ["offset", "limit"],
6
+ list_files: ["path"],
7
+ glob_files: ["path"],
8
+ grep_files: ["path", "glob", "output_mode", "-i", "-B", "-A", "-C", "context"],
9
+ bash: ["workdir", "description", "timeout"],
10
+ shell_command: ["workdir", "description", "timeout"],
11
+ web_fetch: ["format"],
12
+ fetch_media: ["media_type", "count", "orientation", "size", "locale"],
13
+ build_and_start: ["description"],
14
+ };
15
+ function isSchema(value) {
16
+ return value !== null && typeof value === "object" && !Array.isArray(value);
17
+ }
18
+ function nullable(schema) {
19
+ if (!isSchema(schema))
20
+ return { anyOf: [schema, { type: "null" }] };
21
+ // Keep enum and other constraints inside the non-null branch; adding null
22
+ // only to `type` would still reject it against an existing enum.
23
+ const { description, ...constraints } = schema;
24
+ return {
25
+ ...(description !== undefined ? { description } : {}),
26
+ anyOf: [constraints, { type: "null" }],
27
+ };
28
+ }
29
+ /** Mutate only a cloned schema; optionality is read before requiring all keys. */
30
+ function makeStrict(schema) {
31
+ if (!isSchema(schema))
32
+ return;
33
+ if (isSchema(schema.properties)) {
34
+ const required = new Set(Array.isArray(schema.required) ? schema.required : []);
35
+ for (const [name, property] of Object.entries(schema.properties)) {
36
+ makeStrict(property);
37
+ if (!required.has(name))
38
+ schema.properties[name] = nullable(property);
39
+ }
40
+ schema.required = Object.keys(schema.properties);
41
+ schema.additionalProperties = false;
42
+ }
43
+ if (schema.type === "object" && !schema.properties) {
44
+ schema.properties = {};
45
+ schema.required = [];
46
+ schema.additionalProperties = false;
47
+ }
48
+ if (Array.isArray(schema.items))
49
+ schema.items.forEach(makeStrict);
50
+ else
51
+ makeStrict(schema.items);
52
+ for (const keyword of ["anyOf", "oneOf", "allOf", "prefixItems"]) {
53
+ const alternatives = schema[keyword];
54
+ if (Array.isArray(alternatives))
55
+ alternatives.forEach(makeStrict);
56
+ }
57
+ for (const keyword of ["$defs", "definitions"]) {
58
+ const definitions = schema[keyword];
59
+ if (isSchema(definitions))
60
+ Object.values(definitions).forEach(makeStrict);
61
+ }
62
+ }
63
+ /** Called only for Code Arena; Agent Arena retains its existing wire contract. */
64
+ export function codeArenaRequestTools(tools, strict) {
65
+ return tools.map((original) => {
66
+ const tool = structuredClone(original);
67
+ const { name, parameters } = tool.function;
68
+ const optional = Object.hasOwn(optionalParameters, name) ? optionalParameters[name] : undefined;
69
+ if (optional && Array.isArray(parameters.required)) {
70
+ const required = parameters.required.filter((key) => !optional.includes(key));
71
+ // Non-strict captures omit required when every parameter is optional.
72
+ // The Responses conversion below restores all keys for strict output.
73
+ if (required.length === 0)
74
+ delete parameters.required;
75
+ else
76
+ parameters.required = required;
77
+ }
78
+ if ((name === "bash" || name === "shell_command") && isSchema(parameters.properties)) {
79
+ parameters.properties.timeout = {
80
+ type: "integer",
81
+ description: "Command timeout in milliseconds (default 180000, maximum 600000)",
82
+ minimum: 1,
83
+ maximum: 600_000,
84
+ };
85
+ }
86
+ if (strict)
87
+ makeStrict(parameters);
88
+ tool.function.strict = strict;
89
+ return tool;
90
+ });
91
+ }
92
+ //# sourceMappingURL=code-tool-schema.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-tool-schema.js","sourceRoot":"","sources":["../src/code-tool-schema.ts"],"names":[],"mappings":"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"}
@@ -224,18 +224,18 @@ function hasReadableImageStructure(data, mediaType) {
224
224
  }
225
225
  return false;
226
226
  }
227
- // All 39 successful, unmutated list_files captures use this exact order,
228
- // independently of whether the requested path is the project root or src/.
229
- // It is the seed manifest order, not an alphabetical/filesystem order.
227
+ // Unmutated React captures on 2026-10-02, 10-13 and 10-21 share this order.
228
+ // Older September captures used a different seed order. Preserve the current
229
+ // manifest order for both root and scoped listings, not filesystem ordering.
230
230
  const capturedReactSeedFileOrder = [
231
- "src/utils/cn.ts",
232
231
  "src/index.css",
233
232
  "src/main.tsx",
233
+ "src/utils/cn.ts",
234
234
  "src/App.tsx",
235
- "vite.config.ts",
235
+ "index.html",
236
236
  "tsconfig.json",
237
+ "vite.config.ts",
237
238
  "package.json",
238
- "index.html",
239
239
  ];
240
240
  const capturedFullStackSeedFileOrder = [
241
241
  "postcss.config.mjs",
@@ -816,7 +816,26 @@ export class CodeToolExecutor {
816
816
  this.seedFileRank = capturedSeedFileRank(config.mode);
817
817
  addFormats(this.ajv);
818
818
  for (const definition of this.definitions) {
819
- this.validators.set(definition.function.name, this.ajv.compile(definition.function.parameters));
819
+ const name = definition.function.name;
820
+ // The current execution docs add an optional millisecond timeout. Keep
821
+ // the outgoing captured contract intact until a new capture is approved.
822
+ const parameters = structuredClone(definition.function.parameters);
823
+ if (name === "bash") {
824
+ parameters.properties = {
825
+ ...record(parameters.properties),
826
+ timeout: { type: "integer", minimum: 1, maximum: 600_000 },
827
+ };
828
+ }
829
+ this.validators.set(name, this.ajv.compile(parameters));
830
+ }
831
+ // React Codex uses the same runtime under a different name. Like the
832
+ // existing hidden Codex tools, accept calls without inventing a public
833
+ // contract or switching the standard React prompt/tool set.
834
+ const bashValidator = this.validators.get("bash");
835
+ if (config.mode === "react" &&
836
+ bashValidator &&
837
+ !disallowed.has("shell_command")) {
838
+ this.validators.set("shell_command", bashValidator);
820
839
  }
821
840
  // Hidden mode: advertise nothing, but keep the call executable.
822
841
  if (!advertiseApplyPatch && !disallowed.has("apply_patch")) {
@@ -848,10 +867,9 @@ export class CodeToolExecutor {
848
867
  const argumentsValue = (this.config.mode === "react" && typeof parsedArguments === "string"
849
868
  ? {}
850
869
  : structuredClone(parsedArguments));
851
- // The captured provider advertises these fields as required, but its
852
- // runtime still applies the documented defaults when a model omits
853
- // them. Preserve the byte-identical outgoing schema while matching the
854
- // observed execution behavior.
870
+ // Captured schemas advertise these fields as required. Keep those public
871
+ // fixtures intact while applying runtime defaults. Since 2026-10-19,
872
+ // official Code Arena accepts optional nulls as omission for all providers.
855
873
  if (name === "read_file") {
856
874
  argumentsValue.offset ??= 1;
857
875
  argumentsValue.limit ??= 2000;
@@ -859,13 +877,13 @@ export class CodeToolExecutor {
859
877
  else if (name === "list_files" || name === "glob_files") {
860
878
  argumentsValue.path ??= "";
861
879
  }
862
- else if (name === "bash" &&
880
+ else if ((name === "bash" || name === "shell_command") &&
863
881
  argumentsValue && typeof argumentsValue === "object" &&
864
882
  !Array.isArray(argumentsValue)) {
865
- if (argumentsValue.workdir === undefined)
866
- argumentsValue.workdir = "";
867
- if (argumentsValue.description === undefined)
868
- argumentsValue.description = "";
883
+ argumentsValue.workdir ??= "";
884
+ argumentsValue.description ??= "";
885
+ if (argumentsValue.timeout === null)
886
+ delete argumentsValue.timeout;
869
887
  }
870
888
  else if (name === "grep_files") {
871
889
  argumentsValue.path ??= "";
@@ -877,6 +895,21 @@ export class CodeToolExecutor {
877
895
  argumentsValue["-C"] ??= 0;
878
896
  argumentsValue.context ??= 0;
879
897
  }
898
+ if (argumentsValue && typeof argumentsValue === "object" && !Array.isArray(argumentsValue)) {
899
+ if (name === "web_fetch") {
900
+ argumentsValue.format ??= "markdown";
901
+ }
902
+ else if (name === "fetch_media") {
903
+ argumentsValue.media_type ??= "both";
904
+ argumentsValue.count ??= 6;
905
+ argumentsValue.orientation ??= "any";
906
+ argumentsValue.size ??= "any";
907
+ argumentsValue.locale ??= "en-US";
908
+ }
909
+ else if (name === "build_and_start") {
910
+ argumentsValue.description ??= "";
911
+ }
912
+ }
880
913
  return argumentsValue;
881
914
  }
882
915
  validationMessage(name, value, validate) {
@@ -1052,7 +1085,8 @@ export class CodeToolExecutor {
1052
1085
  case "build_project":
1053
1086
  return this.buildProject();
1054
1087
  case "bash":
1055
- return this.codeBash(String(values.command), String(values.workdir));
1088
+ case "shell_command":
1089
+ return this.codeBash(String(values.command), String(values.workdir), values.timeout);
1056
1090
  case "build_and_start":
1057
1091
  return this.buildAndStart();
1058
1092
  case "web_search":
@@ -1897,15 +1931,20 @@ export class CodeToolExecutor {
1897
1931
  stderr: this.virtualizeCodeOutput(result.stderr),
1898
1932
  };
1899
1933
  }
1900
- async codeBash(command, workdir) {
1934
+ async codeBash(command, workdir, timeoutMs) {
1935
+ if (!command.trim()) {
1936
+ return { status: "error", message: "Command cannot be empty" };
1937
+ }
1901
1938
  const cwd = workdir.trim() || ".";
1902
1939
  if (path.isAbsolute(cwd) || cwd.includes("..")) {
1903
1940
  throw new Error(`Invalid workdir: ${cwd}. Commands run from the project root by default. Only use workdir for relative subdirectories, never absolute paths.`);
1904
1941
  }
1905
- const configuredTimeout = Number(process.env.CODE_HARNESS_BASH_TIMEOUT_SECONDS || 300);
1906
- const timeoutSeconds = Number.isFinite(configuredTimeout) && configuredTimeout > 0
1907
- ? configuredTimeout
1908
- : 300;
1942
+ const configuredTimeout = Number(process.env.CODE_HARNESS_BASH_TIMEOUT_SECONDS || 180);
1943
+ const timeoutSeconds = timeoutMs !== undefined
1944
+ ? timeoutMs / 1000
1945
+ : Number.isFinite(configuredTimeout) && configuredTimeout > 0
1946
+ ? configuredTimeout
1947
+ : 180;
1909
1948
  const result = await this.bash(command, cwd, timeoutSeconds);
1910
1949
  if (result.timed_out)
1911
1950
  return { status: "error", message: "Command timed out" };