ghcralph 0.1.2 → 0.1.4

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.
Files changed (39) hide show
  1. package/README.md +23 -16
  2. package/dist/commands/run.d.ts.map +1 -1
  3. package/dist/commands/run.js +66 -19
  4. package/dist/commands/run.js.map +1 -1
  5. package/dist/core/action-executor.d.ts +13 -0
  6. package/dist/core/action-executor.d.ts.map +1 -1
  7. package/dist/core/action-executor.js +32 -0
  8. package/dist/core/action-executor.js.map +1 -1
  9. package/dist/core/checkpoint-manager.d.ts +50 -11
  10. package/dist/core/checkpoint-manager.d.ts.map +1 -1
  11. package/dist/core/checkpoint-manager.js +287 -187
  12. package/dist/core/checkpoint-manager.js.map +1 -1
  13. package/dist/core/config-schema.d.ts +9 -1
  14. package/dist/core/config-schema.d.ts.map +1 -1
  15. package/dist/core/config-schema.js +14 -0
  16. package/dist/core/config-schema.js.map +1 -1
  17. package/dist/core/context-builder.d.ts.map +1 -1
  18. package/dist/core/context-builder.js +61 -16
  19. package/dist/core/context-builder.js.map +1 -1
  20. package/dist/core/index.d.ts +4 -4
  21. package/dist/core/index.d.ts.map +1 -1
  22. package/dist/core/index.js +1 -1
  23. package/dist/core/index.js.map +1 -1
  24. package/dist/core/loop-engine.d.ts +6 -1
  25. package/dist/core/loop-engine.d.ts.map +1 -1
  26. package/dist/core/loop-engine.js +72 -4
  27. package/dist/core/loop-engine.js.map +1 -1
  28. package/dist/core/loop-state.d.ts +8 -0
  29. package/dist/core/loop-state.d.ts.map +1 -1
  30. package/dist/core/loop-state.js.map +1 -1
  31. package/dist/core/progress-tracker.d.ts +73 -3
  32. package/dist/core/progress-tracker.d.ts.map +1 -1
  33. package/dist/core/progress-tracker.js +192 -2
  34. package/dist/core/progress-tracker.js.map +1 -1
  35. package/dist/core/prompt-examples.d.ts +11 -3
  36. package/dist/core/prompt-examples.d.ts.map +1 -1
  37. package/dist/core/prompt-examples.js +47 -5
  38. package/dist/core/prompt-examples.js.map +1 -1
  39. package/package.json +2 -1
package/README.md CHANGED
@@ -189,21 +189,23 @@ GitHub Copilot Ralph uses a hierarchical configuration system:
189
189
 
190
190
  ### Configuration Options
191
191
 
192
- | Option | Default | Description |
193
- | ------------------ | ----------- | ----------------------------------------------------- |
194
- | `planSource` | `local` | Plan source: `github` or `local` |
195
- | `maxIterations` | `10` | Maximum loop iterations per task |
196
- | `maxTokens` | `100000` | Token budget per task |
197
- | `defaultModel` | `gpt-4.1` | Copilot model to use (dynamically fetched from SDK) |
198
- | `autoCommit` | `true` | Auto-commit after iterations |
199
- | `branchPrefix` | `ghcralph/` | Prefix for GitHub Copilot Ralph branches |
200
- | `maxRetriesPerTask`| `2` | Retries per task before marking as failed |
201
- | `autoPush` | `false` | Auto-push to remote after each task completion |
202
- | `githubRepo` | - | GitHub repository (owner/repo) for GitHub plan source |
203
- | `githubLabel` | - | Default GitHub issue label filter for GitHub plan |
204
- | `githubMilestone` | - | Default GitHub issue milestone filter for GitHub plan |
205
- | `githubAssignee` | - | Default GitHub issue assignee filter for GitHub plan |
206
- | `localPlanFile` | - | Path to local plan file |
192
+ | Option | Default | Description |
193
+ | ------------------- | ----------- | ------------------------------------------------------------------------------- |
194
+ | `planSource` | `local` | Plan source: `github` or `local` |
195
+ | `maxIterations` | `10` | Maximum loop iterations per task |
196
+ | `maxTokens` | `100000` | Token budget per task |
197
+ | `defaultModel` | `gpt-4.1` | Copilot model to use (dynamically fetched from SDK) |
198
+ | `autoCommit` | `true` | Auto-commit after iterations |
199
+ | `branchPrefix` | `ghcralph/` | Prefix for GitHub Copilot Ralph branches |
200
+ | `maxRetriesPerTask` | `2` | Retries per task before marking as failed |
201
+ | `autoPush` | `false` | Auto-push to remote after task completion |
202
+ | `pushStrategy` | `per-task` | When to push: `per-task`, `per-run`, or `manual` |
203
+ | `progressVerbosity` | `standard` | Progress file detail level: `minimal`, `standard` (+ actions), or `full` |
204
+ | `githubRepo` | - | GitHub repository (owner/repo) for GitHub plan source |
205
+ | `githubLabel` | - | Default GitHub issue label filter for GitHub plan |
206
+ | `githubMilestone` | - | Default GitHub issue milestone filter for GitHub plan |
207
+ | `githubAssignee` | - | Default GitHub issue assignee filter for GitHub plan |
208
+ | `localPlanFile` | - | Path to local plan file |
207
209
 
208
210
  ### Environment Variables
209
211
 
@@ -217,6 +219,8 @@ export GHCRALPH_AUTO_COMMIT=true
217
219
  export GHCRALPH_BRANCH_PREFIX=ghcralph/
218
220
  export GHCRALPH_MAX_RETRIES_PER_TASK=3
219
221
  export GHCRALPH_AUTO_PUSH=true
222
+ export GHCRALPH_PUSH_STRATEGY=per-run
223
+ export GHCRALPH_PROGRESS_VERBOSITY=full
220
224
  export GHCRALPH_PLAN_SOURCE=local
221
225
  export GHCRALPH_GITHUB_REPO=owner/repo
222
226
  export GHCRALPH_GITHUB_LABEL=ralph-ready
@@ -236,6 +240,8 @@ export GHCRALPH_GITHUB_ASSIGNEE=octocat
236
240
  "branchPrefix": "ghcralph/",
237
241
  "maxRetriesPerTask": 2,
238
242
  "autoPush": false,
243
+ "pushStrategy": "per-task",
244
+ "progressVerbosity": "standard",
239
245
  "githubRepo": "owner/repo",
240
246
  "githubLabel": "ralph-ready",
241
247
  "githubMilestone": "v1.0",
@@ -252,7 +258,8 @@ export GHCRALPH_GITHUB_ASSIGNEE=octocat
252
258
 
253
259
  ### 💾 Automatic Checkpoints
254
260
  - Commits after each successful iteration
255
- - Message format: `ghcralph: iteration N - summary`
261
+ - Message format: `ghcralph: task X/Y iter N - summary` (with plan context)
262
+ - Task completion: `ghcralph: task X/Y complete - task title`
256
263
  - Easy rollback with `ghcralph rollback`
257
264
 
258
265
  ### 🛡️ File Deletion Safeguards
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBzC,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA+FD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAsiBzD"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBzC,MAAM,WAAW,UAAU;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA+FD,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAylBzD"}
@@ -9,7 +9,7 @@ import { execSync } from 'node:child_process';
9
9
  import { info, success, error, warn, debug, spinner, heading, code, dim, parseNonNegativeInt } from '../utils/index.js';
10
10
  import { waitForKeypress } from '../utils/shell.js';
11
11
  import { CopilotAgent } from '../integrations/index.js';
12
- import { LoopEngine, LocalMarkdownPlan, GitHubPlan, ProgressTracker, GitBranchManager, CheckpointManager, FileSafeguardManager, ConfigManager, } from '../core/index.js';
12
+ import { LoopEngine, LocalMarkdownPlan, GitHubPlan, ProgressTracker, GitBranchManager, CheckpointManager, FileSafeguardManager, ConfigManager, createInitialState, } from '../core/index.js';
13
13
  /**
14
14
  * Format elapsed time as human-readable string
15
15
  */
@@ -336,8 +336,9 @@ See also:
336
336
  if (options.context) {
337
337
  contextConfig.contextGlobs = options.context;
338
338
  }
339
- // Create progress tracker
340
- const progressTracker = new ProgressTracker(undefined, maxIterations);
339
+ // Create progress tracker with verbosity setting
340
+ const progressVerbosity = config.progressVerbosity ?? 'standard';
341
+ const progressTracker = new ProgressTracker(undefined, maxIterations, progressVerbosity);
341
342
  // Create checkpoint manager for auto-commits
342
343
  const checkpointManager = new CheckpointManager({
343
344
  autoCommit: config.autoCommit,
@@ -354,6 +355,21 @@ See also:
354
355
  let totalTasksFailed = 0;
355
356
  const maxRetriesPerTask = config.maxRetriesPerTask ?? 2;
356
357
  const autoPush = config.autoPush ?? false;
358
+ const pushStrategy = config.pushStrategy ?? 'per-task';
359
+ // Compute total tasks count for commit message context (if available)
360
+ let totalTasksInPlan = 0;
361
+ if (planManager) {
362
+ try {
363
+ const allTasks = await planManager.getTasks();
364
+ totalTasksInPlan = allTasks.length;
365
+ }
366
+ catch {
367
+ // Fall back to unknown total if getTasks fails
368
+ totalTasksInPlan = 0;
369
+ }
370
+ }
371
+ // Initialize progress session for multi-task tracking
372
+ progressTracker.startSession(branchInfo?.branchName, totalTasksInPlan || undefined);
357
373
  // ========== MULTI-TASK ITERATION LOOP ==========
358
374
  // This is the core fix: process ALL tasks in the plan, not just the first one
359
375
  let currentTask = task;
@@ -398,8 +414,12 @@ See also:
398
414
  }
399
415
  // Create checkpoint commit after successful iterations
400
416
  if (record.success && checkpointManager.isAutoCommitEnabled()) {
417
+ // Build task context for commit message if we have plan info
418
+ const taskContext = totalTasksInPlan > 0
419
+ ? { taskNumber: totalTasksProcessed, totalTasks: totalTasksInPlan }
420
+ : undefined;
401
421
  checkpointManager
402
- .createCheckpoint(record.iteration, record.summary ?? 'iteration complete', record.tokensUsed)
422
+ .createCheckpoint(record.iteration, record.summary ?? 'iteration complete', record.tokensUsed, taskContext)
403
423
  .then((checkpoint) => {
404
424
  if (checkpoint) {
405
425
  debug(`Checkpoint created: ${checkpoint.commitHash.substring(0, 7)}`);
@@ -411,10 +431,8 @@ See also:
411
431
  // Ignore checkpoint errors
412
432
  });
413
433
  }
414
- // Save progress after each iteration
415
- progressTracker.save(state).catch(() => {
416
- // Ignore save errors
417
- });
434
+ // Update in-memory progress state (file written at task completion)
435
+ progressTracker.setCurrentTask(totalTasksProcessed, state);
418
436
  });
419
437
  events.on('error', (err) => {
420
438
  error(`Loop error: ${err.message}`);
@@ -443,17 +461,24 @@ See also:
443
461
  await planManager.completeTask(activeTask.id);
444
462
  info(`Task marked as complete in plan file`);
445
463
  }
446
- // Document result in progress file
447
- await progressTracker.appendTaskResult(activeTask, 'completed', taskAttempt, `Completed in ${finalState.iteration} iterations`);
464
+ // Document result in progress file using session-based tracking
465
+ await progressTracker.recordTaskCompletion(finalState, 'completed', taskAttempt, `Completed in ${finalState.iteration} iterations`);
466
+ // Build task context for commit message if we have plan info
467
+ const taskContext = totalTasksInPlan > 0
468
+ ? { taskNumber: totalTasksProcessed, totalTasks: totalTasksInPlan }
469
+ : undefined;
448
470
  // Create a task-level checkpoint commit
449
- await checkpointManager.createTaskCheckpoint(activeTask.title, activeTask.id, `Task completed in ${finalState.iteration} iterations`);
450
- // Push to remote if configured
451
- if (autoPush && isGitRepo) {
471
+ await checkpointManager.createTaskCheckpoint(activeTask.title, activeTask.id, `Task completed in ${finalState.iteration} iterations`, taskContext);
472
+ // Push to remote if configured (per-task strategy)
473
+ if (autoPush && pushStrategy === 'per-task' && isGitRepo) {
452
474
  info('Pushing changes to remote...');
453
475
  const pushed = await gitManager.pushToRemote();
454
476
  if (pushed) {
455
477
  success('Changes pushed to remote');
456
478
  }
479
+ else {
480
+ warn('Failed to push changes to remote');
481
+ }
457
482
  }
458
483
  success(`✓ Task completed: ${activeTask.title}`);
459
484
  totalTasksCompleted++;
@@ -461,16 +486,16 @@ See also:
461
486
  else if (finalState.status === 'stopped') {
462
487
  // User requested stop - exit the entire run
463
488
  warn('Loop was stopped by user');
464
- // Document the stop
465
- await progressTracker.appendTaskResult(activeTask, 'stuck', taskAttempt, 'Stopped by user');
489
+ // Document the stop using session-based tracking
490
+ await progressTracker.recordTaskCompletion(finalState, 'stuck', taskAttempt, 'Stopped by user');
466
491
  // Exit the multi-task loop
467
492
  currentTask = null;
468
493
  continue;
469
494
  }
470
495
  else if (finalState.status === 'failed') {
471
496
  warn(`✗ Task attempt ${taskAttempt} failed: ${activeTask.title}`);
472
- // Document failure for learning
473
- await progressTracker.appendTaskResult(activeTask, 'failed', taskAttempt, 'Loop execution failed');
497
+ // Document failure for learning using session-based tracking
498
+ await progressTracker.recordTaskCompletion(finalState, 'failed', taskAttempt, 'Loop execution failed');
474
499
  // Create failure checkpoint
475
500
  await checkpointManager.createFailureCheckpoint(activeTask.title, activeTask.id, taskAttempt, 'Loop execution failed');
476
501
  }
@@ -479,8 +504,13 @@ See also:
479
504
  loopSpinner.fail('Loop failed');
480
505
  const errMsg = err instanceof Error ? err.message : String(err);
481
506
  error(errMsg);
482
- // Document failure
483
- await progressTracker.appendTaskResult(activeTask, 'failed', taskAttempt, undefined, errMsg);
507
+ // Document failure using session-based tracking with minimal error state
508
+ const errorState = {
509
+ ...createInitialState(activeTask),
510
+ status: 'failed',
511
+ endedAt: new Date(),
512
+ };
513
+ await progressTracker.recordTaskCompletion(errorState, 'failed', taskAttempt, undefined, errMsg);
484
514
  // Create failure checkpoint
485
515
  await checkpointManager.createFailureCheckpoint(activeTask.title, activeTask.id, taskAttempt, errMsg);
486
516
  }
@@ -525,6 +555,23 @@ See also:
525
555
  console.log(` ${dim('Tasks failed:')} ${totalTasksFailed}`);
526
556
  console.log(` ${dim('Elapsed time:')} ${formatElapsedTime(startTime)}`);
527
557
  console.log('');
558
+ // Push to remote if configured (per-run strategy)
559
+ if (autoPush && pushStrategy === 'per-run' && isGitRepo && totalTasksCompleted > 0) {
560
+ info('Pushing all changes to remote...');
561
+ const pushed = await gitManager.pushToRemote();
562
+ if (pushed) {
563
+ success('All changes pushed to remote');
564
+ }
565
+ else {
566
+ warn('Failed to push changes to remote');
567
+ }
568
+ }
569
+ // Show informational message when push is disabled but changes were made
570
+ if (!autoPush && isGitRepo && totalTasksCompleted > 0) {
571
+ console.log('');
572
+ info('💡 Changes committed locally. Review and push manually with: git push');
573
+ info(' To enable auto-push, set "autoPush": true in .ghcralph/config.json');
574
+ }
528
575
  if (totalTasksFailed === 0 && totalTasksCompleted > 0) {
529
576
  success(`🎉 All ${totalTasksCompleted} tasks completed successfully!`);
530
577
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run.js","sourceRoot":"","sources":["../../src/commands/run.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAClC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAE9C,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,EACL,UAAU,EACV,iBAAiB,EACjB,UAAU,EACV,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,oBAAoB,EACpB,aAAa,EACb,kBAAkB,GAInB,MAAM,kBAAkB,CAAC;AAiB1B;;GAEG;AACH,SAAS,iBAAiB,CAAC,SAAe;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC,OAAO,EAAE,CAAC;IACjD,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IAEzC,IAAI,OAAO,GAAG,CAAC,EAAE,CAAC;QAChB,OAAO,GAAG,OAAO,KAAK,OAAO,GAAG,EAAE,GAAG,CAAC;IACxC,CAAC;IACD,OAAO,GAAG,OAAO,GAAG,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IAC9C,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACrD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;IACxB,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;IAC3D,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,OAAe;IAC5C,OAAO,0BAA0B,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AAClD,CAAC;AAED,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,+BAA+B,EAAE;YAC/C,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC,IAAI,EAAE,CAAC;IACZ,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,UAAU,CAAC,OAAmB;IAC3C,IAAI,OAAe,CAAC;IACpB,IAAI,KAAa,CAAC;IAElB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;IACvB,CAAC;SAAM,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACxB,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;QACvB,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAClF,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,CAAC;IACtC,CAAC;IAED,OAAO;QACL,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,EAAE;QACxB,KAAK;QACL,OAAO;QACP,MAAM,EAAE,SAAS;QACjB,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;KACzC,CAAC;AACJ,CAAC;AAED;;GAEG;AACH,SAAS,mBAAmB,CAAC,MAAkB;IAC7C,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAE9B,MAAM,OAAO,GAAG,GAAS,EAAE;QACzB,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,CAAC,kCAAkC,CAAC,CAAC;YACzC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,iBAAiB,GAAG,IAAI,CAAC;QACzB,IAAI,CAAC,sDAAsD,CAAC,CAAC;QAC7D,MAAM,CAAC,IAAI,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAC9B,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAE/B,OAAO,GAAG,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAClC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAgB;IACjD,OAAO;SACJ,OAAO,CAAC,KAAK,CAAC;SACd,WAAW,CAAC,gCAAgC,CAAC;SAC7C,MAAM,CAAC,0BAA0B,EAAE,0BAA0B,CAAC;SAC9D,MAAM,CAAC,mBAAmB,EAAE,wCAAwC,CAAC;SACrE,MAAM,CAAC,cAAc,EAAE,yEAAyE,CAAC;SACjG,MAAM,CAAC,yBAAyB,EAAE,iDAAiD,CAAC;SACpF,MAAM,CAAC,qBAAqB,EAAE,sCAAsC,CAAC;SACrE,MAAM,CAAC,SAAS,EAAE,kCAAkC,CAAC;SACrD,MAAM,CAAC,aAAa,EAAE,+BAA+B,CAAC;SACtD,MAAM,CAAC,qBAAqB,EAAE,6BAA6B,CAAC;SAC5D,MAAM,CAAC,gBAAgB,EAAE,sCAAsC,CAAC;SAChE,MAAM,CAAC,WAAW,EAAE,0CAA0C,CAAC;SAC/D,MAAM,CAAC,uBAAuB,EAAE,4DAA4D,CAAC;SAC7F,WAAW,CAAC,OAAO,EAAE;;;;;;;;;;;;;;;;;CAiBzB,CAAC;SACG,MAAM,CAAC,KAAK,EAAE,OAAmB,EAAE,EAAE;QACpC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACtD,KAAK,CAAC,wDAAwD,CAAC,CAAC;YAChE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,MAAM,OAAO,GAAG,UAAU,EAAE,CAAC;QAC7B,MAAM,aAAa,GAAG,IAAI,aAAa,CAAC,OAAO,IAAI,SAAS,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,IAAI,EAAE,CAAC;QAE1C,MAAM,aAAa,GAAG,MAAM,CAAC,aAAa,CAAC;QAC3C,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QACnC,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC;QAElC,IAAI,kBAAkB,GAAG,CAAC,CAAC;QAC3B,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,MAAM,aAAa,GAAG,mBAAmB,CAAC,OAAO,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;YACtE,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,CAAC;gBACzB,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAC;gBACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,IAAI,aAAa,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;gBACtC,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,uBAAuB,CAAC,CAAC;gBACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YACD,kBAAkB,GAAG,aAAa,CAAC,KAAK,CAAC;QAC3C,CAAC;QAED,2BAA2B;QAC3B,IAAI,aAAa,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YAC7C,KAAK,CAAC,mDAAmD,CAAC,CAAC;YAC3D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,IAAI,UAA8B,CAAC;QACnC,IAAI,WAA+B,CAAC;QACpC,IAAI,eAAmC,CAAC;QACxC,IAAI,cAAkC,CAAC;QAEvC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;YAC/B,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,KAAK,CACH,8FAA8F,CAC/F,CAAC;gBACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YAClB,CAAC;YAED,WAAW,GAAG,MAAM,CAAC,WAAW,CAAC;YACjC,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;YACzC,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;QACzC,CAAC;QAED,wDAAwD;QACxD,IAAI,IAAU,CAAC;QACf,IAAI,WAAW,GAAuB,IAAI,CAAC;QAC3C,IAAI,YAAgC,CAAC;QAErC,IAAI,CAAC;YACH,IAAI,UAAU,EAAE,CAAC;gBACf,mBAAmB;gBACnB,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBACvB,KAAK,CAAC,iDAAiD,CAAC,CAAC;oBACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBACD,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;gBAC5B,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,EAAE,CAAC;oBACpB,KAAK,CAAC,iDAAiD,CAAC,CAAC;oBACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBAED,+BAA+B;gBAC/B,MAAM,QAAQ,GAMV;oBACF,KAAK;oBACL,IAAI;iBACL,CAAC;gBACF,IAAI,WAAW;oBAAE,QAAQ,CAAC,KAAK,GAAG,WAAW,CAAC;gBAC9C,IAAI,eAAe;oBAAE,QAAQ,CAAC,SAAS,GAAG,eAAe,CAAC;gBAC1D,IAAI,cAAc;oBAAE,QAAQ,CAAC,QAAQ,GAAG,cAAc,CAAC;gBAEvD,WAAW,GAAG,IAAI,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACvC,MAAM,WAAW,CAAC,UAAU,EAAE,CAAC;gBAC/B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;gBACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;oBACd,OAAO,CAAC,0BAA0B,CAAC,CAAC;oBACpC,OAAO;gBACT,CAAC;gBACD,IAAI,GAAG,QAAQ,CAAC;gBAChB,MAAM,WAAW,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACrC,IAAI,CAAC,+BAA+B,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;YACpD,CAAC;iBAAM,CAAC;gBACN,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;gBAE7B,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC;oBAChD,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;oBAChD,MAAM,UAAU,GAAG,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,WAAW,CAAC;oBAExD,IAAI,UAAU,IAAI,qBAAqB,CAAC,OAAO,CAAC,EAAE,CAAC;wBACjD,WAAW,GAAG,IAAI,iBAAiB,CAAC,OAAO,CAAC,CAAC;wBAC7C,YAAY,GAAG,OAAO,CAAC;wBACvB,MAAM,WAAW,CAAC,UAAU,EAAE,CAAC;wBAC/B,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;wBACjD,IAAI,CAAC,QAAQ,EAAE,CAAC;4BACd,OAAO,CAAC,qCAAqC,CAAC,CAAC;4BAC/C,OAAO;wBACT,CAAC;wBACD,IAAI,GAAG,QAAQ,CAAC;wBAChB,IAAI,CAAC,4BAA4B,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjD,CAAC;yBAAM,CAAC;wBACN,IAAI,GAAG;4BACL,EAAE,EAAE,QAAQ,IAAI,CAAC,GAAG,EAAE,EAAE;4BACxB,KAAK,EAAE,OAAO;4BACd,OAAO;4BACP,MAAM,EAAE,SAAS;4BACjB,MAAM,EAAE,OAAO;yBAChB,CAAC;oBACJ,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;YACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;QAED,qBAAqB;QACrB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,IAAI,UAAU,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,mBAAmB,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;YACvE,IAAI,WAAW,EAAE,CAAC;gBAChB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;YAChE,CAAC;YACD,IAAI,eAAe,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,mBAAmB,CAAC,IAAI,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;YACxE,CAAC;YACD,IAAI,cAAc,EAAE,CAAC;gBACnB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,kBAAkB,CAAC,IAAI,IAAI,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;YACtE,CAAC;QACH,CAAC;aAAM,IAAI,YAAY,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACjD,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,iBAAiB,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;QAC5D,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,aAAa,CAAC,IAAI,SAAS,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;QAErE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,IAAI,CAAC,wCAAwC,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC;YAClC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,qCAAqC,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,6BAA6B;QAC7B,MAAM,UAAU,GAAG,IAAI,gBAAgB,CAAC,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,CAAC,CAAC;QAC/E,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,eAAe,EAAE,CAAC;QACrD,IAAI,UAAU,GAA4E,IAAI,CAAC;QAE/F,IAAI,SAAS,EAAE,CAAC;YACd,iCAAiC;YACjC,MAAM,gBAAgB,GAAG,MAAM,UAAU,CAAC,mBAAmB,EAAE,CAAC;YAEhE,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAChD,IAAI,CAAC,yBAAyB,gBAAgB,CAAC,aAAa,uBAAuB,gBAAgB,CAAC,cAAc,kBAAkB,CAAC,CAAC;gBACtI,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBAE1E,yBAAyB;gBACzB,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;oBACpB,MAAM,OAAO,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC;oBAChD,IAAI,OAAO,EAAE,CAAC;wBACZ,IAAI,CAAC,+BAA+B,CAAC,CAAC;oBACxC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,+BAA+B;YAC/B,MAAM,aAAa,GAAG,MAAM,UAAU,CAAC,gBAAgB,EAAE,CAAC;YAE1D,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;gBACzB,kDAAkD;gBAClD,MAAM,aAAa,GAAyC,EAAE,CAAC;gBAC/D,IAAI,OAAO,CAAC,MAAM;oBAAE,aAAa,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;gBAC1D,IAAI,OAAO,CAAC,KAAK;oBAAE,aAAa,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;gBAEvD,UAAU,GAAG,MAAM,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;gBAEtF,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;oBACvB,OAAO,CAAC,mCAAmC,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;gBACvE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,0BAA0B,UAAU,CAAC,UAAU,GAAG,CAAC,CAAC;gBAC3D,CAAC;YACH,CAAC;iBAAM,IAAI,CAAC,aAAa,CAAC,aAAa,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;gBAC1D,qDAAqD;gBACrD,IAAI,CAAC,qBAAqB,aAAa,CAAC,IAAI,qBAAqB,CAAC,CAAC;gBACnE,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBAC1E,UAAU,GAAG,EAAE,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;YACtG,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,EAAE,UAAU,EAAE,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,CAAC,IAAI,EAAE,CAAC;gBACpG,KAAK,CAAC,yBAAyB,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;YACvD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;QAED,gEAAgE;QAChE,MAAM,aAAa,GAKf;YACF,cAAc,EAAE,IAAI;YACpB,iBAAiB,EAAE,IAAI;YACvB,uBAAuB,EAAE,IAAI;SAC9B,CAAC;QACF,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACpB,aAAa,CAAC,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/C,CAAC;QAED,iDAAiD;QACjD,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,UAAU,CAAC;QACjE,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,SAAS,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;QAEzF,6CAA6C;QAC7C,MAAM,iBAAiB,GAAG,IAAI,iBAAiB,CAAC;YAC9C,UAAU,EAAE,MAAM,CAAC,UAAU;SAC9B,CAAC,CAAC;QAEH,gCAAgC;QAChC,MAAM,aAAa,GAAG,IAAI,oBAAoB,CAAC;YAC7C,mBAAmB,EAAE,OAAO,CAAC,WAAW,KAAK,IAAI;SAClD,CAAC,CAAC;QACH,MAAM,aAAa,CAAC,UAAU,EAAE,CAAC;QAEjC,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;QAC7B,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,IAAI,mBAAmB,GAAG,CAAC,CAAC;QAC5B,IAAI,mBAAmB,GAAG,CAAC,CAAC;QAC5B,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,MAAM,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,IAAI,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,IAAI,KAAK,CAAC;QAC1C,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,IAAI,UAAU,CAAC;QAEvD,sEAAsE;QACtE,IAAI,gBAAgB,GAAG,CAAC,CAAC;QACzB,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,CAAC;gBAC9C,gBAAgB,GAAG,QAAQ,CAAC,MAAM,CAAC;YACrC,CAAC;YAAC,MAAM,CAAC;gBACP,+CAA+C;gBAC/C,gBAAgB,GAAG,CAAC,CAAC;YACvB,CAAC;QACH,CAAC;QAED,sDAAsD;QACtD,eAAe,CAAC,YAAY,CAAC,UAAU,EAAE,UAAU,EAAE,gBAAgB,IAAI,SAAS,CAAC,CAAC;QAEpF,kDAAkD;QAClD,8EAA8E;QAE9E,IAAI,WAAW,GAAgB,IAAI,CAAC;QAEpC,OAAO,WAAW,EAAE,CAAC;YACnB,0EAA0E;YAC1E,MAAM,UAAU,GAAS,WAAW,CAAC;YAErC,mBAAmB,EAAE,CAAC;YACtB,IAAI,WAAW,GAAG,CAAC,CAAC;YACpB,IAAI,aAAa,GAAG,KAAK,CAAC;YAC1B,IAAI,UAAU,GAAG,KAAK,CAAC;YAEvB,IAAI,CAAC,aAAa,mBAAmB,KAAK,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;YAE9D,iEAAiE;YACjE,OAAO,CAAC,aAAa,IAAI,CAAC,UAAU,IAAI,WAAW,GAAG,iBAAiB,EAAE,CAAC;gBACxE,WAAW,EAAE,CAAC;gBAEd,IAAI,WAAW,GAAG,CAAC,EAAE,CAAC;oBACpB,IAAI,CAAC,cAAc,WAAW,IAAI,iBAAiB,cAAc,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvF,CAAC;gBAED,8EAA8E;gBAC9E,MAAM,KAAK,GAAG,IAAI,YAAY,CAAC;oBAC7B,KAAK;oBACL,mBAAmB,EAAE,IAAI;iBAC1B,CAAC,CAAC;gBAEH,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,KAAK,EAAE;oBACnC,aAAa;oBACb,SAAS;oBACT,kBAAkB;oBAClB,cAAc,EAAE,OAAO,CAAC,SAAS,KAAK,IAAI;oBAC1C,aAAa;iBACd,CAAC,CAAC;gBAEH,8CAA8C;gBAC9C,MAAM,qBAAqB,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;gBAE1D,wBAAwB;gBACxB,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;gBAElC,MAAM,CAAC,EAAE,CAAC,gBAAgB,EAAE,CAAC,SAAS,EAAE,KAAK,EAAE,EAAE;oBAC/C,KAAK,CACH,aAAa,SAAS,IAAI,aAAa,cAAc,KAAK,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,CACzF,CAAC;gBACJ,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,cAAc,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBAC1C,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;oBAC1C,IAAI,CACF,aAAa,MAAM,CAAC,SAAS,KAAK,MAAM,KAAK,MAAM,CAAC,UAAU,CAAC,cAAc,EAAE,UAAU,CAC1F,CAAC;oBACF,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACnB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC1C,CAAC;oBAED,uDAAuD;oBACvD,IAAI,MAAM,CAAC,OAAO,IAAI,iBAAiB,CAAC,mBAAmB,EAAE,EAAE,CAAC;wBAC9D,6DAA6D;wBAC7D,MAAM,WAAW,GAA4B,gBAAgB,GAAG,CAAC;4BAC/D,CAAC,CAAC,EAAE,UAAU,EAAE,mBAAmB,EAAE,UAAU,EAAE,gBAAgB,EAAE;4BACnE,CAAC,CAAC,SAAS,CAAC;wBAEd,iBAAiB;6BACd,gBAAgB,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,IAAI,oBAAoB,EAAE,MAAM,CAAC,UAAU,EAAE,WAAW,CAAC;6BAC1G,IAAI,CAAC,CAAC,UAAU,EAAE,EAAE;4BACnB,IAAI,UAAU,EAAE,CAAC;gCACf,KAAK,CAAC,uBAAuB,UAAU,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gCACtE,mCAAmC;gCACnC,KAAK,CAAC,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC;4BAC/C,CAAC;wBACH,CAAC,CAAC;6BACD,KAAK,CAAC,GAAG,EAAE;4BACV,2BAA2B;wBAC7B,CAAC,CAAC,CAAC;oBACP,CAAC;oBAED,oEAAoE;oBACpE,eAAe,CAAC,cAAc,CAAC,mBAAmB,EAAE,KAAK,CAAC,CAAC;gBAC7D,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,EAAE;oBACzB,KAAK,CAAC,eAAe,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE;oBACrC,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;gBAC9B,CAAC,CAAC,CAAC;gBAEH,6BAA6B;gBAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAAC;gBACvD,WAAW,CAAC,KAAK,EAAE,CAAC;gBAEpB,IAAI,CAAC;oBACH,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;oBAElD,WAAW,CAAC,IAAI,EAAE,CAAC;oBACnB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAEhB,0BAA0B;oBAC1B,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;oBACxD,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU,CAAC,SAAS,IAAI,aAAa,EAAE,CAAC,CAAC;oBAChF,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,cAAc,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC;oBAElF,MAAM,oBAAoB,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;oBACnF,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,wBAAwB,CAAC,IAAI,oBAAoB,EAAE,CAAC,CAAC;oBAC1E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAEhB,IAAI,UAAU,CAAC,MAAM,KAAK,WAAW,EAAE,CAAC;wBACtC,aAAa,GAAG,IAAI,CAAC;wBAErB,qDAAqD;wBACrD,IAAI,WAAW,EAAE,CAAC;4BAChB,MAAM,WAAW,CAAC,YAAY,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;4BAC9C,IAAI,CAAC,sCAAsC,CAAC,CAAC;wBAC/C,CAAC;wBAED,gEAAgE;wBAChE,MAAM,eAAe,CAAC,oBAAoB,CACxC,UAAU,EACV,WAAW,EACX,WAAW,EACX,gBAAgB,UAAU,CAAC,SAAS,aAAa,CAClD,CAAC;wBAEF,6DAA6D;wBAC7D,MAAM,WAAW,GAA4B,gBAAgB,GAAG,CAAC;4BAC/D,CAAC,CAAC,EAAE,UAAU,EAAE,mBAAmB,EAAE,UAAU,EAAE,gBAAgB,EAAE;4BACnE,CAAC,CAAC,SAAS,CAAC;wBAEd,wCAAwC;wBACxC,MAAM,iBAAiB,CAAC,oBAAoB,CAC1C,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,EAAE,EACb,qBAAqB,UAAU,CAAC,SAAS,aAAa,EACtD,WAAW,CACZ,CAAC;wBAEF,mDAAmD;wBACnD,IAAI,QAAQ,IAAI,YAAY,KAAK,UAAU,IAAI,SAAS,EAAE,CAAC;4BACzD,IAAI,CAAC,8BAA8B,CAAC,CAAC;4BACrC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC;4BAC/C,IAAI,MAAM,EAAE,CAAC;gCACX,OAAO,CAAC,0BAA0B,CAAC,CAAC;4BACtC,CAAC;iCAAM,CAAC;gCACN,IAAI,CAAC,kCAAkC,CAAC,CAAC;4BAC3C,CAAC;wBACH,CAAC;wBAED,OAAO,CAAC,qBAAqB,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;wBACjD,mBAAmB,EAAE,CAAC;oBAExB,CAAC;yBAAM,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;wBAC3C,4CAA4C;wBAC5C,IAAI,CAAC,0BAA0B,CAAC,CAAC;wBAEjC,iDAAiD;wBACjD,MAAM,eAAe,CAAC,oBAAoB,CACxC,UAAU,EACV,OAAO,EACP,WAAW,EACX,iBAAiB,CAClB,CAAC;wBAEF,2BAA2B;wBAC3B,WAAW,GAAG,IAAI,CAAC;wBACnB,SAAS;oBAEX,CAAC;yBAAM,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;wBAC1C,IAAI,CAAC,kBAAkB,WAAW,YAAY,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;wBAElE,6DAA6D;wBAC7D,MAAM,eAAe,CAAC,oBAAoB,CACxC,UAAU,EACV,QAAQ,EACR,WAAW,EACX,uBAAuB,CACxB,CAAC;wBAEF,4BAA4B;wBAC5B,MAAM,iBAAiB,CAAC,uBAAuB,CAC7C,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,EAAE,EACb,WAAW,EACX,uBAAuB,CACxB,CAAC;oBACJ,CAAC;gBACH,CAAC;gBAAC,OAAO,GAAG,EAAE,CAAC;oBACb,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;oBAChC,MAAM,MAAM,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAChE,KAAK,CAAC,MAAM,CAAC,CAAC;oBAEd,yEAAyE;oBACzE,MAAM,UAAU,GAAkB;wBAChC,GAAG,kBAAkB,CAAC,UAAU,CAAC;wBACjC,MAAM,EAAE,QAAQ;wBAChB,OAAO,EAAE,IAAI,IAAI,EAAE;qBACpB,CAAC;oBACF,MAAM,eAAe,CAAC,oBAAoB,CACxC,UAAU,EACV,QAAQ,EACR,WAAW,EACX,SAAS,EACT,MAAM,CACP,CAAC;oBAEF,4BAA4B;oBAC5B,MAAM,iBAAiB,CAAC,uBAAuB,CAC7C,UAAU,CAAC,KAAK,EAChB,UAAU,CAAC,EAAE,EACb,WAAW,EACX,MAAM,CACP,CAAC;gBACJ,CAAC;wBAAS,CAAC;oBACT,qBAAqB,EAAE,CAAC;oBACxB,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC;gBACxB,CAAC;YACH,CAAC;YAED,oDAAoD;YACpD,IAAI,CAAC,aAAa,IAAI,WAAW,EAAE,CAAC;gBAClC,UAAU,GAAG,IAAI,CAAC;gBAClB,gBAAgB,EAAE,CAAC;gBAEnB,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,WAAW,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC;gBAC5C,CAAC;gBAED,KAAK,CAAC,uBAAuB,iBAAiB,cAAc,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChF,QAAQ,GAAG,CAAC,CAAC;YACf,CAAC;YAED,sDAAsD;YACtD,IAAI,OAAO,CAAC,iBAAiB,IAAI,WAAW,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC5D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,IAAI,CAAC,8DAA8D,CAAC,CAAC;gBACrE,MAAM,eAAe,EAAE,CAAC;YAC1B,CAAC;YAED,gDAAgD;YAChD,IAAI,WAAW,EAAE,CAAC;gBAChB,mDAAmD;gBACnD,MAAM,WAAW,CAAC,MAAM,EAAE,EAAE,CAAC;gBAC7B,WAAW,GAAG,MAAM,WAAW,CAAC,WAAW,EAAE,CAAC;YAChD,CAAC;iBAAM,CAAC;gBACN,uDAAuD;gBACvD,WAAW,GAAG,IAAI,CAAC;YACrB,CAAC;QACH,CAAC;QAED,sCAAsC;QACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC;QACzC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,wBAAwB,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,kBAAkB,CAAC,IAAI,mBAAmB,EAAE,CAAC,CAAC;QACnE,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,eAAe,CAAC,IAAI,gBAAgB,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,KAAK,GAAG,CAAC,eAAe,CAAC,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,kDAAkD;QAClD,IAAI,QAAQ,IAAI,YAAY,KAAK,SAAS,IAAI,SAAS,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACnF,IAAI,CAAC,kCAAkC,CAAC,CAAC;YACzC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,YAAY,EAAE,CAAC;YAC/C,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,CAAC,8BAA8B,CAAC,CAAC;YAC1C,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,kCAAkC,CAAC,CAAC;YAC3C,CAAC;QACH,CAAC;QAED,yEAAyE;QACzE,IAAI,CAAC,QAAQ,IAAI,SAAS,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,IAAI,CAAC,uEAAuE,CAAC,CAAC;YAC9E,IAAI,CAAC,uEAAuE,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,gBAAgB,KAAK,CAAC,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACtD,OAAO,CAAC,UAAU,mBAAmB,gCAAgC,CAAC,CAAC;QACzE,CAAC;aAAM,IAAI,mBAAmB,GAAG,CAAC,EAAE,CAAC;YACnC,IAAI,CAAC,aAAa,mBAAmB,WAAW,gBAAgB,SAAS,CAAC,CAAC;QAC7E,CAAC;aAAM,IAAI,mBAAmB,KAAK,CAAC,EAAE,CAAC;YACrC,OAAO,CAAC,kDAAkD,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,QAAQ,KAAK,CAAC,EAAE,CAAC;YACnB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;IACH,CAAC,CAAC,CAAC;AACP,CAAC"}
@@ -63,7 +63,20 @@ export interface ActionExecutorConfig {
63
63
  */
64
64
  export declare class ActionExecutor {
65
65
  private config;
66
+ private failedCommands;
66
67
  constructor(config?: Partial<ActionExecutorConfig>);
68
+ /**
69
+ * Reset the failed commands tracking (call at start of each iteration)
70
+ */
71
+ resetFailedCommands(): void;
72
+ /**
73
+ * Get list of failed commands in current iteration
74
+ */
75
+ getFailedCommands(): string[];
76
+ /**
77
+ * Check if there were command failures in this iteration
78
+ */
79
+ hasFailedCommands(): boolean;
67
80
  /**
68
81
  * Execute all actions from a parsed response
69
82
  */
@@ -1 +1 @@
1
- {"version":3,"file":"action-executor.d.ts","sourceRoot":"","sources":["../../src/core/action-executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EACV,MAAM,EAON,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAI9B;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,oCAAoC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,0CAA0C;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,YAAY,CAAC,EAAE;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,4DAA4D;IAC5D,OAAO,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE;QACd,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;KACtC,CAAC;CACH;AAQD;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAuB;gBAEzB,MAAM,GAAE,OAAO,CAAC,oBAAoB,CAAM;IAItD;;OAEG;IACG,UAAU,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAyDpE;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA4C1D;;OAEG;YACW,aAAa;IAiC3B;;OAEG;YACW,WAAW;IA+CzB;;OAEG;YACW,aAAa;IA6C3B;;OAEG;YACW,cAAc;IAgC5B;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,YAAY;CAsBrB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACrC,cAAc,CAEhB"}
1
+ {"version":3,"file":"action-executor.d.ts","sourceRoot":"","sources":["../../src/core/action-executor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EACV,MAAM,EAON,WAAW,EACZ,MAAM,sBAAsB,CAAC;AAI9B;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,OAAO,EAAE,OAAO,CAAC;IACjB,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,oCAAoC;IACpC,YAAY,EAAE,OAAO,CAAC;IACtB,0CAA0C;IAC1C,YAAY,EAAE,OAAO,CAAC;IACtB,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,uCAAuC;IACvC,SAAS,EAAE,OAAO,CAAC;IACnB,qCAAqC;IACrC,YAAY,CAAC,EAAE;QACb,SAAS,EAAE,MAAM,CAAC;QAClB,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;IACF,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;IACZ,4DAA4D;IAC5D,OAAO,EAAE,OAAO,CAAC;IACjB,uCAAuC;IACvC,cAAc,EAAE,MAAM,CAAC;IACvB,qDAAqD;IACrD,aAAa,CAAC,EAAE;QACd,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC;KACtC,CAAC;CACH;AAQD;;GAEG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAuB;IACrC,OAAO,CAAC,cAAc,CAAgB;gBAE1B,MAAM,GAAE,OAAO,CAAC,oBAAoB,CAAM;IAItD;;OAEG;IACH,mBAAmB,IAAI,IAAI;IAI3B;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,iBAAiB,IAAI,OAAO;IAI5B;;OAEG;IACG,UAAU,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAwEpE;;OAEG;IACG,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,YAAY,CAAC;IA4C1D;;OAEG;YACW,aAAa;IAiC3B;;OAEG;YACW,WAAW;IA+CzB;;OAEG;YACW,aAAa;IA6C3B;;OAEG;YACW,cAAc;IAgC5B;;OAEG;IACH,OAAO,CAAC,eAAe;IASvB;;OAEG;IACH,OAAO,CAAC,YAAY;IAapB;;OAEG;IACH,OAAO,CAAC,YAAY;CAsBrB;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,GACrC,cAAc,CAEhB"}
@@ -20,9 +20,28 @@ const DEFAULT_CONFIG = {
20
20
  */
21
21
  export class ActionExecutor {
22
22
  config;
23
+ failedCommands = [];
23
24
  constructor(config = {}) {
24
25
  this.config = { ...DEFAULT_CONFIG, ...config };
25
26
  }
27
+ /**
28
+ * Reset the failed commands tracking (call at start of each iteration)
29
+ */
30
+ resetFailedCommands() {
31
+ this.failedCommands = [];
32
+ }
33
+ /**
34
+ * Get list of failed commands in current iteration
35
+ */
36
+ getFailedCommands() {
37
+ return [...this.failedCommands];
38
+ }
39
+ /**
40
+ * Check if there were command failures in this iteration
41
+ */
42
+ hasFailedCommands() {
43
+ return this.failedCommands.length > 0;
44
+ }
26
45
  /**
27
46
  * Execute all actions from a parsed response
28
47
  */
@@ -35,9 +54,22 @@ export class ActionExecutor {
35
54
  for (const action of parseResult.actions) {
36
55
  const result = await this.executeAction(action);
37
56
  results.push(result);
57
+ // Track failed EXECUTE commands for honesty checking
58
+ if (action.type === 'EXECUTE' && !result.success) {
59
+ const executeAction = action;
60
+ this.failedCommands.push(executeAction.command);
61
+ }
38
62
  if (action.type === 'COMPLETE' && result.success) {
39
63
  taskComplete = true;
40
64
  completionReason = action.reason;
65
+ // Warn if COMPLETE is used despite failed commands in this iteration
66
+ if (this.failedCommands.length > 0) {
67
+ warn(`⚠️ Task marked complete despite ${this.failedCommands.length} failed command(s):`);
68
+ for (const cmd of this.failedCommands) {
69
+ warn(` • ${cmd}`);
70
+ }
71
+ warn('This may indicate false completion - verify the implementation!');
72
+ }
41
73
  }
42
74
  if (action.type === 'STUCK' && result.success) {
43
75
  taskStuck = true;
@@ -1 +1 @@
1
- {"version":3,"file":"action-executor.js","sourceRoot":"","sources":["../../src/core/action-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"action-executor.js","sourceRoot":"","sources":["../../src/core/action-executor.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  /**
2
2
  * Checkpoint Manager
3
3
  *
4
- * Manages automatic git commits after each loop iteration
4
+ * Manages automatic git commits after each loop iteration.
5
+ * Uses a mutex to prevent race conditions when multiple git operations
6
+ * are attempted concurrently.
5
7
  */
6
8
  /**
7
9
  * Checkpoint configuration
@@ -14,6 +16,15 @@ export interface CheckpointConfig {
14
16
  /** Working directory */
15
17
  cwd: string;
16
18
  }
19
+ /**
20
+ * Task context for commit messages - provides "task X/Y" numbering
21
+ */
22
+ export interface TaskContext {
23
+ /** 1-indexed position of current task in the plan */
24
+ taskNumber: number;
25
+ /** Total number of tasks in the plan */
26
+ totalTasks: number;
27
+ }
17
28
  /**
18
29
  * Checkpoint record
19
30
  */
@@ -33,10 +44,14 @@ export interface Checkpoint {
33
44
  }
34
45
  /**
35
46
  * Checkpoint Manager class
47
+ *
48
+ * Provides thread-safe git operations using a mutex to prevent
49
+ * concurrent access that causes "index.lock" and "HEAD locked" errors.
36
50
  */
37
51
  export declare class CheckpointManager {
38
52
  private config;
39
53
  private checkpoints;
54
+ private gitMutex;
40
55
  constructor(config?: Partial<CheckpointConfig>);
41
56
  /**
42
57
  * Check if auto-commit is enabled
@@ -54,44 +69,68 @@ export declare class CheckpointManager {
54
69
  * Check if there are any modified files to commit
55
70
  */
56
71
  hasChangesToCommit(): Promise<boolean>;
72
+ /**
73
+ * Internal: Check for changes without acquiring mutex
74
+ */
75
+ private hasChangesToCommitUnsafe;
57
76
  /**
58
77
  * Get list of modified files
59
78
  */
60
79
  getModifiedFiles(): Promise<string[]>;
80
+ /**
81
+ * Internal: Get modified files without acquiring mutex
82
+ */
83
+ private getModifiedFilesUnsafe;
61
84
  /**
62
85
  * Stage all modified files
63
86
  */
64
87
  stageAllChanges(): Promise<boolean>;
65
88
  /**
66
- * Create a checkpoint commit
89
+ * Internal: Stage changes without acquiring mutex
90
+ */
91
+ private stageAllChangesUnsafe;
92
+ /**
93
+ * Create a checkpoint commit (mutex-protected)
94
+ * @param iteration - Iteration number within the current task
95
+ * @param summary - Summary of changes made
96
+ * @param tokensUsed - Tokens used in this iteration
97
+ * @param taskContext - Optional task context for "task X/Y" numbering in commit message
67
98
  */
68
- createCheckpoint(iteration: number, summary: string, tokensUsed: number): Promise<Checkpoint | null>;
99
+ createCheckpoint(iteration: number, summary: string, tokensUsed: number, taskContext?: TaskContext): Promise<Checkpoint | null>;
69
100
  /**
70
- * Rollback to a specific checkpoint
101
+ * Rollback to a specific checkpoint (mutex-protected)
71
102
  */
72
103
  rollbackTo(commitHash: string): Promise<boolean>;
73
104
  /**
74
- * Hard rollback to a specific checkpoint (discard changes)
105
+ * Hard rollback to a specific checkpoint (mutex-protected)
75
106
  */
76
107
  hardRollbackTo(commitHash: string): Promise<boolean>;
77
108
  /**
78
- * Rollback by N iterations
109
+ * Rollback by N iterations (mutex-protected)
79
110
  */
80
111
  rollbackIterations(count?: number): Promise<boolean>;
81
112
  /**
82
- * Get the initial commit hash before Ralph started
113
+ * Internal: Hard rollback without acquiring mutex
114
+ */
115
+ private hardRollbackToUnsafe;
116
+ /**
117
+ * Get the initial commit hash before Ralph started (mutex-protected)
83
118
  */
84
119
  getInitialCommit(): Promise<string | null>;
85
120
  /**
86
- * Rollback all Ralph changes (to state before Ralph started)
121
+ * Rollback all Ralph changes (mutex-protected)
87
122
  */
88
123
  rollbackAll(): Promise<boolean>;
89
124
  /**
90
- * Create a task completion checkpoint commit
125
+ * Create a task completion checkpoint commit (mutex-protected)
126
+ * @param taskTitle - Title of the completed task
127
+ * @param taskId - ID of the completed task
128
+ * @param summary - Summary of the task completion
129
+ * @param taskContext - Optional task context for "task X/Y" numbering in commit message
91
130
  */
92
- createTaskCheckpoint(taskTitle: string, taskId: string, summary: string): Promise<Checkpoint | null>;
131
+ createTaskCheckpoint(taskTitle: string, taskId: string, summary: string, taskContext?: TaskContext): Promise<Checkpoint | null>;
93
132
  /**
94
- * Create a failure checkpoint commit (preserves state for post-mortem)
133
+ * Create a failure checkpoint commit (mutex-protected)
95
134
  */
96
135
  createFailureCheckpoint(taskTitle: string, taskId: string, attempt: number, error?: string): Promise<Checkpoint | null>;
97
136
  }
@@ -1 +1 @@
1
- {"version":3,"file":"checkpoint-manager.d.ts","sourceRoot":"","sources":["../../src/core/checkpoint-manager.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kEAAkE;IAClE,UAAU,EAAE,OAAO,CAAC;IACpB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,wBAAwB;IACxB,GAAG,EAAE,MAAM,CAAC;CACb;AAWD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,8BAA8B;IAC9B,SAAS,EAAE,IAAI,CAAC;IAChB,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,WAAW,CAAoB;gBAE3B,MAAM,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAIlD;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,cAAc,IAAI,UAAU,EAAE;IAI9B;;OAEG;IACH,iBAAiB,IAAI,UAAU,GAAG,IAAI;IAQtC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAS5C;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAa3C;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAWzC;;OAEG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAyD7B;;OAEG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYtD;;OAEG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAW1D;;OAEG;IACG,kBAAkB,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IA8B7D;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAgBhD;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAUrC;;OAEG;IACG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAyD7B;;OAEG;IACG,uBAAuB,CAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CAyD9B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,iBAAiB,CAE7F"}
1
+ {"version":3,"file":"checkpoint-manager.d.ts","sourceRoot":"","sources":["../../src/core/checkpoint-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,kEAAkE;IAClE,UAAU,EAAE,OAAO,CAAC;IACpB,wDAAwD;IACxD,aAAa,EAAE,MAAM,CAAC;IACtB,wBAAwB;IACxB,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,qDAAqD;IACrD,UAAU,EAAE,MAAM,CAAC;IACnB,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;CACpB;AA6BD;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,uBAAuB;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,qBAAqB;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,oCAAoC;IACpC,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,8BAA8B;IAC9B,SAAS,EAAE,IAAI,CAAC;IAChB,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,WAAW,CAAoB;IACvC,OAAO,CAAC,QAAQ,CAAsB;gBAE1B,MAAM,GAAE,OAAO,CAAC,gBAAgB,CAAM;IAIlD;;OAEG;IACH,mBAAmB,IAAI,OAAO;IAI9B;;OAEG;IACH,cAAc,IAAI,UAAU,EAAE;IAI9B;;OAEG;IACH,iBAAiB,IAAI,UAAU,GAAG,IAAI;IAQtC;;OAEG;IACG,kBAAkB,IAAI,OAAO,CAAC,OAAO,CAAC;IAI5C;;OAEG;YACW,wBAAwB;IAStC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAI3C;;OAEG;YACW,sBAAsB;IAapC;;OAEG;IACG,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAIzC;;OAEG;YACW,qBAAqB;IAWnC;;;;;;OAMG;IACG,gBAAgB,CACpB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IAgE7B;;OAEG;IACG,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IActD;;OAEG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa1D;;OAEG;IACG,kBAAkB,CAAC,KAAK,GAAE,MAAU,GAAG,OAAO,CAAC,OAAO,CAAC;IAiC7D;;OAEG;YACW,oBAAoB;IAWlC;;OAEG;IACG,gBAAgB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAkBhD;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAqBrC;;;;;;OAMG;IACG,oBAAoB,CACxB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;IA8D7B;;OAEG;IACG,uBAAuB,CAC3B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,UAAU,GAAG,IAAI,CAAC;CA2D9B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAC,GAAG,iBAAiB,CAE7F"}