@dbos-inc/dbos-sdk 1.12.6-preview → 1.12.8-preview

Sign up to get free protection for your applications and to get access to all the features.
Files changed (53) hide show
  1. package/dist/schemas/system_db_schema.d.ts +2 -0
  2. package/dist/schemas/system_db_schema.d.ts.map +1 -1
  3. package/dist/src/communicator.d.ts +1 -1
  4. package/dist/src/communicator.d.ts.map +1 -1
  5. package/dist/src/communicator.js.map +1 -1
  6. package/dist/src/dbos-executor.d.ts +27 -11
  7. package/dist/src/dbos-executor.d.ts.map +1 -1
  8. package/dist/src/dbos-executor.js +147 -47
  9. package/dist/src/dbos-executor.js.map +1 -1
  10. package/dist/src/debugger/debug_workflow.d.ts +14 -5
  11. package/dist/src/debugger/debug_workflow.d.ts.map +1 -1
  12. package/dist/src/debugger/debug_workflow.js +74 -18
  13. package/dist/src/debugger/debug_workflow.js.map +1 -1
  14. package/dist/src/decorators.d.ts +19 -2
  15. package/dist/src/decorators.d.ts.map +1 -1
  16. package/dist/src/decorators.js +104 -27
  17. package/dist/src/decorators.js.map +1 -1
  18. package/dist/src/httpServer/handler.d.ts +19 -15
  19. package/dist/src/httpServer/handler.d.ts.map +1 -1
  20. package/dist/src/httpServer/handler.js +24 -22
  21. package/dist/src/httpServer/handler.js.map +1 -1
  22. package/dist/src/httpServer/server.d.ts.map +1 -1
  23. package/dist/src/httpServer/server.js +6 -1
  24. package/dist/src/httpServer/server.js.map +1 -1
  25. package/dist/src/index.d.ts +1 -1
  26. package/dist/src/index.d.ts.map +1 -1
  27. package/dist/src/index.js +4 -1
  28. package/dist/src/index.js.map +1 -1
  29. package/dist/src/kafka/kafka.d.ts +2 -3
  30. package/dist/src/kafka/kafka.d.ts.map +1 -1
  31. package/dist/src/kafka/kafka.js +2 -13
  32. package/dist/src/kafka/kafka.js.map +1 -1
  33. package/dist/src/scheduler/scheduler.d.ts +4 -8
  34. package/dist/src/scheduler/scheduler.d.ts.map +1 -1
  35. package/dist/src/scheduler/scheduler.js +2 -9
  36. package/dist/src/scheduler/scheduler.js.map +1 -1
  37. package/dist/src/system_database.d.ts +2 -0
  38. package/dist/src/system_database.d.ts.map +1 -1
  39. package/dist/src/system_database.js +61 -4
  40. package/dist/src/system_database.js.map +1 -1
  41. package/dist/src/testing/testing_runtime.d.ts +9 -5
  42. package/dist/src/testing/testing_runtime.d.ts.map +1 -1
  43. package/dist/src/testing/testing_runtime.js +24 -12
  44. package/dist/src/testing/testing_runtime.js.map +1 -1
  45. package/dist/src/transaction.d.ts +1 -1
  46. package/dist/src/transaction.d.ts.map +1 -1
  47. package/dist/src/workflow.d.ts +46 -10
  48. package/dist/src/workflow.d.ts.map +1 -1
  49. package/dist/src/workflow.js +72 -20
  50. package/dist/src/workflow.js.map +1 -1
  51. package/dist/tsconfig.build.tsbuildinfo +1 -1
  52. package/migrations/20240517000000_status_class_config.js +18 -0
  53. package/package.json +2 -2
@@ -2,6 +2,8 @@ export interface workflow_status {
2
2
  workflow_uuid: string;
3
3
  status: string;
4
4
  name: string;
5
+ class_name?: string;
6
+ config_name?: string;
5
7
  authenticated_user: string;
6
8
  output: string;
7
9
  error: string;
@@ -1 +1 @@
1
- {"version":3,"file":"system_db_schema.d.ts","sourceRoot":"","sources":["../../schemas/system_db_schema.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB"}
1
+ {"version":3,"file":"system_db_schema.d.ts","sourceRoot":"","sources":["../../schemas/system_db_schema.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,iBAAiB;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,eAAe;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,eAAe;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,MAAM,CAAC;CACvB"}
@@ -3,7 +3,7 @@ import { GlobalLogger as Logger } from "./telemetry/logs";
3
3
  import { WorkflowContextImpl } from "./workflow";
4
4
  import { DBOSContext, DBOSContextImpl } from "./context";
5
5
  import { WorkflowContextDebug } from "./debugger/debug_workflow";
6
- export type Communicator<T extends any[], R> = (ctxt: CommunicatorContext, ...args: T) => Promise<R>;
6
+ export type Communicator<T extends unknown[], R> = (ctxt: CommunicatorContext, ...args: T) => Promise<R>;
7
7
  export interface CommunicatorConfig {
8
8
  retriesAllowed?: boolean;
9
9
  intervalSeconds?: number;
@@ -1 +1 @@
1
- {"version":3,"file":"communicator.d.ts","sourceRoot":"","sources":["../../src/communicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAGjE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAErG,MAAM,WAAW,kBAAkB;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IAEtD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,uBAAwB,SAAQ,eAAgB,YAAW,mBAAmB;IACzF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAGjB,eAAe,EAAE,mBAAmB,GAAG,oBAAoB,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;CAStK"}
1
+ {"version":3,"file":"communicator.d.ts","sourceRoot":"","sources":["../../src/communicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,+BAA+B,CAAC;AACrD,OAAO,EAAE,YAAY,IAAI,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AAEjE,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,mBAAmB,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;AAEzG,MAAM,WAAW,kBAAkB;IACjC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAoB,SAAQ,WAAW;IAEtD,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,qBAAa,uBAAwB,SAAQ,eAAgB,YAAW,mBAAmB;IACzF,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC;IACjC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;gBAGjB,eAAe,EAAE,mBAAmB,GAAG,oBAAoB,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EACpH,MAAM,EAAE,kBAAkB,EAAE,QAAQ,EAAE,MAAM;CAUhD"}
@@ -1 +1 @@
1
- {"version":3,"file":"communicator.js","sourceRoot":"","sources":["../../src/communicator.ts"],"names":[],"mappings":";;;AAGA,uCAAyD;AAmBzD,MAAa,uBAAwB,SAAQ,yBAAe;IACjD,UAAU,CAAS;IACnB,cAAc,CAAU;IACxB,eAAe,CAAS;IACxB,WAAW,CAAS;IACpB,WAAW,CAAS;IAE7B,iCAAiC;IACjC,YAAY,eAA2D,EAAE,UAAkB,EAAE,IAAU,EAAE,MAAc,EAAE,MAA0B,EAAE,QAAgB;QACnK,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC,iBAAiB,CAAC;IAC7D,CAAC;CACF;AAjBD,0DAiBC"}
1
+ {"version":3,"file":"communicator.js","sourceRoot":"","sources":["../../src/communicator.ts"],"names":[],"mappings":";;;AAGA,uCAAyD;AAkBzD,MAAa,uBAAwB,SAAQ,yBAAe;IACjD,UAAU,CAAS;IACnB,cAAc,CAAU;IACxB,eAAe,CAAS;IACxB,WAAW,CAAS;IACpB,WAAW,CAAS;IAE7B,iCAAiC;IACjC,YAAY,eAA2D,EAAE,UAAkB,EAAE,IAAU,EAAE,MAAc,EACpH,MAA0B,EAAE,QAAgB;QAE7C,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,IAAI,CAAC;QACpD,IAAI,CAAC,eAAe,GAAG,MAAM,CAAC,eAAe,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;QAC3C,IAAI,CAAC,iBAAiB,GAAG,eAAe,CAAC,iBAAiB,CAAC;IAC7D,CAAC;CACF;AAnBD,0DAmBC"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="node" />
2
- import { Workflow, WorkflowConfig, WorkflowHandle, WorkflowParams, BufferedResult } from './workflow';
2
+ import { Workflow, WorkflowConfig, WorkflowHandle, WorkflowParams, WorkflowStatus, BufferedResult } from './workflow';
3
3
  import { Transaction, TransactionConfig } from './transaction';
4
4
  import { CommunicatorConfig, Communicator } from './communicator';
5
5
  import { TelemetryCollector } from './telemetry/collector';
@@ -9,7 +9,7 @@ import { TelemetryConfig } from './telemetry';
9
9
  import { PoolConfig } from 'pg';
10
10
  import { SystemDatabase } from './system_database';
11
11
  import { UserDatabase, UserDatabaseName } from './user_database';
12
- import { MethodRegistrationBase } from './decorators';
12
+ import { MethodRegistrationBase, ConfiguredInstance } from './decorators';
13
13
  export interface DBOSNull {
14
14
  }
15
15
  export declare const dbosNull: DBOSNull;
@@ -29,20 +29,21 @@ export interface DBOSConfig {
29
29
  };
30
30
  }
31
31
  interface WorkflowInfo {
32
- workflow: Workflow<any, any>;
32
+ workflow: Workflow<unknown[], unknown>;
33
33
  config: WorkflowConfig;
34
34
  }
35
35
  interface TransactionInfo {
36
- transaction: Transaction<any, any>;
36
+ transaction: Transaction<unknown[], unknown>;
37
37
  config: TransactionConfig;
38
38
  }
39
39
  interface CommunicatorInfo {
40
- communicator: Communicator<any, any>;
40
+ communicator: Communicator<unknown[], unknown>;
41
41
  config: CommunicatorConfig;
42
42
  }
43
43
  interface InternalWorkflowParams extends WorkflowParams {
44
44
  readonly tempWfType?: string;
45
45
  readonly tempWfName?: string;
46
+ readonly tempWfClass?: string;
46
47
  }
47
48
  export declare const OperationType: {
48
49
  readonly HANDLER: "handler";
@@ -78,14 +79,29 @@ export declare class DBOSExecutor {
78
79
  configureDbClient(): void;
79
80
  init(...classes: object[]): Promise<void>;
80
81
  destroy(): Promise<void>;
81
- workflow<T extends any[], R>(wf: Workflow<T, R>, params: InternalWorkflowParams, ...args: T): Promise<WorkflowHandle<R>>;
82
- internalWorkflow<T extends any[], R>(wf: Workflow<T, R>, params: InternalWorkflowParams, callerUUID?: string, callerFunctionID?: number, ...args: T): Promise<WorkflowHandle<R>>;
82
+ getWorkflowInfo(wf: Workflow<unknown[], unknown>): WorkflowInfo | undefined;
83
+ getWorkflowInfoByStatus(wf: WorkflowStatus): {
84
+ wfInfo: WorkflowInfo | undefined;
85
+ configuredInst: ConfiguredInstance | null;
86
+ };
87
+ getTransactionInfo(tf: Transaction<unknown[], unknown>): TransactionInfo | undefined;
88
+ getTransactionInfoByNames(className: string, functionName: string, cfgName: string): {
89
+ txnInfo: TransactionInfo | undefined;
90
+ clsInst: ConfiguredInstance | null;
91
+ };
92
+ getCommunicatorInfo(cf: Communicator<unknown[], unknown>): CommunicatorInfo | undefined;
93
+ getCommunicatorInfoByNames(className: string, functionName: string, cfgName: string): {
94
+ commInfo: CommunicatorInfo | undefined;
95
+ clsInst: ConfiguredInstance | null;
96
+ };
97
+ workflow<T extends unknown[], R>(wf: Workflow<T, R>, params: InternalWorkflowParams, ...args: T): Promise<WorkflowHandle<R>>;
98
+ internalWorkflow<T extends unknown[], R>(wf: Workflow<T, R>, params: InternalWorkflowParams, callerUUID?: string, callerFunctionID?: number, ...args: T): Promise<WorkflowHandle<R>>;
83
99
  /**
84
100
  * DEBUG MODE workflow execution, skipping all the recording
85
101
  */
86
- debugWorkflow<T extends any[], R>(wf: Workflow<T, R>, params: WorkflowParams, callerUUID?: string, callerFunctionID?: number, ...args: T): Promise<WorkflowHandle<R>>;
87
- transaction<T extends any[], R>(txn: Transaction<T, R>, params: WorkflowParams, ...args: T): Promise<R>;
88
- external<T extends any[], R>(commFn: Communicator<T, R>, params: WorkflowParams, ...args: T): Promise<R>;
102
+ debugWorkflow<T extends unknown[], R>(wf: Workflow<T, R>, params: WorkflowParams, callerUUID?: string, callerFunctionID?: number, ...args: T): Promise<WorkflowHandle<R>>;
103
+ transaction<T extends unknown[], R>(txn: Transaction<T, R>, params: WorkflowParams, ...args: T): Promise<R>;
104
+ external<T extends unknown[], R>(commFn: Communicator<T, R>, params: WorkflowParams, ...args: T): Promise<R>;
89
105
  send<T>(destinationUUID: string, message: T, topic?: string, idempotencyKey?: string): Promise<void>;
90
106
  /**
91
107
  * Wait for a workflow to emit an event, then return its value.
@@ -99,7 +115,7 @@ export declare class DBOSExecutor {
99
115
  * A recovery process that by default runs during executor init time.
100
116
  * It runs to completion all pending workflows that were executing when the previous executor failed.
101
117
  */
102
- recoverPendingWorkflows(executorIDs?: string[]): Promise<WorkflowHandle<any>[]>;
118
+ recoverPendingWorkflows(executorIDs?: string[]): Promise<WorkflowHandle<unknown>[]>;
103
119
  executeWorkflowUUID(workflowUUID: string): Promise<WorkflowHandle<unknown>>;
104
120
  /**
105
121
  * Periodically flush the workflow output buffer to the system database.
@@ -1 +1 @@
1
- {"version":3,"file":"dbos-executor.d.ts","sourceRoot":"","sources":["../../src/dbos-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbos-executor.d.ts","sourceRoot":"","sources":["../../src/dbos-executor.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ const context_1 = require("./context");
21
21
  const debug_workflow_1 = require("./debugger/debug_workflow");
22
22
  const serialize_error_1 = require("serialize-error");
23
23
  const utils_1 = require("./utils");
24
+ const node_path_1 = __importDefault(require("node:path"));
24
25
  exports.dbosNull = {};
25
26
  exports.OperationType = {
26
27
  HANDLER: "handler",
@@ -131,9 +132,15 @@ class DBOSExecutor {
131
132
  if (userDbClient === user_database_1.UserDatabaseName.PRISMA) {
132
133
  // TODO: make Prisma work with debugger proxy.
133
134
  // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment, @typescript-eslint/no-var-requires
134
- const { PrismaClient } = require("@prisma/client");
135
+ const { PrismaClient } = require(node_path_1.default.join(process.cwd(), "node_modules", "@prisma", "client")); // Find the prisma client in the node_modules of the current project
135
136
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument, @typescript-eslint/no-unsafe-call
136
- this.userDatabase = new user_database_1.PrismaUserDatabase(new PrismaClient());
137
+ this.userDatabase = new user_database_1.PrismaUserDatabase(new PrismaClient({
138
+ datasources: {
139
+ db: {
140
+ url: `postgresql://${userDBConfig.user}:${userDBConfig.password}@${userDBConfig.host}:${userDBConfig.port}/${userDBConfig.database}`,
141
+ },
142
+ }
143
+ }));
137
144
  this.logger.debug("Loaded Prisma user database");
138
145
  }
139
146
  else if (userDbClient === user_database_1.UserDatabaseName.TYPEORM) {
@@ -184,19 +191,13 @@ class DBOSExecutor {
184
191
  this.registeredOperations.push(...registeredClassOperations);
185
192
  for (const ro of registeredClassOperations) {
186
193
  if (ro.workflowConfig) {
187
- const wf = ro.registeredFunction;
188
- this.#registerWorkflow(wf, { ...ro.workflowConfig });
189
- this.logger.debug(`Registered workflow ${ro.name}`);
194
+ this.#registerWorkflow(ro);
190
195
  }
191
196
  else if (ro.txnConfig) {
192
- const tx = ro.registeredFunction;
193
- this.#registerTransaction(tx, ro.txnConfig);
194
- this.logger.debug(`Registered transaction ${ro.name}`);
197
+ this.#registerTransaction(ro);
195
198
  }
196
199
  else if (ro.commConfig) {
197
- const comm = ro.registeredFunction;
198
- this.#registerCommunicator(comm, ro.commConfig);
199
- this.logger.debug(`Registered communicator ${ro.name}`);
200
+ this.#registerCommunicator(ro);
200
201
  }
201
202
  }
202
203
  }
@@ -235,6 +236,13 @@ class DBOSExecutor {
235
236
  this.initialized = true;
236
237
  // Only execute init code if under non-debug mode
237
238
  if (!this.debugMode) {
239
+ for (const cls of classes) {
240
+ // Init its configurations
241
+ const creg = (0, decorators_1.getOrCreateClassRegistration)(cls);
242
+ for (const [_cfgname, cfg] of creg.configuredInstances) {
243
+ await cfg.initialize(new context_1.InitContext(this));
244
+ }
245
+ }
238
246
  for (const v of this.registeredOperations) {
239
247
  const m = v;
240
248
  if (m.init === true) {
@@ -264,35 +272,112 @@ class DBOSExecutor {
264
272
  await this.logger.destroy();
265
273
  }
266
274
  /* WORKFLOW OPERATIONS */
267
- #registerWorkflow(wf, config = {}) {
268
- if (wf.name === DBOSExecutor.tempWorkflowName || this.workflowInfoMap.has(wf.name)) {
269
- throw new error_1.DBOSError(`Repeated workflow name: ${wf.name}`);
275
+ #registerWorkflow(ro) {
276
+ const wf = ro.registeredFunction;
277
+ if (wf.name === DBOSExecutor.tempWorkflowName) {
278
+ throw new error_1.DBOSError(`Unexpected use of reserved workflow name: ${wf.name}`);
279
+ }
280
+ const wfn = ro.className + '.' + ro.name;
281
+ if (this.workflowInfoMap.has(wfn)) {
282
+ throw new error_1.DBOSError(`Repeated workflow name: ${wfn}`);
270
283
  }
271
284
  const workflowInfo = {
272
285
  workflow: wf,
273
- config: config,
286
+ config: { ...ro.workflowConfig },
274
287
  };
275
- this.workflowInfoMap.set(wf.name, workflowInfo);
288
+ this.workflowInfoMap.set(wfn, workflowInfo);
289
+ this.logger.debug(`Registered workflow ${wfn}`);
276
290
  }
277
- #registerTransaction(txn, params = {}) {
278
- if (this.transactionInfoMap.has(txn.name)) {
279
- throw new error_1.DBOSError(`Repeated Transaction name: ${txn.name}`);
291
+ #registerTransaction(ro) {
292
+ const txf = ro.registeredFunction;
293
+ const tfn = ro.className + '.' + ro.name;
294
+ if (this.transactionInfoMap.has(tfn)) {
295
+ throw new error_1.DBOSError(`Repeated Transaction name: ${tfn}`);
280
296
  }
281
297
  const txnInfo = {
282
- transaction: txn,
283
- config: params,
298
+ transaction: txf,
299
+ config: { ...ro.txnConfig },
284
300
  };
285
- this.transactionInfoMap.set(txn.name, txnInfo);
301
+ this.transactionInfoMap.set(tfn, txnInfo);
302
+ this.logger.debug(`Registered transaction ${tfn}`);
286
303
  }
287
- #registerCommunicator(comm, params = {}) {
288
- if (this.communicatorInfoMap.has(comm.name)) {
289
- throw new error_1.DBOSError(`Repeated Commmunicator name: ${comm.name}`);
304
+ #registerCommunicator(ro) {
305
+ const comm = ro.registeredFunction;
306
+ const cfn = ro.className + '.' + ro.name;
307
+ if (this.communicatorInfoMap.has(cfn)) {
308
+ throw new error_1.DBOSError(`Repeated Commmunicator name: ${cfn}`);
290
309
  }
291
310
  const commInfo = {
292
311
  communicator: comm,
293
- config: params,
312
+ config: { ...ro.commConfig },
294
313
  };
295
- this.communicatorInfoMap.set(comm.name, commInfo);
314
+ this.communicatorInfoMap.set(cfn, commInfo);
315
+ this.logger.debug(`Registered communicator ${cfn}`);
316
+ }
317
+ getWorkflowInfo(wf) {
318
+ const wfname = (wf.name === DBOSExecutor.tempWorkflowName)
319
+ ? wf.name
320
+ : (0, decorators_1.getRegisteredMethodClassName)(wf) + '.' + wf.name;
321
+ return this.workflowInfoMap.get(wfname);
322
+ }
323
+ getWorkflowInfoByStatus(wf) {
324
+ const wfname = wf.workflowClassName + '.' + wf.workflowName;
325
+ let wfInfo = this.workflowInfoMap.get(wfname);
326
+ if (!wfInfo && !wf.workflowClassName) {
327
+ for (const [_wfn, wfr] of this.workflowInfoMap) {
328
+ if (wf.workflowName === wfr.workflow.name) {
329
+ if (wfInfo) {
330
+ throw new error_1.DBOSError(`Recovered workflow function name '${wf.workflowName}' is ambiguous. The ambiguous name was recently added; remove it and recover pending workflows before re-adding the new function.`);
331
+ }
332
+ else {
333
+ wfInfo = wfr;
334
+ }
335
+ }
336
+ }
337
+ }
338
+ return { wfInfo, configuredInst: (0, decorators_1.getConfiguredInstance)(wf.workflowClassName, wf.workflowConfigName) };
339
+ }
340
+ getTransactionInfo(tf) {
341
+ const tfname = (0, decorators_1.getRegisteredMethodClassName)(tf) + '.' + tf.name;
342
+ return this.transactionInfoMap.get(tfname);
343
+ }
344
+ getTransactionInfoByNames(className, functionName, cfgName) {
345
+ const tfname = className + '.' + functionName;
346
+ let txnInfo = this.transactionInfoMap.get(tfname);
347
+ if (!txnInfo && !className) {
348
+ for (const [_wfn, tfr] of this.transactionInfoMap) {
349
+ if (functionName === tfr.transaction.name) {
350
+ if (txnInfo) {
351
+ throw new error_1.DBOSError(`Recovered transaction function name '${functionName}' is ambiguous. The ambiguous name was recently added; remove it and recover pending workflows before re-adding the new function.`);
352
+ }
353
+ else {
354
+ txnInfo = tfr;
355
+ }
356
+ }
357
+ }
358
+ }
359
+ return { txnInfo, clsInst: (0, decorators_1.getConfiguredInstance)(className, cfgName) };
360
+ }
361
+ getCommunicatorInfo(cf) {
362
+ const cfname = (0, decorators_1.getRegisteredMethodClassName)(cf) + '.' + cf.name;
363
+ return this.communicatorInfoMap.get(cfname);
364
+ }
365
+ getCommunicatorInfoByNames(className, functionName, cfgName) {
366
+ const cfname = className + '.' + functionName;
367
+ let commInfo = this.communicatorInfoMap.get(cfname);
368
+ if (!commInfo && !className) {
369
+ for (const [_wfn, cfr] of this.communicatorInfoMap) {
370
+ if (functionName === cfr.communicator.name) {
371
+ if (commInfo) {
372
+ throw new error_1.DBOSError(`Recovered communicator function name '${functionName}' is ambiguous. The ambiguous name was recently added; remove it and recover pending workflows before re-adding the new function.`);
373
+ }
374
+ else {
375
+ commInfo = cfr;
376
+ }
377
+ }
378
+ }
379
+ }
380
+ return { commInfo, clsInst: (0, decorators_1.getConfiguredInstance)(className, cfgName) };
296
381
  }
297
382
  async workflow(wf, params, ...args) {
298
383
  if (this.debugMode) {
@@ -304,7 +389,7 @@ class DBOSExecutor {
304
389
  async internalWorkflow(wf, params, callerUUID, callerFunctionID, ...args) {
305
390
  const workflowUUID = params.workflowUUID ? params.workflowUUID : this.#generateUUID();
306
391
  const presetUUID = params.workflowUUID ? true : false;
307
- const wInfo = this.workflowInfoMap.get(wf.name);
392
+ const wInfo = this.getWorkflowInfo(wf);
308
393
  if (wInfo === undefined) {
309
394
  throw new error_1.DBOSNotRegisteredError(wf.name);
310
395
  }
@@ -318,6 +403,8 @@ class DBOSExecutor {
318
403
  workflowUUID: workflowUUID,
319
404
  status: workflow_1.StatusString.PENDING,
320
405
  name: wf.name,
406
+ className: wCtxt.isTempWorkflow ? "" : (0, decorators_1.getRegisteredMethodClassName)(wf),
407
+ configName: params.configuredInstance?.name || "",
321
408
  authenticatedUser: wCtxt.authenticatedUser,
322
409
  output: undefined,
323
410
  error: "",
@@ -329,6 +416,7 @@ class DBOSExecutor {
329
416
  };
330
417
  if (wCtxt.isTempWorkflow) {
331
418
  internalStatus.name = `${DBOSExecutor.tempWorkflowName}-${wCtxt.tempWfOperationType}-${wCtxt.tempWfOperationName}`;
419
+ internalStatus.className = params.tempWfClass ?? "";
332
420
  }
333
421
  // Synchronously set the workflow's status to PENDING and record workflow inputs (for non single-transaction workflows).
334
422
  // We have to do it for all types of workflows because operation_outputs table has a foreign key constraint on workflow status table.
@@ -339,7 +427,7 @@ class DBOSExecutor {
339
427
  let result;
340
428
  // Execute the workflow.
341
429
  try {
342
- result = await wf(wCtxt, ...args);
430
+ result = await wf.call(params.configuredInstance, wCtxt, ...args);
343
431
  internalStatus.output = result;
344
432
  internalStatus.status = workflow_1.StatusString.SUCCESS;
345
433
  this.systemDatabase.bufferWorkflowOutput(workflowUUID, internalStatus);
@@ -405,7 +493,7 @@ class DBOSExecutor {
405
493
  throw new error_1.DBOSDebuggerError("Workflow UUID not found!");
406
494
  }
407
495
  const workflowUUID = params.workflowUUID;
408
- const wInfo = this.workflowInfoMap.get(wf.name);
496
+ const wInfo = this.getWorkflowInfo(wf);
409
497
  if (wInfo === undefined) {
410
498
  throw new error_1.DBOSDebuggerError("Workflow unregistered! " + wf.name);
411
499
  }
@@ -421,7 +509,7 @@ class DBOSExecutor {
421
509
  if (JSON.stringify(args) !== JSON.stringify(recordedInputs)) {
422
510
  throw new error_1.DBOSDebuggerError(`Detect different input for the workflow UUID ${workflowUUID}!\n Received: ${JSON.stringify(args)}\n Original: ${JSON.stringify(recordedInputs)}`);
423
511
  }
424
- const workflowPromise = wf(wCtxt, ...args)
512
+ const workflowPromise = wf.call(params.configuredInstance, wCtxt, ...args)
425
513
  .then(async (result) => {
426
514
  // Check if the result is the same.
427
515
  const recordedResult = await this.systemDatabase.getWorkflowResult(workflowUUID);
@@ -439,17 +527,27 @@ class DBOSExecutor {
439
527
  // Create a workflow and call transaction.
440
528
  const temp_workflow = async (ctxt, ...args) => {
441
529
  const ctxtImpl = ctxt;
442
- return await ctxtImpl.transaction(txn, ...args);
530
+ return await ctxtImpl.transaction(txn, params.configuredInstance ?? null, ...args);
443
531
  };
444
- return (await this.workflow(temp_workflow, { ...params, tempWfType: TempWorkflowType.transaction, tempWfName: txn.name }, ...args)).getResult();
532
+ return (await this.workflow(temp_workflow, {
533
+ ...params,
534
+ tempWfType: TempWorkflowType.transaction,
535
+ tempWfName: (0, decorators_1.getRegisteredMethodName)(txn),
536
+ tempWfClass: (0, decorators_1.getRegisteredMethodClassName)(txn),
537
+ }, ...args)).getResult();
445
538
  }
446
539
  async external(commFn, params, ...args) {
447
540
  // Create a workflow and call external.
448
541
  const temp_workflow = async (ctxt, ...args) => {
449
542
  const ctxtImpl = ctxt;
450
- return await ctxtImpl.external(commFn, ...args);
543
+ return await ctxtImpl.external(commFn, params.configuredInstance ?? null, ...args);
451
544
  };
452
- return (await this.workflow(temp_workflow, { ...params, tempWfType: TempWorkflowType.external, tempWfName: commFn.name }, ...args)).getResult();
545
+ return (await this.workflow(temp_workflow, {
546
+ ...params,
547
+ tempWfType: TempWorkflowType.external,
548
+ tempWfName: (0, decorators_1.getRegisteredMethodName)(commFn),
549
+ tempWfClass: (0, decorators_1.getRegisteredMethodClassName)(commFn),
550
+ }, ...args)).getResult();
453
551
  }
454
552
  async send(destinationUUID, message, topic, idempotencyKey) {
455
553
  // Create a workflow and call send.
@@ -457,7 +555,7 @@ class DBOSExecutor {
457
555
  return await ctxt.send(destinationUUID, message, topic);
458
556
  };
459
557
  const workflowUUID = idempotencyKey ? destinationUUID + idempotencyKey : undefined;
460
- return (await this.workflow(temp_workflow, { workflowUUID: workflowUUID, tempWfType: TempWorkflowType.send }, destinationUUID, message, topic)).getResult();
558
+ return (await this.workflow(temp_workflow, { workflowUUID: workflowUUID, tempWfType: TempWorkflowType.send, configuredInstance: null }, destinationUUID, message, topic)).getResult();
461
559
  }
462
560
  /**
463
561
  * Wait for a workflow to emit an event, then return its value.
@@ -509,54 +607,56 @@ class DBOSExecutor {
509
607
  throw new error_1.DBOSError(`Failed to find inputs for workflow UUID: ${workflowUUID}`);
510
608
  }
511
609
  const parentCtx = this.#getRecoveryContext(workflowUUID, wfStatus);
512
- const wfInfo = this.workflowInfoMap.get(wfStatus.workflowName);
610
+ const { wfInfo, configuredInst } = this.getWorkflowInfoByStatus(wfStatus);
513
611
  if (wfInfo) {
514
612
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
515
- return this.workflow(wfInfo.workflow, { workflowUUID: workflowUUID, parentCtx: parentCtx ?? undefined }, ...inputs);
613
+ return this.workflow(wfInfo.workflow, { workflowUUID: workflowUUID, parentCtx: parentCtx, configuredInstance: configuredInst }, ...inputs);
516
614
  }
517
615
  // Should be temporary workflows. Parse the name of the workflow.
518
616
  const wfName = wfStatus.workflowName;
519
617
  const nameArr = wfName.split("-");
520
618
  if (!nameArr[0].startsWith(DBOSExecutor.tempWorkflowName)) {
619
+ // CB - Doesn't this happen if the user changed the function name in their code?
521
620
  throw new error_1.DBOSError(`This should never happen! Cannot find workflow info for a non-temporary workflow! UUID ${workflowUUID}, name ${wfName}`);
522
621
  }
523
622
  let temp_workflow;
623
+ let clsinst = null;
524
624
  if (nameArr[1] === TempWorkflowType.transaction) {
525
- const txnInfo = this.transactionInfoMap.get(nameArr[2]);
625
+ const { txnInfo, clsInst } = this.getTransactionInfoByNames(wfStatus.workflowClassName, nameArr[2], wfStatus.workflowConfigName);
526
626
  if (!txnInfo) {
527
627
  this.logger.error(`Cannot find transaction info for UUID ${workflowUUID}, name ${nameArr[2]}`);
528
628
  throw new error_1.DBOSNotRegisteredError(nameArr[2]);
529
629
  }
530
630
  temp_workflow = async (ctxt, ...args) => {
531
631
  const ctxtImpl = ctxt;
532
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-argument
533
- return await ctxtImpl.transaction(txnInfo.transaction, ...args);
632
+ return await ctxtImpl.transaction(txnInfo.transaction, clsInst, ...args);
534
633
  };
634
+ clsinst = clsInst;
535
635
  }
536
636
  else if (nameArr[1] === TempWorkflowType.external) {
537
- const commInfo = this.communicatorInfoMap.get(nameArr[2]);
637
+ const { commInfo, clsInst } = this.getCommunicatorInfoByNames(wfStatus.workflowClassName, nameArr[2], wfStatus.workflowConfigName);
538
638
  if (!commInfo) {
539
639
  this.logger.error(`Cannot find communicator info for UUID ${workflowUUID}, name ${nameArr[2]}`);
540
640
  throw new error_1.DBOSNotRegisteredError(nameArr[2]);
541
641
  }
542
642
  temp_workflow = async (ctxt, ...args) => {
543
643
  const ctxtImpl = ctxt;
544
- // eslint-disable-next-line @typescript-eslint/no-unsafe-return, @typescript-eslint/no-unsafe-argument
545
- return await ctxtImpl.external(commInfo.communicator, ...args);
644
+ return await ctxtImpl.external(commInfo.communicator, clsInst, ...args);
546
645
  };
646
+ clsinst = clsInst;
547
647
  }
548
648
  else if (nameArr[1] === TempWorkflowType.send) {
549
649
  temp_workflow = async (ctxt, ...args) => {
550
- // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
551
- return await ctxt.send(args[0], args[1], args[2]);
650
+ return await ctxt.send(args[0], args[1], args[2]); // id, value, topic
552
651
  };
652
+ clsinst = null;
553
653
  }
554
654
  else {
555
655
  this.logger.error(`Unrecognized temporary workflow! UUID ${workflowUUID}, name ${wfName}`);
556
656
  throw new error_1.DBOSNotRegisteredError(wfName);
557
657
  }
558
658
  // eslint-disable-next-line @typescript-eslint/no-unsafe-argument
559
- return this.workflow(temp_workflow, { workflowUUID: workflowUUID, parentCtx: parentCtx ?? undefined }, ...inputs);
659
+ return this.workflow(temp_workflow, { workflowUUID: workflowUUID, parentCtx: parentCtx ?? undefined, configuredInstance: clsinst }, ...inputs);
560
660
  }
561
661
  // NOTE: this creates a new span, it does not inherit the span from the original workflow
562
662
  #getRecoveryContext(workflowUUID, status) {
@@ -1 +1 @@
1
- {"version":3,"file":"dbos-executor.js","sourceRoot":"","sources":["../../src/dbos-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dbos-executor.js","sourceRoot":"","sources":["../../src/dbos-executor.ts"],"names":[],"mappings":"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"}