@resonatehq/sdk 0.8.5 → 0.9.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 (72) hide show
  1. package/dist/dev/network.d.ts +12 -2
  2. package/dist/dev/network.d.ts.map +1 -1
  3. package/dist/dev/network.js +14 -3
  4. package/dist/dev/network.js.map +1 -1
  5. package/dist/dev/server.d.ts.map +1 -1
  6. package/dist/dev/server.js +5 -4
  7. package/dist/dev/server.js.map +1 -1
  8. package/dist/sim/src/worker.d.ts.map +1 -1
  9. package/dist/sim/src/worker.js +22 -7
  10. package/dist/sim/src/worker.js.map +1 -1
  11. package/dist/src/computation.d.ts +9 -3
  12. package/dist/src/computation.d.ts.map +1 -1
  13. package/dist/src/computation.js +80 -31
  14. package/dist/src/computation.js.map +1 -1
  15. package/dist/src/context.d.ts +85 -28
  16. package/dist/src/context.d.ts.map +1 -1
  17. package/dist/src/context.js +172 -62
  18. package/dist/src/context.js.map +1 -1
  19. package/dist/src/coroutine.d.ts +8 -3
  20. package/dist/src/coroutine.d.ts.map +1 -1
  21. package/dist/src/coroutine.js +86 -11
  22. package/dist/src/coroutine.js.map +1 -1
  23. package/dist/src/decorator.d.ts +10 -1
  24. package/dist/src/decorator.d.ts.map +1 -1
  25. package/dist/src/decorator.js +11 -0
  26. package/dist/src/decorator.js.map +1 -1
  27. package/dist/src/exceptions.d.ts +1 -0
  28. package/dist/src/exceptions.d.ts.map +1 -1
  29. package/dist/src/exceptions.js +13 -2
  30. package/dist/src/exceptions.js.map +1 -1
  31. package/dist/src/handler.d.ts +7 -4
  32. package/dist/src/handler.d.ts.map +1 -1
  33. package/dist/src/handler.js +8 -8
  34. package/dist/src/handler.js.map +1 -1
  35. package/dist/src/network/network.d.ts +8 -1
  36. package/dist/src/network/network.d.ts.map +1 -1
  37. package/dist/src/network/remote.d.ts +7 -4
  38. package/dist/src/network/remote.d.ts.map +1 -1
  39. package/dist/src/network/remote.js +24 -18
  40. package/dist/src/network/remote.js.map +1 -1
  41. package/dist/src/options.d.ts +17 -4
  42. package/dist/src/options.d.ts.map +1 -1
  43. package/dist/src/options.js +13 -7
  44. package/dist/src/options.js.map +1 -1
  45. package/dist/src/processor/processor.d.ts +4 -4
  46. package/dist/src/processor/processor.d.ts.map +1 -1
  47. package/dist/src/processor/processor.js +19 -13
  48. package/dist/src/processor/processor.js.map +1 -1
  49. package/dist/src/resonate-inner.d.ts +12 -6
  50. package/dist/src/resonate-inner.d.ts.map +1 -1
  51. package/dist/src/resonate-inner.js +19 -8
  52. package/dist/src/resonate-inner.js.map +1 -1
  53. package/dist/src/resonate.d.ts +18 -9
  54. package/dist/src/resonate.d.ts.map +1 -1
  55. package/dist/src/resonate.js +138 -77
  56. package/dist/src/resonate.js.map +1 -1
  57. package/dist/src/retries.d.ts +47 -8
  58. package/dist/src/retries.d.ts.map +1 -1
  59. package/dist/src/retries.js +29 -1
  60. package/dist/src/retries.js.map +1 -1
  61. package/dist/src/tracer.d.ts +23 -0
  62. package/dist/src/tracer.d.ts.map +1 -0
  63. package/dist/src/tracer.js +25 -0
  64. package/dist/src/tracer.js.map +1 -0
  65. package/dist/src/types.d.ts +2 -2
  66. package/dist/src/types.d.ts.map +1 -1
  67. package/dist/src/util.d.ts +1 -0
  68. package/dist/src/util.d.ts.map +1 -1
  69. package/dist/src/util.js +13 -0
  70. package/dist/src/util.js.map +1 -1
  71. package/dist/tsconfig.build.tsbuildinfo +1 -1
  72. package/package.json +3 -3
@@ -50,32 +50,38 @@ class Computation {
50
50
  ttl;
51
51
  clock;
52
52
  unicast;
53
- anycastPreference;
54
- anycastNoPreference;
53
+ anycast;
55
54
  network;
56
55
  handler;
56
+ retries;
57
57
  registry;
58
58
  dependencies;
59
+ optsBuilder;
59
60
  verbose;
60
61
  heartbeat;
61
62
  processor;
63
+ span;
64
+ spans;
62
65
  seen = new Set();
63
66
  processing = false;
64
- constructor(id, unicast, anycastPreference, anycastNoPreference, pid, ttl, clock, network, handler, registry, heartbeat, dependencies, verbose, processor) {
67
+ constructor(id, unicast, anycast, pid, ttl, clock, network, handler, retries, registry, heartbeat, dependencies, optsBuilder, verbose, tracer, span, processor) {
65
68
  this.id = id;
66
69
  this.unicast = unicast;
67
- this.anycastPreference = anycastPreference;
68
- this.anycastNoPreference = anycastNoPreference;
70
+ this.anycast = anycast;
69
71
  this.pid = pid;
70
72
  this.ttl = ttl;
71
73
  this.clock = clock;
72
74
  this.network = network;
73
75
  this.handler = handler;
76
+ this.retries = retries;
74
77
  this.registry = registry;
75
78
  this.heartbeat = heartbeat;
76
79
  this.dependencies = dependencies;
80
+ this.optsBuilder = optsBuilder;
77
81
  this.verbose = verbose;
78
82
  this.processor = processor ?? new processor_1.AsyncProcessor();
83
+ this.span = span;
84
+ this.spans = new Map();
79
85
  }
80
86
  process(task, done) {
81
87
  // If we are already processing there is nothing to do, the
@@ -104,7 +110,7 @@ class Computation {
104
110
  return doneProcessing(true);
105
111
  }
106
112
  util.assertDefined(promise);
107
- this.processClaimed({ kind: "claimed", task: task.task, rootPromise: promise }, doneProcessing);
113
+ this.processClaimed({ kind: "claimed", task: task.task, rootPromise: promise.root, leafPromise: promise.leaf }, doneProcessing);
108
114
  });
109
115
  break;
110
116
  }
@@ -121,27 +127,19 @@ class Computation {
121
127
  }
122
128
  done(false, res);
123
129
  };
124
- if (rootPromise.param === null ||
125
- typeof rootPromise.param !== "object" ||
126
- rootPromise.param.data === null ||
127
- typeof rootPromise.param.data !== "object" ||
128
- !("func" in rootPromise.param.data) ||
129
- typeof rootPromise.param.data.func !== "string" ||
130
- !("args" in rootPromise.param.data) ||
131
- !Array.isArray(rootPromise.param.data.args) ||
132
- ("version" in rootPromise.param.data && typeof rootPromise.param.data.version !== "number")) {
130
+ if (!isValidData(rootPromise.param?.data)) {
133
131
  return doneAndDropTaskIfErr(true);
134
132
  }
135
- const { func: funcName, version = 1, args } = rootPromise.param.data;
136
- const registered = this.registry.get(funcName, version);
133
+ const { func, args, retry, version = 1 } = rootPromise.param.data;
134
+ const registered = this.registry.get(func, version);
137
135
  // function must be registered
138
136
  if (!registered) {
139
- exceptions_1.default.REGISTRY_FUNCTION_NOT_REGISTERED(funcName, version).log(this.verbose);
137
+ exceptions_1.default.REGISTRY_FUNCTION_NOT_REGISTERED(func, version).log(this.verbose);
140
138
  return doneAndDropTaskIfErr(true);
141
139
  }
142
140
  if (version !== 0)
143
141
  util.assert(version === registered.version, "versions must match");
144
- util.assert(funcName === registered.name, "names must match");
142
+ util.assert(func === registered.name, "names must match");
145
143
  // start heartbeat
146
144
  this.heartbeat.start();
147
145
  return new nursery_1.Nursery((nursery) => {
@@ -153,9 +151,29 @@ class Computation {
153
151
  nursery.done(!!err, res);
154
152
  });
155
153
  };
156
- const ctx = context_1.InnerContext.root(this.id, this.anycastNoPreference, rootPromise.timeout, util.isGeneratorFunction(registered.func) ? new retries_1.Never() : new retries_1.Exponential(), this.clock, this.dependencies);
154
+ const retryCtor = retry ? this.retries.get(retry.type) : undefined;
155
+ const retryPolicy = retryCtor
156
+ ? new retryCtor(retry?.data)
157
+ : util.isGeneratorFunction(registered.func)
158
+ ? new retries_1.Never()
159
+ : new retries_1.Exponential();
160
+ if (retry && !retryCtor) {
161
+ console.warn(`Options. Retry policy '${retry.type}' not found. Will ignore.`);
162
+ }
163
+ const ctx = new context_1.InnerContext({
164
+ id: this.id,
165
+ func: registered.func.name,
166
+ clock: this.clock,
167
+ registry: this.registry,
168
+ dependencies: this.dependencies,
169
+ optsBuilder: this.optsBuilder,
170
+ timeout: rootPromise.timeout,
171
+ version: registered.version,
172
+ retryPolicy: retryPolicy,
173
+ span: this.span,
174
+ });
157
175
  if (util.isGeneratorFunction(registered.func)) {
158
- this.processGenerator(nursery, ctx, registered.func, args, done);
176
+ this.processGenerator(nursery, ctx, registered.func, args, task, done);
159
177
  }
160
178
  else {
161
179
  this.processFunction(this.id, ctx, registered.func, args, (err, promise) => {
@@ -167,8 +185,8 @@ class Computation {
167
185
  }
168
186
  }, doneAndDropTaskIfErr);
169
187
  }
170
- processGenerator(nursery, ctx, func, args, done) {
171
- coroutine_1.Coroutine.exec(this.id, this.verbose, ctx, func, args, this.handler, (err, status) => {
188
+ processGenerator(nursery, ctx, func, args, task, done) {
189
+ coroutine_1.Coroutine.exec(this.id, this.verbose, ctx, func, args, task, this.handler, this.spans, (err, status) => {
172
190
  if (err) {
173
191
  return done(err);
174
192
  }
@@ -183,14 +201,14 @@ class Computation {
183
201
  this.processLocalTodo(nursery, status.todo.local, done);
184
202
  }
185
203
  else if (status.todo.remote.length > 0) {
186
- this.processRemoteTodo(nursery, status.todo.remote, ctx.timeout, done);
204
+ this.processRemoteTodo(nursery, status.todo.remote, status.spans, ctx.info.timeout, done);
187
205
  }
188
206
  break;
189
207
  }
190
208
  });
191
209
  }
192
210
  processFunction(id, ctx, func, args, done) {
193
- this.processor.process(id, func.name, async () => await func(ctx, ...args), (res) => this.handler.completePromise({
211
+ this.processor.process(id, ctx, async () => await func(ctx, ...args), (res) => this.handler.completePromise({
194
212
  kind: "completePromise",
195
213
  id: id,
196
214
  state: res.success ? "resolved" : "rejected",
@@ -206,16 +224,17 @@ class Computation {
206
224
  }
207
225
  util.assertDefined(res);
208
226
  done(false, res);
209
- }, func.name), ctx.retryPolicy, ctx.timeout, this.verbose);
227
+ }, func.name), this.verbose, ctx.span);
210
228
  }
211
229
  processLocalTodo(nursery, todo, done) {
212
- for (const { id, ctx, func, args } of todo) {
230
+ for (const { id, ctx, span, func, args } of todo) {
213
231
  if (this.seen.has(id)) {
214
232
  continue;
215
233
  }
216
234
  this.seen.add(id);
217
235
  nursery.hold((next) => {
218
236
  this.processFunction(id, ctx, func, args, (err) => {
237
+ span.end(this.clock.now());
219
238
  next();
220
239
  if (err) {
221
240
  this.seen.delete(id);
@@ -227,13 +246,13 @@ class Computation {
227
246
  // once all local todos are submitted we can call continue
228
247
  return nursery.cont();
229
248
  }
230
- processRemoteTodo(nursery, todo, timeout, done) {
249
+ processRemoteTodo(nursery, todo, spans, timeout, done) {
231
250
  nursery.all(todo, ({ id }, done) => this.handler.createCallback({
232
251
  kind: "createCallback",
233
252
  promiseId: id,
234
253
  rootPromiseId: this.id,
235
254
  timeout: timeout,
236
- recv: this.anycastPreference,
255
+ recv: this.anycast,
237
256
  }, (err, res) => {
238
257
  if (err) {
239
258
  err.log(this.verbose);
@@ -241,9 +260,13 @@ class Computation {
241
260
  }
242
261
  util.assertDefined(res);
243
262
  done(false, res);
244
- }), (err, results) => {
245
- if (err)
263
+ }, this.span.encode()), (err, results) => {
264
+ if (err) {
265
+ for (const span of spans) {
266
+ span.end(this.clock.now());
267
+ }
246
268
  return done(err);
269
+ }
247
270
  util.assertDefined(results);
248
271
  const callbacks = [];
249
272
  for (const res of results) {
@@ -256,10 +279,36 @@ class Computation {
256
279
  break;
257
280
  }
258
281
  }
282
+ for (const span of spans) {
283
+ span.end(this.clock.now());
284
+ }
259
285
  // once all callbacks are created we can call done
260
286
  return done(false, { kind: "suspended", callbacks });
261
287
  });
262
288
  }
263
289
  }
264
290
  exports.Computation = Computation;
291
+ // Helper functions
292
+ function isValidData(data) {
293
+ if (data === null || typeof data !== "object")
294
+ return false;
295
+ const d = data;
296
+ // func must be a string
297
+ if (typeof d.func !== "string")
298
+ return false;
299
+ // args must be an array
300
+ if (!Array.isArray(d.args))
301
+ return false;
302
+ // retry (if present) must be an object with string `type` and any `data`
303
+ if (d.retry !== undefined) {
304
+ if (d.retry === null || typeof d.retry !== "object" || typeof d.retry.type !== "string" || !("data" in d.retry)) {
305
+ return false;
306
+ }
307
+ }
308
+ // version (if present) must be a number
309
+ if (d.version !== undefined && typeof d.version !== "number") {
310
+ return false;
311
+ }
312
+ return true;
313
+ }
265
314
  //# sourceMappingURL=computation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"computation.js","sourceRoot":"","sources":["../../src/computation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"computation.js","sourceRoot":"","sources":["../../src/computation.ts"],"names":[],"mappings":"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"}
@@ -1,40 +1,55 @@
1
1
  import type { Clock } from "./clock";
2
+ import { type ResonateError } from "./exceptions";
2
3
  import type { CreatePromiseReq } from "./network/network";
3
- import { Options } from "./options";
4
+ import type { Options, OptionsBuilder } from "./options";
5
+ import type { Registry } from "./registry";
4
6
  import { type RetryPolicy } from "./retries";
7
+ import type { Span } from "./tracer";
5
8
  import type { Func, ParamsWithOptions, Result, Return } from "./types";
6
9
  export declare class LFI<T> implements Iterable<LFI<T>> {
7
10
  id: string;
8
11
  func: Func;
9
12
  args: any[];
13
+ version: number;
10
14
  retryPolicy: RetryPolicy;
11
15
  createReq: CreatePromiseReq<any>;
12
- constructor(id: string, func: Func, args: any[], retryPolicy: RetryPolicy, createReq: CreatePromiseReq<any>);
16
+ constructor(id: string, func: Func, args: any[], version: number, retryPolicy: RetryPolicy, createReq: CreatePromiseReq<any>);
13
17
  [Symbol.iterator](): Generator<LFI<T>, Future<T>, any>;
14
18
  }
15
19
  export declare class LFC<T> implements Iterable<LFC<T>> {
16
20
  id: string;
17
21
  func: Func;
18
22
  args: any[];
23
+ version: number;
19
24
  retryPolicy: RetryPolicy;
20
25
  createReq: CreatePromiseReq;
21
- constructor(id: string, func: Func, args: any[], retryPolicy: RetryPolicy, createReq: CreatePromiseReq);
26
+ constructor(id: string, func: Func, args: any[], version: number, retryPolicy: RetryPolicy, createReq: CreatePromiseReq);
22
27
  [Symbol.iterator](): Generator<LFC<T>, T, any>;
23
28
  }
24
29
  export declare class RFI<T> implements Iterable<RFI<T>> {
25
30
  id: string;
31
+ func: string;
32
+ version: number;
26
33
  createReq: CreatePromiseReq;
27
34
  mode: "attached" | "detached";
28
- constructor(id: string, createReq: CreatePromiseReq, mode?: "attached" | "detached");
35
+ constructor(id: string, func: string, version: number, createReq: CreatePromiseReq, mode?: "attached" | "detached");
29
36
  [Symbol.iterator](): Generator<RFI<T>, Future<T>, any>;
30
37
  }
31
38
  export declare class RFC<T> implements Iterable<RFC<T>> {
32
39
  id: string;
40
+ func: string;
41
+ version: number;
33
42
  createReq: CreatePromiseReq;
34
43
  mode: "attached";
35
- constructor(id: string, createReq: CreatePromiseReq);
44
+ constructor(id: string, func: string, version: number, createReq: CreatePromiseReq);
36
45
  [Symbol.iterator](): Generator<RFC<T>, T, any>;
37
46
  }
47
+ export declare class DIE implements Iterable<DIE> {
48
+ condition: boolean;
49
+ error: ResonateError;
50
+ constructor(condition: boolean, error: ResonateError);
51
+ [Symbol.iterator](): Generator<DIE, void, any>;
52
+ }
38
53
  export declare class Future<T> implements Iterable<Future<T>> {
39
54
  id: string;
40
55
  private readonly value?;
@@ -46,23 +61,29 @@ export declare class Future<T> implements Iterable<Future<T>> {
46
61
  }
47
62
  export interface Context {
48
63
  readonly id: string;
49
- readonly timeout: number;
64
+ readonly info: {
65
+ readonly attempt: number;
66
+ readonly timeout: number;
67
+ readonly version: number;
68
+ };
50
69
  lfi<F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFI<Return<F>>;
70
+ lfi<T>(func: string, ...args: any[]): LFI<T>;
51
71
  lfc<F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFC<Return<F>>;
72
+ lfc<T>(func: string, ...args: any[]): LFC<T>;
52
73
  rfi<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
53
74
  rfi<T>(func: string, ...args: any[]): RFI<T>;
54
- rfi(func: Func | string, ...args: any[]): RFI<any>;
55
75
  rfc<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFC<Return<F>>;
56
76
  rfc<T>(func: string, ...args: any[]): RFC<T>;
57
- rfc(func: Func | string, ...args: any[]): RFC<any>;
58
77
  beginRun<F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFI<Return<F>>;
78
+ beginRun<T>(func: string, ...args: any[]): LFI<T>;
59
79
  run<F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFC<Return<F>>;
80
+ run<T>(func: string, ...args: any[]): LFC<T>;
60
81
  beginRpc<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
61
82
  beginRpc<T>(func: string, ...args: any[]): RFI<T>;
62
- beginRpc(func: Func | string, ...args: any[]): RFI<any>;
63
83
  rpc<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFC<Return<F>>;
64
84
  rpc<T>(func: string, ...args: any[]): RFC<T>;
65
- rpc(func: Func | string, ...args: any[]): RFC<any>;
85
+ detached<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
86
+ detached<T>(func: string, ...args: any[]): RFI<T>;
66
87
  sleep(ms: number): RFC<void>;
67
88
  sleep(opts: {
68
89
  for?: number;
@@ -72,17 +93,17 @@ export interface Context {
72
93
  for?: number;
73
94
  until?: Date;
74
95
  }): RFC<void>;
75
- promise<T>({ id, timeout, data, tags, }?: {
96
+ promise<T>(): RFI<T>;
97
+ promise<T>({ id, timeout, data, tags, }: {
76
98
  id?: string;
77
99
  timeout?: number;
78
100
  data?: any;
79
101
  tags?: Record<string, string>;
80
102
  }): RFI<T>;
81
- detached<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
82
- detached<T>(func: string, ...args: any[]): RFI<T>;
83
- detached(func: Func | string, ...args: any[]): RFI<any>;
103
+ panic(condition: boolean, msg?: string): DIE;
104
+ assert(condition: boolean, msg?: string): DIE;
84
105
  getDependency<T = any>(key: string): T | undefined;
85
- options(opts: Partial<Options>): Options;
106
+ options(opts?: Partial<Options>): Options;
86
107
  date: ResonateDate;
87
108
  math: ResonateMath;
88
109
  }
@@ -94,33 +115,69 @@ export interface ResonateMath {
94
115
  }
95
116
  export declare class InnerContext implements Context {
96
117
  readonly id: string;
97
- readonly timeout: number;
118
+ readonly info: {
119
+ attempt: number;
120
+ readonly timeout: number;
121
+ readonly version: number;
122
+ };
123
+ readonly func: string;
98
124
  readonly retryPolicy: RetryPolicy;
99
125
  private rId;
100
126
  private pId;
101
- private clock;
102
- private anycastNoPreference;
127
+ readonly clock: Clock;
128
+ readonly span: Span;
129
+ private registry;
103
130
  private dependencies;
131
+ private optsBuilder;
104
132
  private seq;
105
- run: <F extends Func>(func: F, ...args: ParamsWithOptions<F>) => LFC<Return<F>>;
133
+ run: {
134
+ <F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFC<Return<F>>;
135
+ <T>(func: string, ...args: any[]): LFC<T>;
136
+ };
106
137
  rpc: {
107
138
  <F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFC<Return<F>>;
108
139
  <T>(func: string, ...args: any[]): RFC<T>;
109
140
  };
110
- beginRun: <F extends Func>(func: F, ...args: ParamsWithOptions<F>) => LFI<Return<F>>;
141
+ beginRun: {
142
+ <F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFI<Return<F>>;
143
+ <T>(func: string, ...args: any[]): LFI<T>;
144
+ };
111
145
  beginRpc: {
112
146
  <F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
113
147
  <T>(func: string, ...args: any[]): RFI<T>;
114
148
  };
115
- private constructor();
116
- static root(id: string, anycastNoPreference: string, timeout: number, retryPolicy: RetryPolicy, clock: Clock, dependencies: Map<string, any>): InnerContext;
117
- child(id: string, timeout: number, retryPolicy: RetryPolicy): InnerContext;
149
+ constructor({ id, rId, pId, func, clock, registry, dependencies, optsBuilder, timeout, version, retryPolicy, span, }: {
150
+ id: string;
151
+ rId?: string;
152
+ pId?: string;
153
+ func: string;
154
+ clock: Clock;
155
+ registry: Registry;
156
+ dependencies: Map<string, any>;
157
+ optsBuilder: OptionsBuilder;
158
+ timeout: number;
159
+ version: number;
160
+ retryPolicy: RetryPolicy;
161
+ span: Span;
162
+ });
163
+ child({ id, func, timeout, version, retryPolicy, span, }: {
164
+ id: string;
165
+ func: string;
166
+ timeout: number;
167
+ version: number;
168
+ retryPolicy: RetryPolicy;
169
+ span: Span;
170
+ }): InnerContext;
118
171
  lfi<F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFI<Return<F>>;
172
+ lfi<T>(func: string, ...args: any[]): LFI<T>;
119
173
  lfc<F extends Func>(func: F, ...args: ParamsWithOptions<F>): LFC<Return<F>>;
174
+ lfc<T>(func: string, ...args: any[]): LFC<T>;
120
175
  rfi<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
121
176
  rfi<T>(func: string, ...args: any[]): RFI<T>;
122
177
  rfc<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFC<Return<F>>;
123
178
  rfc<T>(func: string, ...args: any[]): RFC<T>;
179
+ detached<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
180
+ detached<T>(func: string, ...args: any[]): RFI<T>;
124
181
  promise<T>({ id, timeout, data, tags, }?: {
125
182
  id?: string;
126
183
  timeout?: number;
@@ -131,18 +188,18 @@ export declare class InnerContext implements Context {
131
188
  for?: number;
132
189
  until?: Date;
133
190
  }): RFC<void>;
134
- detached<F extends Func>(func: F, ...args: ParamsWithOptions<F>): RFI<Return<F>>;
135
- detached<T>(func: string, ...args: any[]): RFI<T>;
191
+ panic(condition: boolean, msg?: string): DIE;
192
+ assert(condition: boolean, msg?: string): DIE;
136
193
  getDependency<T = any>(name: string): T | undefined;
137
- options(opts?: Partial<Options>): Options;
194
+ options(opts?: Partial<Pick<Options, "id" | "tags" | "target" | "timeout" | "version" | "retryPolicy">>): Options;
138
195
  readonly date: {
139
196
  now: () => LFC<number>;
140
197
  };
141
198
  readonly math: {
142
199
  random: () => LFC<number>;
143
200
  };
144
- localCreateReq(opts: Options): CreatePromiseReq;
145
- remoteCreateReq(data: any, opts: Options, maxTimeout?: number): CreatePromiseReq;
201
+ localCreateReq(id: string, data: any, opts: Options): CreatePromiseReq;
202
+ remoteCreateReq(id: string, data: any, opts: Options, maxTimeout?: number): CreatePromiseReq;
146
203
  latentCreateOpts(id: string, timeout?: number, data?: any, tags?: Record<string, string>): CreatePromiseReq;
147
204
  sleepCreateOpts(id: string, time: number): CreatePromiseReq;
148
205
  seqid(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/context.ts"],"names":[],"mappings":"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"}