openworkflow 0.4.1 → 0.5.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 (193) hide show
  1. package/README.md +53 -48
  2. package/dist/backend-postgres/index.d.ts +44 -0
  3. package/dist/backend-postgres/index.d.ts.map +1 -0
  4. package/dist/backend-postgres/index.js +535 -0
  5. package/dist/backend-postgres/index.js.map +1 -0
  6. package/dist/backend-postgres/postgres.d.ts +42 -0
  7. package/dist/backend-postgres/postgres.d.ts.map +1 -0
  8. package/dist/backend-postgres/postgres.js +234 -0
  9. package/dist/backend-postgres/postgres.js.map +1 -0
  10. package/dist/backend-sqlite/index.d.ts +41 -1
  11. package/dist/backend-sqlite/index.d.ts.map +1 -1
  12. package/dist/backend-sqlite/index.js +654 -1
  13. package/dist/backend-sqlite/index.js.map +1 -1
  14. package/dist/backend-sqlite/sqlite.d.ts +18 -2
  15. package/dist/backend-sqlite/sqlite.d.ts.map +1 -1
  16. package/dist/backend-sqlite/sqlite.js +20 -2
  17. package/dist/backend-sqlite/sqlite.js.map +1 -1
  18. package/dist/{core/backend.d.ts → backend.d.ts} +7 -5
  19. package/dist/backend.d.ts.map +1 -0
  20. package/dist/backend.js.map +1 -0
  21. package/dist/bin/openworkflow.d.ts +3 -0
  22. package/dist/bin/openworkflow.d.ts.map +1 -0
  23. package/dist/bin/openworkflow.js +44 -0
  24. package/dist/bin/openworkflow.js.map +1 -0
  25. package/dist/client.d.ts +141 -0
  26. package/dist/client.d.ts.map +1 -0
  27. package/dist/{sdk/sdk.js → client.js} +44 -71
  28. package/dist/client.js.map +1 -0
  29. package/dist/config.d.ts +27 -21
  30. package/dist/config.d.ts.map +1 -1
  31. package/dist/config.js +44 -36
  32. package/dist/config.js.map +1 -1
  33. package/dist/core/duration.d.ts +4 -2
  34. package/dist/core/duration.d.ts.map +1 -1
  35. package/dist/core/duration.js +3 -1
  36. package/dist/core/duration.js.map +1 -1
  37. package/dist/core/error.d.ts +14 -0
  38. package/dist/core/error.d.ts.map +1 -0
  39. package/dist/core/error.js +18 -0
  40. package/dist/core/error.js.map +1 -0
  41. package/dist/core/result.d.ts +14 -4
  42. package/dist/core/result.d.ts.map +1 -1
  43. package/dist/core/result.js +10 -0
  44. package/dist/core/result.js.map +1 -1
  45. package/dist/core/retry.d.ts +0 -9
  46. package/dist/core/retry.d.ts.map +1 -1
  47. package/dist/core/retry.js +0 -14
  48. package/dist/core/retry.js.map +1 -1
  49. package/dist/core/step.d.ts +1 -32
  50. package/dist/core/step.d.ts.map +1 -1
  51. package/dist/core/step.js +0 -35
  52. package/dist/core/step.js.map +1 -1
  53. package/dist/core/workflow.d.ts +2 -47
  54. package/dist/core/workflow.d.ts.map +1 -1
  55. package/dist/core/workflow.js +0 -44
  56. package/dist/core/workflow.js.map +1 -1
  57. package/dist/{execution/execution.d.ts → execution.d.ts} +4 -26
  58. package/dist/execution.d.ts.map +1 -0
  59. package/dist/{execution/execution.js → execution.js} +4 -4
  60. package/dist/execution.js.map +1 -0
  61. package/dist/index.d.ts +6 -9
  62. package/dist/index.d.ts.map +1 -1
  63. package/dist/index.js +4 -4
  64. package/dist/index.js.map +1 -1
  65. package/dist/internal.d.ts +8 -0
  66. package/dist/internal.d.ts.map +1 -0
  67. package/dist/internal.js +5 -0
  68. package/dist/internal.js.map +1 -0
  69. package/dist/pg/backend.d.ts +42 -0
  70. package/dist/pg/backend.d.ts.map +1 -0
  71. package/dist/pg/backend.js +534 -0
  72. package/dist/pg/backend.js.map +1 -0
  73. package/dist/pg/index.d.ts +3 -0
  74. package/dist/pg/index.d.ts.map +1 -0
  75. package/dist/pg/index.js +3 -0
  76. package/dist/pg/index.js.map +1 -0
  77. package/dist/pg/postgres.d.ts +42 -0
  78. package/dist/pg/postgres.d.ts.map +1 -0
  79. package/dist/pg/postgres.js +234 -0
  80. package/dist/pg/postgres.js.map +1 -0
  81. package/dist/pg/scripts/db-migrate.d.ts +2 -0
  82. package/dist/pg/scripts/db-migrate.d.ts.map +1 -0
  83. package/dist/pg/scripts/db-migrate.js +5 -0
  84. package/dist/pg/scripts/db-migrate.js.map +1 -0
  85. package/dist/pg/scripts/db-reset.d.ts +2 -0
  86. package/dist/pg/scripts/db-reset.d.ts.map +1 -0
  87. package/dist/pg/scripts/db-reset.js +6 -0
  88. package/dist/pg/scripts/db-reset.js.map +1 -0
  89. package/dist/pg/scripts/squawk.d.ts +2 -0
  90. package/dist/pg/scripts/squawk.d.ts.map +1 -0
  91. package/dist/pg/scripts/squawk.js +17 -0
  92. package/dist/pg/scripts/squawk.js.map +1 -0
  93. package/dist/pg/vitest.global-setup.d.ts +3 -0
  94. package/dist/pg/vitest.global-setup.d.ts.map +1 -0
  95. package/dist/pg/vitest.global-setup.js +8 -0
  96. package/dist/pg/vitest.global-setup.js.map +1 -0
  97. package/dist/registry.d.ts +27 -0
  98. package/dist/registry.d.ts.map +1 -0
  99. package/dist/registry.js +49 -0
  100. package/dist/registry.js.map +1 -0
  101. package/dist/{backend-sqlite → sqlite}/backend.d.ts +6 -4
  102. package/dist/sqlite/backend.d.ts.map +1 -0
  103. package/dist/{backend-sqlite → sqlite}/backend.js +31 -5
  104. package/dist/sqlite/backend.js.map +1 -0
  105. package/dist/sqlite/index.d.ts +3 -0
  106. package/dist/sqlite/index.d.ts.map +1 -0
  107. package/dist/sqlite/index.js +3 -0
  108. package/dist/sqlite/index.js.map +1 -0
  109. package/dist/sqlite/sqlite.d.ts +61 -0
  110. package/dist/sqlite/sqlite.d.ts.map +1 -0
  111. package/dist/sqlite/sqlite.js +247 -0
  112. package/dist/sqlite/sqlite.js.map +1 -0
  113. package/dist/testing/backend.testsuite.d.ts +20 -0
  114. package/dist/testing/backend.testsuite.d.ts.map +1 -0
  115. package/dist/{core → testing}/backend.testsuite.js +186 -53
  116. package/dist/testing/backend.testsuite.js.map +1 -0
  117. package/dist/testing/index.d.ts +2 -0
  118. package/dist/testing/index.d.ts.map +1 -0
  119. package/dist/testing/index.js +2 -0
  120. package/dist/testing/index.js.map +1 -0
  121. package/dist/tsconfig.tsbuildinfo +1 -1
  122. package/dist/{worker/worker.d.ts → worker.d.ts} +11 -4
  123. package/dist/worker.d.ts.map +1 -0
  124. package/dist/{worker/worker.js → worker.js} +20 -10
  125. package/dist/worker.js.map +1 -0
  126. package/dist/workflow.d.ts +60 -0
  127. package/dist/workflow.d.ts.map +1 -0
  128. package/dist/workflow.js +49 -0
  129. package/dist/workflow.js.map +1 -0
  130. package/package.json +13 -3
  131. package/dist/backend-sqlite/backend.d.ts.map +0 -1
  132. package/dist/backend-sqlite/backend.js.map +0 -1
  133. package/dist/config/config.d.ts +0 -102
  134. package/dist/config/config.d.ts.map +0 -1
  135. package/dist/config/config.js +0 -29
  136. package/dist/config/config.js.map +0 -1
  137. package/dist/config/index.d.ts +0 -3
  138. package/dist/config/index.d.ts.map +0 -1
  139. package/dist/config/index.js +0 -2
  140. package/dist/config/index.js.map +0 -1
  141. package/dist/core/backend-test-suite.d.ts +0 -22
  142. package/dist/core/backend-test-suite.d.ts.map +0 -1
  143. package/dist/core/backend-test-suite.js +0 -960
  144. package/dist/core/backend-test-suite.js.map +0 -1
  145. package/dist/core/backend.d.ts.map +0 -1
  146. package/dist/core/backend.js.map +0 -1
  147. package/dist/core/backend.testsuite.d.ts +0 -21
  148. package/dist/core/backend.testsuite.d.ts.map +0 -1
  149. package/dist/core/backend.testsuite.js.map +0 -1
  150. package/dist/core/duration.test.d.ts +0 -2
  151. package/dist/core/duration.test.d.ts.map +0 -1
  152. package/dist/core/duration.test.js +0 -264
  153. package/dist/core/duration.test.js.map +0 -1
  154. package/dist/core/result.test.d.ts +0 -2
  155. package/dist/core/result.test.d.ts.map +0 -1
  156. package/dist/core/result.test.js +0 -11
  157. package/dist/core/result.test.js.map +0 -1
  158. package/dist/core/retry.test.d.ts +0 -2
  159. package/dist/core/retry.test.d.ts.map +0 -1
  160. package/dist/core/retry.test.js +0 -36
  161. package/dist/core/retry.test.js.map +0 -1
  162. package/dist/core/step.test.d.ts +0 -2
  163. package/dist/core/step.test.d.ts.map +0 -1
  164. package/dist/core/step.test.js +0 -340
  165. package/dist/core/step.test.js.map +0 -1
  166. package/dist/core/workflow.test.d.ts +0 -2
  167. package/dist/core/workflow.test.d.ts.map +0 -1
  168. package/dist/core/workflow.test.js +0 -216
  169. package/dist/core/workflow.test.js.map +0 -1
  170. package/dist/execution/execution.d.ts.map +0 -1
  171. package/dist/execution/execution.js.map +0 -1
  172. package/dist/execution/execution.test.d.ts +0 -2
  173. package/dist/execution/execution.test.d.ts.map +0 -1
  174. package/dist/execution/execution.test.js +0 -382
  175. package/dist/execution/execution.test.js.map +0 -1
  176. package/dist/global.d.ts +0 -62
  177. package/dist/global.d.ts.map +0 -1
  178. package/dist/global.js +0 -78
  179. package/dist/global.js.map +0 -1
  180. package/dist/sdk/sdk.d.ts +0 -182
  181. package/dist/sdk/sdk.d.ts.map +0 -1
  182. package/dist/sdk/sdk.js.map +0 -1
  183. package/dist/sdk/sdk.test.d.ts +0 -2
  184. package/dist/sdk/sdk.test.d.ts.map +0 -1
  185. package/dist/sdk/sdk.test.js +0 -195
  186. package/dist/sdk/sdk.test.js.map +0 -1
  187. package/dist/worker/worker.d.ts.map +0 -1
  188. package/dist/worker/worker.js.map +0 -1
  189. package/dist/worker/worker.test.d.ts +0 -2
  190. package/dist/worker/worker.test.d.ts.map +0 -1
  191. package/dist/worker/worker.test.js +0 -786
  192. package/dist/worker/worker.test.js.map +0 -1
  193. /package/dist/{core/backend.js → backend.js} +0 -0
@@ -1,16 +1,6 @@
1
- /**
2
- * Default configuration for result polling when awaiting workflow completion.
3
- */
4
- export const DEFAULT_WORKFLOW_RESULT_CONFIG = {
5
- /** Polling interval in milliseconds (1 second) */
6
- pollIntervalMs: 1000,
7
- /** Timeout in milliseconds (5 minutes) */
8
- timeoutMs: 5 * 60 * 1000,
9
- };
10
1
  /**
11
2
  * Validate input against a Standard Schema. Pure async function that validates
12
3
  * input and returns a ValidationResult.
13
- *
14
4
  * @param schema - The Standard Schema to validate against (or null/undefined
15
5
  * for no validation)
16
6
  * @param input - The input value to validate
@@ -42,38 +32,4 @@ export async function validateInput(schema, input) {
42
32
  value: resolved.value,
43
33
  };
44
34
  }
45
- /**
46
- * Create a workflow configuration object with defaults applied.
47
- *
48
- * @param config - The user-provided workflow configuration
49
- * @returns A normalized workflow configuration
50
- */
51
- export function createWorkflowConfig(config) {
52
- return {
53
- name: config.name,
54
- version: config.version ?? null,
55
- schema: config.schema ?? null,
56
- };
57
- }
58
- /**
59
- * Check if a workflow definition has a schema for validation.
60
- *
61
- * @param config - The workflow configuration
62
- * @returns True if the workflow has a schema configured
63
- */
64
- export function hasSchema(config) {
65
- return Boolean(config.schema);
66
- }
67
- /**
68
- * Check if a workflow run status represents a terminal state.
69
- *
70
- * @param status - The workflow run status
71
- * @returns True if the status is terminal (completed, failed, or canceled)
72
- */
73
- export function isTerminalStatus(status) {
74
- return (status === "succeeded" ||
75
- status === "completed" ||
76
- status === "failed" ||
77
- status === "canceled");
78
- }
79
35
  //# sourceMappingURL=workflow.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../core/workflow.ts"],"names":[],"mappings":"AA8EA;;GAEG;AACH,MAAM,CAAC,MAAM,8BAA8B,GAAG;IAC5C,kDAAkD;IAClD,cAAc,EAAE,IAAI;IACpB,0CAA0C;IAC1C,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI;CAChB,CAAC;AAEX;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA4D,EAC5D,KAA2B;IAE3B,qDAAqD;IACrD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,KAAyB;SACjC,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAE/C,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1D,CAAC,CAAC,mBAAmB,CAAC;QAC1B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,QAAQ;SAChB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,QAAQ,CAAC,KAAK;KACtB,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAGlC,MAAyC;IAMzC,OAAO;QACL,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,IAAI;QAC/B,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,IAAI;KAC9B,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,SAAS,CACvB,MAAyC;IAEzC,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAC9B,MAAc;IAEd,OAAO,CACL,MAAM,KAAK,WAAW;QACtB,MAAM,KAAK,WAAW;QACtB,MAAM,KAAK,QAAQ;QACnB,MAAM,KAAK,UAAU,CACtB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../core/workflow.ts"],"names":[],"mappings":"AAiEA;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA4D,EAC5D,KAA2B;IAE3B,qDAAqD;IACrD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO;YACL,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,KAAyB;SACjC,CAAC;IACJ,CAAC;IAED,wEAAwE;IACxE,MAAM,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IAE/C,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpB,MAAM,QAAQ,GACZ,QAAQ,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;YAC1D,CAAC,CAAC,mBAAmB,CAAC;QAC1B,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,QAAQ;SAChB,CAAC;IACJ,CAAC;IAED,OAAO;QACL,OAAO,EAAE,IAAI;QACb,KAAK,EAAE,QAAQ,CAAC,KAAK;KACtB,CAAC;AACJ,CAAC"}
@@ -1,7 +1,7 @@
1
- import type { Backend } from "../core/backend.js";
2
- import type { DurationString } from "../core/duration.js";
3
- import type { StepAttempt } from "../core/step.js";
4
- import type { WorkflowRun } from "../core/workflow.js";
1
+ import type { Backend } from "./backend.js";
2
+ import type { DurationString } from "./core/duration.js";
3
+ import type { StepAttempt } from "./core/step.js";
4
+ import type { WorkflowRun } from "./core/workflow.js";
5
5
  /**
6
6
  * Config for an individual step defined with `step.run()`.
7
7
  */
@@ -37,14 +37,6 @@ export interface WorkflowFunctionParams<Input> {
37
37
  * to define the workflow's steps.
38
38
  */
39
39
  export type WorkflowFunction<Input, Output> = (params: Readonly<WorkflowFunctionParams<Input>>) => Promise<Output> | Output;
40
- /**
41
- * Signal thrown when a workflow needs to sleep. Contains the time when the
42
- * workflow should resume.
43
- */
44
- export declare class SleepSignal extends Error {
45
- readonly resumeAt: Date;
46
- constructor(resumeAt: Readonly<Date>);
47
- }
48
40
  /**
49
41
  * Configures the options for a StepExecutor.
50
42
  */
@@ -54,19 +46,6 @@ export interface StepExecutorOptions {
54
46
  workerId: string;
55
47
  attempts: StepAttempt[];
56
48
  }
57
- /**
58
- * Replays prior step attempts and persists new ones while memoizing
59
- * deterministic step outputs.
60
- */
61
- export declare class StepExecutor implements StepApi {
62
- private readonly backend;
63
- private readonly workflowRunId;
64
- private readonly workerId;
65
- private cache;
66
- constructor(options: Readonly<StepExecutorOptions>);
67
- run<Output>(config: Readonly<StepFunctionConfig>, fn: StepFunction<Output>): Promise<Output>;
68
- sleep(name: string, duration: DurationString): Promise<void>;
69
- }
70
49
  /**
71
50
  * Parameters for the workflow execution use case.
72
51
  */
@@ -84,7 +63,6 @@ export interface ExecuteWorkflowParams {
84
63
  * - Creating the step executor
85
64
  * - Executing the workflow function
86
65
  * - Completing, failing, or sleeping the workflow run based on the outcome
87
- *
88
66
  * @param params - The execution parameters
89
67
  */
90
68
  export declare function executeWorkflow(params: Readonly<ExecuteWorkflowParams>): Promise<void>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.d.ts","sourceRoot":"","sources":["../execution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAGzD,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,gBAAgB,CAAC;AASpE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,MAAM,WAAW,OAAO;IACtB,GAAG,CAAC,MAAM,EACR,MAAM,EAAE,QAAQ,CAAC,kBAAkB,CAAC,EACpC,EAAE,EAAE,YAAY,CAAC,MAAM,CAAC,GACvB,OAAO,CAAC,MAAM,CAAC,CAAC;IACnB,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED;;;GAGG;AACH,MAAM,MAAM,YAAY,CAAC,MAAM,IAAI,MAC/B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,GAC3B,MAAM,GACN,SAAS,CAAC;AAEd;;GAEG;AACH,MAAM,WAAW,sBAAsB,CAAC,KAAK;IAC3C,KAAK,EAAE,KAAK,CAAC;IACb,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB;AAED;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,KAAK,EAAE,MAAM,IAAI,CAC5C,MAAM,EAAE,QAAQ,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC,KAC5C,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC;AAgB9B;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AAoGD;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,OAAO,EAAE,OAAO,CAAC;IACjB,WAAW,EAAE,WAAW,CAAC;IACzB,UAAU,EAAE,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC/C,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,QAAQ,CAAC,qBAAqB,CAAC,GACtC,OAAO,CAAC,IAAI,CAAC,CA4Ff"}
@@ -1,9 +1,10 @@
1
- import { serializeError, createStepAttemptCacheFromAttempts, getCachedStepAttempt, addToStepAttemptCache, normalizeStepOutput, calculateSleepResumeAt, createSleepContext, } from "../core/step.js";
1
+ import { serializeError } from "./core/error.js";
2
+ import { createStepAttemptCacheFromAttempts, getCachedStepAttempt, addToStepAttemptCache, normalizeStepOutput, calculateSleepResumeAt, createSleepContext, } from "./core/step.js";
2
3
  /**
3
4
  * Signal thrown when a workflow needs to sleep. Contains the time when the
4
5
  * workflow should resume.
5
6
  */
6
- export class SleepSignal extends Error {
7
+ class SleepSignal extends Error {
7
8
  resumeAt;
8
9
  constructor(resumeAt) {
9
10
  super("SleepSignal");
@@ -15,7 +16,7 @@ export class SleepSignal extends Error {
15
16
  * Replays prior step attempts and persists new ones while memoizing
16
17
  * deterministic step outputs.
17
18
  */
18
- export class StepExecutor {
19
+ class StepExecutor {
19
20
  backend;
20
21
  workflowRunId;
21
22
  workerId;
@@ -101,7 +102,6 @@ export class StepExecutor {
101
102
  * - Creating the step executor
102
103
  * - Executing the workflow function
103
104
  * - Completing, failing, or sleeping the workflow run based on the outcome
104
- *
105
105
  * @param params - The execution parameters
106
106
  */
107
107
  export async function executeWorkflow(params) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../execution.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,10 +1,7 @@
1
- export type { OpenWorkflowOptions } from "./sdk/sdk.js";
2
- export { OpenWorkflow, declareWorkflow } from "./sdk/sdk.js";
3
- export type { WorkerOptions } from "./worker/worker.js";
4
- export { Worker } from "./worker/worker.js";
5
- export * from "./core/backend.js";
6
- export type { JsonValue } from "./core/json.js";
7
- export type { WorkflowRun } from "./core/workflow.js";
8
- export type { StepAttempt } from "./core/step.js";
9
- export { DEFAULT_RETRY_POLICY } from "./core/retry.js";
1
+ export type { OpenWorkflowOptions } from "./client.js";
2
+ export { OpenWorkflow } from "./client.js";
3
+ export type { WorkerOptions } from "./worker.js";
4
+ export { Worker } from "./worker.js";
5
+ export type { Workflow } from "./workflow.js";
6
+ export { defineWorkflowSpec, defineWorkflow, declareWorkflow, } from "./workflow.js";
10
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE7D,YAAY,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,cAAc,mBAAmB,CAAC;AAClC,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAG3C,YAAY,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,eAAe,GAChB,MAAM,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
- export { OpenWorkflow, declareWorkflow } from "./sdk/sdk.js";
2
- export { Worker } from "./worker/worker.js";
3
- export * from "./core/backend.js";
4
- export { DEFAULT_RETRY_POLICY } from "./core/retry.js";
1
+ export { OpenWorkflow } from "./client.js";
2
+ export { Worker } from "./worker.js";
3
+ export { defineWorkflowSpec, defineWorkflow, declareWorkflow, // eslint-disable-line @typescript-eslint/no-deprecated
4
+ } from "./workflow.js";
5
5
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,cAAc,mBAAmB,CAAC;AAIlC,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAI3C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAIrC,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,eAAe,EAAE,uDAAuD;EACzE,MAAM,eAAe,CAAC"}
@@ -0,0 +1,8 @@
1
+ export type { Workflow } from "./workflow.js";
2
+ export { isWorkflow } from "./workflow.js";
3
+ export * from "./backend.js";
4
+ export type { JsonValue } from "./core/json.js";
5
+ export type { WorkflowRun } from "./core/workflow.js";
6
+ export type { StepAttempt } from "./core/step.js";
7
+ export { DEFAULT_RETRY_POLICY } from "./core/retry.js";
8
+ //# sourceMappingURL=internal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../internal.ts"],"names":[],"mappings":"AACA,YAAY,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAG3C,cAAc,cAAc,CAAC;AAG7B,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,YAAY,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export { isWorkflow } from "./workflow.js";
2
+ // backend
3
+ export * from "./backend.js";
4
+ export { DEFAULT_RETRY_POLICY } from "./core/retry.js";
5
+ //# sourceMappingURL=internal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../internal.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAE3C,UAAU;AACV,cAAc,cAAc,CAAC;AAM7B,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { Backend, CancelWorkflowRunParams, ClaimWorkflowRunParams, CreateStepAttemptParams, CreateWorkflowRunParams, GetStepAttemptParams, GetWorkflowRunParams, ExtendWorkflowRunLeaseParams, ListStepAttemptsParams, ListWorkflowRunsParams, PaginatedResponse, FailStepAttemptParams, CompleteStepAttemptParams, FailWorkflowRunParams, CompleteWorkflowRunParams, SleepWorkflowRunParams, StepAttempt, WorkflowRun } from "openworkflow/internal";
2
+ interface BackendPostgresOptions {
3
+ namespaceId?: string;
4
+ runMigrations?: boolean;
5
+ }
6
+ /**
7
+ * Manages a connection to a Postgres database for workflow operations.
8
+ */
9
+ export declare class BackendPostgres implements Backend {
10
+ private pg;
11
+ private namespaceId;
12
+ private constructor();
13
+ /**
14
+ * Create and initialize a new BackendPostgres instance. This will
15
+ * automatically run migrations on startup unless `runMigrations` is set to
16
+ * false.
17
+ * @param url - Postgres connection URL
18
+ * @param options - Backend options
19
+ * @returns A connected backend instance
20
+ */
21
+ static connect(url: string, options?: BackendPostgresOptions): Promise<BackendPostgres>;
22
+ stop(): Promise<void>;
23
+ createWorkflowRun(params: CreateWorkflowRunParams): Promise<WorkflowRun>;
24
+ getWorkflowRun(params: GetWorkflowRunParams): Promise<WorkflowRun | null>;
25
+ listWorkflowRuns(params: ListWorkflowRunsParams): Promise<PaginatedResponse<WorkflowRun>>;
26
+ private buildListWorkflowRunsWhere;
27
+ claimWorkflowRun(params: ClaimWorkflowRunParams): Promise<WorkflowRun | null>;
28
+ extendWorkflowRunLease(params: ExtendWorkflowRunLeaseParams): Promise<WorkflowRun>;
29
+ sleepWorkflowRun(params: SleepWorkflowRunParams): Promise<WorkflowRun>;
30
+ completeWorkflowRun(params: CompleteWorkflowRunParams): Promise<WorkflowRun>;
31
+ failWorkflowRun(params: FailWorkflowRunParams): Promise<WorkflowRun>;
32
+ cancelWorkflowRun(params: CancelWorkflowRunParams): Promise<WorkflowRun>;
33
+ createStepAttempt(params: CreateStepAttemptParams): Promise<StepAttempt>;
34
+ getStepAttempt(params: GetStepAttemptParams): Promise<StepAttempt | null>;
35
+ listStepAttempts(params: ListStepAttemptsParams): Promise<PaginatedResponse<StepAttempt>>;
36
+ private buildListStepAttemptsWhere;
37
+ private processPaginationResults;
38
+ completeStepAttempt(params: CompleteStepAttemptParams): Promise<StepAttempt>;
39
+ failStepAttempt(params: FailStepAttemptParams): Promise<StepAttempt>;
40
+ }
41
+ export {};
42
+ //# sourceMappingURL=backend.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"backend.d.ts","sourceRoot":"","sources":["../../pg/backend.ts"],"names":[],"mappings":"AAOA,OAAO,EAEL,OAAO,EACP,uBAAuB,EACvB,sBAAsB,EACtB,uBAAuB,EACvB,uBAAuB,EACvB,oBAAoB,EACpB,oBAAoB,EACpB,4BAA4B,EAC5B,sBAAsB,EACtB,sBAAsB,EACtB,iBAAiB,EACjB,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,EACtB,WAAW,EACX,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAI/B,UAAU,sBAAsB;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED;;GAEG;AACH,qBAAa,eAAgB,YAAW,OAAO;IAC7C,OAAO,CAAC,EAAE,CAAW;IACrB,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO;IAKP;;;;;;;OAOG;WACU,OAAO,CAClB,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,sBAAsB,GAC/B,OAAO,CAAC,eAAe,CAAC;IAiBrB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAIrB,iBAAiB,CACrB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,WAAW,CAAC;IA0CjB,cAAc,CAClB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAYxB,gBAAgB,CACpB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IA2B1C,OAAO,CAAC,0BAA0B;IA0B5B,gBAAgB,CACpB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAmDxB,sBAAsB,CAC1B,MAAM,EAAE,4BAA4B,GACnC,OAAO,CAAC,WAAW,CAAC;IAkBjB,gBAAgB,CAAC,MAAM,EAAE,sBAAsB,GAAG,OAAO,CAAC,WAAW,CAAC;IAwBtE,mBAAmB,CACvB,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,WAAW,CAAC;IAuBjB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IAgEpE,iBAAiB,CACrB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,WAAW,CAAC;IA2CjB,iBAAiB,CACrB,MAAM,EAAE,uBAAuB,GAC9B,OAAO,CAAC,WAAW,CAAC;IAoCjB,cAAc,CAClB,MAAM,EAAE,oBAAoB,GAC3B,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;IAWxB,gBAAgB,CACpB,MAAM,EAAE,sBAAsB,GAC7B,OAAO,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;IA2B1C,OAAO,CAAC,0BAA0B;IA6BlC,OAAO,CAAC,wBAAwB;IAyC1B,mBAAmB,CACvB,MAAM,EAAE,yBAAyB,GAChC,OAAO,CAAC,WAAW,CAAC;IA0BjB,eAAe,CAAC,MAAM,EAAE,qBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;CAyB3E"}