@principles/core 1.296.2 → 1.297.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.
Files changed (122) hide show
  1. package/README.md +0 -1
  2. package/dist/runtime-v2/adapter/index.d.ts +0 -2
  3. package/dist/runtime-v2/adapter/index.d.ts.map +1 -1
  4. package/dist/runtime-v2/adapter/index.js +0 -1
  5. package/dist/runtime-v2/adapter/index.js.map +1 -1
  6. package/dist/runtime-v2/adapter/output-schema-registry.d.ts +3 -3
  7. package/dist/runtime-v2/adapter/pi-ai-runtime-adapter.d.ts.map +1 -1
  8. package/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js +1 -2
  9. package/dist/runtime-v2/adapter/pi-ai-runtime-adapter.js.map +1 -1
  10. package/dist/runtime-v2/cli/probe.d.ts +4 -15
  11. package/dist/runtime-v2/cli/probe.d.ts.map +1 -1
  12. package/dist/runtime-v2/cli/probe.js +24 -44
  13. package/dist/runtime-v2/cli/probe.js.map +1 -1
  14. package/dist/runtime-v2/config/index.d.ts +1 -1
  15. package/dist/runtime-v2/config/index.d.ts.map +1 -1
  16. package/dist/runtime-v2/config/index.js.map +1 -1
  17. package/dist/runtime-v2/config/pd-config-agent-binding.d.ts +10 -17
  18. package/dist/runtime-v2/config/pd-config-agent-binding.d.ts.map +1 -1
  19. package/dist/runtime-v2/config/pd-config-agent-binding.js +23 -27
  20. package/dist/runtime-v2/config/pd-config-agent-binding.js.map +1 -1
  21. package/dist/runtime-v2/config/pd-config-defaults.d.ts +3 -5
  22. package/dist/runtime-v2/config/pd-config-defaults.d.ts.map +1 -1
  23. package/dist/runtime-v2/config/pd-config-defaults.js +17 -20
  24. package/dist/runtime-v2/config/pd-config-defaults.js.map +1 -1
  25. package/dist/runtime-v2/config/pd-config-effective.d.ts.map +1 -1
  26. package/dist/runtime-v2/config/pd-config-effective.js +4 -1
  27. package/dist/runtime-v2/config/pd-config-effective.js.map +1 -1
  28. package/dist/runtime-v2/config/pd-config-redaction.d.ts.map +1 -1
  29. package/dist/runtime-v2/config/pd-config-redaction.js +4 -7
  30. package/dist/runtime-v2/config/pd-config-redaction.js.map +1 -1
  31. package/dist/runtime-v2/config/pd-config-types.d.ts +5 -1
  32. package/dist/runtime-v2/config/pd-config-types.d.ts.map +1 -1
  33. package/dist/runtime-v2/config/pd-config-types.js +6 -0
  34. package/dist/runtime-v2/config/pd-config-types.js.map +1 -1
  35. package/dist/runtime-v2/config/pd-config-validate.d.ts.map +1 -1
  36. package/dist/runtime-v2/config/pd-config-validate.js +6 -0
  37. package/dist/runtime-v2/config/pd-config-validate.js.map +1 -1
  38. package/dist/runtime-v2/golden-trace.d.ts.map +1 -1
  39. package/dist/runtime-v2/golden-trace.js +8 -1
  40. package/dist/runtime-v2/golden-trace.js.map +1 -1
  41. package/dist/runtime-v2/index.d.ts +4 -4
  42. package/dist/runtime-v2/index.d.ts.map +1 -1
  43. package/dist/runtime-v2/index.js +2 -3
  44. package/dist/runtime-v2/index.js.map +1 -1
  45. package/dist/runtime-v2/internalization/artificer-intent-preflight.d.ts.map +1 -1
  46. package/dist/runtime-v2/internalization/artificer-intent-preflight.js +26 -95
  47. package/dist/runtime-v2/internalization/artificer-intent-preflight.js.map +1 -1
  48. package/dist/runtime-v2/internalization/bash-risk.d.ts +32 -0
  49. package/dist/runtime-v2/internalization/bash-risk.d.ts.map +1 -0
  50. package/dist/runtime-v2/internalization/bash-risk.js +785 -0
  51. package/dist/runtime-v2/internalization/bash-risk.js.map +1 -0
  52. package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts +25 -2
  53. package/dist/runtime-v2/internalization/evaluator-prompt-builder.d.ts.map +1 -1
  54. package/dist/runtime-v2/internalization/evaluator-prompt-builder.js +177 -14
  55. package/dist/runtime-v2/internalization/evaluator-prompt-builder.js.map +1 -1
  56. package/dist/runtime-v2/internalization/evaluator-runner.d.ts.map +1 -1
  57. package/dist/runtime-v2/internalization/evaluator-runner.js +14 -2
  58. package/dist/runtime-v2/internalization/evaluator-runner.js.map +1 -1
  59. package/dist/runtime-v2/internalization/internalization-orchestrator.d.ts +47 -0
  60. package/dist/runtime-v2/internalization/internalization-orchestrator.d.ts.map +1 -1
  61. package/dist/runtime-v2/internalization/internalization-orchestrator.js +164 -3
  62. package/dist/runtime-v2/internalization/internalization-orchestrator.js.map +1 -1
  63. package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts +9 -1
  64. package/dist/runtime-v2/internalization/peer-runner-contracts.d.ts.map +1 -1
  65. package/dist/runtime-v2/internalization/peer-runner-contracts.js.map +1 -1
  66. package/dist/runtime-v2/internalization/pitask-metadata.d.ts +39 -0
  67. package/dist/runtime-v2/internalization/pitask-metadata.d.ts.map +1 -1
  68. package/dist/runtime-v2/internalization/pitask-metadata.js +59 -0
  69. package/dist/runtime-v2/internalization/pitask-metadata.js.map +1 -1
  70. package/dist/runtime-v2/internalization/rule-source-correction.d.ts +60 -0
  71. package/dist/runtime-v2/internalization/rule-source-correction.d.ts.map +1 -0
  72. package/dist/runtime-v2/internalization/rule-source-correction.js +214 -0
  73. package/dist/runtime-v2/internalization/rule-source-correction.js.map +1 -0
  74. package/dist/runtime-v2/internalization/rulecode-verification-obligations.d.ts.map +1 -1
  75. package/dist/runtime-v2/internalization/rulecode-verification-obligations.js +65 -0
  76. package/dist/runtime-v2/internalization/rulecode-verification-obligations.js.map +1 -1
  77. package/dist/runtime-v2/internalization/scribe-output.d.ts +14 -2
  78. package/dist/runtime-v2/internalization/scribe-output.d.ts.map +1 -1
  79. package/dist/runtime-v2/internalization/scribe-output.js +57 -2
  80. package/dist/runtime-v2/internalization/scribe-output.js.map +1 -1
  81. package/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts +13 -1
  82. package/dist/runtime-v2/internalization/scribe-prompt-builder.d.ts.map +1 -1
  83. package/dist/runtime-v2/internalization/scribe-prompt-builder.js +15 -3
  84. package/dist/runtime-v2/internalization/scribe-prompt-builder.js.map +1 -1
  85. package/dist/runtime-v2/internalization/scribe-runner.d.ts +34 -0
  86. package/dist/runtime-v2/internalization/scribe-runner.d.ts.map +1 -1
  87. package/dist/runtime-v2/internalization/scribe-runner.js +128 -4
  88. package/dist/runtime-v2/internalization/scribe-runner.js.map +1 -1
  89. package/dist/runtime-v2/internalization/textual-basis-anchor.d.ts +72 -0
  90. package/dist/runtime-v2/internalization/textual-basis-anchor.d.ts.map +1 -0
  91. package/dist/runtime-v2/internalization/textual-basis-anchor.js +100 -0
  92. package/dist/runtime-v2/internalization/textual-basis-anchor.js.map +1 -0
  93. package/dist/runtime-v2/pain-signal-runtime-factory.d.ts +9 -7
  94. package/dist/runtime-v2/pain-signal-runtime-factory.d.ts.map +1 -1
  95. package/dist/runtime-v2/pain-signal-runtime-factory.js +59 -121
  96. package/dist/runtime-v2/pain-signal-runtime-factory.js.map +1 -1
  97. package/dist/runtime-v2/runtime-protocol.d.ts +2 -3
  98. package/dist/runtime-v2/runtime-protocol.d.ts.map +1 -1
  99. package/dist/runtime-v2/runtime-protocol.js +15 -10
  100. package/dist/runtime-v2/runtime-protocol.js.map +1 -1
  101. package/dist/runtime-v2/store/lifecycle/lease-manager.d.ts.map +1 -1
  102. package/dist/runtime-v2/store/lifecycle/lease-manager.js +11 -2
  103. package/dist/runtime-v2/store/lifecycle/lease-manager.js.map +1 -1
  104. package/dist/runtime-v2/tools/artificer-l2-tool-contract.d.ts.map +1 -1
  105. package/dist/runtime-v2/tools/artificer-l2-tool-contract.js +26 -0
  106. package/dist/runtime-v2/tools/artificer-l2-tool-contract.js.map +1 -1
  107. package/dist/telemetry-event.d.ts +2 -2
  108. package/dist/telemetry-event.d.ts.map +1 -1
  109. package/dist/telemetry-event.js +5 -0
  110. package/dist/telemetry-event.js.map +1 -1
  111. package/dist/workflow-funnel-loader.d.ts +0 -2
  112. package/dist/workflow-funnel-loader.d.ts.map +1 -1
  113. package/dist/workflow-funnel-loader.js.map +1 -1
  114. package/package.json +5 -1
  115. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.d.ts +0 -72
  116. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.d.ts.map +0 -1
  117. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.js +0 -837
  118. package/dist/runtime-v2/adapter/openclaw-cli-runtime-adapter.js.map +0 -1
  119. package/dist/runtime-v2/utils/cli-process-runner.d.ts +0 -35
  120. package/dist/runtime-v2/utils/cli-process-runner.d.ts.map +0 -1
  121. package/dist/runtime-v2/utils/cli-process-runner.js +0 -263
  122. package/dist/runtime-v2/utils/cli-process-runner.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"openclaw-cli-runtime-adapter.js","sourceRoot":"","sources":["../../../src/runtime-v2/adapter/openclaw-cli-runtime-adapter.ts"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- export interface CliProcessRunnerOptions {
2
- command: string;
3
- args?: string[];
4
- cwd?: string;
5
- env?: Record<string, string>;
6
- timeoutMs?: number;
7
- killGracePeriodMs?: number;
8
- }
9
- export type SpawnErrorCode = 'ENOENT' | 'EACCES' | 'EMFILE' | 'UNKNOWN';
10
- export interface CliOutput {
11
- stdout: string;
12
- stderr: string;
13
- exitCode: number | null;
14
- timedOut: boolean;
15
- durationMs: number;
16
- /**
17
- * Explicit spawn error type. Set when proc.on('error') is called with
18
- * ENOENT (binary not found), EACCES (permission denied), EMFILE (too many open files),
19
- * or other errors. Use this instead of parsing stderr for error detection.
20
- */
21
- spawnError?: SpawnErrorCode;
22
- }
23
- /**
24
- * Run a CLI process with timeout, graceful tree kill, and env merge.
25
- *
26
- * @param opts.command - Non-empty path to the binary to run (validated)
27
- * @param opts.args - Array of string arguments (no shell injection, shell: false)
28
- * @param opts.cwd - Working directory for the child process
29
- * @param opts.env - Environment variables (merged with parent process.env)
30
- * @param opts.timeoutMs - Optional timeout in ms; if exceeded the process tree is killed
31
- * @param opts.killGracePeriodMs - Grace period between SIGTERM and SIGKILL (default 3000ms)
32
- * @returns CliOutput with captured stdout, stderr, exitCode, timedOut flag, and durationMs
33
- */
34
- export declare function runCliProcess(opts: CliProcessRunnerOptions): Promise<CliOutput>;
35
- //# sourceMappingURL=cli-process-runner.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-process-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime-v2/utils/cli-process-runner.ts"],"names":[],"mappings":"AAUA,MAAM,WAAW,uBAAuB;IACtC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAExE,MAAM,WAAW,SAAS;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B;AAiFD;;;;;;;;;;GAUG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,uBAAuB,GAAG,OAAO,CAAC,SAAS,CAAC,CAqLrF"}
@@ -1,263 +0,0 @@
1
- /**
2
- * CliProcessRunner — generic child process runner with timeout, graceful tree kill,
3
- * env merge, and no shell injection.
4
- *
5
- * Purpose: Foundation utility consumed by OpenClawCliRuntimeAdapter (m6-02).
6
- * Runs arbitrary CLI commands, captures stdout/stderr, and handles timeouts with
7
- * graceful tree kill (SIGTERM → grace period → SIGKILL).
8
- */
9
- import { spawn, execFileSync } from 'child_process';
10
- /**
11
- * Resolve a command on Windows when it may be a npm shim (.cmd/.bat/.exe).
12
- *
13
- * On Windows, `spawn('openclaw', [], {shell:false})` fails with ENOENT because
14
- * Node's spawn() with shell:false does not consult the PATHEXT associations that
15
- * cmd.exe uses. `where.exe` (equivalent to `which` on Unix) resolves the actual
16
- * executable path including .cmd/.bat shims created by npm.
17
- *
18
- * When running under Git Bash (MSYS), `where.exe` returns Unix-style paths
19
- * (e.g. /c/Users/.../openclaw) which spawn() cannot use. This function converts
20
- * them to Windows paths and prefers Windows-native executables (.cmd, .bat, .exe).
21
- *
22
- * @returns The resolved command path, or the original if not Windows or already absolute.
23
- */
24
- function resolveCommandForWindows(command) {
25
- if (process.platform !== 'win32') {
26
- return command;
27
- }
28
- // If the command already contains a path separator, it is already resolved
29
- if (command.includes('/') || command.includes('\\')) {
30
- return command;
31
- }
32
- try {
33
- // Use where.exe to resolve the command — works for .cmd, .bat, .exe shims
34
- // Array-form spawn: constant binary + single validated argument, no shell.
35
- const result = execFileSync('where.exe', [command], {
36
- encoding: 'utf-8',
37
- timeout: 5000,
38
- windowsHide: true,
39
- });
40
- // where.exe returns all matches, one per line
41
- const lines = result.split('\n').map((l) => l.trim()).filter(Boolean);
42
- // Prefer Windows-native executables (.cmd, .bat, .exe) over Unix scripts.
43
- // If a .cmd/.bat file is found, return it directly — avoids the broken
44
- // anaconda MSYS cygpath bug where shell scripts get wrong path resolution.
45
- const windowsNative = lines.find((l) => /\.(cmd|bat|exe)$/i.test(l));
46
- if (windowsNative) {
47
- // Convert MSYS Unix-style .cmd paths (e.g. /c/Users/.../openclaw.cmd)
48
- // to proper Windows absolute paths before returning.
49
- const normalized = windowsNative.replace(/\\/g, '/');
50
- if (/^\/[a-z]\//i.test(normalized)) {
51
- const msysPath = normalized;
52
- const driveLetter = msysPath[1] ?? 'C';
53
- const winPath = driveLetter.toUpperCase() + ':' + msysPath.slice(2).replace(/\//g, '\\');
54
- return winPath;
55
- }
56
- return windowsNative;
57
- }
58
- // No Windows-native result found. The first line may be a Unix-style path
59
- // (e.g. /c/Users/.../openclaw) returned by Git Bash's where.exe.
60
- // Convert it to a Windows absolute path so spawn() can use it.
61
- if (lines.length > 0) {
62
- const firstResult = lines[0] ?? command;
63
- // Convert MSYS/Git Bash Unix-style path to Windows path
64
- // /c/Users/... → C:\Users\...
65
- // /d/Program Files/... → D:\Program Files\...
66
- if (/^[A-Z]:/i.test(firstResult)) {
67
- // Already a Windows absolute path (e.g. C:\Users\...)
68
- return firstResult;
69
- }
70
- if (/^\/[a-z]\//i.test(firstResult)) {
71
- // MSYS Unix-style path: /c/Users/... → C:\Users\...
72
- const msysPath = /** @type {string} */ (firstResult);
73
- const driveLetter = msysPath[1] ?? 'C';
74
- const winPath = driveLetter.toUpperCase() + ':' + msysPath.slice(2).replace(/\//g, '\\');
75
- return winPath;
76
- }
77
- return firstResult;
78
- }
79
- }
80
- catch {
81
- // where.exe failed — fall through to original command
82
- }
83
- return command;
84
- }
85
- /**
86
- * Run a CLI process with timeout, graceful tree kill, and env merge.
87
- *
88
- * @param opts.command - Non-empty path to the binary to run (validated)
89
- * @param opts.args - Array of string arguments (no shell injection, shell: false)
90
- * @param opts.cwd - Working directory for the child process
91
- * @param opts.env - Environment variables (merged with parent process.env)
92
- * @param opts.timeoutMs - Optional timeout in ms; if exceeded the process tree is killed
93
- * @param opts.killGracePeriodMs - Grace period between SIGTERM and SIGKILL (default 3000ms)
94
- * @returns CliOutput with captured stdout, stderr, exitCode, timedOut flag, and durationMs
95
- */
96
- export async function runCliProcess(opts) {
97
- // ── Input validation ──────────────────────────────────────────────────────
98
- if (typeof opts.command !== 'string' || opts.command.trim() === '') {
99
- throw new TypeError('opts.command must be a non-empty string');
100
- }
101
- const { command } = opts;
102
- const rawArgs = opts.args ?? [];
103
- if (!Array.isArray(rawArgs) || rawArgs.some((a) => typeof a !== 'string')) {
104
- throw new TypeError('opts.args must be an array of strings');
105
- }
106
- const args = rawArgs;
107
- const { cwd } = opts;
108
- const { timeoutMs } = opts;
109
- const killGracePeriodMs = opts.killGracePeriodMs ?? 3000;
110
- // ── Env merge ─────────────────────────────────────────────────────────────
111
- const env = Object.assign({}, process.env, opts.env ?? {});
112
- // ── Output capture ────────────────────────────────────────────────────────
113
- let stdout = '';
114
- let stderr = '';
115
- // ── Resolve command on Windows (npm shim resolution) ─────────────────────
116
- const resolved = resolveCommandForWindows(command);
117
- // ── Windows: detect if resolved command is a .cmd/.bat shim ─────────────
118
- const isWindowsCmdShim = process.platform === 'win32' && /\.(cmd|bat)$/i.test(resolved);
119
- // ── Spawn configuration ──────────────────────────────────────────────────
120
- const spawnConfig = (() => {
121
- if (process.platform !== 'win32') {
122
- return { command: resolved, args, shell: false };
123
- }
124
- if (isWindowsCmdShim) {
125
- // Windows batch files (.cmd/.bat): use spawn with shell:false and array args.
126
- // Use forward slashes (/ instead of \) — cmd.exe accepts both but MSYS bash
127
- // does NOT do path conversion on forward slashes, avoiding the anaconda
128
- // cygpath bug that corrupts /c/ → D:\ProgramData\anaconda3\Library\c\.
129
- const forwardPath = resolved.replace(/\\/g, '/');
130
- return { command: 'cmd.exe', args: ['/c', forwardPath, ...args], shell: false };
131
- }
132
- // Non-batch Windows executables can be spawned directly. Keeping shell=false
133
- // preserves argv boundaries and keeps ENOENT handling deterministic.
134
- return { command: resolved, args, shell: false };
135
- })();
136
- // ── Spawn ─────────────────────────────────────────────────────────────────
137
- const proc = spawn(spawnConfig.command, spawnConfig.args, {
138
- cwd,
139
- env,
140
- shell: spawnConfig.shell,
141
- // A dedicated process group lets timeout handling terminate the complete
142
- // Unix process tree via a negative PID. Windows uses taskkill /T instead.
143
- detached: process.platform !== 'win32',
144
- });
145
- // Attach data handlers BEFORE spawning so we don't miss any output
146
- proc.stdout?.on('data', (chunk) => {
147
- stdout += chunk.toString();
148
- });
149
- proc.stderr?.on('data', (chunk) => {
150
- stderr += chunk.toString();
151
- });
152
- const startedAt = Date.now();
153
- // ── Timeout handling ──────────────────────────────────────────────────────
154
- let timeoutHandle = null;
155
- let killGraceHandle = null;
156
- // Flag set when timeout fires; consulted in close/error handlers to set timedOut correctly
157
- let timedOut = false;
158
- function killProcessTree() {
159
- const { pid } = proc;
160
- if (pid === null || pid === undefined)
161
- return;
162
- if (process.platform === 'win32') {
163
- // Windows: use taskkill with /T (kill process tree) and /F (force)
164
- // taskkill /F is SIGKILL equivalent — force kill without grace period
165
- const killer = spawn('taskkill', ['/PID', String(pid), '/T', '/F']);
166
- killer.on('error', () => {
167
- // Process may have already exited — taskkill itself failed
168
- });
169
- }
170
- else {
171
- // Unix: terminate the dedicated process group, including descendants.
172
- try {
173
- process.kill(-pid, 'SIGTERM');
174
- }
175
- catch {
176
- // Process may have already exited
177
- }
178
- }
179
- }
180
- function cancelTimers() {
181
- if (timeoutHandle !== null) {
182
- clearTimeout(timeoutHandle);
183
- timeoutHandle = null;
184
- }
185
- if (killGraceHandle !== null) {
186
- clearTimeout(killGraceHandle);
187
- killGraceHandle = null;
188
- }
189
- }
190
- if (timeoutMs != null) {
191
- timeoutHandle = setTimeout(() => {
192
- // Mark timedOut=true FIRST so close/error handlers know the process was killed by timeout
193
- timedOut = true;
194
- // First, attempt graceful termination
195
- killProcessTree();
196
- // Then schedule SIGKILL after grace period (only on non-Windows)
197
- if (process.platform !== 'win32') {
198
- const { pid } = proc;
199
- killGraceHandle = setTimeout(() => {
200
- if (pid !== null && pid !== undefined) {
201
- try {
202
- process.kill(-pid, 'SIGKILL');
203
- }
204
- catch {
205
- // Already exited
206
- }
207
- }
208
- }, killGracePeriodMs);
209
- }
210
- }, timeoutMs);
211
- }
212
- // ── Completion promise ─────────────────────────────────────────────────────
213
- return new Promise((resolve) => {
214
- let settled = false;
215
- function resolveOnce(output) {
216
- if (!settled) {
217
- settled = true;
218
- cancelTimers();
219
- resolve(output);
220
- }
221
- }
222
- proc.on('close', (code) => {
223
- const durationMs = Date.now() - startedAt;
224
- resolveOnce({
225
- stdout,
226
- stderr,
227
- // When killed by timeout, exitCode is non-null (OS-level kill exit code).
228
- // Normal exit uses the actual code; timeout kills set exitCode=null per CliOutput contract.
229
- exitCode: timedOut ? null : code,
230
- timedOut,
231
- durationMs,
232
- });
233
- });
234
- proc.on('error', (err) => {
235
- // ENOENT, EACCES, EMFILE, etc. — resolve with null exit code and empty output
236
- // so callers can handle "command not found" gracefully
237
- const durationMs = Date.now() - startedAt;
238
- const errWithCode = err;
239
- let spawnError = undefined;
240
- if (errWithCode.code === 'ENOENT') {
241
- spawnError = 'ENOENT';
242
- }
243
- else if (errWithCode.code === 'EACCES') {
244
- spawnError = 'EACCES';
245
- }
246
- else if (errWithCode.code === 'EMFILE') {
247
- spawnError = 'EMFILE';
248
- }
249
- else if (errWithCode.code) {
250
- spawnError = 'UNKNOWN';
251
- }
252
- resolveOnce({
253
- stdout: '',
254
- stderr: errWithCode.code ? `ENOENT: ${errWithCode.code}` : err.message,
255
- exitCode: null,
256
- timedOut,
257
- durationMs,
258
- spawnError,
259
- });
260
- });
261
- });
262
- }
263
- //# sourceMappingURL=cli-process-runner.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cli-process-runner.js","sourceRoot":"","sources":["../../../src/runtime-v2/utils/cli-process-runner.ts"],"names":[],"mappings":"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"}