@acmekit/workflows-sdk 2.13.36 → 2.13.38

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 (80) hide show
  1. package/dist/helper/type.d.ts +5 -15
  2. package/dist/helper/type.d.ts.map +1 -1
  3. package/dist/helper/workflow-export.d.ts +4 -1
  4. package/dist/helper/workflow-export.d.ts.map +1 -1
  5. package/dist/helper/workflow-export.js +42 -37
  6. package/dist/helper/workflow-export.js.map +1 -1
  7. package/dist/index.d.ts +0 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +0 -1
  10. package/dist/index.js.map +1 -1
  11. package/dist/tsconfig.tsbuildinfo +1 -1
  12. package/dist/utils/composer/create-step.d.ts +14 -21
  13. package/dist/utils/composer/create-step.d.ts.map +1 -1
  14. package/dist/utils/composer/create-step.js +16 -70
  15. package/dist/utils/composer/create-step.js.map +1 -1
  16. package/dist/utils/composer/create-workflow.d.ts +17 -13
  17. package/dist/utils/composer/create-workflow.d.ts.map +1 -1
  18. package/dist/utils/composer/create-workflow.js +12 -74
  19. package/dist/utils/composer/create-workflow.js.map +1 -1
  20. package/dist/utils/composer/helpers/create-step-handler.d.ts +1 -1
  21. package/dist/utils/composer/helpers/create-step-handler.d.ts.map +1 -1
  22. package/dist/utils/composer/helpers/create-step-handler.js +97 -52
  23. package/dist/utils/composer/helpers/create-step-handler.js.map +1 -1
  24. package/dist/utils/composer/helpers/workflow-response.d.ts +4 -27
  25. package/dist/utils/composer/helpers/workflow-response.d.ts.map +1 -1
  26. package/dist/utils/composer/helpers/workflow-response.js +1 -14
  27. package/dist/utils/composer/helpers/workflow-response.js.map +1 -1
  28. package/dist/utils/composer/index.d.ts +4 -4
  29. package/dist/utils/composer/index.d.ts.map +1 -1
  30. package/dist/utils/composer/index.js +7 -4
  31. package/dist/utils/composer/index.js.map +1 -1
  32. package/dist/utils/composer/metadata.d.ts +37 -0
  33. package/dist/utils/composer/metadata.d.ts.map +1 -0
  34. package/dist/utils/composer/metadata.js +134 -0
  35. package/dist/utils/composer/metadata.js.map +1 -0
  36. package/dist/utils/composer/query.d.ts +38 -0
  37. package/dist/utils/composer/query.d.ts.map +1 -0
  38. package/dist/utils/composer/query.js +55 -0
  39. package/dist/utils/composer/query.js.map +1 -0
  40. package/dist/utils/composer/signal.d.ts +42 -0
  41. package/dist/utils/composer/signal.d.ts.map +1 -0
  42. package/dist/utils/composer/signal.js +117 -0
  43. package/dist/utils/composer/signal.js.map +1 -0
  44. package/dist/utils/composer/type.d.ts +35 -8
  45. package/dist/utils/composer/type.d.ts.map +1 -1
  46. package/dist/utils/composer/type.js +12 -0
  47. package/dist/utils/composer/type.js.map +1 -1
  48. package/package.json +6 -6
  49. package/dist/testing/index.d.ts +0 -4
  50. package/dist/testing/index.d.ts.map +0 -1
  51. package/dist/testing/index.js +0 -20
  52. package/dist/testing/index.js.map +0 -1
  53. package/dist/testing/mock-step.d.ts +0 -26
  54. package/dist/testing/mock-step.d.ts.map +0 -1
  55. package/dist/testing/mock-step.js +0 -96
  56. package/dist/testing/mock-step.js.map +0 -1
  57. package/dist/testing/types.d.ts +0 -51
  58. package/dist/testing/types.d.ts.map +0 -1
  59. package/dist/testing/types.js +0 -3
  60. package/dist/testing/types.js.map +0 -1
  61. package/dist/testing/workflow-test-runner.d.ts +0 -35
  62. package/dist/testing/workflow-test-runner.d.ts.map +0 -1
  63. package/dist/testing/workflow-test-runner.js +0 -99
  64. package/dist/testing/workflow-test-runner.js.map +0 -1
  65. package/dist/utils/composer/for-each.d.ts +0 -25
  66. package/dist/utils/composer/for-each.d.ts.map +0 -1
  67. package/dist/utils/composer/for-each.js +0 -50
  68. package/dist/utils/composer/for-each.js.map +0 -1
  69. package/dist/utils/composer/pipe.d.ts +0 -24
  70. package/dist/utils/composer/pipe.d.ts.map +0 -1
  71. package/dist/utils/composer/pipe.js +0 -11
  72. package/dist/utils/composer/pipe.js.map +0 -1
  73. package/dist/utils/composer/race.d.ts +0 -19
  74. package/dist/utils/composer/race.d.ts.map +0 -1
  75. package/dist/utils/composer/race.js +0 -43
  76. package/dist/utils/composer/race.js.map +0 -1
  77. package/dist/utils/composer/retry.d.ts +0 -36
  78. package/dist/utils/composer/retry.d.ts.map +0 -1
  79. package/dist/utils/composer/retry.js +0 -27
  80. package/dist/utils/composer/retry.js.map +0 -1
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.metadata = void 0;
4
+ const orchestration_1 = require("@acmekit/orchestration");
5
+ const utils_1 = require("@acmekit/utils");
6
+ const ulid_1 = require("ulid");
7
+ const create_step_1 = require("./create-step");
8
+ const step_response_1 = require("./helpers/step-response");
9
+ const transform_1 = require("./transform");
10
+ /**
11
+ * No-op metadata implementation used when called outside any context.
12
+ */
13
+ const noopMetadata = {
14
+ get: () => undefined,
15
+ set: () => exports.metadata,
16
+ del: () => exports.metadata,
17
+ current: () => ({}),
18
+ append: () => exports.metadata,
19
+ remove: () => exports.metadata,
20
+ increment: () => exports.metadata,
21
+ decrement: () => exports.metadata,
22
+ };
23
+ function getComposerContext() {
24
+ return global[utils_1.OrchestrationUtils.SymbolAcmeKitWorkflowComposerContext];
25
+ }
26
+ /**
27
+ * Composer-level handlers — create internal steps / transforms
28
+ * so that metadata operations participate in the workflow DAG.
29
+ */
30
+ const composerHandlers = {
31
+ set(key, value) {
32
+ const step = (0, create_step_1.createStep)(`set-metadata-${(0, ulid_1.ulid)()}`, async (input) => {
33
+ exports.metadata.set(input.key, input.value);
34
+ return new step_response_1.StepResponse(void 0);
35
+ });
36
+ step({ key, value });
37
+ return exports.metadata;
38
+ },
39
+ get(key) {
40
+ return (0, transform_1.transform)({}, () => exports.metadata.get(key));
41
+ },
42
+ del(key) {
43
+ const step = (0, create_step_1.createStep)(`del-metadata-${(0, ulid_1.ulid)()}`, async (input) => {
44
+ exports.metadata.del(input.key);
45
+ return new step_response_1.StepResponse(void 0);
46
+ });
47
+ step({ key });
48
+ return exports.metadata;
49
+ },
50
+ current() {
51
+ return (0, transform_1.transform)({}, () => exports.metadata.current());
52
+ },
53
+ append(key, value) {
54
+ const step = (0, create_step_1.createStep)(`append-metadata-${(0, ulid_1.ulid)()}`, async (input) => {
55
+ exports.metadata.append(input.key, input.value);
56
+ return new step_response_1.StepResponse(void 0);
57
+ });
58
+ step({ key, value });
59
+ return exports.metadata;
60
+ },
61
+ remove(key, value) {
62
+ const step = (0, create_step_1.createStep)(`remove-metadata-${(0, ulid_1.ulid)()}`, async (input) => {
63
+ exports.metadata.remove(input.key, input.value);
64
+ return new step_response_1.StepResponse(void 0);
65
+ });
66
+ step({ key, value });
67
+ return exports.metadata;
68
+ },
69
+ increment(key, amount) {
70
+ const step = (0, create_step_1.createStep)(`increment-metadata-${(0, ulid_1.ulid)()}`, async (input) => {
71
+ exports.metadata.increment(input.key, input.amount);
72
+ return new step_response_1.StepResponse(void 0);
73
+ });
74
+ step({ key, amount: amount ?? 1 });
75
+ return exports.metadata;
76
+ },
77
+ decrement(key, amount) {
78
+ const step = (0, create_step_1.createStep)(`decrement-metadata-${(0, ulid_1.ulid)()}`, async (input) => {
79
+ exports.metadata.decrement(input.key, input.amount);
80
+ return new step_response_1.StepResponse(void 0);
81
+ });
82
+ step({ key, amount: amount ?? 1 });
83
+ return exports.metadata;
84
+ },
85
+ };
86
+ /**
87
+ * Unified metadata accessor. Works in all contexts:
88
+ *
89
+ * 1. **Inside step functions / query handlers / transform callbacks** —
90
+ * Reads and writes go directly to the workflow's `flow.customMetadata`
91
+ * via `AsyncLocalStorage`.
92
+ *
93
+ * 2. **Inside the workflow definition body** (same level as `transform()`,
94
+ * `when()`) — Each write creates a lightweight internal step that
95
+ * executes at runtime. `metadata.get()` creates a transform that
96
+ * returns a `WorkflowData` proxy.
97
+ *
98
+ * 3. **Outside any context** — Safe no-op. Reads return `undefined`,
99
+ * writes are silent.
100
+ *
101
+ * @example
102
+ * import { createStep, createWorkflow, metadata, StepResponse } from "@acmekit/framework/workflows-sdk"
103
+ *
104
+ * const step1 = createStep("step1", async () => {
105
+ * metadata.set("stage", "processing") // direct write
106
+ * return new StepResponse("ok")
107
+ * })
108
+ *
109
+ * const step2 = createStep("step2", async () => {
110
+ * return new StepResponse({ stage: metadata.get("stage") })
111
+ * })
112
+ *
113
+ * createWorkflow("my-wf", (input) => {
114
+ * step1()
115
+ * metadata.set("source", "workflow") // creates internal step
116
+ * const source = metadata.get("source") // creates transform → WorkflowData
117
+ * return step2()
118
+ * })
119
+ */
120
+ exports.metadata = new Proxy(noopMetadata, {
121
+ get(_target, prop, _receiver) {
122
+ // 1. Inside step / query / transform execution (AsyncLocalStorage active)
123
+ const store = (0, orchestration_1.getActiveMetadataStore)();
124
+ if (store)
125
+ return store[prop];
126
+ // 2. Inside workflow composer body (definition time)
127
+ if (getComposerContext() && prop in composerHandlers) {
128
+ return composerHandlers[prop];
129
+ }
130
+ // 3. No-op fallback
131
+ return noopMetadata[prop];
132
+ },
133
+ });
134
+ //# sourceMappingURL=metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../../src/utils/composer/metadata.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { QueryDefinition } from "@acmekit/orchestration";
2
+ export type { QueryDefinition };
3
+ /**
4
+ * Define a query that can be invoked on a running workflow instance.
5
+ *
6
+ * @typeParam TResult - The type of the query result.
7
+ * @param name - A unique query name.
8
+ * @returns A query definition to be used with `query()` inside workflows and `.query()` from outside.
9
+ *
10
+ * @example
11
+ * const statusQuery = defineQuery<string>("status")
12
+ */
13
+ export declare function defineQuery<TResult = unknown>(name: string): QueryDefinition<TResult>;
14
+ /**
15
+ * Register a query handler in the current workflow.
16
+ *
17
+ * Creates no flow graph entry and no step. Queries allow external callers
18
+ * to read workflow state without advancing the state machine or writing a checkpoint.
19
+ *
20
+ * The `key` function is per-query — different queries in the same workflow
21
+ * can route by different keys.
22
+ *
23
+ * @param def - The query definition (from `defineQuery`).
24
+ * @param opts - Configuration for the query.
25
+ * @param opts.key - A function that extracts the routing key from the workflow input.
26
+ * @param opts.handler - The handler function that returns the query result.
27
+ *
28
+ * @example
29
+ * query(statusQuery, {
30
+ * key: (input) => input.orderId,
31
+ * handler: ({ context, flow }) => flow.state
32
+ * })
33
+ */
34
+ export declare function query<TResult>(def: QueryDefinition<TResult>, opts: {
35
+ key?: (input: any) => string;
36
+ handler: (ctx: any) => TResult;
37
+ }): void;
38
+ //# sourceMappingURL=query.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAMxD,YAAY,EAAE,eAAe,EAAE,CAAA;AAE/B;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,OAAO,GAAG,OAAO,EAC3C,IAAI,EAAE,MAAM,GACX,eAAe,CAAC,OAAO,CAAC,CAK1B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAC3B,GAAG,EAAE,eAAe,CAAC,OAAO,CAAC,EAC7B,IAAI,EAAE;IACJ,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAA;IAC5B,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAA;CAC/B,GACA,IAAI,CAkBN"}
@@ -0,0 +1,55 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineQuery = defineQuery;
4
+ exports.query = query;
5
+ const utils_1 = require("@acmekit/utils");
6
+ /**
7
+ * Define a query that can be invoked on a running workflow instance.
8
+ *
9
+ * @typeParam TResult - The type of the query result.
10
+ * @param name - A unique query name.
11
+ * @returns A query definition to be used with `query()` inside workflows and `.query()` from outside.
12
+ *
13
+ * @example
14
+ * const statusQuery = defineQuery<string>("status")
15
+ */
16
+ function defineQuery(name) {
17
+ return {
18
+ name,
19
+ __type: "query_definition",
20
+ };
21
+ }
22
+ /**
23
+ * Register a query handler in the current workflow.
24
+ *
25
+ * Creates no flow graph entry and no step. Queries allow external callers
26
+ * to read workflow state without advancing the state machine or writing a checkpoint.
27
+ *
28
+ * The `key` function is per-query — different queries in the same workflow
29
+ * can route by different keys.
30
+ *
31
+ * @param def - The query definition (from `defineQuery`).
32
+ * @param opts - Configuration for the query.
33
+ * @param opts.key - A function that extracts the routing key from the workflow input.
34
+ * @param opts.handler - The handler function that returns the query result.
35
+ *
36
+ * @example
37
+ * query(statusQuery, {
38
+ * key: (input) => input.orderId,
39
+ * handler: ({ context, flow }) => flow.state
40
+ * })
41
+ */
42
+ function query(def, opts) {
43
+ const context = global[utils_1.OrchestrationUtils.SymbolAcmeKitWorkflowComposerContext];
44
+ if (!context) {
45
+ throw new Error("query() must be used inside a createWorkflow definition");
46
+ }
47
+ // Store the query registration for runtime wiring
48
+ context.queryRegistrations_ ??= [];
49
+ context.queryRegistrations_.push({
50
+ name: def.name,
51
+ keyFn: opts.key,
52
+ handler: opts.handler,
53
+ });
54
+ }
55
+ //# sourceMappingURL=query.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"query.js","sourceRoot":"","sources":["../../../src/utils/composer/query.ts"],"names":[],"mappings":";;AAkBA,kCAOC;AAsBD,sBAwBC;AAtED,0CAAmD;AAOnD;;;;;;;;;GASG;AACH,SAAgB,WAAW,CACzB,IAAY;IAEZ,OAAO;QACL,IAAI;QACJ,MAAM,EAAE,kBAAkB;KACC,CAAA;AAC/B,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,SAAgB,KAAK,CACnB,GAA6B,EAC7B,IAGC;IAED,MAAM,OAAO,GAAG,MAAM,CACpB,0BAAkB,CAAC,oCAAoC,CACvB,CAAA;IAElC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,yDAAyD,CAC1D,CAAA;IACH,CAAC;IAED,kDAAkD;IAClD,OAAO,CAAC,mBAAmB,KAAK,EAAE,CAAA;IAClC,OAAO,CAAC,mBAAmB,CAAC,IAAI,CAAC;QAC/B,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,KAAK,EAAE,IAAI,CAAC,GAAG;QACf,OAAO,EAAE,IAAI,CAAC,OAAO;KACtB,CAAC,CAAA;AACJ,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { SignalDefinition } from "@acmekit/orchestration";
2
+ import { WorkflowData } from "./type";
3
+ export type { SignalDefinition };
4
+ /**
5
+ * Define a signal that can be sent to a running workflow instance.
6
+ *
7
+ * @typeParam TPayload - The type of the payload the signal carries.
8
+ * @param name - A unique signal name.
9
+ * @returns A signal definition to be used with `signal()` inside workflows and `.signal()` from outside.
10
+ *
11
+ * @example
12
+ * const approvalSignal = defineSignal<{ approvedBy: string }>("approval")
13
+ */
14
+ export declare function defineSignal<TPayload = unknown>(name: string): SignalDefinition<TPayload>;
15
+ /**
16
+ * Register a signal step in the current workflow.
17
+ *
18
+ * Sets `definition.signal = { name, key, timeout }` on the step.
19
+ * Does not wrap createStep — adds the action directly to the flow graph
20
+ * with a no-op handler that returns void (so the orchestrator treats it
21
+ * as an awaiting async step).
22
+ *
23
+ * The `key` function is called at composition time with the workflow `input`
24
+ * proxy, producing a `WorkflowData` reference. At runtime, the handler resolves
25
+ * the key from the transaction context, sets it on `step.definition.signal.key`,
26
+ * and registers the signal in the signal index for O(1) routing.
27
+ *
28
+ * @param def - The signal definition (from `defineSignal`).
29
+ * @param opts - Configuration for the signal step.
30
+ * @param opts.key - A function that extracts the routing key from the workflow input.
31
+ * @param opts.timeout - Optional timeout as a number (seconds) or duration string (e.g. "7d").
32
+ * @returns WorkflowData containing the signal payload when delivered.
33
+ *
34
+ * @example
35
+ * const byOrderId = (input: { orderId: string }) => input.orderId
36
+ * const approval = signal(approvalSignal, { key: byOrderId, timeout: "7d" })
37
+ */
38
+ export declare function signal<TPayload>(def: SignalDefinition<TPayload>, opts?: {
39
+ key?: (input: any) => string;
40
+ timeout?: number | string;
41
+ }): WorkflowData<TPayload>;
42
+ //# sourceMappingURL=signal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/signal.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,gBAAgB,EAEjB,MAAM,wBAAwB,CAAA;AAK/B,OAAO,EAEL,YAAY,EACb,MAAM,QAAQ,CAAA;AAEf,YAAY,EAAE,gBAAgB,EAAE,CAAA;AAEhC;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAAC,QAAQ,GAAG,OAAO,EAC7C,IAAI,EAAE,MAAM,GACX,gBAAgB,CAAC,QAAQ,CAAC,CAK5B;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,MAAM,CAAC,QAAQ,EAC7B,GAAG,EAAE,gBAAgB,CAAC,QAAQ,CAAC,EAC/B,IAAI,GAAE;IACJ,GAAG,CAAC,EAAE,CAAC,KAAK,EAAE,GAAG,KAAK,MAAM,CAAA;IAC5B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CACrB,GACL,YAAY,CAAC,QAAQ,CAAC,CA0FxB"}
@@ -0,0 +1,117 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.defineSignal = defineSignal;
4
+ exports.signal = signal;
5
+ const orchestration_1 = require("@acmekit/orchestration");
6
+ const utils_1 = require("@acmekit/utils");
7
+ const ulid_1 = require("ulid");
8
+ const resolve_value_1 = require("./helpers/resolve-value");
9
+ const proxy_1 = require("./helpers/proxy");
10
+ /**
11
+ * Define a signal that can be sent to a running workflow instance.
12
+ *
13
+ * @typeParam TPayload - The type of the payload the signal carries.
14
+ * @param name - A unique signal name.
15
+ * @returns A signal definition to be used with `signal()` inside workflows and `.signal()` from outside.
16
+ *
17
+ * @example
18
+ * const approvalSignal = defineSignal<{ approvedBy: string }>("approval")
19
+ */
20
+ function defineSignal(name) {
21
+ return {
22
+ name,
23
+ __type: "signal_definition",
24
+ };
25
+ }
26
+ /**
27
+ * Register a signal step in the current workflow.
28
+ *
29
+ * Sets `definition.signal = { name, key, timeout }` on the step.
30
+ * Does not wrap createStep — adds the action directly to the flow graph
31
+ * with a no-op handler that returns void (so the orchestrator treats it
32
+ * as an awaiting async step).
33
+ *
34
+ * The `key` function is called at composition time with the workflow `input`
35
+ * proxy, producing a `WorkflowData` reference. At runtime, the handler resolves
36
+ * the key from the transaction context, sets it on `step.definition.signal.key`,
37
+ * and registers the signal in the signal index for O(1) routing.
38
+ *
39
+ * @param def - The signal definition (from `defineSignal`).
40
+ * @param opts - Configuration for the signal step.
41
+ * @param opts.key - A function that extracts the routing key from the workflow input.
42
+ * @param opts.timeout - Optional timeout as a number (seconds) or duration string (e.g. "7d").
43
+ * @returns WorkflowData containing the signal payload when delivered.
44
+ *
45
+ * @example
46
+ * const byOrderId = (input: { orderId: string }) => input.orderId
47
+ * const approval = signal(approvalSignal, { key: byOrderId, timeout: "7d" })
48
+ */
49
+ function signal(def, opts = {}) {
50
+ const context = global[utils_1.OrchestrationUtils.SymbolAcmeKitWorkflowComposerContext];
51
+ if (!context) {
52
+ throw new Error("signal() must be used inside a createWorkflow definition");
53
+ }
54
+ const stepName = `__signal_${def.name}`;
55
+ // Evaluate key function at composition time with input proxy.
56
+ // Produces a WorkflowData reference that resolves at runtime.
57
+ let keyRef;
58
+ if (opts.key) {
59
+ const inputProxy = (0, proxy_1.proxify)({
60
+ __type: utils_1.OrchestrationUtils.SymbolInputReference,
61
+ __step__: "",
62
+ });
63
+ keyRef = opts.key(inputProxy);
64
+ }
65
+ const signalField = {
66
+ name: def.name,
67
+ timeout: opts.timeout,
68
+ };
69
+ const stepConfig = {
70
+ async: true,
71
+ noCompensation: true,
72
+ saveResponse: true,
73
+ signal: signalField,
74
+ uuid: (0, ulid_1.ulid)(),
75
+ };
76
+ // No-op handler: signal steps wait for external delivery.
77
+ // The handler resolves the key at runtime and registers the signal
78
+ // in the signal index and flow's signalRegistry for O(1) routing.
79
+ const handler = {
80
+ invoke: async (stepArguments) => {
81
+ const { transaction, step } = stepArguments;
82
+ const flow = transaction.getFlow();
83
+ // Resolve and set the key value at runtime
84
+ if (keyRef) {
85
+ const txContext = transaction.getContext();
86
+ let actualKey = (0, resolve_value_1.resolveValue)(keyRef, txContext);
87
+ if (actualKey instanceof Promise) {
88
+ actualKey = await actualKey;
89
+ }
90
+ if (actualKey != null) {
91
+ step.definition.signal.key = String(actualKey);
92
+ }
93
+ }
94
+ // Register in flow's signalRegistry (persisted in checkpoints)
95
+ flow.signalRegistry ??= {};
96
+ flow.signalRegistry[def.name] = step.definition.action;
97
+ // Register in WorkflowManager signal index for O(1) routing
98
+ const sig = step.definition.signal;
99
+ orchestration_1.WorkflowManager.registerSignalIndex(flow.modelId, sig.name, sig.key, flow.transactionId);
100
+ // Persist the signalRegistry to the checkpoint so that
101
+ // a later `retrieveExistingTransaction` sees the registration.
102
+ await transaction.saveCheckpoint();
103
+ // Return void — orchestrator treats this as awaiting async step
104
+ return undefined;
105
+ },
106
+ compensate: undefined,
107
+ };
108
+ context.flow.addAction(stepName, stepConfig);
109
+ context.isAsync = true;
110
+ context.handlers.set(stepName, handler);
111
+ const ret = {
112
+ __type: utils_1.OrchestrationUtils.SymbolWorkflowStep,
113
+ __step__: stepName,
114
+ };
115
+ return (0, proxy_1.proxify)(ret);
116
+ }
117
+ //# sourceMappingURL=signal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signal.js","sourceRoot":"","sources":["../../../src/utils/composer/signal.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,25 @@
1
- import { LocalWorkflow, OrchestratorBuilder, TransactionContext as OriginalWorkflowTransactionContext, TransactionModelOptions, TransactionPayload, TransactionStepsDefinition, WorkflowHandler } from "@acmekit/orchestration";
1
+ import { LocalWorkflow, OrchestratorBuilder, TransactionContext as OriginalWorkflowTransactionContext, TransactionModelOptions, TransactionPayload, TransactionStepsDefinition, WorkflowHandler, WorkflowMetadata } from "@acmekit/orchestration";
2
2
  import { Context, LoadedModule, AcmeKitContainer } from "@acmekit/types";
3
3
  import { ExportedWorkflow } from "../../helper";
4
4
  import { Hook } from "./create-hook";
5
5
  import { CompensateFn, InvokeFn } from "./create-step";
6
+ /**
7
+ * Generic schema interface. Supports Zod (.parse), Yup (.validate),
8
+ * or any custom validator exposing either method.
9
+ */
10
+ export type SchemaLike<T> = {
11
+ parse(data: unknown): T;
12
+ } | {
13
+ validate(data: unknown): T;
14
+ };
15
+ /** Extract output type T from a SchemaLike<T>. */
16
+ export type InferSchemaOutput<S> = S extends {
17
+ parse(data: unknown): infer T;
18
+ } ? T : S extends {
19
+ validate(data: unknown): infer T;
20
+ } ? T : never;
21
+ /** @internal Runtime dispatch: calls .parse() or .validate(), whichever exists. */
22
+ export declare function runSchema<T>(schema: SchemaLike<T>, data: unknown): T;
6
23
  export type StepFunctionResult<TOutput extends unknown | unknown[] = unknown> = (this: CreateWorkflowComposerContext) => WorkflowData<TOutput>;
7
24
  export type StepFunctionReturnConfig<TOutput> = {
8
25
  config(config: {
@@ -49,6 +66,11 @@ export type WorkflowData<T = unknown> = (T extends Array<infer Item> ? Array<Ite
49
66
  name?: string;
50
67
  } & Omit<TransactionStepsDefinition, "next" | "uuid" | "action">): WorkflowData<T>;
51
68
  };
69
+ export type QueryRegistration = {
70
+ name: string;
71
+ keyFn?: (input: any) => string;
72
+ handler: (ctx: any) => unknown;
73
+ };
52
74
  export type CreateWorkflowComposerContext = {
53
75
  __type: string;
54
76
  hooks_: {
@@ -68,6 +90,11 @@ export type CreateWorkflowComposerContext = {
68
90
  input: any;
69
91
  }>;
70
92
  parallelizeBinder: <TOutput extends (WorkflowData | undefined)[] = WorkflowData[]>(fn: (this: CreateWorkflowComposerContext) => TOutput) => TOutput;
93
+ /**
94
+ * Query definitions registered via the `query()` primitive.
95
+ * These are registered into `WorkflowManager.queryIndex_` when the workflow starts.
96
+ */
97
+ queryRegistrations_?: QueryRegistration[];
71
98
  };
72
99
  /**
73
100
  * The step's context.
@@ -106,9 +133,14 @@ export interface StepExecutionContext {
106
133
  */
107
134
  container: AcmeKitContainer;
108
135
  /**
109
- * Metadata passed in the input.
136
+ * Workflow metadata accessor. Use to read/write arbitrary key-value
137
+ * pairs that persist across steps within the same workflow execution.
138
+ */
139
+ metadata: WorkflowMetadata;
140
+ /**
141
+ * @internal Original transaction payload metadata (attempt, action, idempotency_key, etc.).
110
142
  */
111
- metadata: TransactionPayload["metadata"];
143
+ " transactionMetadata": TransactionPayload["metadata"];
112
144
  /**
113
145
  * {@inheritDoc types!Context}
114
146
  */
@@ -136,11 +168,6 @@ export interface StepExecutionContext {
136
168
  * Get access to the definition of the step.
137
169
  */
138
170
  " stepDefinition": TransactionStepsDefinition;
139
- /**
140
- * Step-level metadata defined via `createStep({ metadata: ... })`.
141
- * Enables richer instrumentation, UI display, and alerting.
142
- */
143
- stepMetadata?: Record<string, unknown>;
144
171
  }
145
172
  export type WorkflowTransactionContext = StepExecutionContext & OriginalWorkflowTransactionContext & {
146
173
  invoke: {
@@ -1 +1 @@
1
- {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/type.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../src/utils/composer/type.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runSchema = runSchema;
4
+ /** @internal Runtime dispatch: calls .parse() or .validate(), whichever exists. */
5
+ function runSchema(schema, data) {
6
+ if ("parse" in schema && typeof schema.parse === "function") {
7
+ return schema.parse(data);
8
+ }
9
+ if ("validate" in schema &&
10
+ typeof schema.validate === "function") {
11
+ return schema.validate(data);
12
+ }
13
+ throw new Error("Schema must implement parse() or validate()");
14
+ }
3
15
  //# sourceMappingURL=type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/utils/composer/type.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"type.js","sourceRoot":"","sources":["../../../src/utils/composer/type.ts"],"names":[],"mappings":";;AA+BA,8BAWC;AAZD,mFAAmF;AACnF,SAAgB,SAAS,CAAI,MAAqB,EAAE,IAAa;IAC/D,IAAI,OAAO,IAAI,MAAM,IAAI,OAAQ,MAAc,CAAC,KAAK,KAAK,UAAU,EAAE,CAAC;QACrE,OAAQ,MAAc,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IACpC,CAAC;IACD,IACE,UAAU,IAAI,MAAM;QACpB,OAAQ,MAAc,CAAC,QAAQ,KAAK,UAAU,EAC9C,CAAC;QACD,OAAQ,MAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;IACvC,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAA;AAChE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@acmekit/workflows-sdk",
3
- "version": "2.13.36",
3
+ "version": "2.13.38",
4
4
  "description": "Set of workflows tooling for AcmeKit",
5
5
  "main": "dist/index.js",
6
6
  "exports": {
@@ -27,13 +27,13 @@
27
27
  "author": "AcmeKit",
28
28
  "license": "MIT",
29
29
  "devDependencies": {
30
- "@acmekit/types": "2.13.36"
30
+ "@acmekit/types": "2.13.38"
31
31
  },
32
32
  "dependencies": {
33
- "@acmekit/deps": "2.13.36",
34
- "@acmekit/modules-sdk": "2.13.36",
35
- "@acmekit/orchestration": "2.13.36",
36
- "@acmekit/utils": "2.13.36",
33
+ "@acmekit/deps": "2.13.38",
34
+ "@acmekit/modules-sdk": "2.13.38",
35
+ "@acmekit/orchestration": "2.13.38",
36
+ "@acmekit/utils": "2.13.38",
37
37
  "ulid": "^2.3.0"
38
38
  },
39
39
  "scripts": {
@@ -1,4 +0,0 @@
1
- export * from "./mock-step";
2
- export * from "./types";
3
- export * from "./workflow-test-runner";
4
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,SAAS,CAAA;AACvB,cAAc,wBAAwB,CAAA"}
@@ -1,20 +0,0 @@
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("./mock-step"), exports);
18
- __exportStar(require("./types"), exports);
19
- __exportStar(require("./workflow-test-runner"), exports);
20
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAA2B;AAC3B,0CAAuB;AACvB,yDAAsC"}
@@ -1,26 +0,0 @@
1
- import { MockStepOptions } from "./types";
2
- /**
3
- * Replace the invoke and/or compensate handlers for a specific step in a
4
- * registered workflow. Useful for isolating a single step's behavior in tests.
5
- *
6
- * Returns a `restore` function that reverts the mock.
7
- *
8
- * @example
9
- * ```ts
10
- * const restore = mockStep("my-workflow", "create-record", {
11
- * invoke: () => ({ id: "mock-id" }),
12
- * })
13
- *
14
- * const { result } = await myWorkflow.run({ input: { ... } })
15
- * expect(result.id).toBe("mock-id")
16
- *
17
- * restore()
18
- * ```
19
- */
20
- export declare function mockStep<TOutput = unknown>(workflowId: string, stepAction: string, options: MockStepOptions<TOutput>): () => void;
21
- /**
22
- * Restore all mocked steps for a given workflow (or all workflows).
23
- * Useful in `afterEach` / `afterAll` hooks.
24
- */
25
- export declare function restoreAllMocks(workflowId?: string): void;
26
- //# sourceMappingURL=mock-step.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mock-step.d.ts","sourceRoot":"","sources":["../../src/testing/mock-step.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AASzC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,QAAQ,CAAC,OAAO,GAAG,OAAO,EACxC,UAAU,EAAE,MAAM,EAClB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,eAAe,CAAC,OAAO,CAAC,GAChC,MAAM,IAAI,CAwDZ;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAmBzD"}