@sudocode-ai/local-server 0.1.5 → 0.1.7
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/execution/process/builders/claude.d.ts +1 -1
- package/dist/execution/process/builders/claude.d.ts.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +70 -11
- package/dist/index.js.map +1 -1
- package/dist/public/assets/index-B3SEMufD.js +580 -0
- package/dist/public/assets/index-B3SEMufD.js.map +1 -0
- package/dist/public/assets/index-D2YGL3gX.css +1 -0
- package/dist/public/assets/react-vendor-ByUx1V_q.js +60 -0
- package/dist/public/assets/react-vendor-ByUx1V_q.js.map +1 -0
- package/dist/public/assets/ui-vendor-CotR6bx9.js +54 -0
- package/dist/public/assets/ui-vendor-CotR6bx9.js.map +1 -0
- package/dist/public/index.html +4 -4
- package/dist/routes/feedback.d.ts.map +1 -1
- package/dist/routes/feedback.js +20 -12
- package/dist/routes/feedback.js.map +1 -1
- package/dist/services/db.d.ts.map +1 -1
- package/dist/services/db.js +19 -14
- package/dist/services/db.js.map +1 -1
- package/dist/services/execution-service.d.ts.map +1 -1
- package/dist/services/execution-service.js +43 -22
- package/dist/services/execution-service.js.map +1 -1
- package/dist/services/executions.d.ts.map +1 -1
- package/dist/services/executions.js +15 -0
- package/dist/services/executions.js.map +1 -1
- package/dist/services/feedback.d.ts +16 -0
- package/dist/services/feedback.d.ts.map +1 -1
- package/dist/services/feedback.js +25 -1
- package/dist/services/feedback.js.map +1 -1
- package/dist/services/repo-info.d.ts +17 -0
- package/dist/services/repo-info.d.ts.map +1 -0
- package/dist/services/repo-info.js +53 -0
- package/dist/services/repo-info.js.map +1 -0
- package/dist/services/websocket.d.ts +25 -3
- package/dist/services/websocket.d.ts.map +1 -1
- package/dist/services/websocket.js +71 -7
- package/dist/services/websocket.js.map +1 -1
- package/package.json +8 -7
- package/dist/execution/engine/engine.d.ts +0 -103
- package/dist/execution/engine/engine.d.ts.map +0 -1
- package/dist/execution/engine/engine.js +0 -10
- package/dist/execution/engine/engine.js.map +0 -1
- package/dist/execution/engine/simple-engine.d.ts +0 -190
- package/dist/execution/engine/simple-engine.d.ts.map +0 -1
- package/dist/execution/engine/simple-engine.js +0 -611
- package/dist/execution/engine/simple-engine.js.map +0 -1
- package/dist/execution/engine/types.d.ts +0 -116
- package/dist/execution/engine/types.d.ts.map +0 -1
- package/dist/execution/engine/types.js +0 -10
- package/dist/execution/engine/types.js.map +0 -1
- package/dist/execution/process/index.d.ts +0 -15
- package/dist/execution/process/index.d.ts.map +0 -1
- package/dist/execution/process/index.js +0 -15
- package/dist/execution/process/index.js.map +0 -1
- package/dist/execution/process/manager.d.ts +0 -133
- package/dist/execution/process/manager.d.ts.map +0 -1
- package/dist/execution/process/manager.js +0 -10
- package/dist/execution/process/manager.js.map +0 -1
- package/dist/execution/process/simple-manager.d.ts +0 -102
- package/dist/execution/process/simple-manager.d.ts.map +0 -1
- package/dist/execution/process/simple-manager.js +0 -336
- package/dist/execution/process/simple-manager.js.map +0 -1
- package/dist/execution/process/types.d.ts +0 -105
- package/dist/execution/process/types.d.ts.map +0 -1
- package/dist/execution/process/types.js +0 -10
- package/dist/execution/process/types.js.map +0 -1
- package/dist/execution/process/utils.d.ts +0 -53
- package/dist/execution/process/utils.d.ts.map +0 -1
- package/dist/execution/process/utils.js +0 -97
- package/dist/execution/process/utils.js.map +0 -1
- package/dist/execution/resilience/circuit-breaker.d.ts +0 -170
- package/dist/execution/resilience/circuit-breaker.d.ts.map +0 -1
- package/dist/execution/resilience/circuit-breaker.js +0 -291
- package/dist/execution/resilience/circuit-breaker.js.map +0 -1
- package/dist/execution/resilience/executor.d.ts +0 -109
- package/dist/execution/resilience/executor.d.ts.map +0 -1
- package/dist/execution/resilience/executor.js +0 -10
- package/dist/execution/resilience/executor.js.map +0 -1
- package/dist/execution/resilience/index.d.ts +0 -14
- package/dist/execution/resilience/index.d.ts.map +0 -1
- package/dist/execution/resilience/index.js +0 -15
- package/dist/execution/resilience/index.js.map +0 -1
- package/dist/execution/resilience/resilient-executor.d.ts +0 -86
- package/dist/execution/resilience/resilient-executor.d.ts.map +0 -1
- package/dist/execution/resilience/resilient-executor.js +0 -261
- package/dist/execution/resilience/resilient-executor.js.map +0 -1
- package/dist/execution/resilience/retry.d.ts +0 -161
- package/dist/execution/resilience/retry.d.ts.map +0 -1
- package/dist/execution/resilience/retry.js +0 -234
- package/dist/execution/resilience/retry.js.map +0 -1
- package/dist/execution/resilience/types.d.ts +0 -226
- package/dist/execution/resilience/types.d.ts.map +0 -1
- package/dist/execution/resilience/types.js +0 -30
- package/dist/execution/resilience/types.js.map +0 -1
- package/dist/execution/workflow/index.d.ts +0 -13
- package/dist/execution/workflow/index.d.ts.map +0 -1
- package/dist/execution/workflow/index.js +0 -13
- package/dist/execution/workflow/index.js.map +0 -1
- package/dist/execution/workflow/linear-orchestrator.d.ts +0 -216
- package/dist/execution/workflow/linear-orchestrator.d.ts.map +0 -1
- package/dist/execution/workflow/linear-orchestrator.js +0 -683
- package/dist/execution/workflow/linear-orchestrator.js.map +0 -1
- package/dist/execution/workflow/memory-storage.d.ts +0 -54
- package/dist/execution/workflow/memory-storage.d.ts.map +0 -1
- package/dist/execution/workflow/memory-storage.js +0 -68
- package/dist/execution/workflow/memory-storage.js.map +0 -1
- package/dist/execution/workflow/orchestrator.d.ts +0 -158
- package/dist/execution/workflow/orchestrator.d.ts.map +0 -1
- package/dist/execution/workflow/orchestrator.js +0 -9
- package/dist/execution/workflow/orchestrator.js.map +0 -1
- package/dist/execution/workflow/types.d.ts +0 -172
- package/dist/execution/workflow/types.d.ts.map +0 -1
- package/dist/execution/workflow/types.js +0 -9
- package/dist/execution/workflow/types.js.map +0 -1
- package/dist/execution/workflow/utils.d.ts +0 -89
- package/dist/execution/workflow/utils.d.ts.map +0 -1
- package/dist/execution/workflow/utils.js +0 -152
- package/dist/execution/workflow/utils.js.map +0 -1
- package/dist/public/assets/index-CeD4U_lo.css +0 -1
- package/dist/public/assets/index-fLX6-3RP.js +0 -569
- package/dist/public/assets/index-fLX6-3RP.js.map +0 -1
- package/dist/public/assets/react-vendor-LX0UoTxg.js +0 -60
- package/dist/public/assets/react-vendor-LX0UoTxg.js.map +0 -1
- package/dist/public/assets/ui-vendor-_cxVHaqZ.js +0 -54
- package/dist/public/assets/ui-vendor-_cxVHaqZ.js.map +0 -1
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Repository info service - provides git repository information
|
|
3
|
+
*/
|
|
4
|
+
import * as path from "path";
|
|
5
|
+
import { GitCli } from "../execution/worktree/git-cli.js";
|
|
6
|
+
/**
|
|
7
|
+
* Get repository information for a given repository path
|
|
8
|
+
*
|
|
9
|
+
* @param repoPath - Absolute path to the repository root
|
|
10
|
+
* @returns Repository information including name, branch, and path
|
|
11
|
+
* @throws Error if the path is not a valid git repository
|
|
12
|
+
*/
|
|
13
|
+
export async function getRepositoryInfo(repoPath) {
|
|
14
|
+
const gitCli = new GitCli();
|
|
15
|
+
// Check if repoPath is a valid git repository
|
|
16
|
+
const isValidRepo = await gitCli.isValidRepo(repoPath);
|
|
17
|
+
if (!isValidRepo) {
|
|
18
|
+
throw new Error("Not a git repository");
|
|
19
|
+
}
|
|
20
|
+
// Get repository name from git remote URL
|
|
21
|
+
let repoName = path.basename(repoPath); // Fallback to directory name
|
|
22
|
+
try {
|
|
23
|
+
const remoteOutput = gitCli["execGit"]("git remote get-url origin", repoPath);
|
|
24
|
+
const remoteUrl = remoteOutput.trim();
|
|
25
|
+
// Extract repo name from various URL formats:
|
|
26
|
+
// - https://github.com/user/repo.git
|
|
27
|
+
// - git@github.com:user/repo.git
|
|
28
|
+
// - https://github.com/user/repo
|
|
29
|
+
const match = remoteUrl.match(/\/([^\/]+?)(\.git)?$/);
|
|
30
|
+
if (match && match[1]) {
|
|
31
|
+
repoName = match[1];
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
catch (error) {
|
|
35
|
+
// No remote or error getting remote - use directory name as fallback
|
|
36
|
+
console.log("No git remote found, using directory name as fallback");
|
|
37
|
+
}
|
|
38
|
+
// Get current branch
|
|
39
|
+
let branch = "(detached)";
|
|
40
|
+
try {
|
|
41
|
+
const output = gitCli["execGit"]("git rev-parse --abbrev-ref HEAD", repoPath);
|
|
42
|
+
branch = output.trim();
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
console.error("Failed to get current branch:", error);
|
|
46
|
+
}
|
|
47
|
+
return {
|
|
48
|
+
name: repoName,
|
|
49
|
+
branch,
|
|
50
|
+
path: repoPath,
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=repo-info.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"repo-info.js","sourceRoot":"","sources":["../../src/services/repo-info.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAE,MAAM,kCAAkC,CAAC;AAQ1D;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,QAAgB;IAEhB,MAAM,MAAM,GAAG,IAAI,MAAM,EAAE,CAAC;IAE5B,8CAA8C;IAC9C,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;IACvD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,0CAA0C;IAC1C,IAAI,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,6BAA6B;IACrE,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,CACpC,2BAA2B,EAC3B,QAAQ,CACT,CAAC;QACF,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC;QAEtC,8CAA8C;QAC9C,qCAAqC;QACrC,iCAAiC;QACjC,iCAAiC;QACjC,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACtD,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;YACtB,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,qEAAqE;QACrE,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAC;IACvE,CAAC;IAED,qBAAqB;IACrB,IAAI,MAAM,GAAG,YAAY,CAAC;IAC1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAC9B,iCAAiC,EACjC,QAAQ,CACT,CAAC;QACF,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;IAED,OAAO;QACL,IAAI,EAAE,QAAQ;QACd,MAAM;QACN,IAAI,EAAE,QAAQ;KACf,CAAC;AACJ,CAAC"}
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
+
import { WebSocketServer } from "ws";
|
|
1
2
|
import * as http from "http";
|
|
2
3
|
/**
|
|
3
4
|
* Message types that the server sends to clients
|
|
4
5
|
*/
|
|
5
6
|
export interface ServerMessage {
|
|
6
|
-
type: "issue_created" | "issue_updated" | "issue_deleted" | "spec_created" | "spec_updated" | "spec_deleted" | "feedback_created" | "feedback_updated" | "feedback_deleted" | "relationship_created" | "relationship_deleted" | "pong" | "error" | "subscribed" | "unsubscribed";
|
|
7
|
+
type: "issue_created" | "issue_updated" | "issue_deleted" | "spec_created" | "spec_updated" | "spec_deleted" | "feedback_created" | "feedback_updated" | "feedback_deleted" | "relationship_created" | "relationship_deleted" | "execution_created" | "execution_updated" | "execution_status_changed" | "execution_deleted" | "pong" | "error" | "subscribed" | "unsubscribed";
|
|
7
8
|
data?: any;
|
|
8
9
|
message?: string;
|
|
9
10
|
subscription?: string;
|
|
@@ -18,8 +19,11 @@ declare class WebSocketManager {
|
|
|
18
19
|
private readonly HEARTBEAT_INTERVAL;
|
|
19
20
|
/**
|
|
20
21
|
* Initialize the WebSocket server
|
|
22
|
+
* @param server HTTP server instance
|
|
23
|
+
* @param path WebSocket path (default: "/ws")
|
|
24
|
+
* @param allowReinit Allow re-initialization after shutdown (default: false)
|
|
21
25
|
*/
|
|
22
|
-
init(server: http.Server, path?: string): void;
|
|
26
|
+
init(server: http.Server, path?: string, allowReinit?: boolean): void;
|
|
23
27
|
/**
|
|
24
28
|
* Handle new WebSocket connection
|
|
25
29
|
*/
|
|
@@ -55,7 +59,7 @@ declare class WebSocketManager {
|
|
|
55
59
|
/**
|
|
56
60
|
* Broadcast a message to all subscribed clients
|
|
57
61
|
*/
|
|
58
|
-
broadcast(entityType: "issue" | "spec", entityId: string, message: ServerMessage): void;
|
|
62
|
+
broadcast(entityType: "issue" | "spec" | "execution", entityId: string, message: ServerMessage): void;
|
|
59
63
|
/**
|
|
60
64
|
* Broadcast a relationship or feedback update
|
|
61
65
|
* These don't have a specific entity type in the subscription, so we broadcast to 'all' subscribers
|
|
@@ -69,6 +73,10 @@ declare class WebSocketManager {
|
|
|
69
73
|
* Stop the heartbeat mechanism
|
|
70
74
|
*/
|
|
71
75
|
private stopHeartbeat;
|
|
76
|
+
/**
|
|
77
|
+
* Get the WebSocket server instance
|
|
78
|
+
*/
|
|
79
|
+
getServer(): WebSocketServer | null;
|
|
72
80
|
/**
|
|
73
81
|
* Get statistics about connected clients
|
|
74
82
|
*/
|
|
@@ -107,6 +115,20 @@ export declare function broadcastFeedbackUpdate(action: "created" | "updated" |
|
|
|
107
115
|
* Broadcast relationship updates to subscribed clients
|
|
108
116
|
*/
|
|
109
117
|
export declare function broadcastRelationshipUpdate(action: "created" | "deleted", data?: any): void;
|
|
118
|
+
/**
|
|
119
|
+
* Broadcast execution updates to subscribed clients
|
|
120
|
+
* Also optionally broadcasts to parent issue subscribers
|
|
121
|
+
*
|
|
122
|
+
* @param executionId - ID of the execution
|
|
123
|
+
* @param action - The action performed on the execution
|
|
124
|
+
* @param data - Execution data to broadcast
|
|
125
|
+
* @param issueId - Optional issue ID to also broadcast to issue subscribers
|
|
126
|
+
*/
|
|
127
|
+
export declare function broadcastExecutionUpdate(executionId: string, action: "created" | "updated" | "status_changed" | "deleted", data?: any, issueId?: string): void;
|
|
128
|
+
/**
|
|
129
|
+
* Get the WebSocket server instance
|
|
130
|
+
*/
|
|
131
|
+
export declare function getWebSocketServer(): WebSocketServer | null;
|
|
110
132
|
/**
|
|
111
133
|
* Get WebSocket server statistics
|
|
112
134
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/services/websocket.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"websocket.d.ts","sourceRoot":"","sources":["../../src/services/websocket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAsB,MAAM,IAAI,CAAC;AACzD,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAyB7B;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EACA,eAAe,GACf,eAAe,GACf,eAAe,GACf,cAAc,GACd,cAAc,GACd,cAAc,GACd,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,sBAAsB,GACtB,sBAAsB,GACtB,mBAAmB,GACnB,mBAAmB,GACnB,0BAA0B,GAC1B,mBAAmB,GACnB,MAAM,GACN,OAAO,GACP,YAAY,GACZ,cAAc,CAAC;IACnB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,cAAM,gBAAgB;IACpB,OAAO,CAAC,GAAG,CAAgC;IAC3C,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,iBAAiB,CAA+B;IACxD,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAS;IAE5C;;;;;OAKG;IACH,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,GAAE,MAAc,EAAE,WAAW,GAAE,OAAe,GAAG,IAAI;IAsCnF;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;IACH,OAAO,CAAC,WAAW;IAInB;;OAEG;IACH,OAAO,CAAC,UAAU;IAOlB;;OAEG;IACH,OAAO,CAAC,aAAa;IAwCrB;;OAEG;IACH,OAAO,CAAC,eAAe;IAuCvB;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAoCzB;;OAEG;IACH,OAAO,CAAC,YAAY;IAgBpB;;OAEG;IACH,SAAS,CACP,UAAU,EAAE,OAAO,GAAG,MAAM,GAAG,WAAW,EAC1C,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,aAAa,GACrB,IAAI;IAmCP;;;OAGG;IACH,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI;IA6B9C;;OAEG;IACH,OAAO,CAAC,cAAc;IA4BtB;;OAEG;IACH,OAAO,CAAC,aAAa;IAQrB;;OAEG;IACH,SAAS,IAAI,eAAe,GAAG,IAAI;IAInC;;OAEG;IACH,QAAQ,IAAI;QACV,YAAY,EAAE,MAAM,CAAC;QACrB,OAAO,EAAE,KAAK,CAAC;YACb,EAAE,EAAE,MAAM,CAAC;YACX,aAAa,EAAE,MAAM,EAAE,CAAC;YACxB,WAAW,EAAE,MAAM,CAAC;YACpB,OAAO,EAAE,OAAO,CAAC;SAClB,CAAC,CAAC;KACJ;IAYD;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CA2BhC;AAGD,eAAO,MAAM,gBAAgB,kBAAyB,CAAC;AAEvD;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAE5E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,EACzC,IAAI,CAAC,EAAE,GAAG,GACT,IAAI,CAKN;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,EACzC,IAAI,CAAC,EAAE,GAAG,GACT,IAAI,CAKN;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,EACzC,IAAI,CAAC,EAAE,GAAG,GACT,IAAI,CAKN;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,SAAS,GAAG,SAAS,EAC7B,IAAI,CAAC,EAAE,GAAG,GACT,IAAI,CAKN;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,SAAS,EAC5D,IAAI,CAAC,EAAE,GAAG,EACV,OAAO,CAAC,EAAE,MAAM,GACf,IAAI,CAgBN;AAED;;GAEG;AACH,wBAAgB,kBAAkB,2BAEjC;AAED;;GAEG;AACH,wBAAgB,iBAAiB;kBA7Jf,MAAM;aACX,KAAK,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,WAAW,EAAE,MAAM,CAAC;QACpB,OAAO,EAAE,OAAO,CAAC;KAClB,CAAC;EAyJL;AAED;;GAEG;AACH,wBAAsB,uBAAuB,IAAI,OAAO,CAAC,IAAI,CAAC,CAE7D"}
|
|
@@ -11,16 +11,43 @@ class WebSocketManager {
|
|
|
11
11
|
HEARTBEAT_INTERVAL = 30000; // 30 seconds
|
|
12
12
|
/**
|
|
13
13
|
* Initialize the WebSocket server
|
|
14
|
+
* @param server HTTP server instance
|
|
15
|
+
* @param path WebSocket path (default: "/ws")
|
|
16
|
+
* @param allowReinit Allow re-initialization after shutdown (default: false)
|
|
14
17
|
*/
|
|
15
|
-
init(server, path = "/ws") {
|
|
18
|
+
init(server, path = "/ws", allowReinit = false) {
|
|
16
19
|
if (this.wss) {
|
|
17
|
-
|
|
18
|
-
|
|
20
|
+
if (allowReinit) {
|
|
21
|
+
console.warn("[websocket] WebSocket server already initialized, but re-initialization is allowed");
|
|
22
|
+
// Don't return, allow re-initialization
|
|
23
|
+
}
|
|
24
|
+
else {
|
|
25
|
+
console.warn("[websocket] WebSocket server already initialized");
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
try {
|
|
30
|
+
this.wss = new WebSocketServer({ server, path });
|
|
31
|
+
// Verify the WebSocket server was created successfully
|
|
32
|
+
if (!this.wss) {
|
|
33
|
+
throw new Error("Failed to create WebSocket server");
|
|
34
|
+
}
|
|
35
|
+
// Add error handler to catch initialization issues
|
|
36
|
+
this.wss.on("error", (error) => {
|
|
37
|
+
console.error(`[websocket] WebSocket server error:`, error);
|
|
38
|
+
throw new Error(`WebSocket server error: ${error.message}`);
|
|
39
|
+
});
|
|
40
|
+
console.log(`[websocket] WebSocket server initialized on path: ${path}`);
|
|
41
|
+
this.wss.on("connection", this.handleConnection.bind(this));
|
|
42
|
+
this.startHeartbeat();
|
|
43
|
+
}
|
|
44
|
+
catch (error) {
|
|
45
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
46
|
+
console.error(`[websocket] Failed to initialize WebSocket server:`, errorMessage);
|
|
47
|
+
// Clean up on failure
|
|
48
|
+
this.wss = null;
|
|
49
|
+
throw new Error(`Failed to initialize WebSocket server on path ${path}: ${errorMessage}`);
|
|
19
50
|
}
|
|
20
|
-
this.wss = new WebSocketServer({ server, path });
|
|
21
|
-
console.log(`[websocket] WebSocket server initialized on path: ${path}`);
|
|
22
|
-
this.wss.on("connection", this.handleConnection.bind(this));
|
|
23
|
-
this.startHeartbeat();
|
|
24
51
|
}
|
|
25
52
|
/**
|
|
26
53
|
* Handle new WebSocket connection
|
|
@@ -288,6 +315,12 @@ class WebSocketManager {
|
|
|
288
315
|
console.log("[websocket] Heartbeat stopped");
|
|
289
316
|
}
|
|
290
317
|
}
|
|
318
|
+
/**
|
|
319
|
+
* Get the WebSocket server instance
|
|
320
|
+
*/
|
|
321
|
+
getServer() {
|
|
322
|
+
return this.wss;
|
|
323
|
+
}
|
|
291
324
|
/**
|
|
292
325
|
* Get statistics about connected clients
|
|
293
326
|
*/
|
|
@@ -374,6 +407,37 @@ export function broadcastRelationshipUpdate(action, data) {
|
|
|
374
407
|
data,
|
|
375
408
|
});
|
|
376
409
|
}
|
|
410
|
+
/**
|
|
411
|
+
* Broadcast execution updates to subscribed clients
|
|
412
|
+
* Also optionally broadcasts to parent issue subscribers
|
|
413
|
+
*
|
|
414
|
+
* @param executionId - ID of the execution
|
|
415
|
+
* @param action - The action performed on the execution
|
|
416
|
+
* @param data - Execution data to broadcast
|
|
417
|
+
* @param issueId - Optional issue ID to also broadcast to issue subscribers
|
|
418
|
+
*/
|
|
419
|
+
export function broadcastExecutionUpdate(executionId, action, data, issueId) {
|
|
420
|
+
// Primary broadcast to execution subscribers
|
|
421
|
+
websocketManager.broadcast("execution", executionId, {
|
|
422
|
+
type: `execution_${action}`,
|
|
423
|
+
data,
|
|
424
|
+
});
|
|
425
|
+
// Secondary broadcast to issue subscribers if issueId provided
|
|
426
|
+
// This allows clients viewing an issue to see its execution updates
|
|
427
|
+
// without subscribing to each individual execution
|
|
428
|
+
if (issueId) {
|
|
429
|
+
websocketManager.broadcast("issue", issueId, {
|
|
430
|
+
type: `execution_${action}`,
|
|
431
|
+
data,
|
|
432
|
+
});
|
|
433
|
+
}
|
|
434
|
+
}
|
|
435
|
+
/**
|
|
436
|
+
* Get the WebSocket server instance
|
|
437
|
+
*/
|
|
438
|
+
export function getWebSocketServer() {
|
|
439
|
+
return websocketManager.getServer();
|
|
440
|
+
}
|
|
377
441
|
/**
|
|
378
442
|
* Get WebSocket server statistics
|
|
379
443
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/services/websocket.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"websocket.js","sourceRoot":"","sources":["../../src/services/websocket.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,SAAS,EAAW,MAAM,IAAI,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAEpC,MAAM,eAAe,GAAG,KAAK,CAAC;AAmD9B;;GAEG;AACH,MAAM,gBAAgB;IACZ,GAAG,GAA2B,IAAI,CAAC;IACnC,OAAO,GAAwB,IAAI,GAAG,EAAE,CAAC;IACzC,iBAAiB,GAA0B,IAAI,CAAC;IACvC,kBAAkB,GAAG,KAAK,CAAC,CAAC,aAAa;IAE1D;;;;;OAKG;IACH,IAAI,CAAC,MAAmB,EAAE,OAAe,KAAK,EAAE,cAAuB,KAAK;QAC1E,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;gBACnG,wCAAwC;YAC1C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;gBACjE,OAAO;YACT,CAAC;QACH,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,GAAG,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;YAEjD,uDAAuD;YACvD,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACvD,CAAC;YAED,mDAAmD;YACnD,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;gBAC7B,OAAO,CAAC,KAAK,CAAC,qCAAqC,EAAE,KAAK,CAAC,CAAC;gBAC5D,MAAM,IAAI,KAAK,CAAC,2BAA2B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;YAC9D,CAAC,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,CAAC,qDAAqD,IAAI,EAAE,CAAC,CAAC;YAEzE,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YAC5D,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC5E,OAAO,CAAC,KAAK,CAAC,oDAAoD,EAAE,YAAY,CAAC,CAAC;YAClF,sBAAsB;YACtB,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;YAChB,MAAM,IAAI,KAAK,CAAC,iDAAiD,IAAI,KAAK,YAAY,EAAE,CAAC,CAAC;QAC5F,CAAC;IACH,CAAC;IAED;;OAEG;IACK,gBAAgB,CAAC,EAAa,EAAE,IAA0B;QAChE,MAAM,QAAQ,GAAG,UAAU,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAW;YACrB,EAAE,EAAE,QAAQ;YACZ,EAAE;YACF,aAAa,EAAE,IAAI,GAAG,EAAE;YACxB,OAAO,EAAE,IAAI;YACb,WAAW,EAAE,IAAI,IAAI,EAAE;SACxB,CAAC;QAEF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnC,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CACT,iCAAiC,QAAQ,YAAY,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,CAC1E,CAAC;QACJ,CAAC;QAED,wBAAwB;QACxB,EAAE,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAa,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QACxE,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;QACzD,EAAE,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7D,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;QAE/C,uBAAuB;QACvB,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YAC1B,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,8BAA8B;SACxC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,mBAAmB,CAAC,QAAgB;QAC1C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CACT,oCAAoC,QAAQ,oBAAoB,MAAM,CAAC,aAAa,CAAC,IAAI,GAAG,CAC7F,CAAC;YACJ,CAAC;YACD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAChC,CAAC;IACH,CAAC;IAED;;OAEG;IACK,WAAW,CAAC,QAAgB,EAAE,KAAY;QAChD,OAAO,CAAC,KAAK,CAAC,6BAA6B,QAAQ,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1E,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,QAAgB;QACjC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,OAAO,GAAG,IAAI,CAAC;QACxB,CAAC;IACH,CAAC;IAED;;OAEG;IACK,aAAa,CAAC,QAAgB,EAAE,IAAa;QACnD,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAkB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;YAE3D,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,KAAK,WAAW;oBACd,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBACxC,MAAM;gBAER,KAAK,aAAa;oBAChB,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;oBAC1C,MAAM;gBAER,KAAK,MAAM;oBACT,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC9C,MAAM;gBAER;oBACE,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;wBAC1B,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,yBAA0B,OAAe,CAAC,IAAI,EAAE;qBAC1D,CAAC,CAAC;YACP,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,4CAA4C,QAAQ,GAAG,EACvD,KAAK,CACN,CAAC;YACF,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;gBAC1B,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,wBAAwB;aAClC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,QAAgB,EAAE,OAAsB;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,IAAI,YAAoB,CAAC;QAEzB,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;YAClC,2BAA2B;YAC3B,YAAY,GAAG,KAAK,CAAC;QACvB,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACpD,iCAAiC;YACjC,YAAY,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAC/D,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC/B,sCAAsC;YACtC,YAAY,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;gBAC1B,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,8BAA8B;aACxC,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QACvC,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CACT,sBAAsB,QAAQ,mBAAmB,YAAY,EAAE,CAChE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YAC1B,IAAI,EAAE,YAAY;YAClB,YAAY;YACZ,OAAO,EAAE,iBAAiB,YAAY,EAAE;SACzC,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,iBAAiB,CAAC,QAAgB,EAAE,OAAsB;QAChE,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO;QACT,CAAC;QAED,IAAI,YAAoB,CAAC;QAEzB,IAAI,OAAO,CAAC,WAAW,KAAK,KAAK,EAAE,CAAC;YAClC,YAAY,GAAG,KAAK,CAAC;QACvB,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACpD,YAAY,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QAC/D,CAAC;aAAM,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;YAC/B,YAAY,GAAG,GAAG,OAAO,CAAC,WAAW,IAAI,CAAC;QAC5C,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;gBAC1B,IAAI,EAAE,OAAO;gBACb,OAAO,EAAE,gCAAgC;aAC1C,CAAC,CAAC;YACH,OAAO;QACT,CAAC;QAED,MAAM,CAAC,aAAa,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CACT,sBAAsB,QAAQ,uBAAuB,YAAY,EAAE,CACpE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE;YAC1B,IAAI,EAAE,cAAc;YACpB,YAAY;YACZ,OAAO,EAAE,qBAAqB,YAAY,EAAE;SAC7C,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACK,YAAY,CAAC,QAAgB,EAAE,OAAsB;QAC3D,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;YACvD,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QAC1C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CACX,yCAAyC,QAAQ,GAAG,EACpD,KAAK,CACN,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS,CACP,UAA0C,EAC1C,QAAgB,EAChB,OAAsB;QAEtB,MAAM,YAAY,GAAG,GAAG,UAAU,IAAI,QAAQ,EAAE,CAAC;QACjD,MAAM,gBAAgB,GAAG,GAAG,UAAU,IAAI,CAAC;QAC3C,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9B,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBAC5C,OAAO;YACT,CAAC;YAED,6EAA6E;YAC7E,IACE,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,YAAY,CAAC;gBACtC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC;gBAC1C,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAC/B,CAAC;gBACD,IAAI,CAAC;oBACH,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oBACxC,SAAS,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,sCAAsC,MAAM,CAAC,EAAE,GAAG,EAClD,KAAK,CACN,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CACT,2BAA2B,OAAO,CAAC,IAAI,QAAQ,YAAY,OAAO,SAAS,UAAU,CACtF,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,OAAsB;QACrC,IAAI,SAAS,GAAG,CAAC,CAAC;QAElB,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9B,IAAI,MAAM,CAAC,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC,IAAI,EAAE,CAAC;gBAC5C,OAAO;YACT,CAAC;YAED,2CAA2C;YAC3C,IAAI,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBACpC,IAAI,CAAC;oBACH,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;oBACxC,SAAS,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CACX,sCAAsC,MAAM,CAAC,EAAE,GAAG,EAClD,KAAK,CACN,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,CAAC,GAAG,CACT,2BAA2B,OAAO,CAAC,IAAI,OAAO,SAAS,UAAU,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACK,cAAc;QACpB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,OAAO;QACT,CAAC;QAED,IAAI,CAAC,iBAAiB,GAAG,WAAW,CAAC,GAAG,EAAE;YACxC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE;gBACxC,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;oBACpB,OAAO,CAAC,GAAG,CAAC,4CAA4C,QAAQ,EAAE,CAAC,CAAC;oBACpE,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC;oBACtB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBAED,MAAM,CAAC,OAAO,GAAG,KAAK,CAAC;gBACvB,IAAI,CAAC;oBACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;gBACnB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;gBAClE,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;QAE5B,OAAO,CAAC,GAAG,CACT,4CAA4C,IAAI,CAAC,kBAAkB,KAAK,CACzE,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,aAAa;QACnB,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;YAC3B,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YACtC,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IAED;;OAEG;IACH,QAAQ;QASN,OAAO;YACL,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;YAC/B,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;gBAC1D,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC;gBAC/C,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE;gBAC7C,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,CAAC,CAAC;SACJ,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,QAAQ;QACZ,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;QAE7D,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,+BAA+B;QAC/B,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;YAC9B,IAAI,CAAC;gBACH,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;YAChD,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,oCAAoC,MAAM,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YACzE,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QAErB,6BAA6B;QAC7B,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACb,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7B,IAAI,CAAC,GAAI,CAAC,KAAK,CAAC,GAAG,EAAE;oBACnB,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;oBACnD,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC;oBAChB,OAAO,EAAE,CAAC;gBACZ,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC;IACH,CAAC;CACF;AAED,4BAA4B;AAC5B,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,gBAAgB,EAAE,CAAC;AAEvD;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAmB,EAAE,IAAa;IACpE,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAe,EACf,MAAyC,EACzC,IAAU;IAEV,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE;QAC3C,IAAI,EAAE,SAAS,MAAM,EAAS;QAC9B,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAAc,EACd,MAAyC,EACzC,IAAU;IAEV,gBAAgB,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE;QACzC,IAAI,EAAE,QAAQ,MAAM,EAAS;QAC7B,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,MAAyC,EACzC,IAAU;IAEV,gBAAgB,CAAC,gBAAgB,CAAC;QAChC,IAAI,EAAE,YAAY,MAAM,EAAS;QACjC,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,2BAA2B,CACzC,MAA6B,EAC7B,IAAU;IAEV,gBAAgB,CAAC,gBAAgB,CAAC;QAChC,IAAI,EAAE,gBAAgB,MAAM,EAAS;QACrC,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CACtC,WAAmB,EACnB,MAA4D,EAC5D,IAAU,EACV,OAAgB;IAEhB,6CAA6C;IAC7C,gBAAgB,CAAC,SAAS,CAAC,WAAW,EAAE,WAAW,EAAE;QACnD,IAAI,EAAE,aAAa,MAAM,EAAS;QAClC,IAAI;KACL,CAAC,CAAC;IAEH,+DAA+D;IAC/D,oEAAoE;IACpE,mDAAmD;IACnD,IAAI,OAAO,EAAE,CAAC;QACZ,gBAAgB,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,EAAE;YAC3C,IAAI,EAAE,aAAa,MAAM,EAAS;YAClC,IAAI;SACL,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,OAAO,gBAAgB,CAAC,SAAS,EAAE,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,gBAAgB,CAAC,QAAQ,EAAE,CAAC;AACrC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB;IAC3C,MAAM,gBAAgB,CAAC,QAAQ,EAAE,CAAC;AACpC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudocode-ai/local-server",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.7",
|
|
4
4
|
"description": "Local backend server for sudocode - provides REST API and WebSocket endpoints",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -41,26 +41,27 @@
|
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@ag-ui/core": "^0.0.39",
|
|
44
|
-
"@sudocode-ai/cli": "^0.1.
|
|
45
|
-
"@sudocode-ai/types": "^0.1.
|
|
44
|
+
"@sudocode-ai/cli": "^0.1.7",
|
|
45
|
+
"@sudocode-ai/types": "^0.1.7",
|
|
46
46
|
"@types/ws": "^8.18.1",
|
|
47
|
+
"agent-execution-engine": "^0.0.4",
|
|
47
48
|
"async-mutex": "^0.5.0",
|
|
48
|
-
"better-sqlite3": "^11.
|
|
49
|
+
"better-sqlite3": "^11.10.0",
|
|
49
50
|
"cors": "^2.8.5",
|
|
50
51
|
"dotenv": "^16.4.5",
|
|
51
52
|
"express": "^4.18.2",
|
|
52
|
-
"glob": "^
|
|
53
|
+
"glob": "^10.4.5",
|
|
53
54
|
"node-fetch": "^2.7.0",
|
|
54
55
|
"ws": "^8.18.3",
|
|
55
56
|
"zod": "^3.22.4"
|
|
56
57
|
},
|
|
57
58
|
"devDependencies": {
|
|
58
|
-
"@types/better-sqlite3": "^7.6.
|
|
59
|
+
"@types/better-sqlite3": "^7.6.13",
|
|
59
60
|
"@types/cors": "^2.8.17",
|
|
60
61
|
"@types/express": "^4.17.21",
|
|
61
62
|
"@types/node": "^20.11.19",
|
|
62
63
|
"@types/supertest": "^6.0.3",
|
|
63
|
-
"esbuild": "^0.
|
|
64
|
+
"esbuild": "^0.27.0",
|
|
64
65
|
"supertest": "^7.1.4",
|
|
65
66
|
"tsx": "^4.7.1",
|
|
66
67
|
"typescript": "^5.3.3",
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Execution Engine Interface
|
|
3
|
-
*
|
|
4
|
-
* Core abstraction for task execution engines. Provides methods for
|
|
5
|
-
* submitting, controlling, monitoring, and waiting for task execution.
|
|
6
|
-
*
|
|
7
|
-
* @module execution/engine/engine
|
|
8
|
-
*/
|
|
9
|
-
import type { ExecutionTask, ExecutionResult, TaskStatus, EngineMetrics, TaskCompleteHandler, TaskFailedHandler } from './types.js';
|
|
10
|
-
/**
|
|
11
|
-
* IExecutionEngine - Interface for task execution engines
|
|
12
|
-
*
|
|
13
|
-
* Defines the contract for engines that manage Claude Code agent execution.
|
|
14
|
-
* Implementations may use different strategies (queue-based, pool-based, etc.)
|
|
15
|
-
* but must provide these core capabilities.
|
|
16
|
-
*/
|
|
17
|
-
export interface IExecutionEngine {
|
|
18
|
-
/**
|
|
19
|
-
* Submit a single task for execution
|
|
20
|
-
*
|
|
21
|
-
* @param task - The task to execute
|
|
22
|
-
* @returns Promise resolving to the task ID
|
|
23
|
-
*/
|
|
24
|
-
submitTask(task: ExecutionTask): Promise<string>;
|
|
25
|
-
/**
|
|
26
|
-
* Submit multiple tasks for execution
|
|
27
|
-
*
|
|
28
|
-
* @param tasks - Array of tasks to execute
|
|
29
|
-
* @returns Promise resolving to array of task IDs
|
|
30
|
-
*/
|
|
31
|
-
submitTasks(tasks: ExecutionTask[]): Promise<string[]>;
|
|
32
|
-
/**
|
|
33
|
-
* Cancel a queued or running task
|
|
34
|
-
*
|
|
35
|
-
* For queued tasks, removes from queue without execution.
|
|
36
|
-
* For running tasks, terminates the process.
|
|
37
|
-
*
|
|
38
|
-
* @param taskId - ID of task to cancel
|
|
39
|
-
* @returns Promise that resolves when cancellation complete
|
|
40
|
-
*/
|
|
41
|
-
cancelTask(taskId: string): Promise<void>;
|
|
42
|
-
/**
|
|
43
|
-
* Get current status of a task
|
|
44
|
-
*
|
|
45
|
-
* @param taskId - ID of task to query
|
|
46
|
-
* @returns Current task status or null if task not found
|
|
47
|
-
*/
|
|
48
|
-
getTaskStatus(taskId: string): TaskStatus | null;
|
|
49
|
-
/**
|
|
50
|
-
* Wait for a task to complete
|
|
51
|
-
*
|
|
52
|
-
* Returns immediately if task already completed, otherwise
|
|
53
|
-
* waits for completion and returns result.
|
|
54
|
-
*
|
|
55
|
-
* @param taskId - ID of task to wait for
|
|
56
|
-
* @returns Promise resolving to execution result
|
|
57
|
-
* @throws Error if task fails
|
|
58
|
-
*/
|
|
59
|
-
waitForTask(taskId: string): Promise<ExecutionResult>;
|
|
60
|
-
/**
|
|
61
|
-
* Wait for multiple tasks to complete
|
|
62
|
-
*
|
|
63
|
-
* @param taskIds - IDs of tasks to wait for
|
|
64
|
-
* @returns Promise resolving to array of execution results
|
|
65
|
-
* @throws Error if any task fails
|
|
66
|
-
*/
|
|
67
|
-
waitForTasks(taskIds: string[]): Promise<ExecutionResult[]>;
|
|
68
|
-
/**
|
|
69
|
-
* Get current engine metrics
|
|
70
|
-
*
|
|
71
|
-
* Returns real-time statistics about engine performance
|
|
72
|
-
* and resource utilization.
|
|
73
|
-
*
|
|
74
|
-
* @returns Current engine metrics (defensive copy)
|
|
75
|
-
*/
|
|
76
|
-
getMetrics(): EngineMetrics;
|
|
77
|
-
/**
|
|
78
|
-
* Register handler for task completion events
|
|
79
|
-
*
|
|
80
|
-
* Called when any task completes successfully.
|
|
81
|
-
*
|
|
82
|
-
* @param handler - Callback function to invoke on completion
|
|
83
|
-
*/
|
|
84
|
-
onTaskComplete(handler: TaskCompleteHandler): void;
|
|
85
|
-
/**
|
|
86
|
-
* Register handler for task failure events
|
|
87
|
-
*
|
|
88
|
-
* Called when any task fails after all retries exhausted.
|
|
89
|
-
*
|
|
90
|
-
* @param handler - Callback function to invoke on failure
|
|
91
|
-
*/
|
|
92
|
-
onTaskFailed(handler: TaskFailedHandler): void;
|
|
93
|
-
/**
|
|
94
|
-
* Gracefully shutdown the engine
|
|
95
|
-
*
|
|
96
|
-
* Stops accepting new tasks, cancels queued tasks,
|
|
97
|
-
* terminates running tasks, and releases all resources.
|
|
98
|
-
*
|
|
99
|
-
* @returns Promise that resolves when shutdown complete
|
|
100
|
-
*/
|
|
101
|
-
shutdown(): Promise<void>;
|
|
102
|
-
}
|
|
103
|
-
//# sourceMappingURL=engine.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B;;;;;OAKG;IACH,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAEjD;;;;;OAKG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IAEvD;;;;;;;;OAQG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE1C;;;;;OAKG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI,CAAC;IAEjD;;;;;;;;;OASG;IACH,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAEtD;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC,CAAC;IAE5D;;;;;;;OAOG;IACH,UAAU,IAAI,aAAa,CAAC;IAE5B;;;;;;OAMG;IACH,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAEnD;;;;;;OAMG;IACH,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAAC;IAE/C;;;;;;;OAOG;IACH,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Execution Engine Interface
|
|
3
|
-
*
|
|
4
|
-
* Core abstraction for task execution engines. Provides methods for
|
|
5
|
-
* submitting, controlling, monitoring, and waiting for task execution.
|
|
6
|
-
*
|
|
7
|
-
* @module execution/engine/engine
|
|
8
|
-
*/
|
|
9
|
-
export {};
|
|
10
|
-
//# sourceMappingURL=engine.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"engine.js","sourceRoot":"","sources":["../../../src/execution/engine/engine.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
|
@@ -1,190 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Simple Execution Engine
|
|
3
|
-
*
|
|
4
|
-
* Queue-based execution engine that spawns a process per task
|
|
5
|
-
* with concurrency limits. Implements the "simple first" approach.
|
|
6
|
-
*
|
|
7
|
-
* @module execution/engine/simple-engine
|
|
8
|
-
*/
|
|
9
|
-
import type { IExecutionEngine } from "./engine.js";
|
|
10
|
-
import type { ExecutionTask, ExecutionResult, TaskStatus, EngineMetrics, TaskCompleteHandler, TaskFailedHandler, EngineConfig } from "./types.js";
|
|
11
|
-
import type { IProcessManager } from "../process/manager.js";
|
|
12
|
-
/**
|
|
13
|
-
* SimpleExecutionEngine - Queue-based task execution with concurrency control
|
|
14
|
-
*
|
|
15
|
-
* Key features:
|
|
16
|
-
* - FIFO queue for task ordering
|
|
17
|
-
* - Configurable concurrency limit (default: 3)
|
|
18
|
-
* - Automatic retry on failure
|
|
19
|
-
* - Event emission for task lifecycle
|
|
20
|
-
* - Promise-based waiting
|
|
21
|
-
* - Graceful shutdown
|
|
22
|
-
*/
|
|
23
|
-
export declare class SimpleExecutionEngine implements IExecutionEngine {
|
|
24
|
-
private _processManager;
|
|
25
|
-
private _config;
|
|
26
|
-
private taskQueue;
|
|
27
|
-
private runningTasks;
|
|
28
|
-
private completedResults;
|
|
29
|
-
private taskResolvers;
|
|
30
|
-
private metrics;
|
|
31
|
-
private completeHandlers;
|
|
32
|
-
private failedHandlers;
|
|
33
|
-
private pollingIntervals;
|
|
34
|
-
/**
|
|
35
|
-
* Create a new SimpleExecutionEngine
|
|
36
|
-
*
|
|
37
|
-
* @param processManager - Process manager for spawning Claude processes
|
|
38
|
-
* @param config - Engine configuration options
|
|
39
|
-
*/
|
|
40
|
-
constructor(_processManager: IProcessManager, _config?: EngineConfig);
|
|
41
|
-
/**
|
|
42
|
-
* Submit a single task for execution
|
|
43
|
-
*
|
|
44
|
-
* Adds task to queue and attempts to start execution if capacity available.
|
|
45
|
-
*
|
|
46
|
-
* @param task - The task to execute
|
|
47
|
-
* @returns Promise resolving to the task ID
|
|
48
|
-
*/
|
|
49
|
-
submitTask(task: ExecutionTask): Promise<string>;
|
|
50
|
-
/**
|
|
51
|
-
* Submit multiple tasks for execution
|
|
52
|
-
*
|
|
53
|
-
* @param tasks - Array of tasks to execute
|
|
54
|
-
* @returns Promise resolving to array of task IDs
|
|
55
|
-
*/
|
|
56
|
-
submitTasks(tasks: ExecutionTask[]): Promise<string[]>;
|
|
57
|
-
/**
|
|
58
|
-
* Process the task queue
|
|
59
|
-
*
|
|
60
|
-
* Dequeues tasks and starts execution while capacity is available.
|
|
61
|
-
* Checks dependencies before execution and re-queues if not met.
|
|
62
|
-
*
|
|
63
|
-
* @private
|
|
64
|
-
*/
|
|
65
|
-
private processQueue;
|
|
66
|
-
/**
|
|
67
|
-
* Check if all task dependencies are met
|
|
68
|
-
*
|
|
69
|
-
* @param task - Task to check
|
|
70
|
-
* @returns True if all dependencies completed successfully
|
|
71
|
-
* @private
|
|
72
|
-
*/
|
|
73
|
-
private areDependenciesMet;
|
|
74
|
-
/**
|
|
75
|
-
* Check if any task dependency has failed
|
|
76
|
-
*
|
|
77
|
-
* @param task - Task to check
|
|
78
|
-
* @returns True if any dependency failed
|
|
79
|
-
* @private
|
|
80
|
-
*/
|
|
81
|
-
private hasFailedDependency;
|
|
82
|
-
/**
|
|
83
|
-
* Track task as running and update capacity metrics
|
|
84
|
-
*
|
|
85
|
-
* @param task - Task to start tracking
|
|
86
|
-
* @private
|
|
87
|
-
*/
|
|
88
|
-
private trackTaskStart;
|
|
89
|
-
/**
|
|
90
|
-
* Track task completion and release capacity
|
|
91
|
-
*
|
|
92
|
-
* @param taskId - ID of completed task
|
|
93
|
-
* @private
|
|
94
|
-
*/
|
|
95
|
-
private trackTaskComplete;
|
|
96
|
-
/**
|
|
97
|
-
* Execute a task
|
|
98
|
-
*
|
|
99
|
-
* Acquires a process, sends the prompt, collects output, and builds the result.
|
|
100
|
-
*
|
|
101
|
-
* @param task - Task to execute
|
|
102
|
-
* @private
|
|
103
|
-
*/
|
|
104
|
-
private executeTask;
|
|
105
|
-
/**
|
|
106
|
-
* Wait for a process to exit
|
|
107
|
-
*
|
|
108
|
-
* @param process - The managed process to wait for
|
|
109
|
-
* @param timeoutMs - Optional timeout in milliseconds
|
|
110
|
-
* @private
|
|
111
|
-
*/
|
|
112
|
-
private waitForProcessExit;
|
|
113
|
-
/**
|
|
114
|
-
* Parse metadata from stream-json output
|
|
115
|
-
*
|
|
116
|
-
* Extracts tools used, files changed, tokens, etc. from the output.
|
|
117
|
-
*
|
|
118
|
-
* @param output - Raw output from Claude Code
|
|
119
|
-
* @returns Parsed metadata
|
|
120
|
-
* @private
|
|
121
|
-
*/
|
|
122
|
-
private parseMetadata;
|
|
123
|
-
/**
|
|
124
|
-
* Handle task failure
|
|
125
|
-
*
|
|
126
|
-
* Implements automatic retry logic if maxRetries is configured.
|
|
127
|
-
* Re-queues failed tasks at front of queue for priority retry.
|
|
128
|
-
*
|
|
129
|
-
* @param taskId - ID of failed task
|
|
130
|
-
* @param error - Error that occurred
|
|
131
|
-
* @private
|
|
132
|
-
*/
|
|
133
|
-
private handleTaskFailure;
|
|
134
|
-
/**
|
|
135
|
-
* Cancel a queued or running task
|
|
136
|
-
*
|
|
137
|
-
* Removes task from queue if still queued, or terminates process if running.
|
|
138
|
-
* Idempotent - safe to call multiple times or for non-existent tasks.
|
|
139
|
-
*
|
|
140
|
-
* @param taskId - ID of task to cancel
|
|
141
|
-
*/
|
|
142
|
-
cancelTask(taskId: string): Promise<void>;
|
|
143
|
-
/**
|
|
144
|
-
* Get current status of a task
|
|
145
|
-
*/
|
|
146
|
-
getTaskStatus(taskId: string): TaskStatus | null;
|
|
147
|
-
/**
|
|
148
|
-
* Wait for a task to complete
|
|
149
|
-
*
|
|
150
|
-
* Returns a promise that resolves with the task result when complete.
|
|
151
|
-
* Supports multiple concurrent waiters for the same task.
|
|
152
|
-
*
|
|
153
|
-
* @param taskId - ID of the task to wait for
|
|
154
|
-
* @returns Promise resolving to the execution result
|
|
155
|
-
*/
|
|
156
|
-
waitForTask(taskId: string): Promise<ExecutionResult>;
|
|
157
|
-
/**
|
|
158
|
-
* Wait for multiple tasks to complete
|
|
159
|
-
*
|
|
160
|
-
* Returns a promise that resolves when all tasks complete.
|
|
161
|
-
*
|
|
162
|
-
* @param taskIds - Array of task IDs to wait for
|
|
163
|
-
* @returns Promise resolving to array of execution results
|
|
164
|
-
*/
|
|
165
|
-
waitForTasks(taskIds: string[]): Promise<ExecutionResult[]>;
|
|
166
|
-
/**
|
|
167
|
-
* Get current engine metrics
|
|
168
|
-
*
|
|
169
|
-
* Returns defensive copy of current metrics.
|
|
170
|
-
*
|
|
171
|
-
* @returns Current engine metrics
|
|
172
|
-
*/
|
|
173
|
-
getMetrics(): EngineMetrics;
|
|
174
|
-
/**
|
|
175
|
-
* Register handler for task completion events
|
|
176
|
-
*/
|
|
177
|
-
onTaskComplete(handler: TaskCompleteHandler): void;
|
|
178
|
-
/**
|
|
179
|
-
* Register handler for task failure events
|
|
180
|
-
*/
|
|
181
|
-
onTaskFailed(handler: TaskFailedHandler): void;
|
|
182
|
-
/**
|
|
183
|
-
* Gracefully shutdown the engine
|
|
184
|
-
*
|
|
185
|
-
* Cancels all running tasks, clears the queue, and shuts down the process manager.
|
|
186
|
-
* Idempotent - safe to call multiple times.
|
|
187
|
-
*/
|
|
188
|
-
shutdown(): Promise<void>;
|
|
189
|
-
}
|
|
190
|
-
//# sourceMappingURL=simple-engine.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"simple-engine.d.ts","sourceRoot":"","sources":["../../../src/execution/engine/simple-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EACb,eAAe,EACf,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EAGb,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAI7D;;;;;;;;;;GAUG;AACH,qBAAa,qBAAsB,YAAW,gBAAgB;IA8B1D,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,OAAO;IA7BjB,OAAO,CAAC,SAAS,CAAuB;IAGxC,OAAO,CAAC,YAAY,CAAkC;IAGtD,OAAO,CAAC,gBAAgB,CAAsC;IAG9D,OAAO,CAAC,aAAa,CAAqC;IAG1D,OAAO,CAAC,OAAO,CAAgB;IAG/B,OAAO,CAAC,gBAAgB,CAA6B;IACrD,OAAO,CAAC,cAAc,CAA2B;IAGjD,OAAO,CAAC,gBAAgB,CAAqC;IAE7D;;;;;OAKG;gBAEO,eAAe,EAAE,eAAe,EAChC,OAAO,GAAE,YAAiB;IAkBpC;;;;;;;OAOG;IACG,UAAU,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC;IAWtD;;;;;OAKG;IACG,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAW5D;;;;;;;OAOG;IACH,OAAO,CAAC,YAAY;IA2CpB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAyB1B;;;;;;OAMG;IACH,OAAO,CAAC,mBAAmB;IAa3B;;;;;OAKG;IACH,OAAO,CAAC,cAAc;IAmBtB;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IAazB;;;;;;;OAOG;YACW,WAAW;IAyGzB;;;;;;OAMG;YACW,kBAAkB;IA+ChC;;;;;;;;OAQG;IACH,OAAO,CAAC,aAAa;IAWrB;;;;;;;;;OASG;IACH,OAAO,CAAC,iBAAiB;IA6EzB;;;;;;;OAOG;IACG,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6C/C;;OAEG;IACH,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,IAAI;IA0BhD;;;;;;;;OAQG;IACG,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAa3D;;;;;;;OAOG;IACG,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IAIjE;;;;;;OAMG;IACH,UAAU,IAAI,aAAa;IAK3B;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,mBAAmB,GAAG,IAAI;IAIlD;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAI9C;;;;;OAKG;IACG,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;CA6BhC"}
|