pm-orchestrator-runner 1.0.13 → 1.0.15
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 +7 -7
- package/dist/cli/index.js +13 -9
- package/dist/cli/index.js.map +1 -1
- package/dist/config/namespace.d.ts +38 -11
- package/dist/config/namespace.d.ts.map +1 -1
- package/dist/config/namespace.js +163 -26
- package/dist/config/namespace.js.map +1 -1
- package/dist/queue/index.d.ts +7 -32
- package/dist/queue/index.d.ts.map +1 -1
- package/dist/queue/index.js +11 -28
- package/dist/queue/index.js.map +1 -1
- package/dist/queue/queue-poller.d.ts +20 -1
- package/dist/queue/queue-poller.d.ts.map +1 -1
- package/dist/queue/queue-poller.js +40 -1
- package/dist/queue/queue-poller.js.map +1 -1
- package/dist/queue/queue-store.d.ts +136 -47
- package/dist/queue/queue-store.d.ts.map +1 -1
- package/dist/queue/queue-store.js +385 -107
- package/dist/queue/queue-store.js.map +1 -1
- package/dist/web/index.d.ts +8 -2
- package/dist/web/index.d.ts.map +1 -1
- package/dist/web/index.js +8 -2
- package/dist/web/index.js.map +1 -1
- package/dist/web/public/index.html +81 -1
- package/dist/web/server.d.ts +13 -2
- package/dist/web/server.d.ts.map +1 -1
- package/dist/web/server.js +155 -27
- package/dist/web/server.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"queue-store.js","sourceRoot":"","sources":["../../src/queue/queue-store.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"queue-store.js","sourceRoot":"","sources":["../../src/queue/queue-store.ts"],"names":[],"mappings":"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"}
|
package/dist/web/index.d.ts
CHANGED
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Web Module
|
|
2
|
+
* Web Module (v2)
|
|
3
3
|
* Per spec/19_WEB_UI.md
|
|
4
4
|
*
|
|
5
|
+
* v2 Changes:
|
|
6
|
+
* - WebServer requires namespace parameter
|
|
7
|
+
* - Project root for display
|
|
8
|
+
*
|
|
5
9
|
* Exports:
|
|
6
10
|
* - WebServer: Express HTTP server
|
|
7
11
|
* - createApp: Express app factory
|
|
@@ -19,6 +23,8 @@ export interface NamespaceWebConfig {
|
|
|
19
23
|
namespace: string;
|
|
20
24
|
/** Port number derived from namespace */
|
|
21
25
|
port: number;
|
|
26
|
+
/** Project root path */
|
|
27
|
+
projectRoot?: string;
|
|
22
28
|
}
|
|
23
29
|
/**
|
|
24
30
|
* Create a WebServer instance with namespace separation
|
|
@@ -33,7 +39,7 @@ export interface NamespaceWebConfig {
|
|
|
33
39
|
* @example
|
|
34
40
|
* ```typescript
|
|
35
41
|
* const namespaceConfig = buildNamespaceConfig({ namespace: 'dev', projectRoot: '/path' });
|
|
36
|
-
* const store =
|
|
42
|
+
* const store = new QueueStore({ namespace: 'dev' });
|
|
37
43
|
* const server = createNamespacedWebServer(
|
|
38
44
|
* { namespace: namespaceConfig.namespace, port: namespaceConfig.port },
|
|
39
45
|
* store,
|
package/dist/web/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/web/index.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/web/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,SAAS,EACT,eAAe,EACf,cAAc,EACd,SAAS,GACV,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,SAAS,EAAmB,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,6CAA6C;IAC7C,SAAS,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,IAAI,EAAE,MAAM,CAAC;IACb,wBAAwB;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,yBAAyB,CACvC,eAAe,EAAE,kBAAkB,EACnC,UAAU,EAAE,UAAU,EACtB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,GACZ,SAAS,CASX"}
|
package/dist/web/index.js
CHANGED
|
@@ -1,8 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Web Module
|
|
3
|
+
* Web Module (v2)
|
|
4
4
|
* Per spec/19_WEB_UI.md
|
|
5
5
|
*
|
|
6
|
+
* v2 Changes:
|
|
7
|
+
* - WebServer requires namespace parameter
|
|
8
|
+
* - Project root for display
|
|
9
|
+
*
|
|
6
10
|
* Exports:
|
|
7
11
|
* - WebServer: Express HTTP server
|
|
8
12
|
* - createApp: Express app factory
|
|
@@ -28,7 +32,7 @@ const server_2 = require("./server");
|
|
|
28
32
|
* @example
|
|
29
33
|
* ```typescript
|
|
30
34
|
* const namespaceConfig = buildNamespaceConfig({ namespace: 'dev', projectRoot: '/path' });
|
|
31
|
-
* const store =
|
|
35
|
+
* const store = new QueueStore({ namespace: 'dev' });
|
|
32
36
|
* const server = createNamespacedWebServer(
|
|
33
37
|
* { namespace: namespaceConfig.namespace, port: namespaceConfig.port },
|
|
34
38
|
* store,
|
|
@@ -42,6 +46,8 @@ function createNamespacedWebServer(namespaceConfig, queueStore, sessionId, host)
|
|
|
42
46
|
host,
|
|
43
47
|
queueStore,
|
|
44
48
|
sessionId,
|
|
49
|
+
namespace: namespaceConfig.namespace,
|
|
50
|
+
projectRoot: namespaceConfig.projectRoot,
|
|
45
51
|
});
|
|
46
52
|
}
|
|
47
53
|
//# sourceMappingURL=index.js.map
|
package/dist/web/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web/index.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/web/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG;;;AA8CH,8DAcC;AA1DD,mCAKkB;AAJhB,mGAAA,SAAS,OAAA;AAGT,mGAAA,SAAS,OAAA;AAGX,qCAAsD;AAgBtD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,SAAgB,yBAAyB,CACvC,eAAmC,EACnC,UAAsB,EACtB,SAAiB,EACjB,IAAa;IAEb,OAAO,IAAI,kBAAS,CAAC;QACnB,IAAI,EAAE,eAAe,CAAC,IAAI;QAC1B,IAAI;QACJ,UAAU;QACV,SAAS;QACT,SAAS,EAAE,eAAe,CAAC,SAAS;QACpC,WAAW,EAAE,eAAe,CAAC,WAAW;KACzC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -48,6 +48,19 @@
|
|
|
48
48
|
cursor: pointer;
|
|
49
49
|
}
|
|
50
50
|
|
|
51
|
+
.namespace-badge {
|
|
52
|
+
background: rgba(255, 255, 255, 0.2);
|
|
53
|
+
color: rgba(255, 255, 255, 0.9);
|
|
54
|
+
font-size: 0.75rem;
|
|
55
|
+
padding: 4px 10px;
|
|
56
|
+
border-radius: 12px;
|
|
57
|
+
font-family: monospace;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
.namespace-badge.auto-derived {
|
|
61
|
+
background: rgba(34, 197, 94, 0.3);
|
|
62
|
+
}
|
|
63
|
+
|
|
51
64
|
nav {
|
|
52
65
|
display: flex;
|
|
53
66
|
gap: 16px;
|
|
@@ -186,6 +199,11 @@
|
|
|
186
199
|
color: #991b1b;
|
|
187
200
|
}
|
|
188
201
|
|
|
202
|
+
.badge-cancelled {
|
|
203
|
+
background: #e5e7eb;
|
|
204
|
+
color: #4b5563;
|
|
205
|
+
}
|
|
206
|
+
|
|
189
207
|
.form-group {
|
|
190
208
|
margin-bottom: 16px;
|
|
191
209
|
}
|
|
@@ -454,6 +472,7 @@
|
|
|
454
472
|
<header>
|
|
455
473
|
<div class="header-content">
|
|
456
474
|
<h1 onclick="navigate('/')">PM Orchestrator Runner</h1>
|
|
475
|
+
<span id="namespace-badge" class="namespace-badge" style="display: none;"></span>
|
|
457
476
|
<nav id="main-nav">
|
|
458
477
|
<a href="/" data-nav="home">Task Groups</a>
|
|
459
478
|
<a href="/new" data-nav="new">+ New Command</a>
|
|
@@ -517,6 +536,7 @@
|
|
|
517
536
|
'RUNNING': 'badge-running',
|
|
518
537
|
'COMPLETE': 'badge-complete',
|
|
519
538
|
'ERROR': 'badge-error',
|
|
539
|
+
'CANCELLED': 'badge-cancelled',
|
|
520
540
|
};
|
|
521
541
|
return map[status] || 'badge-queued';
|
|
522
542
|
}
|
|
@@ -730,6 +750,13 @@
|
|
|
730
750
|
<div class="log-content">${escapeHtml(task.error_message || 'Unknown error')}</div>
|
|
731
751
|
</div>
|
|
732
752
|
` : ''}
|
|
753
|
+
${task.status === 'CANCELLED' ? `
|
|
754
|
+
<div class="log-entry" style="border-left-color: #6b7280;">
|
|
755
|
+
<div class="log-time">${formatFullDate(task.updated_at)}</div>
|
|
756
|
+
<div class="log-type">TASK CANCELLED</div>
|
|
757
|
+
<div class="log-content">Task was cancelled by user.</div>
|
|
758
|
+
</div>
|
|
759
|
+
` : ''}
|
|
733
760
|
</div>
|
|
734
761
|
`;
|
|
735
762
|
}
|
|
@@ -745,7 +772,12 @@
|
|
|
745
772
|
|
|
746
773
|
<div class="card">
|
|
747
774
|
<h3>Status</h3>
|
|
748
|
-
<
|
|
775
|
+
<div style="display: flex; align-items: center; gap: 16px;">
|
|
776
|
+
<span class="badge ${getStatusBadgeClass(task.status)}" style="font-size: 1rem; padding: 8px 16px;">${task.status}</span>
|
|
777
|
+
${(task.status === 'QUEUED' || task.status === 'RUNNING') ? `
|
|
778
|
+
<button class="btn btn-secondary" onclick="cancelTask('${escapeHtml(task.task_id)}')" style="padding: 8px 16px;">Cancel Task</button>
|
|
779
|
+
` : ''}
|
|
780
|
+
</div>
|
|
749
781
|
</div>
|
|
750
782
|
|
|
751
783
|
<div class="card">
|
|
@@ -898,6 +930,33 @@
|
|
|
898
930
|
});
|
|
899
931
|
}
|
|
900
932
|
|
|
933
|
+
// Cancel task
|
|
934
|
+
async function cancelTask(taskId) {
|
|
935
|
+
if (!confirm('Are you sure you want to cancel this task?')) {
|
|
936
|
+
return;
|
|
937
|
+
}
|
|
938
|
+
|
|
939
|
+
try {
|
|
940
|
+
const result = await fetch(`/api/tasks/${encodeURIComponent(taskId)}/status`, {
|
|
941
|
+
method: 'PATCH',
|
|
942
|
+
headers: { 'Content-Type': 'application/json' },
|
|
943
|
+
body: JSON.stringify({ status: 'CANCELLED' }),
|
|
944
|
+
});
|
|
945
|
+
|
|
946
|
+
const data = await result.json();
|
|
947
|
+
|
|
948
|
+
if (!result.ok) {
|
|
949
|
+
alert(`Error: ${data.message || 'Failed to cancel task'}`);
|
|
950
|
+
return;
|
|
951
|
+
}
|
|
952
|
+
|
|
953
|
+
// Refresh the task detail page
|
|
954
|
+
renderTaskDetail(taskId);
|
|
955
|
+
} catch (error) {
|
|
956
|
+
alert(`Error: ${error.message}`);
|
|
957
|
+
}
|
|
958
|
+
}
|
|
959
|
+
|
|
901
960
|
// Router
|
|
902
961
|
function router() {
|
|
903
962
|
const path = window.location.pathname;
|
|
@@ -944,7 +1003,28 @@
|
|
|
944
1003
|
});
|
|
945
1004
|
});
|
|
946
1005
|
|
|
1006
|
+
// Load namespace info
|
|
1007
|
+
async function loadNamespaceInfo() {
|
|
1008
|
+
try {
|
|
1009
|
+
const data = await api('/namespace');
|
|
1010
|
+
const badge = document.getElementById('namespace-badge');
|
|
1011
|
+
if (badge && data.namespace) {
|
|
1012
|
+
badge.textContent = data.namespace;
|
|
1013
|
+
badge.style.display = 'inline-block';
|
|
1014
|
+
if (data.auto_derived) {
|
|
1015
|
+
badge.classList.add('auto-derived');
|
|
1016
|
+
badge.title = 'Auto-derived from project folder';
|
|
1017
|
+
} else {
|
|
1018
|
+
badge.title = 'Explicitly configured namespace';
|
|
1019
|
+
}
|
|
1020
|
+
}
|
|
1021
|
+
} catch (e) {
|
|
1022
|
+
console.warn('Failed to load namespace info:', e);
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
|
|
947
1026
|
// Initial load
|
|
1027
|
+
loadNamespaceInfo();
|
|
948
1028
|
router();
|
|
949
1029
|
</script>
|
|
950
1030
|
</body>
|
package/dist/web/server.d.ts
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Web Server - Express HTTP server
|
|
2
|
+
* Web Server - Express HTTP server (v2)
|
|
3
3
|
* Per spec/19_WEB_UI.md
|
|
4
4
|
*
|
|
5
|
+
* v2 Changes:
|
|
6
|
+
* - Namespace selector support
|
|
7
|
+
* - Runner status API
|
|
8
|
+
* - All namespaces listing API
|
|
9
|
+
*
|
|
5
10
|
* Provides:
|
|
6
11
|
* - REST API for queue operations (read/write to QueueStore)
|
|
7
12
|
* - Static file serving for frontend
|
|
@@ -16,7 +21,7 @@ import { QueueStore } from '../queue';
|
|
|
16
21
|
* Web Server configuration
|
|
17
22
|
*/
|
|
18
23
|
export interface WebServerConfig {
|
|
19
|
-
/** Port number (default:
|
|
24
|
+
/** Port number (default: 5678) */
|
|
20
25
|
port?: number;
|
|
21
26
|
/** Host (default: localhost) */
|
|
22
27
|
host?: string;
|
|
@@ -24,6 +29,10 @@ export interface WebServerConfig {
|
|
|
24
29
|
queueStore: QueueStore;
|
|
25
30
|
/** Session ID for new tasks */
|
|
26
31
|
sessionId: string;
|
|
32
|
+
/** Current namespace (from queueStore) */
|
|
33
|
+
namespace: string;
|
|
34
|
+
/** Project root for display */
|
|
35
|
+
projectRoot?: string;
|
|
27
36
|
}
|
|
28
37
|
/**
|
|
29
38
|
* Web Server state
|
|
@@ -32,6 +41,7 @@ export interface WebServerState {
|
|
|
32
41
|
isRunning: boolean;
|
|
33
42
|
port: number;
|
|
34
43
|
host: string;
|
|
44
|
+
namespace: string;
|
|
35
45
|
}
|
|
36
46
|
/**
|
|
37
47
|
* Create configured Express app
|
|
@@ -45,6 +55,7 @@ export declare class WebServer {
|
|
|
45
55
|
private readonly app;
|
|
46
56
|
private readonly port;
|
|
47
57
|
private readonly host;
|
|
58
|
+
private readonly namespace;
|
|
48
59
|
private server;
|
|
49
60
|
constructor(config: WebServerConfig);
|
|
50
61
|
/**
|
package/dist/web/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAgB,EAAE,OAAO,EAAmC,MAAM,SAAS,CAAC;AAE5E,OAAO,EAAE,UAAU,EAAmB,MAAM,UAAU,CAAC;AAEvD;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,kCAAkC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gCAAgC;IAChC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,0BAA0B;IAC1B,UAAU,EAAE,UAAU,CAAC;IACvB,+BAA+B;IAC/B,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,SAAS,EAAE,MAAM,CAAC;IAClB,+BAA+B;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAUD;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CA2X1D;AAED;;;GAGG;AACH,qBAAa,SAAS;IACpB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAU;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,MAAM,CAA8C;gBAEhD,MAAM,EAAE,eAAe;IAOnC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAa5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiB3B;;OAEG;IACH,QAAQ,IAAI,cAAc;IAS1B;;OAEG;IACH,MAAM,IAAI,OAAO;IAIjB;;OAEG;IACH,MAAM,IAAI,MAAM;CAGjB"}
|
package/dist/web/server.js
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
* Web Server - Express HTTP server
|
|
3
|
+
* Web Server - Express HTTP server (v2)
|
|
4
4
|
* Per spec/19_WEB_UI.md
|
|
5
5
|
*
|
|
6
|
+
* v2 Changes:
|
|
7
|
+
* - Namespace selector support
|
|
8
|
+
* - Runner status API
|
|
9
|
+
* - All namespaces listing API
|
|
10
|
+
*
|
|
6
11
|
* Provides:
|
|
7
12
|
* - REST API for queue operations (read/write to QueueStore)
|
|
8
13
|
* - Static file serving for frontend
|
|
@@ -24,7 +29,7 @@ const path_1 = __importDefault(require("path"));
|
|
|
24
29
|
*/
|
|
25
30
|
function createApp(config) {
|
|
26
31
|
const app = (0, express_1.default)();
|
|
27
|
-
const { queueStore, sessionId } = config;
|
|
32
|
+
const { queueStore, sessionId, namespace, projectRoot } = config;
|
|
28
33
|
// Middleware
|
|
29
34
|
app.use(express_1.default.json());
|
|
30
35
|
app.use(express_1.default.urlencoded({ extended: true }));
|
|
@@ -33,22 +38,69 @@ function createApp(config) {
|
|
|
33
38
|
// CORS headers for local development
|
|
34
39
|
app.use((_req, res, next) => {
|
|
35
40
|
res.header('Access-Control-Allow-Origin', '*');
|
|
36
|
-
res.header('Access-Control-Allow-Methods', 'GET, POST, OPTIONS');
|
|
41
|
+
res.header('Access-Control-Allow-Methods', 'GET, POST, PATCH, OPTIONS');
|
|
37
42
|
res.header('Access-Control-Allow-Headers', 'Content-Type');
|
|
38
43
|
next();
|
|
39
44
|
});
|
|
40
45
|
// ===================
|
|
41
|
-
// REST API Routes
|
|
42
|
-
// Per spec/19_WEB_UI.md
|
|
46
|
+
// REST API Routes (v2)
|
|
43
47
|
// ===================
|
|
48
|
+
/**
|
|
49
|
+
* GET /api/namespaces
|
|
50
|
+
* List all namespaces with summary
|
|
51
|
+
*/
|
|
52
|
+
app.get('/api/namespaces', async (_req, res) => {
|
|
53
|
+
try {
|
|
54
|
+
const namespaces = await queueStore.getAllNamespaces();
|
|
55
|
+
res.json({
|
|
56
|
+
namespaces,
|
|
57
|
+
current_namespace: namespace,
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
62
|
+
res.status(500).json({ error: 'INTERNAL_ERROR', message });
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
/**
|
|
66
|
+
* GET /api/runners
|
|
67
|
+
* List all runners with status for specified namespace (or current)
|
|
68
|
+
* Query: ?namespace=xxx (optional)
|
|
69
|
+
*/
|
|
70
|
+
app.get('/api/runners', async (req, res) => {
|
|
71
|
+
try {
|
|
72
|
+
const targetNamespace = req.query.namespace || namespace;
|
|
73
|
+
const runners = await queueStore.getRunnersWithStatus(2 * 60 * 1000, targetNamespace);
|
|
74
|
+
res.json({
|
|
75
|
+
namespace: targetNamespace,
|
|
76
|
+
runners: runners.map(r => ({
|
|
77
|
+
runner_id: r.runner_id,
|
|
78
|
+
status: r.status,
|
|
79
|
+
is_alive: r.isAlive,
|
|
80
|
+
last_heartbeat: r.last_heartbeat,
|
|
81
|
+
started_at: r.started_at,
|
|
82
|
+
project_root: r.project_root,
|
|
83
|
+
})),
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
catch (error) {
|
|
87
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
88
|
+
res.status(500).json({ error: 'INTERNAL_ERROR', message });
|
|
89
|
+
}
|
|
90
|
+
});
|
|
44
91
|
/**
|
|
45
92
|
* GET /api/task-groups
|
|
46
|
-
* List all task groups with summary
|
|
93
|
+
* List all task groups with summary for specified namespace (or current)
|
|
94
|
+
* Query: ?namespace=xxx (optional)
|
|
47
95
|
*/
|
|
48
|
-
app.get('/api/task-groups', async (
|
|
96
|
+
app.get('/api/task-groups', async (req, res) => {
|
|
49
97
|
try {
|
|
50
|
-
const
|
|
51
|
-
|
|
98
|
+
const targetNamespace = req.query.namespace || namespace;
|
|
99
|
+
const groups = await queueStore.getAllTaskGroups(targetNamespace);
|
|
100
|
+
res.json({
|
|
101
|
+
namespace: targetNamespace,
|
|
102
|
+
task_groups: groups,
|
|
103
|
+
});
|
|
52
104
|
}
|
|
53
105
|
catch (error) {
|
|
54
106
|
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
@@ -63,7 +115,6 @@ function createApp(config) {
|
|
|
63
115
|
app.post('/api/task-groups', async (req, res) => {
|
|
64
116
|
try {
|
|
65
117
|
const { task_group_id, prompt } = req.body;
|
|
66
|
-
// Fail-closed: validate input
|
|
67
118
|
if (!task_group_id || typeof task_group_id !== 'string' || task_group_id.trim() === '') {
|
|
68
119
|
res.status(400).json({
|
|
69
120
|
error: 'INVALID_INPUT',
|
|
@@ -78,11 +129,11 @@ function createApp(config) {
|
|
|
78
129
|
});
|
|
79
130
|
return;
|
|
80
131
|
}
|
|
81
|
-
// Enqueue the first task in this group
|
|
82
132
|
const item = await queueStore.enqueue(sessionId, task_group_id.trim(), prompt.trim());
|
|
83
133
|
res.status(201).json({
|
|
84
134
|
task_id: item.task_id,
|
|
85
135
|
task_group_id: item.task_group_id,
|
|
136
|
+
namespace: item.namespace,
|
|
86
137
|
status: item.status,
|
|
87
138
|
created_at: item.created_at,
|
|
88
139
|
});
|
|
@@ -95,12 +146,15 @@ function createApp(config) {
|
|
|
95
146
|
/**
|
|
96
147
|
* GET /api/task-groups/:task_group_id/tasks
|
|
97
148
|
* List tasks in a task group
|
|
149
|
+
* Query: ?namespace=xxx (optional)
|
|
98
150
|
*/
|
|
99
151
|
app.get('/api/task-groups/:task_group_id/tasks', async (req, res) => {
|
|
100
152
|
try {
|
|
101
153
|
const task_group_id = req.params.task_group_id;
|
|
102
|
-
const
|
|
154
|
+
const targetNamespace = req.query.namespace || namespace;
|
|
155
|
+
const tasks = await queueStore.getByTaskGroup(task_group_id, targetNamespace);
|
|
103
156
|
res.json({
|
|
157
|
+
namespace: targetNamespace,
|
|
104
158
|
task_group_id,
|
|
105
159
|
tasks: tasks.map(t => ({
|
|
106
160
|
task_id: t.task_id,
|
|
@@ -120,28 +174,30 @@ function createApp(config) {
|
|
|
120
174
|
/**
|
|
121
175
|
* GET /api/tasks/:task_id
|
|
122
176
|
* Get task detail
|
|
177
|
+
* Query: ?namespace=xxx (optional)
|
|
123
178
|
*/
|
|
124
179
|
app.get('/api/tasks/:task_id', async (req, res) => {
|
|
125
180
|
try {
|
|
126
181
|
const task_id = req.params.task_id;
|
|
127
|
-
const
|
|
182
|
+
const targetNamespace = req.query.namespace || namespace;
|
|
183
|
+
const task = await queueStore.getItem(task_id, targetNamespace);
|
|
128
184
|
if (!task) {
|
|
129
185
|
res.status(404).json({
|
|
130
186
|
error: 'NOT_FOUND',
|
|
131
|
-
message:
|
|
187
|
+
message: 'Task not found: ' + task_id,
|
|
132
188
|
});
|
|
133
189
|
return;
|
|
134
190
|
}
|
|
135
191
|
res.json({
|
|
136
192
|
task_id: task.task_id,
|
|
137
193
|
task_group_id: task.task_group_id,
|
|
194
|
+
namespace: task.namespace,
|
|
138
195
|
session_id: task.session_id,
|
|
139
196
|
status: task.status,
|
|
140
197
|
prompt: task.prompt,
|
|
141
198
|
created_at: task.created_at,
|
|
142
199
|
updated_at: task.updated_at,
|
|
143
200
|
error_message: task.error_message,
|
|
144
|
-
// TODO: Add logs and changed_files when available
|
|
145
201
|
});
|
|
146
202
|
}
|
|
147
203
|
catch (error) {
|
|
@@ -153,13 +209,10 @@ function createApp(config) {
|
|
|
153
209
|
* POST /api/tasks
|
|
154
210
|
* Enqueue a new task (does NOT run it directly)
|
|
155
211
|
* Body: { task_group_id: string, prompt: string }
|
|
156
|
-
*
|
|
157
|
-
* IMPORTANT: This only inserts into queue. Runner polls separately.
|
|
158
212
|
*/
|
|
159
213
|
app.post('/api/tasks', async (req, res) => {
|
|
160
214
|
try {
|
|
161
215
|
const { task_group_id, prompt } = req.body;
|
|
162
|
-
// Fail-closed: validate input
|
|
163
216
|
if (!task_group_id || typeof task_group_id !== 'string' || task_group_id.trim() === '') {
|
|
164
217
|
res.status(400).json({
|
|
165
218
|
error: 'INVALID_INPUT',
|
|
@@ -174,12 +227,12 @@ function createApp(config) {
|
|
|
174
227
|
});
|
|
175
228
|
return;
|
|
176
229
|
}
|
|
177
|
-
// Enqueue only - does NOT run directly
|
|
178
230
|
const item = await queueStore.enqueue(sessionId, task_group_id.trim(), prompt.trim());
|
|
179
231
|
res.status(201).json({
|
|
180
232
|
task_id: item.task_id,
|
|
181
233
|
task_group_id: item.task_group_id,
|
|
182
|
-
|
|
234
|
+
namespace: item.namespace,
|
|
235
|
+
status: item.status,
|
|
183
236
|
created_at: item.created_at,
|
|
184
237
|
});
|
|
185
238
|
}
|
|
@@ -188,6 +241,59 @@ function createApp(config) {
|
|
|
188
241
|
res.status(500).json({ error: 'INTERNAL_ERROR', message });
|
|
189
242
|
}
|
|
190
243
|
});
|
|
244
|
+
/**
|
|
245
|
+
* PATCH /api/tasks/:task_id/status
|
|
246
|
+
* Update task status
|
|
247
|
+
* Body: { status: 'CANCELLED' | other valid status }
|
|
248
|
+
*/
|
|
249
|
+
app.patch('/api/tasks/:task_id/status', async (req, res) => {
|
|
250
|
+
try {
|
|
251
|
+
const task_id = req.params.task_id;
|
|
252
|
+
const { status } = req.body;
|
|
253
|
+
if (!status || typeof status !== 'string') {
|
|
254
|
+
res.status(400).json({
|
|
255
|
+
error: 'INVALID_INPUT',
|
|
256
|
+
message: 'status is required and must be a string',
|
|
257
|
+
});
|
|
258
|
+
return;
|
|
259
|
+
}
|
|
260
|
+
const validStatuses = ['QUEUED', 'RUNNING', 'COMPLETE', 'ERROR', 'CANCELLED'];
|
|
261
|
+
if (!validStatuses.includes(status)) {
|
|
262
|
+
res.status(400).json({
|
|
263
|
+
error: 'INVALID_STATUS',
|
|
264
|
+
message: 'Invalid status: ' + status + '. Must be one of: ' + validStatuses.join(', '),
|
|
265
|
+
});
|
|
266
|
+
return;
|
|
267
|
+
}
|
|
268
|
+
const result = await queueStore.updateStatusWithValidation(task_id, status);
|
|
269
|
+
if (!result.success) {
|
|
270
|
+
if (result.error === 'Task not found') {
|
|
271
|
+
res.status(404).json({
|
|
272
|
+
error: 'NOT_FOUND',
|
|
273
|
+
task_id: task_id,
|
|
274
|
+
message: result.message,
|
|
275
|
+
});
|
|
276
|
+
}
|
|
277
|
+
else {
|
|
278
|
+
res.status(400).json({
|
|
279
|
+
error: result.error,
|
|
280
|
+
message: result.message,
|
|
281
|
+
});
|
|
282
|
+
}
|
|
283
|
+
return;
|
|
284
|
+
}
|
|
285
|
+
res.json({
|
|
286
|
+
success: true,
|
|
287
|
+
task_id: result.task_id,
|
|
288
|
+
old_status: result.old_status,
|
|
289
|
+
new_status: result.new_status,
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
catch (error) {
|
|
293
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
294
|
+
res.status(500).json({ error: 'INTERNAL_ERROR', message });
|
|
295
|
+
}
|
|
296
|
+
});
|
|
191
297
|
// ===================
|
|
192
298
|
// Frontend Routes
|
|
193
299
|
// ===================
|
|
@@ -224,28 +330,47 @@ function createApp(config) {
|
|
|
224
330
|
// ===================
|
|
225
331
|
/**
|
|
226
332
|
* GET /api/health
|
|
227
|
-
* Health check endpoint
|
|
333
|
+
* Health check endpoint with namespace info
|
|
228
334
|
*/
|
|
229
335
|
app.get('/api/health', (_req, res) => {
|
|
230
|
-
res.json({
|
|
336
|
+
res.json({
|
|
337
|
+
status: 'ok',
|
|
338
|
+
timestamp: new Date().toISOString(),
|
|
339
|
+
namespace,
|
|
340
|
+
table_name: queueStore.getTableName(),
|
|
341
|
+
project_root: projectRoot,
|
|
342
|
+
});
|
|
343
|
+
});
|
|
344
|
+
/**
|
|
345
|
+
* GET /api/namespace
|
|
346
|
+
* Get current namespace configuration
|
|
347
|
+
*/
|
|
348
|
+
app.get('/api/namespace', (_req, res) => {
|
|
349
|
+
res.json({
|
|
350
|
+
namespace,
|
|
351
|
+
table_name: queueStore.getTableName(),
|
|
352
|
+
project_root: projectRoot,
|
|
353
|
+
});
|
|
231
354
|
});
|
|
232
355
|
// ===================
|
|
233
|
-
// Route List
|
|
356
|
+
// Route List
|
|
234
357
|
// ===================
|
|
235
358
|
/**
|
|
236
359
|
* GET /api/routes
|
|
237
360
|
* List all registered routes (for testing)
|
|
238
361
|
*/
|
|
239
362
|
app.get('/api/routes', (_req, res) => {
|
|
240
|
-
// Return a predefined list of routes for safety and testability
|
|
241
|
-
// This also serves as documentation of available endpoints
|
|
242
363
|
const routes = [
|
|
364
|
+
'GET /api/namespaces',
|
|
365
|
+
'GET /api/runners',
|
|
243
366
|
'GET /api/task-groups',
|
|
244
367
|
'POST /api/task-groups',
|
|
245
368
|
'GET /api/task-groups/:task_group_id/tasks',
|
|
246
369
|
'GET /api/tasks/:task_id',
|
|
247
370
|
'POST /api/tasks',
|
|
371
|
+
'PATCH /api/tasks/:task_id/status',
|
|
248
372
|
'GET /api/health',
|
|
373
|
+
'GET /api/namespace',
|
|
249
374
|
'GET /api/routes',
|
|
250
375
|
];
|
|
251
376
|
res.json({ routes });
|
|
@@ -260,10 +385,12 @@ class WebServer {
|
|
|
260
385
|
app;
|
|
261
386
|
port;
|
|
262
387
|
host;
|
|
388
|
+
namespace;
|
|
263
389
|
server = null;
|
|
264
390
|
constructor(config) {
|
|
265
|
-
this.port = config.port ||
|
|
391
|
+
this.port = config.port || 5678;
|
|
266
392
|
this.host = config.host || 'localhost';
|
|
393
|
+
this.namespace = config.namespace;
|
|
267
394
|
this.app = createApp(config);
|
|
268
395
|
}
|
|
269
396
|
/**
|
|
@@ -310,6 +437,7 @@ class WebServer {
|
|
|
310
437
|
isRunning: this.server !== null,
|
|
311
438
|
port: this.port,
|
|
312
439
|
host: this.host,
|
|
440
|
+
namespace: this.namespace,
|
|
313
441
|
};
|
|
314
442
|
}
|
|
315
443
|
/**
|
|
@@ -322,7 +450,7 @@ class WebServer {
|
|
|
322
450
|
* Get server URL
|
|
323
451
|
*/
|
|
324
452
|
getUrl() {
|
|
325
|
-
return
|
|
453
|
+
return 'http://' + this.host + ':' + this.port;
|
|
326
454
|
}
|
|
327
455
|
}
|
|
328
456
|
exports.WebServer = WebServer;
|