@overlordai/worker 1.0.52 → 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
|
@@ -39,9 +39,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
39
39
|
exports.WorkspaceManager = void 0;
|
|
40
40
|
const node_child_process_1 = require("node:child_process");
|
|
41
41
|
const fs = __importStar(require("node:fs"));
|
|
42
|
+
const fsp = __importStar(require("node:fs/promises"));
|
|
42
43
|
const path = __importStar(require("node:path"));
|
|
44
|
+
const node_util_1 = require("node:util");
|
|
45
|
+
const execFile = (0, node_util_1.promisify)(node_child_process_1.execFile);
|
|
43
46
|
const pino_1 = __importDefault(require("pino"));
|
|
47
|
+
const executor_factory_js_1 = require("./executor/executor.factory.js");
|
|
44
48
|
const git_operations_js_1 = require("./git-operations.js");
|
|
49
|
+
const git_token_helper_js_1 = require("./git-token-helper.js");
|
|
45
50
|
const project_mutex_js_1 = require("./project-mutex.js");
|
|
46
51
|
const safe_env_js_1 = require("./safe-env.js");
|
|
47
52
|
const logger = (0, pino_1.default)({ name: 'workspace-manager' });
|
|
@@ -80,38 +85,59 @@ class WorkspaceManager {
|
|
|
80
85
|
if (!fs.existsSync(baseDir)) {
|
|
81
86
|
logger.info({ projectKey, baseDir }, 'Base repo missing — cloning bare');
|
|
82
87
|
fs.mkdirSync(projectDir, { recursive: true });
|
|
83
|
-
|
|
88
|
+
if (params.gitToken) {
|
|
89
|
+
const authedUrl = (0, git_token_helper_js_1.buildAuthedUrl)(configSnapshot.repoUrl, params.gitToken, configSnapshot.gitPlatform);
|
|
90
|
+
await this.git.cloneBare(authedUrl, baseDir);
|
|
91
|
+
}
|
|
92
|
+
else {
|
|
93
|
+
await this.git.cloneBare(configSnapshot.sshUrl ?? configSnapshot.repoUrl, baseDir);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
// 2b. Set remote URL for fetch (use authed URL if gitToken provided)
|
|
97
|
+
const cleanUrl = configSnapshot.sshUrl ?? configSnapshot.repoUrl;
|
|
98
|
+
if (params.gitToken) {
|
|
99
|
+
const authedUrl = (0, git_token_helper_js_1.buildAuthedUrl)(configSnapshot.repoUrl, params.gitToken, configSnapshot.gitPlatform);
|
|
100
|
+
await this.git.setRemoteUrl(baseDir, authedUrl);
|
|
84
101
|
}
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
102
|
+
else {
|
|
103
|
+
const currentUrl = await this.git.getRemoteUrl(baseDir);
|
|
104
|
+
if (currentUrl !== cleanUrl) {
|
|
105
|
+
await this.git.setRemoteUrl(baseDir, cleanUrl);
|
|
106
|
+
}
|
|
90
107
|
}
|
|
91
108
|
// 2c. Ensure fetch refspec is configured (bare clones created before v1.0.40 lack this)
|
|
92
|
-
this.git.ensureFetchRefspec(baseDir);
|
|
109
|
+
await this.git.ensureFetchRefspec(baseDir);
|
|
93
110
|
// 3. Fetch with throttle (prune stale entries to bound memory)
|
|
94
|
-
if (this.lastFetchTimes.size >
|
|
111
|
+
if (this.lastFetchTimes.size > 200) {
|
|
95
112
|
const oldest = [...this.lastFetchTimes.entries()]
|
|
96
113
|
.sort((a, b) => a[1] - b[1])
|
|
97
|
-
.slice(0,
|
|
114
|
+
.slice(0, this.lastFetchTimes.size - 100);
|
|
98
115
|
for (const [k] of oldest)
|
|
99
116
|
this.lastFetchTimes.delete(k);
|
|
100
117
|
}
|
|
101
118
|
const lastFetch = this.lastFetchTimes.get(projectKey) ?? 0;
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
119
|
+
try {
|
|
120
|
+
if (Date.now() - lastFetch >= FETCH_THROTTLE_MS) {
|
|
121
|
+
await this.git.fetch(baseDir);
|
|
122
|
+
this.lastFetchTimes.set(projectKey, Date.now());
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
logger.debug({ projectKey }, 'Skipping fetch — throttled');
|
|
126
|
+
}
|
|
105
127
|
}
|
|
106
|
-
|
|
107
|
-
|
|
128
|
+
finally {
|
|
129
|
+
// Always reset remote to clean URL after fetch (or on crash/error),
|
|
130
|
+
// to avoid persisting the git token in bare repo config
|
|
131
|
+
if (params.gitToken) {
|
|
132
|
+
await this.git.setRemoteUrl(baseDir, cleanUrl);
|
|
133
|
+
}
|
|
108
134
|
}
|
|
109
135
|
// 4. Clean up stale worktree/branch from previous failed attempt
|
|
110
136
|
const startPoint = `origin/${configSnapshot.defaultBranch}`;
|
|
111
137
|
if (fs.existsSync(worktreePath)) {
|
|
112
138
|
logger.info({ taskId, worktreePath }, 'Removing stale worktree directory');
|
|
113
139
|
try {
|
|
114
|
-
this.git.removeWorktree(baseDir, worktreePath);
|
|
140
|
+
await this.git.removeWorktree(baseDir, worktreePath);
|
|
115
141
|
}
|
|
116
142
|
catch {
|
|
117
143
|
// worktree remove may fail if state is corrupted
|
|
@@ -120,16 +146,16 @@ class WorkspaceManager {
|
|
|
120
146
|
fs.rmSync(worktreePath, { recursive: true, force: true });
|
|
121
147
|
}
|
|
122
148
|
}
|
|
123
|
-
this.git.deleteBranchIfExists(baseDir, branch);
|
|
124
|
-
this.git.addWorktree(baseDir, worktreePath, branch, startPoint);
|
|
149
|
+
await this.git.deleteBranchIfExists(baseDir, branch);
|
|
150
|
+
await this.git.addWorktree(baseDir, worktreePath, branch, startPoint);
|
|
125
151
|
}
|
|
126
152
|
finally {
|
|
127
153
|
// 5. Release mutex
|
|
128
154
|
release();
|
|
129
155
|
}
|
|
130
156
|
// 6. Configure git user in worktree
|
|
131
|
-
this.git.setLocalConfig(worktreePath, 'user.name', developer.gitName);
|
|
132
|
-
this.git.setLocalConfig(worktreePath, 'user.email', developer.gitEmail);
|
|
157
|
+
await this.git.setLocalConfig(worktreePath, 'user.name', developer.gitName);
|
|
158
|
+
await this.git.setLocalConfig(worktreePath, 'user.email', developer.gitEmail);
|
|
133
159
|
// 6b. Agent CLI config setup in the worktree.
|
|
134
160
|
// HOME is overridden to worktreePath for isolation, but agent CLIs
|
|
135
161
|
// (claude, cursor, etc.) check $HOME for config and onboarding state.
|
|
@@ -143,57 +169,46 @@ class WorkspaceManager {
|
|
|
143
169
|
// Symlink .config for XDG-based tools
|
|
144
170
|
const configSrc = path.join(realHome, '.config');
|
|
145
171
|
const configDst = path.join(worktreePath, '.config');
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
fs.symlinkSync(configSrc, configDst);
|
|
149
|
-
}
|
|
150
|
-
catch { /* non-fatal */ }
|
|
172
|
+
try {
|
|
173
|
+
fs.symlinkSync(configSrc, configDst);
|
|
151
174
|
}
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
// --dangerously-skip-permissions. Instead, symlink individual files that
|
|
156
|
-
// carry auth and onboarding state, but NOT settings.json.
|
|
157
|
-
const claudeDir = path.join(worktreePath, '.claude');
|
|
158
|
-
if (!fs.existsSync(claudeDir)) {
|
|
159
|
-
try {
|
|
160
|
-
fs.mkdirSync(claudeDir, { recursive: true });
|
|
161
|
-
// Symlink files that carry onboarding/auth state
|
|
162
|
-
const filesToLink = ['.claude.json', '.credentials.json'];
|
|
163
|
-
for (const file of filesToLink) {
|
|
164
|
-
const src = path.join(realHome, '.claude', file);
|
|
165
|
-
const dst = path.join(claudeDir, file);
|
|
166
|
-
if (fs.existsSync(src) && !fs.existsSync(dst)) {
|
|
167
|
-
try {
|
|
168
|
-
fs.symlinkSync(src, dst);
|
|
169
|
-
}
|
|
170
|
-
catch { /* non-fatal */ }
|
|
171
|
-
}
|
|
172
|
-
}
|
|
175
|
+
catch (err) {
|
|
176
|
+
if (err.code !== 'EEXIST' && err.code !== 'ENOENT') {
|
|
177
|
+
logger.warn({ worktreePath, err }, '.config symlink failed (non-fatal)');
|
|
173
178
|
}
|
|
174
|
-
catch { /* non-fatal */ }
|
|
175
179
|
}
|
|
180
|
+
// Agent-specific environment setup (delegated to executor)
|
|
181
|
+
const executor = executor_factory_js_1.ExecutorFactory.create(configSnapshot.agentType);
|
|
182
|
+
executor.prepareEnvironment(worktreePath, realHome);
|
|
183
|
+
const agentEnvVars = executor.buildEnvVars(realHome);
|
|
176
184
|
// 7. Run setup commands (JSON array, sequential)
|
|
177
185
|
if (configSnapshot.setupCommands) {
|
|
178
|
-
const
|
|
179
|
-
|
|
186
|
+
const parsed = JSON.parse(configSnapshot.setupCommands);
|
|
187
|
+
if (!Array.isArray(parsed)) {
|
|
188
|
+
throw new Error(`setupCommands must be a JSON array, got ${typeof parsed}`);
|
|
189
|
+
}
|
|
190
|
+
for (const cmd of parsed) {
|
|
191
|
+
// Reject commands with null bytes
|
|
192
|
+
if (/\0/.test(cmd)) {
|
|
193
|
+
throw new Error(`Setup command contains null bytes: ${cmd.slice(0, 50)}`);
|
|
194
|
+
}
|
|
180
195
|
logger.info({ taskId, cmd }, 'Running setup command');
|
|
181
196
|
try {
|
|
182
|
-
|
|
197
|
+
await execFile('sh', ['-c', cmd], {
|
|
183
198
|
cwd: worktreePath,
|
|
184
199
|
timeout: 120_000,
|
|
185
|
-
stdio: 'pipe',
|
|
186
200
|
env: (0, safe_env_js_1.buildSafeEnv)(),
|
|
187
201
|
});
|
|
188
202
|
}
|
|
189
203
|
catch (err) {
|
|
190
|
-
|
|
191
|
-
|
|
204
|
+
const stderr = err.stderr ? err.stderr.toString().slice(0, 1000) : '';
|
|
205
|
+
logger.error({ taskId, cmd, stderr, err }, 'Setup command failed');
|
|
206
|
+
throw new Error(`Setup command failed: ${cmd} — ${stderr || err.message}`);
|
|
192
207
|
}
|
|
193
208
|
}
|
|
194
209
|
}
|
|
195
210
|
// 8–9. Build PTY env and return
|
|
196
|
-
const env = buildPtyEnv(worktreePath, taskId, configSnapshot, developer, this.config.sshKeyPath);
|
|
211
|
+
const env = buildPtyEnv(worktreePath, taskId, configSnapshot, developer, this.config.sshKeyPath, agentEnvVars, params.gitToken);
|
|
197
212
|
return { path: worktreePath, branch, env };
|
|
198
213
|
}
|
|
199
214
|
/**
|
|
@@ -210,7 +225,7 @@ class WorkspaceManager {
|
|
|
210
225
|
try {
|
|
211
226
|
// Try git worktree remove first
|
|
212
227
|
try {
|
|
213
|
-
this.git.removeWorktree(baseDir, workspacePath);
|
|
228
|
+
await this.git.removeWorktree(baseDir, workspacePath);
|
|
214
229
|
}
|
|
215
230
|
catch (err) {
|
|
216
231
|
logger.warn({ taskId, workspacePath, err }, 'git worktree remove failed — will force-remove directory');
|
|
@@ -220,7 +235,7 @@ class WorkspaceManager {
|
|
|
220
235
|
fs.rmSync(workspacePath, { recursive: true, force: true });
|
|
221
236
|
}
|
|
222
237
|
// Prune stale worktree refs
|
|
223
|
-
this.git.pruneWorktrees(baseDir);
|
|
238
|
+
await this.git.pruneWorktrees(baseDir);
|
|
224
239
|
}
|
|
225
240
|
finally {
|
|
226
241
|
release();
|
|
@@ -232,31 +247,34 @@ class WorkspaceManager {
|
|
|
232
247
|
*/
|
|
233
248
|
async cleanupExpired(activeTaskIds = new Set()) {
|
|
234
249
|
const root = this.config.workspaceRoot;
|
|
235
|
-
|
|
250
|
+
try {
|
|
251
|
+
await fsp.access(root);
|
|
252
|
+
}
|
|
253
|
+
catch {
|
|
236
254
|
return;
|
|
237
255
|
}
|
|
238
|
-
const projectDirs =
|
|
256
|
+
const projectDirs = (await fsp.readdir(root, { withFileTypes: true }))
|
|
239
257
|
.filter((d) => d.isDirectory());
|
|
240
258
|
for (const projectDirent of projectDirs) {
|
|
241
259
|
const projectDir = path.join(root, projectDirent.name);
|
|
242
260
|
const baseDir = path.join(projectDir, '_base');
|
|
243
|
-
|
|
261
|
+
try {
|
|
262
|
+
await fsp.access(baseDir);
|
|
263
|
+
}
|
|
264
|
+
catch {
|
|
244
265
|
continue;
|
|
245
266
|
}
|
|
246
|
-
const entries =
|
|
267
|
+
const entries = (await fsp.readdir(projectDir, { withFileTypes: true }))
|
|
247
268
|
.filter((d) => d.isDirectory() && d.name.startsWith('task-'));
|
|
248
269
|
for (const entry of entries) {
|
|
249
270
|
const worktreePath = path.join(projectDir, entry.name);
|
|
271
|
+
const taskId = Number(entry.name.match(/^task-(\d+)$/)?.[1] ?? 0);
|
|
272
|
+
if (taskId > 0 && activeTaskIds.has(taskId)) {
|
|
273
|
+
logger.debug({ worktreePath, taskId }, 'Skipping cleanup — task is still active');
|
|
274
|
+
continue;
|
|
275
|
+
}
|
|
250
276
|
try {
|
|
251
|
-
|
|
252
|
-
const taskIdMatch = entry.name.match(/^task-(\d+)$/);
|
|
253
|
-
const taskId = taskIdMatch ? Number(taskIdMatch[1]) : 0;
|
|
254
|
-
// Skip directories whose task is still active
|
|
255
|
-
if (taskId > 0 && activeTaskIds.has(taskId)) {
|
|
256
|
-
logger.debug({ worktreePath, taskId }, 'Skipping cleanup — task is still active');
|
|
257
|
-
continue;
|
|
258
|
-
}
|
|
259
|
-
const stat = fs.statSync(worktreePath);
|
|
277
|
+
const stat = await fsp.stat(worktreePath);
|
|
260
278
|
const ageMs = Date.now() - stat.mtimeMs;
|
|
261
279
|
if (ageMs > WORKTREE_MAX_AGE_MS) {
|
|
262
280
|
logger.info({ worktreePath, ageMs }, 'Removing expired worktree');
|
|
@@ -279,7 +297,7 @@ class WorkspaceManager {
|
|
|
279
297
|
}
|
|
280
298
|
exports.WorkspaceManager = WorkspaceManager;
|
|
281
299
|
// ─── PTY Environment Builder ─────────────────────────────────
|
|
282
|
-
function buildPtyEnv(workspacePath, taskId, config, developer, sshKeyPath) {
|
|
300
|
+
function buildPtyEnv(workspacePath, taskId, config, developer, sshKeyPath, agentEnvVars = {}, gitToken) {
|
|
283
301
|
const realHome = process.env.HOME ?? '/root';
|
|
284
302
|
const env = {
|
|
285
303
|
HOME: workspacePath,
|
|
@@ -294,8 +312,8 @@ function buildPtyEnv(workspacePath, taskId, config, developer, sshKeyPath) {
|
|
|
294
312
|
// HOME is overridden to the worktree path for isolation, but agent CLIs
|
|
295
313
|
// need access to auth credentials stored under the real user's home.
|
|
296
314
|
OVERLORD_REAL_HOME: realHome,
|
|
297
|
-
CLAUDE_CONFIG_DIR: process.env.CLAUDE_CONFIG_DIR ?? `${realHome}/.claude`,
|
|
298
315
|
XDG_CONFIG_HOME: process.env.XDG_CONFIG_HOME ?? `${realHome}/.config`,
|
|
316
|
+
...agentEnvVars,
|
|
299
317
|
};
|
|
300
318
|
if (sshKeyPath) {
|
|
301
319
|
// Shell-safe single-quote escaping: replace ' with '\'' (end quote, escaped quote, start quote)
|
|
@@ -307,25 +325,19 @@ function buildPtyEnv(workspacePath, taskId, config, developer, sshKeyPath) {
|
|
|
307
325
|
// This prevents injection via dangerous vars like BASH_ENV, LD_AUDIT,
|
|
308
326
|
// PYTHONSTARTUP, RUBYOPT, NODE_EXTRA_CA_CERTS, etc.
|
|
309
327
|
const SAFE_KEY_PATTERN = /^[A-Z][A-Z0-9_]*$/;
|
|
310
|
-
const RESERVED_PREFIXES = ['LD_', 'DYLD_', 'BASH_', 'GIT_', 'OVERLORD_', 'NODE_', 'PYTHON', '
|
|
328
|
+
const RESERVED_PREFIXES = ['LD_', 'DYLD_', 'BASH_', 'GIT_', 'OVERLORD_', 'NODE_', 'PYTHON', 'JAVA_', 'JVM_', 'CLASSPATH', 'PERL', 'RUBY', 'AWS_', 'AZURE_', 'GCP_', 'GOOGLE_', 'XDG_'];
|
|
311
329
|
const RESERVED_EXACT = new Set([
|
|
312
330
|
'PATH', 'HOME', 'SHELL', 'USER', 'LOGNAME', 'TERM', 'COLORTERM',
|
|
313
331
|
'ENV', 'IFS', 'CDPATH', 'GLOBIGNORE', 'SHELLOPTS', 'BASHOPTS',
|
|
314
332
|
'PROMPT_COMMAND', 'MAIL', 'MAILPATH', 'MAILCHECK',
|
|
315
333
|
'HOSTALIASES', 'LOCALDOMAIN', 'RES_OPTIONS',
|
|
316
334
|
'LD_PRELOAD', 'LD_LIBRARY_PATH', 'LD_AUDIT',
|
|
335
|
+
'EDITOR', 'VISUAL', 'PAGER', 'FCEDIT',
|
|
336
|
+
'PYTHONPATH', 'PERLLIB', 'PERL5LIB', 'RUBYLIB', 'JAVA_TOOL_OPTIONS', '_JAVA_OPTIONS', 'CLASSPATH', 'GOPATH', 'GOROOT',
|
|
317
337
|
]);
|
|
318
|
-
const isAllowed = (key) =>
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
if (RESERVED_EXACT.has(key))
|
|
322
|
-
return false;
|
|
323
|
-
for (const prefix of RESERVED_PREFIXES) {
|
|
324
|
-
if (key.startsWith(prefix))
|
|
325
|
-
return false;
|
|
326
|
-
}
|
|
327
|
-
return true;
|
|
328
|
-
};
|
|
338
|
+
const isAllowed = (key) => SAFE_KEY_PATTERN.test(key) &&
|
|
339
|
+
!RESERVED_EXACT.has(key) &&
|
|
340
|
+
!RESERVED_PREFIXES.some((prefix) => key.startsWith(prefix));
|
|
329
341
|
try {
|
|
330
342
|
const parsed = JSON.parse(config.agentEnv);
|
|
331
343
|
for (const [key, value] of Object.entries(parsed)) {
|
|
@@ -341,6 +353,14 @@ function buildPtyEnv(workspacePath, taskId, config, developer, sshKeyPath) {
|
|
|
341
353
|
logger.warn({ taskId, err }, 'Failed to parse agentEnv JSON, using empty object');
|
|
342
354
|
}
|
|
343
355
|
}
|
|
356
|
+
// Git token: write askpass helper for GIT_ASKPASS-based authentication.
|
|
357
|
+
// Do NOT set GITHUB_TOKEN or GITLAB_TOKEN — those would expose the token
|
|
358
|
+
// to agent processes via environment. GIT_ASKPASS is sufficient for all
|
|
359
|
+
// git operations and limits token exposure to the askpass helper script.
|
|
360
|
+
if (gitToken) {
|
|
361
|
+
const { askpassPath } = (0, git_token_helper_js_1.writeAskpassFiles)(workspacePath, gitToken);
|
|
362
|
+
env.GIT_ASKPASS = askpassPath;
|
|
363
|
+
}
|
|
344
364
|
return env;
|
|
345
365
|
}
|
|
346
366
|
//# sourceMappingURL=workspace-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-manager.js","sourceRoot":"","sources":["../src/workspace-manager.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-manager.js","sourceRoot":"","sources":["../src/workspace-manager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@overlordai/worker",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.54",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"files": [
|
|
6
6
|
"dist"
|
|
@@ -12,10 +12,11 @@
|
|
|
12
12
|
"build": "tsc && node -e \"const f='dist/main.js',c=require('fs').readFileSync(f,'utf8');if(!c.startsWith('#!'))require('fs').writeFileSync(f,'#!/usr/bin/env node\\n'+c)\"",
|
|
13
13
|
"start": "node dist/main.js",
|
|
14
14
|
"test": "vitest run",
|
|
15
|
+
"test:coverage": "vitest run --coverage",
|
|
15
16
|
"lint": "tsc --noEmit"
|
|
16
17
|
},
|
|
17
18
|
"dependencies": {
|
|
18
|
-
"@overlordai/protocol": "1.0.
|
|
19
|
+
"@overlordai/protocol": "1.0.54",
|
|
19
20
|
"async-mutex": "^0.5.0",
|
|
20
21
|
"node-pty": "^1.0.0",
|
|
21
22
|
"pino": "^9.0.0",
|
|
@@ -24,6 +25,7 @@
|
|
|
24
25
|
"devDependencies": {
|
|
25
26
|
"@types/node": "^22.0.0",
|
|
26
27
|
"@types/ws": "^8.5.0",
|
|
28
|
+
"@vitest/coverage-v8": "^4.0.18",
|
|
27
29
|
"typescript": "^5.9.0",
|
|
28
30
|
"vitest": "^4.0.18"
|
|
29
31
|
}
|