pm-orchestrator-runner 1.0.6 → 1.0.8
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 +20 -10
- package/dist/cli/index.js +36 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/config/index.d.ts +9 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +19 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/namespace.d.ts +86 -0
- package/dist/config/namespace.d.ts.map +1 -0
- package/dist/config/namespace.js +150 -0
- package/dist/config/namespace.js.map +1 -0
- package/dist/core/runner-core.d.ts +19 -0
- package/dist/core/runner-core.d.ts.map +1 -1
- package/dist/core/runner-core.js +67 -4
- package/dist/core/runner-core.js.map +1 -1
- package/dist/executor/claude-code-executor.d.ts +28 -0
- package/dist/executor/claude-code-executor.d.ts.map +1 -1
- package/dist/executor/claude-code-executor.js +184 -1
- package/dist/executor/claude-code-executor.js.map +1 -1
- package/dist/executor/deterministic-executor.d.ts +2 -1
- package/dist/executor/deterministic-executor.d.ts.map +1 -1
- package/dist/executor/deterministic-executor.js +7 -0
- package/dist/executor/deterministic-executor.js.map +1 -1
- package/dist/executor/recovery-executor.d.ts +2 -1
- package/dist/executor/recovery-executor.d.ts.map +1 -1
- package/dist/executor/recovery-executor.js +7 -0
- package/dist/executor/recovery-executor.js.map +1 -1
- package/dist/logging/task-log-manager.d.ts +17 -2
- package/dist/logging/task-log-manager.d.ts.map +1 -1
- package/dist/logging/task-log-manager.js +153 -63
- package/dist/logging/task-log-manager.js.map +1 -1
- package/dist/models/enums.d.ts +54 -0
- package/dist/models/enums.d.ts.map +1 -1
- package/dist/models/enums.js +59 -1
- package/dist/models/enums.js.map +1 -1
- package/dist/models/index.d.ts +4 -1
- package/dist/models/index.d.ts.map +1 -1
- package/dist/models/index.js +50 -2
- package/dist/models/index.js.map +1 -1
- package/dist/models/repl/task-log.d.ts +9 -0
- package/dist/models/repl/task-log.d.ts.map +1 -1
- package/dist/models/repl/task-log.js.map +1 -1
- package/dist/models/run.d.ts +82 -0
- package/dist/models/run.d.ts.map +1 -0
- package/dist/models/run.js +161 -0
- package/dist/models/run.js.map +1 -0
- package/dist/models/task-group.d.ts +164 -0
- package/dist/models/task-group.d.ts.map +1 -0
- package/dist/models/task-group.js +246 -0
- package/dist/models/task-group.js.map +1 -0
- package/dist/models/task.d.ts +7 -0
- package/dist/models/task.d.ts.map +1 -1
- package/dist/models/task.js.map +1 -1
- package/dist/models/thread.d.ts +53 -0
- package/dist/models/thread.d.ts.map +1 -0
- package/dist/models/thread.js +92 -0
- package/dist/models/thread.js.map +1 -0
- package/dist/pool/agent-pool.d.ts.map +1 -1
- package/dist/pool/agent-pool.js +2 -3
- package/dist/pool/agent-pool.js.map +1 -1
- package/dist/prompt/index.d.ts +8 -0
- package/dist/prompt/index.d.ts.map +1 -0
- package/dist/prompt/index.js +13 -0
- package/dist/prompt/index.js.map +1 -0
- package/dist/prompt/prompt-assembler.d.ts +145 -0
- package/dist/prompt/prompt-assembler.d.ts.map +1 -0
- package/dist/prompt/prompt-assembler.js +242 -0
- package/dist/prompt/prompt-assembler.js.map +1 -0
- package/dist/queue/index.d.ts +41 -0
- package/dist/queue/index.d.ts.map +1 -0
- package/dist/queue/index.js +42 -0
- package/dist/queue/index.js.map +1 -0
- package/dist/queue/queue-poller.d.ts +107 -0
- package/dist/queue/queue-poller.d.ts.map +1 -0
- package/dist/queue/queue-poller.js +181 -0
- package/dist/queue/queue-poller.js.map +1 -0
- package/dist/queue/queue-store.d.ts +163 -0
- package/dist/queue/queue-store.d.ts.map +1 -0
- package/dist/queue/queue-store.js +421 -0
- package/dist/queue/queue-store.js.map +1 -0
- package/dist/repl/commands/logs.d.ts +3 -1
- package/dist/repl/commands/logs.d.ts.map +1 -1
- package/dist/repl/commands/logs.js +23 -3
- package/dist/repl/commands/logs.js.map +1 -1
- package/dist/repl/index.d.ts +1 -0
- package/dist/repl/index.d.ts.map +1 -1
- package/dist/repl/index.js +3 -1
- package/dist/repl/index.js.map +1 -1
- package/dist/repl/repl-interface.d.ts +94 -6
- package/dist/repl/repl-interface.d.ts.map +1 -1
- package/dist/repl/repl-interface.js +350 -54
- package/dist/repl/repl-interface.js.map +1 -1
- package/dist/repl/two-pane-renderer.d.ts +148 -0
- package/dist/repl/two-pane-renderer.d.ts.map +1 -0
- package/dist/repl/two-pane-renderer.js +239 -0
- package/dist/repl/two-pane-renderer.js.map +1 -0
- package/dist/web/index.d.ts +45 -0
- package/dist/web/index.d.ts.map +1 -0
- package/dist/web/index.js +47 -0
- package/dist/web/index.js.map +1 -0
- package/dist/web/server.d.ts +71 -0
- package/dist/web/server.d.ts.map +1 -0
- package/dist/web/server.js +329 -0
- package/dist/web/server.js.map +1 -0
- package/package.json +12 -3
package/dist/core/runner-core.js
CHANGED
|
@@ -66,6 +66,7 @@ const error_codes_1 = require("../errors/error-codes");
|
|
|
66
66
|
const claude_code_executor_1 = require("../executor/claude-code-executor");
|
|
67
67
|
const deterministic_executor_1 = require("../executor/deterministic-executor");
|
|
68
68
|
const recovery_executor_1 = require("../executor/recovery-executor");
|
|
69
|
+
const prompt_assembler_1 = require("../prompt/prompt-assembler");
|
|
69
70
|
/**
|
|
70
71
|
* Runner Core Error
|
|
71
72
|
*/
|
|
@@ -118,6 +119,11 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
118
119
|
initialized = false;
|
|
119
120
|
// Claude Code Executor for natural language task execution
|
|
120
121
|
claudeCodeExecutor = null;
|
|
122
|
+
// Executor visibility tracking (per redesign)
|
|
123
|
+
currentExecutorMode = 'none';
|
|
124
|
+
lastExecutorOutput = '';
|
|
125
|
+
lastFilesModified = [];
|
|
126
|
+
lastExecutionDurationMs = 0;
|
|
121
127
|
// TaskLogManager for Property 26/27: TaskLog Lifecycle Recording
|
|
122
128
|
// Per spec 06_CORRECTNESS_PROPERTIES.md Property 26: Fail-Closed Logging
|
|
123
129
|
taskLogManager = null;
|
|
@@ -126,6 +132,12 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
126
132
|
// Model selection from REPL (per spec 10_REPL_UX.md L117-118)
|
|
127
133
|
// This is set from ExecutionConfig.selectedModel and passed to executor
|
|
128
134
|
currentSelectedModel = undefined;
|
|
135
|
+
// Prompt Assembler for spec/17_PROMPT_TEMPLATE.md
|
|
136
|
+
// Assembles prompts in fixed order: global prelude → project prelude → task group prelude → user input → output epilogue
|
|
137
|
+
promptAssembler = null;
|
|
138
|
+
// Current task group context for prompt assembly
|
|
139
|
+
// Per spec/16_TASK_GROUP.md: context persists within task group
|
|
140
|
+
currentTaskGroupContext = null;
|
|
129
141
|
/**
|
|
130
142
|
* Create a new RunnerCore
|
|
131
143
|
*/
|
|
@@ -195,27 +207,38 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
195
207
|
});
|
|
196
208
|
// Initialize Claude Code Executor if enabled
|
|
197
209
|
if (this.options.useClaudeCode) {
|
|
210
|
+
// SAFETY: Reject recovery-stub in production (fail-closed with exit 1)
|
|
211
|
+
(0, recovery_executor_1.assertRecoveryModeAllowed)();
|
|
198
212
|
// Use injected executor if provided (for testing), otherwise create real executor
|
|
199
213
|
if (this.options.executor) {
|
|
200
214
|
this.claudeCodeExecutor = this.options.executor;
|
|
215
|
+
this.currentExecutorMode = 'stub'; // Injected = test stub
|
|
201
216
|
}
|
|
202
217
|
else if ((0, recovery_executor_1.isRecoveryMode)()) {
|
|
203
218
|
// PM_EXECUTOR_MODE=recovery-stub: Use recovery executor for E2E recovery testing
|
|
204
219
|
// Simulates TIMEOUT/BLOCKED/FAIL_CLOSED scenarios
|
|
205
220
|
this.claudeCodeExecutor = new recovery_executor_1.RecoveryExecutor();
|
|
221
|
+
this.currentExecutorMode = 'recovery-stub';
|
|
206
222
|
}
|
|
207
223
|
else if ((0, deterministic_executor_1.isDeterministicMode)()) {
|
|
208
224
|
// CLI_TEST_MODE=1: Use deterministic executor for testing
|
|
209
225
|
// Per spec 06_CORRECTNESS_PROPERTIES.md Property 37: Deterministic testing
|
|
210
226
|
this.claudeCodeExecutor = new deterministic_executor_1.DeterministicExecutor();
|
|
227
|
+
this.currentExecutorMode = 'deterministic';
|
|
211
228
|
}
|
|
212
229
|
else {
|
|
213
230
|
this.claudeCodeExecutor = new claude_code_executor_1.ClaudeCodeExecutor({
|
|
214
231
|
projectPath: targetProject,
|
|
215
232
|
timeout: this.options.claudeCodeTimeout || 120000, // 2 minutes default
|
|
216
233
|
});
|
|
234
|
+
this.currentExecutorMode = 'claude-code';
|
|
217
235
|
}
|
|
218
236
|
}
|
|
237
|
+
// Initialize PromptAssembler for spec/17_PROMPT_TEMPLATE.md
|
|
238
|
+
// Prompt assembly in fixed order, no caching
|
|
239
|
+
this.promptAssembler = new prompt_assembler_1.PromptAssembler({
|
|
240
|
+
projectPath: targetProject,
|
|
241
|
+
});
|
|
219
242
|
// Initialize TaskLogManager for Property 26/27: TaskLog Lifecycle Recording
|
|
220
243
|
// Per spec 06_CORRECTNESS_PROPERTIES.md Property 26: Fail-Closed Logging
|
|
221
244
|
this.taskLogManager = new task_log_manager_1.TaskLogManager(targetProject);
|
|
@@ -292,6 +315,10 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
292
315
|
// Check if any task needs clarification
|
|
293
316
|
const clarificationTask = this.taskResults.find(r => r.clarification_needed);
|
|
294
317
|
const hasClarification = !!clarificationTask;
|
|
318
|
+
// Create summary of executor output (first 200 chars for visibility)
|
|
319
|
+
const outputSummary = this.lastExecutorOutput.length > 200
|
|
320
|
+
? this.lastExecutorOutput.substring(0, 200) + '...'
|
|
321
|
+
: this.lastExecutorOutput;
|
|
295
322
|
return {
|
|
296
323
|
session_id: this.session.session_id,
|
|
297
324
|
overall_status: this.overallStatus,
|
|
@@ -308,6 +335,11 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
308
335
|
original_prompt: hasClarification ? clarificationTask.original_prompt : undefined,
|
|
309
336
|
error: this.errorEvidence.length > 0 ? this.errorEvidence[0].error : undefined,
|
|
310
337
|
incomplete_task_reasons: this.incompleteReasons.length > 0 ? this.incompleteReasons : undefined,
|
|
338
|
+
// Visibility fields (per redesign)
|
|
339
|
+
executor_mode: this.currentExecutorMode,
|
|
340
|
+
executor_output_summary: outputSummary || undefined,
|
|
341
|
+
files_modified: this.lastFilesModified.length > 0 ? this.lastFilesModified : undefined,
|
|
342
|
+
duration_ms: this.lastExecutionDurationMs > 0 ? this.lastExecutionDurationMs : undefined,
|
|
311
343
|
};
|
|
312
344
|
}
|
|
313
345
|
catch (error) {
|
|
@@ -319,6 +351,8 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
319
351
|
tasks_total: config.tasks.length,
|
|
320
352
|
next_action: false,
|
|
321
353
|
error: error,
|
|
354
|
+
// Include executor mode even on error (per redesign)
|
|
355
|
+
executor_mode: this.currentExecutorMode,
|
|
322
356
|
};
|
|
323
357
|
}
|
|
324
358
|
}
|
|
@@ -381,9 +415,12 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
381
415
|
started_at: startedAt,
|
|
382
416
|
};
|
|
383
417
|
// Property 26: Create TaskLog at task start (Fail-Closed - all terminal states)
|
|
418
|
+
// Pass external task ID from REPL to ensure ID consistency between UI and logs
|
|
384
419
|
let taskLog = null;
|
|
385
420
|
if (this.taskLogManager && this.session && this.taskLogThread && this.taskLogRun) {
|
|
386
|
-
taskLog = await this.taskLogManager.createTaskWithContext(this.session.session_id, this.taskLogThread.thread_id, this.taskLogRun.run_id
|
|
421
|
+
taskLog = await this.taskLogManager.createTaskWithContext(this.session.session_id, this.taskLogThread.thread_id, this.taskLogRun.run_id, undefined, // parentTaskId
|
|
422
|
+
task.id // externalTaskId - use REPL-provided task ID
|
|
423
|
+
);
|
|
387
424
|
// Add TASK_STARTED event
|
|
388
425
|
await this.taskLogManager.addEventWithSession(taskLog.task_id, this.session.session_id, 'TASK_STARTED', { action: task.description || task.naturalLanguageTask || task.id });
|
|
389
426
|
}
|
|
@@ -437,14 +474,32 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
437
474
|
// Use Claude Code CLI if available
|
|
438
475
|
if (this.claudeCodeExecutor && this.session?.target_project) {
|
|
439
476
|
executionLog.push(`[${new Date().toISOString()}] Executing via Claude Code CLI...`);
|
|
477
|
+
// Per spec/17_PROMPT_TEMPLATE.md: Assemble prompt in fixed order
|
|
478
|
+
// Order: global prelude → project prelude → task group prelude → user input → output epilogue
|
|
479
|
+
let assembledPrompt = task.naturalLanguageTask;
|
|
480
|
+
if (this.promptAssembler && task.naturalLanguageTask) {
|
|
481
|
+
try {
|
|
482
|
+
const assemblyResult = this.promptAssembler.assemble(task.naturalLanguageTask, this.currentTaskGroupContext || undefined);
|
|
483
|
+
assembledPrompt = assemblyResult.prompt;
|
|
484
|
+
executionLog.push(`[${new Date().toISOString()}] Prompt assembled (5 sections)`);
|
|
485
|
+
}
|
|
486
|
+
catch (assemblyError) {
|
|
487
|
+
// Fail-closed: if assembly fails, use original prompt but log warning
|
|
488
|
+
executionLog.push(`[${new Date().toISOString()}] WARNING: Prompt assembly failed, using raw input`);
|
|
489
|
+
}
|
|
490
|
+
}
|
|
440
491
|
// Per spec 10_REPL_UX.md L117-118: Pass model to executor
|
|
441
492
|
// Model selection is REPL-local; executor passes it to Claude Code CLI
|
|
442
493
|
const executorResult = await this.claudeCodeExecutor.execute({
|
|
443
494
|
id: task.id,
|
|
444
|
-
prompt:
|
|
495
|
+
prompt: assembledPrompt,
|
|
445
496
|
workingDir: this.session.target_project,
|
|
446
497
|
selectedModel: this.currentSelectedModel,
|
|
447
498
|
});
|
|
499
|
+
// Save executor output for visibility (per redesign)
|
|
500
|
+
this.lastExecutorOutput = executorResult.output || '';
|
|
501
|
+
this.lastFilesModified = executorResult.files_modified || [];
|
|
502
|
+
this.lastExecutionDurationMs = executorResult.duration_ms || 0;
|
|
448
503
|
executionLog.push(`[${new Date().toISOString()}] Claude Code execution completed`);
|
|
449
504
|
executionLog.push(`[${new Date().toISOString()}] Executed: ${executorResult.executed}`);
|
|
450
505
|
executionLog.push(`[${new Date().toISOString()}] Duration: ${executorResult.duration_ms}ms`);
|
|
@@ -618,15 +673,23 @@ class RunnerCore extends events_1.EventEmitter {
|
|
|
618
673
|
logStatus = 'INCOMPLETE';
|
|
619
674
|
break;
|
|
620
675
|
}
|
|
676
|
+
// Per redesign: Create response summary (truncate to 200 chars)
|
|
677
|
+
const responseSummary = this.lastExecutorOutput.length > 200
|
|
678
|
+
? this.lastExecutorOutput.substring(0, 200) + '...'
|
|
679
|
+
: this.lastExecutorOutput;
|
|
621
680
|
await this.taskLogManager.completeTaskWithSession(taskLog.task_id, this.session.session_id, logStatus, filesCreated, undefined, // evidenceRef
|
|
622
681
|
result.error?.message,
|
|
623
682
|
// Per spec 10_REPL_UX.md Section 10: Pass executor blocking info (Property 34-36)
|
|
624
|
-
|
|
683
|
+
// Per redesign: Pass visibility fields (description, executorMode, responseSummary)
|
|
684
|
+
{
|
|
625
685
|
executorBlocked: executorBlockingInfo.executor_blocked,
|
|
626
686
|
blockedReason: executorBlockingInfo.blocked_reason,
|
|
627
687
|
timeoutMs: executorBlockingInfo.timeout_ms,
|
|
628
688
|
terminatedBy: executorBlockingInfo.terminated_by,
|
|
629
|
-
|
|
689
|
+
description: task.naturalLanguageTask || task.description,
|
|
690
|
+
executorMode: this.currentExecutorMode,
|
|
691
|
+
responseSummary: responseSummary || undefined,
|
|
692
|
+
});
|
|
630
693
|
}
|
|
631
694
|
this.taskResults.push(result);
|
|
632
695
|
// Emit task completion event
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-core.js","sourceRoot":"","sources":["../../src/core/runner-core.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner-core.js","sourceRoot":"","sources":["../../src/core/runner-core.ts"],"names":[],"mappings":"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"}
|
|
@@ -73,6 +73,15 @@ export interface ExecutorResult {
|
|
|
73
73
|
/** How the executor was terminated */
|
|
74
74
|
terminated_by?: TerminatedBy;
|
|
75
75
|
}
|
|
76
|
+
/**
|
|
77
|
+
* Auth check result
|
|
78
|
+
* Per spec/15_API_KEY_ENV_SANITIZE.md: Check login status at startup
|
|
79
|
+
*/
|
|
80
|
+
export interface AuthCheckResult {
|
|
81
|
+
available: boolean;
|
|
82
|
+
loggedIn: boolean;
|
|
83
|
+
error?: string;
|
|
84
|
+
}
|
|
76
85
|
/**
|
|
77
86
|
* Executor interface for dependency injection
|
|
78
87
|
*
|
|
@@ -81,7 +90,15 @@ export interface ExecutorResult {
|
|
|
81
90
|
export interface IExecutor {
|
|
82
91
|
execute(task: ExecutorTask): Promise<ExecutorResult>;
|
|
83
92
|
isClaudeCodeAvailable(): Promise<boolean>;
|
|
93
|
+
checkAuthStatus(): Promise<AuthCheckResult>;
|
|
84
94
|
}
|
|
95
|
+
/**
|
|
96
|
+
* Build sanitized environment from ALLOWLIST
|
|
97
|
+
* Per spec/15_API_KEY_ENV_SANITIZE.md: Never pass process.env directly.
|
|
98
|
+
*
|
|
99
|
+
* @returns Record containing only ALLOWLIST variables
|
|
100
|
+
*/
|
|
101
|
+
export declare function buildSanitizedEnv(): Record<string, string>;
|
|
85
102
|
/**
|
|
86
103
|
* Claude Code Executor class
|
|
87
104
|
*
|
|
@@ -107,6 +124,17 @@ export declare class ClaudeCodeExecutor implements IExecutor {
|
|
|
107
124
|
* @returns true if CLI is available, false otherwise
|
|
108
125
|
*/
|
|
109
126
|
isClaudeCodeAvailable(): Promise<boolean>;
|
|
127
|
+
/**
|
|
128
|
+
* Check Claude Code CLI auth status
|
|
129
|
+
* Per spec/15_API_KEY_ENV_SANITIZE.md: Runner must check login status at startup
|
|
130
|
+
*
|
|
131
|
+
* This method checks:
|
|
132
|
+
* 1. CLI exists (version check)
|
|
133
|
+
* 2. CLI is logged in (can run minimal prompt without auth error)
|
|
134
|
+
*
|
|
135
|
+
* @returns AuthCheckResult with availability and login status
|
|
136
|
+
*/
|
|
137
|
+
checkAuthStatus(): Promise<AuthCheckResult>;
|
|
110
138
|
/**
|
|
111
139
|
* Execute a task via Claude Code CLI
|
|
112
140
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"claude-code-executor.d.ts","sourceRoot":"","sources":["../../src/executor/claude-code-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;IACxE,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oDAAoD;IACpD,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,aAAa,CAAC,EAAE,YAAY,CAAC;CAC9B;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACrD,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"claude-code-executor.d.ts","sourceRoot":"","sources":["../../src/executor/claude-code-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,CAAC;IACnB,8EAA8E;IAC9E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,UAAU,GAAG,YAAY,GAAG,aAAa,GAAG,OAAO,GAAG,SAAS,CAAC;IACxE,mDAAmD;IACnD,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,cAAc,EAAE,YAAY,EAAE,CAAC;IAC/B,sEAAsE;IACtE,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,oDAAoD;IACpD,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,sCAAsC;IACtC,aAAa,CAAC,EAAE,YAAY,CAAC;CAC9B;AAED;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,OAAO,CAAC;IACnB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,SAAS;IACxB,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IACrD,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1C,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC,CAAC;CAC7C;AAoFD;;;;;GAKG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAQ1D;AAcD;;;;;;;;;;;;GAYG;AACH,qBAAa,kBAAmB,YAAW,SAAS;IAClD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;IACjC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;gBAE3B,MAAM,EAAE,cAAc;IAUlC;;;;OAIG;IACG,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;IA6B/C;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC;IA0IjD;;;;;;;;;;;;;;;OAeG;IACG,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;IAkb1D;;OAEG;YACW,SAAS;IAsCvB;;OAEG;IACH,OAAO,CAAC,mBAAmB;CAwB5B"}
|
|
@@ -49,6 +49,7 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
49
49
|
})();
|
|
50
50
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
51
51
|
exports.ClaudeCodeExecutor = void 0;
|
|
52
|
+
exports.buildSanitizedEnv = buildSanitizedEnv;
|
|
52
53
|
const child_process_1 = require("child_process");
|
|
53
54
|
const path = __importStar(require("path"));
|
|
54
55
|
const fs = __importStar(require("fs"));
|
|
@@ -106,6 +107,45 @@ const DEFAULT_OVERALL_TIMEOUT_MS = 300000; // 5 min total
|
|
|
106
107
|
* Grace period before force kill after SIGTERM
|
|
107
108
|
*/
|
|
108
109
|
const SIGTERM_GRACE_MS = 5000;
|
|
110
|
+
/**
|
|
111
|
+
* ALLOWLIST of environment variables to pass to child process
|
|
112
|
+
* Per spec/15_API_KEY_ENV_SANITIZE.md: Only these variables are permitted.
|
|
113
|
+
* This ensures API keys (OPENAI_API_KEY, ANTHROPIC_API_KEY, etc.) are never
|
|
114
|
+
* passed to the subprocess, implementing Property 24 (API Key Secrecy).
|
|
115
|
+
*
|
|
116
|
+
* DELETELIST approach is PROHIBITED - new API keys would slip through.
|
|
117
|
+
*/
|
|
118
|
+
const ENV_ALLOWLIST = [
|
|
119
|
+
'PATH', // Required for execution
|
|
120
|
+
'HOME', // Home directory
|
|
121
|
+
'USER', // Username
|
|
122
|
+
'SHELL', // Shell
|
|
123
|
+
'LANG', // Language setting
|
|
124
|
+
'LC_ALL', // Locale
|
|
125
|
+
'LC_CTYPE', // Character type
|
|
126
|
+
'TERM', // Terminal type
|
|
127
|
+
'TMPDIR', // Temp directory
|
|
128
|
+
'XDG_CONFIG_HOME', // XDG config directory
|
|
129
|
+
'XDG_DATA_HOME', // XDG data directory
|
|
130
|
+
'XDG_CACHE_HOME', // XDG cache directory
|
|
131
|
+
'NODE_ENV', // Node.js environment
|
|
132
|
+
'DEBUG', // Debug flag (optional)
|
|
133
|
+
];
|
|
134
|
+
/**
|
|
135
|
+
* Build sanitized environment from ALLOWLIST
|
|
136
|
+
* Per spec/15_API_KEY_ENV_SANITIZE.md: Never pass process.env directly.
|
|
137
|
+
*
|
|
138
|
+
* @returns Record containing only ALLOWLIST variables
|
|
139
|
+
*/
|
|
140
|
+
function buildSanitizedEnv() {
|
|
141
|
+
const sanitizedEnv = {};
|
|
142
|
+
for (const key of ENV_ALLOWLIST) {
|
|
143
|
+
if (process.env[key] !== undefined) {
|
|
144
|
+
sanitizedEnv[key] = process.env[key];
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
return sanitizedEnv;
|
|
148
|
+
}
|
|
109
149
|
/**
|
|
110
150
|
* Process state check interval
|
|
111
151
|
*/
|
|
@@ -151,9 +191,11 @@ class ClaudeCodeExecutor {
|
|
|
151
191
|
async isClaudeCodeAvailable() {
|
|
152
192
|
return new Promise((resolve) => {
|
|
153
193
|
try {
|
|
194
|
+
// Per spec/15_API_KEY_ENV_SANITIZE.md: Use ALLOWLIST approach even for version check
|
|
154
195
|
const childProcess = (0, child_process_1.spawn)(this.cliPath, ['--version'], {
|
|
155
196
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
156
197
|
timeout: 5000,
|
|
198
|
+
env: buildSanitizedEnv(),
|
|
157
199
|
});
|
|
158
200
|
childProcess.on('close', (code) => {
|
|
159
201
|
resolve(code === 0);
|
|
@@ -172,6 +214,144 @@ class ClaudeCodeExecutor {
|
|
|
172
214
|
}
|
|
173
215
|
});
|
|
174
216
|
}
|
|
217
|
+
/**
|
|
218
|
+
* Check Claude Code CLI auth status
|
|
219
|
+
* Per spec/15_API_KEY_ENV_SANITIZE.md: Runner must check login status at startup
|
|
220
|
+
*
|
|
221
|
+
* This method checks:
|
|
222
|
+
* 1. CLI exists (version check)
|
|
223
|
+
* 2. CLI is logged in (can run minimal prompt without auth error)
|
|
224
|
+
*
|
|
225
|
+
* @returns AuthCheckResult with availability and login status
|
|
226
|
+
*/
|
|
227
|
+
async checkAuthStatus() {
|
|
228
|
+
// First check if CLI is available
|
|
229
|
+
const available = await this.isClaudeCodeAvailable();
|
|
230
|
+
if (!available) {
|
|
231
|
+
return {
|
|
232
|
+
available: false,
|
|
233
|
+
loggedIn: false,
|
|
234
|
+
error: `Claude Code CLI not found at: ${this.cliPath}`,
|
|
235
|
+
};
|
|
236
|
+
}
|
|
237
|
+
// CLI is available, now check if logged in
|
|
238
|
+
// We'll run a minimal test by trying to run with --print and detect auth errors
|
|
239
|
+
// Using a very short timeout and echo-like prompt to minimize API usage
|
|
240
|
+
return new Promise((resolve) => {
|
|
241
|
+
try {
|
|
242
|
+
// Use --print with a simple prompt that should be very fast
|
|
243
|
+
// If not logged in, we should get an auth error quickly
|
|
244
|
+
const childProcess = (0, child_process_1.spawn)(this.cliPath, [
|
|
245
|
+
'--print',
|
|
246
|
+
'--dangerously-skip-permissions',
|
|
247
|
+
'--no-session-persistence',
|
|
248
|
+
'echo test', // Minimal prompt
|
|
249
|
+
], {
|
|
250
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
251
|
+
timeout: 15000, // 15 second timeout for auth check
|
|
252
|
+
env: {
|
|
253
|
+
...buildSanitizedEnv(),
|
|
254
|
+
CI: 'true',
|
|
255
|
+
NO_COLOR: '1',
|
|
256
|
+
FORCE_COLOR: '0',
|
|
257
|
+
},
|
|
258
|
+
});
|
|
259
|
+
let stderr = '';
|
|
260
|
+
let stdout = '';
|
|
261
|
+
childProcess.stdout?.on('data', (data) => {
|
|
262
|
+
stdout += data.toString();
|
|
263
|
+
});
|
|
264
|
+
childProcess.stderr?.on('data', (data) => {
|
|
265
|
+
stderr += data.toString();
|
|
266
|
+
});
|
|
267
|
+
// Close stdin immediately
|
|
268
|
+
childProcess.stdin?.end();
|
|
269
|
+
childProcess.on('close', (code) => {
|
|
270
|
+
// Check for authentication-related errors in stderr or stdout
|
|
271
|
+
const combinedOutput = (stderr + stdout).toLowerCase();
|
|
272
|
+
// Common auth error patterns
|
|
273
|
+
const authErrorPatterns = [
|
|
274
|
+
'not logged in',
|
|
275
|
+
'login required',
|
|
276
|
+
'authentication required',
|
|
277
|
+
'authentication failed',
|
|
278
|
+
'unauthorized',
|
|
279
|
+
'invalid token',
|
|
280
|
+
'expired token',
|
|
281
|
+
'please log in',
|
|
282
|
+
'need to log in',
|
|
283
|
+
'sign in',
|
|
284
|
+
'authenticate',
|
|
285
|
+
'api key',
|
|
286
|
+
'subscription required',
|
|
287
|
+
'no subscription',
|
|
288
|
+
];
|
|
289
|
+
const hasAuthError = authErrorPatterns.some(pattern => combinedOutput.includes(pattern));
|
|
290
|
+
if (hasAuthError) {
|
|
291
|
+
resolve({
|
|
292
|
+
available: true,
|
|
293
|
+
loggedIn: false,
|
|
294
|
+
error: 'Claude Code CLI not logged in. Please run: claude setup-token',
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
else if (code === 0) {
|
|
298
|
+
// Successful execution means logged in
|
|
299
|
+
resolve({
|
|
300
|
+
available: true,
|
|
301
|
+
loggedIn: true,
|
|
302
|
+
});
|
|
303
|
+
}
|
|
304
|
+
else if (code === 137) {
|
|
305
|
+
// Exit code 137 = 128 + 9 (SIGKILL)
|
|
306
|
+
// Per spec/15: Fail-closed for process termination during auth check
|
|
307
|
+
// This typically means the process was killed externally (e.g., previous session cleanup)
|
|
308
|
+
resolve({
|
|
309
|
+
available: true,
|
|
310
|
+
loggedIn: false,
|
|
311
|
+
error: `Auth check process killed (exit 137 / SIGKILL). Please retry.`,
|
|
312
|
+
});
|
|
313
|
+
}
|
|
314
|
+
else {
|
|
315
|
+
// Non-zero exit but no auth error - might be other issue
|
|
316
|
+
// For now, assume logged in but with other problems
|
|
317
|
+
// (fail-open for non-auth errors to allow execution)
|
|
318
|
+
resolve({
|
|
319
|
+
available: true,
|
|
320
|
+
loggedIn: true,
|
|
321
|
+
error: `CLI exited with code ${code}: ${stderr}`,
|
|
322
|
+
});
|
|
323
|
+
}
|
|
324
|
+
});
|
|
325
|
+
childProcess.on('error', (err) => {
|
|
326
|
+
resolve({
|
|
327
|
+
available: true,
|
|
328
|
+
loggedIn: false,
|
|
329
|
+
error: `Error checking auth status: ${err.message}`,
|
|
330
|
+
});
|
|
331
|
+
});
|
|
332
|
+
// Timeout handling
|
|
333
|
+
setTimeout(() => {
|
|
334
|
+
if (!childProcess.killed) {
|
|
335
|
+
childProcess.kill();
|
|
336
|
+
// Timeout could mean many things, assume logged in (fail-open for timeout)
|
|
337
|
+
resolve({
|
|
338
|
+
available: true,
|
|
339
|
+
loggedIn: true,
|
|
340
|
+
error: 'Auth check timed out (assuming logged in)',
|
|
341
|
+
});
|
|
342
|
+
}
|
|
343
|
+
}, 15000);
|
|
344
|
+
}
|
|
345
|
+
catch (err) {
|
|
346
|
+
const error = err;
|
|
347
|
+
resolve({
|
|
348
|
+
available: true,
|
|
349
|
+
loggedIn: false,
|
|
350
|
+
error: `Error checking auth: ${error.message}`,
|
|
351
|
+
});
|
|
352
|
+
}
|
|
353
|
+
});
|
|
354
|
+
}
|
|
175
355
|
/**
|
|
176
356
|
* Execute a task via Claude Code CLI
|
|
177
357
|
*
|
|
@@ -321,11 +501,14 @@ class ClaudeCodeExecutor {
|
|
|
321
501
|
}
|
|
322
502
|
console.log(`[ClaudeCodeExecutor] Timeout config: soft=${this.softTimeoutMs}ms, hard=${this.hardTimeoutMs}ms, overall=${this.config.timeout}ms`);
|
|
323
503
|
try {
|
|
504
|
+
// Per spec/15_API_KEY_ENV_SANITIZE.md: Use ALLOWLIST approach
|
|
505
|
+
// NEVER pass process.env directly (DELETELIST approach is PROHIBITED)
|
|
506
|
+
const sanitizedEnv = buildSanitizedEnv();
|
|
324
507
|
childProcess = (0, child_process_1.spawn)(this.cliPath, cliArgs, {
|
|
325
508
|
cwd: task.workingDir,
|
|
326
509
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
327
510
|
env: {
|
|
328
|
-
...
|
|
511
|
+
...sanitizedEnv,
|
|
329
512
|
// Ensure non-interactive mode
|
|
330
513
|
CI: 'true',
|
|
331
514
|
// Disable color output for cleaner parsing
|