@emmvish/stable-request 1.5.3 → 1.6.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.
@@ -0,0 +1,276 @@
1
+ import { executeNonLinearWorkflow } from './execute-non-linear-workflow.js';
2
+ import { safelyExecuteUnknownFunction } from './safely-execute-unknown-function.js';
3
+ import { PHASE_DECISION_ACTIONS } from '../enums/index.js';
4
+ export async function executeBranchWorkflow(context) {
5
+ const { branches, workflowId, commonGatewayOptions, requestGroups, logPhaseResults, handlePhaseCompletion, handlePhaseError = () => { }, handleBranchCompletion, maxSerializableChars, workflowHookParams, sharedBuffer, stopOnFirstPhaseError, maxWorkflowIterations } = context;
6
+ const branchResults = [];
7
+ const allPhaseResults = [];
8
+ const executionHistory = [];
9
+ let totalRequests = 0;
10
+ let successfulRequests = 0;
11
+ let failedRequests = 0;
12
+ let terminatedEarly = false;
13
+ let terminationReason;
14
+ const parallelBranches = [];
15
+ const serialBranches = [];
16
+ branches.forEach(branch => {
17
+ if (branch.executeInParallel) {
18
+ parallelBranches.push(branch);
19
+ }
20
+ else {
21
+ serialBranches.push(branch);
22
+ }
23
+ });
24
+ if (parallelBranches.length > 0) {
25
+ if (logPhaseResults) {
26
+ console.info(`\nstable-request: [Workflow: ${workflowId}] Executing ${parallelBranches.length} branches in parallel: [${parallelBranches.map(b => b.id).join(', ')}]`);
27
+ }
28
+ const parallelPromises = parallelBranches.map(async (branch) => {
29
+ const branchStartTime = Date.now();
30
+ try {
31
+ const result = await executeNonLinearWorkflow({
32
+ phases: branch.phases,
33
+ workflowId: `${workflowId}-branch-${branch.id}`,
34
+ commonGatewayOptions,
35
+ requestGroups,
36
+ logPhaseResults,
37
+ handlePhaseCompletion,
38
+ handlePhaseError,
39
+ handlePhaseDecision: workflowHookParams?.handlePhaseDecision,
40
+ maxSerializableChars,
41
+ workflowHookParams,
42
+ sharedBuffer,
43
+ stopOnFirstPhaseError,
44
+ maxWorkflowIterations
45
+ });
46
+ const branchExecutionTime = Date.now() - branchStartTime;
47
+ const branchResult = {
48
+ branchId: branch.id,
49
+ success: result.failedRequests === 0,
50
+ executionTime: branchExecutionTime,
51
+ completedPhases: result.phaseResults.length,
52
+ phaseResults: result.phaseResults
53
+ };
54
+ if (branch.branchDecisionHook) {
55
+ try {
56
+ const decision = await safelyExecuteUnknownFunction(branch.branchDecisionHook, {
57
+ workflowId,
58
+ branchResults: result.phaseResults,
59
+ branchId: branch.id,
60
+ executionHistory: result.executionHistory,
61
+ sharedBuffer,
62
+ params: workflowHookParams?.handleBranchDecisionParams
63
+ });
64
+ branchResult.decision = decision;
65
+ if (decision.action === PHASE_DECISION_ACTIONS.TERMINATE) {
66
+ terminatedEarly = true;
67
+ terminationReason = decision.metadata?.reason || `Branch ${branch.id} terminated workflow`;
68
+ }
69
+ }
70
+ catch (decisionError) {
71
+ console.error(`stable-request: [Workflow: ${workflowId}] Error in branch decision hook for ${branch.id}:`, decisionError);
72
+ }
73
+ }
74
+ return {
75
+ branchResult,
76
+ phaseResults: result.phaseResults,
77
+ executionHistory: result.executionHistory,
78
+ totalRequests: result.totalRequests,
79
+ successfulRequests: result.successfulRequests,
80
+ failedRequests: result.failedRequests
81
+ };
82
+ }
83
+ catch (error) {
84
+ console.error(`stable-request: [Workflow: ${workflowId}] Branch ${branch.id} failed:`, error);
85
+ return {
86
+ branchResult: {
87
+ branchId: branch.id,
88
+ success: false,
89
+ executionTime: Date.now() - branchStartTime,
90
+ completedPhases: 0,
91
+ phaseResults: []
92
+ },
93
+ phaseResults: [],
94
+ executionHistory: [],
95
+ totalRequests: 0,
96
+ successfulRequests: 0,
97
+ failedRequests: 1
98
+ };
99
+ }
100
+ });
101
+ const parallelResults = await Promise.all(parallelPromises);
102
+ for (const result of parallelResults) {
103
+ branchResults.push(result.branchResult);
104
+ allPhaseResults.push(...result.phaseResults);
105
+ executionHistory.push(...result.executionHistory);
106
+ totalRequests += result.totalRequests;
107
+ successfulRequests += result.successfulRequests;
108
+ failedRequests += result.failedRequests;
109
+ if (handleBranchCompletion) {
110
+ try {
111
+ await safelyExecuteUnknownFunction(handleBranchCompletion, {
112
+ branchId: result.branchResult.branchId,
113
+ branchResults: result.branchResult.phaseResults,
114
+ success: result.branchResult.success
115
+ });
116
+ }
117
+ catch (hookError) {
118
+ console.error(`stable-request: [Workflow: ${workflowId}] Error in handleBranchCompletion hook:`, hookError);
119
+ }
120
+ }
121
+ }
122
+ if (terminatedEarly) {
123
+ return {
124
+ branchResults,
125
+ allPhaseResults,
126
+ executionHistory,
127
+ totalRequests,
128
+ successfulRequests,
129
+ failedRequests,
130
+ terminatedEarly,
131
+ terminationReason
132
+ };
133
+ }
134
+ }
135
+ let branchIndex = 0;
136
+ while (branchIndex < serialBranches.length) {
137
+ const branch = serialBranches[branchIndex];
138
+ if (logPhaseResults) {
139
+ console.info(`\nstable-request: [Workflow: ${workflowId}] Executing branch: ${branch.id}`);
140
+ }
141
+ const branchStartTime = Date.now();
142
+ try {
143
+ const result = await executeNonLinearWorkflow({
144
+ phases: branch.phases,
145
+ workflowId: `${workflowId}-branch-${branch.id}`,
146
+ commonGatewayOptions,
147
+ requestGroups,
148
+ logPhaseResults,
149
+ handlePhaseCompletion,
150
+ handlePhaseError,
151
+ handlePhaseDecision: workflowHookParams?.handlePhaseDecision,
152
+ maxSerializableChars,
153
+ workflowHookParams,
154
+ sharedBuffer,
155
+ stopOnFirstPhaseError,
156
+ maxWorkflowIterations
157
+ });
158
+ const branchExecutionTime = Date.now() - branchStartTime;
159
+ const branchResult = {
160
+ branchId: branch.id,
161
+ success: result.failedRequests === 0,
162
+ executionTime: branchExecutionTime,
163
+ completedPhases: result.phaseResults.length,
164
+ phaseResults: result.phaseResults
165
+ };
166
+ let shouldJump = false;
167
+ let jumpTargetIndex = -1;
168
+ if (branch.branchDecisionHook) {
169
+ try {
170
+ const decision = await safelyExecuteUnknownFunction(branch.branchDecisionHook, {
171
+ workflowId,
172
+ branchResults: result.phaseResults,
173
+ branchId: branch.id,
174
+ executionHistory: result.executionHistory,
175
+ sharedBuffer,
176
+ params: workflowHookParams?.handleBranchDecisionParams,
177
+ parallelBranchResults: branchResults
178
+ .filter(br => parallelBranches.some(pb => pb.id === br.branchId))
179
+ .map(br => br.phaseResults)
180
+ });
181
+ branchResult.decision = decision;
182
+ if (decision.action === PHASE_DECISION_ACTIONS.TERMINATE) {
183
+ terminatedEarly = true;
184
+ terminationReason = decision.metadata?.reason || `Branch ${branch.id} terminated workflow`;
185
+ branchResults.push(branchResult);
186
+ allPhaseResults.push(...result.phaseResults);
187
+ executionHistory.push(...result.executionHistory);
188
+ totalRequests += result.totalRequests;
189
+ successfulRequests += result.successfulRequests;
190
+ failedRequests += result.failedRequests;
191
+ break;
192
+ }
193
+ if (decision.action === PHASE_DECISION_ACTIONS.JUMP && decision.targetBranchId) {
194
+ const targetBranchIndex = serialBranches.findIndex(b => b.id === decision.targetBranchId);
195
+ if (targetBranchIndex !== -1 && targetBranchIndex > branchIndex) {
196
+ if (logPhaseResults) {
197
+ console.info(`stable-request: [Workflow: ${workflowId}] Jumping from branch ${branch.id} to ${decision.targetBranchId}`);
198
+ }
199
+ shouldJump = true;
200
+ jumpTargetIndex = targetBranchIndex;
201
+ }
202
+ else if (targetBranchIndex === -1) {
203
+ console.warn(`stable-request: [Workflow: ${workflowId}] Target branch ${decision.targetBranchId} not found`);
204
+ }
205
+ else if (targetBranchIndex <= branchIndex) {
206
+ console.warn(`stable-request: [Workflow: ${workflowId}] Cannot jump backwards to ${decision.targetBranchId}`);
207
+ }
208
+ }
209
+ }
210
+ catch (decisionError) {
211
+ console.error(`stable-request: [Workflow: ${workflowId}] Error in branch decision hook for ${branch.id}:`, decisionError);
212
+ }
213
+ }
214
+ branchResults.push(branchResult);
215
+ allPhaseResults.push(...result.phaseResults);
216
+ executionHistory.push(...result.executionHistory);
217
+ totalRequests += result.totalRequests;
218
+ successfulRequests += result.successfulRequests;
219
+ failedRequests += result.failedRequests;
220
+ if (handleBranchCompletion) {
221
+ try {
222
+ await safelyExecuteUnknownFunction(handleBranchCompletion, {
223
+ branchId: branchResult.branchId,
224
+ branchResults: branchResult.phaseResults,
225
+ success: branchResult.success
226
+ });
227
+ }
228
+ catch (hookError) {
229
+ console.error(`stable-request: [Workflow: ${workflowId}] Error in handleBranchCompletion hook:`, hookError);
230
+ }
231
+ }
232
+ if (shouldJump) {
233
+ // Jump to target branch (skip intermediate branches)
234
+ branchIndex = jumpTargetIndex;
235
+ continue;
236
+ }
237
+ if (stopOnFirstPhaseError && result.failedRequests > 0) {
238
+ if (logPhaseResults) {
239
+ console.error(`stable-request: [Workflow: ${workflowId}] Branch ${branch.id} has failures. Stopping workflow.`);
240
+ }
241
+ terminatedEarly = true;
242
+ terminationReason = `Branch ${branch.id} failed`;
243
+ break;
244
+ }
245
+ }
246
+ catch (error) {
247
+ console.error(`stable-request: [Workflow: ${workflowId}] Branch ${branch.id} failed:`, error);
248
+ const branchResult = {
249
+ branchId: branch.id,
250
+ success: false,
251
+ executionTime: Date.now() - branchStartTime,
252
+ completedPhases: 0,
253
+ phaseResults: []
254
+ };
255
+ branchResults.push(branchResult);
256
+ failedRequests += 1;
257
+ if (stopOnFirstPhaseError) {
258
+ terminatedEarly = true;
259
+ terminationReason = `Branch ${branch.id} failed with error`;
260
+ break;
261
+ }
262
+ }
263
+ branchIndex++;
264
+ }
265
+ return {
266
+ branchResults,
267
+ allPhaseResults,
268
+ executionHistory,
269
+ totalRequests,
270
+ successfulRequests,
271
+ failedRequests,
272
+ terminatedEarly,
273
+ terminationReason
274
+ };
275
+ }
276
+ //# sourceMappingURL=execute-branch-workflow.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-branch-workflow.js","sourceRoot":"","sources":["../../src/utilities/execute-branch-workflow.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import { EXECUTE_NON_LINEAR_WORKFLOW_RESPONSE, NonLinearWorkflowContext } from '../types/index.js';
2
+ export declare function executeNonLinearWorkflow<RequestDataType = any, ResponseDataType = any>(context: NonLinearWorkflowContext<RequestDataType, ResponseDataType>): Promise<EXECUTE_NON_LINEAR_WORKFLOW_RESPONSE<ResponseDataType>>;
3
+ //# sourceMappingURL=execute-non-linear-workflow.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-non-linear-workflow.d.ts","sourceRoot":"","sources":["../../src/utilities/execute-non-linear-workflow.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,oCAAoC,EACpC,wBAAwB,EAKzB,MAAM,mBAAmB,CAAC;AAE3B,wBAAsB,wBAAwB,CAAC,eAAe,GAAG,GAAG,EAAE,gBAAgB,GAAG,GAAG,EAC1F,OAAO,EAAE,wBAAwB,CAAC,eAAe,EAAE,gBAAgB,CAAC,GACnE,OAAO,CAAC,oCAAoC,CAAC,gBAAgB,CAAC,CAAC,CA6hBjE"}