@acmekit/workflow-engine-redis 2.13.1
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 +1 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +11 -0
- package/dist/index.js.map +1 -0
- package/dist/loaders/index.d.ts +3 -0
- package/dist/loaders/index.d.ts.map +1 -0
- package/dist/loaders/index.js +11 -0
- package/dist/loaders/index.js.map +1 -0
- package/dist/loaders/redis.d.ts +4 -0
- package/dist/loaders/redis.d.ts.map +1 -0
- package/dist/loaders/redis.js +113 -0
- package/dist/loaders/redis.js.map +1 -0
- package/dist/loaders/utils.d.ts +6 -0
- package/dist/loaders/utils.d.ts.map +1 -0
- package/dist/loaders/utils.js +11 -0
- package/dist/loaders/utils.js.map +1 -0
- package/dist/migrations/Migration20231228143900.d.ts +6 -0
- package/dist/migrations/Migration20231228143900.d.ts.map +1 -0
- package/dist/migrations/Migration20231228143900.js +40 -0
- package/dist/migrations/Migration20231228143900.js.map +1 -0
- package/dist/migrations/Migration20241206123341.d.ts +5 -0
- package/dist/migrations/Migration20241206123341.d.ts.map +1 -0
- package/dist/migrations/Migration20241206123341.js +19 -0
- package/dist/migrations/Migration20241206123341.js.map +1 -0
- package/dist/migrations/Migration20250120111059.d.ts +6 -0
- package/dist/migrations/Migration20250120111059.d.ts.map +1 -0
- package/dist/migrations/Migration20250120111059.js +14 -0
- package/dist/migrations/Migration20250120111059.js.map +1 -0
- package/dist/migrations/Migration20250128174354.d.ts +6 -0
- package/dist/migrations/Migration20250128174354.d.ts.map +1 -0
- package/dist/migrations/Migration20250128174354.js +24 -0
- package/dist/migrations/Migration20250128174354.js.map +1 -0
- package/dist/migrations/Migration20250505101505.d.ts +6 -0
- package/dist/migrations/Migration20250505101505.d.ts.map +1 -0
- package/dist/migrations/Migration20250505101505.js +40 -0
- package/dist/migrations/Migration20250505101505.js.map +1 -0
- package/dist/migrations/Migration20250819110923.d.ts +6 -0
- package/dist/migrations/Migration20250819110923.d.ts.map +1 -0
- package/dist/migrations/Migration20250819110923.js +14 -0
- package/dist/migrations/Migration20250819110923.js.map +1 -0
- package/dist/migrations/Migration20250819110924.d.ts +6 -0
- package/dist/migrations/Migration20250819110924.d.ts.map +1 -0
- package/dist/migrations/Migration20250819110924.js +16 -0
- package/dist/migrations/Migration20250819110924.js.map +1 -0
- package/dist/migrations/Migration20250908080326.d.ts +6 -0
- package/dist/migrations/Migration20250908080326.d.ts.map +1 -0
- package/dist/migrations/Migration20250908080326.js +20 -0
- package/dist/migrations/Migration20250908080326.js.map +1 -0
- package/dist/models/index.d.ts +2 -0
- package/dist/models/index.d.ts.map +1 -0
- package/dist/models/index.js +6 -0
- package/dist/models/index.js.map +1 -0
- package/dist/models/workflow-execution.d.ts +12 -0
- package/dist/models/workflow-execution.d.ts.map +1 -0
- package/dist/models/workflow-execution.js +60 -0
- package/dist/models/workflow-execution.js.map +1 -0
- package/dist/schema/index.d.ts +3 -0
- package/dist/schema/index.d.ts.map +1 -0
- package/dist/schema/index.js +26 -0
- package/dist/schema/index.js.map +1 -0
- package/dist/services/index.d.ts +3 -0
- package/dist/services/index.d.ts.map +1 -0
- package/dist/services/index.js +19 -0
- package/dist/services/index.js.map +1 -0
- package/dist/services/workflow-orchestrator.d.ts +101 -0
- package/dist/services/workflow-orchestrator.d.ts.map +1 -0
- package/dist/services/workflow-orchestrator.js +660 -0
- package/dist/services/workflow-orchestrator.js.map +1 -0
- package/dist/services/workflows-module.d.ts +165 -0
- package/dist/services/workflows-module.d.ts.map +1 -0
- package/dist/services/workflows-module.js +212 -0
- package/dist/services/workflows-module.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/index.d.ts +138 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +3 -0
- package/dist/types/index.js.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +18 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/workflow-orchestrator-storage.d.ts +72 -0
- package/dist/utils/workflow-orchestrator-storage.d.ts.map +1 -0
- package/dist/utils/workflow-orchestrator-storage.js +621 -0
- package/dist/utils/workflow-orchestrator-storage.js.map +1 -0
- package/package.json +50 -0
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.WorkflowExecution = void 0;
|
|
4
|
+
const orchestration_1 = require("@acmekit/framework/orchestration");
|
|
5
|
+
const utils_1 = require("@acmekit/framework/utils");
|
|
6
|
+
exports.WorkflowExecution = utils_1.model
|
|
7
|
+
.define("workflow_execution", {
|
|
8
|
+
id: utils_1.model.id({ prefix: "wf_exec" }),
|
|
9
|
+
workflow_id: utils_1.model.text().primaryKey(),
|
|
10
|
+
transaction_id: utils_1.model.text().primaryKey(),
|
|
11
|
+
run_id: utils_1.model.text().primaryKey(),
|
|
12
|
+
execution: utils_1.model.json().nullable(),
|
|
13
|
+
context: utils_1.model.json().nullable(),
|
|
14
|
+
state: utils_1.model.enum(orchestration_1.TransactionState),
|
|
15
|
+
retention_time: utils_1.model.number().nullable(),
|
|
16
|
+
})
|
|
17
|
+
.indexes([
|
|
18
|
+
{
|
|
19
|
+
on: ["id"],
|
|
20
|
+
where: "deleted_at IS NULL",
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
on: ["workflow_id"],
|
|
24
|
+
where: "deleted_at IS NULL",
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
on: ["transaction_id"],
|
|
28
|
+
where: "deleted_at IS NULL",
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
on: ["workflow_id", "transaction_id", "run_id"],
|
|
32
|
+
unique: true,
|
|
33
|
+
where: "deleted_at IS NULL",
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
on: ["state"],
|
|
37
|
+
where: "deleted_at IS NULL",
|
|
38
|
+
},
|
|
39
|
+
{
|
|
40
|
+
on: ["run_id"],
|
|
41
|
+
where: "deleted_at IS NULL",
|
|
42
|
+
},
|
|
43
|
+
{
|
|
44
|
+
on: ["workflow_id", "transaction_id"],
|
|
45
|
+
where: "deleted_at IS NULL",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
on: ["state", "updated_at"],
|
|
49
|
+
where: "deleted_at IS NULL",
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
on: ["retention_time", "updated_at", "state"],
|
|
53
|
+
where: "deleted_at IS NULL AND retention_time IS NOT NULL",
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
on: ["updated_at", "retention_time"],
|
|
57
|
+
where: "deleted_at IS NULL AND retention_time IS NOT NULL AND state IN ('done', 'failed', 'reverted')",
|
|
58
|
+
},
|
|
59
|
+
]);
|
|
60
|
+
//# sourceMappingURL=workflow-execution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-execution.js","sourceRoot":"","sources":["../../src/models/workflow-execution.ts"],"names":[],"mappings":";;;AAAA,oEAAmE;AACnE,oDAAgD;AAEnC,QAAA,iBAAiB,GAAG,aAAK;KACnC,MAAM,CAAC,oBAAoB,EAAE;IAC5B,EAAE,EAAE,aAAK,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;IACnC,WAAW,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE;IACtC,cAAc,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE;IACzC,MAAM,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,UAAU,EAAE;IACjC,SAAS,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAClC,OAAO,EAAE,aAAK,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE;IAChC,KAAK,EAAE,aAAK,CAAC,IAAI,CAAC,gCAAgB,CAAC;IACnC,cAAc,EAAE,aAAK,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC1C,CAAC;KACD,OAAO,CAAC;IACP;QACE,EAAE,EAAE,CAAC,IAAI,CAAC;QACV,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,aAAa,CAAC;QACnB,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,gBAAgB,CAAC;QACtB,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,aAAa,EAAE,gBAAgB,EAAE,QAAQ,CAAC;QAC/C,MAAM,EAAE,IAAI;QACZ,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,OAAO,CAAC;QACb,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,QAAQ,CAAC;QACd,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,aAAa,EAAE,gBAAgB,CAAC;QACrC,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC;QAC3B,KAAK,EAAE,oBAAoB;KAC5B;IACD;QACE,EAAE,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,OAAO,CAAC;QAC7C,KAAK,EAAE,mDAAmD;KAC3D;IACD;QACE,EAAE,EAAE,CAAC,YAAY,EAAE,gBAAgB,CAAC;QACpC,KAAK,EACH,+FAA+F;KAClG;CACF,CAAC,CAAA"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
declare const _default: "\nenum TransactionState {\n NOT_STARTED\n INVOKING\n WAITING_TO_COMPENSATE\n COMPENSATING\n DONE\n REVERTED\n FAILED\n}\n\ntype WorkflowExecution {\n id: ID!\n created_at: DateTime!\n updated_at: DateTime!\n deleted_at: DateTime\n workflow_id: string\n transaction_id: string\n execution: JSON\n context: JSON\n state: TransactionState\n}\n";
|
|
2
|
+
export default _default;
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":";AAAA,wBAsBC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.default = `
|
|
4
|
+
enum TransactionState {
|
|
5
|
+
NOT_STARTED
|
|
6
|
+
INVOKING
|
|
7
|
+
WAITING_TO_COMPENSATE
|
|
8
|
+
COMPENSATING
|
|
9
|
+
DONE
|
|
10
|
+
REVERTED
|
|
11
|
+
FAILED
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
type WorkflowExecution {
|
|
15
|
+
id: ID!
|
|
16
|
+
created_at: DateTime!
|
|
17
|
+
updated_at: DateTime!
|
|
18
|
+
deleted_at: DateTime
|
|
19
|
+
workflow_id: string
|
|
20
|
+
transaction_id: string
|
|
21
|
+
execution: JSON
|
|
22
|
+
context: JSON
|
|
23
|
+
state: TransactionState
|
|
24
|
+
}
|
|
25
|
+
`;
|
|
26
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schema/index.ts"],"names":[],"mappings":";;AAAA,kBAAe;;;;;;;;;;;;;;;;;;;;;;CAsBd,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAA;AACvC,cAAc,oBAAoB,CAAA"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./workflow-orchestrator"), exports);
|
|
18
|
+
__exportStar(require("./workflows-module"), exports);
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,0DAAuC;AACvC,qDAAkC"}
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import { DistributedTransactionEvents, DistributedTransactionType, TransactionStep } from "@acmekit/framework/orchestration";
|
|
2
|
+
import { ContainerLike, Context, AcmeKitContainer } from "@acmekit/framework/types";
|
|
3
|
+
import { TransactionState } from "@acmekit/framework/utils";
|
|
4
|
+
import { FlowCancelOptions, FlowRunOptions, ReturnWorkflow } from "@acmekit/framework/workflows-sdk";
|
|
5
|
+
import Redis from "ioredis";
|
|
6
|
+
import type { RedisDistributedTransactionStorage } from "../utils";
|
|
7
|
+
export type WorkflowOrchestratorRunOptions<T> = Omit<FlowRunOptions<T>, "container"> & {
|
|
8
|
+
transactionId?: string;
|
|
9
|
+
runId?: string;
|
|
10
|
+
container?: ContainerLike;
|
|
11
|
+
};
|
|
12
|
+
export type WorkflowOrchestratorCancelOptions = Omit<FlowCancelOptions, "transaction" | "transactionId" | "container"> & {
|
|
13
|
+
transactionId: string;
|
|
14
|
+
runId?: string;
|
|
15
|
+
container?: ContainerLike;
|
|
16
|
+
};
|
|
17
|
+
type RegisterStepSuccessOptions<T> = Omit<WorkflowOrchestratorRunOptions<T>, "transactionId" | "input">;
|
|
18
|
+
type RegisterStepFailureOptions<T> = Omit<WorkflowOrchestratorRunOptions<T>, "transactionId" | "input"> & {
|
|
19
|
+
forcePermanentFailure?: boolean;
|
|
20
|
+
};
|
|
21
|
+
type RetryStepOptions<T> = Omit<WorkflowOrchestratorRunOptions<T>, "transactionId" | "input" | "resultFrom">;
|
|
22
|
+
type IdempotencyKeyParts = {
|
|
23
|
+
workflowId: string;
|
|
24
|
+
transactionId: string;
|
|
25
|
+
stepId: string;
|
|
26
|
+
action: "invoke" | "compensate";
|
|
27
|
+
};
|
|
28
|
+
type NotifyOptions = {
|
|
29
|
+
eventType: keyof DistributedTransactionEvents;
|
|
30
|
+
isFlowAsync: boolean;
|
|
31
|
+
workflowId: string;
|
|
32
|
+
transactionId?: string;
|
|
33
|
+
step?: TransactionStep;
|
|
34
|
+
response?: unknown;
|
|
35
|
+
result?: unknown;
|
|
36
|
+
errors?: unknown[];
|
|
37
|
+
state?: TransactionState;
|
|
38
|
+
};
|
|
39
|
+
type SubscriberHandler = {
|
|
40
|
+
(input: NotifyOptions): void;
|
|
41
|
+
} & {
|
|
42
|
+
_id?: string;
|
|
43
|
+
};
|
|
44
|
+
type SubscribeOptions = {
|
|
45
|
+
workflowId: string;
|
|
46
|
+
transactionId?: string;
|
|
47
|
+
subscriber: SubscriberHandler;
|
|
48
|
+
subscriberId?: string;
|
|
49
|
+
};
|
|
50
|
+
type UnsubscribeOptions = {
|
|
51
|
+
workflowId: string;
|
|
52
|
+
transactionId?: string;
|
|
53
|
+
subscriberOrId: string | SubscriberHandler;
|
|
54
|
+
};
|
|
55
|
+
export declare class WorkflowOrchestratorService {
|
|
56
|
+
#private;
|
|
57
|
+
private instanceId;
|
|
58
|
+
protected redisPublisher: Redis;
|
|
59
|
+
protected redisSubscriber: Redis;
|
|
60
|
+
protected container_: AcmeKitContainer;
|
|
61
|
+
private static subscribers;
|
|
62
|
+
protected redisDistributedTransactionStorage_: RedisDistributedTransactionStorage;
|
|
63
|
+
constructor({ dataLoaderOnly, redisDistributedTransactionStorage, redisPublisher, redisSubscriber, sharedContainer, }: {
|
|
64
|
+
dataLoaderOnly: boolean;
|
|
65
|
+
redisDistributedTransactionStorage: RedisDistributedTransactionStorage;
|
|
66
|
+
workflowOrchestratorService: WorkflowOrchestratorService;
|
|
67
|
+
redisPublisher: Redis;
|
|
68
|
+
redisSubscriber: Redis;
|
|
69
|
+
sharedContainer: AcmeKitContainer;
|
|
70
|
+
});
|
|
71
|
+
onApplicationShutdown(): Promise<void>;
|
|
72
|
+
onApplicationPrepareShutdown(): Promise<void>;
|
|
73
|
+
onApplicationStart(): Promise<void>;
|
|
74
|
+
private triggerParentStep;
|
|
75
|
+
run<T = unknown>(workflowIdOrWorkflow: string | ReturnWorkflow<any, any, any>, options?: WorkflowOrchestratorRunOptions<T>): Promise<any>;
|
|
76
|
+
cancel(workflowIdOrWorkflow: string | ReturnWorkflow<any, any, any>, options?: WorkflowOrchestratorCancelOptions): Promise<any>;
|
|
77
|
+
getRunningTransaction(workflowId: string, transactionId: string, context?: Context): Promise<DistributedTransactionType>;
|
|
78
|
+
retryStep<T = unknown>({ idempotencyKey, options, }: {
|
|
79
|
+
idempotencyKey: string | IdempotencyKeyParts;
|
|
80
|
+
options?: RetryStepOptions<T>;
|
|
81
|
+
}): Promise<any>;
|
|
82
|
+
setStepSuccess<T = unknown>({ idempotencyKey, stepResponse, options, }: {
|
|
83
|
+
idempotencyKey: string | IdempotencyKeyParts;
|
|
84
|
+
stepResponse: unknown;
|
|
85
|
+
options?: RegisterStepSuccessOptions<T>;
|
|
86
|
+
}): Promise<any>;
|
|
87
|
+
setStepFailure<T = unknown>({ idempotencyKey, stepResponse, options, }: {
|
|
88
|
+
idempotencyKey: string | IdempotencyKeyParts;
|
|
89
|
+
stepResponse: unknown;
|
|
90
|
+
options?: RegisterStepFailureOptions<T>;
|
|
91
|
+
}): Promise<any>;
|
|
92
|
+
subscribe({ workflowId, transactionId, subscriber, subscriberId, }: SubscribeOptions): void;
|
|
93
|
+
unsubscribe({ workflowId, transactionId, subscriberOrId, }: UnsubscribeOptions): void;
|
|
94
|
+
private notify;
|
|
95
|
+
private processSubscriberNotifications;
|
|
96
|
+
private getChannelName;
|
|
97
|
+
private buildWorkflowEvents;
|
|
98
|
+
private buildIdempotencyKeyAndParts;
|
|
99
|
+
}
|
|
100
|
+
export {};
|
|
101
|
+
//# sourceMappingURL=workflow-orchestrator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-orchestrator.d.ts","sourceRoot":"","sources":["../../src/services/workflow-orchestrator.ts"],"names":[],"mappings":"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"}
|