@effect/cluster 0.36.2 → 0.37.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 (90) hide show
  1. package/ClusterWorkflowEngine/package.json +6 -0
  2. package/dist/cjs/ClusterSchema.js +9 -1
  3. package/dist/cjs/ClusterSchema.js.map +1 -1
  4. package/dist/cjs/ClusterWorkflowEngine.js +386 -0
  5. package/dist/cjs/ClusterWorkflowEngine.js.map +1 -0
  6. package/dist/cjs/Envelope.js +14 -4
  7. package/dist/cjs/Envelope.js.map +1 -1
  8. package/dist/cjs/Message.js +22 -2
  9. package/dist/cjs/Message.js.map +1 -1
  10. package/dist/cjs/MessageStorage.js +59 -21
  11. package/dist/cjs/MessageStorage.js.map +1 -1
  12. package/dist/cjs/Reply.js +15 -0
  13. package/dist/cjs/Reply.js.map +1 -1
  14. package/dist/cjs/Runners.js +2 -2
  15. package/dist/cjs/Runners.js.map +1 -1
  16. package/dist/cjs/Sharding.js +23 -8
  17. package/dist/cjs/Sharding.js.map +1 -1
  18. package/dist/cjs/Snowflake.js +2 -2
  19. package/dist/cjs/Snowflake.js.map +1 -1
  20. package/dist/cjs/SqlMessageStorage.js +36 -12
  21. package/dist/cjs/SqlMessageStorage.js.map +1 -1
  22. package/dist/cjs/SqlShardStorage.js +6 -6
  23. package/dist/cjs/SqlShardStorage.js.map +1 -1
  24. package/dist/cjs/index.js +3 -1
  25. package/dist/cjs/internal/entityManager.js +4 -4
  26. package/dist/cjs/internal/entityManager.js.map +1 -1
  27. package/dist/dts/ClusterSchema.d.ts +7 -0
  28. package/dist/dts/ClusterSchema.d.ts.map +1 -1
  29. package/dist/dts/ClusterWorkflowEngine.d.ts +48 -0
  30. package/dist/dts/ClusterWorkflowEngine.d.ts.map +1 -0
  31. package/dist/dts/Envelope.d.ts +9 -0
  32. package/dist/dts/Envelope.d.ts.map +1 -1
  33. package/dist/dts/Message.d.ts +11 -1
  34. package/dist/dts/Message.d.ts.map +1 -1
  35. package/dist/dts/MessageStorage.d.ts +56 -0
  36. package/dist/dts/MessageStorage.d.ts.map +1 -1
  37. package/dist/dts/Reply.d.ts +7 -0
  38. package/dist/dts/Reply.d.ts.map +1 -1
  39. package/dist/dts/ShardStorage.d.ts +1 -1
  40. package/dist/dts/Sharding.d.ts +9 -0
  41. package/dist/dts/Sharding.d.ts.map +1 -1
  42. package/dist/dts/SqlMessageStorage.d.ts +10 -1
  43. package/dist/dts/SqlMessageStorage.d.ts.map +1 -1
  44. package/dist/dts/SqlShardStorage.d.ts +1 -1
  45. package/dist/dts/index.d.ts +4 -0
  46. package/dist/dts/index.d.ts.map +1 -1
  47. package/dist/dts/internal/resourceMap.d.ts +1 -1
  48. package/dist/dts/internal/resourceMap.d.ts.map +1 -1
  49. package/dist/dts/internal/resourceRef.d.ts +1 -1
  50. package/dist/dts/internal/resourceRef.d.ts.map +1 -1
  51. package/dist/esm/ClusterSchema.js +7 -0
  52. package/dist/esm/ClusterSchema.js.map +1 -1
  53. package/dist/esm/ClusterWorkflowEngine.js +378 -0
  54. package/dist/esm/ClusterWorkflowEngine.js.map +1 -0
  55. package/dist/esm/Envelope.js +12 -3
  56. package/dist/esm/Envelope.js.map +1 -1
  57. package/dist/esm/Message.js +20 -1
  58. package/dist/esm/Message.js.map +1 -1
  59. package/dist/esm/MessageStorage.js +59 -21
  60. package/dist/esm/MessageStorage.js.map +1 -1
  61. package/dist/esm/Reply.js +15 -0
  62. package/dist/esm/Reply.js.map +1 -1
  63. package/dist/esm/Runners.js +2 -2
  64. package/dist/esm/Runners.js.map +1 -1
  65. package/dist/esm/Sharding.js +24 -9
  66. package/dist/esm/Sharding.js.map +1 -1
  67. package/dist/esm/Snowflake.js +2 -2
  68. package/dist/esm/Snowflake.js.map +1 -1
  69. package/dist/esm/SqlMessageStorage.js +36 -12
  70. package/dist/esm/SqlMessageStorage.js.map +1 -1
  71. package/dist/esm/SqlShardStorage.js +6 -6
  72. package/dist/esm/SqlShardStorage.js.map +1 -1
  73. package/dist/esm/index.js +4 -0
  74. package/dist/esm/index.js.map +1 -1
  75. package/dist/esm/internal/entityManager.js +5 -5
  76. package/dist/esm/internal/entityManager.js.map +1 -1
  77. package/package.json +14 -5
  78. package/src/ClusterSchema.ts +10 -0
  79. package/src/ClusterWorkflowEngine.ts +475 -0
  80. package/src/Envelope.ts +17 -3
  81. package/src/Message.ts +24 -2
  82. package/src/MessageStorage.ts +122 -22
  83. package/src/Reply.ts +18 -0
  84. package/src/Runners.ts +2 -2
  85. package/src/Sharding.ts +45 -9
  86. package/src/Snowflake.ts +2 -2
  87. package/src/SqlMessageStorage.ts +74 -16
  88. package/src/SqlShardStorage.ts +6 -6
  89. package/src/index.ts +5 -0
  90. package/src/internal/entityManager.ts +6 -4
@@ -0,0 +1,6 @@
1
+ {
2
+ "sideEffects": [],
3
+ "main": "../dist/cjs/ClusterWorkflowEngine.js",
4
+ "module": "../dist/esm/ClusterWorkflowEngine.js",
5
+ "types": "../dist/dts/ClusterWorkflowEngine.d.ts"
6
+ }
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.Persisted = void 0;
6
+ exports.Uninterruptible = exports.Persisted = void 0;
7
7
  var Context = _interopRequireWildcard(require("effect/Context"));
8
8
  var _Function = require("effect/Function");
9
9
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
@@ -18,5 +18,13 @@ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r
18
18
  class Persisted extends /*#__PURE__*/Context.Reference()("@effect/cluster/ClusterSchema/Persisted", {
19
19
  defaultValue: _Function.constFalse
20
20
  }) {}
21
+ /**
22
+ * @since 1.0.0
23
+ * @category Annotations
24
+ */
21
25
  exports.Persisted = Persisted;
26
+ class Uninterruptible extends /*#__PURE__*/Context.Reference()("@effect/cluster/ClusterSchema/Uninterruptible", {
27
+ defaultValue: _Function.constFalse
28
+ }) {}
29
+ exports.Uninterruptible = Uninterruptible;
22
30
  //# sourceMappingURL=ClusterSchema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClusterSchema.js","names":["Context","_interopRequireWildcard","require","_Function","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Persisted","Reference","defaultValue","constFalse","exports"],"sources":["../../src/ClusterSchema.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAA4C,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAJ5C;;;;AAMA;;;;AAIM,MAAOkB,SAAU,sBAAQvB,OAAO,CAACwB,SAAS,EAAa,CAAC,yCAAyC,EAAE;EACvGC,YAAY,EAAEC;CACf,CAAC;AAAAC,OAAA,CAAAJ,SAAA,GAAAA,SAAA","ignoreList":[]}
1
+ {"version":3,"file":"ClusterSchema.js","names":["Context","_interopRequireWildcard","require","_Function","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","Persisted","Reference","defaultValue","constFalse","exports","Uninterruptible"],"sources":["../../src/ClusterSchema.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAA4C,SAAAD,wBAAAG,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAL,uBAAA,YAAAA,CAAAG,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAJ5C;;;;AAMA;;;;AAIM,MAAOkB,SAAU,sBAAQvB,OAAO,CAACwB,SAAS,EAAa,CAAC,yCAAyC,EAAE;EACvGC,YAAY,EAAEC;CACf,CAAC;AAEF;;;;AAAAC,OAAA,CAAAJ,SAAA,GAAAA,SAAA;AAIM,MAAOK,eACX,sBAAQ5B,OAAO,CAACwB,SAAS,EAAmB,CAAC,+CAA+C,EAAE;EAC5FC,YAAY,EAAEC;CACf,CAAC;AAAAC,OAAA,CAAAC,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -0,0 +1,386 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.make = exports.layer = void 0;
7
+ var Rpc = _interopRequireWildcard(require("@effect/rpc/Rpc"));
8
+ var Activity = _interopRequireWildcard(require("@effect/workflow/Activity"));
9
+ var DurableClock = _interopRequireWildcard(require("@effect/workflow/DurableClock"));
10
+ var Workflow = _interopRequireWildcard(require("@effect/workflow/Workflow"));
11
+ var _WorkflowEngine = require("@effect/workflow/WorkflowEngine");
12
+ var Arr = _interopRequireWildcard(require("effect/Array"));
13
+ var Context = _interopRequireWildcard(require("effect/Context"));
14
+ var DateTime = _interopRequireWildcard(require("effect/DateTime"));
15
+ var Duration = _interopRequireWildcard(require("effect/Duration"));
16
+ var Effect = _interopRequireWildcard(require("effect/Effect"));
17
+ var Layer = _interopRequireWildcard(require("effect/Layer"));
18
+ var Option = _interopRequireWildcard(require("effect/Option"));
19
+ var PrimaryKey = _interopRequireWildcard(require("effect/PrimaryKey"));
20
+ var RcMap = _interopRequireWildcard(require("effect/RcMap"));
21
+ var Schedule = _interopRequireWildcard(require("effect/Schedule"));
22
+ var Schema = _interopRequireWildcard(require("effect/Schema"));
23
+ var ClusterSchema = _interopRequireWildcard(require("./ClusterSchema.js"));
24
+ var DeliverAt = _interopRequireWildcard(require("./DeliverAt.js"));
25
+ var Entity = _interopRequireWildcard(require("./Entity.js"));
26
+ var _EntityAddress = require("./EntityAddress.js");
27
+ var _EntityId = require("./EntityId.js");
28
+ var _EntityType = require("./EntityType.js");
29
+ var Message = _interopRequireWildcard(require("./Message.js"));
30
+ var _MessageStorage = require("./MessageStorage.js");
31
+ var Reply = _interopRequireWildcard(require("./Reply.js"));
32
+ var Sharding = _interopRequireWildcard(require("./Sharding.js"));
33
+ var Snowflake = _interopRequireWildcard(require("./Snowflake.js"));
34
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
35
+ /**
36
+ * @since 1.0.0
37
+ */
38
+
39
+ /**
40
+ * @since 1.0.0
41
+ * @category Constructors
42
+ */
43
+ const make = exports.make = /*#__PURE__*/Effect.gen(function* () {
44
+ const sharding = yield* Sharding.Sharding;
45
+ const storage = yield* _MessageStorage.MessageStorage;
46
+ const snowflakeGen = yield* Snowflake.Generator;
47
+ const entities = new Map();
48
+ const activities = new Map();
49
+ const activityLatches = new Map();
50
+ const clients = yield* RcMap.make({
51
+ lookup: Effect.fnUntraced(function* (workflowName) {
52
+ const entity = entities.get(workflowName);
53
+ if (!entity) {
54
+ return yield* Effect.dieMessage(`Workflow ${workflowName} not registered`);
55
+ }
56
+ return yield* entity.client;
57
+ }),
58
+ idleTimeToLive: "5 minutes"
59
+ });
60
+ const clockClient = yield* ClockEntity.client;
61
+ const deferredClient = yield* DeferredEntity.client;
62
+ const requestIdFor = Effect.fnUntraced(function* (options) {
63
+ const entityId = _EntityId.EntityId.make(options.executionId);
64
+ const address = new _EntityAddress.EntityAddress({
65
+ entityType: _EntityType.EntityType.make(options.entityType),
66
+ entityId,
67
+ shardId: sharding.getShardId(entityId)
68
+ });
69
+ return yield* storage.requestIdForPrimaryKey({
70
+ address,
71
+ tag: options.tag,
72
+ id: options.id
73
+ });
74
+ });
75
+ const replyForRequestId = Effect.fnUntraced(function* (requestId) {
76
+ const replies = yield* storage.repliesForUnfiltered([requestId]);
77
+ return Arr.last(replies).pipe(Option.filter(reply => reply._tag === "WithExit"), Option.map(reply => reply));
78
+ });
79
+ const requestReply = Effect.fnUntraced(function* (options) {
80
+ const requestId = yield* requestIdFor(options);
81
+ if (Option.isNone(requestId)) {
82
+ return Option.none();
83
+ }
84
+ return yield* replyForRequestId(requestId.value);
85
+ });
86
+ const resetActivityAttempt = Effect.fnUntraced(function* (options) {
87
+ const requestId = yield* requestIdFor({
88
+ entityType: `Workflow/${options.workflow.name}`,
89
+ executionId: options.executionId,
90
+ tag: "activity",
91
+ id: activityPrimaryKey(options.activity.name, options.attempt)
92
+ });
93
+ if (Option.isNone(requestId)) return;
94
+ yield* sharding.reset(requestId.value);
95
+ }, Effect.retry({
96
+ times: 3,
97
+ schedule: Schedule.exponential(250)
98
+ }), Effect.orDie);
99
+ return _WorkflowEngine.WorkflowEngine.of({
100
+ register: (workflow, execute) => Effect.suspend(() => {
101
+ if (entities.has(workflow.name)) {
102
+ return Effect.dieMessage(`Workflow ${workflow.name} already registered`);
103
+ }
104
+ const entity = makeWorkflowEntity(workflow);
105
+ entities.set(workflow.name, entity);
106
+ return sharding.registerEntity(entity, Effect.gen(function* () {
107
+ const address = yield* Entity.CurrentAddress;
108
+ const executionId = address.entityId;
109
+ return {
110
+ run: request => execute(request.payload, executionId).pipe(Workflow.intoResult, Effect.provideService(_WorkflowEngine.WorkflowInstance, _WorkflowEngine.WorkflowInstance.of({
111
+ workflow,
112
+ executionId,
113
+ suspended: false
114
+ }))),
115
+ activity: Effect.fnUntraced(function* (request) {
116
+ const activityId = `${executionId}/${request.payload.name}`;
117
+ let entry = activities.get(activityId);
118
+ while (!entry) {
119
+ const latch = Effect.unsafeMakeLatch();
120
+ activityLatches.set(activityId, latch);
121
+ yield* latch.await;
122
+ entry = activities.get(activityId);
123
+ }
124
+ const contextMap = new Map(entry.context.unsafeMap);
125
+ contextMap.set(Activity.CurrentAttempt.key, request.payload.attempt);
126
+ contextMap.set(_WorkflowEngine.WorkflowInstance.key, _WorkflowEngine.WorkflowInstance.of({
127
+ workflow,
128
+ executionId,
129
+ suspended: false
130
+ }));
131
+ return yield* entry.activity.executeEncoded.pipe(Workflow.intoResult, Effect.provide(Context.unsafeMake(contextMap)), Effect.ensuring(Effect.sync(() => {
132
+ activities.delete(activityId);
133
+ })));
134
+ }, Rpc.fork)
135
+ };
136
+ }));
137
+ }),
138
+ execute: ({
139
+ discard,
140
+ executionId,
141
+ payload,
142
+ workflow
143
+ }) => RcMap.get(clients, workflow.name).pipe(Effect.flatMap(make => make(executionId).run(payload, {
144
+ discard
145
+ })), Effect.orDie, Effect.scoped),
146
+ interrupt: Effect.fnUntraced(function* (workflow, executionId) {
147
+ const requestId = yield* requestIdFor({
148
+ entityType: `Workflow/${workflow.name}`,
149
+ executionId,
150
+ tag: "run",
151
+ id: ""
152
+ });
153
+ if (Option.isNone(requestId)) {
154
+ return;
155
+ }
156
+ const reply = yield* replyForRequestId(requestId.value);
157
+ const nonSuspendedReply = reply.pipe(Option.filter(reply => reply.exit._tag !== "Success" || reply.exit.value._tag !== "Suspended"));
158
+ if (Option.isSome(nonSuspendedReply)) {
159
+ return;
160
+ }
161
+ const entityId = _EntityId.EntityId.make(executionId);
162
+ const shardId = sharding.getShardId(entityId);
163
+ const workflowAddress = new _EntityAddress.EntityAddress({
164
+ entityType: _EntityType.EntityType.make(`Workflow/${workflow.name}`),
165
+ entityId,
166
+ shardId
167
+ });
168
+ const deferredAddress = new _EntityAddress.EntityAddress({
169
+ entityType: DeferredEntity.type,
170
+ entityId,
171
+ shardId
172
+ });
173
+ const clockAddress = new _EntityAddress.EntityAddress({
174
+ entityType: ClockEntity.type,
175
+ entityId,
176
+ shardId
177
+ });
178
+ if (Option.isNone(reply)) {
179
+ yield* sharding.sendOutgoing(Message.OutgoingEnvelope.interrupt({
180
+ address: workflowAddress,
181
+ id: snowflakeGen.unsafeNext(),
182
+ requestId: requestId.value
183
+ }), true);
184
+ } else {
185
+ yield* sharding.reset(requestId.value);
186
+ }
187
+ yield* storage.saveReply(Reply.ReplyWithContext.interrupt({
188
+ id: snowflakeGen.unsafeNext(),
189
+ requestId: requestId.value
190
+ }));
191
+ yield* storage.clearAddress(deferredAddress);
192
+ yield* storage.clearAddress(clockAddress);
193
+ }, Effect.retry({
194
+ while: e => e._tag === "PersistenceError",
195
+ times: 3,
196
+ schedule: Schedule.exponential(250)
197
+ }), Effect.orDie),
198
+ resume: Effect.fnUntraced(function* (workflowName, executionId) {
199
+ const maybeReply = yield* requestReply({
200
+ entityType: `Workflow/${workflowName}`,
201
+ executionId,
202
+ tag: "run",
203
+ id: ""
204
+ });
205
+ const maybeSuspended = Option.filter(maybeReply, reply => reply.exit._tag === "Success" && reply.exit.value._tag === "Suspended");
206
+ if (Option.isNone(maybeSuspended)) return;
207
+ yield* sharding.reset(Snowflake.Snowflake(maybeSuspended.value.requestId));
208
+ }, Effect.retry({
209
+ while: e => e._tag === "PersistenceError",
210
+ times: 3,
211
+ schedule: Schedule.exponential(250)
212
+ }), Effect.orDie),
213
+ activityExecute: Effect.fnUntraced(function* ({
214
+ activity,
215
+ attempt
216
+ }) {
217
+ const context = yield* Effect.context();
218
+ const instance = Context.get(context, _WorkflowEngine.WorkflowInstance);
219
+ const activityId = `${instance.executionId}/${activity.name}`;
220
+ activities.set(activityId, {
221
+ activity,
222
+ context
223
+ });
224
+ const latch = activityLatches.get(activityId);
225
+ if (latch) {
226
+ yield* latch.release;
227
+ activityLatches.delete(activityId);
228
+ }
229
+ const client = (yield* RcMap.get(clients, instance.workflow.name))(instance.executionId);
230
+ while (true) {
231
+ const result = yield* Effect.orDie(client.activity({
232
+ name: activity.name,
233
+ attempt
234
+ }));
235
+ // If the activity has suspended and did not execute, we need to resume
236
+ // it by resetting the attempt and re-executing.
237
+ if (result._tag === "Suspended" && activities.has(activityId)) {
238
+ yield* resetActivityAttempt({
239
+ workflow: instance.workflow,
240
+ executionId: instance.executionId,
241
+ activity,
242
+ attempt
243
+ });
244
+ continue;
245
+ }
246
+ activities.delete(activityId);
247
+ return result;
248
+ }
249
+ }, Effect.scoped),
250
+ deferredResult: deferred => _WorkflowEngine.WorkflowInstance.pipe(Effect.flatMap(instance => requestReply({
251
+ entityType: DeferredEntity.type,
252
+ executionId: instance.executionId,
253
+ tag: "set",
254
+ id: deferred.name
255
+ })), Effect.map(Option.map(reply => reply.exit)), Effect.retry({
256
+ while: e => e._tag === "PersistenceError",
257
+ times: 3,
258
+ schedule: Schedule.exponential(250)
259
+ }), Effect.orDie),
260
+ deferredDone({
261
+ deferred,
262
+ executionId,
263
+ exit,
264
+ workflowName
265
+ }) {
266
+ const client = deferredClient(executionId);
267
+ return Effect.orDie(client.set({
268
+ workflowName,
269
+ name: deferred.name,
270
+ exit
271
+ }));
272
+ },
273
+ scheduleClock(options) {
274
+ const client = clockClient(options.executionId);
275
+ return DateTime.now.pipe(Effect.flatMap(now => client.run({
276
+ name: options.clock.name,
277
+ workflowName: options.workflow.name,
278
+ wakeUp: DateTime.addDuration(now, options.clock.duration)
279
+ }, {
280
+ discard: true
281
+ })), Effect.orDie);
282
+ }
283
+ });
284
+ });
285
+ const ActivityRpc = /*#__PURE__*/Rpc.make("activity", {
286
+ payload: {
287
+ name: Schema.String,
288
+ attempt: Schema.Number
289
+ },
290
+ primaryKey: ({
291
+ attempt,
292
+ name
293
+ }) => activityPrimaryKey(name, attempt),
294
+ success: /*#__PURE__*/Workflow.Result({
295
+ success: Schema.Unknown,
296
+ error: Schema.Unknown
297
+ })
298
+ });
299
+ const makeWorkflowEntity = workflow => Entity.make(`Workflow/${workflow.name}`, [Rpc.make("run", {
300
+ payload: workflow.payloadSchema.fields,
301
+ primaryKey: () => "",
302
+ success: Workflow.Result({
303
+ success: workflow.successSchema,
304
+ error: workflow.errorSchema
305
+ })
306
+ }), ActivityRpc]).annotateRpcs(ClusterSchema.Persisted, true).annotateRpcs(ClusterSchema.Uninterruptible, true);
307
+ const activityPrimaryKey = (activity, attempt) => `${activity}/${attempt}`;
308
+ const ExitUnknown = /*#__PURE__*/Schema.encodedSchema(/*#__PURE__*/Schema.Exit({
309
+ success: Schema.Unknown,
310
+ failure: Schema.Unknown,
311
+ defect: Schema.Defect
312
+ }));
313
+ const DeferredEntity = /*#__PURE__*/Entity.make("Workflow/-/DurableDeferred", [Rpc.make("set", {
314
+ payload: {
315
+ workflowName: Schema.String,
316
+ name: Schema.String,
317
+ exit: ExitUnknown
318
+ },
319
+ primaryKey: ({
320
+ name
321
+ }) => name,
322
+ success: ExitUnknown
323
+ }), Rpc.make("resume", {
324
+ payload: {
325
+ workflowName: Schema.String,
326
+ name: Schema.String
327
+ },
328
+ primaryKey: ({
329
+ name
330
+ }) => name
331
+ })]).annotateRpcs(ClusterSchema.Persisted, true).annotateRpcs(ClusterSchema.Uninterruptible, true);
332
+ const DeferredEntityLayer = /*#__PURE__*/DeferredEntity.toLayer(/*#__PURE__*/Effect.gen(function* () {
333
+ const engine = yield* _WorkflowEngine.WorkflowEngine;
334
+ const address = yield* Entity.CurrentAddress;
335
+ const executionId = address.entityId;
336
+ const client = (yield* DeferredEntity.client)(executionId);
337
+ return {
338
+ set: request => Effect.as(Effect.orDie(client.resume(request.payload, {
339
+ discard: true
340
+ })), request.payload.exit),
341
+ resume: request => engine.resume(request.payload.workflowName, executionId)
342
+ };
343
+ }));
344
+ class ClockPayload extends /*#__PURE__*/Schema.Class(`Workflow/DurableClock/Run`)({
345
+ name: Schema.String,
346
+ workflowName: Schema.String,
347
+ wakeUp: Schema.DateTimeUtcFromNumber
348
+ }) {
349
+ [PrimaryKey.symbol]() {
350
+ return this.name;
351
+ }
352
+ [DeliverAt.symbol]() {
353
+ return this.wakeUp;
354
+ }
355
+ }
356
+ const ClockEntity = /*#__PURE__*/Entity.make("Workflow/-/DurableClock", [/*#__PURE__*/Rpc.make("run", {
357
+ payload: ClockPayload
358
+ }).annotate(ClusterSchema.Persisted, true).annotate(ClusterSchema.Uninterruptible, true)]);
359
+ const ClockEntityLayer = /*#__PURE__*/ClockEntity.toLayer(/*#__PURE__*/Effect.gen(function* () {
360
+ const engine = yield* _WorkflowEngine.WorkflowEngine;
361
+ const address = yield* Entity.CurrentAddress;
362
+ const executionId = address.entityId;
363
+ return {
364
+ run(request) {
365
+ const deferred = DurableClock.make({
366
+ name: request.payload.name,
367
+ duration: Duration.zero
368
+ }).deferred;
369
+ return engine.deferredDone({
370
+ workflowName: request.payload.workflowName,
371
+ executionId,
372
+ deferred,
373
+ exit: {
374
+ _tag: "Success",
375
+ value: void 0
376
+ }
377
+ });
378
+ }
379
+ };
380
+ }));
381
+ /**
382
+ * @since 1.0.0
383
+ * @category Layers
384
+ */
385
+ const layer = exports.layer = /*#__PURE__*/DeferredEntityLayer.pipe(/*#__PURE__*/Layer.merge(ClockEntityLayer), /*#__PURE__*/Layer.provideMerge(/*#__PURE__*/Layer.scoped(_WorkflowEngine.WorkflowEngine, make)), /*#__PURE__*/Layer.provide(Snowflake.layerGenerator));
386
+ //# sourceMappingURL=ClusterWorkflowEngine.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ClusterWorkflowEngine.js","names":["Rpc","_interopRequireWildcard","require","Activity","DurableClock","Workflow","_WorkflowEngine","Arr","Context","DateTime","Duration","Effect","Layer","Option","PrimaryKey","RcMap","Schedule","Schema","ClusterSchema","DeliverAt","Entity","_EntityAddress","_EntityId","_EntityType","Message","_MessageStorage","Reply","Sharding","Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","make","exports","gen","sharding","storage","MessageStorage","snowflakeGen","Generator","entities","Map","activities","activityLatches","clients","lookup","fnUntraced","workflowName","entity","dieMessage","client","idleTimeToLive","clockClient","ClockEntity","deferredClient","DeferredEntity","requestIdFor","options","entityId","EntityId","executionId","address","EntityAddress","entityType","EntityType","shardId","getShardId","requestIdForPrimaryKey","tag","id","replyForRequestId","requestId","replies","repliesForUnfiltered","last","pipe","filter","reply","_tag","map","requestReply","isNone","none","value","resetActivityAttempt","workflow","name","activityPrimaryKey","activity","attempt","reset","retry","times","schedule","exponential","orDie","WorkflowEngine","of","register","execute","suspend","makeWorkflowEntity","registerEntity","CurrentAddress","run","request","payload","intoResult","provideService","WorkflowInstance","suspended","activityId","entry","latch","unsafeMakeLatch","await","contextMap","context","unsafeMap","CurrentAttempt","key","executeEncoded","provide","unsafeMake","ensuring","sync","delete","fork","discard","flatMap","scoped","interrupt","nonSuspendedReply","exit","isSome","workflowAddress","deferredAddress","type","clockAddress","sendOutgoing","OutgoingEnvelope","unsafeNext","saveReply","ReplyWithContext","clearAddress","while","resume","maybeReply","maybeSuspended","activityExecute","instance","release","result","deferredResult","deferred","deferredDone","scheduleClock","now","clock","wakeUp","addDuration","duration","ActivityRpc","String","Number","primaryKey","success","Result","Unknown","error","payloadSchema","fields","successSchema","errorSchema","annotateRpcs","Persisted","Uninterruptible","ExitUnknown","encodedSchema","Exit","failure","defect","Defect","DeferredEntityLayer","toLayer","engine","as","ClockPayload","Class","DateTimeUtcFromNumber","symbol","annotate","ClockEntityLayer","zero","layer","merge","provideMerge","layerGenerator"],"sources":["../../src/ClusterWorkflowEngine.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.primaryKey = exports.makeRequest = exports.isEnvelope = exports.TypeId = exports.RequestFromSelf = exports.PartialEncodedRequestFromSelf = exports.PartialEncodedRequest = exports.PartialEncodedFromSelf = exports.PartialEncodedArray = exports.PartialEncoded = exports.Interrupt = exports.EnvelopeFromSelf = exports.AckChunk = void 0;
6
+ exports.primaryKeyByAddress = exports.primaryKey = exports.makeRequest = exports.isEnvelope = exports.TypeId = exports.RequestFromSelf = exports.PartialEncodedRequestFromSelf = exports.PartialEncodedRequest = exports.PartialEncodedFromSelf = exports.PartialEncodedArray = exports.PartialEncoded = exports.Interrupt = exports.EnvelopeFromSelf = exports.AckChunk = void 0;
7
7
  var Headers = _interopRequireWildcard(require("@effect/platform/Headers"));
8
8
  var Predicate = _interopRequireWildcard(require("effect/Predicate"));
9
9
  var PrimaryKey = _interopRequireWildcard(require("effect/PrimaryKey"));
@@ -159,9 +159,19 @@ const primaryKey = envelope => {
159
159
  if (envelope._tag !== "Request" || !Predicate.hasProperty(envelope.payload, PrimaryKey.symbol)) {
160
160
  return null;
161
161
  }
162
- const value = PrimaryKey.value(envelope.payload);
163
- // hash the entity address to save space?
164
- return `${envelope.address.entityType}/${envelope.address.entityId}/${envelope.tag}/${value}`;
162
+ return primaryKeyByAddress({
163
+ address: envelope.address,
164
+ tag: envelope.tag,
165
+ id: PrimaryKey.value(envelope.payload)
166
+ });
165
167
  };
168
+ /**
169
+ * @since 1.0.0
170
+ * @category primary key
171
+ */
166
172
  exports.primaryKey = primaryKey;
173
+ const primaryKeyByAddress = options =>
174
+ // hash the entity address to save space?
175
+ `${options.address.entityType}/${options.address.entityId}/${options.tag}/${options.id}`;
176
+ exports.primaryKeyByAddress = primaryKeyByAddress;
167
177
  //# sourceMappingURL=Envelope.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Envelope.js","names":["Headers","_interopRequireWildcard","require","Predicate","PrimaryKey","Schema","_EntityAddress","_Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","Symbol","for","AckChunk","TaggedClass","id","SnowflakeFromString","address","EntityAddress","requestId","replyId","withRequestId","Interrupt","isEnvelope","u","hasProperty","makeRequest","options","_tag","tag","payload","headers","traceId","spanId","sampled","EnvelopeFromSelf","declare","identifier","RequestFromSelf","PartialEncodedRequest","Struct","Literal","String","Unknown","schema","Boolean","PartialEncoded","Union","PartialEncodedArray","mutable","Array","PartialEncodedRequestFromSelf","typeSchema","EntityAddressFromSelf","schemaFromSelf","PartialEncodedFromSelf","primaryKey","envelope","symbol","value","entityType","entityId"],"sources":["../../src/Envelope.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Envelope.js","names":["Headers","_interopRequireWildcard","require","Predicate","PrimaryKey","Schema","_EntityAddress","_Snowflake","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","TypeId","exports","Symbol","for","AckChunk","TaggedClass","id","SnowflakeFromString","address","EntityAddress","requestId","replyId","withRequestId","Interrupt","isEnvelope","u","hasProperty","makeRequest","options","_tag","tag","payload","headers","traceId","spanId","sampled","EnvelopeFromSelf","declare","identifier","RequestFromSelf","PartialEncodedRequest","Struct","Literal","String","Unknown","schema","Boolean","PartialEncoded","Union","PartialEncodedArray","mutable","Array","PartialEncodedRequestFromSelf","typeSchema","EntityAddressFromSelf","schemaFromSelf","PartialEncodedFromSelf","primaryKey","envelope","symbol","primaryKeyByAddress","value","entityType","entityId"],"sources":["../../src/Envelope.ts"],"sourcesContent":[null],"mappings":";;;;;;AAGA,IAAAA,OAAA,GAAAC,uBAAA,CAAAC,OAAA;AAEA,IAAAC,SAAA,GAAAF,uBAAA,CAAAC,OAAA;AACA,IAAAE,UAAA,GAAAH,uBAAA,CAAAC,OAAA;AAEA,IAAAG,MAAA,GAAAJ,uBAAA,CAAAC,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,UAAA,GAAAL,OAAA;AAAoE,SAAAD,wBAAAO,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAT,uBAAA,YAAAA,CAAAO,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA;AAVpE;;;;AAYA;;;;AAIO,MAAMkB,MAAM,GAAAC,OAAA,CAAAD,MAAA,gBAAkBE,MAAM,CAACC,GAAG,CAAC,0BAA0B,CAAC;AAsD3E;;;;AAIM,MAAOC,QAAS,sBAAQ1B,MAAM,CAAC2B,WAAW,CAAW,mCAAmC,CAAC,CAAC,UAAU,EAAE;EAC1GC,EAAE,EAAEC,8BAAmB;EACvBC,OAAO,EAAEC,4BAAa;EACtBC,SAAS,EAAEH,8BAAmB;EAC9BI,OAAO,EAAEJ;CACV,CAAC;EACA;;;EAGS,CAACP,MAAM,IAAYA,MAAM;EAElC;;;EAGAY,aAAaA,CAACF,SAAoB;IAChC,OAAO,IAAIN,QAAQ,CAAC;MAClB,GAAG,IAAI;MACPM;KACD,CAAC;EACJ;;AAGF;;;;AAAAT,OAAA,CAAAG,QAAA,GAAAA,QAAA;AAIM,MAAOS,SAAU,sBAAQnC,MAAM,CAAC2B,WAAW,CAAY,oCAAoC,CAAC,CAAC,WAAW,EAAE;EAC9GC,EAAE,EAAEC,8BAAmB;EACvBC,OAAO,EAAEC,4BAAa;EACtBC,SAAS,EAAEH;CACZ,CAAC;EACA;;;EAGS,CAACP,MAAM,IAAYA,MAAM;EAElC;;;EAGAY,aAAaA,CAACF,SAAoB;IAChC,OAAO,IAAIG,SAAS,CAAC;MACnB,GAAG,IAAI;MACPH;KACD,CAAC;EACJ;;AA8CF;;;;AAAAT,OAAA,CAAAY,SAAA,GAAAA,SAAA;AAIO,MAAMC,UAAU,GAAIC,CAAU,IAAyBvC,SAAS,CAACwC,WAAW,CAACD,CAAC,EAAEf,MAAM,CAAC;AAE9F;;;;AAAAC,OAAA,CAAAa,UAAA,GAAAA,UAAA;AAIO,MAAMG,WAAW,GACtBC,OASC,KACiB;EAClB,CAAClB,MAAM,GAAGA,MAAM;EAChBmB,IAAI,EAAE,SAAS;EACfT,SAAS,EAAEQ,OAAO,CAACR,SAAS;EAC5BU,GAAG,EAAEF,OAAO,CAACE,GAAG;EAChBZ,OAAO,EAAEU,OAAO,CAACV,OAAO;EACxBa,OAAO,EAAEH,OAAO,CAACG,OAAO;EACxBC,OAAO,EAAEJ,OAAO,CAACI,OAAO;EACxBC,OAAO,EAAEL,OAAO,CAACK,OAAO;EACxBC,MAAM,EAAEN,OAAO,CAACM,MAAM;EACtBC,OAAO,EAAEP,OAAO,CAACO;CAClB,CAAC;AAEF;;;;AAAAxB,OAAA,CAAAgB,WAAA,GAAAA,WAAA;AAIO,MAAMS,gBAAgB,GAAAzB,OAAA,CAAAyB,gBAAA,gBAGzBhD,MAAM,CAACiD,OAAO,CAACb,UAAU,EAAE;EAC7Bc,UAAU,EAAE;CACb,CAAC;AAEF;;;;AAIO,MAAMC,eAAe,GAAA5B,OAAA,CAAA4B,eAAA,gBAGxBnD,MAAM,CAACiD,OAAO,CAAEZ,CAAC,IAAuBD,UAAU,CAACC,CAAC,CAAC,IAAIA,CAAC,CAACI,IAAI,KAAK,SAAS,EAAE;EACjFS,UAAU,EAAE;CACb,CAAC;AAEF;;;;AAIO,MAAME,qBAAqB,GAAA7B,OAAA,CAAA6B,qBAAA,gBAY9BpD,MAAM,CAACqD,MAAM,CAAC;EAChBZ,IAAI,eAAEzC,MAAM,CAACsD,OAAO,CAAC,SAAS,CAAC;EAC/BtB,SAAS,EAAEH,8BAAmB;EAC9BC,OAAO,EAAEC,4BAAa;EACtBW,GAAG,EAAE1C,MAAM,CAACuD,MAAM;EAClBZ,OAAO,EAAE3C,MAAM,CAACwD,OAAO;EACvBZ,OAAO,EAAEjD,OAAO,CAAC8D,MAAM;EACvBZ,OAAO,EAAE7C,MAAM,CAACuD,MAAM;EACtBT,MAAM,EAAE9C,MAAM,CAACuD,MAAM;EACrBR,OAAO,EAAE/C,MAAM,CAAC0D;CACjB,CAAkE;AAEnE;;;;AAIO,MAAMC,cAAc,GAAApC,OAAA,CAAAoC,cAAA,gBAkBvB3D,MAAM,CAAC4D,KAAK,CAACR,qBAAqB,EAAE1B,QAAQ,EAAES,SAAS,CAG1D;AAED;;;;AAIO,MAAM0B,mBAAmB,GAAAtC,OAAA,CAAAsC,mBAAA,gBAG5B7D,MAAM,CAAC8D,OAAO,cAAC9D,MAAM,CAAC+D,KAAK,CAACJ,cAAc,CAAC,CAAC;AAEhD;;;;AAIO,MAAMK,6BAA6B,GAAAzC,OAAA,CAAAyC,6BAAA,gBAYtChE,MAAM,CAACqD,MAAM,CAAC;EAChBZ,IAAI,eAAEzC,MAAM,CAACsD,OAAO,CAAC,SAAS,CAAC;EAC/BtB,SAAS,eAAEhC,MAAM,CAACiE,UAAU,CAACpC,8BAAmB,CAAC;EACjDC,OAAO,EAAEoC,oCAAqB;EAC9BxB,GAAG,EAAE1C,MAAM,CAACuD,MAAM;EAClBZ,OAAO,EAAE3C,MAAM,CAACwD,OAAO;EACvBZ,OAAO,EAAEjD,OAAO,CAACwE,cAAc;EAC/BtB,OAAO,EAAE7C,MAAM,CAACuD,MAAM;EACtBT,MAAM,EAAE9C,MAAM,CAACuD,MAAM;EACrBR,OAAO,EAAE/C,MAAM,CAAC0D;CACjB,CAAiD;AAElD;;;;AAIO,MAAMU,sBAAsB,GAAA7C,OAAA,CAAA6C,sBAAA,gBAkB/BpE,MAAM,CAAC4D,KAAK,CACdI,6BAA6B,eAC7BhE,MAAM,CAACiE,UAAU,CAACvC,QAAQ,CAAC,eAC3B1B,MAAM,CAACiE,UAAU,CAAC9B,SAAS,CAAC,CACoB;AAElD;;;;AAIO,MAAMkC,UAAU,GAAuBC,QAAqB,IAAmB;EACpF,IAAIA,QAAQ,CAAC7B,IAAI,KAAK,SAAS,IAAI,CAAE3C,SAAS,CAACwC,WAAW,CAACgC,QAAQ,CAAC3B,OAAO,EAAE5C,UAAU,CAACwE,MAAM,CAAE,EAAE;IAChG,OAAO,IAAI;EACb;EACA,OAAOC,mBAAmB,CAAC;IACzB1C,OAAO,EAAEwC,QAAQ,CAACxC,OAAO;IACzBY,GAAG,EAAE4B,QAAQ,CAAC5B,GAAG;IACjBd,EAAE,EAAE7B,UAAU,CAAC0E,KAAK,CAACH,QAAQ,CAAC3B,OAAO;GACtC,CAAC;AACJ,CAAC;AAED;;;;AAAApB,OAAA,CAAA8C,UAAA,GAAAA,UAAA;AAIO,MAAMG,mBAAmB,GAAIhC,OAInC;AACC;AACA,GAAGA,OAAO,CAACV,OAAO,CAAC4C,UAAU,IAAIlC,OAAO,CAACV,OAAO,CAAC6C,QAAQ,IAAInC,OAAO,CAACE,GAAG,IAAIF,OAAO,CAACZ,EAAE,EAAE;AAAAL,OAAA,CAAAiD,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -4,6 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.serializeRequest = exports.serializeEnvelope = exports.serialize = exports.incomingLocalFromOutgoing = exports.deserializeLocal = exports.OutgoingRequest = exports.OutgoingEnvelope = exports.IncomingRequestLocal = exports.IncomingRequest = exports.IncomingEnvelope = void 0;
7
+ var Rpc = _interopRequireWildcard(require("@effect/rpc/Rpc"));
7
8
  var Data = _interopRequireWildcard(require("effect/Data"));
8
9
  var Effect = _interopRequireWildcard(require("effect/Effect"));
9
10
  var FiberRef = _interopRequireWildcard(require("effect/FiberRef"));
@@ -12,6 +13,10 @@ var Schema = _interopRequireWildcard(require("effect/Schema"));
12
13
  var _ClusterError = require("./ClusterError.js");
13
14
  var Envelope = _interopRequireWildcard(require("./Envelope.js"));
14
15
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
16
+ /**
17
+ * @since 1.0.0
18
+ */
19
+
15
20
  /**
16
21
  * @since 1.0.0
17
22
  * @category incoming
@@ -62,12 +67,27 @@ class OutgoingRequest extends /*#__PURE__*/Data.TaggedClass("OutgoingRequest") {
62
67
  * @category outgoing
63
68
  */
64
69
  exports.OutgoingRequest = OutgoingRequest;
65
- class OutgoingEnvelope extends /*#__PURE__*/Data.TaggedClass("OutgoingEnvelope") {}
70
+ class OutgoingEnvelope extends /*#__PURE__*/Data.TaggedClass("OutgoingEnvelope") {
71
+ /**
72
+ * @since 1.0.0
73
+ */
74
+ static interrupt(options) {
75
+ return new OutgoingEnvelope({
76
+ envelope: new Envelope.Interrupt(options),
77
+ rpc: neverRpc
78
+ });
79
+ }
80
+ }
81
+ exports.OutgoingEnvelope = OutgoingEnvelope;
82
+ const neverRpc = /*#__PURE__*/Rpc.make("Never", {
83
+ success: Schema.Never,
84
+ error: Schema.Never,
85
+ payload: {}
86
+ });
66
87
  /**
67
88
  * @since 1.0.0
68
89
  * @category serialization / deserialization
69
90
  */
70
- exports.OutgoingEnvelope = OutgoingEnvelope;
71
91
  const serialize = message => {
72
92
  if (message._tag !== "OutgoingRequest") {
73
93
  return Effect.succeed(message.envelope);
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","names":["Data","_interopRequireWildcard","require","Effect","FiberRef","Option","Schema","_ClusterError","Envelope","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","incomingLocalFromOutgoing","self","_tag","IncomingEnvelope","envelope","IncomingRequestLocal","respond","lastSentReply","none","exports","IncomingRequest","TaggedClass","OutgoingRequest","encodedCache","OutgoingEnvelope","serialize","message","succeed","suspend","serializeRequest","serializeEnvelope","flatMap","MalformedMessage","refail","encode","PartialEncoded","rpc","payloadSchema","payload","pipe","locally","currentContext","context","map","deserializeLocal","encoded","fail","cause","Error","decode","makeRequest"],"sources":["../../src/Message.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Message.js","names":["Rpc","_interopRequireWildcard","require","Data","Effect","FiberRef","Option","Schema","_ClusterError","Envelope","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","incomingLocalFromOutgoing","self","_tag","IncomingEnvelope","envelope","IncomingRequestLocal","respond","lastSentReply","none","exports","IncomingRequest","TaggedClass","OutgoingRequest","encodedCache","OutgoingEnvelope","interrupt","options","Interrupt","rpc","neverRpc","make","success","Never","error","payload","serialize","message","succeed","suspend","serializeRequest","serializeEnvelope","flatMap","MalformedMessage","refail","encode","PartialEncoded","payloadSchema","pipe","locally","currentContext","context","map","deserializeLocal","encoded","fail","cause","Error","decode","makeRequest"],"sources":["../../src/Message.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}