erosolar-cli 2.1.282 → 2.1.283

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.
@@ -15,7 +15,28 @@
15
15
  * - Analysis: Code quality, performance, patterns
16
16
  * - Git: Status, commits, branches, diffs
17
17
  */
18
+ import { EventEmitter } from 'node:events';
18
19
  import * as fs from 'fs';
20
+ export type OrchestratorEventType = 'command:start' | 'command:complete' | 'command:error' | 'finding:detected' | 'phase:change' | 'progress:update';
21
+ export interface OrchestratorEvent {
22
+ type: OrchestratorEventType;
23
+ timestamp: number;
24
+ data: unknown;
25
+ }
26
+ export interface CommandStartEvent {
27
+ command: string;
28
+ index: number;
29
+ total?: number;
30
+ }
31
+ export interface CommandCompleteEvent {
32
+ command: string;
33
+ result: ExecutionResult;
34
+ duration: number;
35
+ }
36
+ export interface PhaseChangeEvent {
37
+ phase: string;
38
+ objective: string;
39
+ }
19
40
  export interface ExecutionResult {
20
41
  success: boolean;
21
42
  output: string;
@@ -78,13 +99,30 @@ export interface Task {
78
99
  timeout?: number;
79
100
  optional?: boolean;
80
101
  }
81
- export declare class UnifiedOrchestrator {
102
+ export declare class UnifiedOrchestrator extends EventEmitter {
82
103
  private workingDir;
83
104
  private results;
84
105
  private findings;
85
106
  private backgroundProcesses;
107
+ private commandIndex;
108
+ private currentPhase;
109
+ private currentObjective;
86
110
  constructor(workingDir?: string);
87
- /** Execute a shell command */
111
+ /** Emit an orchestrator event */
112
+ private emitOrchestratorEvent;
113
+ /** Set current phase and emit event */
114
+ private setPhase;
115
+ /** Subscribe to all orchestrator events */
116
+ onEvent(callback: (event: OrchestratorEvent) => void): () => void;
117
+ /** Subscribe to command events */
118
+ onCommand(callback: (event: OrchestratorEvent) => void): () => void;
119
+ /** Subscribe to finding events */
120
+ onFinding(callback: (finding: Finding) => void): () => void;
121
+ /** Get current execution phase */
122
+ getPhase(): string;
123
+ /** Get current objective */
124
+ getObjective(): string;
125
+ /** Execute a shell command with event emission */
88
126
  exec(command: string, timeout?: number): ExecutionResult;
89
127
  /** Execute multiple commands sequentially */
90
128
  execMany(commands: string[], timeout?: number): ExecutionResult[];
@@ -202,19 +240,31 @@ export declare class UnifiedOrchestrator {
202
240
  getEnv(key?: string): string | Record<string, string | undefined>;
203
241
  /** Analyze output and extract findings */
204
242
  analyze(output: string, context?: string): Finding[];
205
- /** Add a custom finding */
243
+ /** Add a custom finding with event emission */
206
244
  addFinding(finding: Finding): void;
207
245
  /** Get all findings */
208
246
  getFindings(): Finding[];
209
247
  /** Get all results */
210
248
  getResults(): ExecutionResult[];
211
- /** Reset state */
249
+ /** Reset state for new operation */
212
250
  reset(): void;
251
+ /**
252
+ * Collapse duplicate findings into a single entry while preserving useful evidence.
253
+ */
254
+ private dedupeFindings;
255
+ private buildFindingKey;
256
+ private mergeEvidence;
257
+ /**
258
+ * Derive a consistent completion reason so the UI can present concise guidance.
259
+ */
260
+ private determineExitReason;
261
+ private buildStatusSummary;
213
262
  /** Generate comprehensive report */
214
263
  generateReport(objective?: string): OperationReport;
215
264
  /**
216
265
  * Execute operations based on objective analysis.
217
266
  * Automatically selects and runs appropriate tools based on the objective.
267
+ * Emits real-time events for UI integration.
218
268
  */
219
269
  execute(config: OperationConfig): Promise<OperationReport>;
220
270
  /** Check if objective matches any of the intent keywords */
@@ -1 +1 @@
1
- {"version":3,"file":"unifiedOrchestrator.d.ts","sourceRoot":"","sources":["../../src/core/unifiedOrchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unifiedOrchestrator.d.ts","sourceRoot":"","sources":["../../src/core/unifiedOrchestrator.ts"],"names":[],"mappings":"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"}
@@ -16,6 +16,7 @@
16
16
  * - Git: Status, commits, branches, diffs
17
17
  */
18
18
  import { execSync, spawn } from 'child_process';
19
+ import { EventEmitter } from 'node:events';
19
20
  import * as fs from 'fs';
20
21
  import * as path from 'path';
21
22
  import * as crypto from 'crypto';
@@ -23,20 +24,85 @@ import * as os from 'os';
23
24
  // ============================================================================
24
25
  // UNIFIED ORCHESTRATOR - Comprehensive Tool Set
25
26
  // ============================================================================
26
- export class UnifiedOrchestrator {
27
+ export class UnifiedOrchestrator extends EventEmitter {
27
28
  workingDir;
28
29
  results = [];
29
30
  findings = [];
30
31
  backgroundProcesses = new Map();
32
+ commandIndex = 0;
33
+ currentPhase = 'idle';
34
+ currentObjective = '';
31
35
  constructor(workingDir) {
36
+ super();
32
37
  this.workingDir = workingDir || process.cwd();
33
38
  }
34
39
  // ==========================================================================
40
+ // EVENT EMISSION - For UI integration
41
+ // ==========================================================================
42
+ /** Emit an orchestrator event */
43
+ emitOrchestratorEvent(type, data) {
44
+ const event = {
45
+ type,
46
+ timestamp: Date.now(),
47
+ data,
48
+ };
49
+ this.emit(type, event);
50
+ this.emit('orchestrator:event', event);
51
+ }
52
+ /** Set current phase and emit event */
53
+ setPhase(phase) {
54
+ this.currentPhase = phase;
55
+ this.emitOrchestratorEvent('phase:change', {
56
+ phase,
57
+ objective: this.currentObjective,
58
+ });
59
+ }
60
+ /** Subscribe to all orchestrator events */
61
+ onEvent(callback) {
62
+ this.on('orchestrator:event', callback);
63
+ return () => this.off('orchestrator:event', callback);
64
+ }
65
+ /** Subscribe to command events */
66
+ onCommand(callback) {
67
+ const handler = (event) => {
68
+ if (event.type.startsWith('command:')) {
69
+ callback(event);
70
+ }
71
+ };
72
+ this.on('orchestrator:event', handler);
73
+ return () => this.off('orchestrator:event', handler);
74
+ }
75
+ /** Subscribe to finding events */
76
+ onFinding(callback) {
77
+ const handler = (event) => {
78
+ if (event.type === 'finding:detected') {
79
+ callback(event.data);
80
+ }
81
+ };
82
+ this.on('orchestrator:event', handler);
83
+ return () => this.off('orchestrator:event', handler);
84
+ }
85
+ /** Get current execution phase */
86
+ getPhase() {
87
+ return this.currentPhase;
88
+ }
89
+ /** Get current objective */
90
+ getObjective() {
91
+ return this.currentObjective;
92
+ }
93
+ // ==========================================================================
35
94
  // CORE EXECUTION TOOLS
36
95
  // ==========================================================================
37
- /** Execute a shell command */
96
+ /** Execute a shell command with event emission */
38
97
  exec(command, timeout = 60000) {
39
98
  const start = Date.now();
99
+ this.commandIndex++;
100
+ // Emit start event
101
+ this.emitOrchestratorEvent('command:start', {
102
+ command,
103
+ index: this.commandIndex,
104
+ total: undefined, // Unknown total for single commands
105
+ });
40
106
  try {
41
107
  const output = execSync(command, {
42
108
  cwd: this.workingDir,
@@ -45,15 +111,29 @@ export class UnifiedOrchestrator {
45
111
  maxBuffer: 50 * 1024 * 1024,
46
112
  stdio: ['pipe', 'pipe', 'pipe'],
47
113
  });
48
- const result = { success: true, output: output || '', duration: Date.now() - start, command, exitCode: 0 };
114
+ const duration = Date.now() - start;
115
+ const result = { success: true, output: output || '', duration, command, exitCode: 0 };
49
116
  this.results.push(result);
117
+ // Emit complete event
118
+ this.emitOrchestratorEvent('command:complete', {
119
+ command,
120
+ result,
121
+ duration,
122
+ });
50
123
  return result;
51
124
  }
52
125
  catch (e) {
53
126
  const err = e;
54
127
  const output = (err.stdout || err.stderr || err.message || '');
55
- const result = { success: false, output, error: err.message, duration: Date.now() - start, command, exitCode: err.status };
128
+ const duration = Date.now() - start;
129
+ const result = { success: false, output, error: err.message, duration, command, exitCode: err.status };
56
130
  this.results.push(result);
131
+ // Emit error event
132
+ this.emitOrchestratorEvent('command:error', {
133
+ command,
134
+ result,
135
+ duration,
136
+ });
57
137
  return result;
58
138
  }
59
139
  }
@@ -181,8 +261,7 @@ export class UnifiedOrchestrator {
181
261
  persistenceCheck() {
182
262
  return this.execMany([
183
263
  'crontab -l 2>/dev/null || echo "No crontab"',
184
- 'ls -la ~/.ssh 2>/dev/null',
185
- 'cat ~/.ssh/authorized_keys 2>/dev/null | head -10 || echo "No authorized_keys"',
264
+ 'echo "Skipped ~/.ssh inspection (out of scope for workspace-limited run)"',
186
265
  'ls -la /Library/LaunchDaemons 2>/dev/null | head -20',
187
266
  'ls -la ~/Library/LaunchAgents 2>/dev/null | head -20',
188
267
  'grep -l "curl\\|wget\\|python\\|bash" ~/.bashrc ~/.zshrc ~/.bash_profile 2>/dev/null || echo "No suspicious profile entries"',
@@ -297,13 +376,13 @@ export class UnifiedOrchestrator {
297
376
  /** Credential hunting */
298
377
  credentialHunt() {
299
378
  return this.execMany([
300
- 'grep -rn "password\\|passwd\\|secret\\|api.key\\|apikey\\|token\\|credential" --include="*.json" --include="*.yml" --include="*.yaml" --include="*.conf" --include="*.config" --include="*.env" . 2>/dev/null | grep -v node_modules | head -30 || echo "No credentials in config files"',
301
- 'find ~ -name ".env" -o -name ".env.*" -o -name "*.pem" -o -name "*.key" 2>/dev/null | head -20',
302
- 'find ~ -name "id_rsa" -o -name "id_ed25519" -o -name "*.ppk" 2>/dev/null | head -10',
303
- 'ls -la ~/.aws/credentials 2>/dev/null; cat ~/.aws/credentials 2>/dev/null | head -10 || echo "No AWS credentials"',
304
- 'ls -la ~/.ssh 2>/dev/null',
305
- 'cat ~/.gitconfig 2>/dev/null | head -20',
306
- 'cat ~/.netrc 2>/dev/null || echo "No .netrc"',
379
+ 'grep -rn "password\\|passwd\\|secret\\|api.key\\|apikey\\|token\\|credential" --include="*.json" --include="*.yml" --include="*.yaml" --include="*.conf" --include="*.config" --include="*.env" . 2>/dev/null | grep -v node_modules | head -30 || echo "No credentials in config files (workspace)"',
380
+ 'find . -name ".env" -o -name ".env.*" -o -name "*.pem" -o -name "*.key" 2>/dev/null | head -20',
381
+ 'find . -name "id_rsa" -o -name "id_ed25519" -o -name "*.ppk" 2>/dev/null | head -10',
382
+ 'echo "Skipped ~/.aws credentials scan (out of scope)"',
383
+ 'echo "Skipped ~/.ssh scan (out of scope)"',
384
+ 'echo "Skipped ~/.gitconfig scan (out of scope)"',
385
+ 'echo "Skipped ~/.netrc scan (out of scope)"',
307
386
  ]);
308
387
  }
309
388
  /** Network attack surface mapping */
@@ -629,11 +708,16 @@ export class UnifiedOrchestrator {
629
708
  });
630
709
  }
631
710
  this.findings.push(...findings);
711
+ // Emit finding events for real-time UI updates
712
+ for (const finding of findings) {
713
+ this.emitOrchestratorEvent('finding:detected', finding);
714
+ }
632
715
  return findings;
633
716
  }
634
- /** Add a custom finding */
717
+ /** Add a custom finding with event emission */
635
718
  addFinding(finding) {
636
719
  this.findings.push(finding);
720
+ this.emitOrchestratorEvent('finding:detected', finding);
637
721
  }
638
722
  /** Get all findings */
639
723
  getFindings() {
@@ -643,20 +727,99 @@ export class UnifiedOrchestrator {
643
727
  getResults() {
644
728
  return this.results;
645
729
  }
646
- /** Reset state */
730
+ /** Reset state for new operation */
647
731
  reset() {
648
732
  this.results = [];
649
733
  this.findings = [];
734
+ this.commandIndex = 0;
735
+ this.currentPhase = 'idle';
736
+ this.currentObjective = '';
737
+ }
738
+ /**
739
+ * Collapse duplicate findings into a single entry while preserving useful evidence.
740
+ */
741
+ dedupeFindings(findings) {
742
+ const seen = new Map();
743
+ for (const finding of findings) {
744
+ const key = this.buildFindingKey(finding);
745
+ const existing = seen.get(key);
746
+ if (existing) {
747
+ existing.evidence = this.mergeEvidence(existing.evidence, finding.evidence);
748
+ if (existing.file === undefined && finding.file !== undefined) {
749
+ existing.file = finding.file;
750
+ }
751
+ if (existing.line === undefined && finding.line !== undefined) {
752
+ existing.line = finding.line;
753
+ }
754
+ continue;
755
+ }
756
+ seen.set(key, { ...finding });
757
+ }
758
+ return Array.from(seen.values());
759
+ }
760
+ buildFindingKey(finding) {
761
+ return [
762
+ finding.severity,
763
+ finding.category,
764
+ finding.title,
765
+ finding.recommendation ?? '',
766
+ ].join('|');
767
+ }
768
+ mergeEvidence(first, second) {
769
+ const parts = [first, second]
770
+ .map(part => (typeof part === 'string' ? part.trim() : ''))
771
+ .filter(Boolean);
772
+ return Array.from(new Set(parts)).join('\n');
773
+ }
774
+ /**
775
+ * Derive a consistent completion reason so the UI can present concise guidance.
776
+ */
777
+ determineExitReason(results, findings) {
778
+ if (results.length === 0) {
779
+ return 'no-commands';
780
+ }
781
+ const failedCount = results.filter(r => !r.success).length;
782
+ const criticalFindings = findings.filter(f => f.severity === 'critical').length;
783
+ if (failedCount === 0 && criticalFindings === 0) {
784
+ return 'complete';
785
+ }
786
+ if (failedCount > 0) {
787
+ return 'failed-commands';
788
+ }
789
+ if (criticalFindings > 0) {
790
+ return 'critical-findings';
791
+ }
792
+ return 'incomplete';
793
+ }
794
+ buildStatusSummary(results, findings) {
795
+ const total = results.length;
796
+ if (total === 0) {
797
+ return 'No commands executed';
798
+ }
799
+ const successCount = results.filter(r => r.success).length;
800
+ const failedCount = total - successCount;
801
+ const criticalFindings = findings.filter(f => f.severity === 'critical').length;
802
+ const parts = [`${successCount}/${total} commands succeeded${failedCount ? ` (${failedCount} failed)` : ''}`];
803
+ if (findings.length > 0) {
804
+ parts.push(`${findings.length} finding${findings.length === 1 ? '' : 's'}${criticalFindings ? ` (${criticalFindings} critical)` : ''}`);
805
+ }
806
+ return parts.join(', ');
650
807
  }
651
808
  // ==========================================================================
652
809
  // REPORT GENERATION
653
810
  // ==========================================================================
654
811
  /** Generate comprehensive report */
655
812
  generateReport(objective = 'Operation') {
813
+ const uniqueFindings = this.dedupeFindings(this.findings);
814
+ this.findings = uniqueFindings;
656
815
  const successCount = this.results.filter(r => r.success).length;
657
816
  const totalDuration = this.results.reduce((sum, r) => sum + r.duration, 0);
658
- const criticalFindings = this.findings.filter(f => f.severity === 'critical').length;
659
- const isSuccess = successCount === this.results.length && criticalFindings === 0;
817
+ const criticalFindings = uniqueFindings.filter(f => f.severity === 'critical').length;
818
+ const failedCount = this.results.length - successCount;
819
+ const isSuccess = failedCount === 0 && criticalFindings === 0;
820
+ const exitReason = this.determineExitReason(this.results, uniqueFindings);
821
+ const statusSummary = this.buildStatusSummary(this.results, uniqueFindings);
822
+ const recommendations = Array.from(new Set(uniqueFindings.filter(f => f.recommendation).map(f => f.recommendation)));
660
823
  return {
661
824
  id: `OP-${Date.now()}-${crypto.randomBytes(4).toString('hex').toUpperCase()}`,
662
825
  objective,
@@ -664,16 +827,16 @@ export class UnifiedOrchestrator {
664
827
  endTime: Date.now(),
665
828
  duration: totalDuration,
666
829
  results: this.results,
667
- findings: this.findings,
668
- summary: `${successCount}/${this.results.length} succeeded, ${this.findings.length} findings (${criticalFindings} critical)`,
830
+ findings: uniqueFindings,
831
+ summary: statusSummary,
669
832
  success: isSuccess,
670
833
  mode: objective,
671
834
  phasesCompleted: [...new Set(this.results.filter(r => r.success).map(r => (r.command || '').split(' ')[0]))],
672
- recommendations: this.findings.filter(f => f.recommendation).map(f => f.recommendation),
835
+ recommendations,
673
836
  limitations: [],
674
837
  toolsUsed: [...new Set(this.results.map(r => (r.command || '').split(' ')[0]))],
675
- exitReason: isSuccess ? 'complete' : 'incomplete',
676
- statusSummary: `${successCount}/${this.results.length} commands succeeded`,
838
+ exitReason,
839
+ statusSummary,
677
840
  finalResponse: this.results.slice(-3).map(r => r.output).join('\n').slice(0, 2000),
678
841
  completed: isSuccess,
679
842
  evidence: [],
@@ -685,11 +848,20 @@ export class UnifiedOrchestrator {
685
848
  /**
686
849
  * Execute operations based on objective analysis.
687
850
  * Automatically selects and runs appropriate tools based on the objective.
851
+ * Emits real-time events for UI integration.
688
852
  */
689
853
  async execute(config) {
690
854
  this.reset();
691
855
  const objective = (config.objective || config.mode || 'operation').toLowerCase();
692
856
  const target = config.target;
857
+ // Store objective for event emission
858
+ this.currentObjective = config.objective || config.mode || 'operation';
859
+ // Phase: Initialization
860
+ this.setPhase('initializing');
861
+ // Phase: Analysis - Determine which tools to run
862
+ this.setPhase('analyzing');
863
+ // Phase: Execution - Run the appropriate tools
864
+ this.setPhase('executing');
693
865
  // Analyze objective and execute appropriate tools
694
866
  if (this.matchesIntent(objective, ['build', 'compile', 'typescript', 'tsc'])) {
695
867
  this.typecheck();
@@ -750,12 +922,16 @@ export class UnifiedOrchestrator {
750
922
  this.typecheck();
751
923
  this.deps('audit');
752
924
  }
925
+ // Phase: Reporting - Analyze results and generate report
926
+ this.setPhase('reporting');
753
927
  // Analyze all results for findings
754
928
  for (const result of this.results) {
755
929
  this.analyze(result.output, objective);
756
930
  }
757
931
  const report = this.generateReport(config.objective || 'Operation');
758
932
  report.finalResponse = this.generateFinalResponse(report);
933
+ // Phase: Complete
934
+ this.setPhase('complete');
759
935
  return report;
760
936
  }
761
937
  /** Check if objective matches any of the intent keywords */
@@ -1 +1 @@
1
- {"version":3,"file":"unifiedOrchestrator.js","sourceRoot":"","sources":["../../src/core/unifiedOrchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unifiedOrchestrator.js","sourceRoot":"","sources":["../../src/core/unifiedOrchestrator.ts"],"names":[],"mappings":"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"}