@agentworkforce/deploy 3.0.8 → 3.0.10

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.
@@ -143,7 +143,7 @@ test('cloud launcher POSTs a deploy bundle and returns the cloud handle', async
143
143
  },
144
144
  input: { inputs: { topic: 'AI' } },
145
145
  fetch(url, init) {
146
- if (url.endsWith('/agents?persona_slug=demo')) {
146
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
147
147
  return okJson({ agents: [] });
148
148
  }
149
149
  assert.equal(url, 'https://cloud.example.test/api/v1/workspaces/ws-test/deployments');
@@ -165,13 +165,13 @@ test('cloud URL precedence is flag env, cloud env, persona deployUrl, then defau
165
165
  const { calls } = await launch({
166
166
  env,
167
167
  persona: spec,
168
- fetch(url) {
169
- if (url.includes('/agents?persona_slug='))
168
+ fetch(url, init) {
169
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
170
170
  return okJson({ agents: [] });
171
171
  return okJson({ agentId: 'agent-1', deploymentId: 'dep-1', status: 'active' }, 201);
172
172
  }
173
173
  });
174
- return calls.find((call) => call.url.endsWith('/deployments'))?.url;
174
+ return calls.find((call) => call.init?.method === 'POST' && call.url.endsWith('/deployments'))?.url;
175
175
  }
176
176
  const personaWithUrl = persona();
177
177
  personaWithUrl.cloud = { deployUrl: 'https://persona.example.test/' };
@@ -194,7 +194,7 @@ test('cloud harness plan and BYOK save provider credentials through the cloud co
194
194
  assert.equal(init?.body, undefined);
195
195
  return okJson({ providerCredentialId: 'cred-plan' });
196
196
  }
197
- if (url.endsWith('/agents?persona_slug=demo'))
197
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
198
198
  return okJson({ agents: [] });
199
199
  if (url.endsWith('/deployments')) {
200
200
  return okJson({ agentId: 'agent-plan', deploymentId: 'dep-plan', status: 'active' }, 201);
@@ -218,7 +218,7 @@ test('cloud harness plan and BYOK save provider credentials through the cloud co
218
218
  });
219
219
  return okJson({ providerCredentialId: 'cred-byok' });
220
220
  }
221
- if (url.endsWith('/agents?persona_slug=demo'))
221
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
222
222
  return okJson({ agents: [] });
223
223
  if (url.endsWith('/deployments')) {
224
224
  return okJson({ agentId: 'agent-byok', deploymentId: 'dep-byok', status: 'active' }, 201);
@@ -239,7 +239,7 @@ test('cloud BYOK provider detection avoids substring false positives', async ()
239
239
  assert.equal(JSON.parse(String(init?.body)).modelProvider, 'my-openai-alternative');
240
240
  return okJson({ providerCredentialId: 'cred-byok' });
241
241
  }
242
- if (url.endsWith('/agents?persona_slug=demo'))
242
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
243
243
  return okJson({ agents: [] });
244
244
  if (url.endsWith('/deployments')) {
245
245
  return okJson({ agentId: 'agent-byok', deploymentId: 'dep-byok', status: 'active' }, 201);
@@ -248,7 +248,12 @@ test('cloud BYOK provider detection avoids substring false positives', async ()
248
248
  }
249
249
  });
250
250
  });
251
- test('cloud harness OAuth uses provider_credentials readiness and honors no-prompt failure', async () => {
251
+ test('cloud harness OAuth probe hits /api/v1/cloud-agents and honors no-prompt failure', async () => {
252
+ // Cloud surfaces "is the harness connected?" via the cloud-agents list,
253
+ // not the (never-built) /users/me/provider_credentials route. When the
254
+ // list is empty for the persona's provider, --no-prompt must surface a
255
+ // clear actionable error rather than reaching the prompt path.
256
+ let probeCalls = 0;
252
257
  const restoreDeps = configureCloudCredentialDepsForTest({
253
258
  readStoredAuth: async () => ({
254
259
  apiUrl: 'https://cloud.example.test',
@@ -259,13 +264,104 @@ test('cloud harness OAuth uses provider_credentials readiness and honors no-prom
259
264
  createCloudApiClient() {
260
265
  return {
261
266
  async fetch(pathname, init) {
262
- assert.equal(pathname, '/api/v1/users/me/provider_credentials?model_provider=openai');
267
+ probeCalls += 1;
268
+ assert.equal(pathname, '/api/v1/cloud-agents');
263
269
  assert.equal(init?.method, 'GET');
264
- return okJson({});
270
+ return okJson({ agents: [] });
271
+ }
272
+ };
273
+ }
274
+ });
275
+ await assert.rejects(launch({
276
+ defaultPlanCredential: false,
277
+ env: {
278
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
279
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
280
+ },
281
+ input: { harnessSource: 'oauth' },
282
+ fetch(url, init) {
283
+ throw new Error(`unexpected URL ${url}`);
284
+ }
285
+ }), /OAuth credentials are not connected/).finally(restoreDeps);
286
+ assert.ok(probeCalls >= 1);
287
+ });
288
+ test('cloud harness OAuth probe treats a matching connected entry as ready (skips prompt)', async () => {
289
+ // Regression for the user-facing M3 bug: an Anthropic-connected user
290
+ // hit "credentials are not connected" because the probe pointed at a
291
+ // phantom route. With the probe fixed and a connected entry present,
292
+ // the harness check resolves silently and the deploy proceeds.
293
+ const restoreDeps = configureCloudCredentialDepsForTest({
294
+ readStoredAuth: async () => ({
295
+ apiUrl: 'https://cloud.example.test',
296
+ accessToken: 'access',
297
+ refreshToken: 'refresh',
298
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
299
+ }),
300
+ createCloudApiClient() {
301
+ return {
302
+ async fetch(pathname) {
303
+ assert.equal(pathname, '/api/v1/cloud-agents');
304
+ return okJson({
305
+ agents: [
306
+ {
307
+ id: 'cloud-agent-1',
308
+ harness: 'openai', // matches persona's derived provider
309
+ status: 'connected',
310
+ credentialStoredAt: '2026-05-13T12:00:00.000Z'
311
+ }
312
+ ]
313
+ });
314
+ }
315
+ };
316
+ }
317
+ });
318
+ const { calls, handle } = await launch({
319
+ env: {
320
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
321
+ WORKFORCE_DEPLOY_NO_PROMPT: '1'
322
+ },
323
+ input: { harnessSource: 'oauth' },
324
+ fetch(url, init) {
325
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
326
+ return okJson({ agents: [] });
327
+ if (url.endsWith('/deployments')) {
328
+ return okJson({ agentId: 'agent-oauth-connected', deploymentId: 'dep-1', status: 'active' }, 201);
329
+ }
330
+ throw new Error(`unexpected URL ${url}`);
331
+ }
332
+ }).finally(restoreDeps);
333
+ assert.equal(handle.id, 'agent-oauth-connected');
334
+ // No connect-provider call should have fired because the probe already
335
+ // returned a connected entry.
336
+ assert.ok(!calls.some((c) => c.url.includes('/cli/auth')));
337
+ });
338
+ test('cloud harness OAuth probe ignores entries with the wrong harness', async () => {
339
+ // If the user has openai connected but the persona's provider is
340
+ // anthropic, the probe must NOT treat that as readiness — otherwise
341
+ // the deploy would proceed with cloud expecting an anthropic key it
342
+ // never received.
343
+ const restoreDeps = configureCloudCredentialDepsForTest({
344
+ readStoredAuth: async () => ({
345
+ apiUrl: 'https://cloud.example.test',
346
+ accessToken: 'access',
347
+ refreshToken: 'refresh',
348
+ accessTokenExpiresAt: '2999-01-01T00:00:00.000Z'
349
+ }),
350
+ createCloudApiClient() {
351
+ return {
352
+ async fetch() {
353
+ return okJson({
354
+ agents: [
355
+ { harness: 'openai', status: 'connected' },
356
+ { harness: 'anthropic', status: 'pending' }, // wrong status
357
+ { harness: 'google', status: 'connected' } // wrong harness
358
+ ]
359
+ });
265
360
  }
266
361
  };
267
362
  }
268
363
  });
364
+ // Override the persona to claude/anthropic so the expected provider mismatches.
269
365
  await assert.rejects(launch({
270
366
  defaultPlanCredential: false,
271
367
  env: {
@@ -273,12 +369,13 @@ test('cloud harness OAuth uses provider_credentials readiness and honors no-prom
273
369
  WORKFORCE_DEPLOY_NO_PROMPT: '1'
274
370
  },
275
371
  input: { harnessSource: 'oauth' },
276
- fetch(url) {
372
+ persona: persona({ harness: 'claude', model: 'claude-sonnet-4-6' }),
373
+ fetch(url, init) {
277
374
  throw new Error(`unexpected URL ${url}`);
278
375
  }
279
376
  }), /OAuth credentials are not connected/).finally(restoreDeps);
280
377
  });
281
- test('cloud harness OAuth starts auth and polls until provider credentials are connected', async () => {
378
+ test('cloud harness OAuth starts auth and polls /cloud-agents until the harness is connected', async () => {
282
379
  let credentialChecks = 0;
283
380
  const connected = [];
284
381
  const restoreDeps = configureCloudCredentialDepsForTest({
@@ -295,10 +392,14 @@ test('cloud harness OAuth starts auth and polls until provider credentials are c
295
392
  createCloudApiClient() {
296
393
  return {
297
394
  async fetch(pathname, init) {
298
- if (pathname.endsWith('/provider_credentials?model_provider=openai')) {
395
+ if (pathname === '/api/v1/cloud-agents') {
299
396
  credentialChecks += 1;
300
397
  assert.equal(init?.method, 'GET');
301
- return okJson(credentialChecks < 3 ? {} : { id: 'cred-oauth', status: 'connected' });
398
+ // First two polls: harness not yet connected (empty list).
399
+ // Third poll: openai entry appears with status connected.
400
+ return okJson(credentialChecks < 3
401
+ ? { agents: [] }
402
+ : { agents: [{ id: 'cloud-agent-openai', harness: 'openai', status: 'connected' }] });
302
403
  }
303
404
  throw new Error(`unexpected path ${pathname}`);
304
405
  }
@@ -308,8 +409,8 @@ test('cloud harness OAuth starts auth and polls until provider credentials are c
308
409
  const io = createBufferedIO();
309
410
  io.scriptConfirmations([true]);
310
411
  const { bundle, cleanup } = await withBundle();
311
- const fetchMock = installFetch((url) => {
312
- if (url.endsWith('/agents?persona_slug=demo'))
412
+ const fetchMock = installFetch((url, init) => {
413
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
313
414
  return okJson({ agents: [] });
314
415
  if (url.endsWith('/deployments')) {
315
416
  return okJson({ agentId: 'agent-oauth', deploymentId: 'dep-oauth', status: 'active' }, 201);
@@ -343,8 +444,8 @@ test('cloud harness OAuth starts auth and polls until provider credentials are c
343
444
  test('cloud launcher maps 401 deploy responses to the workforce login guidance', async () => {
344
445
  await assert.rejects(launch({
345
446
  env: { WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test' },
346
- fetch(url) {
347
- if (url.endsWith('/agents?persona_slug=demo'))
447
+ fetch(url, init) {
448
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
348
449
  return okJson({ agents: [] });
349
450
  return okJson({ error: 'Unauthorized' }, 401);
350
451
  }
@@ -354,8 +455,8 @@ test('cloud launcher retries retryable network failures three times', async () =
354
455
  let deployAttempts = 0;
355
456
  const { calls, handle } = await launch({
356
457
  env: { WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test' },
357
- fetch(url) {
358
- if (url.endsWith('/agents?persona_slug=demo'))
458
+ fetch(url, init) {
459
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
359
460
  return okJson({ agents: [] });
360
461
  deployAttempts += 1;
361
462
  if (deployAttempts < 3) {
@@ -365,16 +466,19 @@ test('cloud launcher retries retryable network failures three times', async () =
365
466
  }
366
467
  });
367
468
  assert.equal(handle.id, 'agent-1');
368
- assert.equal(callsForUrl(calls, '/deployments'), 3);
469
+ // 3 POST attempts (2 failed + 1 success). The listing GET is filtered
470
+ // out so the retry count remains exact regardless of the existing-agent
471
+ // preflight call.
472
+ assert.equal(calls.filter((c) => c.init?.method === 'POST' && c.url.endsWith('/deployments')).length, 3);
369
473
  });
370
474
  test('cloud polling resolves done with code 0 on active and 1 on failed', async () => {
371
475
  for (const finalStatus of ['active', 'failed']) {
372
476
  const { bundle, cleanup } = await withBundle();
373
477
  const io = createBufferedIO();
374
- const fetchMock = installFetch((url) => {
478
+ const fetchMock = installFetch((url, init) => {
375
479
  if (url.includes('/provider-credentials/managed'))
376
480
  return okJson({ providerCredentialId: 'cred-1' });
377
- if (url.endsWith('/agents?persona_slug=demo'))
481
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
378
482
  return okJson({ agents: [] });
379
483
  if (url.endsWith('/deployments')) {
380
484
  return okJson({ agentId: `agent-${finalStatus}`, deploymentId: `dep-${finalStatus}`, status: 'starting' }, 201);
@@ -415,7 +519,7 @@ test('cloud stop calls the destroy agent endpoint', async () => {
415
519
  const fetchMock = installFetch((url, init) => {
416
520
  if (url.includes('/provider-credentials/managed'))
417
521
  return okJson({ providerCredentialId: 'cred-1' });
418
- if (url.endsWith('/agents?persona_slug=demo'))
522
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
419
523
  return okJson({ agents: [] });
420
524
  if (url.endsWith('/deployments')) {
421
525
  return okJson({ agentId: 'agent-1', deploymentId: 'dep-1', status: 'active' }, 201);
@@ -448,10 +552,10 @@ test('cloud stop calls the destroy agent endpoint', async () => {
448
552
  test('cloud launcher leaves integration preflight to the deploy orchestrator', async () => {
449
553
  const io = createBufferedIO();
450
554
  const { bundle, cleanup } = await withBundle();
451
- const fetchMock = installFetch((url) => {
555
+ const fetchMock = installFetch((url, init) => {
452
556
  if (url.includes('/provider-credentials/managed'))
453
557
  return okJson({ providerCredentialId: 'cred-1' });
454
- if (url.endsWith('/agents?persona_slug=demo'))
558
+ if (init?.method === 'GET' && url.endsWith('/deployments'))
455
559
  return okJson({ agents: [] });
456
560
  if (url.endsWith('/deployments')) {
457
561
  return okJson({ agentId: 'agent-1', deploymentId: 'dep-1', status: 'active' }, 201);
@@ -485,8 +589,20 @@ test('cloud existing-persona stage honors destroy and cancel choices', async ()
485
589
  WORKFORCE_DEPLOY_ON_EXISTS: 'destroy'
486
590
  },
487
591
  fetch(url, init) {
488
- if (url.endsWith('/agents?persona_slug=demo'))
489
- return okJson({ agents: [{ id: 'agent-old' }] });
592
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
593
+ // Workspace-scoped listing must identify the persona it belongs to
594
+ // (deployedName is what cloud derives from the slug). A row without
595
+ // any persona-identifying field is intentionally NOT treated as a
596
+ // match by the post-cloud#580 client-side filter.
597
+ return okJson({
598
+ agents: [{
599
+ id: 'agent-old',
600
+ deployedName: 'demo',
601
+ status: 'active',
602
+ createdAt: '2026-05-12T00:00:00.000Z'
603
+ }]
604
+ });
605
+ }
490
606
  if (url.endsWith('/agents/agent-old/destroy')) {
491
607
  assert.equal(init?.method, 'POST');
492
608
  return okJson({ ok: true });
@@ -504,16 +620,231 @@ test('cloud existing-persona stage honors destroy and cancel choices', async ()
504
620
  WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
505
621
  WORKFORCE_DEPLOY_ON_EXISTS: 'cancel'
506
622
  },
507
- fetch(url) {
508
- if (url.endsWith('/agents?persona_slug=demo'))
509
- return okJson({ agent: { id: 'agent-old' } });
623
+ fetch(url, init) {
624
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
625
+ return okJson({
626
+ agents: [{
627
+ agentId: 'agent-old',
628
+ deployedName: 'demo',
629
+ status: 'active',
630
+ createdAt: '2026-05-13T00:00:00.000Z'
631
+ }],
632
+ nextCursor: null
633
+ });
634
+ }
510
635
  throw new Error(`unexpected URL ${url}`);
511
636
  }
512
637
  });
513
638
  assert.equal(cancel.handle.id, 'agent-old');
514
639
  assert.equal(cancel.handle.status, 'cancelled');
515
640
  assert.equal((await cancel.handle.done).code, 0);
516
- assert.equal(cancel.calls.some((call) => call.url.endsWith('/deployments')), false);
641
+ // No deploy POST should fire — the listing GET is expected and not what
642
+ // this assertion is guarding against.
643
+ assert.equal(cancel.calls.some((call) => call.init?.method === 'POST' && call.url.endsWith('/deployments')), false);
644
+ });
645
+ test('findExistingAgent: parses the new /deployments shape ({agentId, personaId, status})', async () => {
646
+ // Regression for the production blocker: cloud#580 changed the list
647
+ // shape from {agent:{id}} → {agents:[{agentId, personaId, status}]}.
648
+ // We must accept the new keys (agentId) and still filter out
649
+ // destroyed tombstones + persona-id mismatches.
650
+ const result = await launch({
651
+ env: {
652
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
653
+ WORKFORCE_DEPLOY_ON_EXISTS: 'cancel'
654
+ },
655
+ fetch(url, init) {
656
+ if (url.endsWith('/deployments')) {
657
+ return okJson({
658
+ agents: [
659
+ // Destroyed tombstone for the same persona — must be skipped.
660
+ {
661
+ agentId: 'agent-destroyed',
662
+ personaId: 'demo',
663
+ status: 'destroyed',
664
+ createdAt: '2026-05-12T00:00:00.000Z'
665
+ },
666
+ // Different persona — must be skipped even though the
667
+ // server-side filter should already exclude it.
668
+ {
669
+ agentId: 'agent-wrong-persona',
670
+ personaId: 'something-else',
671
+ status: 'active',
672
+ createdAt: '2026-05-13T00:00:00.000Z'
673
+ },
674
+ // The actual match.
675
+ {
676
+ agentId: 'agent-current',
677
+ personaId: 'demo',
678
+ status: 'active',
679
+ createdAt: '2026-05-13T12:00:00.000Z'
680
+ }
681
+ ],
682
+ nextCursor: null
683
+ });
684
+ }
685
+ throw new Error(`unexpected URL ${url}`);
686
+ }
687
+ });
688
+ assert.equal(result.handle.id, 'agent-current');
689
+ assert.equal(result.handle.status, 'cancelled');
690
+ });
691
+ test('findExistingAgent: empty agents array means "no existing deployment"', async () => {
692
+ const { handle, calls } = await launch({
693
+ env: {
694
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test'
695
+ },
696
+ fetch(url, init) {
697
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
698
+ return okJson({ agents: [], nextCursor: null });
699
+ }
700
+ if (init?.method === 'POST' && url.endsWith('/deployments')) {
701
+ return okJson({ agentId: 'agent-fresh', deploymentId: 'dep-1', status: 'active' }, 201);
702
+ }
703
+ throw new Error(`unexpected URL ${url} (${init?.method})`);
704
+ }
705
+ });
706
+ assert.equal(handle.id, 'agent-fresh');
707
+ // The list lookup must have fired before the deploy POST.
708
+ const getIndex = calls.findIndex((c) => c.init?.method === 'GET' && c.url.endsWith('/deployments'));
709
+ const postIndex = calls.findIndex((c) => c.init?.method === 'POST' && c.url.endsWith('/deployments'));
710
+ assert.notEqual(getIndex, -1);
711
+ assert.notEqual(postIndex, -1);
712
+ assert.ok(getIndex < postIndex, 'listing GET must precede deploy POST');
713
+ });
714
+ test('findExistingAgent: workspace-scoped list rows without persona-identifying fields are NOT matched', async () => {
715
+ // The new /deployments endpoint is workspace-scoped, not persona-scoped.
716
+ // A row that lacks deployedName/personaSlug/personaId could belong to
717
+ // any persona in the workspace; client-side matching MUST refuse to
718
+ // treat it as "the persona we're deploying". Otherwise on-exists could
719
+ // act on the wrong agent. (Legacy `{agent:{id}}` envelope keeps its
720
+ // back-compat because the URL path implied persona-scoping; that
721
+ // path is exercised by the "cloud existing-persona stage" test.)
722
+ const result = await launch({
723
+ env: {
724
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test'
725
+ },
726
+ fetch(url, init) {
727
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
728
+ return okJson({
729
+ agents: [
730
+ // Row with NO persona-identifying field — must be ignored.
731
+ { agentId: 'agent-mystery', status: 'active' }
732
+ ],
733
+ nextCursor: null
734
+ });
735
+ }
736
+ if (init?.method === 'POST' && url.endsWith('/deployments')) {
737
+ // Deploy proceeds as if no existing agent was found.
738
+ return okJson({ agentId: 'agent-fresh', deploymentId: 'dep-1', status: 'active' }, 201);
739
+ }
740
+ throw new Error(`unexpected URL ${url} (${init?.method})`);
741
+ }
742
+ });
743
+ assert.equal(result.handle.id, 'agent-fresh');
744
+ });
745
+ test('findExistingAgent: multiple active rows for the same persona — newest wins', async () => {
746
+ // During a destroy+redeploy race or a soft-delete window, the workspace
747
+ // can briefly hold two active rows for the same persona slug. The CLI
748
+ // should act on the newest one, not whichever cloud returns first in
749
+ // the unordered array.
750
+ const result = await launch({
751
+ env: {
752
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
753
+ WORKFORCE_DEPLOY_ON_EXISTS: 'cancel'
754
+ },
755
+ fetch(url, init) {
756
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
757
+ return okJson({
758
+ agents: [
759
+ {
760
+ agentId: 'agent-stale',
761
+ deployedName: 'demo',
762
+ status: 'active',
763
+ createdAt: '2026-05-12T00:00:00.000Z'
764
+ },
765
+ {
766
+ agentId: 'agent-current',
767
+ deployedName: 'demo',
768
+ status: 'active',
769
+ createdAt: '2026-05-13T12:00:00.000Z'
770
+ },
771
+ {
772
+ agentId: 'agent-tombstone',
773
+ deployedName: 'demo',
774
+ status: 'destroyed',
775
+ createdAt: '2026-05-13T13:00:00.000Z'
776
+ }
777
+ ],
778
+ nextCursor: null
779
+ });
780
+ }
781
+ throw new Error(`unexpected URL ${url} (${init?.method})`);
782
+ }
783
+ });
784
+ assert.equal(result.handle.id, 'agent-current', 'newest active row should win');
785
+ assert.equal(result.handle.status, 'cancelled');
786
+ });
787
+ test('findExistingAgent: active row wins over an older active and over inactive rows', async () => {
788
+ // Status tier (active > anything else) outranks createdAt — guards
789
+ // against picking a newer `failed` row over an older `active` one.
790
+ const result = await launch({
791
+ env: {
792
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
793
+ WORKFORCE_DEPLOY_ON_EXISTS: 'cancel'
794
+ },
795
+ fetch(url, init) {
796
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
797
+ return okJson({
798
+ agents: [
799
+ {
800
+ agentId: 'agent-active-old',
801
+ deployedName: 'demo',
802
+ status: 'active',
803
+ createdAt: '2026-05-10T00:00:00.000Z'
804
+ },
805
+ {
806
+ agentId: 'agent-failed-new',
807
+ deployedName: 'demo',
808
+ status: 'failed',
809
+ createdAt: '2026-05-13T00:00:00.000Z'
810
+ }
811
+ ],
812
+ nextCursor: null
813
+ });
814
+ }
815
+ throw new Error(`unexpected URL ${url} (${init?.method})`);
816
+ }
817
+ });
818
+ assert.equal(result.handle.id, 'agent-active-old');
819
+ });
820
+ test('findExistingAgent: malformed array entries (null/empty) are skipped without throwing', async () => {
821
+ const result = await launch({
822
+ env: {
823
+ WORKFORCE_DEPLOY_CLOUD_URL: 'https://cloud.example.test',
824
+ WORKFORCE_DEPLOY_ON_EXISTS: 'cancel'
825
+ },
826
+ fetch(url, init) {
827
+ if (init?.method === 'GET' && url.endsWith('/deployments')) {
828
+ return okJson({
829
+ agents: [
830
+ null,
831
+ undefined,
832
+ {},
833
+ { agentId: '' },
834
+ {
835
+ agentId: 'agent-valid',
836
+ deployedName: 'demo',
837
+ status: 'active',
838
+ createdAt: '2026-05-13T00:00:00.000Z'
839
+ }
840
+ ],
841
+ nextCursor: null
842
+ });
843
+ }
844
+ throw new Error(`unexpected URL ${url} (${init?.method})`);
845
+ }
846
+ });
847
+ assert.equal(result.handle.id, 'agent-valid');
517
848
  });
518
849
  function callsForUrl(calls, suffix) {
519
850
  return calls.filter((call) => call.url.endsWith(suffix)).length;
@@ -1 +1 @@
1
- {"version":3,"file":"cloud.test.js","sourceRoot":"","sources":["../../src/modes/cloud.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cloud.test.js","sourceRoot":"","sources":["../../src/modes/cloud.test.ts"],"names":[],"mappings":"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"}