ycodium-acp-executor 0.2.3478 → 0.2.3502
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/probe.d.ts +6 -2
- package/dist/probe.d.ts.map +1 -1
- package/dist/probe.js +60 -17
- package/dist/probe.js.map +1 -1
- package/package.json +1 -1
package/dist/probe.d.ts
CHANGED
|
@@ -28,6 +28,7 @@ export declare function openAcpProbeHandshake(input: {
|
|
|
28
28
|
readonly writable: NodeStream.Writable;
|
|
29
29
|
readonly clientInfo: AcpClientInfo;
|
|
30
30
|
readonly requestTimeoutMs: number;
|
|
31
|
+
readonly signal?: AbortSignal;
|
|
31
32
|
}): Promise<AcpProbeHandshake>;
|
|
32
33
|
/**
|
|
33
34
|
* agent 在 `initialize` 里自报的版本(`agentInfo.version`)。没报或空串就是 null,不猜。
|
|
@@ -52,14 +53,16 @@ export type ProbeProcessRun = {
|
|
|
52
53
|
readonly exitCode: number | null;
|
|
53
54
|
};
|
|
54
55
|
/**
|
|
55
|
-
*
|
|
56
|
-
*
|
|
56
|
+
* 跑完一个已经起来的一次性命令:同时收 stdout/stderr(各自封顶)、关 stdin、等退出,整段
|
|
57
|
+
* 一个超时,收尾一律终止并等待输出与退出。超时抛 `<what> timed out after <ms>ms`,由调用方按失败报;
|
|
57
58
|
* 「起不来」在 spawn 那一步,由调用方自己分。
|
|
58
59
|
*/
|
|
59
60
|
export declare function collectProbeProcess(child: ProbeProcess, input: {
|
|
60
61
|
readonly timeoutMs: number;
|
|
61
62
|
readonly maxOutputBytes: number;
|
|
62
63
|
readonly what: string;
|
|
64
|
+
readonly signal?: AbortSignal;
|
|
65
|
+
readonly cleanupTimeoutMs?: number;
|
|
63
66
|
}): Promise<ProbeProcessRun>;
|
|
64
67
|
/**
|
|
65
68
|
* 跑一次 `<cli> --version` 读版本号。起不来、超时、非零退出、认不出一律 null:版本读不到
|
|
@@ -70,5 +73,6 @@ export declare function collectProbeProcess(child: ProbeProcess, input: {
|
|
|
70
73
|
export declare function probeCliVersion(input: {
|
|
71
74
|
readonly spawn: () => Promise<ProbeProcess>;
|
|
72
75
|
readonly timeoutMs: number;
|
|
76
|
+
readonly signal?: AbortSignal;
|
|
73
77
|
}): Promise<string | null>;
|
|
74
78
|
//# sourceMappingURL=probe.d.ts.map
|
package/dist/probe.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probe.d.ts","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,KAAK,UAAU,MAAM,aAAa,CAAC;AAI/C,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG1E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,iDAAiD;IACjD,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;
|
|
1
|
+
{"version":3,"file":"probe.d.ts","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"AACA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,KAAK,KAAK,UAAU,MAAM,aAAa,CAAC;AAI/C,OAAO,EAAwB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG1E,MAAM,MAAM,iBAAiB,GAAG;IAC9B,iDAAiD;IACjD,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,mDAAmD;IACnD,QAAQ,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzE,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;AAoCF,wBAAsB,qBAAqB,CAAC,KAAK,EAAE;IACjD,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC;IACvC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC;IACvC,QAAQ,CAAC,UAAU,EAAE,aAAa,CAAC;IACnC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA4B7B;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,gBAAgB,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAIxE;AAQD,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAE7D;AAED,6DAA6D;AAC7D,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAClE,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,eAAe,GAAG;IAC5B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,CAAC;AAiBF;;;;GAIG;AACH,wBAAsB,mBAAmB,CACvC,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE;IACL,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC,GACA,OAAO,CAAC,eAAe,CAAC,CA8C1B;AAKD;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,QAAQ,CAAC,KAAK,EAAE,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;IAC5C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC;CAC/B,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAsBzB"}
|
package/dist/probe.js
CHANGED
|
@@ -2,17 +2,26 @@ import { createAcpConnection } from "./protocol.js";
|
|
|
2
2
|
import { acpInitializePayload } from "./handshake.js";
|
|
3
3
|
import { asTrimmedString, isRecord } from "./util.js";
|
|
4
4
|
/** 超时后 promise 就地作废;挂着的请求由调用方杀进程时一起收掉。 */
|
|
5
|
-
function withProbeTimeout(promise, timeoutMs, what) {
|
|
5
|
+
function withProbeTimeout(promise, timeoutMs, what, signal) {
|
|
6
|
+
signal?.throwIfAborted();
|
|
6
7
|
return new Promise((resolve, reject) => {
|
|
8
|
+
const onAbort = () => {
|
|
9
|
+
clearTimeout(timer);
|
|
10
|
+
reject(signal?.reason ?? new Error("aborted"));
|
|
11
|
+
};
|
|
7
12
|
const timer = setTimeout(() => {
|
|
13
|
+
signal?.removeEventListener("abort", onAbort);
|
|
8
14
|
reject(new Error(`${what} timed out after ${timeoutMs}ms`));
|
|
9
15
|
}, timeoutMs);
|
|
10
16
|
timer.unref?.();
|
|
17
|
+
signal?.addEventListener("abort", onAbort, { once: true });
|
|
11
18
|
promise.then((value) => {
|
|
12
19
|
clearTimeout(timer);
|
|
20
|
+
signal?.removeEventListener("abort", onAbort);
|
|
13
21
|
resolve(value);
|
|
14
22
|
}, (error) => {
|
|
15
23
|
clearTimeout(timer);
|
|
24
|
+
signal?.removeEventListener("abort", onAbort);
|
|
16
25
|
reject(error instanceof Error ? error : new Error(String(error)));
|
|
17
26
|
});
|
|
18
27
|
});
|
|
@@ -24,10 +33,10 @@ export async function openAcpProbeHandshake(input) {
|
|
|
24
33
|
onNotification: () => undefined,
|
|
25
34
|
});
|
|
26
35
|
try {
|
|
27
|
-
const initializeResult = await withProbeTimeout(connection.request("initialize", acpInitializePayload(input.clientInfo)), input.requestTimeoutMs, "ACP probe request 'initialize'");
|
|
36
|
+
const initializeResult = await withProbeTimeout(connection.request("initialize", acpInitializePayload(input.clientInfo)), input.requestTimeoutMs, "ACP probe request 'initialize'", input.signal);
|
|
28
37
|
return {
|
|
29
38
|
initializeResult,
|
|
30
|
-
request: (method, params) => withProbeTimeout(connection.request(method, params), input.requestTimeoutMs, `ACP probe request '${method}'
|
|
39
|
+
request: (method, params) => withProbeTimeout(connection.request(method, params), input.requestTimeoutMs, `ACP probe request '${method}'`, input.signal),
|
|
31
40
|
close: () => connection.close(),
|
|
32
41
|
};
|
|
33
42
|
}
|
|
@@ -69,24 +78,52 @@ async function collectCappedText(stream, maxBytes) {
|
|
|
69
78
|
return { text: text + decoder.decode(), overflowed: total > maxBytes };
|
|
70
79
|
}
|
|
71
80
|
/**
|
|
72
|
-
*
|
|
73
|
-
*
|
|
81
|
+
* 跑完一个已经起来的一次性命令:同时收 stdout/stderr(各自封顶)、关 stdin、等退出,整段
|
|
82
|
+
* 一个超时,收尾一律终止并等待输出与退出。超时抛 `<what> timed out after <ms>ms`,由调用方按失败报;
|
|
74
83
|
* 「起不来」在 spawn 那一步,由调用方自己分。
|
|
75
84
|
*/
|
|
76
85
|
export async function collectProbeProcess(child, input) {
|
|
86
|
+
// 同时消费两路输出,输入关闭也算在工作期限内,避免卡在关闭 stdin 的阶段。
|
|
87
|
+
const stdinClosed = Promise.resolve().then(() => child.closeStdin());
|
|
88
|
+
const stdout = collectCappedText(child.stdout, input.maxOutputBytes);
|
|
89
|
+
const stderr = collectCappedText(child.stderr, input.maxOutputBytes);
|
|
90
|
+
const tasks = [stdinClosed, stdout, stderr, child.exited];
|
|
91
|
+
let result;
|
|
92
|
+
let bodyFailed = false;
|
|
93
|
+
let bodyError;
|
|
94
|
+
try {
|
|
95
|
+
const [, out, err, exitCode] = await withProbeTimeout(Promise.all(tasks), input.timeoutMs, input.what, input.signal);
|
|
96
|
+
result = { stdout: out.overflowed ? undefined : out.text, stderr: err.text, exitCode };
|
|
97
|
+
}
|
|
98
|
+
catch (error) {
|
|
99
|
+
bodyFailed = true;
|
|
100
|
+
bodyError = error;
|
|
101
|
+
}
|
|
102
|
+
const term = Promise.resolve().then(() => child.kill("SIGTERM"));
|
|
103
|
+
void term.catch(() => undefined);
|
|
104
|
+
const cleanup = (async () => {
|
|
105
|
+
try {
|
|
106
|
+
await withProbeTimeout(child.exited, 250, `${input.what} termination grace`);
|
|
107
|
+
}
|
|
108
|
+
catch {
|
|
109
|
+
await child.kill("SIGKILL");
|
|
110
|
+
}
|
|
111
|
+
const settled = await Promise.allSettled([term, ...tasks]);
|
|
112
|
+
// 工作错误由原通道保留;终止失败额外报告,不能伪装成已回收。
|
|
113
|
+
const termination = settled[0];
|
|
114
|
+
if (termination?.status === "rejected")
|
|
115
|
+
throw termination.reason;
|
|
116
|
+
})();
|
|
77
117
|
try {
|
|
78
|
-
|
|
79
|
-
await child.closeStdin().catch(() => undefined);
|
|
80
|
-
const [stdout, stderr, exitCode] = await withProbeTimeout(Promise.all([
|
|
81
|
-
collectCappedText(child.stdout, input.maxOutputBytes),
|
|
82
|
-
collectCappedText(child.stderr, input.maxOutputBytes),
|
|
83
|
-
child.exited,
|
|
84
|
-
]), input.timeoutMs, input.what);
|
|
85
|
-
return { stdout: stdout.overflowed ? undefined : stdout.text, stderr: stderr.text, exitCode };
|
|
118
|
+
await withProbeTimeout(cleanup, input.cleanupTimeoutMs ?? 5_000, `${input.what} cleanup`);
|
|
86
119
|
}
|
|
87
|
-
|
|
88
|
-
|
|
120
|
+
catch (cleanupError) {
|
|
121
|
+
// oxlint-disable-next-line preserve-caught-error -- AggregateError 的 cause 是第三个参数,下方保留原始清理错误。
|
|
122
|
+
throw new AggregateError(bodyFailed ? [bodyError, cleanupError] : [cleanupError], `${input.what} cleanup failed`, { cause: cleanupError });
|
|
89
123
|
}
|
|
124
|
+
if (bodyFailed)
|
|
125
|
+
throw bodyError;
|
|
126
|
+
return result;
|
|
90
127
|
}
|
|
91
128
|
/** 版本输出正常就一行;封顶只防 CLI 抽风刷屏把内存吃掉。 */
|
|
92
129
|
const MAX_VERSION_OUTPUT_BYTES = 64 * 1024;
|
|
@@ -97,11 +134,14 @@ const MAX_VERSION_OUTPUT_BYTES = 64 * 1024;
|
|
|
97
134
|
* 告警,那里的版本号未必是这只 CLI 的。
|
|
98
135
|
*/
|
|
99
136
|
export async function probeCliVersion(input) {
|
|
137
|
+
input.signal?.throwIfAborted();
|
|
100
138
|
let child;
|
|
101
139
|
try {
|
|
102
140
|
child = await input.spawn();
|
|
103
141
|
}
|
|
104
|
-
catch {
|
|
142
|
+
catch (error) {
|
|
143
|
+
if (input.signal?.aborted)
|
|
144
|
+
throw error;
|
|
105
145
|
return null;
|
|
106
146
|
}
|
|
107
147
|
try {
|
|
@@ -109,12 +149,15 @@ export async function probeCliVersion(input) {
|
|
|
109
149
|
timeoutMs: input.timeoutMs,
|
|
110
150
|
maxOutputBytes: MAX_VERSION_OUTPUT_BYTES,
|
|
111
151
|
what: "--version",
|
|
152
|
+
...(input.signal === undefined ? {} : { signal: input.signal }),
|
|
112
153
|
});
|
|
113
154
|
if (run.exitCode !== 0)
|
|
114
155
|
return null;
|
|
115
156
|
return parseCliVersion(run.stdout ?? "") ?? parseCliVersion(run.stderr);
|
|
116
157
|
}
|
|
117
|
-
catch {
|
|
158
|
+
catch (error) {
|
|
159
|
+
if (error instanceof AggregateError || input.signal?.aborted)
|
|
160
|
+
throw error;
|
|
118
161
|
return null;
|
|
119
162
|
}
|
|
120
163
|
}
|
package/dist/probe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probe.js","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"AAmBA,OAAO,EAAE,mBAAmB,EAAsB,MAAM,eAAe,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAsB,MAAM,gBAAgB,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAUtD,0CAA0C;AAC1C,SAAS,gBAAgB,
|
|
1
|
+
{"version":3,"file":"probe.js","sourceRoot":"","sources":["../src/probe.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ycodium-acp-executor",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.3502",
|
|
4
4
|
"description": "Agent Client Protocol client and executor state machine for Ycodium agent plugins. Speaks ACP over stdio and emits Ycodium executor events.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"acp",
|