graph-mode 0.1.0 → 0.1.2
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/dist/core.d.ts +2 -0
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +6 -4
- package/dist/core.js.map +1 -1
- package/package.json +3 -3
package/dist/core.d.ts
CHANGED
|
@@ -4,11 +4,13 @@ export declare class GraphNode<InputType, OutputType, NodeEnum> {
|
|
|
4
4
|
nodeType: string;
|
|
5
5
|
description: string;
|
|
6
6
|
routing: (output?: OutputType) => NodeEnum | null;
|
|
7
|
+
maxAttempts: number;
|
|
7
8
|
constructor(params: {
|
|
8
9
|
nodeType: string;
|
|
9
10
|
description: string;
|
|
10
11
|
exec: (input: InputType) => OutputType | Promise<OutputType>;
|
|
11
12
|
routing: (output?: OutputType) => NodeEnum | null;
|
|
13
|
+
maxAttempts?: number;
|
|
12
14
|
});
|
|
13
15
|
}
|
|
14
16
|
export interface GraphRunnerOptions<NodeEnum> {
|
package/dist/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAiC,MAAM,aAAa,CAAC;AAKzE,qBAAa,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ;IACrD,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,QAAQ,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,EAAiC,MAAM,aAAa,CAAC;AAKzE,qBAAa,SAAS,CAAC,SAAS,EAAE,UAAU,EAAE,QAAQ;IACrD,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC7D,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,QAAQ,GAAG,IAAI,CAAC;IAClD,WAAW,EAAE,MAAM,CAAC;gBAER,MAAM,EAAE;QACnB,QAAQ,EAAE,MAAM,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,EAAE,CAAC,KAAK,EAAE,SAAS,KAAK,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;QAC7D,OAAO,EAAE,CAAC,MAAM,CAAC,EAAE,UAAU,KAAK,QAAQ,GAAG,IAAI,CAAC;QAClD,WAAW,CAAC,EAAE,MAAM,CAAC;KACrB;CAOD;AAED,MAAM,WAAW,kBAAkB,CAAC,QAAQ;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;IACvC,SAAS,EAAE,QAAQ,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,WAAW,CAAC,QAAQ;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,QAAQ,CAAC;IACpB,KAAK,EAAE,GAAG,CAAC;IACX,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,OAAO,CAAsD;IACrE,OAAO,CAAC,OAAO,CAAuB;gBAE1B,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC;IAYhD,OAAO,CAAC,iBAAiB;YAMX,aAAa;IAOrB,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;YA8CX,WAAW;CA6CzB"}
|
package/dist/core.js
CHANGED
|
@@ -6,11 +6,13 @@ export class GraphNode {
|
|
|
6
6
|
nodeType;
|
|
7
7
|
description;
|
|
8
8
|
routing;
|
|
9
|
+
maxAttempts;
|
|
9
10
|
constructor(params) {
|
|
10
11
|
this.exec = params.exec;
|
|
11
12
|
this.nodeType = params.nodeType;
|
|
12
13
|
this.description = params.description;
|
|
13
14
|
this.routing = params.routing;
|
|
15
|
+
params.maxAttempts ? this.maxAttempts = params.maxAttempts : this.maxAttempts = 1;
|
|
14
16
|
}
|
|
15
17
|
}
|
|
16
18
|
export class GraphRunner {
|
|
@@ -51,7 +53,7 @@ export class GraphRunner {
|
|
|
51
53
|
return;
|
|
52
54
|
let input = this.input;
|
|
53
55
|
let nextNodeId = null;
|
|
54
|
-
let execution = await this.executeNode(nextNode, input, runId, graphId);
|
|
56
|
+
let execution = await this.executeNode(nextNode, input, runId, graphId, nextNode.maxAttempts);
|
|
55
57
|
if (!execution)
|
|
56
58
|
return;
|
|
57
59
|
let output = execution.output;
|
|
@@ -60,7 +62,7 @@ export class GraphRunner {
|
|
|
60
62
|
let numExecutions = 1;
|
|
61
63
|
while (nextNode && numExecutions < this.maxExecutions) {
|
|
62
64
|
input = structuredClone(output);
|
|
63
|
-
execution = await this.executeNode(nextNode, input, runId, graphId);
|
|
65
|
+
execution = await this.executeNode(nextNode, input, runId, graphId, nextNode.maxAttempts);
|
|
64
66
|
if (!execution)
|
|
65
67
|
return;
|
|
66
68
|
output = execution.output;
|
|
@@ -84,7 +86,7 @@ export class GraphRunner {
|
|
|
84
86
|
}
|
|
85
87
|
return output;
|
|
86
88
|
}
|
|
87
|
-
async executeNode(node, input, runId, graphId) {
|
|
89
|
+
async executeNode(node, input, runId, graphId, maxAttempts) {
|
|
88
90
|
try {
|
|
89
91
|
const { output, nextNodeId } = await retry(async () => {
|
|
90
92
|
const output = await node.exec(input);
|
|
@@ -102,7 +104,7 @@ export class GraphRunner {
|
|
|
102
104
|
};
|
|
103
105
|
await this.logger.logExecution(log);
|
|
104
106
|
return { output, nextNodeId };
|
|
105
|
-
},
|
|
107
|
+
}, maxAttempts, 1);
|
|
106
108
|
return { output, nextNodeId };
|
|
107
109
|
}
|
|
108
110
|
catch (err) {
|
package/dist/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkC,UAAU,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnD,MAAM,mBAAmB,GAAG,GAAG,CAAC;AAEhC,MAAM,OAAO,SAAS;IACrB,IAAI,CAAyD;IAC7D,QAAQ,CAAS;IACjB,WAAW,CAAS;IACpB,OAAO,CAA2C;
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "graph-mode",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "A graph-based workflow execution framework for TypeScript",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"LICENSE"
|
|
23
23
|
],
|
|
24
24
|
"scripts": {
|
|
25
|
+
"publish": "npm publish",
|
|
25
26
|
"build": "tsc",
|
|
26
27
|
"prepublishOnly": "npm run build"
|
|
27
28
|
},
|
|
@@ -36,7 +37,6 @@
|
|
|
36
37
|
"agent",
|
|
37
38
|
"typescript"
|
|
38
39
|
],
|
|
39
|
-
"author": "",
|
|
40
40
|
"license": "MIT",
|
|
41
41
|
"repository": {
|
|
42
42
|
"type": "git",
|
|
@@ -57,5 +57,5 @@
|
|
|
57
57
|
"optional": true
|
|
58
58
|
}
|
|
59
59
|
},
|
|
60
|
-
"
|
|
60
|
+
"author": "Jack Mu jackmu@umich.edu"
|
|
61
61
|
}
|