@claudexor/core 3.3.16 → 3.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/env-scope.d.ts +18 -0
- package/dist/env-scope.d.ts.map +1 -1
- package/dist/env-scope.js +43 -7
- package/dist/env-scope.js.map +1 -1
- package/dist/executable-inspection.d.ts +1 -1
- package/dist/executable-inspection.d.ts.map +1 -1
- package/dist/executable-inspection.js +3 -3
- package/dist/executable-inspection.js.map +1 -1
- package/dist/native/claudexor-process-identity +0 -0
- package/dist/process-group.d.ts +20 -2
- package/dist/process-group.d.ts.map +1 -1
- package/dist/process-group.js +32 -1
- package/dist/process-group.js.map +1 -1
- package/dist/process-identity.d.ts +41 -5
- package/dist/process-identity.d.ts.map +1 -1
- package/dist/process-identity.js +171 -25
- package/dist/process-identity.js.map +1 -1
- package/dist/process-tree.d.ts +11 -1
- package/dist/process-tree.d.ts.map +1 -1
- package/dist/process-tree.js +20 -2
- package/dist/process-tree.js.map +1 -1
- package/dist/runtime-env.d.ts.map +1 -1
- package/dist/runtime-env.js +28 -17
- package/dist/runtime-env.js.map +1 -1
- package/package.json +3 -3
package/dist/env-scope.d.ts
CHANGED
|
@@ -28,6 +28,24 @@ export declare function providerScrubEnv(keep?: readonly string[]): Record<strin
|
|
|
28
28
|
* re-adds its single chosen credential explicitly afterward.
|
|
29
29
|
*/
|
|
30
30
|
export declare const CLEAN_ENV_ALLOWLIST: readonly string[];
|
|
31
|
+
/**
|
|
32
|
+
* Windows process-environment keys a spawned native CLI needs to start at all:
|
|
33
|
+
* the system root and shell that Windows itself resolves against, the temp and
|
|
34
|
+
* profile roots every vendor CLI writes to, and PATHEXT. Read case-insensitively
|
|
35
|
+
* on Windows, so the canonical uppercase spelling here matches any casing the OS
|
|
36
|
+
* used. Kept as one named set so every scrubbed spawn env forwards the same
|
|
37
|
+
* keys instead of each caller guessing.
|
|
38
|
+
*/
|
|
39
|
+
export declare const WINDOWS_RUNTIME_ENV_KEYS: readonly string[];
|
|
40
|
+
/**
|
|
41
|
+
* Copy allowlisted keys out of `source`. Windows spells its own variables
|
|
42
|
+
* `SystemRoot`, `ComSpec`, `windir`, and a plain object copy of `process.env`
|
|
43
|
+
* loses the case-insensitive lookup the live object has, so there the match is
|
|
44
|
+
* case-insensitive and the value lands under the canonical spelling (Windows
|
|
45
|
+
* is case-insensitive at CreateProcess). On POSIX, where `http_proxy` and
|
|
46
|
+
* `HTTP_PROXY` are genuinely different variables, the match stays exact.
|
|
47
|
+
*/
|
|
48
|
+
export declare function pickAllowlistedEnv(source: NodeJS.ProcessEnv, keys: readonly string[], platform?: NodeJS.Platform): NodeJS.ProcessEnv;
|
|
31
49
|
/**
|
|
32
50
|
* Build the base child env for a given inheritance mode. `mirror_native` copies
|
|
33
51
|
* the parent env (the native CLIs' default); `clean` copies only the minimal
|
package/dist/env-scope.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-scope.d.ts","sourceRoot":"","sources":["../src/env-scope.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EA4DhD,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAOnF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAoChD,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,eAAe,GAAG,OAAO,EACtC,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"env-scope.d.ts","sourceRoot":"","sources":["../src/env-scope.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EA4DhD,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,GAAE,SAAS,MAAM,EAAO,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAOnF;AAED;;;;;;;GAOG;AACH,eAAO,MAAM,mBAAmB,EAAE,SAAS,MAAM,EAoChD,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,MAAM,EAarD,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,CAAC,UAAU,EACzB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAAC,UAAU,CAWnB;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,WAAW,EAAE,eAAe,GAAG,OAAO,EACtC,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAAC,UAAU,CAInB"}
|
package/dist/env-scope.js
CHANGED
|
@@ -133,6 +133,48 @@ export const CLEAN_ENV_ALLOWLIST = [
|
|
|
133
133
|
"REQUESTS_CA_BUNDLE",
|
|
134
134
|
"CURL_CA_BUNDLE",
|
|
135
135
|
];
|
|
136
|
+
/**
|
|
137
|
+
* Windows process-environment keys a spawned native CLI needs to start at all:
|
|
138
|
+
* the system root and shell that Windows itself resolves against, the temp and
|
|
139
|
+
* profile roots every vendor CLI writes to, and PATHEXT. Read case-insensitively
|
|
140
|
+
* on Windows, so the canonical uppercase spelling here matches any casing the OS
|
|
141
|
+
* used. Kept as one named set so every scrubbed spawn env forwards the same
|
|
142
|
+
* keys instead of each caller guessing.
|
|
143
|
+
*/
|
|
144
|
+
export const WINDOWS_RUNTIME_ENV_KEYS = [
|
|
145
|
+
"SYSTEMROOT",
|
|
146
|
+
"SYSTEMDRIVE",
|
|
147
|
+
"WINDIR",
|
|
148
|
+
"COMSPEC",
|
|
149
|
+
"PATHEXT",
|
|
150
|
+
"TEMP",
|
|
151
|
+
"TMP",
|
|
152
|
+
"USERPROFILE",
|
|
153
|
+
"HOMEDRIVE",
|
|
154
|
+
"HOMEPATH",
|
|
155
|
+
"APPDATA",
|
|
156
|
+
"LOCALAPPDATA",
|
|
157
|
+
];
|
|
158
|
+
/**
|
|
159
|
+
* Copy allowlisted keys out of `source`. Windows spells its own variables
|
|
160
|
+
* `SystemRoot`, `ComSpec`, `windir`, and a plain object copy of `process.env`
|
|
161
|
+
* loses the case-insensitive lookup the live object has, so there the match is
|
|
162
|
+
* case-insensitive and the value lands under the canonical spelling (Windows
|
|
163
|
+
* is case-insensitive at CreateProcess). On POSIX, where `http_proxy` and
|
|
164
|
+
* `HTTP_PROXY` are genuinely different variables, the match stays exact.
|
|
165
|
+
*/
|
|
166
|
+
export function pickAllowlistedEnv(source, keys, platform = process.platform) {
|
|
167
|
+
const insensitive = platform === "win32"
|
|
168
|
+
? new Map(Object.entries(source).map(([key, value]) => [key.toUpperCase(), value]))
|
|
169
|
+
: null;
|
|
170
|
+
const out = {};
|
|
171
|
+
for (const key of keys) {
|
|
172
|
+
const value = source[key] ?? insensitive?.get(key.toUpperCase());
|
|
173
|
+
if (value !== undefined)
|
|
174
|
+
out[key] = value;
|
|
175
|
+
}
|
|
176
|
+
return out;
|
|
177
|
+
}
|
|
136
178
|
/**
|
|
137
179
|
* Build the base child env for a given inheritance mode. `mirror_native` copies
|
|
138
180
|
* the parent env (the native CLIs' default); `clean` copies only the minimal
|
|
@@ -143,12 +185,6 @@ export function composeBaseEnv(inheritance, source = process.env, execPath = pro
|
|
|
143
185
|
const normalizedSource = harnessRuntimeEnv(source, execPath, platform);
|
|
144
186
|
if (inheritance !== "clean")
|
|
145
187
|
return normalizedSource;
|
|
146
|
-
|
|
147
|
-
for (const key of CLEAN_ENV_ALLOWLIST) {
|
|
148
|
-
const value = normalizedSource[key];
|
|
149
|
-
if (value !== undefined)
|
|
150
|
-
out[key] = value;
|
|
151
|
-
}
|
|
152
|
-
return out;
|
|
188
|
+
return pickAllowlistedEnv(normalizedSource, CLEAN_ENV_ALLOWLIST, platform);
|
|
153
189
|
}
|
|
154
190
|
//# sourceMappingURL=env-scope.js.map
|
package/dist/env-scope.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"env-scope.js","sourceRoot":"","sources":["../src/env-scope.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,iBAAiB;IACjB,gBAAgB;IAChB,YAAY;IACZ,eAAe;IACf,gBAAgB;IAChB,mBAAmB;IACnB,iBAAiB;IACjB,eAAe;IACf,oBAAoB;IACpB,yBAAyB;IACzB,qBAAqB;IACrB,mBAAmB;IACnB,sBAAsB;IACtB,oBAAoB;IACpB,gBAAgB;IAChB,yBAAyB;IACzB,yBAAyB;IACzB,wBAAwB;IACxB,yBAAyB;IACzB,4BAA4B;IAC5B,6BAA6B;IAC7B,2BAA2B;IAC3B,8BAA8B;IAC9B,4BAA4B;IAC5B,4BAA4B;IAC5B,6BAA6B;IAC7B,2DAA2D;IAC3D,mBAAmB;IACnB,uBAAuB;IACvB,mBAAmB;IACnB,aAAa;IACb,gCAAgC;IAChC,mEAAmE;IACnE,iBAAiB;IACjB,qBAAqB;IACrB,iBAAiB;IACjB,uBAAuB;IACvB,4BAA4B;IAC5B,sBAAsB;IACtB,yBAAyB;IACzB,kBAAkB;IAClB,qDAAqD;IACrD,gBAAgB;IAChB,gBAAgB;IAChB,aAAa;IACb,oBAAoB;IACpB,qBAAqB;IACrB,gBAAgB;IAChB,0BAA0B;IAC1B,gBAAgB;IAChB,kBAAkB;IAClB,oCAAoC;IACpC,sBAAsB;IACtB,2BAA2B;IAC3B,uEAAuE;IACvE,cAAc;IACd,iBAAiB;IACjB,kBAAkB;IAClB,iBAAiB;CAClB,CAAC;AAEF;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAI,GAAsB,EAAE;IAC3D,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,MAAM,GAAG,GAAyB,EAAE,CAAC;IACrC,KAAK,MAAM,IAAI,IAAI,mBAAmB,EAAE,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;YAAE,GAAG,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;IAC3C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAsB;IACpD,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;IACN,QAAQ;IACR,IAAI;IACJ,MAAM;IACN,QAAQ;IACR,UAAU;IACV,UAAU;IACV,8EAA8E;IAC9E,WAAW;IACX,SAAS;IACT,iBAAiB;IACjB,gBAAgB;IAChB,eAAe;IACf,YAAY,EAAE,wCAAwC;IACtD,4EAA4E;IAC5E,gFAAgF;IAChF,qFAAqF;IACrF,YAAY;IACZ,aAAa;IACb,WAAW;IACX,UAAU;IACV,YAAY;IACZ,aAAa;IACb,WAAW;IACX,UAAU;IACV,qBAAqB;IACrB,eAAe;IACf,cAAc;IACd,oBAAoB;IACpB,gBAAgB;CACjB,CAAC;AAEF
|
|
1
|
+
{"version":3,"file":"env-scope.js","sourceRoot":"","sources":["../src/env-scope.ts"],"names":[],"mappings":"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"}
|
|
@@ -48,5 +48,5 @@ export declare function isBoundedRegularExecutable(info: ExecutableInspection):
|
|
|
48
48
|
* bounded regular file the current user may execute. No content hash. Returns
|
|
49
49
|
* false on any inspection error (dangling symlink, permission, mid-walk race).
|
|
50
50
|
*/
|
|
51
|
-
export declare function isLaunchableExecutable(path: string): boolean;
|
|
51
|
+
export declare function isLaunchableExecutable(path: string, platform?: NodeJS.Platform): boolean;
|
|
52
52
|
//# sourceMappingURL=executable-inspection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executable-inspection.d.ts","sourceRoot":"","sources":["../src/executable-inspection.ts"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,gEAAgE;IAChE,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd;yDACqD;IACrD,cAAc,EAAE,OAAO,CAAC;CACzB;AASD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EACxC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,MAAM,KAAK,CAAC,GAChD,CAAC,CAuBH;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAEpE;AAED,uEAAuE;AACvE,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAI9E;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,
|
|
1
|
+
{"version":3,"file":"executable-inspection.d.ts","sourceRoot":"","sources":["../src/executable-inspection.ts"],"names":[],"mappings":"AAYA;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,oBAAoB;IACnC,gEAAgE;IAChE,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,OAAO,CAAC;IACvB,gEAAgE;IAChE,YAAY,EAAE,OAAO,CAAC;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,qBAAqB;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd;yDACqD;IACrD,cAAc,EAAE,OAAO,CAAC;CACzB;AASD;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,CAAC,EACxC,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,CAAC,IAAI,EAAE,oBAAoB,EAAE,EAAE,EAAE,MAAM,KAAK,CAAC,GAChD,CAAC,CAuBH;AAED,+CAA+C;AAC/C,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,oBAAoB,CAEpE;AAED,uEAAuE;AACvE,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAI9E;AAED;;;;GAIG;AACH,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,OAAO,CAuBT"}
|
|
@@ -50,12 +50,12 @@ export function isBoundedRegularExecutable(info) {
|
|
|
50
50
|
* bounded regular file the current user may execute. No content hash. Returns
|
|
51
51
|
* false on any inspection error (dangling symlink, permission, mid-walk race).
|
|
52
52
|
*/
|
|
53
|
-
export function isLaunchableExecutable(path) {
|
|
53
|
+
export function isLaunchableExecutable(path, platform = process.platform) {
|
|
54
54
|
try {
|
|
55
55
|
const info = inspectExecutable(path);
|
|
56
56
|
if (!info.isRegularFile || !info.identityStable)
|
|
57
57
|
return false;
|
|
58
|
-
if (
|
|
58
|
+
if (platform !== "win32")
|
|
59
59
|
accessSync(info.realpath, constants.X_OK);
|
|
60
60
|
return true;
|
|
61
61
|
}
|
|
@@ -69,7 +69,7 @@ export function isLaunchableExecutable(path) {
|
|
|
69
69
|
const real = realpathSync(resolve(path));
|
|
70
70
|
if (!statSync(real).isFile())
|
|
71
71
|
return false;
|
|
72
|
-
if (
|
|
72
|
+
if (platform !== "win32")
|
|
73
73
|
accessSync(real, constants.X_OK);
|
|
74
74
|
return true;
|
|
75
75
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"executable-inspection.js","sourceRoot":"","sources":["../src/executable-inspection.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,QAAQ,GACT,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoCpC,6EAA6E;AAC7E,+EAA+E;AAC/E,+DAA+D;AAC/D,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC;AAC7C,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,IAAI,CAAC,CAAC;AAC7C,MAAM,oBAAoB,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,CAAC,QAAQ;AAEzD;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACtC,IAAY,EACZ,EAAiD;IAEjD,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;IAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC,CAAC;IAC7E,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,SAAS,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,SAAS,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACrD,MAAM,cAAc,GAClB,CAAC,KAAK,CAAC,cAAc,EAAE,IAAI,KAAK,CAAC,MAAM,EAAE,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,IAAI,CAAC,GAAG,CAAC;QAChG,MAAM,IAAI,GAAyB;YACjC,QAAQ,EAAE,SAAS;YACnB,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE;YAC5B,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,GAAG,GAAM,CAAC,KAAK,EAAE;YACzC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;YACvB,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,KAAO,CAAC;YACjC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YACxB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;YACvB,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;YACzB,cAAc;SACf,CAAC;QACF,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACtB,CAAC;YAAS,CAAC;QACT,SAAS,CAAC,EAAE,CAAC,CAAC;IAChB,CAAC;AACH,CAAC;AAED,+CAA+C;AAC/C,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,OAAO,wBAAwB,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;AACxD,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,0BAA0B,CAAC,IAA0B;IACnE,OAAO,CACL,IAAI,CAAC,aAAa,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,IAAI,oBAAoB,CACjG,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,
|
|
1
|
+
{"version":3,"file":"executable-inspection.js","sourceRoot":"","sources":["../src/executable-inspection.ts"],"names":[],"mappings":"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"}
|
|
Binary file
|
package/dist/process-group.d.ts
CHANGED
|
@@ -28,6 +28,8 @@ export type ProcessGroupEmptyProbe = {
|
|
|
28
28
|
pgid: number;
|
|
29
29
|
reason: "unsupported_platform" | "permission_denied" | "probe_failed";
|
|
30
30
|
};
|
|
31
|
+
/** Outcome of the injected win32 tree kill (`taskkill /T /F` in production). */
|
|
32
|
+
export type ProcessTreeKillOutcome = "killed" | "not_found" | "failed";
|
|
31
33
|
export type ProcessGroupSignalResult = {
|
|
32
34
|
status: "sent";
|
|
33
35
|
pgid: number;
|
|
@@ -40,13 +42,22 @@ export type ProcessGroupSignalResult = {
|
|
|
40
42
|
status: "unknown";
|
|
41
43
|
pgid: number;
|
|
42
44
|
signal: NodeJS.Signals;
|
|
43
|
-
reason: "stale_leader" | "missing_leader" | "identity_unknown" | "permission_denied" | "signal_failed";
|
|
45
|
+
reason: "stale_leader" | "missing_leader" | "identity_unknown" | "permission_denied" | "signal_failed" | "unsupported_platform";
|
|
44
46
|
};
|
|
45
47
|
export interface ProcessGroupServiceOptions {
|
|
46
48
|
platform?: string;
|
|
47
49
|
identity?: ProcessIdentityReader;
|
|
48
50
|
probeProcessGroup?: (negativePgid: number) => void;
|
|
49
51
|
signalProcessGroup?: (negativePgid: number, signal: NodeJS.Signals) => void;
|
|
52
|
+
/**
|
|
53
|
+
* OPT-IN win32 terminator (`killWindowsProcessTree` in production). Windows
|
|
54
|
+
* has no process groups and no cooperative signal, so a win32 `signal` is a
|
|
55
|
+
* whole-tree kill of the recorded leader. Absent (the default) keeps win32
|
|
56
|
+
* signalling refused, so no consumer inherits Windows termination it did not
|
|
57
|
+
* ask for. The caller injects it from the tree owner, which keeps this
|
|
58
|
+
* module a leaf.
|
|
59
|
+
*/
|
|
60
|
+
killProcessTree?: (pid: number) => ProcessTreeKillOutcome;
|
|
50
61
|
}
|
|
51
62
|
export declare function parseProcessGroupHandle(value: unknown): ProcessGroupHandle;
|
|
52
63
|
export declare class ProcessGroupService {
|
|
@@ -54,10 +65,17 @@ export declare class ProcessGroupService {
|
|
|
54
65
|
private readonly identity;
|
|
55
66
|
private readonly probeProcessGroup;
|
|
56
67
|
private readonly signalProcessGroup;
|
|
68
|
+
private readonly killProcessTree?;
|
|
57
69
|
constructor(options?: ProcessGroupServiceOptions);
|
|
58
70
|
captureLeader(pid: number): ProcessGroupCapture;
|
|
59
71
|
compareLeader(handle: ProcessGroupHandle): ProcessIdentityComparison;
|
|
60
|
-
/**
|
|
72
|
+
/**
|
|
73
|
+
* Only ESRCH proves the complete group empty; every other error is unknown.
|
|
74
|
+
* On win32 there is no group probe: emptiness is the recorded LEADER's
|
|
75
|
+
* kernel identity being gone (missing, or a different process on a recycled
|
|
76
|
+
* pid) after the tree kill that `signal` performs — a leader-death proof,
|
|
77
|
+
* weaker than the POSIX group proof and disclosed as such by its own owner.
|
|
78
|
+
*/
|
|
61
79
|
probeEmpty(handle: ProcessGroupHandle): ProcessGroupEmptyProbe;
|
|
62
80
|
/** Refuses to signal unless the exact recorded leader identity still owns the PGID. */
|
|
63
81
|
signal(handle: ProcessGroupHandle, signal: NodeJS.Signals): ProcessGroupSignalResult;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-group.d.ts","sourceRoot":"","sources":["../src/process-group.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,qBAAqB,EAC1B,KAAK,4BAA4B,EAClC,MAAM,uBAAuB,CAAC;AAE/B,OAAO,CAAC,MAAM,uBAAuB,EAAE,OAAO,MAAM,CAAC;AAErD,MAAM,MAAM,kBAAkB,GAAG,QAAQ,CAAC;IACxC,aAAa,EAAE,CAAC,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,oBAAoB,CAAC;IAC7B,CAAC,uBAAuB,CAAC,EAAE,IAAI,CAAC;CACjC,CAAC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAC3B;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,GAC/C;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAClC;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,4BAA4B,GAAG,uBAAuB,GAAG,0BAA0B,CAAC;CAC7F,CAAC;AAEN,MAAM,MAAM,sBAAsB,GAC9B;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACjC;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GACpC;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,sBAAsB,GAAG,mBAAmB,GAAG,cAAc,CAAC;CACvE,CAAC;AAEN,MAAM,MAAM,wBAAwB,GAChC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAA;CAAE,GACxD;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAA;CAAE,GACzD;IACE,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;IACvB,MAAM,EACF,cAAc,GACd,gBAAgB,GAChB,kBAAkB,GAClB,mBAAmB,GACnB,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"process-group.d.ts","sourceRoot":"","sources":["../src/process-group.ts"],"names":[],"mappings":"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"}
|
package/dist/process-group.js
CHANGED
|
@@ -38,6 +38,7 @@ export class ProcessGroupService {
|
|
|
38
38
|
identity;
|
|
39
39
|
probeProcessGroup;
|
|
40
40
|
signalProcessGroup;
|
|
41
|
+
killProcessTree;
|
|
41
42
|
constructor(options = {}) {
|
|
42
43
|
this.platform = options.platform ?? process.platform;
|
|
43
44
|
this.identity = options.identity ?? defaultProcessIdentityService;
|
|
@@ -45,6 +46,7 @@ export class ProcessGroupService {
|
|
|
45
46
|
options.probeProcessGroup ?? ((negativePgid) => process.kill(negativePgid, 0));
|
|
46
47
|
this.signalProcessGroup =
|
|
47
48
|
options.signalProcessGroup ?? ((negativePgid, signal) => process.kill(negativePgid, signal));
|
|
49
|
+
this.killProcessTree = options.killProcessTree;
|
|
48
50
|
}
|
|
49
51
|
captureLeader(pid) {
|
|
50
52
|
const identity = this.identity.read(pid);
|
|
@@ -59,8 +61,23 @@ export class ProcessGroupService {
|
|
|
59
61
|
compareLeader(handle) {
|
|
60
62
|
return compareProcessIdentity(handle.leader, this.identity.read(handle.leader.pid));
|
|
61
63
|
}
|
|
62
|
-
/**
|
|
64
|
+
/**
|
|
65
|
+
* Only ESRCH proves the complete group empty; every other error is unknown.
|
|
66
|
+
* On win32 there is no group probe: emptiness is the recorded LEADER's
|
|
67
|
+
* kernel identity being gone (missing, or a different process on a recycled
|
|
68
|
+
* pid) after the tree kill that `signal` performs — a leader-death proof,
|
|
69
|
+
* weaker than the POSIX group proof and disclosed as such by its own owner.
|
|
70
|
+
*/
|
|
63
71
|
probeEmpty(handle) {
|
|
72
|
+
if (this.platform === "win32") {
|
|
73
|
+
const comparison = this.compareLeader(handle);
|
|
74
|
+
if (comparison === "same")
|
|
75
|
+
return { status: "nonempty", pgid: handle.pgid };
|
|
76
|
+
if (comparison === "missing" || comparison === "different") {
|
|
77
|
+
return { status: "empty", pgid: handle.pgid };
|
|
78
|
+
}
|
|
79
|
+
return { status: "unknown", pgid: handle.pgid, reason: "probe_failed" };
|
|
80
|
+
}
|
|
64
81
|
if (this.platform !== "linux" && this.platform !== "darwin") {
|
|
65
82
|
return { status: "unknown", pgid: handle.pgid, reason: "unsupported_platform" };
|
|
66
83
|
}
|
|
@@ -88,6 +105,20 @@ export class ProcessGroupService {
|
|
|
88
105
|
: "identity_unknown";
|
|
89
106
|
return { status: "unknown", pgid: handle.pgid, signal, reason };
|
|
90
107
|
}
|
|
108
|
+
if (this.platform === "win32") {
|
|
109
|
+
if (!this.killProcessTree) {
|
|
110
|
+
return { status: "unknown", pgid: handle.pgid, signal, reason: "unsupported_platform" };
|
|
111
|
+
}
|
|
112
|
+
// Windows cannot deliver TERM; both escalation steps are the same tree
|
|
113
|
+
// kill, issued only while the recorded identity still owns the pid.
|
|
114
|
+
const outcome = this.killProcessTree(handle.pgid);
|
|
115
|
+
if (outcome === "not_found")
|
|
116
|
+
return { status: "empty", pgid: handle.pgid, signal };
|
|
117
|
+
if (outcome === "failed") {
|
|
118
|
+
return { status: "unknown", pgid: handle.pgid, signal, reason: "signal_failed" };
|
|
119
|
+
}
|
|
120
|
+
return { status: "sent", pgid: handle.pgid, signal };
|
|
121
|
+
}
|
|
91
122
|
try {
|
|
92
123
|
this.signalProcessGroup(-handle.pgid, signal);
|
|
93
124
|
return { status: "sent", pgid: handle.pgid, signal };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-group.js","sourceRoot":"","sources":["../src/process-group.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,GAKvB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"process-group.js","sourceRoot":"","sources":["../src/process-group.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,sBAAsB,GAKvB,MAAM,uBAAuB,CAAC;AAgE/B,SAAS,qBAAqB,CAAC,QAA8B;IAC3D,IAAI,QAAQ,CAAC,cAAc,KAAK,QAAQ,CAAC,GAAG,EAAE,CAAC;QAC7C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC;IACtF,CAAC;IACD,OAAO;QACL,MAAM,EAAE,OAAO;QACf,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;YACpB,aAAa,EAAE,CAAU;YACzB,IAAI,EAAE,QAAQ,CAAC,GAAG;YAClB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,QAAQ,EAAE,CAAC;SACvC,CAAuB;KACzB,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,KAAc;IACpD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QACrC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;IAC5D,MAAM,SAAS,GAAG,KAAsE,CAAC;IACzF,IACE,SAAS,CAAC,aAAa,KAAK,CAAC;QAC7B,CAAC,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC;QACrC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAC3B,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAChF,CAAC;IACD,IAAI,CAAC,sBAAsB,CAAC,SAAS,CAAC,MAAM,CAAC;QAC3C,MAAM,IAAI,KAAK,CAAC,uDAAuD,CAAC,CAAC;IAC3E,IACE,SAAS,CAAC,MAAM,CAAC,GAAG,KAAK,SAAS,CAAC,IAAI;QACvC,SAAS,CAAC,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,IAAI,EAClD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,uEAAuE,CAAC,CAAC;IAC3F,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,aAAa,EAAE,CAAU;QACzB,IAAI,EAAE,SAAS,CAAC,IAAI;QACpB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC;KAC/C,CAAuB,CAAC;AAC3B,CAAC;AAED,MAAM,OAAO,mBAAmB;IACb,QAAQ,CAAS;IACjB,QAAQ,CAAwB;IAChC,iBAAiB,CAAiC;IAClD,kBAAkB,CAAyD;IAC3E,eAAe,CAA2C;IAE3E,YAAY,OAAO,GAA+B,EAAE;QAClD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;QACrD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,6BAA6B,CAAC;QAClE,IAAI,CAAC,iBAAiB;YACpB,OAAO,CAAC,iBAAiB,IAAI,CAAC,CAAC,YAAY,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;QACjF,IAAI,CAAC,kBAAkB;YACrB,OAAO,CAAC,kBAAkB,IAAI,CAAC,CAAC,YAAY,EAAE,MAAM,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC,CAAC;QAC/F,IAAI,CAAC,eAAe,GAAG,OAAO,CAAC,eAAe,CAAC;IACjD,CAAC;IAED,aAAa,CAAC,GAAW;QACvB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACzC,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,CAAC;QACrE,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC9F,IAAI,QAAQ,CAAC,GAAG,KAAK,GAAG;YAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,uBAAuB,EAAE,CAAC;QAC7F,OAAO,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IACzC,CAAC;IAED,aAAa,CAAC,MAA0B;QACtC,OAAO,sBAAsB,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;IACtF,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,MAA0B;QACnC,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,UAAU,KAAK,MAAM;gBAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5E,IAAI,UAAU,KAAK,SAAS,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;gBAC3D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YAChD,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAC1E,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,IAAI,IAAI,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC5D,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC;QAClF,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YACrC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;QACnD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,GAAI,KAA+B,EAAE,IAAI,CAAC;YACpD,IAAI,IAAI,KAAK,OAAO;gBAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC;YACpE,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ;gBACvC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;YAC/E,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,CAAC;QAC1E,CAAC;IACH,CAAC;IAED,uFAAuF;IACvF,MAAM,CAAC,MAA0B,EAAE,MAAsB;QACvD,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QAC9C,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;YAC1B,MAAM,MAAM,GACV,UAAU,KAAK,WAAW;gBACxB,CAAC,CAAC,cAAc;gBAChB,CAAC,CAAC,UAAU,KAAK,SAAS;oBACxB,CAAC,CAAC,gBAAgB;oBAClB,CAAC,CAAC,kBAAkB,CAAC;YAC3B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;QAClE,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YAC9B,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC1B,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC;YAC1F,CAAC;YACD,uEAAuE;YACvE,oEAAoE;YACpE,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAClD,IAAI,OAAO,KAAK,WAAW;gBAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YACnF,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;gBACzB,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;YACnF,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACvD,CAAC;QACD,IAAI,CAAC;YACH,IAAI,CAAC,kBAAkB,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9C,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;QACvD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,GAAI,KAA+B,EAAE,IAAI,CAAC;YACpD,IAAI,IAAI,KAAK,OAAO;gBAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,CAAC;YAC5E,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC1C,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;YACvF,CAAC;YACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC;QACnF,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,mBAAmB,EAAE,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export type ProcessIdentityPlatform = "linux" | "darwin";
|
|
2
|
-
export type ProcessIdentitySource = "procfs_stat" | "proc_pidinfo";
|
|
1
|
+
export type ProcessIdentityPlatform = "linux" | "darwin" | "win32";
|
|
2
|
+
export type ProcessIdentitySource = "procfs_stat" | "proc_pidinfo" | "win32_process_times";
|
|
3
3
|
export type ProcessIdentityUnknownReason = "invalid_pid" | "unsupported_platform" | "permission_denied" | "malformed_response" | "helper_unavailable" | "helper_failed" | "io_error";
|
|
4
4
|
export interface KnownProcessIdentity {
|
|
5
5
|
status: "known";
|
|
@@ -24,42 +24,78 @@ export interface UnknownProcessIdentity {
|
|
|
24
24
|
}
|
|
25
25
|
export type ProcessIdentity = KnownProcessIdentity | MissingProcessIdentity | UnknownProcessIdentity;
|
|
26
26
|
export type ProcessIdentityComparison = "same" | "different" | "missing" | "unknown";
|
|
27
|
+
export type LinuxProcessState = "R" | "S" | "D" | "Z" | "T" | "t" | "X" | "x" | "K" | "W" | "P" | "I";
|
|
28
|
+
export interface ProcessObservation {
|
|
29
|
+
readonly identity: ProcessIdentity;
|
|
30
|
+
/** Mutable Linux execution state from the same proc-stat read as identity. */
|
|
31
|
+
readonly linuxState: LinuxProcessState | null;
|
|
32
|
+
}
|
|
27
33
|
export interface ProcessIdentityReader {
|
|
28
34
|
read(pid: number): ProcessIdentity;
|
|
29
35
|
self(): ProcessIdentity;
|
|
30
36
|
}
|
|
31
|
-
export interface
|
|
37
|
+
export interface ProcessObservationReader {
|
|
38
|
+
observe(pid: number): ProcessObservation;
|
|
39
|
+
}
|
|
40
|
+
export interface ProcessHelperExecution {
|
|
32
41
|
status: number | null;
|
|
33
42
|
stdout: string;
|
|
34
43
|
stderr: string;
|
|
35
44
|
errorCode?: string;
|
|
36
45
|
}
|
|
46
|
+
/** @deprecated Use {@link ProcessHelperExecution} — the shape is not Darwin-specific. */
|
|
47
|
+
export type DarwinHelperExecution = ProcessHelperExecution;
|
|
37
48
|
export interface ProcessIdentityServiceOptions {
|
|
38
49
|
platform?: string;
|
|
39
50
|
selfPid?: number;
|
|
40
51
|
readTextFile?: (path: string) => string;
|
|
41
52
|
/** Absolute path to the bundled proc_pidinfo helper; null disables it. */
|
|
42
53
|
darwinHelperPath?: string | null;
|
|
43
|
-
runDarwinHelper?: (path: string, pid: number) =>
|
|
54
|
+
runDarwinHelper?: (path: string, pid: number) => ProcessHelperExecution;
|
|
55
|
+
/**
|
|
56
|
+
* OPT-IN win32 birth-time reader. Absent (the production default) keeps
|
|
57
|
+
* win32 `unsupported_platform`, so every consumer that fails closed there
|
|
58
|
+
* today — run capture, the orphan reaper, the daemon writer lease — is
|
|
59
|
+
* untouched. A lane that needs a Windows identity passes
|
|
60
|
+
* {@link executeWin32ProcessTimes} explicitly and owns the cost.
|
|
61
|
+
*/
|
|
62
|
+
runWin32Reader?: (pid: number) => ProcessHelperExecution;
|
|
44
63
|
}
|
|
45
|
-
/** Parse Linux proc stat
|
|
64
|
+
/** Parse Linux proc stat fields 3 (state), 5 (pgrp), and 22 (starttime). */
|
|
65
|
+
export declare function parseLinuxProcStatObservation(raw: string, expectedPid: number): ProcessObservation;
|
|
66
|
+
/** Legacy identity-only projection; persisted and wire-facing bytes stay unchanged. */
|
|
46
67
|
export declare function parseLinuxProcStat(raw: string, expectedPid: number): ProcessIdentity;
|
|
68
|
+
export declare function observeProcess(identity: ProcessIdentityReader, pid: number, observation?: ProcessObservationReader): ProcessObservation;
|
|
47
69
|
/** Strict parser for the bundled Darwin helper's locale-independent protocol. */
|
|
48
70
|
export declare function parseDarwinHelperOutput(raw: string, expectedPid: number): ProcessIdentity;
|
|
49
71
|
export declare function compareProcessIdentity(expected: KnownProcessIdentity, observed: ProcessIdentity): ProcessIdentityComparison;
|
|
50
72
|
export declare function isKnownProcessIdentity(value: unknown): value is KnownProcessIdentity;
|
|
73
|
+
/**
|
|
74
|
+
* Windows birth-time reader. Windows exposes no `/proc`, so the kernel's own
|
|
75
|
+
* `GetProcessTimes` creation time is read through the absolute System32
|
|
76
|
+
* PowerShell (same pinned-path discipline as the `taskkill` owner) and printed
|
|
77
|
+
* as a locale-independent FILETIME. Blocking and ~sub-second, so it is opt-in
|
|
78
|
+
* per lane rather than a default for every spawn.
|
|
79
|
+
*/
|
|
80
|
+
export declare function executeWin32ProcessTimes(pid: number): ProcessHelperExecution;
|
|
81
|
+
/** Strict parser for the win32 reader's locale-independent protocol. */
|
|
82
|
+
export declare function parseWin32ReaderOutput(raw: string, expectedPid: number): ProcessIdentity;
|
|
51
83
|
export declare class ProcessIdentityService implements ProcessIdentityReader {
|
|
52
84
|
private readonly platform;
|
|
53
85
|
private readonly selfPid;
|
|
54
86
|
private readonly readTextFile;
|
|
55
87
|
private readonly darwinHelperPath;
|
|
56
88
|
private readonly runDarwinHelper;
|
|
89
|
+
private readonly runWin32Reader?;
|
|
57
90
|
private cachedSelf;
|
|
58
91
|
constructor(options?: ProcessIdentityServiceOptions);
|
|
59
92
|
read(pid: number): ProcessIdentity;
|
|
60
93
|
self(): ProcessIdentity;
|
|
61
94
|
private readLinux;
|
|
62
95
|
private readDarwin;
|
|
96
|
+
private readWin32;
|
|
63
97
|
}
|
|
64
98
|
export declare const defaultProcessIdentityService: ProcessIdentityService;
|
|
99
|
+
export declare function createProcessObservationReader(options?: ProcessIdentityServiceOptions): ProcessObservationReader;
|
|
100
|
+
export declare const defaultProcessObservationReader: ProcessObservationReader;
|
|
65
101
|
//# sourceMappingURL=process-identity.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-identity.d.ts","sourceRoot":"","sources":["../src/process-identity.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,uBAAuB,GAAG,OAAO,GAAG,QAAQ,CAAC;
|
|
1
|
+
{"version":3,"file":"process-identity.d.ts","sourceRoot":"","sources":["../src/process-identity.ts"],"names":[],"mappings":"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"}
|
package/dist/process-identity.js
CHANGED
|
@@ -1,7 +1,20 @@
|
|
|
1
1
|
import { constants, accessSync, readFileSync } from "node:fs";
|
|
2
2
|
import { spawnSync } from "node:child_process";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
const LINUX_PROCESS_STATES = new Set([
|
|
4
|
+
const LINUX_PROCESS_STATES = new Set([
|
|
5
|
+
"R",
|
|
6
|
+
"S",
|
|
7
|
+
"D",
|
|
8
|
+
"Z",
|
|
9
|
+
"T",
|
|
10
|
+
"t",
|
|
11
|
+
"X",
|
|
12
|
+
"x",
|
|
13
|
+
"K",
|
|
14
|
+
"W",
|
|
15
|
+
"P",
|
|
16
|
+
"I",
|
|
17
|
+
]);
|
|
5
18
|
function validPositiveInteger(value) {
|
|
6
19
|
return Number.isSafeInteger(value) && value > 0;
|
|
7
20
|
}
|
|
@@ -14,20 +27,24 @@ function canonicalPositive(value) {
|
|
|
14
27
|
function unknown(pid, platform, reason) {
|
|
15
28
|
return { status: "unknown", pid, platform, reason };
|
|
16
29
|
}
|
|
17
|
-
/** Parse Linux proc stat
|
|
18
|
-
export function
|
|
30
|
+
/** Parse Linux proc stat fields 3 (state), 5 (pgrp), and 22 (starttime). */
|
|
31
|
+
export function parseLinuxProcStatObservation(raw, expectedPid) {
|
|
32
|
+
const malformed = (reason) => ({
|
|
33
|
+
identity: unknown(expectedPid, "linux", reason),
|
|
34
|
+
linuxState: null,
|
|
35
|
+
});
|
|
19
36
|
if (!validPositiveInteger(expectedPid))
|
|
20
|
-
return
|
|
37
|
+
return malformed("invalid_pid");
|
|
21
38
|
const firstSpace = raw.indexOf(" ");
|
|
22
39
|
const commEnd = raw.lastIndexOf(")");
|
|
23
40
|
if (firstSpace <= 0 || commEnd <= firstSpace + 1)
|
|
24
|
-
return
|
|
41
|
+
return malformed("malformed_response");
|
|
25
42
|
const parsedPid = raw.slice(0, firstSpace);
|
|
26
43
|
if (!canonicalPositive(parsedPid) || Number(parsedPid) !== expectedPid) {
|
|
27
|
-
return
|
|
44
|
+
return malformed("malformed_response");
|
|
28
45
|
}
|
|
29
46
|
if (raw[firstSpace + 1] !== "(" || raw[commEnd + 1] !== " ") {
|
|
30
|
-
return
|
|
47
|
+
return malformed("malformed_response");
|
|
31
48
|
}
|
|
32
49
|
const fieldsFromState = raw
|
|
33
50
|
.slice(commEnd + 2)
|
|
@@ -42,17 +59,29 @@ export function parseLinuxProcStat(raw, expectedPid) {
|
|
|
42
59
|
!canonicalPositive(processGroup) ||
|
|
43
60
|
!startTicks ||
|
|
44
61
|
!canonicalUnsigned(startTicks)) {
|
|
45
|
-
return
|
|
62
|
+
return malformed("malformed_response");
|
|
46
63
|
}
|
|
47
64
|
return {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
65
|
+
identity: {
|
|
66
|
+
status: "known",
|
|
67
|
+
pid: expectedPid,
|
|
68
|
+
platform: "linux",
|
|
69
|
+
source: "procfs_stat",
|
|
70
|
+
startToken: `linux:${startTicks}`,
|
|
71
|
+
processGroupId: Number(processGroup),
|
|
72
|
+
},
|
|
73
|
+
linuxState: state,
|
|
54
74
|
};
|
|
55
75
|
}
|
|
76
|
+
/** Legacy identity-only projection; persisted and wire-facing bytes stay unchanged. */
|
|
77
|
+
export function parseLinuxProcStat(raw, expectedPid) {
|
|
78
|
+
return parseLinuxProcStatObservation(raw, expectedPid).identity;
|
|
79
|
+
}
|
|
80
|
+
export function observeProcess(identity, pid, observation) {
|
|
81
|
+
if (observation)
|
|
82
|
+
return observation.observe(pid);
|
|
83
|
+
return { identity: identity.read(pid), linuxState: null };
|
|
84
|
+
}
|
|
56
85
|
/** Strict parser for the bundled Darwin helper's locale-independent protocol. */
|
|
57
86
|
export function parseDarwinHelperOutput(raw, expectedPid) {
|
|
58
87
|
if (!validPositiveInteger(expectedPid))
|
|
@@ -116,6 +145,13 @@ export function isKnownProcessIdentity(value) {
|
|
|
116
145
|
typeof candidate.startToken === "string" &&
|
|
117
146
|
/^darwin:(0|[1-9][0-9]*):[0-9]{6}$/.test(candidate.startToken));
|
|
118
147
|
}
|
|
148
|
+
if (candidate.platform === "win32") {
|
|
149
|
+
return (candidate.source === "win32_process_times" &&
|
|
150
|
+
typeof candidate.startToken === "string" &&
|
|
151
|
+
/^win32:[1-9][0-9]*$/.test(candidate.startToken) &&
|
|
152
|
+
// Windows has no process groups: a win32 handle is leader-only.
|
|
153
|
+
candidate.processGroupId === candidate.pid);
|
|
154
|
+
}
|
|
119
155
|
return false;
|
|
120
156
|
}
|
|
121
157
|
function bundledDarwinHelperPath() {
|
|
@@ -152,12 +188,92 @@ function executeDarwinHelper(path, pid) {
|
|
|
152
188
|
errorCode: result.error?.code,
|
|
153
189
|
};
|
|
154
190
|
}
|
|
191
|
+
/**
|
|
192
|
+
* Windows birth-time reader. Windows exposes no `/proc`, so the kernel's own
|
|
193
|
+
* `GetProcessTimes` creation time is read through the absolute System32
|
|
194
|
+
* PowerShell (same pinned-path discipline as the `taskkill` owner) and printed
|
|
195
|
+
* as a locale-independent FILETIME. Blocking and ~sub-second, so it is opt-in
|
|
196
|
+
* per lane rather than a default for every spawn.
|
|
197
|
+
*/
|
|
198
|
+
export function executeWin32ProcessTimes(pid) {
|
|
199
|
+
const systemRoot = process.env["SystemRoot"] || "C:\\Windows";
|
|
200
|
+
const powershell = `${systemRoot}\\System32\\WindowsPowerShell\\v1.0\\powershell.exe`;
|
|
201
|
+
const script = "try { $p = [System.Diagnostics.Process]::GetProcessById(" +
|
|
202
|
+
String(pid) +
|
|
203
|
+
"); " +
|
|
204
|
+
"[Console]::Out.Write('claudexor-process-identity-win32-v1' + [char]9 + $p.Id + [char]9 + " +
|
|
205
|
+
"$p.StartTime.ToFileTimeUtc()); exit 0 } " +
|
|
206
|
+
"catch [System.ArgumentException] { exit 3 } " +
|
|
207
|
+
"catch [System.ComponentModel.Win32Exception] { exit 4 } " +
|
|
208
|
+
"catch { exit 5 }";
|
|
209
|
+
const result = spawnSync(powershell, ["-NoProfile", "-NonInteractive", "-NoLogo", "-Command", script], {
|
|
210
|
+
encoding: "utf8",
|
|
211
|
+
timeout: 5_000,
|
|
212
|
+
maxBuffer: 64 * 1024,
|
|
213
|
+
windowsHide: true,
|
|
214
|
+
env: { SystemRoot: systemRoot, PATH: `${systemRoot}\\System32` },
|
|
215
|
+
});
|
|
216
|
+
return {
|
|
217
|
+
status: result.status,
|
|
218
|
+
stdout: result.stdout ?? "",
|
|
219
|
+
stderr: result.stderr ?? "",
|
|
220
|
+
errorCode: result.error?.code,
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
/** Strict parser for the win32 reader's locale-independent protocol. */
|
|
224
|
+
export function parseWin32ReaderOutput(raw, expectedPid) {
|
|
225
|
+
if (!validPositiveInteger(expectedPid))
|
|
226
|
+
return unknown(expectedPid, "win32", "invalid_pid");
|
|
227
|
+
const line = raw.endsWith("\n") ? raw.slice(0, -1) : raw;
|
|
228
|
+
const fields = line.trim().split("\t");
|
|
229
|
+
if (fields.length !== 3 || fields[0] !== "claudexor-process-identity-win32-v1") {
|
|
230
|
+
return unknown(expectedPid, "win32", "malformed_response");
|
|
231
|
+
}
|
|
232
|
+
const [, pidText, fileTime] = fields;
|
|
233
|
+
// The FILETIME is 100-ns ticks since 1601: ~1.3e17 today, well past
|
|
234
|
+
// Number.MAX_SAFE_INTEGER, so it stays an opaque decimal string.
|
|
235
|
+
if (!pidText ||
|
|
236
|
+
!canonicalPositive(pidText) ||
|
|
237
|
+
Number(pidText) !== expectedPid ||
|
|
238
|
+
!fileTime ||
|
|
239
|
+
!/^[1-9][0-9]{0,19}$/.test(fileTime)) {
|
|
240
|
+
return unknown(expectedPid, "win32", "malformed_response");
|
|
241
|
+
}
|
|
242
|
+
return {
|
|
243
|
+
status: "known",
|
|
244
|
+
pid: expectedPid,
|
|
245
|
+
platform: "win32",
|
|
246
|
+
source: "win32_process_times",
|
|
247
|
+
startToken: `win32:${fileTime}`,
|
|
248
|
+
// Windows has no process groups; the handle addresses this process only.
|
|
249
|
+
processGroupId: expectedPid,
|
|
250
|
+
};
|
|
251
|
+
}
|
|
252
|
+
function readLinuxProcessObservation(readTextFile, pid) {
|
|
253
|
+
try {
|
|
254
|
+
return parseLinuxProcStatObservation(readTextFile(`/proc/${pid}/stat`), pid);
|
|
255
|
+
}
|
|
256
|
+
catch (error) {
|
|
257
|
+
const code = error?.code;
|
|
258
|
+
if (code === "ENOENT" || code === "ESRCH") {
|
|
259
|
+
return { identity: { status: "missing", pid, platform: "linux" }, linuxState: null };
|
|
260
|
+
}
|
|
261
|
+
if (code === "EACCES" || code === "EPERM") {
|
|
262
|
+
return {
|
|
263
|
+
identity: unknown(pid, "linux", "permission_denied"),
|
|
264
|
+
linuxState: null,
|
|
265
|
+
};
|
|
266
|
+
}
|
|
267
|
+
return { identity: unknown(pid, "linux", "io_error"), linuxState: null };
|
|
268
|
+
}
|
|
269
|
+
}
|
|
155
270
|
export class ProcessIdentityService {
|
|
156
271
|
platform;
|
|
157
272
|
selfPid;
|
|
158
273
|
readTextFile;
|
|
159
274
|
darwinHelperPath;
|
|
160
275
|
runDarwinHelper;
|
|
276
|
+
runWin32Reader;
|
|
161
277
|
cachedSelf;
|
|
162
278
|
constructor(options = {}) {
|
|
163
279
|
this.platform = options.platform ?? process.platform;
|
|
@@ -166,6 +282,7 @@ export class ProcessIdentityService {
|
|
|
166
282
|
this.darwinHelperPath =
|
|
167
283
|
options.darwinHelperPath === undefined ? bundledDarwinHelperPath() : options.darwinHelperPath;
|
|
168
284
|
this.runDarwinHelper = options.runDarwinHelper ?? executeDarwinHelper;
|
|
285
|
+
this.runWin32Reader = options.runWin32Reader;
|
|
169
286
|
}
|
|
170
287
|
read(pid) {
|
|
171
288
|
if (!validPositiveInteger(pid))
|
|
@@ -174,6 +291,8 @@ export class ProcessIdentityService {
|
|
|
174
291
|
return this.readLinux(pid);
|
|
175
292
|
if (this.platform === "darwin")
|
|
176
293
|
return this.readDarwin(pid);
|
|
294
|
+
if (this.platform === "win32")
|
|
295
|
+
return this.readWin32(pid);
|
|
177
296
|
return unknown(pid, this.platform, "unsupported_platform");
|
|
178
297
|
}
|
|
179
298
|
self() {
|
|
@@ -181,17 +300,7 @@ export class ProcessIdentityService {
|
|
|
181
300
|
return this.cachedSelf;
|
|
182
301
|
}
|
|
183
302
|
readLinux(pid) {
|
|
184
|
-
|
|
185
|
-
return parseLinuxProcStat(this.readTextFile(`/proc/${pid}/stat`), pid);
|
|
186
|
-
}
|
|
187
|
-
catch (error) {
|
|
188
|
-
const code = error?.code;
|
|
189
|
-
if (code === "ENOENT" || code === "ESRCH")
|
|
190
|
-
return { status: "missing", pid, platform: "linux" };
|
|
191
|
-
if (code === "EACCES" || code === "EPERM")
|
|
192
|
-
return unknown(pid, "linux", "permission_denied");
|
|
193
|
-
return unknown(pid, "linux", "io_error");
|
|
194
|
-
}
|
|
303
|
+
return readLinuxProcessObservation(this.readTextFile, pid).identity;
|
|
195
304
|
}
|
|
196
305
|
readDarwin(pid) {
|
|
197
306
|
if (!this.darwinHelperPath)
|
|
@@ -214,6 +323,43 @@ export class ProcessIdentityService {
|
|
|
214
323
|
return unknown(pid, "darwin", "helper_failed");
|
|
215
324
|
return parseDarwinHelperOutput(execution.stdout, pid);
|
|
216
325
|
}
|
|
326
|
+
readWin32(pid) {
|
|
327
|
+
if (!this.runWin32Reader)
|
|
328
|
+
return unknown(pid, "win32", "unsupported_platform");
|
|
329
|
+
let execution;
|
|
330
|
+
try {
|
|
331
|
+
execution = this.runWin32Reader(pid);
|
|
332
|
+
}
|
|
333
|
+
catch {
|
|
334
|
+
return unknown(pid, "win32", "helper_failed");
|
|
335
|
+
}
|
|
336
|
+
if (execution.errorCode)
|
|
337
|
+
return unknown(pid, "win32", "helper_unavailable");
|
|
338
|
+
if (execution.status === 3)
|
|
339
|
+
return { status: "missing", pid, platform: "win32" };
|
|
340
|
+
if (execution.status === 4)
|
|
341
|
+
return unknown(pid, "win32", "permission_denied");
|
|
342
|
+
if (execution.status !== 0)
|
|
343
|
+
return unknown(pid, "win32", "helper_failed");
|
|
344
|
+
return parseWin32ReaderOutput(execution.stdout, pid);
|
|
345
|
+
}
|
|
217
346
|
}
|
|
218
347
|
export const defaultProcessIdentityService = new ProcessIdentityService();
|
|
348
|
+
export function createProcessObservationReader(options = {}) {
|
|
349
|
+
const platform = options.platform ?? process.platform;
|
|
350
|
+
const identity = new ProcessIdentityService(options);
|
|
351
|
+
const readTextFile = options.readTextFile ?? ((path) => readFileSync(path, "utf8"));
|
|
352
|
+
return {
|
|
353
|
+
observe(pid) {
|
|
354
|
+
if (platform === "linux") {
|
|
355
|
+
if (!validPositiveInteger(pid)) {
|
|
356
|
+
return { identity: unknown(pid, platform, "invalid_pid"), linuxState: null };
|
|
357
|
+
}
|
|
358
|
+
return readLinuxProcessObservation(readTextFile, pid);
|
|
359
|
+
}
|
|
360
|
+
return { identity: identity.read(pid), linuxState: null };
|
|
361
|
+
},
|
|
362
|
+
};
|
|
363
|
+
}
|
|
364
|
+
export const defaultProcessObservationReader = createProcessObservationReader();
|
|
219
365
|
//# sourceMappingURL=process-identity.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-identity.js","sourceRoot":"","sources":["../src/process-identity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"process-identity.js","sourceRoot":"","sources":["../src/process-identity.ts"],"names":[],"mappings":"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"}
|
package/dist/process-tree.d.ts
CHANGED
|
@@ -1,5 +1,15 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ProcessGroupService, type ProcessGroupHandle } from "./process-group.js";
|
|
2
2
|
import { type KnownProcessIdentity, type ProcessIdentityReader } from "./process-identity.js";
|
|
3
|
+
/**
|
|
4
|
+
* Process-group service for a lane that must supervise its child on Windows
|
|
5
|
+
* too — today the interactive native-login runner and the daemon that watches
|
|
6
|
+
* it. Off win32 this is the ordinary service. On win32 it opts into the two
|
|
7
|
+
* Windows seams: the kernel birth-time identity reader (so a recycled pid is
|
|
8
|
+
* never mistaken for the recorded process) and this module's `taskkill /T /F`
|
|
9
|
+
* as the terminator. Every other consumer keeps the fail-closed default, where
|
|
10
|
+
* win32 identity stays unprovable and no group signal is ever sent.
|
|
11
|
+
*/
|
|
12
|
+
export declare function processGroupServiceWithWindowsSupport(platform?: NodeJS.Platform): ProcessGroupService;
|
|
3
13
|
export interface ProcessTreeNode {
|
|
4
14
|
pid: number;
|
|
5
15
|
ppid: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-tree.d.ts","sourceRoot":"","sources":["../src/process-tree.ts"],"names":[],"mappings":"AAkBA,OAAO,
|
|
1
|
+
{"version":3,"file":"process-tree.d.ts","sourceRoot":"","sources":["../src/process-tree.ts"],"names":[],"mappings":"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"}
|
package/dist/process-tree.js
CHANGED
|
@@ -16,8 +16,26 @@
|
|
|
16
16
|
* empty (fail-closed to `unconfirmed`, never a silent success).
|
|
17
17
|
*/
|
|
18
18
|
import { spawnSync } from "node:child_process";
|
|
19
|
-
import { defaultProcessGroupService, } from "./process-group.js";
|
|
20
|
-
import { compareProcessIdentity, defaultProcessIdentityService, } from "./process-identity.js";
|
|
19
|
+
import { ProcessGroupService, defaultProcessGroupService, } from "./process-group.js";
|
|
20
|
+
import { ProcessIdentityService, compareProcessIdentity, defaultProcessIdentityService, executeWin32ProcessTimes, } from "./process-identity.js";
|
|
21
|
+
/**
|
|
22
|
+
* Process-group service for a lane that must supervise its child on Windows
|
|
23
|
+
* too — today the interactive native-login runner and the daemon that watches
|
|
24
|
+
* it. Off win32 this is the ordinary service. On win32 it opts into the two
|
|
25
|
+
* Windows seams: the kernel birth-time identity reader (so a recycled pid is
|
|
26
|
+
* never mistaken for the recorded process) and this module's `taskkill /T /F`
|
|
27
|
+
* as the terminator. Every other consumer keeps the fail-closed default, where
|
|
28
|
+
* win32 identity stays unprovable and no group signal is ever sent.
|
|
29
|
+
*/
|
|
30
|
+
export function processGroupServiceWithWindowsSupport(platform = process.platform) {
|
|
31
|
+
if (platform !== "win32")
|
|
32
|
+
return new ProcessGroupService({ platform });
|
|
33
|
+
return new ProcessGroupService({
|
|
34
|
+
platform,
|
|
35
|
+
identity: new ProcessIdentityService({ platform, runWin32Reader: executeWin32ProcessTimes }),
|
|
36
|
+
killProcessTree: (pid) => killWindowsProcessTree(pid).status,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
21
39
|
export function resolveKillTreeStrategy(platform = process.platform) {
|
|
22
40
|
return platform === "win32" ? "windows_taskkill" : "posix_process_group";
|
|
23
41
|
}
|
package/dist/process-tree.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-tree.js","sourceRoot":"","sources":["../src/process-tree.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"process-tree.js","sourceRoot":"","sources":["../src/process-tree.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-env.d.ts","sourceRoot":"","sources":["../src/runtime-env.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,GAAG,IAAI,CAef;AAYD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAiCR;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAAC,UAAU,CAEnB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,GAAG,IAAI,CAcf;
|
|
1
|
+
{"version":3,"file":"runtime-env.d.ts","sourceRoot":"","sources":["../src/runtime-env.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,oBAAoB,CAClC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,GAAG,IAAI,CAef;AAYD;;;;;;;;;;;GAWG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAiCR;AAED,wBAAgB,iBAAiB,CAC/B,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,CAAC,UAAU,CAEnB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,oBAAoB,CAClC,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,GAAG,IAAI,CAcf;AAoBD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,MAAM,CAAC,UAAwB,EACvC,YAAY,GAAE,SAAS,MAAM,EAAsB,GAClD,MAAM,GAAG,IAAI,CAuDf;AA4CD;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,GAAE,MAAyB,EACnC,QAAQ,GAAE,MAAM,CAAC,QAA2B,GAC3C,MAAM,GAAG,IAAI,CAQf"}
|
package/dist/runtime-env.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { existsSync, lstatSync, readlinkSync, realpathSync, statSync } from "node:fs";
|
|
2
2
|
import { homedir } from "node:os";
|
|
3
|
-
import { basename, delimiter, dirname, isAbsolute, join } from "node:path";
|
|
3
|
+
import { basename, delimiter, dirname, extname, isAbsolute, join } from "node:path";
|
|
4
4
|
import { isLaunchableExecutable } from "./executable-inspection.js";
|
|
5
5
|
/**
|
|
6
6
|
* The directory of the Node binary Claudexor ITSELF is running on, when that
|
|
@@ -33,7 +33,7 @@ export function managedRunnerNodeDir(execPath = process.execPath, platform = pro
|
|
|
33
33
|
if (atRiskNodeAdvisory(execPath, platform) !== null)
|
|
34
34
|
return null;
|
|
35
35
|
// realpath + regular-file + executable facts (identity-stable, bounded).
|
|
36
|
-
if (!isLaunchableExecutable(execPath))
|
|
36
|
+
if (!isLaunchableExecutable(execPath, platform))
|
|
37
37
|
return null;
|
|
38
38
|
// Anchor the REAL binary's dir (follow symlinks) rather than the launcher's.
|
|
39
39
|
let runnerDir;
|
|
@@ -133,10 +133,10 @@ export function harnessRuntimeEnv(source = process.env, execPath = process.execP
|
|
|
133
133
|
* the machine-specific parity failure this seam closes.
|
|
134
134
|
*/
|
|
135
135
|
export function resolveHarnessBinary(bin, source = process.env, execPath = process.execPath, platform = process.platform) {
|
|
136
|
-
const names = binaryNameCandidates(bin,
|
|
136
|
+
const names = binaryNameCandidates(bin, platform);
|
|
137
137
|
if (isAbsolute(bin)) {
|
|
138
138
|
for (const name of names)
|
|
139
|
-
if (isLaunchableExecutable(name))
|
|
139
|
+
if (isLaunchableExecutable(name, platform))
|
|
140
140
|
return name;
|
|
141
141
|
return null;
|
|
142
142
|
}
|
|
@@ -145,28 +145,27 @@ export function resolveHarnessBinary(bin, source = process.env, execPath = proce
|
|
|
145
145
|
continue;
|
|
146
146
|
for (const name of names) {
|
|
147
147
|
const candidate = join(dir, name);
|
|
148
|
-
if (isLaunchableExecutable(candidate))
|
|
148
|
+
if (isLaunchableExecutable(candidate, platform))
|
|
149
149
|
return candidate;
|
|
150
150
|
}
|
|
151
151
|
}
|
|
152
152
|
return null;
|
|
153
153
|
}
|
|
154
154
|
/**
|
|
155
|
-
*
|
|
156
|
-
*
|
|
157
|
-
*
|
|
158
|
-
*
|
|
159
|
-
*
|
|
160
|
-
*
|
|
155
|
+
* Windows executable IMAGES only — the same call Claudexor already makes for
|
|
156
|
+
* `git.exe` (v3.3.9): Node refuses to launch `.cmd`/`.bat` without a shell,
|
|
157
|
+
* and Claudexor never spawns a harness through one, so offering those
|
|
158
|
+
* spellings would only resolve a path that cannot be run. A bare extensionless
|
|
159
|
+
* name is not offered either: on Windows it is an npm/sh shim, not an image.
|
|
160
|
+
* An explicit name that already carries an extension is honored as written.
|
|
161
161
|
*/
|
|
162
|
-
|
|
162
|
+
const WINDOWS_IMAGE_EXTENSIONS = [".exe", ".com"];
|
|
163
|
+
function binaryNameCandidates(bin, platform) {
|
|
163
164
|
if (platform !== "win32")
|
|
164
165
|
return [bin];
|
|
165
|
-
|
|
166
|
-
const lower = bin.toLowerCase();
|
|
167
|
-
if (exts.some((e) => lower.endsWith(e.toLowerCase())))
|
|
166
|
+
if (extname(bin) !== "")
|
|
168
167
|
return [bin];
|
|
169
|
-
return
|
|
168
|
+
return WINDOWS_IMAGE_EXTENSIONS.map((ext) => bin + ext);
|
|
170
169
|
}
|
|
171
170
|
const HOMEBREW_PREFIXES = ["/opt/homebrew", "/usr/local", "/home/linuxbrew/.linuxbrew"];
|
|
172
171
|
/**
|
|
@@ -191,7 +190,10 @@ export function brokenInstallAdvisory(bin, source = process.env, brewPrefixes =
|
|
|
191
190
|
if (resolveHarnessBinary(bin, source) !== null)
|
|
192
191
|
return null;
|
|
193
192
|
const name = basename(bin);
|
|
194
|
-
const names = binaryNameCandidates(bin,
|
|
193
|
+
const names = binaryNameCandidates(bin, process.platform);
|
|
194
|
+
// A Windows npm install ships shims (`codex`, `codex.cmd`) and no image, so
|
|
195
|
+
// the resolver correctly finds nothing; say that instead of "not installed".
|
|
196
|
+
const shimNames = process.platform === "win32" && extname(bin) === "" ? [bin, `${bin}.cmd`, `${bin}.bat`] : [];
|
|
195
197
|
const candidates = isAbsolute(bin)
|
|
196
198
|
? names
|
|
197
199
|
: normalizedHarnessPath(source)
|
|
@@ -213,6 +215,15 @@ export function brokenInstallAdvisory(bin, source = process.env, brewPrefixes =
|
|
|
213
215
|
`reinstall ${name} or point the binary override at a working install`;
|
|
214
216
|
return `${where} exists but ${how} — ${fix}`;
|
|
215
217
|
}
|
|
218
|
+
for (const dir of normalizedHarnessPath(source).split(delimiter)) {
|
|
219
|
+
if (!dir)
|
|
220
|
+
continue;
|
|
221
|
+
for (const shim of shimNames) {
|
|
222
|
+
if (lstatKind(join(dir, shim)) === null)
|
|
223
|
+
continue;
|
|
224
|
+
return `${join(dir, shim)} exists but is a launcher script, not a Windows executable — install the native ${name}.exe or point the binary override at one`;
|
|
225
|
+
}
|
|
226
|
+
}
|
|
216
227
|
if (!SAFE_BREW_NAME.test(name))
|
|
217
228
|
return null;
|
|
218
229
|
for (const prefix of brewPrefixes) {
|
package/dist/runtime-env.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime-env.js","sourceRoot":"","sources":["../src/runtime-env.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACtF,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"runtime-env.js","sourceRoot":"","sources":["../src/runtime-env.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claudexor/core",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.4.1",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "HarnessAdapter contract, process helpers, typed errors, and low-level execution utilities.",
|
|
6
6
|
"type": "module",
|
|
@@ -20,8 +20,8 @@
|
|
|
20
20
|
],
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@playwright/mcp": "0.0.78",
|
|
23
|
-
"@claudexor/schema": "3.
|
|
24
|
-
"@claudexor/util": "3.
|
|
23
|
+
"@claudexor/schema": "3.4.1",
|
|
24
|
+
"@claudexor/util": "3.4.1"
|
|
25
25
|
},
|
|
26
26
|
"repository": {
|
|
27
27
|
"type": "git",
|