@temporalio/workflow 0.21.0 → 1.0.0-rc.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.
package/README.md CHANGED
@@ -2,8 +2,8 @@
2
2
 
3
3
  [![NPM](https://img.shields.io/npm/v/@temporalio/workflow?style=for-the-badge)](https://www.npmjs.com/package/@temporalio/workflow)
4
4
 
5
- Part of [Temporal](https://temporal.io)'s [TypeScript SDK](https://docs.temporal.io/docs/typescript/introduction/).
5
+ Part of [Temporal](https://temporal.io)'s [TypeScript SDK](https://docs.temporal.io/typescript/introduction/).
6
6
 
7
- - [Workflow docs](https://docs.temporal.io/docs/typescript/workflows)
7
+ - [Workflow docs](https://docs.temporal.io/typescript/workflows)
8
8
  - [API reference](https://typescript.temporal.io/api/namespaces/workflow)
9
9
  - [Sample projects](https://github.com/temporalio/samples-typescript)
@@ -14,6 +14,7 @@ var _CancellationScope_cancelRequested;
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
15
  exports.registerSleepImplementation = exports.ROOT_SCOPE = exports.RootCancellationScope = exports.storage = exports.CancellationScope = exports.AsyncLocalStorage = void 0;
16
16
  const common_1 = require("@temporalio/common");
17
+ const stack_helpers_1 = require("./stack-helpers");
17
18
  // AsyncLocalStorage is injected via vm module into global scope.
18
19
  // In case Workflow code is imported in Node.js context, replace with an empty class.
19
20
  exports.AsyncLocalStorage = globalThis.AsyncLocalStorage ?? class {
@@ -69,8 +70,9 @@ class CancellationScope {
69
70
  reject(err);
70
71
  };
71
72
  });
73
+ (0, stack_helpers_1.untrackPromise)(this.cancelRequested);
72
74
  // Avoid unhandled rejections
73
- this.cancelRequested.catch(() => undefined);
75
+ (0, stack_helpers_1.untrackPromise)(this.cancelRequested.catch(() => undefined));
74
76
  if (options?.parent !== NO_PARENT) {
75
77
  this.parent = options?.parent || CancellationScope.current();
76
78
  __classPrivateFieldSet(this, _CancellationScope_cancelRequested, __classPrivateFieldGet(this.parent, _CancellationScope_cancelRequested, "f"), "f");
@@ -100,7 +102,9 @@ class CancellationScope {
100
102
  */
101
103
  async runInContext(fn) {
102
104
  if (this.timeout) {
103
- sleep(this.timeout).then(() => this.cancel());
105
+ (0, stack_helpers_1.untrackPromise)(sleep(this.timeout).then(() => this.cancel(), () => {
106
+ // scope was already cancelled, ignore
107
+ }));
104
108
  }
105
109
  return await fn();
106
110
  }
@@ -1 +1 @@
1
- {"version":3,"file":"cancellation-scope.js","sourceRoot":"","sources":["../src/cancellation-scope.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cancellation-scope.js","sourceRoot":"","sources":["../src/cancellation-scope.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -2,12 +2,12 @@
2
2
  * This library provides tools required for authoring workflows.
3
3
  *
4
4
  * ## Usage
5
- * See the [tutorial](https://docs.temporal.io/docs/typescript/hello-world#workflows) for writing your first workflow.
5
+ * See the [tutorial](https://docs.temporal.io/typescript/hello-world#workflows) for writing your first workflow.
6
6
  *
7
7
  * ### Timers
8
8
  *
9
9
  * The recommended way of scheduling timers is by using the {@link sleep} function.
10
- * We've replaced `setTimeout` and `clearTimeout` with deterministic versions so these are also usable but have a limitation that they don't play well with [cancellation scopes](https://docs.temporal.io/docs/typescript/workflow-scopes-and-cancellation).
10
+ * We've replaced `setTimeout` and `clearTimeout` with deterministic versions so these are also usable but have a limitation that they don't play well with [cancellation scopes](https://docs.temporal.io/typescript/workflow-scopes-and-cancellation).
11
11
  *
12
12
  * <!--SNIPSTART typescript-sleep-workflow-->
13
13
  * <!--SNIPEND-->
@@ -35,11 +35,11 @@
35
35
  * ### Deterministic built-ins
36
36
  * It is safe to call `Math.random()` and `Date()` in workflow code as they are replaced with deterministic versions. We also provide a deterministic {@link uuid4} function for convenience.
37
37
  *
38
- * ### [Cancellation and scopes](https://docs.temporal.io/docs/typescript/workflow-scopes-and-cancellation)
38
+ * ### [Cancellation and scopes](https://docs.temporal.io/typescript/workflow-scopes-and-cancellation)
39
39
  * - {@link CancellationScope}
40
40
  * - {@link Trigger}
41
41
  *
42
- * ### [Sinks](https://docs.temporal.io/docs/typescript/sinks)
42
+ * ### [Sinks](https://docs.temporal.io/typescript/sinks)
43
43
  * - {@link Sinks}
44
44
  *
45
45
  * @module
@@ -51,7 +51,7 @@ export * from '@temporalio/internal-workflow-common/lib/workflow-options';
51
51
  export { AsyncLocalStorage, CancellationScope, CancellationScopeOptions, ROOT_SCOPE } from './cancellation-scope';
52
52
  export * from './errors';
53
53
  export * from './interceptors';
54
- export { ChildWorkflowCancellationType, ChildWorkflowOptions, ContinueAsNew, ContinueAsNewOptions, ParentClosePolicy, WorkflowInfo, } from './interfaces';
54
+ export { ChildWorkflowCancellationType, ChildWorkflowOptions, ContinueAsNew, ContinueAsNewOptions, ParentClosePolicy, ParentWorkflowInfo, WorkflowInfo, } from './interfaces';
55
55
  export { Sink, SinkCall, SinkFunction, Sinks } from './sinks';
56
56
  export { Trigger } from './trigger';
57
57
  export * from './workflow';
package/lib/index.js CHANGED
@@ -3,12 +3,12 @@
3
3
  * This library provides tools required for authoring workflows.
4
4
  *
5
5
  * ## Usage
6
- * See the [tutorial](https://docs.temporal.io/docs/typescript/hello-world#workflows) for writing your first workflow.
6
+ * See the [tutorial](https://docs.temporal.io/typescript/hello-world#workflows) for writing your first workflow.
7
7
  *
8
8
  * ### Timers
9
9
  *
10
10
  * The recommended way of scheduling timers is by using the {@link sleep} function.
11
- * We've replaced `setTimeout` and `clearTimeout` with deterministic versions so these are also usable but have a limitation that they don't play well with [cancellation scopes](https://docs.temporal.io/docs/typescript/workflow-scopes-and-cancellation).
11
+ * We've replaced `setTimeout` and `clearTimeout` with deterministic versions so these are also usable but have a limitation that they don't play well with [cancellation scopes](https://docs.temporal.io/typescript/workflow-scopes-and-cancellation).
12
12
  *
13
13
  * <!--SNIPSTART typescript-sleep-workflow-->
14
14
  * <!--SNIPEND-->
@@ -36,11 +36,11 @@
36
36
  * ### Deterministic built-ins
37
37
  * It is safe to call `Math.random()` and `Date()` in workflow code as they are replaced with deterministic versions. We also provide a deterministic {@link uuid4} function for convenience.
38
38
  *
39
- * ### [Cancellation and scopes](https://docs.temporal.io/docs/typescript/workflow-scopes-and-cancellation)
39
+ * ### [Cancellation and scopes](https://docs.temporal.io/typescript/workflow-scopes-and-cancellation)
40
40
  * - {@link CancellationScope}
41
41
  * - {@link Trigger}
42
42
  *
43
- * ### [Sinks](https://docs.temporal.io/docs/typescript/sinks)
43
+ * ### [Sinks](https://docs.temporal.io/typescript/sinks)
44
44
  * - {@link Sinks}
45
45
  *
46
46
  * @module
package/lib/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;;;;;;;;;;;;;;;;;AAEH,6CAY4B;AAX1B,yGAAA,eAAe,OAAA;AACf,4GAAA,kBAAkB,OAAA;AAClB,0GAAA,gBAAgB,OAAA;AAChB,8GAAA,oBAAoB,OAAA;AACpB,iHAAA,uBAAuB,OAAA;AAEvB,mGAAA,SAAS,OAAA;AACT,uGAAA,aAAa,OAAA;AACb,yGAAA,eAAe,OAAA;AACf,2GAAA,iBAAiB,OAAA;AACjB,wGAAA,cAAc,OAAA;AAEhB,iFAQ8C;AAP5C,oIAAA,wBAAwB,OAAA;AAIxB,6HAAA,iBAAiB,OAAA;AAEjB,sHAAA,UAAU,OAAA;AAEZ,sFAAoE;AACpE,4FAA0E;AAC1E,2DAAkH;AAAzG,uHAAA,iBAAiB,OAAA;AAAE,uHAAA,iBAAiB,OAAA;AAA4B,gHAAA,UAAU,OAAA;AACnF,2CAAyB;AACzB,iDAA+B;AAC/B,2CAOsB;AANpB,2HAAA,6BAA6B,OAAA;AAE7B,2GAAA,aAAa,OAAA;AAEb,+GAAA,iBAAiB,OAAA;AAInB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,6CAA2B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;;;;;;;;;;;;;;;;;AAEH,6CAY4B;AAX1B,yGAAA,eAAe,OAAA;AACf,4GAAA,kBAAkB,OAAA;AAClB,0GAAA,gBAAgB,OAAA;AAChB,8GAAA,oBAAoB,OAAA;AACpB,iHAAA,uBAAuB,OAAA;AAEvB,mGAAA,SAAS,OAAA;AACT,uGAAA,aAAa,OAAA;AACb,yGAAA,eAAe,OAAA;AACf,2GAAA,iBAAiB,OAAA;AACjB,wGAAA,cAAc,OAAA;AAEhB,iFAQ8C;AAP5C,oIAAA,wBAAwB,OAAA;AAIxB,6HAAA,iBAAiB,OAAA;AAEjB,sHAAA,UAAU,OAAA;AAEZ,sFAAoE;AACpE,4FAA0E;AAC1E,2DAAkH;AAAzG,uHAAA,iBAAiB,OAAA;AAAE,uHAAA,iBAAiB,OAAA;AAA4B,gHAAA,UAAU,OAAA;AACnF,2CAAyB;AACzB,iDAA+B;AAC/B,2CAQsB;AAPpB,2HAAA,6BAA6B,OAAA;AAE7B,2GAAA,aAAa,OAAA;AAEb,+GAAA,iBAAiB,OAAA;AAKnB,qCAAoC;AAA3B,kGAAA,OAAO,OAAA;AAChB,6CAA2B"}
@@ -7,14 +7,9 @@
7
7
  */
8
8
  import { WorkflowExecution } from '@temporalio/common';
9
9
  import { ActivityOptions, Headers, LocalActivityOptions, Next, Timestamp } from '@temporalio/internal-workflow-common';
10
- import type { coresdk } from '@temporalio/proto/lib/coresdk';
10
+ import type { coresdk } from '@temporalio/proto';
11
11
  import { ChildWorkflowOptionsWithDefaults, ContinueAsNewOptions } from './interfaces';
12
12
  export { Next, Headers };
13
- /** Input for WorkflowInboundCallsInterceptor.create */
14
- export interface WorkflowCreateInput {
15
- readonly args: unknown[];
16
- readonly headers: Headers;
17
- }
18
13
  /** Input for WorkflowInboundCallsInterceptor.execute */
19
14
  export interface WorkflowExecuteInput {
20
15
  readonly args: unknown[];
@@ -24,12 +19,14 @@ export interface WorkflowExecuteInput {
24
19
  export interface SignalInput {
25
20
  readonly signalName: string;
26
21
  readonly args: unknown[];
22
+ readonly headers: Headers;
27
23
  }
28
24
  /** Input for WorkflowInboundCallsInterceptor.handleQuery */
29
25
  export interface QueryInput {
30
26
  readonly queryId: string;
31
27
  readonly queryName: string;
32
28
  readonly args: unknown[];
29
+ readonly headers: Headers;
33
30
  }
34
31
  /**
35
32
  * Implement any of these methods to intercept Workflow inbound calls like execution, and signal and query handling.
@@ -86,21 +83,22 @@ export interface TimerInput {
86
83
  export declare type ContinueAsNewInputOptions = ContinueAsNewOptions & Required<Pick<ContinueAsNewOptions, 'workflowType'>>;
87
84
  /** Input for WorkflowOutboundCallsInterceptor.continueAsNew */
88
85
  export interface ContinueAsNewInput {
89
- args: unknown[];
90
- headers: Headers;
91
- options: ContinueAsNewInputOptions;
86
+ readonly args: unknown[];
87
+ readonly headers: Headers;
88
+ readonly options: ContinueAsNewInputOptions;
92
89
  }
93
90
  /** Input for WorkflowOutboundCallsInterceptor.signalWorkflow */
94
91
  export interface SignalWorkflowInput {
95
- seq: number;
96
- signalName: string;
97
- args: unknown[];
98
- target: {
99
- type: 'external';
100
- workflowExecution: WorkflowExecution;
92
+ readonly seq: number;
93
+ readonly signalName: string;
94
+ readonly args: unknown[];
95
+ readonly headers: Headers;
96
+ readonly target: {
97
+ readonly type: 'external';
98
+ readonly workflowExecution: WorkflowExecution;
101
99
  } | {
102
- type: 'child';
103
- childWorkflowId: string;
100
+ readonly type: 'child';
101
+ readonly childWorkflowId: string;
104
102
  };
105
103
  }
106
104
  /**
@@ -157,12 +155,14 @@ export interface DisposeInput {
157
155
  * Interceptor for the internals of the Workflow runtime.
158
156
  *
159
157
  * Use to manipulate or trace Workflow activations.
158
+ *
159
+ * @experimental
160
160
  */
161
161
  export interface WorkflowInternalsInterceptor {
162
162
  /**
163
163
  * Called when the Workflow runtime runs a WorkflowActivationJob.
164
164
  */
165
- activate?(input: ActivateInput, next: Next<this, 'activate'>): Promise<void>;
165
+ activate?(input: ActivateInput, next: Next<this, 'activate'>): void;
166
166
  /**
167
167
  * Called after all `WorkflowActivationJob`s have been processed for an activation.
168
168
  *
@@ -1,7 +1,8 @@
1
- import type { coresdk } from '@temporalio/proto/lib/coresdk';
2
- import { CommonWorkflowOptions } from '@temporalio/internal-workflow-common';
1
+ import { RetryPolicy, TemporalFailure } from '@temporalio/common';
2
+ import { CommonWorkflowOptions, SearchAttributes } from '@temporalio/internal-workflow-common';
3
+ import type { coresdk } from '@temporalio/proto';
3
4
  /**
4
- * Workflow execution information
5
+ * Workflow Execution information
5
6
  */
6
7
  export interface WorkflowInfo {
7
8
  /**
@@ -14,21 +15,87 @@ export interface WorkflowInfo {
14
15
  */
15
16
  runId: string;
16
17
  /**
17
- * Filename containing the Workflow code
18
+ * Workflow function's name
18
19
  */
19
20
  workflowType: string;
20
21
  /**
21
- * Namespace this Workflow is scheduled in
22
+ * Indexed information attached to the Workflow Execution
22
23
  */
23
- namespace: string;
24
+ searchAttributes?: SearchAttributes;
25
+ /**
26
+ * Non-indexed information attached to the Workflow Execution
27
+ */
28
+ memo?: Record<string, unknown>;
29
+ /**
30
+ * Parent Workflow info (present if this is a Child Workflow)
31
+ */
32
+ parent?: ParentWorkflowInfo;
33
+ /**
34
+ * Result from the previous Run (present if this is a Cron Workflow or was Continued As New).
35
+ *
36
+ * An array of values, since other SDKs may return multiple values from a Workflow.
37
+ */
38
+ lastResult?: unknown;
39
+ /**
40
+ * Failure from the previous Run (present when this Run is a retry, or the last Run of a Cron Workflow failed)
41
+ */
42
+ lastFailure?: TemporalFailure;
24
43
  /**
25
- * Task queue this Workflow is scheduled in
44
+ * Task queue this Workflow is executing on
26
45
  */
27
46
  taskQueue: string;
28
47
  /**
29
- * Whether a Workflow is replaying history or processing new events
48
+ * Namespace this Workflow is executing in
49
+ */
50
+ namespace: string;
51
+ /**
52
+ * Run Id of the first Run in this Execution Chain
53
+ */
54
+ firstExecutionRunId: string;
55
+ /**
56
+ * The last Run Id in this Execution Chain
57
+ */
58
+ continuedFromExecutionRunId?: string;
59
+ /**
60
+ * Time at which the Workflow Run started
61
+ */
62
+ /**
63
+ * Milliseconds after which the Workflow Execution is automatically terminated by Temporal Server. Set via {@link WorkflowOptions.workflowExecutionTimeout}.
30
64
  */
31
- isReplaying: boolean;
65
+ executionTimeoutMs?: number;
66
+ /**
67
+ * Time at which the Workflow Execution expires
68
+ */
69
+ executionExpirationTime?: Date;
70
+ /**
71
+ * Milliseconds after which the Workflow Run is automatically terminated by Temporal Server. Set via {@link WorkflowOptions.workflowRunTimeout}.
72
+ */
73
+ runTimeoutMs?: number;
74
+ /**
75
+ * Maximum execution time of a Workflow Task in milliseconds. Set via {@link WorkflowOptions.workflowTaskTimeout}.
76
+ */
77
+ taskTimeoutMs: number;
78
+ /**
79
+ * Retry Policy for this Execution. Set via {@link WorkflowOptions.retry}.
80
+ */
81
+ retryPolicy?: RetryPolicy;
82
+ /**
83
+ * Starts at 1 and increments for every retry if there is a `retryPolicy`
84
+ */
85
+ attempt: number;
86
+ /**
87
+ * Cron Schedule for this Execution. Set via {@link WorkflowOptions.cronSchedule}.
88
+ */
89
+ cronSchedule?: string;
90
+ /**
91
+ * Milliseconds between Cron Runs
92
+ */
93
+ cronScheduleToScheduleInterval?: number;
94
+ }
95
+ export interface ParentWorkflowInfo {
96
+ workflowId: string;
97
+ runId: string;
98
+ namespace: string;
32
99
  }
33
100
  /**
34
101
  * Not an actual error, used by the Workflow runtime to abort execution when {@link continueAsNew} is called
@@ -67,7 +134,7 @@ export interface ContinueAsNewOptions {
67
134
  /**
68
135
  * Searchable attributes to attach to next Workflow run
69
136
  */
70
- searchAttributes?: Record<string, any>;
137
+ searchAttributes?: SearchAttributes;
71
138
  }
72
139
  export declare enum ChildWorkflowCancellationType {
73
140
  ABANDON = 0,
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AAEA,mFAAoE;AAqCpE;;GAEG;AACH,MAAa,aAAc,SAAQ,KAAK;IAGtC,YAA4B,OAAkE;QAC5F,KAAK,CAAC,2BAA2B,CAAC,CAAC;QADT,YAAO,GAAP,OAAO,CAA2D;QAF9E,SAAI,GAAG,eAAe,CAAC;IAIvC,CAAC;CACF;AAND,sCAMC;AAkCD,IAAY,6BAKX;AALD,WAAY,6BAA6B;IACvC,uFAAW,CAAA;IACX,6FAAc,CAAA;IACd,+HAA+B,CAAA;IAC/B,+HAA+B,CAAA;AACjC,CAAC,EALW,6BAA6B,GAA7B,qCAA6B,KAA7B,qCAA6B,QAKxC;AAED,IAAA,uCAAY,GAAuF,CAAC;AAEpG,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,+GAAmC,CAAA;IACnC,2GAAiC,CAAA;IACjC,uGAA+B,CAAA;IAC/B,qHAAsC,CAAA;AACxC,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAED,IAAA,uCAAY,GAA+D,CAAC"}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../src/interfaces.ts"],"names":[],"mappings":";;;AACA,mFAA6G;AA2H7G;;GAEG;AACH,MAAa,aAAc,SAAQ,KAAK;IAGtC,YAA4B,OAAkE;QAC5F,KAAK,CAAC,2BAA2B,CAAC,CAAC;QADT,YAAO,GAAP,OAAO,CAA2D;QAF9E,SAAI,GAAG,eAAe,CAAC;IAIvC,CAAC;CACF;AAND,sCAMC;AAkCD,IAAY,6BAKX;AALD,WAAY,6BAA6B;IACvC,uFAAW,CAAA;IACX,6FAAc,CAAA;IACd,+HAA+B,CAAA;IAC/B,+HAA+B,CAAA;AACjC,CAAC,EALW,6BAA6B,GAA7B,qCAA6B,KAA7B,qCAA6B,QAKxC;AAED,IAAA,uCAAY,GAAuF,CAAC;AAEpG,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,+GAAmC,CAAA;IACnC,2GAAiC,CAAA;IACjC,uGAA+B,CAAA;IAC/B,qHAAsC,CAAA;AACxC,CAAC,EALW,iBAAiB,GAAjB,yBAAiB,KAAjB,yBAAiB,QAK5B;AAED,IAAA,uCAAY,GAA+D,CAAC"}
@@ -1,10 +1,17 @@
1
1
  import { PayloadConverter } from '@temporalio/common';
2
2
  import { Workflow, WorkflowQueryType, WorkflowSignalType } from '@temporalio/internal-workflow-common';
3
- import type { coresdk } from '@temporalio/proto/lib/coresdk';
3
+ import type { coresdk } from '@temporalio/proto';
4
4
  import { RNG } from './alea';
5
5
  import { QueryInput, SignalInput, WorkflowExecuteInput, WorkflowInterceptors, WorkflowInterceptorsFactory } from './interceptors';
6
6
  import { WorkflowInfo } from './interfaces';
7
7
  import { SinkCall } from './sinks';
8
+ /**
9
+ * Global store to track promise stacks for stack trace query
10
+ */
11
+ export interface PromiseStackStore {
12
+ childToParent: Map<Promise<unknown>, Set<Promise<unknown>>>;
13
+ promiseToStack: Map<Promise<unknown>, string>;
14
+ }
8
15
  export declare type ResolveFunction<T = any> = (val: T) => any;
9
16
  export declare type RejectFunction<E = any> = (val: E) => any;
10
17
  export interface Completion {
@@ -89,7 +96,7 @@ export declare class State {
89
96
  */
90
97
  readonly signalHandlers: Map<string, WorkflowSignalType>;
91
98
  /**
92
- * Mapping of signal name to handler
99
+ * Mapping of query name to handler
93
100
  */
94
101
  readonly queryHandlers: Map<string, WorkflowQueryType>;
95
102
  /**
@@ -100,7 +107,6 @@ export declare class State {
100
107
  * Buffer that stores all generated commands, reset after each activation
101
108
  */
102
109
  commands: coresdk.workflow_commands.IWorkflowCommand[];
103
- /**
104
110
  /**
105
111
  * Stores all {@link condition}s that haven't been unblocked yet
106
112
  */
@@ -127,6 +133,7 @@ export declare class State {
127
133
  signalWorkflow: number;
128
134
  cancelWorkflow: number;
129
135
  condition: number;
136
+ stack: number;
130
137
  };
131
138
  get now(): number;
132
139
  set now(value: number);
@@ -138,6 +145,14 @@ export declare class State {
138
145
  * Information about the current Workflow
139
146
  */
140
147
  info?: WorkflowInfo;
148
+ /**
149
+ * Whether a Workflow is replaying history or processing new events
150
+ */
151
+ isReplaying?: boolean;
152
+ /**
153
+ * ID of last WorkflowTaskStarted event
154
+ */
155
+ historyLength?: number;
141
156
  /**
142
157
  * A deterministic RNG, used by the isolate's overridden Math.random
143
158
  */
package/lib/internals.js CHANGED
@@ -19,6 +19,7 @@ const alea_1 = require("./alea");
19
19
  const cancellation_scope_1 = require("./cancellation-scope");
20
20
  const errors_1 = require("./errors");
21
21
  const interfaces_1 = require("./interfaces");
22
+ const stack_helpers_1 = require("./stack-helpers");
22
23
  var StartChildWorkflowExecutionFailedCause;
23
24
  (function (StartChildWorkflowExecutionFailedCause) {
24
25
  StartChildWorkflowExecutionFailedCause[StartChildWorkflowExecutionFailedCause["START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_UNSPECIFIED"] = 0] = "START_CHILD_WORKFLOW_EXECUTION_FAILED_CAUSE_UNSPECIFIED";
@@ -66,12 +67,10 @@ class Activator {
66
67
  throw new internal_workflow_common_1.IllegalStateError('Workflow has not been initialized');
67
68
  }
68
69
  const execute = (0, internal_workflow_common_1.composeInterceptors)(exports.state.interceptors.inbound, 'execute', this.startWorkflowNextHandler.bind(this));
69
- execute({
70
+ (0, stack_helpers_1.untrackPromise)(execute({
70
71
  headers: activation.headers ?? {},
71
72
  args: (0, common_1.arrayFromPayloads)(exports.state.payloadConverter, activation.arguments),
72
- })
73
- .then(completeWorkflow)
74
- .catch(handleWorkflowFailure);
73
+ }).then(completeWorkflow, handleWorkflowFailure));
75
74
  }
76
75
  cancelWorkflow(_activation) {
77
76
  exports.state.cancelled = true;
@@ -157,24 +156,30 @@ class Activator {
157
156
  reject((0, common_1.failureToError)(failure, exports.state.payloadConverter));
158
157
  }
159
158
  }
160
- async queryWorkflowNextHandler({ queryName, args }) {
159
+ // Intentionally not made function async so this handler doesn't show up in the stack trace
160
+ queryWorkflowNextHandler({ queryName, args }) {
161
161
  const fn = exports.state.queryHandlers.get(queryName);
162
162
  if (fn === undefined) {
163
163
  // Fail the query
164
164
  throw new ReferenceError(`Workflow did not register a handler for ${queryName}`);
165
165
  }
166
- const ret = fn(...args);
167
- if (ret instanceof Promise) {
168
- throw new errors_1.DeterminismViolationError('Query handlers should not return a Promise');
166
+ try {
167
+ const ret = fn(...args);
168
+ if (ret instanceof Promise) {
169
+ return Promise.reject(new errors_1.DeterminismViolationError('Query handlers should not return a Promise'));
170
+ }
171
+ return Promise.resolve(ret);
172
+ }
173
+ catch (err) {
174
+ return Promise.reject(err);
169
175
  }
170
- return ret;
171
176
  }
172
177
  queryWorkflow(activation) {
173
178
  if (!this.workflowFunctionWasCalled) {
174
179
  exports.state.bufferedQueries.push(activation);
175
180
  return;
176
181
  }
177
- const { queryType, queryId } = activation;
182
+ const { queryType, queryId, headers } = activation;
178
183
  if (!(queryType && queryId)) {
179
184
  throw new TypeError('Missing query activation attributes');
180
185
  }
@@ -183,6 +188,7 @@ class Activator {
183
188
  queryName: queryType,
184
189
  args: (0, common_1.arrayFromPayloads)(exports.state.payloadConverter, activation.arguments),
185
190
  queryId,
191
+ headers: headers ?? {},
186
192
  }).then((result) => completeQuery(queryId, result), (reason) => failQuery(queryId, reason));
187
193
  }
188
194
  async signalWorkflowNextHandler({ signalName, args }) {
@@ -193,7 +199,7 @@ class Activator {
193
199
  return await fn(...args);
194
200
  }
195
201
  signalWorkflow(activation) {
196
- const { signalName } = activation;
202
+ const { signalName, headers } = activation;
197
203
  if (!signalName) {
198
204
  throw new TypeError('Missing activation signalName');
199
205
  }
@@ -211,6 +217,7 @@ class Activator {
211
217
  execute({
212
218
  args: (0, common_1.arrayFromPayloads)(exports.state.payloadConverter, activation.input),
213
219
  signalName,
220
+ headers: headers ?? {},
214
221
  }).catch(handleWorkflowFailure);
215
222
  }
216
223
  resolveSignalExternalWorkflow(activation) {
@@ -287,9 +294,36 @@ class State {
287
294
  */
288
295
  this.signalHandlers = new Map();
289
296
  /**
290
- * Mapping of signal name to handler
297
+ * Mapping of query name to handler
291
298
  */
292
- this.queryHandlers = new Map();
299
+ this.queryHandlers = new Map([
300
+ [
301
+ '__stack_trace',
302
+ () => {
303
+ const { childToParent, promiseToStack } = globalThis.__TEMPORAL__
304
+ .promiseStackStore;
305
+ const internalNodes = new Set([...childToParent.values()].reduce((acc, curr) => {
306
+ for (const p of curr) {
307
+ acc.add(p);
308
+ }
309
+ return acc;
310
+ }, new Set()));
311
+ const stacks = new Set();
312
+ for (const child of childToParent.keys()) {
313
+ if (!internalNodes.has(child)) {
314
+ const stack = promiseToStack.get(child);
315
+ if (!stack)
316
+ continue;
317
+ stacks.add(stack);
318
+ }
319
+ }
320
+ // Not 100% sure where this comes from, just filter it out
321
+ stacks.delete(' at Promise.then (<anonymous>)');
322
+ stacks.delete(' at Promise.then (<anonymous>)\n');
323
+ return [...stacks].join('\n\n');
324
+ },
325
+ ],
326
+ ]);
293
327
  /**
294
328
  * Loaded in {@link initRuntime}
295
329
  */
@@ -298,7 +332,6 @@ class State {
298
332
  * Buffer that stores all generated commands, reset after each activation
299
333
  */
300
334
  this.commands = [];
301
- /**
302
335
  /**
303
336
  * Stores all {@link condition}s that haven't been unblocked yet
304
337
  */
@@ -325,6 +358,8 @@ class State {
325
358
  signalWorkflow: 1,
326
359
  cancelWorkflow: 1,
327
360
  condition: 1,
361
+ // Used internally to keep track of active stack traces
362
+ stack: 1,
328
363
  };
329
364
  /**
330
365
  * This is set every time the workflow executes an activation
@@ -1 +1 @@
1
- {"version":3,"file":"internals.js","sourceRoot":"","sources":["../src/internals.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internals.js","sourceRoot":"","sources":["../src/internals.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ /**
2
+ * Helper function to remove a promise from being tracked for stack trace query purposes
3
+ */
4
+ export declare function untrackPromise(promise: Promise<unknown>): void;
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.untrackPromise = void 0;
4
+ /**
5
+ * Helper function to remove a promise from being tracked for stack trace query purposes
6
+ */
7
+ function untrackPromise(promise) {
8
+ const store = globalThis.__TEMPORAL__?.promiseStackStore;
9
+ if (!store)
10
+ return;
11
+ store.childToParent.delete(promise);
12
+ store.promiseToStack.delete(promise);
13
+ }
14
+ exports.untrackPromise = untrackPromise;
15
+ //# sourceMappingURL=stack-helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stack-helpers.js","sourceRoot":"","sources":["../src/stack-helpers.ts"],"names":[],"mappings":";;;AAEA;;GAEG;AACH,SAAgB,cAAc,CAAC,OAAyB;IACtD,MAAM,KAAK,GAAI,UAAkB,CAAC,YAAY,EAAE,iBAAkD,CAAC;IACnG,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AACvC,CAAC;AALD,wCAKC"}
package/lib/trigger.d.ts CHANGED
@@ -1,18 +1,19 @@
1
1
  /**
2
2
  * A `PromiseLike` helper which exposes its `resolve` and `reject` methods.
3
3
  *
4
- * Trigger is CancellationScope aware, it is linked to the current scope on
4
+ * Trigger is CancellationScope-aware: it is linked to the current scope on
5
5
  * construction and throws when that scope is cancelled.
6
6
  *
7
- * Useful for e.g. waiting for unblocking a Workflow from a signal.
7
+ * Useful for e.g. waiting for unblocking a Workflow from a Signal.
8
8
  *
9
9
  * @example
10
- * <!--SNIPSTART typescript-blocked-workflow-->
10
+ * <!--SNIPSTART typescript-trigger-workflow-->
11
11
  * <!--SNIPEND-->
12
12
  */
13
13
  export declare class Trigger<T> implements PromiseLike<T> {
14
- readonly then: <TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null) => PromiseLike<TResult1 | TResult2>;
15
14
  readonly resolve: (value: T | PromiseLike<T>) => void;
16
15
  readonly reject: (reason?: any) => void;
16
+ protected readonly promise: Promise<T>;
17
17
  constructor();
18
+ then<TResult1 = T, TResult2 = never>(onfulfilled?: ((value: T) => TResult1 | PromiseLike<TResult1>) | undefined | null, onrejected?: ((reason: any) => TResult2 | PromiseLike<TResult2>) | undefined | null): PromiseLike<TResult1 | TResult2>;
18
19
  }