@t4h.framework/dev 0.0.0-experimental-20261006133319 → 0.0.0-experimental-20261007204009

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 (109) hide show
  1. package/CHANGELOG.md +4 -41
  2. package/README.md +12 -67
  3. package/dist/AppProcess.d.ts +2 -14
  4. package/dist/AppProcess.js +4 -22
  5. package/dist/AppProcess.js.map +1 -1
  6. package/dist/Server.d.ts +0 -4
  7. package/dist/Server.js +0 -10
  8. package/dist/Server.js.map +1 -1
  9. package/dist/constants/server.d.ts +1 -9
  10. package/dist/constants/server.js +1 -9
  11. package/dist/constants/server.js.map +1 -1
  12. package/dist/index.d.ts +0 -6
  13. package/dist/index.js +0 -5
  14. package/dist/index.js.map +1 -1
  15. package/dist/models/FrameworkConfig.d.ts +0 -11
  16. package/dist/models/FrameworkConfig.js +0 -1
  17. package/dist/models/FrameworkConfig.js.map +1 -1
  18. package/dist/models/claims/DevCacheClaim.d.ts +1 -2
  19. package/dist/models/claims/DevCacheClaim.js +6 -17
  20. package/dist/models/claims/DevCacheClaim.js.map +1 -1
  21. package/dist/models/claims/DevORMClaim.js +1 -6
  22. package/dist/models/claims/DevORMClaim.js.map +1 -1
  23. package/dist/services/CallbackToken.service.d.ts +1 -4
  24. package/dist/services/CallbackToken.service.js +3 -10
  25. package/dist/services/CallbackToken.service.js.map +1 -1
  26. package/dist/services/Database.service.d.ts +0 -8
  27. package/dist/services/Database.service.js +3 -18
  28. package/dist/services/Database.service.js.map +1 -1
  29. package/dist/services/WorkflowRunAsyncActivityFacade.service.d.ts +0 -2
  30. package/dist/services/WorkflowRunAsyncActivityFacade.service.js +0 -6
  31. package/dist/services/WorkflowRunAsyncActivityFacade.service.js.map +1 -1
  32. package/dist/services/WorkflowRunEvents.service.d.ts +0 -9
  33. package/dist/services/WorkflowRunEvents.service.js +2 -13
  34. package/dist/services/WorkflowRunEvents.service.js.map +1 -1
  35. package/dist/services/WorkflowRunFacade.service.d.ts +0 -1
  36. package/dist/services/WorkflowRunFacade.service.js +0 -3
  37. package/dist/services/WorkflowRunFacade.service.js.map +1 -1
  38. package/dist/transport/AppProcessJsonRpc.js +4 -17
  39. package/dist/transport/AppProcessJsonRpc.js.map +1 -1
  40. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.d.ts +5 -3
  41. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.js +10 -6
  42. package/dist/use-cases/CreateWorkflowRunAsyncActivity.usecase.js.map +1 -1
  43. package/dist/use-cases/EnqueueWorkflowRunNextTick.usecase.d.ts +9 -3
  44. package/dist/use-cases/EnqueueWorkflowRunNextTick.usecase.js +39 -7
  45. package/dist/use-cases/EnqueueWorkflowRunNextTick.usecase.js.map +1 -1
  46. package/dist/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.d.ts +5 -5
  47. package/dist/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js +15 -29
  48. package/dist/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.js.map +1 -1
  49. package/dist/use-cases/NextTickWorkflowRun.usecase.d.ts +1 -6
  50. package/dist/use-cases/NextTickWorkflowRun.usecase.js +3 -54
  51. package/dist/use-cases/NextTickWorkflowRun.usecase.js.map +1 -1
  52. package/dist/use-cases/ReceiveWorkflowEvent.usecase.d.ts +2 -10
  53. package/dist/use-cases/ReceiveWorkflowEvent.usecase.js +5 -35
  54. package/dist/use-cases/ReceiveWorkflowEvent.usecase.js.map +1 -1
  55. package/dist/workers/app-process.d.ts +0 -8
  56. package/dist/workers/app-process.js +14 -114
  57. package/dist/workers/app-process.js.map +1 -1
  58. package/package.json +2 -2
  59. package/dist/HeadlessApp.d.ts +0 -65
  60. package/dist/HeadlessApp.js +0 -163
  61. package/dist/HeadlessApp.js.map +0 -1
  62. package/dist/models/LocalWorkflowRunJobExecutor.d.ts +0 -10
  63. package/dist/models/LocalWorkflowRunJobExecutor.js +0 -23
  64. package/dist/models/LocalWorkflowRunJobExecutor.js.map +0 -1
  65. package/dist/models/RuntimeControlServer.d.ts +0 -32
  66. package/dist/models/RuntimeControlServer.js +0 -75
  67. package/dist/models/RuntimeControlServer.js.map +0 -1
  68. package/dist/models/RuntimeDebugLog.d.ts +0 -10
  69. package/dist/models/RuntimeDebugLog.js +0 -32
  70. package/dist/models/RuntimeDebugLog.js.map +0 -1
  71. package/dist/models/RuntimeEvent.d.ts +0 -95
  72. package/dist/models/RuntimeEvent.js +0 -2
  73. package/dist/models/RuntimeEvent.js.map +0 -1
  74. package/dist/models/WorkflowRunJob.d.ts +0 -95
  75. package/dist/models/WorkflowRunJob.js +0 -2
  76. package/dist/models/WorkflowRunJob.js.map +0 -1
  77. package/dist/models/WorkflowWorkerPool.d.ts +0 -39
  78. package/dist/models/WorkflowWorkerPool.js +0 -154
  79. package/dist/models/WorkflowWorkerPool.js.map +0 -1
  80. package/dist/services/RuntimeEvents.service.d.ts +0 -16
  81. package/dist/services/RuntimeEvents.service.js +0 -35
  82. package/dist/services/RuntimeEvents.service.js.map +0 -1
  83. package/dist/services/WorkflowRunScheduler.service.d.ts +0 -62
  84. package/dist/services/WorkflowRunScheduler.service.js +0 -278
  85. package/dist/services/WorkflowRunScheduler.service.js.map +0 -1
  86. package/dist/tools/format-runtime-event.d.ts +0 -3
  87. package/dist/tools/format-runtime-event.js +0 -51
  88. package/dist/tools/format-runtime-event.js.map +0 -1
  89. package/dist/tools/run-workflow-run-job.d.ts +0 -3
  90. package/dist/tools/run-workflow-run-job.js +0 -25
  91. package/dist/tools/run-workflow-run-job.js.map +0 -1
  92. package/dist/tools/runtime-control-client.d.ts +0 -15
  93. package/dist/tools/runtime-control-client.js +0 -54
  94. package/dist/tools/runtime-control-client.js.map +0 -1
  95. package/dist/tools/runtime-registry.d.ts +0 -26
  96. package/dist/tools/runtime-registry.js +0 -57
  97. package/dist/tools/runtime-registry.js.map +0 -1
  98. package/dist/tools/start-runtime-monitor.d.ts +0 -12
  99. package/dist/tools/start-runtime-monitor.js +0 -69
  100. package/dist/tools/start-runtime-monitor.js.map +0 -1
  101. package/dist/tools/to-runtime-config.d.ts +0 -3
  102. package/dist/tools/to-runtime-config.js +0 -13
  103. package/dist/tools/to-runtime-config.js.map +0 -1
  104. package/dist/use-cases/RejectAbandonedWorkflowRuns.usecase.d.ts +0 -14
  105. package/dist/use-cases/RejectAbandonedWorkflowRuns.usecase.js +0 -55
  106. package/dist/use-cases/RejectAbandonedWorkflowRuns.usecase.js.map +0 -1
  107. package/dist/workers/workflow-worker.d.ts +0 -1
  108. package/dist/workers/workflow-worker.js +0 -58
  109. package/dist/workers/workflow-worker.js.map +0 -1
@@ -16,31 +16,31 @@ import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivi
16
16
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
17
17
  import { ActivityRegistryService } from '../services/ActivityRegistry.service.js';
18
18
  import { RuntimeContextService } from '../services/RuntimeContext.service.js';
19
- import { RuntimeEventsService } from '../services/RuntimeEvents.service.js';
19
+ import { TimeoutSchedulerService } from '../services/TimeoutScheduler.service.js';
20
20
  import { WorkflowRunEventsService } from '../services/WorkflowRunEvents.service.js';
21
+ import { WorkflowRunFacade } from '../services/WorkflowRunFacade.service.js';
21
22
  import { WorkflowRunLockService } from '../services/WorkflowRunLock.service.js';
22
- import { WorkflowRunSchedulerService } from '../services/WorkflowRunScheduler.service.js';
23
23
  import { env } from '../workers/app-process.js';
24
24
  let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
25
25
  workflowRunRepository;
26
26
  workflowRunActivityRepository;
27
27
  workflowRunAsyncActivityPendingRepository;
28
28
  activityRegistry;
29
- scheduler;
29
+ timeoutScheduler;
30
+ workflowRun;
30
31
  lock;
31
32
  context;
32
33
  events;
33
- runtimeEvents;
34
- constructor(workflowRunRepository, workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, activityRegistry, scheduler, lock, context, events, runtimeEvents) {
34
+ constructor(workflowRunRepository, workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, activityRegistry, timeoutScheduler, workflowRun, lock, context, events) {
35
35
  this.workflowRunRepository = workflowRunRepository;
36
36
  this.workflowRunActivityRepository = workflowRunActivityRepository;
37
37
  this.workflowRunAsyncActivityPendingRepository = workflowRunAsyncActivityPendingRepository;
38
38
  this.activityRegistry = activityRegistry;
39
- this.scheduler = scheduler;
39
+ this.timeoutScheduler = timeoutScheduler;
40
+ this.workflowRun = workflowRun;
40
41
  this.lock = lock;
41
42
  this.context = context;
42
43
  this.events = events;
43
- this.runtimeEvents = runtimeEvents;
44
44
  }
45
45
  async execute(pendingId, { context } = {}) {
46
46
  const pending = await this.workflowRunAsyncActivityPendingRepository.findById(pendingId);
@@ -70,7 +70,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
70
70
  : new AsyncActivityResultRejected({ reason: 'timeout' });
71
71
  return instance.advance(current.payload, (root ?? current).toResultPending(), context);
72
72
  })));
73
- this.scheduler.cancelTimeout(current.id);
73
+ this.timeoutScheduler.cancel(current.id);
74
74
  if (result instanceof AsyncActivityResultPending) {
75
75
  this.workflowRunAsyncActivityPendingRepository.updateStatus(current.id, 'fulfilled');
76
76
  const next = new WorkflowRunAsyncActivityPending(activity.id, current.position + 1, {
@@ -85,14 +85,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
85
85
  await this.workflowRunAsyncActivityPendingRepository.create(next);
86
86
  this.events.runUpdated(run.id);
87
87
  if (next.timeoutAt)
88
- this.scheduler.scheduleTimeout(run.id, next.id, next.timeoutAt);
89
- this.runtimeEvents.publish({
90
- type: 'activity:waiting',
91
- runId: run.id,
92
- activityId: activity.id,
93
- activityType: activity.type,
94
- timeoutAt: next.timeoutAt?.toISOString() ?? null,
95
- });
88
+ this.timeoutScheduler.schedule(next.id, next.timeoutAt, () => this.execute(next.id));
96
89
  return;
97
90
  }
98
91
  const isFulfilled = result instanceof AsyncActivityResultFulfilled;
@@ -107,14 +100,7 @@ let ExecuteWorkflowRunAsyncActivity = class ExecuteWorkflowRunAsyncActivity {
107
100
  if (isRejected)
108
101
  await this.workflowRunActivityRepository.fail(activity.id, result.payload);
109
102
  this.events.runUpdated(run.id);
110
- this.runtimeEvents.publish({
111
- type: 'activity:settled',
112
- runId: run.id,
113
- activityId: activity.id,
114
- activityType: activity.type,
115
- status: isFulfilled ? 'fulfilled' : 'rejected',
116
- });
117
- this.scheduler.enqueue({ kind: 'run.tick', runId: run.id });
103
+ await this.workflowRun.nextTick(run.id);
118
104
  });
119
105
  }
120
106
  };
@@ -124,11 +110,11 @@ ExecuteWorkflowRunAsyncActivity = __decorate([
124
110
  __param(1, Inject(() => WorkflowRunActivityRepository)),
125
111
  __param(2, Inject(() => WorkflowRunAsyncActivityPendingRepository)),
126
112
  __param(3, Inject(() => ActivityRegistryService)),
127
- __param(4, Inject(() => WorkflowRunSchedulerService)),
128
- __param(5, Inject(() => WorkflowRunLockService)),
129
- __param(6, Inject(() => RuntimeContextService)),
130
- __param(7, Inject(() => WorkflowRunEventsService)),
131
- __param(8, Inject(() => RuntimeEventsService))
113
+ __param(4, Inject(() => TimeoutSchedulerService)),
114
+ __param(5, Inject(() => WorkflowRunFacade)),
115
+ __param(6, Inject(() => WorkflowRunLockService)),
116
+ __param(7, Inject(() => RuntimeContextService)),
117
+ __param(8, Inject(() => WorkflowRunEventsService))
132
118
  ], ExecuteWorkflowRunAsyncActivity);
133
119
  export { ExecuteWorkflowRunAsyncActivity };
134
120
  //# sourceMappingURL=ExecuteWorkflowRunAsyncActivity.usecase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExecuteWorkflowRunAsyncActivity.usecase.js","sourceRoot":"","sources":["../../src/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExecuteWorkflowRunAsyncActivity.usecase.js","sourceRoot":"","sources":["../../src/use-cases/ExecuteWorkflowRunAsyncActivity.usecase.ts"],"names":[],"mappings":"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"}
@@ -4,12 +4,10 @@ import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivi
4
4
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
5
5
  import { ActivityRegistryService } from '../services/ActivityRegistry.service.js';
6
6
  import { RuntimeContextService } from '../services/RuntimeContext.service.js';
7
- import { RuntimeEventsService } from '../services/RuntimeEvents.service.js';
8
7
  import { WorkflowRunAsyncActivityFacade } from '../services/WorkflowRunAsyncActivityFacade.service.js';
9
8
  import { WorkflowRunEventsService } from '../services/WorkflowRunEvents.service.js';
10
9
  import { WorkflowRunFacade } from '../services/WorkflowRunFacade.service.js';
11
10
  import { WorkflowRunLockService } from '../services/WorkflowRunLock.service.js';
12
- import { WorkflowRunSchedulerService } from '../services/WorkflowRunScheduler.service.js';
13
11
  import { WorkflowRunSyncActivityFacade } from '../services/WorkflowRunSyncActivityFacade.service.js';
14
12
  export declare class NextTickWorkflowRun {
15
13
  private readonly workflowRunRepository;
@@ -23,12 +21,9 @@ export declare class NextTickWorkflowRun {
23
21
  private readonly lock;
24
22
  private readonly context;
25
23
  private readonly events;
26
- private readonly scheduler;
27
- private readonly runtimeEvents;
28
- constructor(workflowRunRepository: WorkflowRunRepository, workflowRunActivityRepository: WorkflowRunActivityRepository, workflowRunAsyncActivityPendingRepository: WorkflowRunAsyncActivityPendingRepository, workflowRun: WorkflowRunFacade, workflowRunSyncActivity: WorkflowRunSyncActivityFacade, workflowRunAsyncActivity: WorkflowRunAsyncActivityFacade, enqueueNextTick: EnqueueWorkflowRunNextTick, activityRegistry: ActivityRegistryService, lock: WorkflowRunLockService, context: RuntimeContextService, events: WorkflowRunEventsService, scheduler: WorkflowRunSchedulerService, runtimeEvents: RuntimeEventsService);
24
+ constructor(workflowRunRepository: WorkflowRunRepository, workflowRunActivityRepository: WorkflowRunActivityRepository, workflowRunAsyncActivityPendingRepository: WorkflowRunAsyncActivityPendingRepository, workflowRun: WorkflowRunFacade, workflowRunSyncActivity: WorkflowRunSyncActivityFacade, workflowRunAsyncActivity: WorkflowRunAsyncActivityFacade, enqueueNextTick: EnqueueWorkflowRunNextTick, activityRegistry: ActivityRegistryService, lock: WorkflowRunLockService, context: RuntimeContextService, events: WorkflowRunEventsService);
29
25
  nextTick(runId: string): Promise<void>;
30
26
  onWorkflowRunFinished(childRunId: string): Promise<void>;
31
- settleParent(childRunId: string): Promise<void>;
32
27
  private tick;
33
28
  private pushActivity;
34
29
  private enqueueChildWorkflowRuns;
@@ -19,12 +19,10 @@ import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivi
19
19
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
20
20
  import { ActivityRegistryService } from '../services/ActivityRegistry.service.js';
21
21
  import { RuntimeContextService } from '../services/RuntimeContext.service.js';
22
- import { RuntimeEventsService } from '../services/RuntimeEvents.service.js';
23
22
  import { WorkflowRunAsyncActivityFacade } from '../services/WorkflowRunAsyncActivityFacade.service.js';
24
23
  import { WorkflowRunEventsService } from '../services/WorkflowRunEvents.service.js';
25
24
  import { WorkflowRunFacade } from '../services/WorkflowRunFacade.service.js';
26
25
  import { WorkflowRunLockService } from '../services/WorkflowRunLock.service.js';
27
- import { WorkflowRunSchedulerService } from '../services/WorkflowRunScheduler.service.js';
28
26
  import { WorkflowRunSyncActivityFacade } from '../services/WorkflowRunSyncActivityFacade.service.js';
29
27
  import { findWorkflowById } from '../tools/find-workflow-by-id.js';
30
28
  import { hydrateInput } from '../tools/hydrate-input.js';
@@ -42,9 +40,7 @@ let NextTickWorkflowRun = class NextTickWorkflowRun {
42
40
  lock;
43
41
  context;
44
42
  events;
45
- scheduler;
46
- runtimeEvents;
47
- constructor(workflowRunRepository, workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, workflowRun, workflowRunSyncActivity, workflowRunAsyncActivity, enqueueNextTick, activityRegistry, lock, context, events, scheduler, runtimeEvents) {
43
+ constructor(workflowRunRepository, workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, workflowRun, workflowRunSyncActivity, workflowRunAsyncActivity, enqueueNextTick, activityRegistry, lock, context, events) {
48
44
  this.workflowRunRepository = workflowRunRepository;
49
45
  this.workflowRunActivityRepository = workflowRunActivityRepository;
50
46
  this.workflowRunAsyncActivityPendingRepository = workflowRunAsyncActivityPendingRepository;
@@ -56,8 +52,6 @@ let NextTickWorkflowRun = class NextTickWorkflowRun {
56
52
  this.lock = lock;
57
53
  this.context = context;
58
54
  this.events = events;
59
- this.scheduler = scheduler;
60
- this.runtimeEvents = runtimeEvents;
61
55
  }
62
56
  async nextTick(runId) {
63
57
  const claims = await getClaims();
@@ -67,16 +61,6 @@ let NextTickWorkflowRun = class NextTickWorkflowRun {
67
61
  }));
68
62
  }
69
63
  async onWorkflowRunFinished(childRunId) {
70
- const child = await this.workflowRunRepository.findById(childRunId);
71
- if (!child?.parentWorkflowRunId)
72
- return;
73
- this.scheduler.enqueue({
74
- kind: 'run.settle-parent',
75
- runId: child.parentWorkflowRunId,
76
- childRunId,
77
- });
78
- }
79
- async settleParent(childRunId) {
80
64
  const child = await this.workflowRunRepository.findById(childRunId);
81
65
  if (!child?.parentWorkflowRunId || !child.parentWorkflowRunActivityId)
82
66
  return;
@@ -158,54 +142,21 @@ let NextTickWorkflowRun = class NextTickWorkflowRun {
158
142
  if (!stored)
159
143
  throw new Error(`Activity ${activity.id} was not stored`);
160
144
  this.events.runUpdated(run.id);
161
- const published = {
162
- runId: run.id,
163
- activityId: activity.id,
164
- activityType: activity.type,
165
- };
166
- this.runtimeEvents.publish({
167
- type: 'activity:started',
168
- ...published,
169
- kind: activity.kind,
170
- });
171
145
  try {
172
146
  if (push.activity instanceof SyncActivity) {
173
147
  await this.workflowRunSyncActivity.execute(stored, stored.input);
174
- this.runtimeEvents.publish({
175
- type: 'activity:settled',
176
- ...published,
177
- status: 'fulfilled',
178
- });
179
148
  this.enqueueChildWorkflowRuns(activity.id);
180
149
  return 'continue';
181
150
  }
182
151
  if (push.activity instanceof AsyncActivity) {
183
152
  const pending = await this.workflowRunAsyncActivity.create(stored, stored.input);
184
- this.runtimeEvents.publish(pending.status === 'pending'
185
- ? {
186
- type: 'activity:waiting',
187
- ...published,
188
- timeoutAt: pending.timeoutAt?.toISOString() ?? null,
189
- }
190
- : {
191
- type: 'activity:settled',
192
- ...published,
193
- status: pending.status,
194
- });
195
153
  this.enqueueChildWorkflowRuns(activity.id);
196
154
  return pending.status === 'pending' ? 'stop' : 'continue';
197
155
  }
198
156
  throw new Error(`Unsupported activity: ${Activity.name}`);
199
157
  }
200
158
  catch (error) {
201
- const reason = toRejectedReason(error);
202
- this.runtimeEvents.publish({
203
- type: 'activity:settled',
204
- ...published,
205
- status: 'rejected',
206
- error: reason.message,
207
- });
208
- await this.reject(run, reason, activity.id);
159
+ await this.reject(run, toRejectedReason(error), activity.id);
209
160
  return 'stop';
210
161
  }
211
162
  }
@@ -235,9 +186,7 @@ NextTickWorkflowRun = __decorate([
235
186
  __param(7, Inject(() => ActivityRegistryService)),
236
187
  __param(8, Inject(() => WorkflowRunLockService)),
237
188
  __param(9, Inject(() => RuntimeContextService)),
238
- __param(10, Inject(() => WorkflowRunEventsService)),
239
- __param(11, Inject(() => WorkflowRunSchedulerService)),
240
- __param(12, Inject(() => RuntimeEventsService))
189
+ __param(10, Inject(() => WorkflowRunEventsService))
241
190
  ], NextTickWorkflowRun);
242
191
  export { NextTickWorkflowRun };
243
192
  //# sourceMappingURL=NextTickWorkflowRun.usecase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"NextTickWorkflowRun.usecase.js","sourceRoot":"","sources":["../../src/use-cases/NextTickWorkflowRun.usecase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NextTickWorkflowRun.usecase.js","sourceRoot":"","sources":["../../src/use-cases/NextTickWorkflowRun.usecase.ts"],"names":[],"mappings":"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"}
@@ -3,24 +3,16 @@ import { CreateWorkflowRunAsyncActivityPendingCallback } from './CreateWorkflowR
3
3
  import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
4
4
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
5
5
  import { ActivityRegistryService } from '../services/ActivityRegistry.service.js';
6
- import { WorkflowRunSchedulerService } from '../services/WorkflowRunScheduler.service.js';
7
6
  export interface ReceiveWorkflowEventOutput {
8
7
  id: string;
9
8
  activity: string;
10
9
  }
11
- export interface Candidate {
12
- type: string;
13
- correlationKey: string;
14
- }
15
10
  export declare class ReceiveWorkflowEvent {
16
11
  private readonly activityRegistry;
17
12
  private readonly workflowRunActivityRepository;
18
13
  private readonly workflowRunAsyncActivityPendingRepository;
19
14
  private readonly createWorkflowRunAsyncActivityPendingCallback;
20
- private readonly scheduler;
21
- constructor(activityRegistry: ActivityRegistryService, workflowRunActivityRepository: WorkflowRunActivityRepository, workflowRunAsyncActivityPendingRepository: WorkflowRunAsyncActivityPendingRepository, createWorkflowRunAsyncActivityPendingCallback: CreateWorkflowRunAsyncActivityPendingCallback, scheduler: WorkflowRunSchedulerService);
15
+ constructor(activityRegistry: ActivityRegistryService, workflowRunActivityRepository: WorkflowRunActivityRepository, workflowRunAsyncActivityPendingRepository: WorkflowRunAsyncActivityPendingRepository, createWorkflowRunAsyncActivityPendingCallback: CreateWorkflowRunAsyncActivityPendingCallback);
22
16
  receive(workflowId: string, delivery: AsyncActivityCallback.Delivery): Promise<ReceiveWorkflowEventOutput | null>;
23
- deliver(activityId: string, pendingId: string, delivery: AsyncActivityCallback.Delivery): Promise<void>;
24
- correlate(event: AsyncActivityCallback.Event): Promise<Candidate[]>;
25
- private unique;
17
+ private toCandidates;
26
18
  }
@@ -14,27 +14,19 @@ import { JSONRPCError } from '../models/JSONRPCError.js';
14
14
  import { WorkflowRunActivityRepository } from '../repositories/WorkflowRunActivity.repository.js';
15
15
  import { WorkflowRunAsyncActivityPendingRepository } from '../repositories/WorkflowRunAsyncActivityPending.repository.js';
16
16
  import { ActivityRegistryService } from '../services/ActivityRegistry.service.js';
17
- import { WorkflowRunSchedulerService } from '../services/WorkflowRunScheduler.service.js';
18
17
  let ReceiveWorkflowEvent = class ReceiveWorkflowEvent {
19
18
  activityRegistry;
20
19
  workflowRunActivityRepository;
21
20
  workflowRunAsyncActivityPendingRepository;
22
21
  createWorkflowRunAsyncActivityPendingCallback;
23
- scheduler;
24
- constructor(activityRegistry, workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, createWorkflowRunAsyncActivityPendingCallback, scheduler) {
22
+ constructor(activityRegistry, workflowRunActivityRepository, workflowRunAsyncActivityPendingRepository, createWorkflowRunAsyncActivityPendingCallback) {
25
23
  this.activityRegistry = activityRegistry;
26
24
  this.workflowRunActivityRepository = workflowRunActivityRepository;
27
25
  this.workflowRunAsyncActivityPendingRepository = workflowRunAsyncActivityPendingRepository;
28
26
  this.createWorkflowRunAsyncActivityPendingCallback = createWorkflowRunAsyncActivityPendingCallback;
29
- this.scheduler = scheduler;
30
27
  }
31
28
  async receive(workflowId, delivery) {
32
- const event = AsyncActivityCallback.toEvent(delivery);
33
- // Each worker only knows the activity types its own runs pushed.
34
- const candidates = this.unique((await this.scheduler.broadcast({
35
- kind: 'event.correlate',
36
- event,
37
- })).flat());
29
+ const candidates = await this.toCandidates(AsyncActivityCallback.toEvent(delivery));
38
30
  if (candidates.length === 0)
39
31
  return null;
40
32
  const pendings = await this.workflowRunAsyncActivityPendingRepository.findPendingByCorrelation(workflowId, candidates);
@@ -50,26 +42,11 @@ let ReceiveWorkflowEvent = class ReceiveWorkflowEvent {
50
42
  const activity = await this.workflowRunActivityRepository.findById(pending.activityId);
51
43
  if (!activity)
52
44
  return null;
53
- await this.scheduler.request({
54
- kind: 'event.deliver',
55
- runId: activity.runId,
56
- activityId: activity.id,
57
- pendingId: pending.id,
58
- delivery,
59
- });
45
+ await this.createWorkflowRunAsyncActivityPendingCallback.deliver(activity, pending, delivery);
60
46
  const stored = await this.workflowRunAsyncActivityPendingRepository.findById(pending.id);
61
47
  return { id: stored?.lastCallbackId ?? pending.id, activity: activity.id };
62
48
  }
63
- async deliver(activityId, pendingId, delivery) {
64
- const activity = await this.workflowRunActivityRepository.findById(activityId);
65
- const pending = await this.workflowRunAsyncActivityPendingRepository.findById(pendingId);
66
- if (!activity || !pending)
67
- throw new JSONRPCError('Activity is no longer waiting for a callback', {
68
- data: { status: 410 },
69
- });
70
- await this.createWorkflowRunAsyncActivityPendingCallback.deliver(activity, pending, delivery);
71
- }
72
- async correlate(event) {
49
+ async toCandidates(event) {
73
50
  const candidates = [];
74
51
  for (const [type, Activity] of this.activityRegistry.entries()) {
75
52
  const activity = new Activity();
@@ -86,20 +63,13 @@ let ReceiveWorkflowEvent = class ReceiveWorkflowEvent {
86
63
  }
87
64
  return candidates;
88
65
  }
89
- unique(candidates) {
90
- const seen = new Map();
91
- for (const candidate of candidates)
92
- seen.set(`${candidate.type}\0${candidate.correlationKey}`, candidate);
93
- return [...seen.values()];
94
- }
95
66
  };
96
67
  ReceiveWorkflowEvent = __decorate([
97
68
  Injectable(),
98
69
  __param(0, Inject(() => ActivityRegistryService)),
99
70
  __param(1, Inject(() => WorkflowRunActivityRepository)),
100
71
  __param(2, Inject(() => WorkflowRunAsyncActivityPendingRepository)),
101
- __param(3, Inject(() => CreateWorkflowRunAsyncActivityPendingCallback)),
102
- __param(4, Inject(() => WorkflowRunSchedulerService))
72
+ __param(3, Inject(() => CreateWorkflowRunAsyncActivityPendingCallback))
103
73
  ], ReceiveWorkflowEvent);
104
74
  export { ReceiveWorkflowEvent };
105
75
  //# sourceMappingURL=ReceiveWorkflowEvent.usecase.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ReceiveWorkflowEvent.usecase.js","sourceRoot":"","sources":["../../src/use-cases/ReceiveWorkflowEvent.usecase.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ReceiveWorkflowEvent.usecase.js","sourceRoot":"","sources":["../../src/use-cases/ReceiveWorkflowEvent.usecase.ts"],"names":[],"mappings":"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"}
@@ -7,11 +7,3 @@ export declare const serverAddress: {
7
7
  url: string | null;
8
8
  };
9
9
  export declare function bundleRoot(): string;
10
- export interface LoadAppOptions {
11
- env: Iterable<[string, string]>;
12
- serverUrl: string | null;
13
- }
14
- /** Imports the bundled app and fills the runtime globals of this thread. */
15
- export declare function loadApp(entrypoint: string, { env: entries, serverUrl }: LoadAppOptions): Promise<App>;
16
- /** One thread for the coordinator, the rest for workflow workers. */
17
- export declare function defaultWorkflowWorkers(): number;
@@ -1,24 +1,14 @@
1
1
  import fs from 'node:fs';
2
- import os from 'node:os';
3
2
  import path from 'node:path';
4
3
  import { fileURLToPath } from 'node:url';
5
- import { isMainThread } from 'node:worker_threads';
6
4
  import { Env } from '@t4h.framework/core';
7
5
  import { container } from 'pleroma';
8
- import { DEBUG_LOG_ARG, PROJECT_DIR_ARG, RUNTIME_CONCURRENCY_ARG, RUNTIME_KIND_ARG, RUNTIME_WORKERS_ARG, SERVER_URL_ARG, WORKFLOW_RUN_EVENTS, WORKFLOW_RUN_JOB_CONCURRENCY, } from '../constants/server.js';
6
+ import { SERVER_URL_ARG, WORKFLOW_RUN_EVENTS } from '../constants/server.js';
9
7
  import { JSONRPCClient } from '../models/JSONRPCClient.js';
10
8
  import { JSONRPCServer } from '../models/JSONRPCServer.js';
11
- import { LocalWorkflowRunJobExecutor } from '../models/LocalWorkflowRunJobExecutor.js';
12
- import { WorkflowWorkerPool } from '../models/WorkflowWorkerPool.js';
13
- import { CallbackTokenService } from '../services/CallbackToken.service.js';
14
- import { configureDatabase } from '../services/Database.service.js';
15
- import { RuntimeEventsService } from '../services/RuntimeEvents.service.js';
16
9
  import { WorkflowRunEventsService } from '../services/WorkflowRunEvents.service.js';
17
- import { WorkflowRunSchedulerService } from '../services/WorkflowRunScheduler.service.js';
18
- import { startRuntimeControl, startRuntimeEvents, } from '../tools/start-runtime-monitor.js';
19
10
  import { upApp } from '../tools/up-app.js';
20
11
  import { handlers } from '../transport/AppProcessJsonRpc.js';
21
- import { RejectAbandonedWorkflowRuns } from '../use-cases/RejectAbandonedWorkflowRuns.usecase.js';
22
12
  export let app = null;
23
13
  export const env = new Map();
24
14
  export function readSecret(name) {
@@ -36,9 +26,7 @@ export function bundleRoot() {
36
26
  return root;
37
27
  }
38
28
  function findBundleRoot(entrypoint) {
39
- let dir = path.dirname(entrypoint.startsWith('file:')
40
- ? fileURLToPath(entrypoint)
41
- : path.resolve(entrypoint));
29
+ let dir = path.dirname(path.resolve(entrypoint));
42
30
  while (true) {
43
31
  if (fs.existsSync(path.join(dir, 'package.json')))
44
32
  return dir;
@@ -48,112 +36,27 @@ function findBundleRoot(entrypoint) {
48
36
  dir = parent;
49
37
  }
50
38
  }
51
- /** Imports the bundled app and fills the runtime globals of this thread. */
52
- export async function loadApp(entrypoint, { env: entries, serverUrl }) {
53
- for (const [name, value] of entries)
54
- env.set(name, value);
55
- serverAddress.url = serverUrl;
56
- root = findBundleRoot(entrypoint);
57
- return await Env.run(env, async () => (app = await upApp(entrypoint)));
58
- }
59
- function parseForkArgs() {
60
- const [entrypoint, ...args] = process.argv.slice(2);
39
+ const isForkedEntry = !!process.argv[1] &&
40
+ path.resolve(process.argv[1]) === fileURLToPath(import.meta.url);
41
+ if (isForkedEntry) {
42
+ const [entrypoint, ...envArgs] = process.argv.slice(2);
61
43
  if (typeof entrypoint !== 'string')
62
44
  throw new Error('Entrypoint is not a string');
63
- const parsed = {
64
- entrypoint,
65
- serverUrl: null,
66
- env: [],
67
- workers: defaultWorkflowWorkers(),
68
- concurrency: WORKFLOW_RUN_JOB_CONCURRENCY,
69
- kind: 'app',
70
- projectDir: null,
71
- debugLog: null,
72
- };
73
- const flags = [
74
- [SERVER_URL_ARG, value => (parsed.serverUrl = value)],
75
- [RUNTIME_WORKERS_ARG, value => (parsed.workers = Number(value))],
76
- [RUNTIME_CONCURRENCY_ARG, value => (parsed.concurrency = Number(value))],
77
- [RUNTIME_KIND_ARG, value => (parsed.kind = value)],
78
- [PROJECT_DIR_ARG, value => (parsed.projectDir = value)],
79
- [DEBUG_LOG_ARG, value => (parsed.debugLog = value)],
80
- ];
81
- for (const arg of args) {
82
- const flag = flags.find(([prefix]) => arg.startsWith(prefix));
83
- if (flag) {
84
- flag[1](arg.slice(flag[0].length));
45
+ for (const arg of envArgs) {
46
+ if (arg.startsWith(SERVER_URL_ARG)) {
47
+ serverAddress.url = arg.slice(SERVER_URL_ARG.length);
85
48
  continue;
86
49
  }
87
50
  const index = arg.indexOf('=');
88
51
  if (index === -1)
89
52
  continue;
90
- parsed.env.push([arg.slice(0, index), arg.slice(index + 1)]);
53
+ const [name, value] = [arg.slice(0, index), arg.slice(index + 1)];
54
+ env.set(name, value);
91
55
  }
92
- return parsed;
93
- }
94
- /** One thread for the coordinator, the rest for workflow workers. */
95
- export function defaultWorkflowWorkers() {
96
- return Math.max(1, os.availableParallelism() - 1);
97
- }
98
- function createRuntimeDatabaseLocation() {
99
- const dir = fs.mkdtempSync(path.join(os.tmpdir(), 't4h-dev-runtime-'));
100
- process.once('exit', () => fs.rmSync(dir, { recursive: true, force: true }));
101
- return path.join(dir, 'runtime.sqlite');
102
- }
103
- async function startWorkflowExecutor({ entrypoint, serverUrl, workers, concurrency }, databaseLocation) {
104
- const scheduler = container.resolve(WorkflowRunSchedulerService);
105
- if (!databaseLocation || workers < 1)
106
- return scheduler.use(new LocalWorkflowRunJobExecutor(concurrency));
107
- const events = container.resolve(WorkflowRunEventsService);
108
- const runtimeEvents = container.resolve(RuntimeEventsService);
109
- const pool = new WorkflowWorkerPool({
110
- size: workers,
111
- concurrency,
112
- workerData: {
113
- entrypoint,
114
- env: [...env],
115
- serverUrl,
116
- databaseLocation,
117
- callbackSecret: container.resolve(CallbackTokenService).secret,
118
- },
119
- onSignal: signal => {
120
- switch (signal.type) {
121
- case 'queue:enqueue':
122
- return scheduler.enqueue(signal.job);
123
- case 'timeout:schedule':
124
- return scheduler.scheduleTimeout(signal.runId, signal.pendingId, new Date(signal.timeoutAt));
125
- case 'timeout:cancel':
126
- return scheduler.cancelTimeout(signal.pendingId);
127
- case 'events:run-created':
128
- return events.emitRunCreated(signal.payload);
129
- case 'events:run-updated':
130
- return events.runUpdated(signal.runId);
131
- case 'runtime:event':
132
- return runtimeEvents.dispatch(signal.event);
133
- }
134
- },
135
- onLaneLost: (lane, error) => {
136
- runtimeEvents.publish({ type: 'worker:lost', lane, error: error.message });
137
- void container
138
- .resolve(RejectAbandonedWorkflowRuns)
139
- .reject(scheduler.releaseLane(lane), error);
140
- },
56
+ root = findBundleRoot(entrypoint);
57
+ await Env.run(env, async () => {
58
+ app = await upApp(entrypoint);
141
59
  });
142
- await pool.start();
143
- scheduler.use(pool);
144
- }
145
- const isForkedEntry = isMainThread &&
146
- !!process.argv[1] &&
147
- path.resolve(process.argv[1]) === fileURLToPath(import.meta.url);
148
- if (isForkedEntry) {
149
- const args = parseForkArgs();
150
- // Runs the `exit` handlers (temp database, control socket, debug log).
151
- for (const signal of ['SIGINT', 'SIGTERM'])
152
- process.once(signal, () => process.exit(0));
153
- const databaseLocation = args.workers > 0 ? createRuntimeDatabaseLocation() : null;
154
- if (databaseLocation)
155
- configureDatabase({ location: databaseLocation, createSchema: true });
156
- await loadApp(args.entrypoint, args);
157
60
  const server = new JSONRPCServer(handlers
158
61
  .values()
159
62
  .toArray()
@@ -170,9 +73,6 @@ if (isForkedEntry) {
170
73
  void client.notify(event, payload);
171
74
  });
172
75
  process.on('message', message => Env.run(env, () => Promise.all([server.handle(message), client.handle(message)])));
173
- startRuntimeEvents(args.debugLog);
174
- await startWorkflowExecutor(args, databaseLocation);
175
- await startRuntimeControl(args);
176
76
  await Env.run(env, async () => {
177
77
  const manifest = app.toManifest();
178
78
  manifest.workflows = manifest.workflows.map((workflow, index) => ({