pm-orchestrator-runner 1.0.8 → 1.0.9
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 +55 -12
- package/dist/cli/index.d.ts +7 -5
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +166 -59
- package/dist/cli/index.js.map +1 -1
- package/dist/executor/stepwise-mock-executor.d.ts +76 -0
- package/dist/executor/stepwise-mock-executor.d.ts.map +1 -0
- package/dist/executor/stepwise-mock-executor.js +369 -0
- package/dist/executor/stepwise-mock-executor.js.map +1 -0
- package/dist/repl/two-pane-renderer.d.ts +13 -1
- package/dist/repl/two-pane-renderer.d.ts.map +1 -1
- package/dist/repl/two-pane-renderer.js +47 -10
- package/dist/repl/two-pane-renderer.js.map +1 -1
- package/dist/trace/trace-pack.d.ts +182 -0
- package/dist/trace/trace-pack.d.ts.map +1 -0
- package/dist/trace/trace-pack.js +407 -0
- package/dist/trace/trace-pack.js.map +1 -0
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -9,6 +9,7 @@ A CLI tool for orchestrated execution of Claude Code with evidence-based complet
|
|
|
9
9
|
- Two-stage timeout system (soft warning + hard terminate)
|
|
10
10
|
- Session management and persistence
|
|
11
11
|
- Non-interactive mode for scripting and automation
|
|
12
|
+
- Web UI for task queue management
|
|
12
13
|
|
|
13
14
|
## Installation
|
|
14
15
|
|
|
@@ -25,21 +26,34 @@ npx pm-orchestrator-runner --help
|
|
|
25
26
|
### Interactive Mode
|
|
26
27
|
|
|
27
28
|
```bash
|
|
28
|
-
# Start REPL in current directory
|
|
29
|
-
pm
|
|
29
|
+
# Start REPL in current directory (default command)
|
|
30
|
+
pm
|
|
30
31
|
|
|
31
32
|
# Start REPL with specific project
|
|
32
|
-
pm
|
|
33
|
+
pm --project /path/to/project
|
|
34
|
+
|
|
35
|
+
# Explicit repl command
|
|
36
|
+
pm repl --namespace stable
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Web UI Mode
|
|
40
|
+
|
|
41
|
+
```bash
|
|
42
|
+
# Start Web UI server
|
|
43
|
+
pm web --port 3000
|
|
44
|
+
|
|
45
|
+
# Verify Web UI
|
|
46
|
+
curl http://localhost:3000/api/health
|
|
33
47
|
```
|
|
34
48
|
|
|
35
49
|
### Non-Interactive Mode (Scripting)
|
|
36
50
|
|
|
37
51
|
```bash
|
|
38
52
|
# Pipe input
|
|
39
|
-
echo "Create a file called hello.txt with content Hello World" | pm
|
|
53
|
+
echo "Create a file called hello.txt with content Hello World" | pm --non-interactive --exit-on-eof
|
|
40
54
|
|
|
41
55
|
# Heredoc input
|
|
42
|
-
pm
|
|
56
|
+
pm --non-interactive --exit-on-eof << 'EOF'
|
|
43
57
|
Create README.md with content "# My Project"
|
|
44
58
|
EOF
|
|
45
59
|
```
|
|
@@ -49,18 +63,20 @@ EOF
|
|
|
49
63
|
For persistent verification root (useful for CI/CD):
|
|
50
64
|
|
|
51
65
|
```bash
|
|
52
|
-
pm
|
|
66
|
+
pm --project-mode fixed --project-root /path/to/project
|
|
53
67
|
```
|
|
54
68
|
|
|
55
69
|
## Commands
|
|
56
70
|
|
|
57
71
|
| Command | Description |
|
|
58
72
|
|---------|-------------|
|
|
59
|
-
| `pm
|
|
60
|
-
| `pm
|
|
61
|
-
| `pm
|
|
62
|
-
| `pm
|
|
63
|
-
| `pm
|
|
73
|
+
| `pm` | Start interactive REPL mode (default) |
|
|
74
|
+
| `pm repl` | Start interactive REPL mode |
|
|
75
|
+
| `pm web` | Start Web UI server |
|
|
76
|
+
| `pm start <path>` | Start a new session on a project |
|
|
77
|
+
| `pm continue <id>` | Continue a paused session |
|
|
78
|
+
| `pm status <id>` | Get session status |
|
|
79
|
+
| `pm validate <path>` | Validate project structure |
|
|
64
80
|
|
|
65
81
|
## REPL Options
|
|
66
82
|
|
|
@@ -72,6 +88,15 @@ pm-orchestrator repl --project-mode fixed --project-root /path/to/project
|
|
|
72
88
|
| `--exit-on-eof` | Exit when EOF is received |
|
|
73
89
|
| `--project-mode <mode>` | `temp` (default) or `fixed` |
|
|
74
90
|
| `--project-root <path>` | Verification root directory |
|
|
91
|
+
| `--namespace <name>` | Namespace for state separation |
|
|
92
|
+
| `--port <number>` | Web UI port |
|
|
93
|
+
|
|
94
|
+
## Web Options
|
|
95
|
+
|
|
96
|
+
| Option | Description |
|
|
97
|
+
|--------|-------------|
|
|
98
|
+
| `--port <number>` | Web UI port (default: 3000) |
|
|
99
|
+
| `--namespace <name>` | Namespace for state separation |
|
|
75
100
|
|
|
76
101
|
## REPL Commands
|
|
77
102
|
|
|
@@ -86,6 +111,24 @@ Inside the REPL:
|
|
|
86
111
|
| `/session` | Show session info |
|
|
87
112
|
| `/quit` | Exit REPL |
|
|
88
113
|
|
|
114
|
+
## Web UI Verification
|
|
115
|
+
|
|
116
|
+
```bash
|
|
117
|
+
# 1. Start Web UI
|
|
118
|
+
pm web --port 3000
|
|
119
|
+
|
|
120
|
+
# 2. Health check
|
|
121
|
+
curl http://localhost:3000/api/health
|
|
122
|
+
|
|
123
|
+
# 3. Submit task
|
|
124
|
+
curl -X POST http://localhost:3000/api/tasks \
|
|
125
|
+
-H "Content-Type: application/json" \
|
|
126
|
+
-d '{"task_group_id":"test","prompt":"hello"}'
|
|
127
|
+
|
|
128
|
+
# 4. View tasks
|
|
129
|
+
curl http://localhost:3000/api/task-groups
|
|
130
|
+
```
|
|
131
|
+
|
|
89
132
|
## Environment Variables
|
|
90
133
|
|
|
91
134
|
| Variable | Description |
|
|
@@ -106,7 +149,7 @@ Inside the REPL:
|
|
|
106
149
|
npm install -g pm-orchestrator-runner
|
|
107
150
|
|
|
108
151
|
# Verify command is available
|
|
109
|
-
pm
|
|
152
|
+
pm --help
|
|
110
153
|
```
|
|
111
154
|
|
|
112
155
|
## License
|
package/dist/cli/index.d.ts
CHANGED
|
@@ -3,11 +3,13 @@
|
|
|
3
3
|
* PM Orchestrator Runner - CLI Entry Point
|
|
4
4
|
*
|
|
5
5
|
* Usage:
|
|
6
|
-
* pm
|
|
7
|
-
* pm
|
|
8
|
-
* pm
|
|
9
|
-
* pm
|
|
10
|
-
* pm
|
|
6
|
+
* pm [options] - Start interactive REPL (default)
|
|
7
|
+
* pm repl [--project <path>] - Start interactive REPL
|
|
8
|
+
* pm web [--port <number>] - Start Web UI server
|
|
9
|
+
* pm start <path> [options] - Start a new session (per spec 05_CLI.md L20)
|
|
10
|
+
* pm continue <session-id> - Continue a session
|
|
11
|
+
* pm status <session-id> - Get session status
|
|
12
|
+
* pm validate <path> - Validate project structure (per spec 05_CLI.md L23)
|
|
11
13
|
*/
|
|
12
14
|
export {};
|
|
13
15
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/cli/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG"}
|
package/dist/cli/index.js
CHANGED
|
@@ -4,11 +4,13 @@
|
|
|
4
4
|
* PM Orchestrator Runner - CLI Entry Point
|
|
5
5
|
*
|
|
6
6
|
* Usage:
|
|
7
|
-
* pm
|
|
8
|
-
* pm
|
|
9
|
-
* pm
|
|
10
|
-
* pm
|
|
11
|
-
* pm
|
|
7
|
+
* pm [options] - Start interactive REPL (default)
|
|
8
|
+
* pm repl [--project <path>] - Start interactive REPL
|
|
9
|
+
* pm web [--port <number>] - Start Web UI server
|
|
10
|
+
* pm start <path> [options] - Start a new session (per spec 05_CLI.md L20)
|
|
11
|
+
* pm continue <session-id> - Continue a session
|
|
12
|
+
* pm status <session-id> - Get session status
|
|
13
|
+
* pm validate <path> - Validate project structure (per spec 05_CLI.md L23)
|
|
12
14
|
*/
|
|
13
15
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
16
|
if (k2 === undefined) k2 = k;
|
|
@@ -47,6 +49,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
47
49
|
const path = __importStar(require("path"));
|
|
48
50
|
const cli_interface_1 = require("./cli-interface");
|
|
49
51
|
const repl_interface_1 = require("../repl/repl-interface");
|
|
52
|
+
const server_1 = require("../web/server");
|
|
53
|
+
const queue_1 = require("../queue");
|
|
50
54
|
const namespace_1 = require("../config/namespace");
|
|
51
55
|
/**
|
|
52
56
|
* Help text
|
|
@@ -55,14 +59,16 @@ const HELP_TEXT = `
|
|
|
55
59
|
PM Orchestrator Runner - CLI
|
|
56
60
|
|
|
57
61
|
Usage:
|
|
58
|
-
pm
|
|
62
|
+
pm [options] Start interactive REPL (default)
|
|
63
|
+
pm <command> [options] Run a specific command
|
|
59
64
|
|
|
60
65
|
Commands:
|
|
61
|
-
repl Start interactive REPL mode
|
|
62
|
-
|
|
66
|
+
repl Start interactive REPL mode (default if no command)
|
|
67
|
+
web Start Web UI server for task queue management
|
|
68
|
+
start <path> Start a new session on a project
|
|
63
69
|
continue <session-id> Continue a paused session
|
|
64
70
|
status <session-id> Get session status
|
|
65
|
-
validate <path> Validate project structure
|
|
71
|
+
validate <path> Validate project structure
|
|
66
72
|
|
|
67
73
|
REPL Options:
|
|
68
74
|
--project <path> Project path (default: current directory)
|
|
@@ -73,32 +79,32 @@ REPL Options:
|
|
|
73
79
|
--project-root <path> Verification root directory (required if --project-mode=fixed)
|
|
74
80
|
--print-project-path Print PROJECT_PATH=<path> on startup
|
|
75
81
|
--namespace <name> Namespace for state separation (default: 'default')
|
|
76
|
-
Per spec/21_STABLE_DEV.md: separates QueueStore, state dir, Web UI port
|
|
77
82
|
Examples: 'stable', 'dev', 'test-1'
|
|
78
83
|
--port <number> Web UI port (default: 3000 for 'default'/'stable', 3001 for 'dev')
|
|
79
84
|
|
|
80
|
-
|
|
81
|
-
--
|
|
82
|
-
--
|
|
83
|
-
--max-files <n> Maximum files limit
|
|
84
|
-
--max-tests <n> Maximum tests limit
|
|
85
|
-
--max-seconds <n> Maximum seconds limit
|
|
86
|
-
--verbose Verbose output
|
|
87
|
-
--quiet Minimal output
|
|
88
|
-
--stream Stream progress events
|
|
89
|
-
--format <type> Output format (json, compact)
|
|
85
|
+
Web Options:
|
|
86
|
+
--port <number> Web UI port (default: 3000)
|
|
87
|
+
--namespace <name> Namespace for state separation
|
|
90
88
|
|
|
91
89
|
General Options:
|
|
92
90
|
--help, -h Show this help message
|
|
93
91
|
--version, -v Show version
|
|
94
92
|
|
|
95
93
|
Examples:
|
|
96
|
-
pm
|
|
97
|
-
pm
|
|
98
|
-
pm
|
|
99
|
-
pm
|
|
100
|
-
pm
|
|
101
|
-
pm
|
|
94
|
+
pm # Start REPL in current directory
|
|
95
|
+
pm --project ./my-project # Start REPL with specific project
|
|
96
|
+
pm repl --namespace stable # Start REPL with stable namespace
|
|
97
|
+
pm web --port 3000 # Start Web UI on port 3000
|
|
98
|
+
pm start ./my-project --dry-run # Start session with dry-run
|
|
99
|
+
pm continue session-2025-01-15-abc123 # Continue a session
|
|
100
|
+
|
|
101
|
+
Web UI Verification:
|
|
102
|
+
1. Start Web UI: pm web --port 3000
|
|
103
|
+
2. Health check: curl http://localhost:3000/api/health
|
|
104
|
+
3. Submit task: curl -X POST http://localhost:3000/api/tasks \\
|
|
105
|
+
-H "Content-Type: application/json" \\
|
|
106
|
+
-d '{"task_group_id":"test","prompt":"hello"}'
|
|
107
|
+
4. View tasks: curl http://localhost:3000/api/task-groups
|
|
102
108
|
`;
|
|
103
109
|
/**
|
|
104
110
|
* Version
|
|
@@ -170,13 +176,126 @@ function parseReplArgs(args) {
|
|
|
170
176
|
}
|
|
171
177
|
return result;
|
|
172
178
|
}
|
|
179
|
+
/**
|
|
180
|
+
* Start REPL with given arguments
|
|
181
|
+
*/
|
|
182
|
+
async function startRepl(replArgs) {
|
|
183
|
+
// CRITICAL: evidenceDir must use projectPath, not process.cwd()
|
|
184
|
+
// This ensures files are created in the project directory, not where the CLI was invoked
|
|
185
|
+
const projectPath = replArgs.projectPath || process.cwd();
|
|
186
|
+
// Build namespace configuration (per spec/21_STABLE_DEV.md)
|
|
187
|
+
// Fail-closed: buildNamespaceConfig throws on invalid namespace
|
|
188
|
+
const namespaceConfig = (0, namespace_1.buildNamespaceConfig)({
|
|
189
|
+
namespace: replArgs.namespace,
|
|
190
|
+
projectRoot: projectPath,
|
|
191
|
+
port: replArgs.port,
|
|
192
|
+
});
|
|
193
|
+
const repl = new repl_interface_1.REPLInterface({
|
|
194
|
+
projectPath,
|
|
195
|
+
evidenceDir: replArgs.evidenceDir || path.join(namespaceConfig.stateDir, 'evidence'),
|
|
196
|
+
authMode: 'claude-code',
|
|
197
|
+
forceNonInteractive: replArgs.nonInteractive,
|
|
198
|
+
projectMode: replArgs.projectMode,
|
|
199
|
+
projectRoot: replArgs.projectRoot,
|
|
200
|
+
printProjectPath: replArgs.printProjectPath,
|
|
201
|
+
namespace: namespaceConfig.namespace,
|
|
202
|
+
namespaceConfig,
|
|
203
|
+
});
|
|
204
|
+
// Start REPL and wait for it to complete
|
|
205
|
+
// CRITICAL: Don't use setTimeout to force exit - let REPL handle EOF properly
|
|
206
|
+
// The REPL's start() returns a Promise that resolves after queue drain
|
|
207
|
+
await repl.start();
|
|
208
|
+
// After REPL completes, exit with appropriate code
|
|
209
|
+
if (replArgs.exitOnEof || replArgs.nonInteractive) {
|
|
210
|
+
process.exit(repl.getExitCode());
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Parse Web-specific arguments
|
|
215
|
+
*/
|
|
216
|
+
function parseWebArgs(args) {
|
|
217
|
+
const result = {};
|
|
218
|
+
for (let i = 0; i < args.length; i++) {
|
|
219
|
+
const arg = args[i];
|
|
220
|
+
// Port
|
|
221
|
+
if (arg === '--port' && args[i + 1]) {
|
|
222
|
+
const portStr = args[++i];
|
|
223
|
+
const port = parseInt(portStr, 10);
|
|
224
|
+
if (isNaN(port) || port < 1 || port > 65535) {
|
|
225
|
+
console.error(`Invalid port: ${portStr}. Must be a number between 1 and 65535.`);
|
|
226
|
+
process.exit(1);
|
|
227
|
+
}
|
|
228
|
+
result.port = port;
|
|
229
|
+
}
|
|
230
|
+
// Namespace
|
|
231
|
+
else if (arg === '--namespace' && args[i + 1]) {
|
|
232
|
+
const ns = args[++i];
|
|
233
|
+
const error = (0, namespace_1.validateNamespace)(ns);
|
|
234
|
+
if (error) {
|
|
235
|
+
console.error(`Invalid namespace: ${error}`);
|
|
236
|
+
process.exit(1);
|
|
237
|
+
}
|
|
238
|
+
result.namespace = ns;
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
return result;
|
|
242
|
+
}
|
|
243
|
+
/**
|
|
244
|
+
* Generate a simple session ID for web server
|
|
245
|
+
*/
|
|
246
|
+
function generateWebSessionId() {
|
|
247
|
+
const now = new Date();
|
|
248
|
+
const dateStr = now.toISOString().slice(0, 10);
|
|
249
|
+
const random = Math.random().toString(36).substring(2, 8);
|
|
250
|
+
return `web-${dateStr}-${random}`;
|
|
251
|
+
}
|
|
252
|
+
/**
|
|
253
|
+
* Start Web UI server
|
|
254
|
+
*/
|
|
255
|
+
async function startWebServer(webArgs) {
|
|
256
|
+
const projectPath = process.cwd();
|
|
257
|
+
// Build namespace configuration
|
|
258
|
+
const namespaceConfig = (0, namespace_1.buildNamespaceConfig)({
|
|
259
|
+
namespace: webArgs.namespace,
|
|
260
|
+
projectRoot: projectPath,
|
|
261
|
+
port: webArgs.port,
|
|
262
|
+
});
|
|
263
|
+
const port = webArgs.port || namespaceConfig.port;
|
|
264
|
+
const queueStore = (0, queue_1.createNamespacedQueueStore)({
|
|
265
|
+
namespace: namespaceConfig.namespace,
|
|
266
|
+
tableName: namespaceConfig.tableName,
|
|
267
|
+
});
|
|
268
|
+
const server = new server_1.WebServer({
|
|
269
|
+
port,
|
|
270
|
+
queueStore,
|
|
271
|
+
sessionId: generateWebSessionId(),
|
|
272
|
+
});
|
|
273
|
+
console.log(`Starting Web UI server on port ${port}...`);
|
|
274
|
+
console.log(`Namespace: ${namespaceConfig.namespace}`);
|
|
275
|
+
console.log(`State directory: ${namespaceConfig.stateDir}`);
|
|
276
|
+
console.log('');
|
|
277
|
+
console.log('Verification steps:');
|
|
278
|
+
console.log(` 1. Health check: curl http://localhost:${port}/api/health`);
|
|
279
|
+
console.log(` 2. Submit task: curl -X POST http://localhost:${port}/api/tasks \\`);
|
|
280
|
+
console.log(' -H "Content-Type: application/json" \\');
|
|
281
|
+
console.log(' -d \'{"task_group_id":"test","prompt":"hello"}\'');
|
|
282
|
+
console.log(` 3. View tasks: curl http://localhost:${port}/api/task-groups`);
|
|
283
|
+
console.log('');
|
|
284
|
+
await server.start();
|
|
285
|
+
}
|
|
286
|
+
/**
|
|
287
|
+
* Check if argument looks like an option (starts with -)
|
|
288
|
+
*/
|
|
289
|
+
function isOption(arg) {
|
|
290
|
+
return arg.startsWith('-');
|
|
291
|
+
}
|
|
173
292
|
/**
|
|
174
293
|
* Main entry point
|
|
175
294
|
*/
|
|
176
295
|
async function main() {
|
|
177
296
|
const args = process.argv.slice(2);
|
|
178
|
-
// Check for help
|
|
179
|
-
if (args.includes('--help') || args.includes('-h')
|
|
297
|
+
// Check for help (explicit request only)
|
|
298
|
+
if (args.includes('--help') || args.includes('-h')) {
|
|
180
299
|
console.log(HELP_TEXT);
|
|
181
300
|
process.exit(0);
|
|
182
301
|
}
|
|
@@ -185,41 +304,29 @@ async function main() {
|
|
|
185
304
|
console.log(VERSION);
|
|
186
305
|
process.exit(0);
|
|
187
306
|
}
|
|
188
|
-
|
|
189
|
-
|
|
307
|
+
// Determine command and arguments
|
|
308
|
+
// If no args or first arg is an option, default to REPL
|
|
309
|
+
let command;
|
|
310
|
+
let restArgs;
|
|
311
|
+
if (args.length === 0 || isOption(args[0])) {
|
|
312
|
+
// No command specified or first arg is an option -> default to REPL
|
|
313
|
+
command = 'repl';
|
|
314
|
+
restArgs = args;
|
|
315
|
+
}
|
|
316
|
+
else {
|
|
317
|
+
command = args[0];
|
|
318
|
+
restArgs = args.slice(1);
|
|
319
|
+
}
|
|
190
320
|
try {
|
|
191
321
|
switch (command) {
|
|
192
322
|
case 'repl': {
|
|
193
323
|
const replArgs = parseReplArgs(restArgs);
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
namespace: replArgs.namespace,
|
|
201
|
-
projectRoot: projectPath,
|
|
202
|
-
port: replArgs.port,
|
|
203
|
-
});
|
|
204
|
-
const repl = new repl_interface_1.REPLInterface({
|
|
205
|
-
projectPath,
|
|
206
|
-
evidenceDir: replArgs.evidenceDir || path.join(namespaceConfig.stateDir, 'evidence'),
|
|
207
|
-
authMode: 'claude-code',
|
|
208
|
-
forceNonInteractive: replArgs.nonInteractive,
|
|
209
|
-
projectMode: replArgs.projectMode,
|
|
210
|
-
projectRoot: replArgs.projectRoot,
|
|
211
|
-
printProjectPath: replArgs.printProjectPath,
|
|
212
|
-
namespace: namespaceConfig.namespace,
|
|
213
|
-
namespaceConfig,
|
|
214
|
-
});
|
|
215
|
-
// Start REPL and wait for it to complete
|
|
216
|
-
// CRITICAL: Don't use setTimeout to force exit - let REPL handle EOF properly
|
|
217
|
-
// The REPL's start() returns a Promise that resolves after queue drain
|
|
218
|
-
await repl.start();
|
|
219
|
-
// After REPL completes, exit with appropriate code
|
|
220
|
-
if (replArgs.exitOnEof || replArgs.nonInteractive) {
|
|
221
|
-
process.exit(repl.getExitCode());
|
|
222
|
-
}
|
|
324
|
+
await startRepl(replArgs);
|
|
325
|
+
break;
|
|
326
|
+
}
|
|
327
|
+
case 'web': {
|
|
328
|
+
const webArgs = parseWebArgs(restArgs);
|
|
329
|
+
await startWebServer(webArgs);
|
|
223
330
|
break;
|
|
224
331
|
}
|
|
225
332
|
case 'start': // Per spec 05_CLI.md L20
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";;AACA
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* StepwiseMockExecutor
|
|
3
|
+
*
|
|
4
|
+
* A mock executor that returns different results based on call count.
|
|
5
|
+
* Used for testing the self-heal mediation loop.
|
|
6
|
+
*
|
|
7
|
+
* Per spec:
|
|
8
|
+
* - Step 1: Returns buggy implementation -> INCOMPLETE
|
|
9
|
+
* - Step 2: Returns fixed implementation -> COMPLETE
|
|
10
|
+
*/
|
|
11
|
+
import type { IExecutor, ExecutorTask, ExecutorResult, AuthCheckResult } from './claude-code-executor';
|
|
12
|
+
/**
|
|
13
|
+
* Step configuration for StepwiseMockExecutor
|
|
14
|
+
*/
|
|
15
|
+
export interface StepConfig {
|
|
16
|
+
/** Status to return for this step */
|
|
17
|
+
status: ExecutorResult['status'];
|
|
18
|
+
/** Output message */
|
|
19
|
+
output: string;
|
|
20
|
+
/** Files to create/modify (relative paths) */
|
|
21
|
+
filesToCreate?: Array<{
|
|
22
|
+
path: string;
|
|
23
|
+
content: string;
|
|
24
|
+
}>;
|
|
25
|
+
/** Whether npm test should pass after this step */
|
|
26
|
+
testShouldPass?: boolean;
|
|
27
|
+
/** Custom handler for complex scenarios */
|
|
28
|
+
customHandler?: (task: ExecutorTask, projectPath: string) => Promise<Partial<ExecutorResult>>;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Configuration for StepwiseMockExecutor
|
|
32
|
+
*/
|
|
33
|
+
export interface StepwiseMockConfig {
|
|
34
|
+
/** Path to the project being tested */
|
|
35
|
+
projectPath: string;
|
|
36
|
+
/** Steps to execute in order */
|
|
37
|
+
steps: StepConfig[];
|
|
38
|
+
/** Default status when steps are exhausted */
|
|
39
|
+
defaultStatus?: ExecutorResult['status'];
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* StepwiseMockExecutor
|
|
43
|
+
*
|
|
44
|
+
* Varies results based on call count to simulate:
|
|
45
|
+
* 1. Initial buggy implementation (INCOMPLETE)
|
|
46
|
+
* 2. Correction/fix (COMPLETE)
|
|
47
|
+
*/
|
|
48
|
+
export declare class StepwiseMockExecutor implements IExecutor {
|
|
49
|
+
private callCount;
|
|
50
|
+
private config;
|
|
51
|
+
private executionLog;
|
|
52
|
+
constructor(config: StepwiseMockConfig);
|
|
53
|
+
/**
|
|
54
|
+
* Get current call count
|
|
55
|
+
*/
|
|
56
|
+
getCallCount(): number;
|
|
57
|
+
/**
|
|
58
|
+
* Get execution log for verification
|
|
59
|
+
*/
|
|
60
|
+
getExecutionLog(): typeof this.executionLog;
|
|
61
|
+
/**
|
|
62
|
+
* Reset executor state
|
|
63
|
+
*/
|
|
64
|
+
reset(): void;
|
|
65
|
+
isClaudeCodeAvailable(): Promise<boolean>;
|
|
66
|
+
checkAuthStatus(): Promise<AuthCheckResult>;
|
|
67
|
+
execute(task: ExecutorTask): Promise<ExecutorResult>;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Create a StepwiseMockExecutor configured for the tiny-cli self-heal test
|
|
71
|
+
*
|
|
72
|
+
* Step 1: Creates buggy implementation (tests fail) -> INCOMPLETE
|
|
73
|
+
* Step 2: Creates fixed implementation (tests pass) -> COMPLETE
|
|
74
|
+
*/
|
|
75
|
+
export declare function createTinyCliMockExecutor(projectPath: string): StepwiseMockExecutor;
|
|
76
|
+
//# sourceMappingURL=stepwise-mock-executor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stepwise-mock-executor.d.ts","sourceRoot":"","sources":["../../src/executor/stepwise-mock-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAIH,OAAO,KAAK,EACV,SAAS,EACT,YAAY,EACZ,cAAc,EAEd,eAAe,EAChB,MAAM,wBAAwB,CAAC;AAEhC;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,qCAAqC;IACrC,MAAM,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;IACjC,qBAAqB;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,8CAA8C;IAC9C,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,mDAAmD;IACnD,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,2CAA2C;IAC3C,aAAa,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;CAC/F;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;IACpB,gCAAgC;IAChC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,8CAA8C;IAC9C,aAAa,CAAC,EAAE,cAAc,CAAC,QAAQ,CAAC,CAAC;CAC1C;AAED;;;;;;GAMG;AACH,qBAAa,oBAAqB,YAAW,SAAS;IACpD,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,MAAM,CAAqB;IACnC,OAAO,CAAC,YAAY,CAOZ;gBAEI,MAAM,EAAE,kBAAkB;IAItC;;OAEG;IACH,YAAY,IAAI,MAAM;IAItB;;OAEG;IACH,eAAe,IAAI,OAAO,IAAI,CAAC,YAAY;IAI3C;;OAEG;IACH,KAAK,IAAI,IAAI;IAKP,qBAAqB,IAAI,OAAO,CAAC,OAAO,CAAC;IAIzC,eAAe,IAAI,OAAO,CAAC,eAAe,CAAC;IAI3C,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,cAAc,CAAC;CA2F3D;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,oBAAoB,CAgMnF"}
|