@qwen-code/arena-agent 0.0.10-dev.8 → 0.0.10-dev.9
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/.env.example +6 -0
- package/CHANGELOG.md +22 -1
- package/README.md +74 -5
- package/dist/agent.d.ts +8 -3
- package/dist/agent.js +155 -14
- package/dist/agent.js.map +1 -1
- package/dist/canonical-data.js +1 -1
- package/dist/canonical-data.js.map +1 -1
- package/dist/cli.js +27 -8
- package/dist/cli.js.map +1 -1
- package/dist/code-tools.d.ts +2 -1
- package/dist/code-tools.js +130 -18
- package/dist/code-tools.js.map +1 -1
- package/dist/compaction.d.ts +3 -2
- package/dist/compaction.js +28 -3
- package/dist/compaction.js.map +1 -1
- package/dist/history.d.ts +1 -0
- package/dist/history.js +14 -0
- package/dist/history.js.map +1 -1
- package/dist/midturn-checkpoint-hook.d.ts +17 -2
- package/dist/midturn-checkpoint-hook.js +11 -3
- package/dist/midturn-checkpoint-hook.js.map +1 -1
- package/dist/mode.js +1 -1
- package/dist/protocol.d.ts +1 -1
- package/dist/protocol.js +2 -1
- package/dist/protocol.js.map +1 -1
- package/dist/repetitive-output.d.ts +12 -0
- package/dist/repetitive-output.js +80 -0
- package/dist/repetitive-output.js.map +1 -0
- package/dist/spec.js +1 -1
- package/dist/spec.js.map +1 -1
- package/dist/tools.js +31 -14
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +2 -1
- package/dist/workspace.js +6 -5
- package/dist/workspace.js.map +1 -1
- package/modes/code-arena/capture-provenance.json +54 -0
- package/modes/code-arena/full-stack/template/eslint.config.mjs +3 -4
- package/modes/code-arena/full-stack/template/postcss.config.mjs +2 -2
- package/modes/code-arena/full-stack/tools.json +186 -186
- package/modes/code-arena/html/tools.json +123 -123
- package/modes/code-arena/react/system-prompt.txt +4 -3
- package/modes/code-arena/react/tools.json +178 -184
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canonical-data.js","sourceRoot":"","sources":["../src/canonical-data.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,CAAC,MAAM,kBAAkB,GAAW,irwGAAirwG,CAAC;AAC5twG,MAAM,CAAC,MAAM,aAAa,GAAW,morBAAmorB,CAAC;AACzqrB,MAAM,CAAC,MAAM,qBAAqB,GAAW,
|
|
1
|
+
{"version":3,"file":"canonical-data.js","sourceRoot":"","sources":["../src/canonical-data.ts"],"names":[],"mappings":"AAAA,0EAA0E;AAC1E,MAAM,CAAC,MAAM,kBAAkB,GAAW,irwGAAirwG,CAAC;AAC5twG,MAAM,CAAC,MAAM,aAAa,GAAW,morBAAmorB,CAAC;AACzqrB,MAAM,CAAC,MAAM,qBAAqB,GAAW,s4yCAAs4yC,CAAC"}
|
package/dist/cli.js
CHANGED
|
@@ -34,6 +34,7 @@ function parsePromptOptions(argumentsList) {
|
|
|
34
34
|
const options = {
|
|
35
35
|
prompt: "",
|
|
36
36
|
continueFromHistory: false,
|
|
37
|
+
singleStep: false,
|
|
37
38
|
output: "text",
|
|
38
39
|
workspace: process.cwd(),
|
|
39
40
|
attachments: [],
|
|
@@ -96,16 +97,22 @@ function parsePromptOptions(argumentsList) {
|
|
|
96
97
|
else if (argument === "--continue") {
|
|
97
98
|
options.continueFromHistory = true;
|
|
98
99
|
}
|
|
100
|
+
else if (argument === "--single-step") {
|
|
101
|
+
options.singleStep = true;
|
|
102
|
+
}
|
|
99
103
|
else if (argument === "--version") {
|
|
100
104
|
console.log(`${cliName} ${version}`);
|
|
101
105
|
process.exit(0);
|
|
102
106
|
}
|
|
103
107
|
else if (argument === "-h" || argument === "--help") {
|
|
104
|
-
console.log(`Usage: ${cliName} (-p <prompt> | --file <path>) [--mode arena|react|html|full-stack] [--system-prompt text] [--append-system-prompt text] [--exclude-qwen-from-system-prompt] [--attach path|url ...] [--output text|json|stream-json] [--workspace path] [--session-id id|--history-file path]\n` +
|
|
105
|
-
` ${cliName} --continue --session-id id [--mode arena|react|html|full-stack] [--output text|json|stream-json] [--workspace path] [--model name]\n` +
|
|
108
|
+
console.log(`Usage: ${cliName} (-p <prompt> | --file <path>) [--single-step] [--mode arena|react|html|full-stack] [--system-prompt text] [--append-system-prompt text] [--exclude-qwen-from-system-prompt] [--attach path|url ...] [--output text|json|stream-json] [--workspace path] [--session-id id|--history-file path]\n` +
|
|
109
|
+
` ${cliName} --continue --session-id id [--single-step] [--mode arena|react|html|full-stack] [--output text|json|stream-json] [--workspace path] [--model name]\n` +
|
|
106
110
|
` ${cliName} tui [--mode arena|react|html|full-stack] [--system-prompt text] [--append-system-prompt text] [--exclude-qwen-from-system-prompt] [--workspace path] [--model name] [--session-id id|--history-file path]\n` +
|
|
107
111
|
` ${cliName} serve [--mode arena|react|html|full-stack] [--system-prompt text] [--append-system-prompt text] [--exclude-qwen-from-system-prompt] [--host 127.0.0.1] [--port 3000] [--workspace path]\n` +
|
|
108
112
|
"\n" +
|
|
113
|
+
" --single-step saves and exits after one model response and its entire\n" +
|
|
114
|
+
" tool batch. Use it with a new prompt or --continue.\n" +
|
|
115
|
+
"\n" +
|
|
109
116
|
" --file reads the UTF-8 prompt after startup, avoiding command-line\n" +
|
|
110
117
|
" argument size limits. It cannot be combined with -p/--prompt.\n" +
|
|
111
118
|
"\n" +
|
|
@@ -311,6 +318,8 @@ async function runPrompt(options) {
|
|
|
311
318
|
config.model = options.model;
|
|
312
319
|
}
|
|
313
320
|
else if (options.continueFromHistory &&
|
|
321
|
+
!process.env.OPENAI_MODEL &&
|
|
322
|
+
!process.env.ARENA_MODEL &&
|
|
314
323
|
storedHistory?.metadata?.model) {
|
|
315
324
|
config.model = storedHistory.metadata.model;
|
|
316
325
|
}
|
|
@@ -387,18 +396,25 @@ async function runPrompt(options) {
|
|
|
387
396
|
sessionMemory,
|
|
388
397
|
onCheckpoint: persistHistory,
|
|
389
398
|
midturnCheckpointHook: checkpointHook,
|
|
390
|
-
|
|
399
|
+
onPause: async (messages, tools) => {
|
|
400
|
+
persistedTools = tools;
|
|
401
|
+
if (!historyFinalized)
|
|
402
|
+
await finalizeHistory(messages);
|
|
403
|
+
},
|
|
404
|
+
onMidturnCheckpoint: async (messages, tools, event, action) => {
|
|
391
405
|
persistedTools = [...tools];
|
|
392
406
|
await finalizeHistory(messages);
|
|
393
407
|
await requestHarborSnapshot({
|
|
394
408
|
env: checkpointEnvironment,
|
|
395
409
|
event,
|
|
396
410
|
});
|
|
397
|
-
|
|
411
|
+
if (action === "snapshot_continue")
|
|
412
|
+
await reopenHistory(messages);
|
|
398
413
|
},
|
|
399
|
-
}).run(options.prompt, history,
|
|
400
|
-
|
|
401
|
-
: { userMessage })
|
|
414
|
+
}).run(options.prompt, history, {
|
|
415
|
+
singleStep: options.singleStep,
|
|
416
|
+
...(options.continueFromHistory ? { resumeFromHistory: true } : { userMessage }),
|
|
417
|
+
});
|
|
402
418
|
if (!historyFinalized)
|
|
403
419
|
await finalizeHistory(result.messages);
|
|
404
420
|
if (options.output === "json") {
|
|
@@ -410,11 +426,14 @@ async function runPrompt(options) {
|
|
|
410
426
|
if (text)
|
|
411
427
|
console.log(text);
|
|
412
428
|
}
|
|
429
|
+
else if (result.status === "paused") {
|
|
430
|
+
console.log(`Paused (${result.stop_reason}); session ID: ${result.session_id}`);
|
|
431
|
+
}
|
|
413
432
|
else {
|
|
414
433
|
console.error(result.error || "agent failed");
|
|
415
434
|
}
|
|
416
435
|
}
|
|
417
|
-
return result.status === "success" ? 0 : 1;
|
|
436
|
+
return result.status === "success" || result.status === "paused" ? 0 : 1;
|
|
418
437
|
}
|
|
419
438
|
export async function main(argumentsList = process.argv.slice(2)) {
|
|
420
439
|
if (argumentsList[0] === "serve") {
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/code-tools.d.ts
CHANGED
|
@@ -50,13 +50,14 @@ export declare class CodeToolExecutor {
|
|
|
50
50
|
private editCodeFile;
|
|
51
51
|
private applyCodePatch;
|
|
52
52
|
private deleteCodeFile;
|
|
53
|
+
private discoverableFile;
|
|
53
54
|
private listCodeFiles;
|
|
54
55
|
private grepCodeFiles;
|
|
55
56
|
private globCodeFiles;
|
|
56
57
|
private runProcess;
|
|
57
58
|
private installNpmPackages;
|
|
58
59
|
private buildProject;
|
|
59
|
-
private
|
|
60
|
+
private codeBash;
|
|
60
61
|
private buildAndStartFailure;
|
|
61
62
|
private stopPreviousPreview;
|
|
62
63
|
private buildAndStart;
|
package/dist/code-tools.js
CHANGED
|
@@ -13,7 +13,8 @@ import mime from "mime/lite";
|
|
|
13
13
|
import { executeBraveWebSearch } from "./brave-search.js";
|
|
14
14
|
import { FetchPageReader } from "./fetch-page.js";
|
|
15
15
|
import { replaceFirstText, replaceUniqueText } from "./file-edit.js";
|
|
16
|
-
import { generatedImageBytesForExtension } from "./image.js";
|
|
16
|
+
import { detectedImageMimeType, generatedImageBytesForExtension } from "./image.js";
|
|
17
|
+
import { supportsImageInput } from "./model-capabilities.js";
|
|
17
18
|
import { generateImageWithModelRouter, } from "./model-router-media.js";
|
|
18
19
|
import { executeRoutifyWebFetch, routifyWebFetchEnabled, } from "./routify-web-fetch.js";
|
|
19
20
|
import { replayResponseFor } from "./replay-responses.js";
|
|
@@ -187,6 +188,42 @@ const visibleImageExtensions = new Set([
|
|
|
187
188
|
".png",
|
|
188
189
|
".webp",
|
|
189
190
|
]);
|
|
191
|
+
const readableImageExtensions = new Set([".jpeg", ".jpg", ".png"]);
|
|
192
|
+
const maximumReadableImageBytes = 10 * 1024 * 1024;
|
|
193
|
+
function readableImageMimeType(data) {
|
|
194
|
+
if (data.length >= 8 &&
|
|
195
|
+
data.subarray(0, 8).equals(Buffer.from([0x89, 0x50, 0x4e, 0x47, 0x0d, 0x0a, 0x1a, 0x0a])))
|
|
196
|
+
return "image/png";
|
|
197
|
+
if (data.length >= 3 && data[0] === 0xff && data[1] === 0xd8 && data[2] === 0xff)
|
|
198
|
+
return "image/jpeg";
|
|
199
|
+
return undefined;
|
|
200
|
+
}
|
|
201
|
+
function hasReadableImageStructure(data, mediaType) {
|
|
202
|
+
if (detectedImageMimeType(data) !== mediaType)
|
|
203
|
+
return false;
|
|
204
|
+
if (mediaType === "image/jpeg") {
|
|
205
|
+
return data.length >= 4 && data[data.length - 2] === 0xff && data[data.length - 1] === 0xd9;
|
|
206
|
+
}
|
|
207
|
+
if (data.readUInt32BE(16) === 0 || data.readUInt32BE(20) === 0)
|
|
208
|
+
return false;
|
|
209
|
+
let offset = 8;
|
|
210
|
+
let hasImageData = false;
|
|
211
|
+
while (offset + 12 <= data.length) {
|
|
212
|
+
const length = data.readUInt32BE(offset);
|
|
213
|
+
const end = offset + 12 + length;
|
|
214
|
+
if (end > data.length)
|
|
215
|
+
return false;
|
|
216
|
+
const type = data.toString("ascii", offset + 4, offset + 8);
|
|
217
|
+
if (offset === 8 && (type !== "IHDR" || length !== 13))
|
|
218
|
+
return false;
|
|
219
|
+
if (type === "IDAT")
|
|
220
|
+
hasImageData = true;
|
|
221
|
+
if (type === "IEND")
|
|
222
|
+
return length === 0 && hasImageData;
|
|
223
|
+
offset = end;
|
|
224
|
+
}
|
|
225
|
+
return false;
|
|
226
|
+
}
|
|
190
227
|
// All 39 successful, unmutated list_files captures use this exact order,
|
|
191
228
|
// independently of whether the requested path is the project root or src/.
|
|
192
229
|
// It is the seed manifest order, not an alphabetical/filesystem order.
|
|
@@ -404,6 +441,17 @@ function stringValue(value) {
|
|
|
404
441
|
}
|
|
405
442
|
function contentTypeForFile(filePath) {
|
|
406
443
|
const extension = path.extname(filePath).toLowerCase();
|
|
444
|
+
const capturedTypes = {
|
|
445
|
+
".py": "text/x-python",
|
|
446
|
+
".sh": "text/x-shellscript",
|
|
447
|
+
".sql": "application/sql",
|
|
448
|
+
".yaml": "application/x-yaml",
|
|
449
|
+
".yml": "application/x-yaml",
|
|
450
|
+
".mjs": "text/plain",
|
|
451
|
+
".c": "text/plain",
|
|
452
|
+
};
|
|
453
|
+
if (capturedTypes[extension])
|
|
454
|
+
return capturedTypes[extension];
|
|
407
455
|
if ([".js", ".jsx", ".mjs", ".cjs", ".ts", ".tsx", ".mts", ".cts"].includes(extension)) {
|
|
408
456
|
return "text/javascript";
|
|
409
457
|
}
|
|
@@ -541,6 +589,17 @@ function validationIssues(toolName, value, errors, definitions) {
|
|
|
541
589
|
continue;
|
|
542
590
|
}
|
|
543
591
|
const actual = missing ? undefined : valueAtPath(value, error.instancePath);
|
|
592
|
+
if (error.keyword === "enum") {
|
|
593
|
+
const options = record(error.params).allowedValues;
|
|
594
|
+
issues.push({
|
|
595
|
+
received: actual,
|
|
596
|
+
code: "invalid_enum_value",
|
|
597
|
+
options,
|
|
598
|
+
path: pathParts,
|
|
599
|
+
message: `Invalid enum value. Expected ${options.map((option) => `'${option}'`).join(" | ")}, received '${actual}'`,
|
|
600
|
+
});
|
|
601
|
+
continue;
|
|
602
|
+
}
|
|
544
603
|
const expected = error.keyword === "type"
|
|
545
604
|
? String(record(error.params).type || "string")
|
|
546
605
|
: requiredPropertyType(toolName, key, definitions);
|
|
@@ -763,9 +822,14 @@ export class CodeToolExecutor {
|
|
|
763
822
|
if (!advertiseApplyPatch && !disallowed.has("apply_patch")) {
|
|
764
823
|
this.validators.set("apply_patch", this.ajv.compile(APPLY_PATCH_PARAMETERS));
|
|
765
824
|
}
|
|
825
|
+
// Captured React/HTML histories call this hidden tool. No public schema was
|
|
826
|
+
// captured: accept its object payload without adding model-visible tools.
|
|
827
|
+
if (config.mode !== "full-stack" && !disallowed.has("update_plan")) {
|
|
828
|
+
this.validators.set("update_plan", this.ajv.compile({ type: "object" }));
|
|
829
|
+
}
|
|
766
830
|
}
|
|
767
|
-
// The
|
|
768
|
-
//
|
|
831
|
+
// The tools offered to the model for this session, with captured schemas
|
|
832
|
+
// and descriptions adjusted for current capabilities and workspace runtime.
|
|
769
833
|
availableTools() {
|
|
770
834
|
return structuredClone(this.definitions);
|
|
771
835
|
}
|
|
@@ -795,10 +859,13 @@ export class CodeToolExecutor {
|
|
|
795
859
|
else if (name === "list_files" || name === "glob_files") {
|
|
796
860
|
argumentsValue.path ??= "";
|
|
797
861
|
}
|
|
798
|
-
else if (
|
|
862
|
+
else if (name === "bash" &&
|
|
799
863
|
argumentsValue && typeof argumentsValue === "object" &&
|
|
800
|
-
!Array.isArray(argumentsValue)
|
|
801
|
-
argumentsValue.workdir
|
|
864
|
+
!Array.isArray(argumentsValue)) {
|
|
865
|
+
if (argumentsValue.workdir === undefined)
|
|
866
|
+
argumentsValue.workdir = "";
|
|
867
|
+
if (argumentsValue.description === undefined)
|
|
868
|
+
argumentsValue.description = "";
|
|
802
869
|
}
|
|
803
870
|
else if (name === "grep_files") {
|
|
804
871
|
argumentsValue.path ??= "";
|
|
@@ -963,13 +1030,15 @@ export class CodeToolExecutor {
|
|
|
963
1030
|
return replayed.output;
|
|
964
1031
|
switch (name) {
|
|
965
1032
|
case "read_file":
|
|
966
|
-
return this.readCodeFile(String(values.path), Number(values.offset), Number(values.limit));
|
|
1033
|
+
return this.readCodeFile(String(values.path), Number(values.offset), Number(values.limit), _toolCallId);
|
|
967
1034
|
case "create_file":
|
|
968
1035
|
return this.createCodeFile(String(values.path), String(values.content));
|
|
969
1036
|
case "edit_file":
|
|
970
1037
|
return this.editCodeFile(String(values.path), String(values.context), String(values.replacement));
|
|
971
1038
|
case "apply_patch":
|
|
972
1039
|
return this.applyCodePatch(String(values.input));
|
|
1040
|
+
case "update_plan":
|
|
1041
|
+
return { status: "success" };
|
|
973
1042
|
case "delete_file":
|
|
974
1043
|
return this.deleteCodeFile(String(values.path));
|
|
975
1044
|
case "list_files":
|
|
@@ -983,7 +1052,7 @@ export class CodeToolExecutor {
|
|
|
983
1052
|
case "build_project":
|
|
984
1053
|
return this.buildProject();
|
|
985
1054
|
case "bash":
|
|
986
|
-
return this.
|
|
1055
|
+
return this.codeBash(String(values.command), String(values.workdir));
|
|
987
1056
|
case "build_and_start":
|
|
988
1057
|
return this.buildAndStart();
|
|
989
1058
|
case "web_search":
|
|
@@ -1137,7 +1206,7 @@ export class CodeToolExecutor {
|
|
|
1137
1206
|
await visit(searchRoot);
|
|
1138
1207
|
return files;
|
|
1139
1208
|
}
|
|
1140
|
-
async readCodeFile(rawPath, offset, limit) {
|
|
1209
|
+
async readCodeFile(rawPath, offset, limit, toolCallId) {
|
|
1141
1210
|
const target = await this.confinedPath(rawPath);
|
|
1142
1211
|
let data;
|
|
1143
1212
|
try {
|
|
@@ -1151,10 +1220,50 @@ export class CodeToolExecutor {
|
|
|
1151
1220
|
message: `File "${rawPath}" does not exist`,
|
|
1152
1221
|
};
|
|
1153
1222
|
}
|
|
1223
|
+
if (readableImageExtensions.has(path.extname(target).toLowerCase())) {
|
|
1224
|
+
const mediaType = readableImageMimeType(data);
|
|
1225
|
+
if (!mediaType) {
|
|
1226
|
+
return {
|
|
1227
|
+
status: "error",
|
|
1228
|
+
message: `"${rawPath}" is not a valid image — the file contents are not PNG or JPEG. Re-download or regenerate the file, then read it again.`,
|
|
1229
|
+
};
|
|
1230
|
+
}
|
|
1231
|
+
if (!supportsImageInput(this.config)) {
|
|
1232
|
+
return {
|
|
1233
|
+
status: "error",
|
|
1234
|
+
message: `This model cannot view images. Reference "${rawPath}" by its path instead.`,
|
|
1235
|
+
};
|
|
1236
|
+
}
|
|
1237
|
+
if (data.length > maximumReadableImageBytes) {
|
|
1238
|
+
return {
|
|
1239
|
+
status: "error",
|
|
1240
|
+
message: `Image "${rawPath}" is too large to view (${Math.round(data.length / 1024)} KB, max 10240 KB).`,
|
|
1241
|
+
};
|
|
1242
|
+
}
|
|
1243
|
+
if (!hasReadableImageStructure(data, mediaType)) {
|
|
1244
|
+
return {
|
|
1245
|
+
status: "error",
|
|
1246
|
+
message: `"${rawPath}" is not a valid image — the file contents are not PNG or JPEG. Re-download or regenerate the file, then read it again.`,
|
|
1247
|
+
};
|
|
1248
|
+
}
|
|
1249
|
+
const relativePath = this.relativePath(target);
|
|
1250
|
+
this.pendingVisualContent.set(toolCallId, [
|
|
1251
|
+
{ image: `data:${mediaType};base64,${data.toString("base64")}` },
|
|
1252
|
+
]);
|
|
1253
|
+
return {
|
|
1254
|
+
file: {
|
|
1255
|
+
content: `[Image file ${relativePath} (${Math.round(data.length / 1024)} KB, ${mediaType})]`,
|
|
1256
|
+
contentType: "text/plain",
|
|
1257
|
+
path: relativePath,
|
|
1258
|
+
},
|
|
1259
|
+
image: { mediaType, sizeBytes: data.length },
|
|
1260
|
+
status: "success",
|
|
1261
|
+
};
|
|
1262
|
+
}
|
|
1154
1263
|
if (workspaceFileKind(target, data.subarray(0, 4096)) !== "text") {
|
|
1155
1264
|
return {
|
|
1156
1265
|
status: "error",
|
|
1157
|
-
message: `
|
|
1266
|
+
message: `Cannot read binary file "${rawPath}". Only text files and PNG/JPEG images are supported.`,
|
|
1158
1267
|
};
|
|
1159
1268
|
}
|
|
1160
1269
|
const lines = decodeText(data).split("\n");
|
|
@@ -1454,6 +1563,11 @@ export class CodeToolExecutor {
|
|
|
1454
1563
|
this.forgetListedPath(this.relativePath(target));
|
|
1455
1564
|
return { status: "success" };
|
|
1456
1565
|
}
|
|
1566
|
+
discoverableFile(filePath) {
|
|
1567
|
+
// Full Stack captures expose the lock to shell/read_file, but omit it
|
|
1568
|
+
// from both project discovery tools, even before any package installation.
|
|
1569
|
+
return this.config.mode !== "full-stack" || this.relativePath(filePath) !== "package-lock.json";
|
|
1570
|
+
}
|
|
1457
1571
|
async listCodeFiles(rawPath) {
|
|
1458
1572
|
if (this.config.mode === "react" && rawPath === "/")
|
|
1459
1573
|
rawPath = ".";
|
|
@@ -1465,7 +1579,7 @@ export class CodeToolExecutor {
|
|
|
1465
1579
|
!existsSync(target)) {
|
|
1466
1580
|
return { status: "success", files: [] };
|
|
1467
1581
|
}
|
|
1468
|
-
const files = this.orderListedFiles(await this.walkFiles(target));
|
|
1582
|
+
const files = this.orderListedFiles((await this.walkFiles(target)).filter(file => this.discoverableFile(file)));
|
|
1469
1583
|
return {
|
|
1470
1584
|
status: "success",
|
|
1471
1585
|
files: (this.config.mode === "react" ? files.slice(0, 500) : files)
|
|
@@ -1667,6 +1781,7 @@ export class CodeToolExecutor {
|
|
|
1667
1781
|
return { status: "success", paths: [], truncated: false };
|
|
1668
1782
|
}
|
|
1669
1783
|
const allPaths = files
|
|
1784
|
+
.filter(file => this.discoverableFile(file))
|
|
1670
1785
|
.filter((filePath) => matchesGlob(path.relative(target, filePath).split(path.sep).join("/"), pattern) || (this.config.mode === "react" && matchesGlob(this.relativePath(filePath), pattern)))
|
|
1671
1786
|
.map((filePath) => this.relativePath(filePath));
|
|
1672
1787
|
return {
|
|
@@ -1782,7 +1897,7 @@ export class CodeToolExecutor {
|
|
|
1782
1897
|
stderr: this.virtualizeCodeOutput(result.stderr),
|
|
1783
1898
|
};
|
|
1784
1899
|
}
|
|
1785
|
-
async
|
|
1900
|
+
async codeBash(command, workdir) {
|
|
1786
1901
|
const cwd = workdir.trim() || ".";
|
|
1787
1902
|
if (path.isAbsolute(cwd) || cwd.includes("..")) {
|
|
1788
1903
|
throw new Error(`Invalid workdir: ${cwd}. Commands run from the project root by default. Only use workdir for relative subdirectories, never absolute paths.`);
|
|
@@ -1792,6 +1907,8 @@ export class CodeToolExecutor {
|
|
|
1792
1907
|
? configuredTimeout
|
|
1793
1908
|
: 300;
|
|
1794
1909
|
const result = await this.bash(command, cwd, timeoutSeconds);
|
|
1910
|
+
if (result.timed_out)
|
|
1911
|
+
return { status: "error", message: "Command timed out" };
|
|
1795
1912
|
const exitCode = result.exit_code;
|
|
1796
1913
|
const stdout = String(result.stdout || "");
|
|
1797
1914
|
const stderr = String(result.stderr || "");
|
|
@@ -1991,12 +2108,6 @@ export class CodeToolExecutor {
|
|
|
1991
2108
|
reject(this.signal.reason || new Error("operation cancelled"));
|
|
1992
2109
|
return;
|
|
1993
2110
|
}
|
|
1994
|
-
// 生产契约:status 恒为 "completed"(包括非零退出码),超时无参考样本,
|
|
1995
|
-
// 按最小猜测同样返回 completed + exit_code null,stderr 附超时说明。
|
|
1996
|
-
if (timedOut && this.config.mode !== "full-stack") {
|
|
1997
|
-
stderr +=
|
|
1998
|
-
(stderr ? "\n" : "") + `command exceeded ${timeoutSeconds}s`;
|
|
1999
|
-
}
|
|
2000
2111
|
const out = capBashOutput(stdout);
|
|
2001
2112
|
const err = capBashOutput(stderr);
|
|
2002
2113
|
resolve({
|
|
@@ -2004,6 +2115,7 @@ export class CodeToolExecutor {
|
|
|
2004
2115
|
stderr: err.text,
|
|
2005
2116
|
stdout: out.text,
|
|
2006
2117
|
exit_code: timedOut ? null : code,
|
|
2118
|
+
timed_out: timedOut,
|
|
2007
2119
|
duration_ms: Date.now() - startedAt,
|
|
2008
2120
|
stderr_truncated: err.truncated,
|
|
2009
2121
|
stdout_truncated: out.truncated,
|