@cadenza.io/service 2.17.44 → 2.17.45

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.
@@ -6204,22 +6204,30 @@ function resolveSyncInsertTask(isCadenzaDBReady, tableName, queryData = {}, opti
6204
6204
  const executionRequestedSignal = `meta.sync_controller.insert_execution_requested:${tableName}`;
6205
6205
  const executionResolvedSignal = `meta.sync_controller.insert_execution_resolved:${tableName}`;
6206
6206
  const executionFailedSignal = `meta.sync_controller.insert_execution_failed:${tableName}`;
6207
+ const pendingResolverContexts = /* @__PURE__ */ new Map();
6207
6208
  const prepareExecutionTask = CadenzaService.createMetaTask(
6208
6209
  `Prepare graph sync insert execution for ${tableName}`,
6209
- (ctx) => ({
6210
- ...ctx,
6211
- __resolverOriginalContext: {
6210
+ (ctx) => {
6211
+ const originalContext = {
6212
6212
  ...ctx
6213
- },
6214
- __resolverQueryData: buildSyncInsertQueryData(
6215
- ctx,
6216
- queryData
6217
- ),
6218
- queryData: buildSyncInsertQueryData(
6213
+ };
6214
+ const originalQueryData = buildSyncInsertQueryData(
6219
6215
  ctx,
6220
6216
  queryData
6221
- )
6222
- }),
6217
+ );
6218
+ if (typeof ctx.__resolverRequestId === "string") {
6219
+ pendingResolverContexts.set(ctx.__resolverRequestId, {
6220
+ originalContext,
6221
+ originalQueryData
6222
+ });
6223
+ }
6224
+ return {
6225
+ ...ctx,
6226
+ __resolverOriginalContext: originalContext,
6227
+ __resolverQueryData: originalQueryData,
6228
+ queryData: originalQueryData
6229
+ };
6230
+ },
6223
6231
  `Prepares ${tableName} graph-sync insert payloads for runner execution.`,
6224
6232
  {
6225
6233
  register: false,
@@ -6232,13 +6240,17 @@ function resolveSyncInsertTask(isCadenzaDBReady, tableName, queryData = {}, opti
6232
6240
  if (!ctx.__resolverRequestId) {
6233
6241
  return false;
6234
6242
  }
6235
- const originalContext = ctx.__resolverOriginalContext && typeof ctx.__resolverOriginalContext === "object" ? ctx.__resolverOriginalContext : {};
6236
- const originalQueryData = ctx.__resolverQueryData && typeof ctx.__resolverQueryData === "object" ? ctx.__resolverQueryData : void 0;
6243
+ const pendingResolverContext = pendingResolverContexts.get(
6244
+ ctx.__resolverRequestId
6245
+ );
6246
+ const originalContext = ctx.__resolverOriginalContext && typeof ctx.__resolverOriginalContext === "object" ? ctx.__resolverOriginalContext : pendingResolverContext?.originalContext ? { ...pendingResolverContext.originalContext } : {};
6247
+ const originalQueryData = ctx.__resolverQueryData && typeof ctx.__resolverQueryData === "object" ? ctx.__resolverQueryData : pendingResolverContext?.originalQueryData;
6237
6248
  const normalizedContext = {
6238
6249
  ...originalContext,
6239
6250
  ...ctx,
6240
6251
  queryData: ctx.queryData && typeof ctx.queryData === "object" ? ctx.queryData : originalQueryData
6241
6252
  };
6253
+ pendingResolverContexts.delete(ctx.__resolverRequestId);
6242
6254
  emit(executionResolvedSignal, normalizedContext);
6243
6255
  return normalizedContext;
6244
6256
  },
@@ -6264,6 +6276,7 @@ function resolveSyncInsertTask(isCadenzaDBReady, tableName, queryData = {}, opti
6264
6276
  ...resultCtx
6265
6277
  };
6266
6278
  delete normalizedResult.__resolverRequestId;
6279
+ pendingResolverContexts.delete(resolverRequestId);
6267
6280
  resolve(normalizedResult);
6268
6281
  return normalizedResult;
6269
6282
  },
@@ -6526,17 +6539,16 @@ var GraphSyncController = class _GraphSyncController {
6526
6539
  ).doOn("meta.sync_controller.routine_registration_settled").emits("meta.sync_controller.synced_routines");
6527
6540
  this.splitTasksInRoutines = CadenzaService.createMetaTask(
6528
6541
  "Split tasks in routines",
6529
- (ctx, emit) => {
6542
+ function* (ctx) {
6530
6543
  const { routines } = ctx;
6531
- if (!routines) return false;
6544
+ if (!routines) return;
6532
6545
  const serviceName2 = resolveSyncServiceName();
6533
6546
  if (!serviceName2) {
6534
- return false;
6547
+ return;
6535
6548
  }
6536
6549
  CadenzaService.debounce("meta.sync_controller.synced_resource", {
6537
6550
  delayMs: 3e3
6538
6551
  });
6539
- let emittedCount = 0;
6540
6552
  for (const routine of routines) {
6541
6553
  if (!routine.registered) continue;
6542
6554
  for (const task of routine.tasks) {
@@ -6550,7 +6562,7 @@ var GraphSyncController = class _GraphSyncController {
6550
6562
  if (!nextTask?.registered) {
6551
6563
  continue;
6552
6564
  }
6553
- emit("meta.sync_controller.routine_task_map_split", {
6565
+ yield {
6554
6566
  __syncing: ctx.__syncing,
6555
6567
  data: {
6556
6568
  taskName: nextTask.name,
@@ -6561,47 +6573,46 @@ var GraphSyncController = class _GraphSyncController {
6561
6573
  },
6562
6574
  __routineName: routine.name,
6563
6575
  __taskName: nextTask.name
6564
- });
6565
- emittedCount += 1;
6576
+ };
6566
6577
  }
6567
6578
  }
6568
6579
  }
6569
- return emittedCount > 0;
6570
6580
  }
6571
6581
  );
6572
- CadenzaService.createMetaTask("Process split routine task map", (ctx) => ctx).doOn("meta.sync_controller.routine_task_map_split").then(
6573
- resolveSyncInsertTask(
6574
- this.isCadenzaDBReady,
6575
- "task_to_routine_map",
6576
- {
6577
- onConflict: {
6578
- target: [
6579
- "task_name",
6580
- "routine_name",
6581
- "task_version",
6582
- "routine_version",
6583
- "service_name"
6584
- ],
6585
- action: {
6586
- do: "nothing"
6587
- }
6588
- }
6589
- },
6590
- { concurrency: 30 }
6591
- )?.then(
6592
- CadenzaService.createMetaTask("Register routine task", (ctx) => {
6593
- if (!didSyncInsertSucceed(ctx)) {
6594
- return;
6582
+ const registerTaskToRoutineMapTask = resolveSyncInsertTask(
6583
+ this.isCadenzaDBReady,
6584
+ "task_to_routine_map",
6585
+ {
6586
+ onConflict: {
6587
+ target: [
6588
+ "task_name",
6589
+ "routine_name",
6590
+ "task_version",
6591
+ "routine_version",
6592
+ "service_name"
6593
+ ],
6594
+ action: {
6595
+ do: "nothing"
6595
6596
  }
6596
- CadenzaService.debounce("meta.sync_controller.synced_resource", {
6597
- delayMs: 2e3
6598
- });
6599
- CadenzaService.getRoutine(ctx.__routineName).registeredTasks.add(
6600
- ctx.__taskName
6601
- );
6602
- })
6603
- )
6597
+ }
6598
+ },
6599
+ { concurrency: 30 }
6600
+ )?.then(
6601
+ CadenzaService.createMetaTask("Register routine task", (ctx) => {
6602
+ if (!didSyncInsertSucceed(ctx)) {
6603
+ return;
6604
+ }
6605
+ CadenzaService.debounce("meta.sync_controller.synced_resource", {
6606
+ delayMs: 2e3
6607
+ });
6608
+ CadenzaService.getRoutine(ctx.__routineName).registeredTasks.add(
6609
+ ctx.__taskName
6610
+ );
6611
+ })
6604
6612
  );
6613
+ if (registerTaskToRoutineMapTask) {
6614
+ this.splitTasksInRoutines.then(registerTaskToRoutineMapTask);
6615
+ }
6605
6616
  this.splitSignalsTask = CadenzaService.createMetaTask(
6606
6617
  "Split signals for registration",
6607
6618
  (ctx, emit) => {
@@ -6669,20 +6680,19 @@ var GraphSyncController = class _GraphSyncController {
6669
6680
  ).doOn("meta.sync_controller.signal_registration_settled").emits("meta.sync_controller.synced_signals");
6670
6681
  this.splitTasksForRegistration = CadenzaService.createMetaTask(
6671
6682
  "Split tasks for registration",
6672
- (ctx, emit) => {
6683
+ function* (ctx) {
6673
6684
  CadenzaService.debounce("meta.sync_controller.synced_resource", {
6674
6685
  delayMs: 3e3
6675
6686
  });
6676
6687
  const tasks = ctx.tasks;
6677
6688
  const serviceName2 = resolveSyncServiceName();
6678
6689
  if (!serviceName2) {
6679
- return false;
6690
+ return;
6680
6691
  }
6681
- let emittedCount = 0;
6682
6692
  for (const task of tasks) {
6683
6693
  if (task.registered) continue;
6684
6694
  const { __functionString, __getTagCallback } = task.export();
6685
- emit("meta.sync_controller.task_registration_split", {
6695
+ yield {
6686
6696
  __syncing: ctx.__syncing,
6687
6697
  data: {
6688
6698
  name: task.name,
@@ -6716,47 +6726,46 @@ var GraphSyncController = class _GraphSyncController {
6716
6726
  }
6717
6727
  },
6718
6728
  __taskName: task.name
6719
- });
6720
- emittedCount += 1;
6729
+ };
6721
6730
  }
6722
- return emittedCount > 0;
6723
6731
  }
6724
6732
  );
6725
- CadenzaService.createMetaTask("Process split task registration", (ctx) => ctx).doOn("meta.sync_controller.task_registration_split").then(
6726
- resolveSyncInsertTask(
6727
- this.isCadenzaDBReady,
6728
- "task",
6729
- {
6730
- onConflict: {
6731
- target: ["name", "service_name", "version"],
6732
- action: {
6733
- do: "nothing"
6734
- }
6735
- }
6736
- },
6737
- { concurrency: 30 }
6738
- )?.then(
6739
- CadenzaService.createMetaTask("Record registration", (ctx, emit) => {
6740
- if (!didSyncInsertSucceed(ctx)) {
6741
- return;
6733
+ const registerTaskTask = resolveSyncInsertTask(
6734
+ this.isCadenzaDBReady,
6735
+ "task",
6736
+ {
6737
+ onConflict: {
6738
+ target: ["name", "service_name", "version"],
6739
+ action: {
6740
+ do: "nothing"
6742
6741
  }
6743
- CadenzaService.debounce("meta.sync_controller.synced_resource", {
6744
- delayMs: 3e3
6745
- });
6746
- CadenzaService.get(ctx.__taskName).registered = true;
6747
- emit("meta.sync_controller.task_registered", {
6748
- ...ctx,
6749
- task: CadenzaService.get(ctx.__taskName)
6750
- });
6751
- CadenzaService.debounce(
6752
- "meta.sync_controller.task_registration_settled",
6753
- { __syncing: true },
6754
- 300
6755
- );
6756
- return true;
6757
- })
6758
- )
6742
+ }
6743
+ },
6744
+ { concurrency: 30 }
6745
+ )?.then(
6746
+ CadenzaService.createMetaTask("Record registration", (ctx, emit) => {
6747
+ if (!didSyncInsertSucceed(ctx)) {
6748
+ return;
6749
+ }
6750
+ CadenzaService.debounce("meta.sync_controller.synced_resource", {
6751
+ delayMs: 3e3
6752
+ });
6753
+ CadenzaService.get(ctx.__taskName).registered = true;
6754
+ emit("meta.sync_controller.task_registered", {
6755
+ ...ctx,
6756
+ task: CadenzaService.get(ctx.__taskName)
6757
+ });
6758
+ CadenzaService.debounce(
6759
+ "meta.sync_controller.task_registration_settled",
6760
+ { __syncing: true },
6761
+ 300
6762
+ );
6763
+ return true;
6764
+ })
6759
6765
  );
6766
+ if (registerTaskTask) {
6767
+ this.splitTasksForRegistration.then(registerTaskTask);
6768
+ }
6760
6769
  CadenzaService.createUniqueMetaTask(
6761
6770
  "Gather task registration",
6762
6771
  () => {