@agentuity/cli 1.0.55 → 1.0.56

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.
@@ -1 +1 @@
1
- {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/exec.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,cAAc,sCA4NzB,CAAC;AAwDH,eAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/exec.ts"],"names":[],"mappings":"AAqCA,eAAO,MAAM,cAAc,sCAgSzB,CAAC;AAsFH,eAAe,cAAc,CAAC"}
@@ -84,6 +84,8 @@ export const execSubcommand = createCommand({
84
84
  process.on('SIGINT', handleSignal);
85
85
  process.on('SIGTERM', handleSignal);
86
86
  try {
87
+ logger.debug('[exec] calling sandboxExecute for %s', args.sandboxId);
88
+ const executeStart = Date.now();
87
89
  const execution = await sandboxExecute(client, {
88
90
  sandboxId: args.sandboxId,
89
91
  options: {
@@ -93,6 +95,7 @@ export const execSubcommand = createCommand({
93
95
  },
94
96
  orgId,
95
97
  });
98
+ logger.debug('[exec] sandboxExecute returned in %dms: executionId=%s, stdoutUrl=%s, stderrUrl=%s', Date.now() - executeStart, execution.executionId, execution.stdoutStreamUrl ?? 'none', execution.stderrStreamUrl ?? 'none');
96
99
  if (execution.autoResumed && !options.json) {
97
100
  tui.warning('Sandbox was automatically resumed from suspended state');
98
101
  }
@@ -100,8 +103,10 @@ export const execSubcommand = createCommand({
100
103
  const stderrStreamUrl = execution.stderrStreamUrl;
101
104
  const streamAbortController = new AbortController();
102
105
  const streamPromises = [];
106
+ const streamLabels = [];
103
107
  // Check if stdout and stderr are the same stream (combined output)
104
108
  const isCombinedOutput = stdoutStreamUrl && stderrStreamUrl && stdoutStreamUrl === stderrStreamUrl;
109
+ logger.debug('[exec] stream mode: combined=%s, stdoutUrl=%s, stderrUrl=%s', isCombinedOutput, stdoutStreamUrl ?? 'none', stderrStreamUrl ?? 'none');
105
110
  // Set up stream capture — in JSON mode, capture to buffers;
106
111
  // when streams are separate, capture stdout/stderr independently
107
112
  const outputChunks = [];
@@ -133,29 +138,64 @@ export const execSubcommand = createCommand({
133
138
  }
134
139
  if (isCombinedOutput) {
135
140
  // Stream combined output to stdout only to avoid duplicates
136
- logger.debug('using combined output stream (stdout === stderr): %s', stdoutStreamUrl);
137
- streamPromises.push(streamUrlToWritable(stdoutStreamUrl, stdoutWritable, streamAbortController.signal, logger));
141
+ logger.debug('[exec] starting combined stream: %s', stdoutStreamUrl);
142
+ streamLabels.push('combined');
143
+ streamPromises.push(streamUrlToWritable('combined', stdoutStreamUrl, stdoutWritable, streamAbortController.signal, logger));
138
144
  }
139
145
  else {
140
146
  if (stdoutStreamUrl) {
141
- logger.debug('starting stdout stream from: %s', stdoutStreamUrl);
142
- streamPromises.push(streamUrlToWritable(stdoutStreamUrl, stdoutWritable, streamAbortController.signal, logger));
147
+ logger.debug('[exec] starting stdout stream: %s', stdoutStreamUrl);
148
+ streamLabels.push('stdout');
149
+ streamPromises.push(streamUrlToWritable('stdout', stdoutStreamUrl, stdoutWritable, streamAbortController.signal, logger));
143
150
  }
144
151
  if (stderrStreamUrl) {
145
- logger.debug('starting stderr stream from: %s', stderrStreamUrl);
146
- streamPromises.push(streamUrlToWritable(stderrStreamUrl, stderrWritable, streamAbortController.signal, logger));
152
+ logger.debug('[exec] starting stderr stream: %s', stderrStreamUrl);
153
+ streamLabels.push('stderr');
154
+ streamPromises.push(streamUrlToWritable('stderr', stderrStreamUrl, stderrWritable, streamAbortController.signal, logger));
147
155
  }
148
156
  }
157
+ logger.debug('[exec] %d stream(s) started [%s], now long-polling executionGet', streamPromises.length, streamLabels.join(', '));
149
158
  // Use server-side long-polling to wait for execution completion
150
159
  // This is more efficient than client-side polling and provides immediate
151
160
  // error detection if the sandbox is terminated
152
- const finalExecution = await executionGet(client, {
153
- executionId: execution.executionId,
154
- orgId,
155
- wait: EXECUTION_WAIT_DURATION,
156
- });
157
- // Wait for all streams to reach EOF (Pulse blocks until true EOF)
158
- await Promise.all(streamPromises);
161
+ let finalExecution;
162
+ const pollStart = Date.now();
163
+ try {
164
+ finalExecution = await executionGet(client, {
165
+ executionId: execution.executionId,
166
+ orgId,
167
+ wait: EXECUTION_WAIT_DURATION,
168
+ });
169
+ }
170
+ catch (err) {
171
+ // Abort any active stream readers before rethrowing so they
172
+ // don't keep running after the execution poll has failed.
173
+ streamAbortController.abort();
174
+ throw err;
175
+ }
176
+ logger.debug('[exec] executionGet returned in %dms: status=%s, exitCode=%s', Date.now() - pollStart, finalExecution.status, finalExecution.exitCode ?? 'undefined');
177
+ // Wait for all streams to reach EOF (Pulse blocks until true EOF).
178
+ // Safety: execution is confirmed complete so all data has been written
179
+ // and complete/v2 sent. If Pulse doesn't close the response within
180
+ // a grace period (e.g. cross-server routing delay, stale metadata
181
+ // cache), abort the streams to prevent an indefinite hang.
182
+ if (streamPromises.length > 0) {
183
+ logger.debug('[exec] waiting for %d stream(s) to EOF', streamPromises.length);
184
+ const streamWaitStart = Date.now();
185
+ let graceTriggered = false;
186
+ const streamGrace = setTimeout(() => {
187
+ graceTriggered = true;
188
+ logger.debug('[exec] stream grace period (5s) expired after execution complete — aborting streams');
189
+ streamAbortController.abort();
190
+ }, 5_000);
191
+ try {
192
+ await Promise.all(streamPromises);
193
+ }
194
+ finally {
195
+ clearTimeout(streamGrace);
196
+ }
197
+ logger.debug('[exec] all streams done in %dms (graceTriggered=%s)', Date.now() - streamWaitStart, graceTriggered);
198
+ }
159
199
  // Ensure stdout is fully flushed before continuing
160
200
  if (!options.json && process.stdout.writable) {
161
201
  await new Promise((resolve) => {
@@ -207,35 +247,46 @@ export const execSubcommand = createCommand({
207
247
  }
208
248
  },
209
249
  });
210
- async function streamUrlToWritable(url, writable, signal, logger) {
250
+ async function streamUrlToWritable(label, url, writable, signal, logger) {
251
+ const streamStart = Date.now();
211
252
  try {
212
- logger.debug('fetching stream: %s', url);
213
- const response = await fetch(url, { signal });
214
- logger.debug('stream response status: %d', response.status);
253
+ // Signal to Pulse that this is a v2 stream so it waits for v2 metadata
254
+ // instead of falling back to the legacy download path on a short timeout.
255
+ const v2Url = new URL(url);
256
+ v2Url.searchParams.set('v', '2');
257
+ logger.debug('[stream:%s] fetching: %s', label, v2Url.href);
258
+ const response = await fetch(v2Url.href, { signal });
259
+ logger.debug('[stream:%s] response status=%d in %dms', label, response.status, Date.now() - streamStart);
215
260
  if (!response.ok || !response.body) {
216
- logger.debug('stream response not ok or no body');
261
+ logger.debug('[stream:%s] not ok or no body — returning', label);
217
262
  return;
218
263
  }
219
264
  const reader = response.body.getReader();
265
+ let chunks = 0;
266
+ let totalBytes = 0;
220
267
  // Read until EOF - Pulse will block until data is available
221
268
  while (true) {
222
269
  const { done, value } = await reader.read();
223
270
  if (done) {
224
- logger.debug('stream EOF');
271
+ logger.debug('[stream:%s] EOF after %dms (%d chunks, %d bytes)', label, Date.now() - streamStart, chunks, totalBytes);
225
272
  break;
226
273
  }
227
274
  if (value) {
228
- logger.debug('stream chunk: %d bytes', value.length);
275
+ chunks++;
276
+ totalBytes += value.length;
277
+ if (chunks <= 3 || chunks % 100 === 0) {
278
+ logger.debug('[stream:%s] chunk #%d: %d bytes (total: %d bytes, +%dms)', label, chunks, value.length, totalBytes, Date.now() - streamStart);
279
+ }
229
280
  await writeAndDrain(writable, value);
230
281
  }
231
282
  }
232
283
  }
233
284
  catch (err) {
234
285
  if (err instanceof Error && err.name === 'AbortError') {
235
- logger.debug('stream aborted');
286
+ logger.debug('[stream:%s] aborted after %dms', label, Date.now() - streamStart);
236
287
  return;
237
288
  }
238
- logger.debug('stream error: %s', err);
289
+ logger.debug('[stream:%s] error after %dms: %s', label, Date.now() - streamStart, err);
239
290
  }
240
291
  }
241
292
  function createCaptureStream(onChunk) {
@@ -1 +1 @@
1
- {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/exec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exec.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/exec.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/run.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,aAAa,sCAqMxB,CAAC;AAgBH,eAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/run.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,aAAa,sCA2MxB,CAAC;AAgBH,eAAe,aAAa,CAAC"}
@@ -178,6 +178,12 @@ export const runSubcommand = createCommand({
178
178
  if (!options.json) {
179
179
  tui.error(`failed with exit code ${result.exitCode} in ${duration}ms`);
180
180
  }
181
+ // Use process.exit() directly rather than process.exitCode to ensure
182
+ // the exit code propagates reliably across all runtimes (Bun/Node).
183
+ // process.exitCode can be overwritten by later async cleanup.
184
+ if (!options.json) {
185
+ process.exit(result.exitCode);
186
+ }
181
187
  process.exitCode = result.exitCode;
182
188
  }
183
189
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/sandbox/run.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentuity/cli",
3
- "version": "1.0.55",
3
+ "version": "1.0.56",
4
4
  "license": "Apache-2.0",
5
5
  "author": "Agentuity employees and contributors",
6
6
  "type": "module",
@@ -41,9 +41,9 @@
41
41
  "prepublishOnly": "bun run clean && bun run build"
42
42
  },
43
43
  "dependencies": {
44
- "@agentuity/auth": "1.0.55",
45
- "@agentuity/core": "1.0.55",
46
- "@agentuity/server": "1.0.55",
44
+ "@agentuity/auth": "1.0.56",
45
+ "@agentuity/core": "1.0.56",
46
+ "@agentuity/server": "1.0.56",
47
47
  "@datasert/cronjs-parser": "^1.4.0",
48
48
  "@vitejs/plugin-react": "^5.1.2",
49
49
  "acorn-loose": "^8.5.2",
@@ -59,10 +59,10 @@
59
59
  "typescript": "^5.9.0",
60
60
  "vite": "^7.2.7",
61
61
  "zod": "^4.3.5",
62
- "@agentuity/frontend": "1.0.55"
62
+ "@agentuity/frontend": "1.0.56"
63
63
  },
64
64
  "devDependencies": {
65
- "@agentuity/test-utils": "1.0.55",
65
+ "@agentuity/test-utils": "1.0.56",
66
66
  "@types/adm-zip": "^0.5.7",
67
67
  "@types/bun": "latest",
68
68
  "@types/tar-fs": "^2.0.4",
@@ -98,6 +98,8 @@ export const execSubcommand = createCommand({
98
98
  process.on('SIGTERM', handleSignal);
99
99
 
100
100
  try {
101
+ logger.debug('[exec] calling sandboxExecute for %s', args.sandboxId);
102
+ const executeStart = Date.now();
101
103
  const execution = await sandboxExecute(client, {
102
104
  sandboxId: args.sandboxId,
103
105
  options: {
@@ -107,6 +109,13 @@ export const execSubcommand = createCommand({
107
109
  },
108
110
  orgId,
109
111
  });
112
+ logger.debug(
113
+ '[exec] sandboxExecute returned in %dms: executionId=%s, stdoutUrl=%s, stderrUrl=%s',
114
+ Date.now() - executeStart,
115
+ execution.executionId,
116
+ execution.stdoutStreamUrl ?? 'none',
117
+ execution.stderrStreamUrl ?? 'none'
118
+ );
110
119
 
111
120
  if (execution.autoResumed && !options.json) {
112
121
  tui.warning('Sandbox was automatically resumed from suspended state');
@@ -116,10 +125,17 @@ export const execSubcommand = createCommand({
116
125
  const stderrStreamUrl = execution.stderrStreamUrl;
117
126
  const streamAbortController = new AbortController();
118
127
  const streamPromises: Promise<void>[] = [];
128
+ const streamLabels: string[] = [];
119
129
 
120
130
  // Check if stdout and stderr are the same stream (combined output)
121
131
  const isCombinedOutput =
122
132
  stdoutStreamUrl && stderrStreamUrl && stdoutStreamUrl === stderrStreamUrl;
133
+ logger.debug(
134
+ '[exec] stream mode: combined=%s, stdoutUrl=%s, stderrUrl=%s',
135
+ isCombinedOutput,
136
+ stdoutStreamUrl ?? 'none',
137
+ stderrStreamUrl ?? 'none'
138
+ );
123
139
 
124
140
  // Set up stream capture — in JSON mode, capture to buffers;
125
141
  // when streams are separate, capture stdout/stderr independently
@@ -153,9 +169,11 @@ export const execSubcommand = createCommand({
153
169
 
154
170
  if (isCombinedOutput) {
155
171
  // Stream combined output to stdout only to avoid duplicates
156
- logger.debug('using combined output stream (stdout === stderr): %s', stdoutStreamUrl);
172
+ logger.debug('[exec] starting combined stream: %s', stdoutStreamUrl);
173
+ streamLabels.push('combined');
157
174
  streamPromises.push(
158
175
  streamUrlToWritable(
176
+ 'combined',
159
177
  stdoutStreamUrl,
160
178
  stdoutWritable,
161
179
  streamAbortController.signal,
@@ -164,9 +182,11 @@ export const execSubcommand = createCommand({
164
182
  );
165
183
  } else {
166
184
  if (stdoutStreamUrl) {
167
- logger.debug('starting stdout stream from: %s', stdoutStreamUrl);
185
+ logger.debug('[exec] starting stdout stream: %s', stdoutStreamUrl);
186
+ streamLabels.push('stdout');
168
187
  streamPromises.push(
169
188
  streamUrlToWritable(
189
+ 'stdout',
170
190
  stdoutStreamUrl,
171
191
  stdoutWritable,
172
192
  streamAbortController.signal,
@@ -176,9 +196,11 @@ export const execSubcommand = createCommand({
176
196
  }
177
197
 
178
198
  if (stderrStreamUrl) {
179
- logger.debug('starting stderr stream from: %s', stderrStreamUrl);
199
+ logger.debug('[exec] starting stderr stream: %s', stderrStreamUrl);
200
+ streamLabels.push('stderr');
180
201
  streamPromises.push(
181
202
  streamUrlToWritable(
203
+ 'stderr',
182
204
  stderrStreamUrl,
183
205
  stderrWritable,
184
206
  streamAbortController.signal,
@@ -188,17 +210,63 @@ export const execSubcommand = createCommand({
188
210
  }
189
211
  }
190
212
 
213
+ logger.debug(
214
+ '[exec] %d stream(s) started [%s], now long-polling executionGet',
215
+ streamPromises.length,
216
+ streamLabels.join(', ')
217
+ );
218
+
191
219
  // Use server-side long-polling to wait for execution completion
192
220
  // This is more efficient than client-side polling and provides immediate
193
221
  // error detection if the sandbox is terminated
194
- const finalExecution = await executionGet(client, {
195
- executionId: execution.executionId,
196
- orgId,
197
- wait: EXECUTION_WAIT_DURATION,
198
- });
222
+ let finalExecution: Awaited<ReturnType<typeof executionGet>>;
223
+ const pollStart = Date.now();
224
+ try {
225
+ finalExecution = await executionGet(client, {
226
+ executionId: execution.executionId,
227
+ orgId,
228
+ wait: EXECUTION_WAIT_DURATION,
229
+ });
230
+ } catch (err) {
231
+ // Abort any active stream readers before rethrowing so they
232
+ // don't keep running after the execution poll has failed.
233
+ streamAbortController.abort();
234
+ throw err;
235
+ }
236
+ logger.debug(
237
+ '[exec] executionGet returned in %dms: status=%s, exitCode=%s',
238
+ Date.now() - pollStart,
239
+ finalExecution.status,
240
+ finalExecution.exitCode ?? 'undefined'
241
+ );
199
242
 
200
- // Wait for all streams to reach EOF (Pulse blocks until true EOF)
201
- await Promise.all(streamPromises);
243
+ // Wait for all streams to reach EOF (Pulse blocks until true EOF).
244
+ // Safety: execution is confirmed complete so all data has been written
245
+ // and complete/v2 sent. If Pulse doesn't close the response within
246
+ // a grace period (e.g. cross-server routing delay, stale metadata
247
+ // cache), abort the streams to prevent an indefinite hang.
248
+ if (streamPromises.length > 0) {
249
+ logger.debug('[exec] waiting for %d stream(s) to EOF', streamPromises.length);
250
+ const streamWaitStart = Date.now();
251
+ let graceTriggered = false;
252
+ const streamGrace = setTimeout(() => {
253
+ graceTriggered = true;
254
+ logger.debug(
255
+ '[exec] stream grace period (5s) expired after execution complete — aborting streams'
256
+ );
257
+ streamAbortController.abort();
258
+ }, 5_000);
259
+ try {
260
+ await Promise.all(streamPromises);
261
+ } finally {
262
+ clearTimeout(streamGrace);
263
+ }
264
+ logger.debug(
265
+ '[exec] all streams done in %dms (graceTriggered=%s)',
266
+ Date.now() - streamWaitStart,
267
+ graceTriggered
268
+ );
269
+ }
202
270
 
203
271
  // Ensure stdout is fully flushed before continuing
204
272
  if (!options.json && process.stdout.writable) {
@@ -258,42 +326,72 @@ export const execSubcommand = createCommand({
258
326
  });
259
327
 
260
328
  async function streamUrlToWritable(
329
+ label: string,
261
330
  url: string,
262
331
  writable: NodeJS.WritableStream,
263
332
  signal: AbortSignal,
264
333
  logger: Logger
265
334
  ): Promise<void> {
335
+ const streamStart = Date.now();
266
336
  try {
267
- logger.debug('fetching stream: %s', url);
268
- const response = await fetch(url, { signal });
269
- logger.debug('stream response status: %d', response.status);
337
+ // Signal to Pulse that this is a v2 stream so it waits for v2 metadata
338
+ // instead of falling back to the legacy download path on a short timeout.
339
+ const v2Url = new URL(url);
340
+ v2Url.searchParams.set('v', '2');
341
+ logger.debug('[stream:%s] fetching: %s', label, v2Url.href);
342
+ const response = await fetch(v2Url.href, { signal });
343
+ logger.debug(
344
+ '[stream:%s] response status=%d in %dms',
345
+ label,
346
+ response.status,
347
+ Date.now() - streamStart
348
+ );
270
349
 
271
350
  if (!response.ok || !response.body) {
272
- logger.debug('stream response not ok or no body');
351
+ logger.debug('[stream:%s] not ok or no body — returning', label);
273
352
  return;
274
353
  }
275
354
 
276
355
  const reader = response.body.getReader();
356
+ let chunks = 0;
357
+ let totalBytes = 0;
277
358
 
278
359
  // Read until EOF - Pulse will block until data is available
279
360
  while (true) {
280
361
  const { done, value } = await reader.read();
281
362
  if (done) {
282
- logger.debug('stream EOF');
363
+ logger.debug(
364
+ '[stream:%s] EOF after %dms (%d chunks, %d bytes)',
365
+ label,
366
+ Date.now() - streamStart,
367
+ chunks,
368
+ totalBytes
369
+ );
283
370
  break;
284
371
  }
285
372
 
286
373
  if (value) {
287
- logger.debug('stream chunk: %d bytes', value.length);
374
+ chunks++;
375
+ totalBytes += value.length;
376
+ if (chunks <= 3 || chunks % 100 === 0) {
377
+ logger.debug(
378
+ '[stream:%s] chunk #%d: %d bytes (total: %d bytes, +%dms)',
379
+ label,
380
+ chunks,
381
+ value.length,
382
+ totalBytes,
383
+ Date.now() - streamStart
384
+ );
385
+ }
288
386
  await writeAndDrain(writable, value);
289
387
  }
290
388
  }
291
389
  } catch (err) {
292
390
  if (err instanceof Error && err.name === 'AbortError') {
293
- logger.debug('stream aborted');
391
+ logger.debug('[stream:%s] aborted after %dms', label, Date.now() - streamStart);
294
392
  return;
295
393
  }
296
- logger.debug('stream error: %s', err);
394
+ logger.debug('[stream:%s] error after %dms: %s', label, Date.now() - streamStart, err);
297
395
  }
298
396
  }
299
397
 
@@ -198,6 +198,12 @@ export const runSubcommand = createCommand({
198
198
  if (!options.json) {
199
199
  tui.error(`failed with exit code ${result.exitCode} in ${duration}ms`);
200
200
  }
201
+ // Use process.exit() directly rather than process.exitCode to ensure
202
+ // the exit code propagates reliably across all runtimes (Bun/Node).
203
+ // process.exitCode can be overwritten by later async cleanup.
204
+ if (!options.json) {
205
+ process.exit(result.exitCode);
206
+ }
201
207
  process.exitCode = result.exitCode;
202
208
  }
203
209