@stratusagent/executor-local 0.10.0 → 0.11.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/README.md CHANGED
@@ -9,6 +9,7 @@ This package sits on top of the core executor contract and runs compatible tools
9
9
  - `defineLocalCommandTool(...)` for tools that resolve to a local command invocation
10
10
  - `createLocalCommandExecutor(...)` for running those tools through `child_process.spawn`
11
11
  - structured stdout, stderr, exit code, timeout, and duration capture
12
+ - a per-stream output cap — 10 MB unless the executor (`maxOutputBytes` option) or the invocation (`maxOutputBytes`) says otherwise — enforced as the output is read, with `stdoutTruncated` / `stderrTruncated` on the execution when the command wrote more
12
13
  - fallback to direct execution for normal in-memory tools
13
14
 
14
15
  ## Example
package/dist/index.d.ts CHANGED
@@ -31,6 +31,13 @@ export interface LocalCommandInvocation {
31
31
  stdin?: string;
32
32
  shell?: boolean;
33
33
  timeoutMs?: number;
34
+ /**
35
+ * How much of each stream is kept, in bytes. Output past it is read and
36
+ * dropped — read, so the child never blocks on a full pipe — and the
37
+ * execution says so in `stdoutTruncated` / `stderrTruncated`. Omitted,
38
+ * the executor's own cap applies.
39
+ */
40
+ maxOutputBytes?: number;
34
41
  }
35
42
  export interface LocalCommandExecution {
36
43
  command: string;
@@ -38,6 +45,10 @@ export interface LocalCommandExecution {
38
45
  cwd?: string;
39
46
  stdout: string;
40
47
  stderr: string;
48
+ /** True when stdout hit `maxOutputBytes` and the rest was dropped. */
49
+ stdoutTruncated: boolean;
50
+ /** True when stderr hit `maxOutputBytes` and the rest was dropped. */
51
+ stderrTruncated: boolean;
41
52
  exitCode: number;
42
53
  timedOut: boolean;
43
54
  /** True when the turn's abort signal killed the child before completion. */
@@ -71,6 +82,11 @@ export interface LocalCommandExecutorOptions {
71
82
  spawn?: LocalSpawn;
72
83
  defaultTimeoutMs?: number;
73
84
  maxTimeoutMs?: number;
85
+ /**
86
+ * Per-stream cap for invocations that set none of their own. Not a
87
+ * ceiling on theirs: a tool that asks for more gets it.
88
+ */
89
+ maxOutputBytes?: number;
74
90
  }
75
91
  export declare const defineLocalCommandTool: ({ name, description, parameters, risk, createCommand, parseResult, }: LocalCommandToolDefinition) => LocalCommandTool;
76
92
  export declare const isLocalCommandTool: (tool: Tool) => tool is LocalCommandTool;
@@ -79,6 +95,7 @@ export declare class LocalCommandExecutor implements Executor {
79
95
  private readonly spawn;
80
96
  private readonly defaultTimeoutMs;
81
97
  private readonly maxTimeoutMs;
98
+ private readonly maxOutputBytes;
82
99
  constructor(options?: LocalCommandExecutorOptions);
83
100
  execute(call: ToolCall, tool: Tool, session: Session, context?: ExecutionContext): Promise<ToolResult>;
84
101
  }
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -3,6 +3,12 @@ import { StringDecoder } from 'node:string_decoder';
3
3
  import { createDirectExecutor, failureResult, successResult, } from '@stratusagent/executors';
4
4
  const DEFAULT_TIMEOUT_MS = 30_000;
5
5
  const DEFAULT_MAX_TIMEOUT_MS = 300_000;
6
+ // Per stream. Output is accumulated in the daemon's heap as it arrives, and
7
+ // before this cap existed `head -c 300000000 /dev/zero | tr '\0' a` took a
8
+ // daemon from 108 MB to 785 MB resident — and left it there — for a result
9
+ // tool-shell then cut to 100 KB. Generous, because this is the floor for
10
+ // every local-command tool, not a tool's own idea of a useful result.
11
+ const DEFAULT_MAX_OUTPUT_BYTES = 10_000_000;
6
12
  export const defineLocalCommandTool = ({ name, description, parameters, risk, createCommand, parseResult, }) => ({
7
13
  name,
8
14
  ...(description ? { description } : {}),
@@ -25,11 +31,13 @@ export class LocalCommandExecutor {
25
31
  spawn;
26
32
  defaultTimeoutMs;
27
33
  maxTimeoutMs;
34
+ maxOutputBytes;
28
35
  constructor(options = {}) {
29
36
  this.fallback = options.fallback ?? createDirectExecutor();
30
37
  this.spawn = options.spawn ?? nodeSpawn;
31
38
  this.defaultTimeoutMs = options.defaultTimeoutMs ?? DEFAULT_TIMEOUT_MS;
32
39
  this.maxTimeoutMs = options.maxTimeoutMs ?? DEFAULT_MAX_TIMEOUT_MS;
40
+ this.maxOutputBytes = resolveMaxOutputBytes(options.maxOutputBytes, DEFAULT_MAX_OUTPUT_BYTES);
33
41
  }
34
42
  async execute(call, tool, session, context) {
35
43
  if (!isLocalCommandTool(tool)) {
@@ -52,6 +60,7 @@ export class LocalCommandExecutor {
52
60
  const execution = await runLocalCommand(invocation, {
53
61
  spawn: this.spawn,
54
62
  timeoutMs,
63
+ maxOutputBytes: resolveMaxOutputBytes(invocation.maxOutputBytes, this.maxOutputBytes),
55
64
  ...(context?.signal ? { signal: context.signal } : {}),
56
65
  });
57
66
  if (execution.aborted) {
@@ -111,15 +120,49 @@ const resolveTimeoutMs = (requested, defaultTimeoutMs, maxTimeoutMs) => {
111
120
  }
112
121
  return Math.min(candidate, maxTimeoutMs);
113
122
  };
123
+ const resolveMaxOutputBytes = (requested, fallback) => requested !== undefined && Number.isFinite(requested) && requested > 0 ? Math.floor(requested) : fallback;
124
+ /**
125
+ * Collects one stream up to `maxBytes`, decoding as it goes so a multibyte
126
+ * character split across chunks still comes out whole. Past the cap, chunks
127
+ * are consumed and dropped rather than left in the pipe: an unread pipe
128
+ * fills and blocks the writer, and a command stalled on its own output is
129
+ * indistinguishable from a hang until the timeout kills it.
130
+ */
131
+ const createOutputSink = (maxBytes) => {
132
+ const decoder = new StringDecoder('utf8');
133
+ let text = '';
134
+ let bytes = 0;
135
+ let truncated = false;
136
+ return {
137
+ write: (chunk) => {
138
+ const room = maxBytes - bytes;
139
+ if (room <= 0) {
140
+ truncated = true;
141
+ return;
142
+ }
143
+ if (chunk.length > room) {
144
+ text += decoder.write(chunk.subarray(0, room));
145
+ bytes = maxBytes;
146
+ truncated = true;
147
+ return;
148
+ }
149
+ text += decoder.write(chunk);
150
+ bytes += chunk.length;
151
+ },
152
+ // A cut can land inside a multibyte character; the decoder is holding
153
+ // its first bytes, and flushing them would end the text with U+FFFD.
154
+ // Dropped output ends on a character boundary instead.
155
+ end: () => text + (truncated ? '' : decoder.end()),
156
+ truncated: () => truncated,
157
+ };
158
+ };
114
159
  const runLocalCommand = async (invocation, options) => {
115
160
  const startedAt = Date.now();
116
161
  const args = invocation.args ?? [];
117
- let stdout = '';
118
- let stderr = '';
119
162
  let timedOut = false;
120
163
  let aborted = false;
121
- const stdoutDecoder = new StringDecoder('utf8');
122
- const stderrDecoder = new StringDecoder('utf8');
164
+ const stdout = createOutputSink(options.maxOutputBytes);
165
+ const stderr = createOutputSink(options.maxOutputBytes);
123
166
  const child = options.spawn(invocation.command, args, {
124
167
  cwd: invocation.cwd,
125
168
  // `replace` hands over exactly what was granted — an empty object when
@@ -146,11 +189,57 @@ const runLocalCommand = async (invocation, options) => {
146
189
  }
147
190
  child.kill('SIGKILL');
148
191
  };
192
+ // A kill reaches the process group, not the pipes. A grandchild that
193
+ // moved to its own session — `setsid`, a daemonizing server, anything
194
+ // `nohup … &` starts under a shell that then exits — inherited the
195
+ // command's stdout and keeps it open after everything in the group is
196
+ // dead, and `'close'` waits for every stdio stream: a 2s timeout on
197
+ // `setsid sleep 60 &` settled after 61s, when the escapee happened to
198
+ // exit. So once the tree has been killed, the call settles on the
199
+ // child's exit instead, and whatever the survivor writes afterwards is
200
+ // read and dropped. Read, not cut off: destroying the read end would
201
+ // hand the survivor SIGPIPE on its next write, and the point of leaving
202
+ // it alive is that it stays alive. The handles are unref'd so an
203
+ // escapee's pipe cannot hold a one-shot CLI run open either.
204
+ let released = false;
205
+ const releaseStdio = () => {
206
+ released = true;
207
+ unrefStream(child.stdout);
208
+ unrefStream(child.stderr);
209
+ settleOnExit();
210
+ };
149
211
  child.stdout.on('data', (chunk) => {
150
- stdout += stdoutDecoder.write(chunk);
212
+ if (!released) {
213
+ stdout.write(chunk);
214
+ }
151
215
  });
152
216
  child.stderr.on('data', (chunk) => {
153
- stderr += stderrDecoder.write(chunk);
217
+ if (!released) {
218
+ stderr.write(chunk);
219
+ }
220
+ });
221
+ let settle = () => { };
222
+ let fail = () => { };
223
+ const settled = new Promise((resolve, reject) => {
224
+ settle = resolve;
225
+ fail = reject;
226
+ });
227
+ let exitCode;
228
+ // The exit may already have happened when the timeout fires — a command
229
+ // that finished, leaving a survivor on its pipe, looks exactly like one
230
+ // still running until then.
231
+ const settleOnExit = () => {
232
+ if (released && exitCode !== undefined) {
233
+ settle(exitCode);
234
+ }
235
+ };
236
+ child.once('error', fail);
237
+ child.once('exit', (code) => {
238
+ exitCode = code ?? -1;
239
+ settleOnExit();
240
+ });
241
+ child.once('close', (code) => {
242
+ settle(code ?? -1);
154
243
  });
155
244
  if (typeof invocation.stdin === 'string') {
156
245
  child.stdin.end(invocation.stdin);
@@ -161,6 +250,7 @@ const runLocalCommand = async (invocation, options) => {
161
250
  const timer = setTimeout(() => {
162
251
  timedOut = true;
163
252
  killTree();
253
+ releaseStdio();
164
254
  }, options.timeoutMs);
165
255
  timer.unref();
166
256
  // The turn's abort signal kills the child directly — an aborted turn must
@@ -168,6 +258,7 @@ const runLocalCommand = async (invocation, options) => {
168
258
  const onAbort = () => {
169
259
  aborted = true;
170
260
  killTree();
261
+ releaseStdio();
171
262
  };
172
263
  if (options.signal?.aborted) {
173
264
  onAbort();
@@ -176,15 +267,15 @@ const runLocalCommand = async (invocation, options) => {
176
267
  options.signal?.addEventListener('abort', onAbort, { once: true });
177
268
  }
178
269
  try {
179
- const exitCode = await waitForChild(child);
180
- stdout += stdoutDecoder.end();
181
- stderr += stderrDecoder.end();
270
+ const exitCode = await settled;
182
271
  return {
183
272
  command: invocation.command,
184
273
  args: [...args],
185
274
  ...(invocation.cwd ? { cwd: invocation.cwd } : {}),
186
- stdout,
187
- stderr,
275
+ stdout: stdout.end(),
276
+ stderr: stderr.end(),
277
+ stdoutTruncated: stdout.truncated(),
278
+ stderrTruncated: stderr.truncated(),
188
279
  exitCode,
189
280
  timedOut,
190
281
  aborted,
@@ -196,13 +287,13 @@ const runLocalCommand = async (invocation, options) => {
196
287
  options.signal?.removeEventListener('abort', onAbort);
197
288
  }
198
289
  };
199
- const waitForChild = async (child) => {
200
- return new Promise((resolve, reject) => {
201
- child.once('error', reject);
202
- child.once('close', (code) => {
203
- resolve(code ?? -1);
204
- });
205
- });
290
+ // The stdio streams are typed as bare Readables, but a spawned child's are
291
+ // sockets over pipes, and a socket can be unref'd.
292
+ const unrefStream = (stream) => {
293
+ const candidate = stream;
294
+ if (typeof candidate.unref === 'function') {
295
+ candidate.unref();
296
+ }
206
297
  };
207
298
  const serializeExecution = (execution) => ({
208
299
  command: execution.command,
@@ -210,6 +301,8 @@ const serializeExecution = (execution) => ({
210
301
  ...(execution.cwd ? { cwd: execution.cwd } : {}),
211
302
  stdout: execution.stdout,
212
303
  stderr: execution.stderr,
304
+ stdoutTruncated: execution.stdoutTruncated,
305
+ stderrTruncated: execution.stderrTruncated,
213
306
  exitCode: execution.exitCode,
214
307
  timedOut: execution.timedOut,
215
308
  aborted: execution.aborted,
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,IAAI,SAAS,GAGnB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAapD,OAAO,EACL,oBAAoB,EACpB,aAAa,EACb,aAAa,GACd,MAAM,yBAAyB,CAAC;AAqGjC,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAClC,MAAM,sBAAsB,GAAG,OAAO,CAAC;AACvC,4EAA4E;AAC5E,2EAA2E;AAC3E,2EAA2E;AAC3E,yEAAyE;AACzE,sEAAsE;AACtE,MAAM,wBAAwB,GAAG,UAAU,CAAC;AAE5C,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,IAAI,EACJ,WAAW,EACX,UAAU,EACV,IAAI,EACJ,aAAa,EACb,WAAW,GACgB,EAAoB,EAAE,CAAC,CAAC;IACnD,IAAI;IACJ,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACrC,kEAAkE;IAClE,wEAAwE;IACxE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACzB,OAAO,EAAE,eAAe;IACxB,aAAa;IACb,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACvC,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,KAAK,CAAC,6DAA6D,IAAI,EAAE,CAAC,CAAC;IACvF,CAAC;CACF,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,IAAU,EAA4B,EAAE;IACzE,OAAO,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,eAAe,IAAI,OAAQ,IAAyB,CAAC,aAAa,KAAK,UAAU,CAAC;AACjI,CAAC,CAAC;AAEF,MAAM,OAAO,oBAAoB;IACd,QAAQ,CAAW;IACnB,KAAK,CAAa;IAClB,gBAAgB,CAAS;IACzB,YAAY,CAAS;IACrB,cAAc,CAAS;IAExC,YAAY,UAAuC,EAAE;QACnD,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,oBAAoB,EAAE,CAAC;QAC3D,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,SAAS,CAAC;QACxC,IAAI,CAAC,gBAAgB,GAAG,OAAO,CAAC,gBAAgB,IAAI,kBAAkB,CAAC;QACvE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,sBAAsB,CAAC;QACnE,IAAI,CAAC,cAAc,GAAG,qBAAqB,CAAC,OAAO,CAAC,cAAc,EAAE,wBAAwB,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,IAAc,EAAE,IAAU,EAAE,OAAgB,EAAE,OAA0B;QACpF,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE,CAAC;YAC9B,OAAO,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7D,CAAC;QAED,IAAI,CAAC;YACH,oEAAoE;YACpE,oEAAoE;YACpE,qEAAqE;YACrE,iEAAiE;YACjE,MAAM,MAAM,GAAG,OAAO,EAAE,MAAM,CAAC;YAC/B,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,OAAO,aAAa,CAAC,IAAI,EAAE,iCAAiC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,sBAAsB,CAAC,CAAC;YAChH,IAAI,MAAM,EAAE,OAAO,EAAE,CAAC;gBACpB,OAAO,aAAa,CAAC,IAAI,EAAE,iCAAiC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,MAAM,SAAS,GAAG,gBAAgB,CAAC,UAAU,CAAC,SAAS,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;YACnG,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE;gBAClD,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,SAAS;gBACT,cAAc,EAAE,qBAAqB,CAAC,UAAU,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC;gBACrF,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvD,CAAC,CAAC;YAEH,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;gBACtB,OAAO,aAAa,CAClB,IAAI,EACJ,oBAAoB,SAAS,CAAC,OAAO,EAAE,EACvC,kBAAkB,CAAC,SAAS,CAAC,CAC9B,CAAC;YACJ,CAAC;YAED,IAAI,SAAS,CAAC,QAAQ,EAAE,CAAC;gBACvB,OAAO,aAAa,CAClB,IAAI,EACJ,2BAA2B,SAAS,OAAO,SAAS,CAAC,OAAO,EAAE,EAC9D,kBAAkB,CAAC,SAAS,CAAC,CAC9B,CAAC;YACJ,CAAC;YAED,IAAI,SAAS,CAAC,QAAQ,KAAK,CAAC,EAAE,CAAC;gBAC7B,OAAO,aAAa,CAClB,IAAI,EACJ,4BAA4B,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,OAAO,EAAE,EACtE,kBAAkB,CAAC,SAAS,CAAC,CAC9B,CAAC;YACJ,CAAC;YAED,IAAI,CAAC;gBACH,oEAAoE;gBACpE,uDAAuD;gBACvD,MAAM,MAAM,GAAG,IAAI,CAAC,WAAW;oBAC7B,CAAC,CAAC,MAAM,aAAa,CACjB,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EACnF,MAAM,EACN,gBAAgB,CACjB;oBACH,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;gBAClC,OAAO,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,EAAE,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC;YACnE,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,aAAa,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;CACF;AAED,MAAM,CAAC,MAAM,0BAA0B,GAAG,CACxC,UAAuC,EAAE,EAC/B,EAAE,CAAC,IAAI,oBAAoB,CAAC,OAAO,CAAC,CAAC;AAEjD,uEAAuE;AACvE,uEAAuE;AACvE,aAAa;AACb,MAAM,aAAa,GAAG,KAAK,EAAK,IAAoB,EAAE,MAA+B,EAAE,IAAY,EAAc,EAAE;IACjH,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC;IACD,OAAO,IAAI,OAAO,CAAI,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACxC,MAAM,OAAO,GAAG,GAAS,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,WAAW,CAAC,CAAC,CAAC;QAClE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO,EAAE,CAAC;YACV,OAAO;QACT,CAAC;QACD,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CACxB,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,CAAC,KAAK,CAAC,CAAC;QACjB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,KAAK,CAAC,CAAC;QAChB,CAAC,CACF,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,gBAAgB,GAAG,CACvB,SAA6B,EAC7B,gBAAwB,EACxB,YAAoB,EACZ,EAAE;IACV,MAAM,SAAS,GAAG,SAAS,IAAI,gBAAgB,CAAC;IAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;QAClD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;AAC3C,CAAC,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAAC,SAA6B,EAAE,QAAgB,EAAU,EAAE,CACxF,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AAE5G;;;;;;GAMG;AACH,MAAM,gBAAgB,GAAG,CAAC,QAAgB,EAAmF,EAAE;IAC7H,MAAM,OAAO,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,CAAC;IAC1C,IAAI,IAAI,GAAG,EAAE,CAAC;IACd,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,OAAO;QACL,KAAK,EAAE,CAAC,KAAK,EAAE,EAAE;YACf,MAAM,IAAI,GAAG,QAAQ,GAAG,KAAK,CAAC;YAC9B,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;gBACd,SAAS,GAAG,IAAI,CAAC;gBACjB,OAAO;YACT,CAAC;YACD,IAAI,KAAK,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;gBACxB,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;gBAC/C,KAAK,GAAG,QAAQ,CAAC;gBACjB,SAAS,GAAG,IAAI,CAAC;gBACjB,OAAO;YACT,CAAC;YACD,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YAC7B,KAAK,IAAI,KAAK,CAAC,MAAM,CAAC;QACxB,CAAC;QACD,sEAAsE;QACtE,qEAAqE;QACrE,uDAAuD;QACvD,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QAClD,SAAS,EAAE,GAAG,EAAE,CAAC,SAAS;KAC3B,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,eAAe,GAAG,KAAK,EAC3B,UAAkC,EAClC,OAA+F,EAC/D,EAAE;IAClC,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,IAAI,EAAE,CAAC;IACnC,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IACxD,MAAM,MAAM,GAAG,gBAAgB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;IAExD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,EAAE;QACpD,GAAG,EAAE,UAAU,CAAC,GAAG;QACnB,uEAAuE;QACvE,wEAAwE;QACxE,qBAAqB;QACrB,GAAG,EAAE,UAAU,CAAC,OAAO,KAAK,SAAS;YACnC,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE;YACvB,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;QAC1E,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,KAAK;QAChC,uEAAuE;QACvE,uEAAuE;QACvE,yBAAyB;QACzB,GAAG,CAAC,OAAO,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KAC5D,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,GAAS,EAAE;QAC1B,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,OAAO,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;YAClE,IAAI,CAAC;gBACH,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;gBACpC,OAAO;YACT,CAAC;YAAC,MAAM,CAAC;gBACP,mEAAmE;YACrE,CAAC;QACH,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IACxB,CAAC,CAAC;IAEF,qEAAqE;IACrE,sEAAsE;IACtE,mEAAmE;IACnE,sEAAsE;IACtE,oEAAoE;IACpE,sEAAsE;IACtE,kEAAkE;IAClE,uEAAuE;IACvE,qEAAqE;IACrE,wEAAwE;IACxE,iEAAiE;IACjE,6DAA6D;IAC7D,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,QAAQ,GAAG,IAAI,CAAC;QAChB,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1B,WAAW,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC1B,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAa,EAAE,EAAE;QACxC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,IAAI,MAAM,GAA2B,GAAG,EAAE,GAAE,CAAC,CAAC;IAC9C,IAAI,IAAI,GAA2B,GAAG,EAAE,GAAE,CAAC,CAAC;IAC5C,MAAM,OAAO,GAAG,IAAI,OAAO,CAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACtD,MAAM,GAAG,OAAO,CAAC;QACjB,IAAI,GAAG,MAAM,CAAC;IAChB,CAAC,CAAC,CAAC;IACH,IAAI,QAA4B,CAAC;IACjC,wEAAwE;IACxE,wEAAwE;IACxE,4BAA4B;IAC5B,MAAM,YAAY,GAAG,GAAS,EAAE;QAC9B,IAAI,QAAQ,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YACvC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACnB,CAAC;IACH,CAAC,CAAC;IACF,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC1B,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1B,QAAQ,GAAG,IAAI,IAAI,CAAC,CAAC,CAAC;QACtB,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,EAAE;QAC3B,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC;IACrB,CAAC,CAAC,CAAC;IAEH,IAAI,OAAO,UAAU,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;QACzC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IACpB,CAAC;IAED,MAAM,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;QAC5B,QAAQ,GAAG,IAAI,CAAC;QAChB,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC;IACjB,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACtB,KAAK,CAAC,KAAK,EAAE,CAAC;IAEd,0EAA0E;IAC1E,uCAAuC;IACvC,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,OAAO,GAAG,IAAI,CAAC;QACf,QAAQ,EAAE,CAAC;QACX,YAAY,EAAE,CAAC;IACjB,CAAC,CAAC;IACF,IAAI,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,CAAC;QAC5B,OAAO,EAAE,CAAC;IACZ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACrE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC;QAE/B,OAAO;YACL,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,IAAI,EAAE,CAAC,GAAG,IAAI,CAAC;YACf,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;YACpB,MAAM,EAAE,MAAM,CAAC,GAAG,EAAE;YACpB,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE;YACnC,eAAe,EAAE,MAAM,CAAC,SAAS,EAAE;YACnC,QAAQ;YACR,QAAQ;YACR,OAAO;YACP,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;SACnC,CAAC;IACJ,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,KAAK,CAAC,CAAC;QACpB,OAAO,CAAC,MAAM,EAAE,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC;AACH,CAAC,CAAC;AAEF,2EAA2E;AAC3E,mDAAmD;AACnD,MAAM,WAAW,GAAG,CAAC,MAA6B,EAAQ,EAAE;IAC1D,MAAM,SAAS,GAAG,MAAgC,CAAC;IACnD,IAAI,OAAO,SAAS,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QAC1C,SAAS,CAAC,KAAK,EAAE,CAAC;IACpB,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,kBAAkB,GAAG,CAAC,SAAgC,EAAa,EAAE,CAAC,CAAC;IAC3E,OAAO,EAAE,SAAS,CAAC,OAAO;IAC1B,IAAI,EAAE,SAAS,CAAC,IAAI;IACpB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAChD,MAAM,EAAE,SAAS,CAAC,MAAM;IACxB,MAAM,EAAE,SAAS,CAAC,MAAM;IACxB,eAAe,EAAE,SAAS,CAAC,eAAe;IAC1C,eAAe,EAAE,SAAS,CAAC,eAAe;IAC1C,QAAQ,EAAE,SAAS,CAAC,QAAQ;IAC5B,QAAQ,EAAE,SAAS,CAAC,QAAQ;IAC5B,OAAO,EAAE,SAAS,CAAC,OAAO;IAC1B,UAAU,EAAE,SAAS,CAAC,UAAU;CACjC,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stratusagent/executor-local",
3
- "version": "0.10.0",
3
+ "version": "0.11.1",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -17,8 +17,8 @@
17
17
  "node": ">=22.13 <23 || >=23.4"
18
18
  },
19
19
  "dependencies": {
20
- "@stratusagent/core": "0.10.0",
21
- "@stratusagent/executors": "0.10.0"
20
+ "@stratusagent/core": "0.11.1",
21
+ "@stratusagent/executors": "0.11.1"
22
22
  },
23
23
  "devDependencies": {
24
24
  "@types/node": "^24.6.0",