@ngocsangairvds/vsaf 5.1.18 → 5.2.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.
- package/README.md +55 -1
- package/package.json +1 -1
- package/packages/cli/dist/commands/abandon.d.ts +6 -0
- package/packages/cli/dist/commands/abandon.d.ts.map +1 -0
- package/packages/cli/dist/commands/abandon.js +42 -0
- package/packages/cli/dist/commands/abandon.js.map +1 -0
- package/packages/cli/dist/commands/ai.d.ts +21 -0
- package/packages/cli/dist/commands/ai.d.ts.map +1 -0
- package/packages/cli/dist/commands/ai.js +76 -0
- package/packages/cli/dist/commands/ai.js.map +1 -0
- package/packages/cli/dist/commands/approve.d.ts +19 -0
- package/packages/cli/dist/commands/approve.d.ts.map +1 -0
- package/packages/cli/dist/commands/approve.js +115 -0
- package/packages/cli/dist/commands/approve.js.map +1 -0
- package/packages/cli/dist/commands/chat.d.ts +41 -0
- package/packages/cli/dist/commands/chat.d.ts.map +1 -0
- package/packages/cli/dist/commands/chat.js +129 -0
- package/packages/cli/dist/commands/chat.js.map +1 -0
- package/packages/cli/dist/commands/isolation.d.ts +20 -0
- package/packages/cli/dist/commands/isolation.d.ts.map +1 -0
- package/packages/cli/dist/commands/isolation.js +104 -0
- package/packages/cli/dist/commands/isolation.js.map +1 -0
- package/packages/cli/dist/commands/run.d.ts +36 -1
- package/packages/cli/dist/commands/run.d.ts.map +1 -1
- package/packages/cli/dist/commands/run.js +161 -15
- package/packages/cli/dist/commands/run.js.map +1 -1
- package/packages/cli/dist/commands/telemetry.d.ts +10 -0
- package/packages/cli/dist/commands/telemetry.d.ts.map +1 -0
- package/packages/cli/dist/commands/telemetry.js +51 -0
- package/packages/cli/dist/commands/telemetry.js.map +1 -0
- package/packages/cli/dist/commands/validate.d.ts +12 -0
- package/packages/cli/dist/commands/validate.d.ts.map +1 -0
- package/packages/cli/dist/commands/validate.js +83 -0
- package/packages/cli/dist/commands/validate.js.map +1 -0
- package/packages/cli/dist/commands/workflow.d.ts +29 -0
- package/packages/cli/dist/commands/workflow.d.ts.map +1 -0
- package/packages/cli/dist/commands/workflow.js +147 -0
- package/packages/cli/dist/commands/workflow.js.map +1 -0
- package/packages/cli/dist/index.js +253 -6
- package/packages/cli/dist/index.js.map +1 -1
- package/packages/cli/dist/mcp/server.d.ts +9 -0
- package/packages/cli/dist/mcp/server.d.ts.map +1 -1
- package/packages/cli/dist/mcp/server.js +38 -2
- package/packages/cli/dist/mcp/server.js.map +1 -1
- package/packages/cli/dist/server/app.d.ts.map +1 -1
- package/packages/cli/dist/server/app.js +2 -0
- package/packages/cli/dist/server/app.js.map +1 -1
- package/packages/cli/dist/server/routes/conversations.d.ts +6 -0
- package/packages/cli/dist/server/routes/conversations.d.ts.map +1 -0
- package/packages/cli/dist/server/routes/conversations.js +145 -0
- package/packages/cli/dist/server/routes/conversations.js.map +1 -0
- package/packages/cli/dist/server/routes/runs.d.ts.map +1 -1
- package/packages/cli/dist/server/routes/runs.js +15 -3
- package/packages/cli/dist/server/routes/runs.js.map +1 -1
- package/packages/cli/dist/server/services/execution-manager.d.ts +25 -0
- package/packages/cli/dist/server/services/execution-manager.d.ts.map +1 -1
- package/packages/cli/dist/server/services/execution-manager.js +255 -95
- package/packages/cli/dist/server/services/execution-manager.js.map +1 -1
- package/packages/core/dist/config/ai-config.d.ts +24 -0
- package/packages/core/dist/config/ai-config.d.ts.map +1 -0
- package/packages/core/dist/config/ai-config.js +170 -0
- package/packages/core/dist/config/ai-config.js.map +1 -0
- package/packages/core/dist/engine/dag-executor.d.ts +18 -0
- package/packages/core/dist/engine/dag-executor.d.ts.map +1 -1
- package/packages/core/dist/engine/dag-executor.js +181 -8
- package/packages/core/dist/engine/dag-executor.js.map +1 -1
- package/packages/core/dist/engine/dag-parser.d.ts.map +1 -1
- package/packages/core/dist/engine/dag-parser.js +32 -1
- package/packages/core/dist/engine/dag-parser.js.map +1 -1
- package/packages/core/dist/engine/loop-signal.d.ts +7 -0
- package/packages/core/dist/engine/loop-signal.d.ts.map +1 -0
- package/packages/core/dist/engine/loop-signal.js +21 -0
- package/packages/core/dist/engine/loop-signal.js.map +1 -0
- package/packages/core/dist/engine/node-runner.d.ts +4 -1
- package/packages/core/dist/engine/node-runner.d.ts.map +1 -1
- package/packages/core/dist/engine/node-runner.js +14 -6
- package/packages/core/dist/engine/node-runner.js.map +1 -1
- package/packages/core/dist/index.d.ts +5 -2
- package/packages/core/dist/index.d.ts.map +1 -1
- package/packages/core/dist/index.js +25 -1
- package/packages/core/dist/index.js.map +1 -1
- package/packages/core/dist/runtime/executor.d.ts +1 -1
- package/packages/core/dist/runtime/executor.d.ts.map +1 -1
- package/packages/core/dist/runtime/executor.js +12 -8
- package/packages/core/dist/runtime/executor.js.map +1 -1
- package/packages/core/dist/schema/workflow-schema.d.ts +94 -14
- package/packages/core/dist/schema/workflow-schema.d.ts.map +1 -1
- package/packages/core/dist/schema/workflow-schema.js +38 -6
- package/packages/core/dist/schema/workflow-schema.js.map +1 -1
- package/packages/core/dist/store/recovery.d.ts.map +1 -1
- package/packages/core/dist/store/recovery.js +7 -0
- package/packages/core/dist/store/recovery.js.map +1 -1
- package/packages/core/dist/store/run-store.d.ts +5 -3
- package/packages/core/dist/store/run-store.d.ts.map +1 -1
- package/packages/core/dist/store/run-store.js +12 -4
- package/packages/core/dist/store/run-store.js.map +1 -1
- package/packages/core/dist/store/sqlite-schema.d.ts +1 -1
- package/packages/core/dist/store/sqlite-schema.d.ts.map +1 -1
- package/packages/core/dist/store/sqlite-schema.js +20 -0
- package/packages/core/dist/store/sqlite-schema.js.map +1 -1
- package/packages/core/dist/store/sqlite-workflow-store.d.ts +26 -0
- package/packages/core/dist/store/sqlite-workflow-store.d.ts.map +1 -1
- package/packages/core/dist/store/sqlite-workflow-store.js +106 -0
- package/packages/core/dist/store/sqlite-workflow-store.js.map +1 -1
- package/packages/core/dist/store/types.d.ts +15 -0
- package/packages/core/dist/store/types.d.ts.map +1 -1
- package/packages/core/dist/store/types.js.map +1 -1
- package/packages/core/dist/telemetry/telemetry.d.ts +31 -0
- package/packages/core/dist/telemetry/telemetry.d.ts.map +1 -0
- package/packages/core/dist/telemetry/telemetry.js +177 -0
- package/packages/core/dist/telemetry/telemetry.js.map +1 -0
- package/packages/core/dist/types/dag.d.ts +16 -0
- package/packages/core/dist/types/dag.d.ts.map +1 -1
- package/packages/core/dist/types/workflow.d.ts +18 -1
- package/packages/core/dist/types/workflow.d.ts.map +1 -1
- package/packages/web/dist/web/browser/chunk-2JHYGCCN.js +1 -0
- package/packages/web/dist/web/browser/chunk-BMQT4ZPK.js +1 -0
- package/packages/web/dist/web/browser/chunk-GWHJRWJM.js +1 -0
- package/packages/web/dist/web/browser/chunk-OZ6BRCXC.js +1 -0
- package/packages/web/dist/web/browser/chunk-Q7N6DAKT.js +1 -0
- package/packages/web/dist/web/browser/chunk-SEBU2SK7.js +1 -0
- package/packages/web/dist/web/browser/chunk-SOS4TH5D.js +4 -0
- package/packages/web/dist/web/browser/chunk-WSAVMPNK.js +5 -0
- package/packages/web/dist/web/browser/index.html +1 -1
- package/packages/web/dist/web/browser/main-UPZIVGM6.js +1 -0
- package/packages/web/dist/web/browser/chunk-5WD7R336.js +0 -1
- package/packages/web/dist/web/browser/chunk-FXYDTGOX.js +0 -1
- package/packages/web/dist/web/browser/chunk-K4DHLOOA.js +0 -1
- package/packages/web/dist/web/browser/chunk-V2CDNNWN.js +0 -1
- package/packages/web/dist/web/browser/chunk-WJT4QH2P.js +0 -4
- package/packages/web/dist/web/browser/chunk-WMJLW2L6.js +0 -5
- package/packages/web/dist/web/browser/chunk-XHOL7AER.js +0 -1
- package/packages/web/dist/web/browser/chunk-YBYFKZWR.js +0 -1
- package/packages/web/dist/web/browser/main-SYHKSBNJ.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-config.js","sourceRoot":"","sources":["../../src/config/ai-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,6 +22,11 @@ export interface CompletedResult {
|
|
|
22
22
|
output: string;
|
|
23
23
|
structuredOutput?: Record<string, unknown>;
|
|
24
24
|
}
|
|
25
|
+
export interface ApprovalMetadata {
|
|
26
|
+
type: 'approval' | 'interactive_loop';
|
|
27
|
+
nodeId: string;
|
|
28
|
+
iteration?: number;
|
|
29
|
+
}
|
|
25
30
|
export interface StepResult {
|
|
26
31
|
type: 'needs_ai' | 'needs_approval' | 'done' | 'failed';
|
|
27
32
|
nodes?: ResolvedNode[];
|
|
@@ -29,6 +34,7 @@ export interface StepResult {
|
|
|
29
34
|
error?: string;
|
|
30
35
|
approvalNodeId?: string;
|
|
31
36
|
approvalMessage?: string;
|
|
37
|
+
approvalMetadata?: ApprovalMetadata;
|
|
32
38
|
}
|
|
33
39
|
export interface StepInput {
|
|
34
40
|
args?: string;
|
|
@@ -37,6 +43,12 @@ export interface StepInput {
|
|
|
37
43
|
approvalNodeId?: string;
|
|
38
44
|
approved?: boolean;
|
|
39
45
|
approvalResponse?: string;
|
|
46
|
+
/** Resume an interactive until-loop node that gated for user feedback. */
|
|
47
|
+
loopNodeId?: string;
|
|
48
|
+
/** Iteration the loop gated at (for cross-process resume); defaults to in-memory state. */
|
|
49
|
+
loopIteration?: number;
|
|
50
|
+
/** User feedback injected into the next iteration's prompt. */
|
|
51
|
+
loopFeedback?: string;
|
|
40
52
|
}
|
|
41
53
|
export declare class DAGExecutor {
|
|
42
54
|
private readonly workspaceCwd;
|
|
@@ -60,6 +72,9 @@ export declare class DAGExecutor {
|
|
|
60
72
|
private outputsMapCache;
|
|
61
73
|
private outputsMapDirty;
|
|
62
74
|
private yieldTimestamps;
|
|
75
|
+
private loopIterations;
|
|
76
|
+
private loopFeedback;
|
|
77
|
+
private gatedLoops;
|
|
63
78
|
constructor(workspaceCwd: string, projectPath: string, graph: DAGGraph, callbacks: ExecutorCallbacks, options?: ExecutorOptions);
|
|
64
79
|
static fromRecoveredState(workspaceCwd: string, projectPath: string, graph: DAGGraph, callbacks: ExecutorCallbacks, state: {
|
|
65
80
|
pending: Set<string>;
|
|
@@ -72,6 +87,9 @@ export declare class DAGExecutor {
|
|
|
72
87
|
artifactsPath: string;
|
|
73
88
|
}, options?: ExecutorOptions): DAGExecutor;
|
|
74
89
|
step(input?: StepInput): Promise<StepResult>;
|
|
90
|
+
/** Mark an until-loop node failed after its iteration budget is exhausted. */
|
|
91
|
+
private failLoopNode;
|
|
92
|
+
private runNodeHooks;
|
|
75
93
|
private findReadyNodes;
|
|
76
94
|
private resetNode;
|
|
77
95
|
private markOutputsDirty;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dag-executor.d.ts","sourceRoot":"","sources":["../../src/engine/dag-executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"dag-executor.d.ts","sourceRoot":"","sources":["../../src/engine/dag-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.DAGExecutor = void 0;
|
|
4
4
|
const os_1 = require("os");
|
|
5
5
|
const node_runner_js_1 = require("./node-runner.js");
|
|
6
|
+
const loop_signal_js_1 = require("./loop-signal.js");
|
|
6
7
|
const condition_evaluator_js_1 = require("./condition-evaluator.js");
|
|
7
8
|
const variable_resolver_js_1 = require("./variable-resolver.js");
|
|
8
9
|
const contract_validator_js_1 = require("./contract-validator.js");
|
|
@@ -28,6 +29,9 @@ class DAGExecutor {
|
|
|
28
29
|
outputsMapCache = null;
|
|
29
30
|
outputsMapDirty = true;
|
|
30
31
|
yieldTimestamps = new Map();
|
|
32
|
+
loopIterations = new Map();
|
|
33
|
+
loopFeedback = new Map();
|
|
34
|
+
gatedLoops = new Map();
|
|
31
35
|
constructor(workspaceCwd, projectPath, graph, callbacks, options = {}) {
|
|
32
36
|
this.workspaceCwd = workspaceCwd;
|
|
33
37
|
this.projectPath = projectPath;
|
|
@@ -76,6 +80,26 @@ class DAGExecutor {
|
|
|
76
80
|
// Absorb completed AI results
|
|
77
81
|
if (input.completedResults) {
|
|
78
82
|
for (const r of input.completedResults) {
|
|
83
|
+
// Until-loop nodes only complete once the signal appears; otherwise
|
|
84
|
+
// they iterate, gate for user feedback, or fail on budget exhaustion
|
|
85
|
+
const loopNode = this.graph.nodes.get(r.nodeId);
|
|
86
|
+
if (loopNode?.untilLoop && this.inFlight.has(r.nodeId)
|
|
87
|
+
&& !(0, loop_signal_js_1.detectCompletionSignal)(r.output, loopNode.untilLoop.until)) {
|
|
88
|
+
const iteration = this.loopIterations.get(r.nodeId) ?? 1;
|
|
89
|
+
if (loopNode.untilLoop.interactive) {
|
|
90
|
+
this.gatedLoops.set(r.nodeId, iteration);
|
|
91
|
+
}
|
|
92
|
+
else if (iteration < loopNode.untilLoop.maxIterations) {
|
|
93
|
+
this.loopIterations.set(r.nodeId, iteration + 1);
|
|
94
|
+
this.inFlight.delete(r.nodeId);
|
|
95
|
+
this.yieldTimestamps.delete(r.nodeId);
|
|
96
|
+
this.pending.add(r.nodeId);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
this.failLoopNode(r.nodeId, loopNode.untilLoop);
|
|
100
|
+
}
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
79
103
|
this.inFlight.delete(r.nodeId);
|
|
80
104
|
// Validate output contract if defined
|
|
81
105
|
const node = this.graph.nodes.get(r.nodeId);
|
|
@@ -116,6 +140,26 @@ class DAGExecutor {
|
|
|
116
140
|
continue;
|
|
117
141
|
}
|
|
118
142
|
}
|
|
143
|
+
// Post hooks (quality gates) must pass before the node completes
|
|
144
|
+
if (node?.hooks?.post?.length) {
|
|
145
|
+
const hookError = await this.runNodeHooks(node.hooks.post, node, 'Post-hook');
|
|
146
|
+
if (hookError) {
|
|
147
|
+
const yieldInfo = this.yieldTimestamps.get(r.nodeId);
|
|
148
|
+
this.yieldTimestamps.delete(r.nodeId);
|
|
149
|
+
this.nodeResults[r.nodeId] = {
|
|
150
|
+
status: 'failed',
|
|
151
|
+
error: hookError,
|
|
152
|
+
durationMs: yieldInfo ? Date.now() - yieldInfo.time : 0,
|
|
153
|
+
startedAt: yieldInfo?.startedAt,
|
|
154
|
+
completedAt: new Date().toISOString(),
|
|
155
|
+
};
|
|
156
|
+
this.markOutputsDirty();
|
|
157
|
+
this.failed.add(r.nodeId);
|
|
158
|
+
this.pending.delete(r.nodeId);
|
|
159
|
+
this.callbacks.onNodeFail(r.nodeId, hookError);
|
|
160
|
+
continue;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
119
163
|
// Normal completion flow
|
|
120
164
|
const yieldInfo = this.yieldTimestamps.get(r.nodeId);
|
|
121
165
|
this.yieldTimestamps.delete(r.nodeId);
|
|
@@ -133,11 +177,14 @@ class DAGExecutor {
|
|
|
133
177
|
this.callbacks.onNodeComplete(r.nodeId, this.nodeResults[r.nodeId]);
|
|
134
178
|
}
|
|
135
179
|
}
|
|
136
|
-
// Absorb approval result
|
|
180
|
+
// Absorb approval result. A recovered executor holds the paused approval
|
|
181
|
+
// node in pending (not inFlight) — accept the input from either state so
|
|
182
|
+
// cross-process approve can resume the DAG.
|
|
137
183
|
if (input.approvalNodeId && input.approved !== undefined) {
|
|
138
184
|
const node = this.graph.nodes.get(input.approvalNodeId);
|
|
139
|
-
if (node && this.inFlight.has(input.approvalNodeId)) {
|
|
185
|
+
if (node && (this.inFlight.has(input.approvalNodeId) || this.pending.has(input.approvalNodeId))) {
|
|
140
186
|
this.inFlight.delete(input.approvalNodeId);
|
|
187
|
+
this.pending.delete(input.approvalNodeId);
|
|
141
188
|
if (input.approved) {
|
|
142
189
|
const result = {
|
|
143
190
|
status: 'completed',
|
|
@@ -196,6 +243,43 @@ class DAGExecutor {
|
|
|
196
243
|
}
|
|
197
244
|
}
|
|
198
245
|
}
|
|
246
|
+
// Absorb interactive-loop resume: bump the iteration, stash the feedback,
|
|
247
|
+
// and re-queue the node so the normal dispatch path re-yields it
|
|
248
|
+
if (input.loopNodeId) {
|
|
249
|
+
const node = this.graph.nodes.get(input.loopNodeId);
|
|
250
|
+
if (node?.untilLoop && (this.inFlight.has(node.id) || this.pending.has(node.id))) {
|
|
251
|
+
const gatedAt = input.loopIteration
|
|
252
|
+
?? this.gatedLoops.get(node.id)
|
|
253
|
+
?? this.loopIterations.get(node.id)
|
|
254
|
+
?? 1;
|
|
255
|
+
this.gatedLoops.delete(node.id);
|
|
256
|
+
if (gatedAt >= node.untilLoop.maxIterations) {
|
|
257
|
+
this.failLoopNode(node.id, node.untilLoop);
|
|
258
|
+
}
|
|
259
|
+
else {
|
|
260
|
+
this.loopIterations.set(node.id, gatedAt + 1);
|
|
261
|
+
if (input.loopFeedback) {
|
|
262
|
+
this.loopFeedback.set(node.id, input.loopFeedback);
|
|
263
|
+
}
|
|
264
|
+
this.inFlight.delete(node.id);
|
|
265
|
+
this.pending.add(node.id);
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
// A gated interactive loop pauses the run until feedback arrives
|
|
270
|
+
const gatedEntry = this.gatedLoops.entries().next();
|
|
271
|
+
if (!gatedEntry.done) {
|
|
272
|
+
const [gatedNodeId, gatedIteration] = gatedEntry.value;
|
|
273
|
+
const gatedNode = this.graph.nodes.get(gatedNodeId);
|
|
274
|
+
const rawMessage = gatedNode.untilLoop?.gateMessage
|
|
275
|
+
?? `Loop node "${gatedNodeId}" (iteration ${gatedIteration}) is awaiting feedback`;
|
|
276
|
+
return {
|
|
277
|
+
type: 'needs_approval',
|
|
278
|
+
approvalNodeId: gatedNodeId,
|
|
279
|
+
approvalMessage: (0, variable_resolver_js_1.resolveVariables)(rawMessage, this.buildContext(gatedNodeId), 'prompt'),
|
|
280
|
+
approvalMetadata: { type: 'interactive_loop', nodeId: gatedNodeId, iteration: gatedIteration },
|
|
281
|
+
};
|
|
282
|
+
}
|
|
199
283
|
// Find ready nodes
|
|
200
284
|
const ready = this.findReadyNodes();
|
|
201
285
|
if (ready.length === 0 && this.pending.size === 0 && this.inFlight.size === 0) {
|
|
@@ -218,6 +302,7 @@ class DAGExecutor {
|
|
|
218
302
|
type: 'needs_approval',
|
|
219
303
|
approvalNodeId: approvalNode.id,
|
|
220
304
|
approvalMessage: resolvedMessage,
|
|
305
|
+
approvalMetadata: { type: 'approval', nodeId: approvalNode.id },
|
|
221
306
|
};
|
|
222
307
|
}
|
|
223
308
|
return { type: 'needs_ai', nodes: [] };
|
|
@@ -373,25 +458,81 @@ class DAGExecutor {
|
|
|
373
458
|
type: 'needs_approval',
|
|
374
459
|
approvalNodeId: node.id,
|
|
375
460
|
approvalMessage: resolvedMessage,
|
|
461
|
+
approvalMetadata: { type: 'approval', nodeId: node.id },
|
|
376
462
|
};
|
|
377
463
|
}
|
|
378
464
|
// 4. Process AI nodes next
|
|
379
465
|
if (aiNodes.length > 0) {
|
|
380
|
-
const resolvedNodes =
|
|
466
|
+
const resolvedNodes = [];
|
|
467
|
+
for (const node of aiNodes) {
|
|
381
468
|
this.callbacks.onNodeStart(node.id);
|
|
382
469
|
this.pending.delete(node.id);
|
|
470
|
+
// Pre hooks (quality gates) must pass before the node is dispatched
|
|
471
|
+
if (node.hooks?.pre?.length) {
|
|
472
|
+
const hookError = await this.runNodeHooks(node.hooks.pre, node, 'Pre-hook');
|
|
473
|
+
if (hookError) {
|
|
474
|
+
this.nodeResults[node.id] = {
|
|
475
|
+
status: 'failed',
|
|
476
|
+
error: hookError,
|
|
477
|
+
durationMs: 0,
|
|
478
|
+
startedAt: new Date().toISOString(),
|
|
479
|
+
completedAt: new Date().toISOString(),
|
|
480
|
+
};
|
|
481
|
+
this.markOutputsDirty();
|
|
482
|
+
this.failed.add(node.id);
|
|
483
|
+
this.callbacks.onNodeFail(node.id, hookError);
|
|
484
|
+
if (node.errorStrategy === 'fail_workflow') {
|
|
485
|
+
for (const dispatched of resolvedNodes) {
|
|
486
|
+
this.inFlight.delete(dispatched.nodeId);
|
|
487
|
+
this.yieldTimestamps.delete(dispatched.nodeId);
|
|
488
|
+
this.skipped.add(dispatched.nodeId);
|
|
489
|
+
this.nodeResults[dispatched.nodeId] = { status: 'skipped' };
|
|
490
|
+
this.markOutputsDirty();
|
|
491
|
+
this.callbacks.onNodeSkip(dispatched.nodeId, `workflow failed at "${node.id}"`);
|
|
492
|
+
}
|
|
493
|
+
for (const id of this.pending) {
|
|
494
|
+
this.skipped.add(id);
|
|
495
|
+
this.nodeResults[id] = { status: 'skipped' };
|
|
496
|
+
this.markOutputsDirty();
|
|
497
|
+
this.callbacks.onNodeSkip(id, `workflow failed at "${node.id}"`);
|
|
498
|
+
}
|
|
499
|
+
this.pending.clear();
|
|
500
|
+
return {
|
|
501
|
+
type: 'failed',
|
|
502
|
+
results: this.nodeResults,
|
|
503
|
+
error: `Workflow failed at node "${node.id}": ${hookError}`,
|
|
504
|
+
};
|
|
505
|
+
}
|
|
506
|
+
continue;
|
|
507
|
+
}
|
|
508
|
+
}
|
|
383
509
|
this.inFlight.add(node.id);
|
|
384
510
|
this.yieldTimestamps.set(node.id, { time: Date.now(), startedAt: new Date().toISOString() });
|
|
385
511
|
const resolved = this.runner.resolveAIPrompt(node, this.buildContext(node.id));
|
|
386
|
-
|
|
512
|
+
let prompt = resolved.prompt;
|
|
513
|
+
if (node.untilLoop) {
|
|
514
|
+
if (!this.loopIterations.has(node.id))
|
|
515
|
+
this.loopIterations.set(node.id, 1);
|
|
516
|
+
const feedback = this.loopFeedback.get(node.id);
|
|
517
|
+
if (feedback) {
|
|
518
|
+
this.loopFeedback.delete(node.id);
|
|
519
|
+
prompt = `User feedback: ${feedback}\n\n${prompt}`;
|
|
520
|
+
}
|
|
521
|
+
}
|
|
522
|
+
resolvedNodes.push({
|
|
387
523
|
nodeId: node.id,
|
|
388
524
|
description: resolved.description,
|
|
389
|
-
prompt
|
|
525
|
+
prompt,
|
|
390
526
|
skill: resolved.skill,
|
|
391
527
|
model: node.model ?? this.graph.defaultModel,
|
|
392
|
-
};
|
|
393
|
-
}
|
|
394
|
-
|
|
528
|
+
});
|
|
529
|
+
}
|
|
530
|
+
if (resolvedNodes.length > 0) {
|
|
531
|
+
return { type: 'needs_ai', nodes: resolvedNodes };
|
|
532
|
+
}
|
|
533
|
+
// Every AI node failed its pre hooks — re-evaluate remaining graph
|
|
534
|
+
input = {};
|
|
535
|
+
continue;
|
|
395
536
|
}
|
|
396
537
|
if (conditionFiltered.length === 0) {
|
|
397
538
|
input = {};
|
|
@@ -399,6 +540,38 @@ class DAGExecutor {
|
|
|
399
540
|
}
|
|
400
541
|
}
|
|
401
542
|
}
|
|
543
|
+
/** Mark an until-loop node failed after its iteration budget is exhausted. */
|
|
544
|
+
failLoopNode(nodeId, untilLoop) {
|
|
545
|
+
const errorMsg = `Loop node "${nodeId}" exceeded max iterations (${untilLoop.maxIterations}) without completion signal "${untilLoop.until}"`;
|
|
546
|
+
const yieldInfo = this.yieldTimestamps.get(nodeId);
|
|
547
|
+
this.yieldTimestamps.delete(nodeId);
|
|
548
|
+
this.inFlight.delete(nodeId);
|
|
549
|
+
this.pending.delete(nodeId);
|
|
550
|
+
this.gatedLoops.delete(nodeId);
|
|
551
|
+
this.loopFeedback.delete(nodeId);
|
|
552
|
+
this.nodeResults[nodeId] = {
|
|
553
|
+
status: 'failed',
|
|
554
|
+
error: errorMsg,
|
|
555
|
+
durationMs: yieldInfo ? Date.now() - yieldInfo.time : 0,
|
|
556
|
+
startedAt: yieldInfo?.startedAt,
|
|
557
|
+
completedAt: new Date().toISOString(),
|
|
558
|
+
};
|
|
559
|
+
this.markOutputsDirty();
|
|
560
|
+
this.failed.add(nodeId);
|
|
561
|
+
this.callbacks.onNodeFail(nodeId, errorMsg);
|
|
562
|
+
}
|
|
563
|
+
async runNodeHooks(hooks, node, label) {
|
|
564
|
+
for (const hook of hooks) {
|
|
565
|
+
try {
|
|
566
|
+
await this.runner.runHook(hook, node, this.buildContext(node.id));
|
|
567
|
+
}
|
|
568
|
+
catch (err) {
|
|
569
|
+
const message = err instanceof Error ? err.message : String(err);
|
|
570
|
+
return `${label} failed (${hook.name ?? hook.run}): ${message}`;
|
|
571
|
+
}
|
|
572
|
+
}
|
|
573
|
+
return undefined;
|
|
574
|
+
}
|
|
402
575
|
findReadyNodes() {
|
|
403
576
|
const ready = [];
|
|
404
577
|
for (const nodeId of this.pending) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dag-executor.js","sourceRoot":"","sources":["../../src/engine/dag-executor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"dag-executor.js","sourceRoot":"","sources":["../../src/engine/dag-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dag-parser.d.ts","sourceRoot":"","sources":["../../src/engine/dag-parser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAW,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"dag-parser.d.ts","sourceRoot":"","sources":["../../src/engine/dag-parser.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAW,MAAM,iBAAiB,CAAC;AAwCzD,wBAAgB,aAAa,CAAC,WAAW,EAAE,MAAM,GAAG,QAAQ,CAsF3D"}
|
|
@@ -21,9 +21,30 @@ function detectNodeType(node) {
|
|
|
21
21
|
return 'approval';
|
|
22
22
|
return 'cancel';
|
|
23
23
|
}
|
|
24
|
+
const DEFAULT_LOOP_MAX_ITERATIONS = 10;
|
|
25
|
+
function isUntilLoop(loop) {
|
|
26
|
+
return 'until' in loop;
|
|
27
|
+
}
|
|
24
28
|
function getNodeContent(node) {
|
|
25
29
|
return node.prompt ?? node.bash ?? node.command ?? node.script ?? node.approval?.message ?? node.cancel ?? '';
|
|
26
30
|
}
|
|
31
|
+
function readHooks(nodeDef) {
|
|
32
|
+
if (!nodeDef.hooks)
|
|
33
|
+
return undefined;
|
|
34
|
+
const type = detectNodeType(nodeDef);
|
|
35
|
+
if (type !== 'prompt' && type !== 'command') {
|
|
36
|
+
throw new Error(`Node "${nodeDef.id}": hooks are only supported on prompt and command nodes`);
|
|
37
|
+
}
|
|
38
|
+
const mapHook = (hook) => ({
|
|
39
|
+
run: hook.run,
|
|
40
|
+
name: hook.name,
|
|
41
|
+
timeout: hook.timeout,
|
|
42
|
+
});
|
|
43
|
+
return {
|
|
44
|
+
pre: nodeDef.hooks.pre?.map(mapHook),
|
|
45
|
+
post: nodeDef.hooks.post?.map(mapHook),
|
|
46
|
+
};
|
|
47
|
+
}
|
|
27
48
|
function parseWorkflow(yamlContent) {
|
|
28
49
|
const raw = js_yaml_1.default.load(yamlContent);
|
|
29
50
|
// AJV schema validation
|
|
@@ -56,16 +77,23 @@ function parseWorkflow(yamlContent) {
|
|
|
56
77
|
idempotent: nodeDef.idempotent ?? true,
|
|
57
78
|
errorStrategy: nodeDef.on_error ?? 'skip_dependents',
|
|
58
79
|
timeout: nodeDef.timeout,
|
|
59
|
-
loop: nodeDef.loop ? {
|
|
80
|
+
loop: nodeDef.loop && !isUntilLoop(nodeDef.loop) ? {
|
|
60
81
|
onFail: nodeDef.loop.on_fail,
|
|
61
82
|
maxRetries: nodeDef.loop.max_retries,
|
|
62
83
|
injectError: nodeDef.loop.inject_error ?? false,
|
|
63
84
|
backoffMs: nodeDef.loop.backoff_ms,
|
|
64
85
|
} : undefined,
|
|
86
|
+
untilLoop: nodeDef.loop && isUntilLoop(nodeDef.loop) ? {
|
|
87
|
+
until: nodeDef.loop.until,
|
|
88
|
+
interactive: nodeDef.loop.interactive ?? false,
|
|
89
|
+
gateMessage: nodeDef.loop.gate_message,
|
|
90
|
+
maxIterations: nodeDef.loop.max_iterations ?? DEFAULT_LOOP_MAX_ITERATIONS,
|
|
91
|
+
} : undefined,
|
|
65
92
|
runtime: nodeDef.runtime,
|
|
66
93
|
deps: nodeDef.deps,
|
|
67
94
|
cancel: nodeDef.cancel,
|
|
68
95
|
approval: nodeDef.approval,
|
|
96
|
+
hooks: readHooks(nodeDef),
|
|
69
97
|
});
|
|
70
98
|
}
|
|
71
99
|
// Graph-semantic checks (not expressible in JSON Schema)
|
|
@@ -84,6 +112,9 @@ function parseWorkflow(yamlContent) {
|
|
|
84
112
|
if (node.loop && !nodes.has(node.loop.onFail)) {
|
|
85
113
|
throw new Error(`Node "${id}" loop.on_fail references unknown node "${node.loop.onFail}"`);
|
|
86
114
|
}
|
|
115
|
+
if (node.untilLoop && node.type !== 'prompt') {
|
|
116
|
+
throw new Error(`Node "${id}" has an until-loop, which is only supported on prompt nodes`);
|
|
117
|
+
}
|
|
87
118
|
}
|
|
88
119
|
return {
|
|
89
120
|
name: def.name,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dag-parser.js","sourceRoot":"","sources":["../../src/engine/dag-parser.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"dag-parser.js","sourceRoot":"","sources":["../../src/engine/dag-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Detect a loop completion signal in AI output. Supports Archon's
|
|
3
|
+
* `<promise>SIGNAL</promise>` convention (any XML tag with matching
|
|
4
|
+
* open/close names) and a plain substring occurrence of the signal.
|
|
5
|
+
*/
|
|
6
|
+
export declare function detectCompletionSignal(output: string, signal: string): boolean;
|
|
7
|
+
//# sourceMappingURL=loop-signal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loop-signal.d.ts","sourceRoot":"","sources":["../../src/engine/loop-signal.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAM9E"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.detectCompletionSignal = detectCompletionSignal;
|
|
4
|
+
function escapeRegExp(value) {
|
|
5
|
+
return value.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Detect a loop completion signal in AI output. Supports Archon's
|
|
9
|
+
* `<promise>SIGNAL</promise>` convention (any XML tag with matching
|
|
10
|
+
* open/close names) and a plain substring occurrence of the signal.
|
|
11
|
+
*/
|
|
12
|
+
function detectCompletionSignal(output, signal) {
|
|
13
|
+
if (!output || !signal)
|
|
14
|
+
return false;
|
|
15
|
+
const escaped = escapeRegExp(signal);
|
|
16
|
+
const xmlWrapped = new RegExp(`<([a-zA-Z][\\w-]*)[^>]*>\\s*${escaped}\\s*</\\1>`, 'i');
|
|
17
|
+
if (xmlWrapped.test(output))
|
|
18
|
+
return true;
|
|
19
|
+
return output.includes(signal);
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=loop-signal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loop-signal.js","sourceRoot":"","sources":["../../src/engine/loop-signal.ts"],"names":[],"mappings":";;AASA,wDAMC;AAfD,SAAS,YAAY,CAAC,KAAa;IACjC,OAAO,KAAK,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAED;;;;GAIG;AACH,SAAgB,sBAAsB,CAAC,MAAc,EAAE,MAAc;IACnE,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM;QAAE,OAAO,KAAK,CAAC;IACrC,MAAM,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,+BAA+B,OAAO,YAAY,EAAE,GAAG,CAAC,CAAC;IACvF,IAAI,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AACjC,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { DAGNode } from '../types/dag.js';
|
|
1
|
+
import type { DAGNode, NodeHook } from '../types/dag.js';
|
|
2
2
|
import type { NodeResult } from '../store/types.js';
|
|
3
3
|
import { type VariableContext } from './variable-resolver.js';
|
|
4
4
|
export declare function resolveShell(): string | undefined;
|
|
@@ -12,6 +12,9 @@ export declare class NodeRunner {
|
|
|
12
12
|
private readonly projectCwd?;
|
|
13
13
|
constructor(workspaceCwd: string, projectCwd?: string | undefined);
|
|
14
14
|
private getCwd;
|
|
15
|
+
private execBashScript;
|
|
16
|
+
/** Run a pre/post quality-gate hook; throws when the command exits non-zero. */
|
|
17
|
+
runHook(hook: NodeHook, node: DAGNode, ctx: VariableContext): Promise<void>;
|
|
15
18
|
runBash(node: DAGNode, ctx: VariableContext): Promise<NodeResult>;
|
|
16
19
|
runScript(node: DAGNode, ctx: VariableContext): Promise<NodeResult>;
|
|
17
20
|
resolveAIPrompt(node: DAGNode, ctx: VariableContext): ResolvedPrompt;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node-runner.d.ts","sourceRoot":"","sources":["../../src/engine/node-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"node-runner.d.ts","sourceRoot":"","sources":["../../src/engine/node-runner.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAoB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAsBhF,wBAAgB,YAAY,IAAI,MAAM,GAAG,SAAS,CAyBjD;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAWD,qBAAa,UAAU;IAEnB,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC;gBADX,YAAY,EAAE,MAAM,EACpB,UAAU,CAAC,EAAE,MAAM,YAAA;IAGtC,OAAO,CAAC,MAAM;YAKA,cAAc;IAqB5B,gFAAgF;IAC1E,OAAO,CAAC,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3E,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IAsBjE,SAAS,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,GAAG,OAAO,CAAC,UAAU,CAAC;IA0GzE,eAAe,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,eAAe,GAAG,cAAc;CAarE"}
|