@dbos-inc/dbos-sdk 5.1.5-preview → 5.1.8-preview

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 (63) hide show
  1. package/dist/schemas/system_db_schema.d.ts +1 -0
  2. package/dist/schemas/system_db_schema.d.ts.map +1 -1
  3. package/dist/schemas/system_db_schema.js.map +1 -1
  4. package/dist/src/client.d.ts +17 -0
  5. package/dist/src/client.d.ts.map +1 -1
  6. package/dist/src/client.js +20 -4
  7. package/dist/src/client.js.map +1 -1
  8. package/dist/src/conductor/conductor.d.ts.map +1 -1
  9. package/dist/src/conductor/conductor.js +18 -0
  10. package/dist/src/conductor/conductor.js.map +1 -1
  11. package/dist/src/conductor/protocol.d.ts +17 -1
  12. package/dist/src/conductor/protocol.d.ts.map +1 -1
  13. package/dist/src/conductor/protocol.js +10 -1
  14. package/dist/src/conductor/protocol.js.map +1 -1
  15. package/dist/src/context.d.ts +12 -1
  16. package/dist/src/context.d.ts.map +1 -1
  17. package/dist/src/context.js +5 -1
  18. package/dist/src/context.js.map +1 -1
  19. package/dist/src/datasource.d.ts +6 -0
  20. package/dist/src/datasource.d.ts.map +1 -1
  21. package/dist/src/datasource.js.map +1 -1
  22. package/dist/src/dbos-executor.d.ts +10 -0
  23. package/dist/src/dbos-executor.d.ts.map +1 -1
  24. package/dist/src/dbos-executor.js +87 -55
  25. package/dist/src/dbos-executor.js.map +1 -1
  26. package/dist/src/dbos.d.ts +27 -1
  27. package/dist/src/dbos.d.ts.map +1 -1
  28. package/dist/src/dbos.js +29 -0
  29. package/dist/src/dbos.js.map +1 -1
  30. package/dist/src/debouncer.d.ts.map +1 -1
  31. package/dist/src/debouncer.js +3 -0
  32. package/dist/src/debouncer.js.map +1 -1
  33. package/dist/src/enqueue_options.d.ts +3 -1
  34. package/dist/src/enqueue_options.d.ts.map +1 -1
  35. package/dist/src/enqueue_options.js.map +1 -1
  36. package/dist/src/enqueue_workflow.d.ts.map +1 -1
  37. package/dist/src/enqueue_workflow.js +11 -6
  38. package/dist/src/enqueue_workflow.js.map +1 -1
  39. package/dist/src/error.d.ts +10 -0
  40. package/dist/src/error.d.ts.map +1 -1
  41. package/dist/src/error.js +25 -1
  42. package/dist/src/error.js.map +1 -1
  43. package/dist/src/index.d.ts +1 -1
  44. package/dist/src/index.d.ts.map +1 -1
  45. package/dist/src/index.js.map +1 -1
  46. package/dist/src/step.d.ts +1 -0
  47. package/dist/src/step.d.ts.map +1 -1
  48. package/dist/src/step.js.map +1 -1
  49. package/dist/src/sysdb_migrations/internal/migrations.js +6 -0
  50. package/dist/src/sysdb_migrations/internal/migrations.js.map +1 -1
  51. package/dist/src/system_database.d.ts +41 -2
  52. package/dist/src/system_database.d.ts.map +1 -1
  53. package/dist/src/system_database.js +231 -17
  54. package/dist/src/system_database.js.map +1 -1
  55. package/dist/src/workflow.d.ts +3 -0
  56. package/dist/src/workflow.d.ts.map +1 -1
  57. package/dist/src/workflow.js.map +1 -1
  58. package/dist/src/workflow_management.d.ts +15 -0
  59. package/dist/src/workflow_management.d.ts.map +1 -1
  60. package/dist/src/workflow_management.js +45 -1
  61. package/dist/src/workflow_management.js.map +1 -1
  62. package/dist/tsconfig.tsbuildinfo +1 -1
  63. package/package.json +1 -1
@@ -10,6 +10,8 @@ import { DuplicationPolicy, InternalEnqueueOptions } from './system_database';
10
10
  * surfacing as a database error at insert time.
11
11
  */
12
12
  export declare function validateWorkflowAttributes(attributes: unknown): void;
13
+ /** On a workflow ID already in use: 'return-existing' (default) attaches to it; 'reject' throws an error `isWorkflowIDInUseError` matches. */
14
+ export type WorkflowIDReusePolicy = 'return-existing' | 'reject';
13
15
  export interface WorkflowParams {
14
16
  workflowUUID?: string;
15
17
  configuredInstance?: ConfiguredInstance | null;
@@ -19,6 +21,7 @@ export interface WorkflowParams {
19
21
  deadlineEpochMS?: number;
20
22
  enqueueOptions?: InternalEnqueueOptions;
21
23
  duplicationPolicy?: DuplicationPolicy;
24
+ workflowIDReusePolicy?: WorkflowIDReusePolicy;
22
25
  workflowAttributes?: Record<string, unknown>;
23
26
  authenticatedUser?: string;
24
27
  authenticatedRoles?: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAsE,KAAK,cAAc,EAAE,MAAM,QAAQ,CAAC;AACjH,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAG9E;;;;;;;GAOG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAuBpE;AAED,8IAA8I;AAC9I,MAAM,MAAM,qBAAqB,GAAG,iBAAiB,GAAG,QAAQ,CAAC;AAEjE,MAAM,WAAW,cAAc;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,cAAc,CAAC,EAAE,sBAAsB,CAAC;IAIxC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAE9C,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAE7C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B;AAED,eAAO,MAAM,6BAA6B,MAAM,CAAC;AAEjD,MAAM,MAAM,2BAA2B,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE5E;;;GAGG;AACH,MAAM,WAAW,WAAW;IAC1B;;4DAEwD;IACxD,KAAK,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4GAA4G;IAC5G,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB;IAClB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mCAAmC;IACnC,aAAa,CAAC,EAAE,2BAA2B,CAAC;IAC5C;;;;wEAIoE;IACpE,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAE7B,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IAEnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAErC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAG5B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAEpC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAE9B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAGvC,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC;IAE3B,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;IAE1B,QAAQ,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAGzB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAErC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAGlC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAE3B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAG5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAElC,QAAQ,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAElC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAE1B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAEpC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAGpC,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAG9B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,aAAa,CAAC,EAAE,OAAO,CAAC;IAEjC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAGnC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAG9C,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAI/B,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;CACpC;AAED,MAAM,WAAW,iBAAiB;IAChC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACjC,MAAM,CAAC,EAAE,oBAAoB,GAAG,oBAAoB,EAAE,CAAC;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACtC,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC/B,kBAAkB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC/B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACjC,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,yBAAyB;IACxC,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,QAAQ;IACvB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IACxC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CACtC;AAED,MAAM,WAAW,wBAAwB;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,gDAAgD;AAChD,eAAO,MAAM,YAAY;IACvB,kCAAkC;;IAElC,0CAA0C;;IAE1C,0CAA0C;;IAE1C,iFAAiF;;IAEjF,gDAAgD;;IAEhD,+DAA+D;;IAE/D,yFAAyF;;CAEjF,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAC5B,SAAS,GACT,SAAS,GACT,OAAO,GACP,gCAAgC,GAChC,WAAW,GACX,UAAU,GACV,SAAS,CAAC;AAEd,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,WAE9C;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC;IAC/B;;;OAGG;IACH,SAAS,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC5C;;OAEG;IACH,SAAS,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAChD;;OAEG;IACH,IAAI,UAAU,IAAI,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,gBAAgB,CAAC,CAAC,CAAE,SAAQ,cAAc,CAAC,CAAC,CAAC;IAC5D,SAAS,CAAC,qBAAqB,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;CACxE;AAED;;GAEG;AACH,qBAAa,aAAa,CAAC,CAAC,CAAE,YAAW,gBAAgB,CAAC,CAAC,CAAC;IAExD,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM;gBADlB,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC,EAC3B,UAAU,EAAE,MAAM;IAGvB,SAAS,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAI3C,SAAS,CAAC,qBAAqB,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAY7E;AAED;;GAEG;AACH,qBAAa,eAAe,CAAC,CAAC,CAAE,YAAW,gBAAgB,CAAC,CAAC,CAAC;IAChD,QAAQ,CAAC,UAAU,EAAE,MAAM;gBAAlB,UAAU,EAAE,MAAM;IAEjC,SAAS,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAI3C,SAAS,CAAC,qBAAqB,CAAC,EAAE,cAAc,GAAG,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAW7E"}
@@ -1 +1 @@
1
- {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../src/workflow.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { SystemDatabase, WorkflowStatusInternal } from './system_database';
2
2
  import type { StepInfo, WorkflowStatus, GetWorkflowsInput, ListWorkflowStepsOptions } from './workflow';
3
+ import type { DataSourceTransactionHandler } from './datasource';
3
4
  import { DBOSSerializer } from './serialization';
4
5
  export declare function listWorkflows(sysdb: SystemDatabase, input: GetWorkflowsInput): Promise<WorkflowStatus[]>;
5
6
  export declare function listQueuedWorkflows(sysdb: SystemDatabase, input: GetWorkflowsInput): Promise<WorkflowStatus[]>;
@@ -13,6 +14,20 @@ export declare function forkWorkflow(sysdb: SystemDatabase, workflowID: string,
13
14
  queuePartitionKey?: string;
14
15
  replacementChildren?: Record<string, string>;
15
16
  }): Promise<string>;
17
+ /**
18
+ * Drop the data sources' checkpoints from `startStep` on, then rewind the workflow in
19
+ * the system database.
20
+ *
21
+ * Best effort: if a step fails the workflow is left as it was and the rewind can be
22
+ * retried, which is safe because the deletes are idempotent and the system database is
23
+ * only touched last. A data source that keeps no checkpoints of its own does not
24
+ * implement `deleteCheckpoints` and is skipped.
25
+ */
26
+ export declare function rewindWorkflow(sysdb: SystemDatabase, dataSources: readonly DataSourceTransactionHandler[], workflowID: string, startStep: number, options?: {
27
+ applicationVersion?: string;
28
+ queueName?: string;
29
+ queuePartitionKey?: string;
30
+ }): Promise<void>;
16
31
  export declare function toWorkflowStatus(internal: WorkflowStatusInternal, serializer: DBOSSerializer): Promise<WorkflowStatus>;
17
32
  /** Enforce retention across the entire system database. */
18
33
  export declare function garbageCollect(sysdb: SystemDatabase, cutoffEpochTimestampMs?: number | null, rowsThreshold?: number | null, options?: {
@@ -1 +1 @@
1
- {"version":3,"file":"workflow_management.d.ts","sourceRoot":"","sources":["../../src/workflow_management.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AACxG,OAAO,EAAE,cAAc,EAAsD,MAAM,iBAAiB,CAAC;AAGrG,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAG9G;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,6BAKxF;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAGhH;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,MAAM,EAClB,UAAU,GAAE,OAAc,EAC1B,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,CAqBjC;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IACP,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,GACL,OAAO,CAAC,MAAM,CAAC,CAIjB;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,sBAAsB,EAChC,UAAU,EAAE,cAAc,GACzB,OAAO,CAAC,cAAc,CAAC,CAuCzB;AAED,2DAA2D;AAC3D,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}
1
+ {"version":3,"file":"workflow_management.d.ts","sourceRoot":"","sources":["../../src/workflow_management.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAChF,OAAO,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,YAAY,CAAC;AAExG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,cAAc,CAAC;AAEjE,OAAO,EAAE,cAAc,EAAsD,MAAM,iBAAiB,CAAC;AAGrG,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAG9G;AAED,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,iBAAiB,6BAKxF;AAED,wBAAsB,WAAW,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,SAAS,CAAC,CAGhH;AAED,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,MAAM,EAClB,UAAU,GAAE,OAAc,EAC1B,OAAO,CAAC,EAAE,wBAAwB,GACjC,OAAO,CAAC,QAAQ,EAAE,GAAG,SAAS,CAAC,CAqBjC;AAED,wBAAsB,YAAY,CAChC,KAAK,EAAE,cAAc,EACrB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IACP,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACzC,GACL,OAAO,CAAC,MAAM,CAAC,CAIjB;AAuBD;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,WAAW,EAAE,SAAS,4BAA4B,EAAE,EACpD,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,OAAO,GAAE;IACP,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CACvB,GACL,OAAO,CAAC,IAAI,CAAC,CAef;AAED,wBAAsB,gBAAgB,CACpC,QAAQ,EAAE,sBAAsB,EAChC,UAAU,EAAE,cAAc,GACzB,OAAO,CAAC,cAAc,CAAC,CAuCzB;AAED,2DAA2D;AAC3D,wBAAsB,cAAc,CAClC,KAAK,EAAE,cAAc,EACrB,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,EACtC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,EAC7B,OAAO,GAAE;IAAE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAO,GAC1C,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED,wBAAsB,aAAa,CAAC,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAKxG"}
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.globalTimeout = exports.garbageCollect = exports.toWorkflowStatus = exports.forkWorkflow = exports.listWorkflowSteps = exports.getWorkflow = exports.listQueuedWorkflows = exports.listWorkflows = void 0;
3
+ exports.globalTimeout = exports.garbageCollect = exports.toWorkflowStatus = exports.rewindWorkflow = exports.forkWorkflow = exports.listWorkflowSteps = exports.getWorkflow = exports.listQueuedWorkflows = exports.listWorkflows = void 0;
4
+ const workflow_1 = require("./workflow");
5
+ const error_1 = require("./error");
4
6
  const serialization_1 = require("./serialization");
5
7
  const node_crypto_1 = require("node:crypto");
6
8
  async function listWorkflows(sysdb, input) {
@@ -44,6 +46,48 @@ async function forkWorkflow(sysdb, workflowID, startStep, options = {}) {
44
46
  return newWorkflowID;
45
47
  }
46
48
  exports.forkWorkflow = forkWorkflow;
49
+ /**
50
+ * Refuse to touch a data source's checkpoints for a workflow that is missing or still
51
+ * running. The system database rewind repeats this check under its own transaction;
52
+ * this one only keeps a running workflow's checkpoints intact.
53
+ */
54
+ async function checkRewindable(sysdb, workflowID) {
55
+ const status = await sysdb.getWorkflowStatus(workflowID);
56
+ if (status === null) {
57
+ throw new error_1.DBOSNonExistentWorkflowError(`Workflow ${workflowID} does not exist`);
58
+ }
59
+ if (status.status === workflow_1.StatusString.PENDING ||
60
+ status.status === workflow_1.StatusString.ENQUEUED ||
61
+ status.status === workflow_1.StatusString.DELAYED) {
62
+ throw new error_1.DBOSError(`Cannot rewind ${workflowID} (${status.status}): only a workflow in a terminal state can be rewound, so cancel it first`);
63
+ }
64
+ }
65
+ /**
66
+ * Drop the data sources' checkpoints from `startStep` on, then rewind the workflow in
67
+ * the system database.
68
+ *
69
+ * Best effort: if a step fails the workflow is left as it was and the rewind can be
70
+ * retried, which is safe because the deletes are idempotent and the system database is
71
+ * only touched last. A data source that keeps no checkpoints of its own does not
72
+ * implement `deleteCheckpoints` and is skipped.
73
+ */
74
+ async function rewindWorkflow(sysdb, dataSources, workflowID, startStep, options = {}) {
75
+ if (startStep < 0) {
76
+ throw new error_1.DBOSError(`startStep must be >= 0, got ${startStep}`);
77
+ }
78
+ const withCheckpoints = dataSources.filter((ds) => ds.deleteCheckpoints !== undefined);
79
+ // Deleting a running workflow's checkpoints would pull them out from under the
80
+ // execution that still owns them, so establish the workflow is rewindable before
81
+ // touching anything the system database rewind will not re-check for us.
82
+ if (withCheckpoints.length > 0) {
83
+ await checkRewindable(sysdb, workflowID);
84
+ }
85
+ for (const ds of withCheckpoints) {
86
+ await ds.deleteCheckpoints(workflowID, startStep);
87
+ }
88
+ await sysdb.rewindWorkflow(workflowID, startStep, options);
89
+ }
90
+ exports.rewindWorkflow = rewindWorkflow;
47
91
  async function toWorkflowStatus(internal, serializer) {
48
92
  return {
49
93
  workflowID: internal.workflowUUID,
@@ -1 +1 @@
1
- {"version":3,"file":"workflow_management.js","sourceRoot":"","sources":["../../src/workflow_management.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflow_management.js","sourceRoot":"","sources":["../../src/workflow_management.ts"],"names":[],"mappings":"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"}