@relaycast/engine 5.1.1 → 6.0.0

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 (56) hide show
  1. package/dist/adapters/node/realtime.d.ts +28 -1
  2. package/dist/adapters/node/realtime.d.ts.map +1 -1
  3. package/dist/adapters/node/realtime.js +229 -50
  4. package/dist/adapters/node/realtime.js.map +1 -1
  5. package/dist/auth/tokenKind.d.ts +1 -1
  6. package/dist/auth/tokenKind.d.ts.map +1 -1
  7. package/dist/auth/tokenKind.js +4 -1
  8. package/dist/auth/tokenKind.js.map +1 -1
  9. package/dist/db/migrations/0028_node_providers.sql +55 -0
  10. package/dist/db/schema.d.ts +376 -0
  11. package/dist/db/schema.d.ts.map +1 -1
  12. package/dist/db/schema.js +59 -1
  13. package/dist/db/schema.js.map +1 -1
  14. package/dist/engine/action.d.ts +44 -1
  15. package/dist/engine/action.d.ts.map +1 -1
  16. package/dist/engine/action.js +237 -18
  17. package/dist/engine/action.js.map +1 -1
  18. package/dist/engine/delivery.d.ts.map +1 -1
  19. package/dist/engine/delivery.js +2 -1
  20. package/dist/engine/delivery.js.map +1 -1
  21. package/dist/engine/node.d.ts +71 -28
  22. package/dist/engine/node.d.ts.map +1 -1
  23. package/dist/engine/node.js +230 -106
  24. package/dist/engine/node.js.map +1 -1
  25. package/dist/engine/nodeContext.d.ts.map +1 -1
  26. package/dist/engine/nodeContext.js +17 -6
  27. package/dist/engine/nodeContext.js.map +1 -1
  28. package/dist/engine/nodeDeliver.d.ts.map +1 -1
  29. package/dist/engine/nodeDeliver.js +4 -1
  30. package/dist/engine/nodeDeliver.js.map +1 -1
  31. package/dist/engine/nodeProvider.d.ts +62 -0
  32. package/dist/engine/nodeProvider.d.ts.map +1 -0
  33. package/dist/engine/nodeProvider.js +256 -0
  34. package/dist/engine/nodeProvider.js.map +1 -0
  35. package/dist/middleware/auth.d.ts +6 -0
  36. package/dist/middleware/auth.d.ts.map +1 -1
  37. package/dist/middleware/auth.js +6 -0
  38. package/dist/middleware/auth.js.map +1 -1
  39. package/dist/node-control.d.ts +1 -1
  40. package/dist/node-control.d.ts.map +1 -1
  41. package/dist/node-control.js +11 -1
  42. package/dist/node-control.js.map +1 -1
  43. package/dist/ports/auth.d.ts +1 -1
  44. package/dist/ports/auth.d.ts.map +1 -1
  45. package/dist/ports/realtime.d.ts +24 -2
  46. package/dist/ports/realtime.d.ts.map +1 -1
  47. package/dist/routes/deliveryRouting.d.ts.map +1 -1
  48. package/dist/routes/deliveryRouting.js +6 -1
  49. package/dist/routes/deliveryRouting.js.map +1 -1
  50. package/dist/routes/message.d.ts.map +1 -1
  51. package/dist/routes/message.js +44 -14
  52. package/dist/routes/message.js.map +1 -1
  53. package/dist/routes/node.d.ts.map +1 -1
  54. package/dist/routes/node.js +89 -3
  55. package/dist/routes/node.js.map +1 -1
  56. package/package.json +3 -3
@@ -4,6 +4,7 @@ import { generateId } from './snowflake.js';
4
4
  import { codedError } from '../lib/httpError.js';
5
5
  import { toFleetWireJson } from './deliveryWire.js';
6
6
  import { claimSpawnNode, chooseNodeForAction, isNodeLive, releaseNodeCapacity, reserveNodeCapacity } from './placement.js';
7
+ import { DEFAULT_PROVIDER_NAME, capacityProviderName, getProvider, isProviderLive } from './nodeProvider.js';
7
8
  const OPEN_INVOCATION_STATUSES = ['pending', 'dispatched', 'invoked'];
8
9
  export const ACTION_DISPATCH_TIMEOUT_MS = 30_000;
9
10
  const ACTION_RETRY_BACKOFF_MS = 5_000;
@@ -84,11 +85,25 @@ function publicAction(row) {
84
85
  created_at: row.createdAt.toISOString(),
85
86
  };
86
87
  }
88
+ /**
89
+ * Resolve a workspace-scoped invoke (`POST /v1/actions/:name/invoke`). Only
90
+ * agent-hosted actions and node actions that claimed a workspace-global alias
91
+ * are reachable here; plain node-scoped actions are node-addressed. Agent-hosted
92
+ * actions win when both somehow exist for a name.
93
+ */
87
94
  async function fetchAction(db, workspaceId, actionName) {
95
+ const rows = await db
96
+ .select()
97
+ .from(actions)
98
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.name, actionName), eq(actions.isActive, true), or(isNull(actions.handlerNodeId), eq(actions.isGlobal, true))));
99
+ return rows.sort((a, b) => Number(a.handlerNodeId !== null) - Number(b.handlerNodeId !== null))[0] ?? null;
100
+ }
101
+ /** Resolve a node-addressed action by its unique `(node, name)` key. */
102
+ async function fetchNodeAction(db, workspaceId, nodeId, actionName) {
88
103
  const [action] = await db
89
104
  .select()
90
105
  .from(actions)
91
- .where(and(eq(actions.workspaceId, workspaceId), eq(actions.name, actionName), eq(actions.isActive, true)));
106
+ .where(and(eq(actions.workspaceId, workspaceId), eq(actions.handlerNodeId, nodeId), eq(actions.name, actionName), eq(actions.isActive, true)));
92
107
  return action ?? null;
93
108
  }
94
109
  export async function registerAction(db, workspaceId, data) {
@@ -224,6 +239,37 @@ async function createInvocation(db, workspaceId, action, data) {
224
239
  .returning();
225
240
  return invocation;
226
241
  }
242
+ /** Is a node provider currently invokable — connection up AND heartbeat handlers_live. */
243
+ async function isNodeProviderLive(db, registry, workspaceId, nodeId, providerName) {
244
+ if (!registry.isProviderConnected(workspaceId, nodeId, providerName))
245
+ return false;
246
+ const provider = await getProvider(db, workspaceId, nodeId, providerName);
247
+ return !!provider && isProviderLive(provider);
248
+ }
249
+ /**
250
+ * Dispatch an invoke to a specific provider on a node. When the provider is
251
+ * offline the invoke fails fast (the invocation is failed) unless it opted into
252
+ * the per-provider offline queue.
253
+ */
254
+ async function dispatchNodeProviderInvocation(args) {
255
+ const live = await isNodeProviderLive(args.db, args.registry, args.workspaceId, args.nodeId, args.providerName);
256
+ if (!live) {
257
+ if (!args.queue) {
258
+ // Release any capacity reserved for this fail-fast spawn so the node's
259
+ // reserved-agent count doesn't stay inflated.
260
+ if (args.reservationHeld) {
261
+ await releaseNodeCapacity(args.db, args.workspaceId, args.nodeId);
262
+ }
263
+ await args.db
264
+ .update(actionInvocations)
265
+ .set({ status: 'failed', error: 'handler_unavailable', completedAt: new Date(), spawnReservedAt: null })
266
+ .where(and(eq(actionInvocations.workspaceId, args.workspaceId), eq(actionInvocations.id, args.invocationId), inArray(actionInvocations.status, OPEN_INVOCATION_STATUSES)));
267
+ throw codedError(`Provider "${args.providerName}" is offline for action "${args.action}"`, 'handler_unavailable', 503);
268
+ }
269
+ return dispatchNodeInvocation({ ...args, pending: true });
270
+ }
271
+ return dispatchNodeInvocation({ ...args });
272
+ }
227
273
  async function dispatchRelease(args) {
228
274
  if (!args.registry) {
229
275
  throw codedError('Node dispatch is not available', 'node_dispatch_unavailable', 503);
@@ -249,12 +295,14 @@ async function dispatchRelease(args) {
249
295
  caller_name: args.data.caller_name,
250
296
  action_name: 'release',
251
297
  });
298
+ // Release is a capacity operation handled by the provider hosting the agent.
252
299
  const dispatched = await dispatchNodeInvocation({
253
300
  db: args.db,
254
301
  registry: args.registry,
255
302
  workspaceId: args.workspaceId,
256
303
  invocationId: invocation.id,
257
304
  nodeId: agent.locationNodeId,
305
+ providerName: agent.providerName,
258
306
  action: 'release',
259
307
  input,
260
308
  });
@@ -269,10 +317,24 @@ async function dispatchRelease(args) {
269
317
  created_at: invocation.createdAt.toISOString(),
270
318
  };
271
319
  }
320
+ function spawnResult(invocation, nodeId, dispatched) {
321
+ return {
322
+ invocation_id: invocation.id,
323
+ action_name: 'spawn',
324
+ handler_agent_id: null,
325
+ handler_node_id: nodeId,
326
+ dispatched_node_id: dispatched.accepted ? nodeId : null,
327
+ input: recordInput(invocation.input),
328
+ status: dispatched.accepted ? (dispatched.pending ? 'pending' : 'dispatched') : 'pending',
329
+ created_at: invocation.createdAt.toISOString(),
330
+ };
331
+ }
272
332
  async function dispatchSpawn(args) {
273
333
  if (!args.registry) {
274
334
  throw codedError('Node dispatch is not available', 'node_dispatch_unavailable', 503);
275
335
  }
336
+ const input = recordInput(args.data.input);
337
+ const capability = dispatchActionNameForInvocation('spawn', input);
276
338
  const invocation = await createInvocation(args.db, args.workspaceId, null, {
277
339
  input: args.data.input,
278
340
  caller_id: args.data.caller_id,
@@ -280,26 +342,119 @@ async function dispatchSpawn(args) {
280
342
  });
281
343
  const placement = await claimSpawnNode(args.db, args.workspaceId, {
282
344
  actionName: 'spawn',
283
- input: args.data.input,
345
+ input,
284
346
  callerId: args.data.caller_id,
347
+ preferredNodeId: args.targetNodeId,
285
348
  });
349
+ const nodeId = placement.node.id;
350
+ // A registered `spawn:<harness>` action shadows native capacity on this node.
351
+ // Capacity-direct delegation (ctx.spawnAgent) bypasses the shadow so a handler
352
+ // that delegates cannot re-enter itself.
353
+ if (!args.bypassShadow) {
354
+ const shadow = await fetchNodeAction(args.db, args.workspaceId, nodeId, capability);
355
+ if (shadow && shadow.handlerProvider) {
356
+ if (!placement.queued)
357
+ await releaseNodeCapacity(args.db, args.workspaceId, nodeId);
358
+ const dispatched = await dispatchNodeProviderInvocation({
359
+ db: args.db,
360
+ registry: args.registry,
361
+ workspaceId: args.workspaceId,
362
+ invocationId: invocation.id,
363
+ nodeId,
364
+ providerName: shadow.handlerProvider,
365
+ action: capability,
366
+ input,
367
+ queue: shadow.queue,
368
+ });
369
+ return spawnResult(invocation, nodeId, dispatched);
370
+ }
371
+ }
372
+ const capProvider = (await capacityProviderName(args.db, args.workspaceId, nodeId, capability)) ?? DEFAULT_PROVIDER_NAME;
286
373
  const dispatched = await dispatchNodeInvocation({
287
374
  db: args.db,
288
375
  registry: args.registry,
289
376
  workspaceId: args.workspaceId,
290
377
  invocationId: invocation.id,
291
- nodeId: placement.node.id,
292
- action: placement.capability,
293
- input: recordInput(invocation.input),
378
+ nodeId,
379
+ providerName: capProvider,
380
+ action: capability,
381
+ input,
294
382
  pending: placement.queued,
295
383
  reservationHeld: !placement.queued,
296
384
  });
385
+ return spawnResult(invocation, nodeId, dispatched);
386
+ }
387
+ /**
388
+ * Capacity-direct spawn used by handler-context `ctx.spawnAgent`: it targets a
389
+ * node's capacity executor and never re-enters action dispatch, so a
390
+ * `spawn:<harness>` shadow handler that delegates cannot recurse into itself.
391
+ */
392
+ export async function dispatchCapacitySpawn(db, workspaceId, data, options = {}) {
393
+ return dispatchSpawn({
394
+ db,
395
+ registry: options.nodeConnections,
396
+ workspaceId,
397
+ data,
398
+ targetNodeId: data.target_node_id,
399
+ bypassShadow: true,
400
+ });
401
+ }
402
+ /**
403
+ * Invoke a node-addressed action: `POST /v1/nodes/:node/actions/:name/invoke`.
404
+ * Resolves capability -> provider -> socket on the given node. A `spawn:*` name
405
+ * with no shadow action falls through to native capacity on that node.
406
+ */
407
+ export async function invokeNodeAction(db, workspaceId, nodeId, actionName, data, options = {}) {
408
+ if (!options.nodeConnections) {
409
+ throw codedError('Node dispatch is not available', 'node_dispatch_unavailable', 503);
410
+ }
411
+ const action = await fetchNodeAction(db, workspaceId, nodeId, actionName);
412
+ if (!action) {
413
+ if (isSpawnInvocation(actionName)) {
414
+ // Carry the harness from the URL (`spawn:<harness>`) into placement so the
415
+ // native fallback targets the right capacity even when the body omits it.
416
+ const harness = actionName.startsWith('spawn:') ? actionName.slice('spawn:'.length) : undefined;
417
+ const spawnInput = harness ? { ...(data.input ?? {}), capability: harness } : data.input;
418
+ return dispatchSpawn({ db, registry: options.nodeConnections, workspaceId, data: { ...data, input: spawnInput }, targetNodeId: nodeId });
419
+ }
420
+ if (isReleaseInvocation(actionName)) {
421
+ return dispatchRelease({ db, registry: options.nodeConnections, workspaceId, data });
422
+ }
423
+ throw codedError(`Action "${actionName}" not found on node`, 'action_not_found', 404);
424
+ }
425
+ if (action.availableTo && action.availableTo.length > 0) {
426
+ if (!data.caller_name || !action.availableTo.includes(data.caller_name)) {
427
+ const who = data.caller_name ? `Agent "${data.caller_name}"` : 'Caller';
428
+ throw codedError(`${who} is not authorized to invoke action "${actionName}"`, 'action_denied', 403);
429
+ }
430
+ }
431
+ const invocation = await createInvocation(db, workspaceId, action, {
432
+ input: data.input,
433
+ caller_id: data.caller_id,
434
+ caller_name: data.caller_name,
435
+ });
436
+ const providerName = action.handlerProvider ?? DEFAULT_PROVIDER_NAME;
437
+ const reservedNode = isSpawnInvocation(action.name)
438
+ ? await reserveNodeCapacity(db, workspaceId, nodeId)
439
+ : null;
440
+ const dispatched = await dispatchNodeProviderInvocation({
441
+ db,
442
+ registry: options.nodeConnections,
443
+ workspaceId,
444
+ invocationId: invocation.id,
445
+ nodeId,
446
+ providerName,
447
+ action: action.name,
448
+ input: recordInput(invocation.input),
449
+ queue: action.queue,
450
+ reservationHeld: !!reservedNode,
451
+ });
297
452
  return {
298
453
  invocation_id: invocation.id,
299
- action_name: 'spawn',
454
+ action_name: actionName,
300
455
  handler_agent_id: null,
301
- handler_node_id: placement.node.id,
302
- dispatched_node_id: dispatched.accepted ? placement.node.id : null,
456
+ handler_node_id: nodeId,
457
+ dispatched_node_id: dispatched.accepted ? nodeId : null,
303
458
  input: recordInput(invocation.input),
304
459
  status: dispatched.accepted ? (dispatched.pending ? 'pending' : 'dispatched') : 'pending',
305
460
  created_at: invocation.createdAt.toISOString(),
@@ -349,14 +504,21 @@ export async function invokeAction(db, workspaceId, actionName, data, options =
349
504
  const reservedNode = isSpawnInvocation(action.name)
350
505
  ? await reserveNodeCapacity(db, workspaceId, action.handlerNodeId)
351
506
  : null;
352
- const dispatched = await dispatchNodeInvocation({
507
+ const providerName = action.handlerProvider ?? DEFAULT_PROVIDER_NAME;
508
+ // Route through the per-provider liveness gate so an offline provider fails
509
+ // fast unless the capability opted into queue. The synthetic `default`
510
+ // provider keeps the legacy queue-on-offline behavior (broker reconnect
511
+ // resilience), so its aliases queue and drain on reconnect as before.
512
+ const dispatched = await dispatchNodeProviderInvocation({
353
513
  db,
354
514
  registry: options.nodeConnections,
355
515
  workspaceId,
356
516
  invocationId: invocation.id,
357
517
  nodeId: action.handlerNodeId,
518
+ providerName,
358
519
  action: action.name,
359
520
  input: recordInput(invocation.input),
521
+ queue: action.queue || providerName === DEFAULT_PROVIDER_NAME,
360
522
  reservationHeld: !!reservedNode,
361
523
  });
362
524
  return {
@@ -382,6 +544,7 @@ export async function invokeAction(db, workspaceId, actionName, data, options =
382
544
  name: agents.name,
383
545
  locationType: agents.locationType,
384
546
  locationNodeId: agents.locationNodeId,
547
+ providerName: agents.providerName,
385
548
  })
386
549
  .from(agents)
387
550
  .where(and(eq(agents.workspaceId, workspaceId), eq(agents.id, action.handlerAgentId)));
@@ -399,6 +562,7 @@ export async function invokeAction(db, workspaceId, actionName, data, options =
399
562
  workspaceId,
400
563
  invocationId: invocation.id,
401
564
  nodeId: handlerAgent.locationNodeId,
565
+ providerName: handlerAgent.providerName,
402
566
  action: action.name,
403
567
  input: recordInput(invocation.input),
404
568
  agent: { id: handlerAgent.id, name: handlerAgent.name },
@@ -526,15 +690,20 @@ export async function markDrainedInvocationDispatched(db, workspaceId, invocatio
526
690
  return !!updated;
527
691
  }
528
692
  async function dispatchNodeInvocation(args) {
529
- const connectedBefore = args.registry.isNodeConnected(args.workspaceId, args.nodeId);
530
- const sent = await args.registry.sendToNode(args.workspaceId, args.nodeId, {
693
+ const frame = {
531
694
  v: 1,
532
695
  type: 'action.invoke',
533
696
  invocation_id: args.invocationId,
534
697
  action: args.action,
535
698
  ...(args.agent ? { agent_id: args.agent.id, agent_name: args.agent.name } : {}),
536
699
  input: toFleetWireJson(args.input),
537
- });
700
+ };
701
+ const connectedBefore = args.providerName
702
+ ? args.registry.isProviderConnected(args.workspaceId, args.nodeId, args.providerName)
703
+ : args.registry.isNodeConnected(args.workspaceId, args.nodeId);
704
+ const sent = args.providerName
705
+ ? await args.registry.sendToProvider(args.workspaceId, args.nodeId, args.providerName, frame)
706
+ : await args.registry.sendToNode(args.workspaceId, args.nodeId, frame);
538
707
  if (!sent)
539
708
  return { accepted: false, pending: false };
540
709
  const pending = !!args.pending || !connectedBefore;
@@ -576,6 +745,7 @@ async function targetAgentForInvocation(db, invocation) {
576
745
  agentName: agents.name,
577
746
  locationType: agents.locationType,
578
747
  nodeId: agents.locationNodeId,
748
+ providerName: agents.providerName,
579
749
  })
580
750
  .from(actionInvocations)
581
751
  .innerJoin(actions, eq(actionInvocations.actionId, actions.id))
@@ -583,7 +753,7 @@ async function targetAgentForInvocation(db, invocation) {
583
753
  .where(and(eq(actionInvocations.workspaceId, invocation.workspaceId), eq(actionInvocations.id, invocation.id)));
584
754
  if (!row || row.locationType !== 'via_node' || !row.nodeId)
585
755
  return null;
586
- return { agentId: row.agentId, agentName: row.agentName, nodeId: row.nodeId };
756
+ return { agentId: row.agentId, agentName: row.agentName, nodeId: row.nodeId, providerName: row.providerName };
587
757
  }
588
758
  export async function drainNodeInvocations(db, registry, workspaceId, nodeId) {
589
759
  const now = new Date();
@@ -596,10 +766,12 @@ export async function drainNodeInvocations(db, registry, workspaceId, nodeId) {
596
766
  spawnReservedAt: actionInvocations.spawnReservedAt,
597
767
  dispatchedNodeId: actionInvocations.dispatchedNodeId,
598
768
  handlerNodeId: actions.handlerNodeId,
769
+ handlerProvider: actions.handlerProvider,
599
770
  handlerAgentId: agents.id,
600
771
  handlerAgentName: agents.name,
601
772
  handlerAgentLocationType: agents.locationType,
602
773
  handlerAgentNodeId: agents.locationNodeId,
774
+ handlerAgentProvider: agents.providerName,
603
775
  })
604
776
  .from(actionInvocations)
605
777
  .leftJoin(actions, eq(actionInvocations.actionId, actions.id))
@@ -617,11 +789,34 @@ export async function drainNodeInvocations(db, registry, workspaceId, nodeId) {
617
789
  const targetNodeId = targetAgent?.nodeId ?? row.handlerNodeId ?? row.dispatchedNodeId;
618
790
  if (targetNodeId !== nodeId)
619
791
  continue;
792
+ const input = recordInput(row.input);
793
+ // Resolve the target provider so the offline queue drains per provider. A
794
+ // spawn with a registered shadow re-dispatches to the shadow (no capacity
795
+ // reservation); otherwise native capacity handles it.
796
+ let shadowProvider = null;
797
+ if (isSpawnInvocation(row.actionName)) {
798
+ const shadow = await fetchNodeAction(db, workspaceId, nodeId, dispatchActionNameForInvocation(row.actionName, input));
799
+ shadowProvider = shadow?.handlerProvider ?? null;
800
+ }
801
+ const providerName = targetAgent
802
+ ? row.handlerAgentProvider ?? DEFAULT_PROVIDER_NAME
803
+ : row.handlerNodeId
804
+ ? row.handlerProvider ?? DEFAULT_PROVIDER_NAME
805
+ : shadowProvider
806
+ ?? (isSpawnInvocation(row.actionName)
807
+ ? (await capacityProviderName(db, workspaceId, nodeId, dispatchActionNameForInvocation(row.actionName, input))) ?? DEFAULT_PROVIDER_NAME
808
+ : DEFAULT_PROVIDER_NAME);
809
+ const nativeSpawn = isSpawnInvocation(row.actionName) && !shadowProvider;
810
+ // Skip draining to a provider that isn't connected yet (e.g. a named
811
+ // provider reconnecting before it re-registers). Dispatching here would mark
812
+ // the frame delivered and push retryAfterAt out by the dispatch timeout,
813
+ // leaving it idle; leave it pending so the post-register drain re-sends it.
814
+ if (!registry.isProviderConnected(workspaceId, nodeId, providerName))
815
+ continue;
620
816
  let reservedForDrain = false;
621
817
  try {
622
- const input = recordInput(row.input);
623
- let reservationHeld = isSpawnInvocation(row.actionName) && !!row.spawnReservedAt;
624
- if (isSpawnInvocation(row.actionName) && !reservationHeld) {
818
+ let reservationHeld = nativeSpawn && !!row.spawnReservedAt;
819
+ if (nativeSpawn && !reservationHeld) {
625
820
  const reserved = await reserveNodeCapacity(db, workspaceId, nodeId);
626
821
  if (!reserved) {
627
822
  const [node] = await db
@@ -649,6 +844,7 @@ export async function drainNodeInvocations(db, registry, workspaceId, nodeId) {
649
844
  workspaceId,
650
845
  invocationId: row.id,
651
846
  nodeId,
847
+ providerName,
652
848
  action: dispatchActionNameForInvocation(row.actionName, input),
653
849
  input,
654
850
  agent: targetAgent ? { id: targetAgent.id, name: targetAgent.name } : null,
@@ -673,9 +869,27 @@ export async function drainNodeInvocations(db, registry, workspaceId, nodeId) {
673
869
  return drained;
674
870
  }
675
871
  export async function rescheduleNodeInvocation(db, registry, invocation, opts = {}) {
676
- if (invocation.dispatchedNodeId && isSpawnInvocation(invocation.actionName)) {
872
+ // Only release capacity the invocation actually holds. A shadowed spawn
873
+ // dropped its native reservation at dispatch (spawnReservedAt is null), so it
874
+ // must not release capacity that now belongs to another spawn.
875
+ if (invocation.dispatchedNodeId && isSpawnInvocation(invocation.actionName) && invocation.spawnReservedAt) {
677
876
  await releaseNodeCapacity(db, invocation.workspaceId, invocation.dispatchedNodeId);
678
877
  }
878
+ // A shadowed spawn stays pinned to its node: while a `spawn:<harness>` shadow
879
+ // is registered there, native capacity for that harness is unreachable — even
880
+ // across a node loss — so it never falls through to generic placement (which
881
+ // would silently bypass the shadow). It re-drains when the provider returns.
882
+ if (invocation.dispatchedNodeId && isSpawnInvocation(invocation.actionName)) {
883
+ const capability = dispatchActionNameForInvocation(invocation.actionName, recordInput(invocation.input));
884
+ const shadow = await fetchNodeAction(db, invocation.workspaceId, invocation.dispatchedNodeId, capability);
885
+ if (shadow) {
886
+ await db
887
+ .update(actionInvocations)
888
+ .set({ status: 'pending', dispatchedAt: null, spawnReservedAt: null, retryAfterAt: null })
889
+ .where(and(eq(actionInvocations.workspaceId, invocation.workspaceId), eq(actionInvocations.id, invocation.id), inArray(actionInvocations.status, OPEN_INVOCATION_STATUSES)));
890
+ return false;
891
+ }
892
+ }
679
893
  const targetAgent = await targetAgentForInvocation(db, invocation);
680
894
  if (targetAgent) {
681
895
  const dispatched = await dispatchNodeInvocation({
@@ -684,6 +898,7 @@ export async function rescheduleNodeInvocation(db, registry, invocation, opts =
684
898
  workspaceId: invocation.workspaceId,
685
899
  invocationId: invocation.id,
686
900
  nodeId: targetAgent.nodeId,
901
+ providerName: targetAgent.providerName,
687
902
  action: invocation.actionName,
688
903
  input: recordInput(invocation.input),
689
904
  agent: { id: targetAgent.agentId, name: targetAgent.agentName },
@@ -825,6 +1040,7 @@ export async function completeNodeInvocation(db, registry, workspaceId, nodeId,
825
1040
  durationMs: actionInvocations.durationMs,
826
1041
  dispatchedNodeId: actionInvocations.dispatchedNodeId,
827
1042
  dispatchedAt: actionInvocations.dispatchedAt,
1043
+ spawnReservedAt: actionInvocations.spawnReservedAt,
828
1044
  attemptedNodeIds: actionInvocations.attemptedNodeIds,
829
1045
  dispatchAttempts: actionInvocations.dispatchAttempts,
830
1046
  createdAt: actionInvocations.createdAt,
@@ -865,7 +1081,10 @@ export async function completeNodeInvocation(db, registry, workspaceId, nodeId,
865
1081
  })
866
1082
  .where(and(eq(actionInvocations.workspaceId, workspaceId), eq(actionInvocations.id, invocationId), eq(actionInvocations.dispatchedNodeId, nodeId), inArray(actionInvocations.status, OPEN_INVOCATION_STATUSES)))
867
1083
  .returning();
868
- if (updated && isSpawnInvocation(updated.actionName) && updated.dispatchedNodeId) {
1084
+ // Release only capacity this invocation actually reserved. A shadowed spawn
1085
+ // holds no native reservation (spawnReservedAt is null), so releasing here
1086
+ // would decrement capacity owned by another spawn.
1087
+ if (updated && isSpawnInvocation(updated.actionName) && updated.dispatchedNodeId && existing.spawnReservedAt) {
869
1088
  await releaseNodeCapacity(db, workspaceId, updated.dispatchedNodeId);
870
1089
  }
871
1090
  if (updated) {
@@ -1 +1 @@
1
- {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/engine/action.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action.js","sourceRoot":"","sources":["../../src/engine/action.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery.d.ts","sourceRoot":"","sources":["../../src/engine/delivery.ts"],"names":[],"mappings":"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"}