@overlordai/worker 1.0.53 → 1.0.54
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/clean-output-buffer.d.ts +21 -0
- package/dist/clean-output-buffer.d.ts.map +1 -0
- package/dist/clean-output-buffer.js +70 -0
- package/dist/clean-output-buffer.js.map +1 -0
- package/dist/config.d.ts +4 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +54 -39
- package/dist/config.js.map +1 -1
- package/dist/executor/base.executor.d.ts +30 -11
- package/dist/executor/base.executor.d.ts.map +1 -1
- package/dist/executor/base.executor.js +25 -2
- package/dist/executor/base.executor.js.map +1 -1
- package/dist/executor/claude.executor.d.ts +7 -8
- package/dist/executor/claude.executor.d.ts.map +1 -1
- package/dist/executor/claude.executor.js +36 -26
- package/dist/executor/claude.executor.js.map +1 -1
- package/dist/executor/codex.executor.d.ts +7 -8
- package/dist/executor/codex.executor.d.ts.map +1 -1
- package/dist/executor/codex.executor.js +64 -26
- package/dist/executor/codex.executor.js.map +1 -1
- package/dist/executor/cursor.executor.d.ts +6 -7
- package/dist/executor/cursor.executor.d.ts.map +1 -1
- package/dist/executor/cursor.executor.js +12 -22
- package/dist/executor/cursor.executor.js.map +1 -1
- package/dist/executor/custom.executor.d.ts +15 -7
- package/dist/executor/custom.executor.d.ts.map +1 -1
- package/dist/executor/custom.executor.js +25 -28
- package/dist/executor/custom.executor.js.map +1 -1
- package/dist/git-operations.d.ts +14 -12
- package/dist/git-operations.d.ts.map +1 -1
- package/dist/git-operations.js +50 -98
- package/dist/git-operations.js.map +1 -1
- package/dist/git-token-helper.d.ts +27 -0
- package/dist/git-token-helper.d.ts.map +1 -0
- package/dist/git-token-helper.js +114 -0
- package/dist/git-token-helper.js.map +1 -0
- package/dist/healthz.d.ts.map +1 -1
- package/dist/healthz.js +3 -7
- package/dist/healthz.js.map +1 -1
- package/dist/http-post.d.ts +2 -0
- package/dist/http-post.d.ts.map +1 -0
- package/dist/http-post.js +74 -0
- package/dist/http-post.js.map +1 -0
- package/dist/jwt-manager.d.ts +2 -3
- package/dist/jwt-manager.d.ts.map +1 -1
- package/dist/jwt-manager.js +5 -43
- package/dist/jwt-manager.js.map +1 -1
- package/dist/lease-manager.d.ts +4 -1
- package/dist/lease-manager.d.ts.map +1 -1
- package/dist/lease-manager.js +2 -6
- package/dist/lease-manager.js.map +1 -1
- package/dist/main.js +147 -277
- package/dist/main.js.map +1 -1
- package/dist/orphan-reaper.d.ts +1 -1
- package/dist/orphan-reaper.d.ts.map +1 -1
- package/dist/orphan-reaper.js +46 -30
- package/dist/orphan-reaper.js.map +1 -1
- package/dist/pipeline-compiler.d.ts +10 -0
- package/dist/pipeline-compiler.d.ts.map +1 -0
- package/dist/pipeline-compiler.js +179 -0
- package/dist/pipeline-compiler.js.map +1 -0
- package/dist/pipeline-parser.d.ts.map +1 -1
- package/dist/pipeline-parser.js +4 -3
- package/dist/pipeline-parser.js.map +1 -1
- package/dist/pipeline-runner.d.ts +1 -0
- package/dist/pipeline-runner.d.ts.map +1 -1
- package/dist/pipeline-runner.js +37 -27
- package/dist/pipeline-runner.js.map +1 -1
- package/dist/project-mutex.d.ts +1 -0
- package/dist/project-mutex.d.ts.map +1 -1
- package/dist/project-mutex.js +9 -1
- package/dist/project-mutex.js.map +1 -1
- package/dist/pty-manager.d.ts +2 -0
- package/dist/pty-manager.d.ts.map +1 -1
- package/dist/pty-manager.js +68 -42
- package/dist/pty-manager.js.map +1 -1
- package/dist/pty-relay-client.d.ts +38 -0
- package/dist/pty-relay-client.d.ts.map +1 -0
- package/dist/pty-relay-client.js +146 -0
- package/dist/pty-relay-client.js.map +1 -0
- package/dist/pty-stdin-writer.d.ts +11 -0
- package/dist/pty-stdin-writer.d.ts.map +1 -0
- package/dist/pty-stdin-writer.js +22 -0
- package/dist/pty-stdin-writer.js.map +1 -0
- package/dist/ringbuffer.d.ts +2 -0
- package/dist/ringbuffer.d.ts.map +1 -1
- package/dist/ringbuffer.js +10 -1
- package/dist/ringbuffer.js.map +1 -1
- package/dist/stage-monitor.d.ts +72 -0
- package/dist/stage-monitor.d.ts.map +1 -0
- package/dist/stage-monitor.js +234 -0
- package/dist/stage-monitor.js.map +1 -0
- package/dist/task-handler.d.ts +18 -12
- package/dist/task-handler.d.ts.map +1 -1
- package/dist/task-handler.js +298 -78
- package/dist/task-handler.js.map +1 -1
- package/dist/tunnel-manager.d.ts +16 -6
- package/dist/tunnel-manager.d.ts.map +1 -1
- package/dist/tunnel-manager.js +117 -16
- package/dist/tunnel-manager.js.map +1 -1
- package/dist/worker-client.d.ts +16 -7
- package/dist/worker-client.d.ts.map +1 -1
- package/dist/worker-client.js +40 -52
- package/dist/worker-client.js.map +1 -1
- package/dist/workspace-manager.d.ts +1 -0
- package/dist/workspace-manager.d.ts.map +1 -1
- package/dist/workspace-manager.js +102 -82
- package/dist/workspace-manager.js.map +1 -1
- package/package.json +4 -2
package/dist/task-handler.js
CHANGED
|
@@ -37,9 +37,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.TaskHandler = void 0;
|
|
40
|
+
const protocol_1 = require("@overlordai/protocol");
|
|
40
41
|
const fs = __importStar(require("node:fs"));
|
|
42
|
+
const path = __importStar(require("node:path"));
|
|
41
43
|
const pino_1 = __importDefault(require("pino"));
|
|
42
|
-
const
|
|
44
|
+
const pty_relay_client_js_1 = require("./pty-relay-client.js");
|
|
45
|
+
const pipeline_compiler_js_1 = require("./pipeline-compiler.js");
|
|
46
|
+
const stage_monitor_js_1 = require("./stage-monitor.js");
|
|
47
|
+
const pty_stdin_writer_js_1 = require("./pty-stdin-writer.js");
|
|
48
|
+
const git_token_helper_js_1 = require("./git-token-helper.js");
|
|
43
49
|
const log = (0, pino_1.default)({ name: 'task-handler' });
|
|
44
50
|
class TaskHandler {
|
|
45
51
|
activeTasks = new Map();
|
|
@@ -50,7 +56,8 @@ class TaskHandler {
|
|
|
50
56
|
workspaceManager;
|
|
51
57
|
ptyManager;
|
|
52
58
|
leaseChecker;
|
|
53
|
-
|
|
59
|
+
getWorkerJwt;
|
|
60
|
+
constructor(config, onProgress, onAck, onConfirmRequest, workspaceManager, ptyManager, leaseChecker, getWorkerJwt) {
|
|
54
61
|
this.config = config;
|
|
55
62
|
this.onProgress = onProgress;
|
|
56
63
|
this.onAck = onAck;
|
|
@@ -58,6 +65,7 @@ class TaskHandler {
|
|
|
58
65
|
this.workspaceManager = workspaceManager;
|
|
59
66
|
this.ptyManager = ptyManager;
|
|
60
67
|
this.leaseChecker = leaseChecker;
|
|
68
|
+
this.getWorkerJwt = getWorkerJwt;
|
|
61
69
|
}
|
|
62
70
|
getActiveTaskCount() {
|
|
63
71
|
return this.activeTasks.size;
|
|
@@ -65,18 +73,31 @@ class TaskHandler {
|
|
|
65
73
|
getActiveTaskIds() {
|
|
66
74
|
return Array.from(this.activeTasks.keys());
|
|
67
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Cancel all active tasks. Used during graceful shutdown.
|
|
78
|
+
*/
|
|
79
|
+
async cancelAllTasks() {
|
|
80
|
+
for (const [taskId, ctx] of this.activeTasks) {
|
|
81
|
+
log.info({ taskId }, 'Cancelling task for shutdown');
|
|
82
|
+
ctx.abortController.abort();
|
|
83
|
+
await this.ptyManager.cancel(taskId);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
68
86
|
/**
|
|
69
87
|
* Wait until all active tasks have finished.
|
|
70
88
|
* Resolves immediately if no tasks are active.
|
|
71
89
|
*/
|
|
72
|
-
waitForActiveTasks() {
|
|
73
|
-
if (this.activeTasks.size === 0)
|
|
90
|
+
waitForActiveTasks(timeoutMs = 60_000) {
|
|
91
|
+
if (this.activeTasks.size === 0)
|
|
74
92
|
return Promise.resolve();
|
|
75
|
-
}
|
|
76
93
|
return new Promise((resolve) => {
|
|
94
|
+
const deadline = setTimeout(() => { clearInterval(check); resolve(); }, timeoutMs);
|
|
95
|
+
if (deadline.unref)
|
|
96
|
+
deadline.unref();
|
|
77
97
|
const check = setInterval(() => {
|
|
78
98
|
if (this.activeTasks.size === 0) {
|
|
79
99
|
clearInterval(check);
|
|
100
|
+
clearTimeout(deadline);
|
|
80
101
|
resolve();
|
|
81
102
|
}
|
|
82
103
|
}, 500);
|
|
@@ -85,23 +106,24 @@ class TaskHandler {
|
|
|
85
106
|
});
|
|
86
107
|
}
|
|
87
108
|
getActiveTaskStatuses() {
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
currentStage: ctx.stage,
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
return statuses;
|
|
109
|
+
return Array.from(this.activeTasks, ([taskId, ctx]) => ({
|
|
110
|
+
taskId,
|
|
111
|
+
localStatus: ctx.ptySession ? protocol_1.LocalStatus.STILL_RUNNING : protocol_1.LocalStatus.COMPLETED_LOCALLY,
|
|
112
|
+
currentStage: ctx.stage,
|
|
113
|
+
}));
|
|
97
114
|
}
|
|
98
115
|
async handleExecute(frame) {
|
|
99
|
-
const { taskId, description, projectKey, configSnapshot, developer, channelToken, msgId } = frame;
|
|
116
|
+
const { taskId, description, projectKey, configSnapshot, developer, channelToken, msgId, gitToken } = frame;
|
|
100
117
|
if (this.activeTasks.has(taskId)) {
|
|
101
118
|
log.warn({ taskId }, 'Task already active, ignoring duplicate execute');
|
|
102
119
|
this.onAck(msgId, { status: 'already_running' });
|
|
103
120
|
return;
|
|
104
121
|
}
|
|
122
|
+
if (this.activeTasks.size >= this.config.maxSlots) {
|
|
123
|
+
log.warn({ taskId, active: this.activeTasks.size, maxSlots: this.config.maxSlots }, 'At capacity, rejecting task');
|
|
124
|
+
this.onAck(msgId, { status: 'at_capacity' });
|
|
125
|
+
return;
|
|
126
|
+
}
|
|
105
127
|
log.info({ taskId, agentType: configSnapshot.agentType }, 'Executing task');
|
|
106
128
|
const abortController = new AbortController();
|
|
107
129
|
const ctx = {
|
|
@@ -111,7 +133,7 @@ class TaskHandler {
|
|
|
111
133
|
stage: 'init',
|
|
112
134
|
workspaceInfo: null,
|
|
113
135
|
ptySession: null,
|
|
114
|
-
|
|
136
|
+
stageMonitor: null,
|
|
115
137
|
channelToken,
|
|
116
138
|
configSnapshot,
|
|
117
139
|
abortController,
|
|
@@ -120,19 +142,86 @@ class TaskHandler {
|
|
|
120
142
|
// Ack the execute message
|
|
121
143
|
this.onAck(msgId, { status: 'accepted' });
|
|
122
144
|
this.onProgress(taskId, 'init', 'running', 'Initializing workspace');
|
|
145
|
+
let relayClient = null;
|
|
123
146
|
try {
|
|
124
|
-
// 1.
|
|
147
|
+
// 1. Connect PTY relay FIRST so the worker channel is registered before
|
|
148
|
+
// users can attach, and the channelToken is consumed before it expires
|
|
149
|
+
// (channelToken TTL is 30s; workspace init can take minutes).
|
|
150
|
+
relayClient = new pty_relay_client_js_1.PtyRelayClient({
|
|
151
|
+
serverUrl: this.config.overlordHost,
|
|
152
|
+
taskId,
|
|
153
|
+
channelToken,
|
|
154
|
+
workerJwt: this.getWorkerJwt(),
|
|
155
|
+
});
|
|
156
|
+
// Abort the task if the relay closes during init (auth failure, network error)
|
|
157
|
+
relayClient.onClose((code) => {
|
|
158
|
+
if (code >= 4000) {
|
|
159
|
+
log.warn({ taskId, code }, 'PTY relay auth failed, aborting task');
|
|
160
|
+
abortController.abort();
|
|
161
|
+
}
|
|
162
|
+
});
|
|
163
|
+
// Buffer stdin/resize frames arriving before PTY session exists
|
|
164
|
+
const MAX_BUFFER_SIZE = 100;
|
|
165
|
+
const MAX_BUFFER_BYTES = 1_048_576; // 1MB
|
|
166
|
+
let totalBufferedBytes = 0;
|
|
167
|
+
const stdinBuffer = [];
|
|
168
|
+
const resizeBuffer = [];
|
|
169
|
+
relayClient.onStdin((data) => {
|
|
170
|
+
if (ctx.ptySession) {
|
|
171
|
+
try {
|
|
172
|
+
this.ptyManager.write(taskId, data);
|
|
173
|
+
}
|
|
174
|
+
catch { /* session closed */ }
|
|
175
|
+
}
|
|
176
|
+
else {
|
|
177
|
+
const incomingBytes = data.length;
|
|
178
|
+
if (incomingBytes > MAX_BUFFER_BYTES) {
|
|
179
|
+
log.warn({ taskId, incomingBytes }, 'Single stdin frame exceeds buffer byte limit, dropping data');
|
|
180
|
+
return;
|
|
181
|
+
}
|
|
182
|
+
while (stdinBuffer.length > 0 &&
|
|
183
|
+
(stdinBuffer.length >= MAX_BUFFER_SIZE || totalBufferedBytes + incomingBytes > MAX_BUFFER_BYTES)) {
|
|
184
|
+
const dropped = stdinBuffer.shift();
|
|
185
|
+
if (dropped) {
|
|
186
|
+
totalBufferedBytes -= dropped.length;
|
|
187
|
+
}
|
|
188
|
+
}
|
|
189
|
+
if (stdinBuffer.length >= MAX_BUFFER_SIZE || totalBufferedBytes + incomingBytes > MAX_BUFFER_BYTES) {
|
|
190
|
+
log.warn({ taskId, totalBufferedBytes, incomingBytes }, 'Stdin buffer limits exceeded, dropping data');
|
|
191
|
+
return;
|
|
192
|
+
}
|
|
193
|
+
totalBufferedBytes += incomingBytes;
|
|
194
|
+
stdinBuffer.push(data);
|
|
195
|
+
}
|
|
196
|
+
});
|
|
197
|
+
relayClient.onResize((cols, rows) => {
|
|
198
|
+
if (ctx.ptySession) {
|
|
199
|
+
try {
|
|
200
|
+
ctx.ptySession.pty.resize(cols, rows);
|
|
201
|
+
}
|
|
202
|
+
catch { /* session closed */ }
|
|
203
|
+
}
|
|
204
|
+
else {
|
|
205
|
+
if (resizeBuffer.length >= MAX_BUFFER_SIZE) {
|
|
206
|
+
resizeBuffer.shift(); // Drop oldest
|
|
207
|
+
}
|
|
208
|
+
resizeBuffer.push({ cols, rows });
|
|
209
|
+
}
|
|
210
|
+
});
|
|
211
|
+
relayClient.connect();
|
|
212
|
+
// 2. Initialize workspace via WorkspaceManager (bare clone, worktree, git config, setup commands)
|
|
125
213
|
const workspaceInfo = await this.workspaceManager.initialize({
|
|
126
214
|
taskId,
|
|
127
215
|
projectKey,
|
|
128
216
|
configSnapshot,
|
|
129
217
|
developer,
|
|
218
|
+
gitToken,
|
|
130
219
|
});
|
|
131
220
|
ctx.workspaceInfo = workspaceInfo;
|
|
132
221
|
if (abortController.signal.aborted) {
|
|
133
222
|
throw new Error('Task cancelled');
|
|
134
223
|
}
|
|
135
|
-
//
|
|
224
|
+
// 3. Create PTY session via PtyManager
|
|
136
225
|
ctx.stage = 'agent';
|
|
137
226
|
this.onProgress(taskId, 'agent', 'running', 'Starting agent');
|
|
138
227
|
const ptySession = this.ptyManager.createSession({
|
|
@@ -144,7 +233,23 @@ class TaskHandler {
|
|
|
144
233
|
taskDescription: description,
|
|
145
234
|
});
|
|
146
235
|
ctx.ptySession = ptySession;
|
|
147
|
-
//
|
|
236
|
+
// 3b. Wire PTY output → relay
|
|
237
|
+
ptySession.onData((data) => {
|
|
238
|
+
relayClient?.sendData(data);
|
|
239
|
+
});
|
|
240
|
+
if (resizeBuffer.length > 0) {
|
|
241
|
+
const last = resizeBuffer.at(-1);
|
|
242
|
+
try {
|
|
243
|
+
ptySession.pty.resize(last.cols, last.rows);
|
|
244
|
+
}
|
|
245
|
+
catch { /* ignore */ }
|
|
246
|
+
}
|
|
247
|
+
for (const data of stdinBuffer) {
|
|
248
|
+
try {
|
|
249
|
+
this.ptyManager.write(taskId, data);
|
|
250
|
+
}
|
|
251
|
+
catch { /* ignore */ }
|
|
252
|
+
}
|
|
148
253
|
await this.runPipeline(ctx, ptySession, description);
|
|
149
254
|
}
|
|
150
255
|
catch (err) {
|
|
@@ -153,21 +258,25 @@ class TaskHandler {
|
|
|
153
258
|
this.onProgress(taskId, ctx.stage, 'cancelled', 'Task cancelled');
|
|
154
259
|
}
|
|
155
260
|
else {
|
|
156
|
-
const message =
|
|
261
|
+
const message = (0, protocol_1.getErrorMessage)(err);
|
|
157
262
|
log.error({ taskId, err }, 'Task failed');
|
|
158
263
|
this.onProgress(taskId, ctx.stage, 'failed', message);
|
|
159
264
|
}
|
|
160
265
|
}
|
|
161
266
|
finally {
|
|
267
|
+
// Disconnect PTY relay
|
|
268
|
+
relayClient?.disconnect();
|
|
162
269
|
// Cleanup PTY session
|
|
163
270
|
if (ctx.ptySession) {
|
|
164
271
|
await this.ptyManager.closeSession(taskId);
|
|
165
272
|
ctx.ptySession = null;
|
|
166
273
|
}
|
|
167
|
-
//
|
|
168
|
-
if (ctx.
|
|
169
|
-
|
|
170
|
-
|
|
274
|
+
// Cleanup git token files from workspace
|
|
275
|
+
if (ctx.workspaceInfo?.path) {
|
|
276
|
+
try {
|
|
277
|
+
(0, git_token_helper_js_1.cleanupAskpassFiles)(ctx.workspaceInfo.path);
|
|
278
|
+
}
|
|
279
|
+
catch { /* ignore */ }
|
|
171
280
|
}
|
|
172
281
|
this.activeTasks.delete(taskId);
|
|
173
282
|
}
|
|
@@ -190,6 +299,17 @@ class TaskHandler {
|
|
|
190
299
|
async handleCleanupWorkspace(frame) {
|
|
191
300
|
const { taskId, workspacePath, msgId } = frame;
|
|
192
301
|
log.info({ taskId, workspacePath }, 'Cleaning up workspace');
|
|
302
|
+
// Validate workspacePath is safe: must be absolute and must resolve
|
|
303
|
+
// under the configured workspace root. path.resolve() canonicalizes
|
|
304
|
+
// '..' segments, so the startsWith check is sufficient for traversal prevention.
|
|
305
|
+
const workspaceRoot = path.resolve(this.config.workspaceRoot);
|
|
306
|
+
const resolved = path.resolve(workspacePath);
|
|
307
|
+
if (!path.isAbsolute(workspacePath) ||
|
|
308
|
+
(!resolved.startsWith(workspaceRoot + path.sep) && resolved !== workspaceRoot)) {
|
|
309
|
+
log.error({ taskId, workspacePath, workspaceRoot }, 'Workspace path traversal blocked');
|
|
310
|
+
this.onAck(msgId, { status: 'error', error: 'Invalid workspace path: must be under workspace root' });
|
|
311
|
+
return;
|
|
312
|
+
}
|
|
193
313
|
try {
|
|
194
314
|
await this.workspaceManager.cleanup(taskId, workspacePath);
|
|
195
315
|
this.onAck(msgId, { status: 'cleaned' });
|
|
@@ -206,21 +326,21 @@ class TaskHandler {
|
|
|
206
326
|
}
|
|
207
327
|
catch (rmErr) {
|
|
208
328
|
log.error({ taskId, workspacePath, err: rmErr }, 'Failed to cleanup workspace');
|
|
209
|
-
this.onAck(msgId, { status: 'error', error:
|
|
329
|
+
this.onAck(msgId, { status: 'error', error: (0, protocol_1.getErrorMessage)(rmErr) });
|
|
210
330
|
}
|
|
211
331
|
}
|
|
212
332
|
}
|
|
213
|
-
handleStageConfirmResponse(taskId,
|
|
333
|
+
handleStageConfirmResponse(taskId, stageName, approved) {
|
|
214
334
|
const ctx = this.activeTasks.get(taskId);
|
|
215
|
-
if (!ctx) {
|
|
216
|
-
log.warn({ taskId }, 'Stage confirm response for unknown task');
|
|
335
|
+
if (!ctx?.stageMonitor) {
|
|
336
|
+
log.warn({ taskId }, 'Stage confirm response for unknown task or missing monitor');
|
|
217
337
|
return;
|
|
218
338
|
}
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
339
|
+
const response = ctx.stageMonitor.handleConfirmResponse(stageName, approved);
|
|
340
|
+
if (response && ctx.ptySession) {
|
|
341
|
+
const pty = ctx.ptySession.pty;
|
|
342
|
+
(0, pty_stdin_writer_js_1.writePromptToStdin)({ write: (d) => pty.write(d) }, response);
|
|
222
343
|
}
|
|
223
|
-
ctx.pipelineRunner.confirmStage(taskId, stageIndex, result);
|
|
224
344
|
}
|
|
225
345
|
async handleResume(frame) {
|
|
226
346
|
const { taskId, msgId } = frame;
|
|
@@ -232,64 +352,164 @@ class TaskHandler {
|
|
|
232
352
|
}
|
|
233
353
|
log.info({ taskId }, 'Resuming task');
|
|
234
354
|
this.onAck(msgId, { status: 'resuming' });
|
|
235
|
-
// Resume the pipeline runner if it exists
|
|
236
|
-
if (ctx.pipelineRunner) {
|
|
237
|
-
ctx.pipelineRunner.resume();
|
|
238
|
-
}
|
|
239
355
|
this.onProgress(taskId, ctx.stage, 'running', 'Task resumed');
|
|
240
356
|
}
|
|
241
357
|
/**
|
|
242
|
-
* Run the pipeline
|
|
243
|
-
*
|
|
358
|
+
* Run the pipeline using PipelineCompiler + StageMonitor.
|
|
359
|
+
* Compiles a single prompt from the pipeline config, writes it to PTY stdin,
|
|
360
|
+
* and monitors output for [[OVERLORD:nonce:stage:ACTION]] markers.
|
|
244
361
|
*/
|
|
245
|
-
runPipeline(ctx, ptySession, taskDescription) {
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
362
|
+
async runPipeline(ctx, ptySession, taskDescription) {
|
|
363
|
+
const { taskId, configSnapshot, abortController } = ctx;
|
|
364
|
+
const compiler = new pipeline_compiler_js_1.PipelineCompiler();
|
|
365
|
+
const ptyWritable = { write: (d) => ptySession.pty.write(d) };
|
|
366
|
+
// 1. Parse pipeline config
|
|
367
|
+
let pipelineConfig = null;
|
|
368
|
+
if (configSnapshot.pipeline) {
|
|
369
|
+
try {
|
|
370
|
+
pipelineConfig = JSON.parse(configSnapshot.pipeline);
|
|
371
|
+
}
|
|
372
|
+
catch (parseErr) {
|
|
373
|
+
log.error({ taskId, err: parseErr }, 'Failed to parse pipeline JSON, falling back to default pipeline');
|
|
374
|
+
}
|
|
375
|
+
}
|
|
376
|
+
// 2. Build variables
|
|
377
|
+
const variables = {
|
|
378
|
+
DEFAULT_BRANCH: configSnapshot.defaultBranch,
|
|
379
|
+
TEST_COMMAND: configSnapshot.testCommand ?? '',
|
|
380
|
+
BRANCH: `feat/overlord-${taskId}`,
|
|
381
|
+
GIT_PLATFORM: configSnapshot.gitPlatform,
|
|
382
|
+
REVIEWERS: (configSnapshot.defaultReviewers ?? []).join(', '),
|
|
383
|
+
};
|
|
384
|
+
// 3. Compile prompt
|
|
385
|
+
const { prompt, nonce } = compiler.compile(pipelineConfig, taskDescription, variables);
|
|
386
|
+
// 4. Create StageMonitor
|
|
387
|
+
const effectivePipeline = pipelineConfig ?? pipeline_compiler_js_1.DEFAULT_PIPELINE;
|
|
388
|
+
const monitor = new stage_monitor_js_1.StageMonitor(effectivePipeline, nonce);
|
|
389
|
+
ctx.stageMonitor = monitor;
|
|
390
|
+
// 5. Wait for agent to be ready (detect prompt character)
|
|
391
|
+
await new Promise((resolve, reject) => {
|
|
392
|
+
const PROMPT_TIMEOUT_MS = 120_000;
|
|
393
|
+
// Check accumulated output first
|
|
394
|
+
if (ptySession.executor.detectPrompt(ptySession.cleanOutput)) {
|
|
395
|
+
resolve();
|
|
396
|
+
return;
|
|
397
|
+
}
|
|
398
|
+
let settled = false;
|
|
399
|
+
const cleanup = () => {
|
|
400
|
+
ptySession.removeDataListener(checkReady);
|
|
255
401
|
};
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
402
|
+
const timer = setTimeout(() => {
|
|
403
|
+
if (!settled) {
|
|
404
|
+
settled = true;
|
|
405
|
+
cleanup();
|
|
406
|
+
reject(new Error(`Agent prompt not detected within ${PROMPT_TIMEOUT_MS / 1000}s`));
|
|
407
|
+
}
|
|
408
|
+
}, PROMPT_TIMEOUT_MS);
|
|
409
|
+
const onAbort = () => {
|
|
410
|
+
if (!settled) {
|
|
411
|
+
settled = true;
|
|
412
|
+
clearTimeout(timer);
|
|
413
|
+
cleanup();
|
|
414
|
+
reject(new Error('Task cancelled while waiting for agent prompt'));
|
|
415
|
+
}
|
|
259
416
|
};
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
417
|
+
abortController.signal.addEventListener('abort', onAbort, { once: true });
|
|
418
|
+
ptySession.onExit((exitCode) => {
|
|
419
|
+
if (!settled) {
|
|
420
|
+
settled = true;
|
|
421
|
+
clearTimeout(timer);
|
|
422
|
+
abortController.signal.removeEventListener('abort', onAbort);
|
|
423
|
+
cleanup();
|
|
424
|
+
reject(new Error(`Agent exited with code ${exitCode} before prompt was detected`));
|
|
425
|
+
}
|
|
266
426
|
});
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
427
|
+
const checkReady = (data) => {
|
|
428
|
+
if (ptySession.executor.detectPrompt(data)) {
|
|
429
|
+
if (!settled) {
|
|
430
|
+
settled = true;
|
|
431
|
+
clearTimeout(timer);
|
|
432
|
+
abortController.signal.removeEventListener('abort', onAbort);
|
|
433
|
+
cleanup();
|
|
434
|
+
resolve();
|
|
435
|
+
}
|
|
436
|
+
}
|
|
437
|
+
};
|
|
438
|
+
ptySession.onData(checkReady);
|
|
439
|
+
});
|
|
440
|
+
await (0, pty_stdin_writer_js_1.writePromptToStdin)(ptyWritable, prompt);
|
|
441
|
+
// 7. Wire PTY output to StageMonitor and wait for completion
|
|
442
|
+
return new Promise((resolve, reject) => {
|
|
443
|
+
let settled = false;
|
|
444
|
+
const settle = (fn) => {
|
|
445
|
+
if (!settled) {
|
|
446
|
+
settled = true;
|
|
447
|
+
clearInterval(timeoutCheckTimer);
|
|
448
|
+
fn();
|
|
449
|
+
}
|
|
450
|
+
};
|
|
451
|
+
// Periodically check for stale pipeline / context reinjection
|
|
452
|
+
const TIMEOUT_CHECK_INTERVAL_MS = 30_000;
|
|
453
|
+
const processEvents = (events) => {
|
|
454
|
+
for (const event of events) {
|
|
455
|
+
switch (event.type) {
|
|
456
|
+
case 'stage_start':
|
|
457
|
+
ctx.stage = event.stage;
|
|
458
|
+
this.onProgress(taskId, event.stage, 'running', `Stage: ${event.stage}`);
|
|
459
|
+
break;
|
|
460
|
+
case 'stage_done':
|
|
461
|
+
this.onProgress(taskId, event.stage, 'stage_done', `Stage completed: ${event.stage}`);
|
|
462
|
+
break;
|
|
463
|
+
case 'stage_fail':
|
|
464
|
+
this.onProgress(taskId, event.stage, 'stage_failed', event.reason);
|
|
465
|
+
break;
|
|
466
|
+
case 'wait_confirm': {
|
|
467
|
+
this.onConfirmRequest(taskId, event.stage, 0);
|
|
468
|
+
break;
|
|
469
|
+
}
|
|
470
|
+
case 'pipeline_completed':
|
|
471
|
+
ctx.stage = 'completed';
|
|
472
|
+
this.onProgress(taskId, 'completed', 'completed', 'Task completed successfully');
|
|
473
|
+
settle(() => resolve());
|
|
474
|
+
break;
|
|
475
|
+
case 'pipeline_failed':
|
|
476
|
+
settle(() => reject(new Error(event.reason)));
|
|
477
|
+
break;
|
|
478
|
+
case 'max_loops_exceeded':
|
|
479
|
+
(0, pty_stdin_writer_js_1.writePromptToStdin)(ptyWritable, '\u5FAA\u73AF\u5DF2\u8FBE\u5230\u6700\u5927\u6B21\u6570\uFF0C\u8BF7\u505C\u6B62\u4FEE\u6539\u5E76\u62A5\u544A\u5F53\u524D\u72B6\u6001\u3002');
|
|
480
|
+
break;
|
|
481
|
+
case 'context_reinjection_needed': {
|
|
482
|
+
const resumePrompt = compiler.compileResume(effectivePipeline, monitor.getState(), nonce, 'context_reinjection');
|
|
483
|
+
(0, pty_stdin_writer_js_1.writePromptToStdin)(ptyWritable, resumePrompt);
|
|
484
|
+
break;
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
};
|
|
489
|
+
const timeoutCheckTimer = setInterval(() => {
|
|
490
|
+
const timeoutEvents = monitor.checkTimeouts();
|
|
491
|
+
processEvents(timeoutEvents);
|
|
492
|
+
}, TIMEOUT_CHECK_INTERVAL_MS);
|
|
493
|
+
if (timeoutCheckTimer.unref)
|
|
494
|
+
timeoutCheckTimer.unref();
|
|
495
|
+
ptySession.onData((data) => {
|
|
496
|
+
const events = monitor.processOutput(data);
|
|
497
|
+
processEvents(events);
|
|
271
498
|
});
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
499
|
+
ptySession.onExit((exitCode) => {
|
|
500
|
+
const status = monitor.handleProcessExit(exitCode);
|
|
501
|
+
if (status === 'completed') {
|
|
502
|
+
ctx.stage = 'completed';
|
|
503
|
+
this.onProgress(taskId, 'completed', 'completed', 'Task completed successfully');
|
|
504
|
+
settle(() => resolve());
|
|
275
505
|
}
|
|
276
506
|
else {
|
|
277
|
-
reject(new Error(
|
|
507
|
+
settle(() => reject(new Error(`Agent exited with code ${exitCode}, pipeline incomplete`)));
|
|
278
508
|
}
|
|
279
509
|
});
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
});
|
|
284
|
-
// Listen for abort
|
|
285
|
-
const onAbort = () => {
|
|
286
|
-
runner.destroy();
|
|
287
|
-
};
|
|
288
|
-
abortController.signal.addEventListener('abort', onAbort, { once: true });
|
|
289
|
-
// Start the pipeline
|
|
290
|
-
runner.start(configSnapshot.pipeline, taskDescription).catch((err) => {
|
|
291
|
-
reject(err);
|
|
292
|
-
});
|
|
510
|
+
abortController.signal.addEventListener('abort', () => {
|
|
511
|
+
settle(() => reject(new Error('Task cancelled')));
|
|
512
|
+
}, { once: true });
|
|
293
513
|
});
|
|
294
514
|
}
|
|
295
515
|
}
|
package/dist/task-handler.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"task-handler.js","sourceRoot":"","sources":["../src/task-handler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"task-handler.js","sourceRoot":"","sources":["../src/task-handler.ts"],"names":[],"mappings":"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"}
|
package/dist/tunnel-manager.d.ts
CHANGED
|
@@ -1,19 +1,24 @@
|
|
|
1
|
+
import { EventEmitter } from 'events';
|
|
1
2
|
/**
|
|
2
3
|
* Manages Cursor remote tunnel processes for active tasks.
|
|
3
4
|
*
|
|
4
|
-
*
|
|
5
|
-
* -
|
|
6
|
-
* -
|
|
7
|
-
* -
|
|
8
|
-
* - Allocate and track ports
|
|
5
|
+
* Emits events:
|
|
6
|
+
* - `tunnel_started(taskId, tunnelUrl)` — when tunnel URL is extracted from stdout
|
|
7
|
+
* - `tunnel_closed(taskId, reason)` — when tunnel is stopped or retries exhausted
|
|
8
|
+
* - `tunnel_crashed(taskId, error, willRetry)` — on unexpected process exit
|
|
9
9
|
*/
|
|
10
|
-
export declare class TunnelManager {
|
|
10
|
+
export declare class TunnelManager extends EventEmitter {
|
|
11
11
|
private tunnels;
|
|
12
|
+
private restartTimers;
|
|
12
13
|
/**
|
|
13
14
|
* Start a Cursor remote tunnel for the given task workspace.
|
|
14
15
|
* Returns the tunnel URL on success.
|
|
15
16
|
*/
|
|
16
17
|
start(taskId: number, workspacePath: string): Promise<string>;
|
|
18
|
+
/**
|
|
19
|
+
* Spawn a tunnel process. Used by both start() and crash-recovery restarts.
|
|
20
|
+
*/
|
|
21
|
+
private _spawnTunnel;
|
|
17
22
|
/**
|
|
18
23
|
* Stop the tunnel for the given task.
|
|
19
24
|
*/
|
|
@@ -30,5 +35,10 @@ export declare class TunnelManager {
|
|
|
30
35
|
* Get the tunnel URL for a task, or null if not available.
|
|
31
36
|
*/
|
|
32
37
|
getTunnelUrl(taskId: number): string | null;
|
|
38
|
+
private clearRestartTimer;
|
|
39
|
+
getActiveTunnels(): Array<{
|
|
40
|
+
taskId: number;
|
|
41
|
+
tunnelUrl: string;
|
|
42
|
+
}>;
|
|
33
43
|
}
|
|
34
44
|
//# sourceMappingURL=tunnel-manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tunnel-manager.d.ts","sourceRoot":"","sources":["../src/tunnel-manager.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tunnel-manager.d.ts","sourceRoot":"","sources":["../src/tunnel-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAgBtC;;;;;;;GAOG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,OAAO,CAAkC;IACjD,OAAO,CAAC,aAAa,CAAqC;IAE1D;;;OAGG;IACG,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAenE;;OAEG;IACH,OAAO,CAAC,YAAY;IAgJpB;;OAEG;IACG,IAAI,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8CzC;;OAEG;IACH,OAAO,IAAI,IAAI;IAqBf;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAIlC;;OAEG;IACH,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAI3C,OAAO,CAAC,iBAAiB;IAQzB,gBAAgB,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAKjE"}
|