@cadenza.io/service 2.17.13 → 2.17.15
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/dist/browser/index.js +145 -62
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/index.mjs +145 -62
- package/dist/browser/index.mjs.map +1 -1
- package/dist/index.d.mts +3 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +149 -68
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +149 -68
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.mjs
CHANGED
|
@@ -382,16 +382,16 @@ function normalizeServiceTransportConfig(value) {
|
|
|
382
382
|
}
|
|
383
383
|
function normalizeServiceTransportDescriptor(value) {
|
|
384
384
|
const raw = value ?? {};
|
|
385
|
-
const
|
|
385
|
+
const uuid7 = normalizeString(raw.uuid);
|
|
386
386
|
const serviceInstanceId = normalizeString(
|
|
387
387
|
raw.serviceInstanceId ?? raw.service_instance_id
|
|
388
388
|
);
|
|
389
389
|
const config = normalizeServiceTransportConfig(raw);
|
|
390
|
-
if (!
|
|
390
|
+
if (!uuid7 || !serviceInstanceId || !config) {
|
|
391
391
|
return null;
|
|
392
392
|
}
|
|
393
393
|
return {
|
|
394
|
-
uuid:
|
|
394
|
+
uuid: uuid7,
|
|
395
395
|
serviceInstanceId,
|
|
396
396
|
role: config.role,
|
|
397
397
|
origin: config.origin,
|
|
@@ -453,14 +453,14 @@ function normalizeTransportArray(value, serviceInstanceId) {
|
|
|
453
453
|
}
|
|
454
454
|
function normalizeServiceInstanceDescriptor(value) {
|
|
455
455
|
const raw = value ?? {};
|
|
456
|
-
const
|
|
456
|
+
const uuid7 = normalizeString2(raw.uuid);
|
|
457
457
|
const serviceName = normalizeString2(raw.serviceName ?? raw.service_name);
|
|
458
|
-
if (!
|
|
458
|
+
if (!uuid7 || !serviceName) {
|
|
459
459
|
return null;
|
|
460
460
|
}
|
|
461
|
-
const transports = normalizeTransportArray(raw.transports,
|
|
461
|
+
const transports = normalizeTransportArray(raw.transports, uuid7);
|
|
462
462
|
return {
|
|
463
|
-
uuid:
|
|
463
|
+
uuid: uuid7,
|
|
464
464
|
serviceName,
|
|
465
465
|
numberOfRunningGraphs: Math.max(
|
|
466
466
|
0,
|
|
@@ -491,6 +491,22 @@ function getRouteableTransport(instance, role, protocol) {
|
|
|
491
491
|
return selectTransportForRole(instance.transports ?? [], role, protocol);
|
|
492
492
|
}
|
|
493
493
|
|
|
494
|
+
// src/utils/delegation.ts
|
|
495
|
+
import { v4 as uuid2 } from "uuid";
|
|
496
|
+
function ensureDelegationContextMetadata(input) {
|
|
497
|
+
const context = input && typeof input === "object" ? { ...input } : {};
|
|
498
|
+
const metadata = context.__metadata && typeof context.__metadata === "object" ? { ...context.__metadata } : {};
|
|
499
|
+
const deputyExecId = typeof metadata.__deputyExecId === "string" && metadata.__deputyExecId.length > 0 ? metadata.__deputyExecId : typeof context.__deputyExecId === "string" && context.__deputyExecId.length > 0 ? context.__deputyExecId : uuid2();
|
|
500
|
+
return {
|
|
501
|
+
...context,
|
|
502
|
+
__deputyExecId: deputyExecId,
|
|
503
|
+
__metadata: {
|
|
504
|
+
...metadata,
|
|
505
|
+
__deputyExecId: deputyExecId
|
|
506
|
+
}
|
|
507
|
+
};
|
|
508
|
+
}
|
|
509
|
+
|
|
494
510
|
// src/utils/readiness.ts
|
|
495
511
|
function evaluateDependencyReadiness(input) {
|
|
496
512
|
const missedHeartbeats = Math.max(
|
|
@@ -903,15 +919,15 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
903
919
|
if (!serviceInstance) {
|
|
904
920
|
return false;
|
|
905
921
|
}
|
|
906
|
-
const
|
|
922
|
+
const uuid7 = serviceInstance.uuid;
|
|
907
923
|
const serviceName = serviceInstance.serviceName;
|
|
908
924
|
const deleted = Boolean(
|
|
909
925
|
ctx.deleted ?? ctx.serviceInstance?.deleted ?? ctx.data?.deleted
|
|
910
926
|
);
|
|
911
|
-
if (
|
|
927
|
+
if (uuid7 === this.serviceInstanceId) return;
|
|
912
928
|
if (deleted) {
|
|
913
|
-
const existingInstance = this.instances.get(serviceName)?.find((instance) => instance.uuid ===
|
|
914
|
-
const indexToDelete = this.instances.get(serviceName)?.findIndex((i) => i.uuid ===
|
|
929
|
+
const existingInstance = this.instances.get(serviceName)?.find((instance) => instance.uuid === uuid7);
|
|
930
|
+
const indexToDelete = this.instances.get(serviceName)?.findIndex((i) => i.uuid === uuid7) ?? -1;
|
|
915
931
|
if (indexToDelete >= 0 && existingInstance) {
|
|
916
932
|
this.instances.get(serviceName)?.splice(indexToDelete, 1);
|
|
917
933
|
for (const transport of existingInstance.transports) {
|
|
@@ -923,13 +939,13 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
923
939
|
if (this.instances.get(serviceName)?.length === 0) {
|
|
924
940
|
this.instances.delete(serviceName);
|
|
925
941
|
}
|
|
926
|
-
this.unregisterDependee(
|
|
942
|
+
this.unregisterDependee(uuid7, serviceName);
|
|
927
943
|
return;
|
|
928
944
|
}
|
|
929
945
|
if (!this.instances.has(serviceName))
|
|
930
946
|
this.instances.set(serviceName, []);
|
|
931
947
|
const instances = this.instances.get(serviceName);
|
|
932
|
-
const existing = instances.find((i) => i.uuid ===
|
|
948
|
+
const existing = instances.find((i) => i.uuid === uuid7);
|
|
933
949
|
if (existing) {
|
|
934
950
|
Object.assign(existing, {
|
|
935
951
|
...serviceInstance,
|
|
@@ -939,7 +955,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
939
955
|
} else {
|
|
940
956
|
instances.push(serviceInstance);
|
|
941
957
|
}
|
|
942
|
-
const trackedInstance = existing ?? instances.find((instance) => instance.uuid ===
|
|
958
|
+
const trackedInstance = existing ?? instances.find((instance) => instance.uuid === uuid7);
|
|
943
959
|
if (trackedInstance) {
|
|
944
960
|
const snapshot = this.resolveRuntimeStatusSnapshot(
|
|
945
961
|
trackedInstance.numberOfRunningGraphs ?? 0,
|
|
@@ -952,7 +968,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
952
968
|
trackedInstance.reportedAt = trackedInstance.reportedAt ?? (/* @__PURE__ */ new Date()).toISOString();
|
|
953
969
|
}
|
|
954
970
|
if (!serviceInstance.isBootstrapPlaceholder) {
|
|
955
|
-
this.reconcileBootstrapPlaceholderInstance(serviceName,
|
|
971
|
+
this.reconcileBootstrapPlaceholderInstance(serviceName, uuid7, emit);
|
|
956
972
|
}
|
|
957
973
|
if (this.serviceName === serviceName) {
|
|
958
974
|
return false;
|
|
@@ -978,7 +994,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
978
994
|
if (!clientCreated) {
|
|
979
995
|
emit("meta.service_registry.dependee_registered", {
|
|
980
996
|
serviceName,
|
|
981
|
-
serviceInstanceId:
|
|
997
|
+
serviceInstanceId: uuid7,
|
|
982
998
|
serviceTransportId: trackedTransport.uuid,
|
|
983
999
|
serviceOrigin: trackedTransport.origin,
|
|
984
1000
|
transportProtocols: trackedTransport.protocols,
|
|
@@ -992,7 +1008,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
992
1008
|
} else {
|
|
993
1009
|
emit("meta.service_registry.routeable_transport_missing", {
|
|
994
1010
|
serviceName,
|
|
995
|
-
serviceInstanceId:
|
|
1011
|
+
serviceInstanceId: uuid7,
|
|
996
1012
|
requiredRole: this.getRoutingTransportRole(),
|
|
997
1013
|
isFrontend: this.isFrontend
|
|
998
1014
|
});
|
|
@@ -1116,8 +1132,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
1116
1132
|
this.handleGlobalSignalRegistrationTask = CadenzaService.createMetaTask(
|
|
1117
1133
|
"Handle global Signal Registration",
|
|
1118
1134
|
(ctx) => {
|
|
1119
|
-
const
|
|
1120
|
-
const sortedSignalToTaskMap = signalToTaskMaps.sort(
|
|
1135
|
+
const sortedSignalToTaskMap = this.normalizeSignalMaps(ctx).sort(
|
|
1121
1136
|
(a, b) => {
|
|
1122
1137
|
if (a.deleted && !b.deleted) return -1;
|
|
1123
1138
|
if (!a.deleted && b.deleted) return 1;
|
|
@@ -1355,22 +1370,14 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
1355
1370
|
},
|
|
1356
1371
|
ctx.inquiryOptions ?? ctx.__inquiryOptions ?? {}
|
|
1357
1372
|
);
|
|
1358
|
-
const signalToTaskMaps =
|
|
1359
|
-
|
|
1360
|
-
|
|
1361
|
-
|
|
1362
|
-
|
|
1363
|
-
const intentToTaskMaps = (inquiryResult.intentToTaskMaps ?? []).map(
|
|
1364
|
-
(m) => ({
|
|
1365
|
-
intentName: m.intentName,
|
|
1366
|
-
taskName: m.taskName,
|
|
1367
|
-
taskVersion: m.taskVersion ?? 1,
|
|
1368
|
-
serviceName: m.serviceName,
|
|
1369
|
-
deleted: !!m.deleted
|
|
1370
|
-
})
|
|
1373
|
+
const signalToTaskMaps = this.normalizeSignalMaps(
|
|
1374
|
+
inquiryResult
|
|
1375
|
+
).filter((m) => !!m.isGlobal);
|
|
1376
|
+
const intentToTaskMaps = this.normalizeIntentMaps(
|
|
1377
|
+
inquiryResult
|
|
1371
1378
|
);
|
|
1372
|
-
const serviceInstances =
|
|
1373
|
-
|
|
1379
|
+
const serviceInstances = this.normalizeServiceInstancesFromSync(
|
|
1380
|
+
inquiryResult
|
|
1374
1381
|
);
|
|
1375
1382
|
return {
|
|
1376
1383
|
...ctx,
|
|
@@ -1455,6 +1462,9 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
1455
1462
|
this.getBalancedInstance = CadenzaService.createMetaTask(
|
|
1456
1463
|
"Get balanced instance",
|
|
1457
1464
|
(context, emit) => {
|
|
1465
|
+
if (context.__remoteRoutineName !== void 0) {
|
|
1466
|
+
context = ensureDelegationContextMetadata(context);
|
|
1467
|
+
}
|
|
1458
1468
|
const {
|
|
1459
1469
|
__serviceName,
|
|
1460
1470
|
__triedInstances,
|
|
@@ -2193,9 +2203,47 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
2193
2203
|
buildRemoteIntentDeputyKey(map) {
|
|
2194
2204
|
return `${map.intentName}|${map.serviceName}|${map.taskName}|${map.taskVersion ?? 1}`;
|
|
2195
2205
|
}
|
|
2206
|
+
readArrayPayload(ctx, keys) {
|
|
2207
|
+
for (const key of keys) {
|
|
2208
|
+
const value = ctx?.[key];
|
|
2209
|
+
if (Array.isArray(value)) {
|
|
2210
|
+
return value;
|
|
2211
|
+
}
|
|
2212
|
+
}
|
|
2213
|
+
if (Array.isArray(ctx?.rows)) {
|
|
2214
|
+
return ctx.rows;
|
|
2215
|
+
}
|
|
2216
|
+
if (Array.isArray(ctx?.data)) {
|
|
2217
|
+
return ctx.data;
|
|
2218
|
+
}
|
|
2219
|
+
return [];
|
|
2220
|
+
}
|
|
2221
|
+
normalizeSignalMaps(ctx) {
|
|
2222
|
+
return this.readArrayPayload(ctx, [
|
|
2223
|
+
"signalToTaskMaps",
|
|
2224
|
+
"signal_to_task_maps",
|
|
2225
|
+
"signalToTaskMap",
|
|
2226
|
+
"signal_to_task_map"
|
|
2227
|
+
]).map((map) => ({
|
|
2228
|
+
signalName: String(
|
|
2229
|
+
map.signalName ?? map.signal_name ?? ""
|
|
2230
|
+
).trim(),
|
|
2231
|
+
serviceName: String(
|
|
2232
|
+
map.serviceName ?? map.service_name ?? ""
|
|
2233
|
+
).trim(),
|
|
2234
|
+
isGlobal: Boolean(map.isGlobal ?? map.is_global ?? false),
|
|
2235
|
+
deleted: Boolean(map.deleted)
|
|
2236
|
+
})).filter((map) => map.signalName && map.serviceName);
|
|
2237
|
+
}
|
|
2196
2238
|
normalizeIntentMaps(ctx) {
|
|
2197
|
-
|
|
2198
|
-
|
|
2239
|
+
const arrayPayload = this.readArrayPayload(ctx, [
|
|
2240
|
+
"intentToTaskMaps",
|
|
2241
|
+
"intent_to_task_maps",
|
|
2242
|
+
"intentToTaskMap",
|
|
2243
|
+
"intent_to_task_map"
|
|
2244
|
+
]);
|
|
2245
|
+
if (arrayPayload.length > 0) {
|
|
2246
|
+
return arrayPayload.map((m) => ({
|
|
2199
2247
|
intentName: m.intentName ?? m.intent_name,
|
|
2200
2248
|
serviceName: m.serviceName ?? m.service_name,
|
|
2201
2249
|
taskName: m.taskName ?? m.task_name,
|
|
@@ -2203,7 +2251,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
2203
2251
|
deleted: !!m.deleted
|
|
2204
2252
|
})).filter((m) => m.intentName && m.serviceName && m.taskName);
|
|
2205
2253
|
}
|
|
2206
|
-
const single = ctx.intentToTaskMap ?? ctx.data ?? (ctx.intentName ? ctx : void 0);
|
|
2254
|
+
const single = ctx.intentToTaskMap ?? ctx.intent_to_task_map ?? ctx.data ?? (ctx.intentName ? ctx : void 0);
|
|
2207
2255
|
if (!single) return [];
|
|
2208
2256
|
const normalized = {
|
|
2209
2257
|
intentName: single.intentName ?? single.intent_name,
|
|
@@ -2216,6 +2264,40 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
2216
2264
|
return [];
|
|
2217
2265
|
return [normalized];
|
|
2218
2266
|
}
|
|
2267
|
+
normalizeServiceInstancesFromSync(ctx) {
|
|
2268
|
+
const rawTransports = this.readArrayPayload(ctx, [
|
|
2269
|
+
"serviceInstanceTransports",
|
|
2270
|
+
"service_instance_transports",
|
|
2271
|
+
"serviceInstanceTransport",
|
|
2272
|
+
"service_instance_transport"
|
|
2273
|
+
]).map((transport) => normalizeServiceTransportDescriptor(transport)).filter(
|
|
2274
|
+
(transport) => !!transport && !transport.deleted
|
|
2275
|
+
);
|
|
2276
|
+
const transportsByInstance = /* @__PURE__ */ new Map();
|
|
2277
|
+
for (const transport of rawTransports) {
|
|
2278
|
+
if (!transportsByInstance.has(transport.serviceInstanceId)) {
|
|
2279
|
+
transportsByInstance.set(transport.serviceInstanceId, []);
|
|
2280
|
+
}
|
|
2281
|
+
transportsByInstance.get(transport.serviceInstanceId).push(transport);
|
|
2282
|
+
}
|
|
2283
|
+
return this.readArrayPayload(ctx, [
|
|
2284
|
+
"serviceInstances",
|
|
2285
|
+
"service_instances",
|
|
2286
|
+
"serviceInstance",
|
|
2287
|
+
"service_instance"
|
|
2288
|
+
]).map(
|
|
2289
|
+
(instance) => normalizeServiceInstanceDescriptor({
|
|
2290
|
+
...instance,
|
|
2291
|
+
transports: Array.isArray(instance?.transports) && instance.transports.length > 0 ? instance.transports : transportsByInstance.get(
|
|
2292
|
+
String(
|
|
2293
|
+
instance?.uuid ?? instance?.serviceInstanceId ?? instance?.service_instance_id ?? ""
|
|
2294
|
+
).trim()
|
|
2295
|
+
) ?? []
|
|
2296
|
+
})
|
|
2297
|
+
).filter(
|
|
2298
|
+
(instance) => !!instance && !!instance.isActive && !instance.isNonResponsive && !instance.isBlocked
|
|
2299
|
+
);
|
|
2300
|
+
}
|
|
2219
2301
|
registerRemoteIntentDeputy(map) {
|
|
2220
2302
|
if (!this.serviceName || map.serviceName === this.serviceName) {
|
|
2221
2303
|
return;
|
|
@@ -3134,7 +3216,7 @@ var ServiceRegistry = class _ServiceRegistry {
|
|
|
3134
3216
|
|
|
3135
3217
|
// src/graph/definition/SignalTransmissionTask.ts
|
|
3136
3218
|
import { Task as Task2 } from "@cadenza.io/core";
|
|
3137
|
-
import { v4 as
|
|
3219
|
+
import { v4 as uuid3 } from "uuid";
|
|
3138
3220
|
var SignalTransmissionTask = class extends Task2 {
|
|
3139
3221
|
/**
|
|
3140
3222
|
* Constructs a new instance of the class and initializes it with the provided parameters.
|
|
@@ -3163,7 +3245,7 @@ var SignalTransmissionTask = class extends Task2 {
|
|
|
3163
3245
|
*/
|
|
3164
3246
|
constructor(name, signalName, serviceName, description = "", concurrency = 0, timeout = 0, register = true, isUnique = false, isMeta = true, isSubMeta = false, isHidden = false, getTagCallback = void 0, inputSchema = void 0, validateInputContext = false, outputSchema = void 0, validateOutputContext = false, retryCount = 0, retryDelay = 0, retryDelayMax = 0, retryDelayFactor = 1) {
|
|
3165
3247
|
const taskFunction = (context) => {
|
|
3166
|
-
context.__routineExecId =
|
|
3248
|
+
context.__routineExecId = uuid3();
|
|
3167
3249
|
return context;
|
|
3168
3250
|
};
|
|
3169
3251
|
super(
|
|
@@ -3233,7 +3315,7 @@ import http from "http";
|
|
|
3233
3315
|
import fs from "fs";
|
|
3234
3316
|
import https from "https";
|
|
3235
3317
|
import fetch from "node-fetch";
|
|
3236
|
-
import { v4 as
|
|
3318
|
+
import { v4 as uuid4 } from "uuid";
|
|
3237
3319
|
var RestController = class _RestController {
|
|
3238
3320
|
/**
|
|
3239
3321
|
* Constructor for initializing the REST server and related configurations.
|
|
@@ -3409,10 +3491,8 @@ var RestController = class _RestController {
|
|
|
3409
3491
|
}
|
|
3410
3492
|
});
|
|
3411
3493
|
app.post("/delegation", (req, res) => {
|
|
3412
|
-
|
|
3413
|
-
|
|
3414
|
-
ctx2 = req.body;
|
|
3415
|
-
deputyExecId = ctx2.__metadata.__deputyExecId;
|
|
3494
|
+
const ctx2 = ensureDelegationContextMetadata(req.body);
|
|
3495
|
+
const deputyExecId = ctx2.__metadata.__deputyExecId;
|
|
3416
3496
|
const remoteRoutineName = ctx2.__remoteRoutineName;
|
|
3417
3497
|
const targetNotFoundSignal = `meta.rest.delegation_target_not_found:${deputyExecId}`;
|
|
3418
3498
|
let resolved = false;
|
|
@@ -3595,7 +3675,7 @@ var RestController = class _RestController {
|
|
|
3595
3675
|
const internalOrigin = httpOrigin ?? httpsOrigin;
|
|
3596
3676
|
if (internalOrigin) {
|
|
3597
3677
|
transportData.unshift({
|
|
3598
|
-
uuid:
|
|
3678
|
+
uuid: uuid4(),
|
|
3599
3679
|
service_instance_id: ctx.__serviceInstanceId,
|
|
3600
3680
|
role: "internal",
|
|
3601
3681
|
origin: internalOrigin,
|
|
@@ -3761,6 +3841,8 @@ var RestController = class _RestController {
|
|
|
3761
3841
|
if (ctx2.__remoteRoutineName === void 0) {
|
|
3762
3842
|
return;
|
|
3763
3843
|
}
|
|
3844
|
+
const delegateCtx = ensureDelegationContextMetadata(ctx2);
|
|
3845
|
+
const deputyExecId = delegateCtx.__metadata.__deputyExecId;
|
|
3764
3846
|
fetchDiagnostics.delegationRequests++;
|
|
3765
3847
|
fetchDiagnostics.updatedAt = Date.now();
|
|
3766
3848
|
let resultContext;
|
|
@@ -3772,7 +3854,7 @@ var RestController = class _RestController {
|
|
|
3772
3854
|
"Content-Type": "application/json"
|
|
3773
3855
|
},
|
|
3774
3856
|
method: "POST",
|
|
3775
|
-
body: JSON.stringify(
|
|
3857
|
+
body: JSON.stringify(delegateCtx)
|
|
3776
3858
|
},
|
|
3777
3859
|
3e4
|
|
3778
3860
|
);
|
|
@@ -3794,14 +3876,11 @@ var RestController = class _RestController {
|
|
|
3794
3876
|
resultContext = {
|
|
3795
3877
|
__error: `Error: ${e}`,
|
|
3796
3878
|
errored: true,
|
|
3797
|
-
...
|
|
3798
|
-
...
|
|
3879
|
+
...delegateCtx,
|
|
3880
|
+
...delegateCtx.__metadata
|
|
3799
3881
|
};
|
|
3800
3882
|
} finally {
|
|
3801
|
-
emit(
|
|
3802
|
-
`meta.fetch.delegated:${ctx2.__metadata.__deputyExecId}`,
|
|
3803
|
-
resultContext
|
|
3804
|
-
);
|
|
3883
|
+
emit(`meta.fetch.delegated:${deputyExecId}`, resultContext);
|
|
3805
3884
|
}
|
|
3806
3885
|
return resultContext;
|
|
3807
3886
|
},
|
|
@@ -4510,11 +4589,12 @@ var SocketController = class _SocketController {
|
|
|
4510
4589
|
CadenzaService.emit("meta.socket.handshake", ctx);
|
|
4511
4590
|
});
|
|
4512
4591
|
ws.on("delegation", (ctx, callback) => {
|
|
4513
|
-
const
|
|
4592
|
+
const delegationCtx = ensureDelegationContextMetadata(ctx);
|
|
4593
|
+
const deputyExecId = delegationCtx.__metadata.__deputyExecId;
|
|
4514
4594
|
CadenzaService.createEphemeralMetaTask(
|
|
4515
4595
|
"Resolve delegation",
|
|
4516
|
-
(
|
|
4517
|
-
callback(
|
|
4596
|
+
(delegationCtx2) => {
|
|
4597
|
+
callback(delegationCtx2);
|
|
4518
4598
|
},
|
|
4519
4599
|
"Resolves a delegation request using client callback.",
|
|
4520
4600
|
{ register: false }
|
|
@@ -4537,8 +4617,8 @@ var SocketController = class _SocketController {
|
|
|
4537
4617
|
`meta.node.graph_completed:${deputyExecId}`
|
|
4538
4618
|
).emitsOnFail(`meta.socket.progress_failed:${deputyExecId}`);
|
|
4539
4619
|
CadenzaService.emit("meta.socket.delegation_requested", {
|
|
4540
|
-
...
|
|
4541
|
-
__name:
|
|
4620
|
+
...delegationCtx,
|
|
4621
|
+
__name: delegationCtx.__remoteRoutineName
|
|
4542
4622
|
});
|
|
4543
4623
|
});
|
|
4544
4624
|
ws.on("signal", (ctx, callback) => {
|
|
@@ -5158,9 +5238,10 @@ var SocketController = class _SocketController {
|
|
|
5158
5238
|
if (delegateCtx.__remoteRoutineName === void 0) {
|
|
5159
5239
|
return;
|
|
5160
5240
|
}
|
|
5161
|
-
|
|
5162
|
-
delete
|
|
5163
|
-
|
|
5241
|
+
const normalizedDelegateCtx = ensureDelegationContextMetadata(delegateCtx);
|
|
5242
|
+
delete normalizedDelegateCtx.__isSubMeta;
|
|
5243
|
+
delete normalizedDelegateCtx.__broadcast;
|
|
5244
|
+
const deputyExecId = normalizedDelegateCtx.__metadata?.__deputyExecId;
|
|
5164
5245
|
const requestSentAt = Date.now();
|
|
5165
5246
|
if (deputyExecId) {
|
|
5166
5247
|
runtimeHandle.pendingDelegationIds.add(deputyExecId);
|
|
@@ -5169,8 +5250,8 @@ var SocketController = class _SocketController {
|
|
|
5169
5250
|
try {
|
|
5170
5251
|
const resultContext = await runtimeHandle.emitWhenReady?.(
|
|
5171
5252
|
"delegation",
|
|
5172
|
-
|
|
5173
|
-
|
|
5253
|
+
normalizedDelegateCtx,
|
|
5254
|
+
normalizedDelegateCtx.__timeout ?? 6e4
|
|
5174
5255
|
) ?? {
|
|
5175
5256
|
errored: true,
|
|
5176
5257
|
__error: "Socket delegation returned no response"
|
|
@@ -8017,7 +8098,7 @@ function tableFieldTypeToSchemaType(type) {
|
|
|
8017
8098
|
}
|
|
8018
8099
|
|
|
8019
8100
|
// src/Cadenza.ts
|
|
8020
|
-
import { v4 as
|
|
8101
|
+
import { v4 as uuid5 } from "uuid";
|
|
8021
8102
|
|
|
8022
8103
|
// src/graph/controllers/GraphSyncController.ts
|
|
8023
8104
|
var ACTOR_TASK_METADATA = /* @__PURE__ */ Symbol.for("@cadenza.io/core/actor-task-meta");
|
|
@@ -9125,7 +9206,7 @@ var CadenzaService = class {
|
|
|
9125
9206
|
(transport) => !!transport
|
|
9126
9207
|
).map((transport) => ({
|
|
9127
9208
|
...transport,
|
|
9128
|
-
uuid:
|
|
9209
|
+
uuid: uuid5()
|
|
9129
9210
|
}));
|
|
9130
9211
|
}
|
|
9131
9212
|
static createBootstrapTransport(serviceInstanceId, role, endpoint) {
|
|
@@ -9369,7 +9450,7 @@ var CadenzaService = class {
|
|
|
9369
9450
|
}
|
|
9370
9451
|
for (const responder of responders) {
|
|
9371
9452
|
const { task, descriptor } = responder;
|
|
9372
|
-
const inquiryId =
|
|
9453
|
+
const inquiryId = uuid5();
|
|
9373
9454
|
startTimeByTask.set(task, Date.now());
|
|
9374
9455
|
const resolverTask = this.createEphemeralMetaTask(
|
|
9375
9456
|
`Resolve inquiry ${inquiry} for ${descriptor.localTaskName}`,
|
|
@@ -9860,7 +9941,7 @@ var CadenzaService = class {
|
|
|
9860
9941
|
this.bootstrap();
|
|
9861
9942
|
this.validateName(serviceName);
|
|
9862
9943
|
this.validateServiceName(serviceName);
|
|
9863
|
-
const serviceId = options.customServiceId ??
|
|
9944
|
+
const serviceId = options.customServiceId ?? uuid5();
|
|
9864
9945
|
this.serviceRegistry.serviceName = serviceName;
|
|
9865
9946
|
this.serviceRegistry.serviceInstanceId = serviceId;
|
|
9866
9947
|
this.setHydrationResults(options.hydration);
|
|
@@ -10694,7 +10775,7 @@ import {
|
|
|
10694
10775
|
} from "@cadenza.io/core";
|
|
10695
10776
|
|
|
10696
10777
|
// src/ssr/createSSRInquiryBridge.ts
|
|
10697
|
-
import { v4 as
|
|
10778
|
+
import { v4 as uuid6 } from "uuid";
|
|
10698
10779
|
function ensureFetch() {
|
|
10699
10780
|
if (typeof globalThis.fetch !== "function") {
|
|
10700
10781
|
throw new Error("SSR inquiry bridge requires global fetch support.");
|
|
@@ -10783,7 +10864,7 @@ function createSSRInquiryBridge(options = {}) {
|
|
|
10783
10864
|
__remoteRoutineName: remoteRoutineName,
|
|
10784
10865
|
__metadata: {
|
|
10785
10866
|
...context.__metadata ?? {},
|
|
10786
|
-
__deputyExecId:
|
|
10867
|
+
__deputyExecId: uuid6()
|
|
10787
10868
|
}
|
|
10788
10869
|
}),
|
|
10789
10870
|
signal
|