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.
- package/dist/core/unifiedOrchestrator.d.ts +54 -4
- package/dist/core/unifiedOrchestrator.d.ts.map +1 -1
- package/dist/core/unifiedOrchestrator.js +198 -22
- package/dist/core/unifiedOrchestrator.js.map +1 -1
- package/dist/shell/interactiveShell.d.ts +1 -0
- package/dist/shell/interactiveShell.d.ts.map +1 -1
- package/dist/shell/interactiveShell.js +57 -8
- package/dist/shell/interactiveShell.js.map +1 -1
- package/dist/tools/tao/rl.d.ts.map +1 -1
- package/dist/tools/tao/rl.js +2 -1
- package/dist/tools/tao/rl.js.map +1 -1
- package/dist/ui/orchestration/OrchestrationUIBridge.d.ts +117 -0
- package/dist/ui/orchestration/OrchestrationUIBridge.d.ts.map +1 -0
- package/dist/ui/orchestration/OrchestrationUIBridge.js +435 -0
- package/dist/ui/orchestration/OrchestrationUIBridge.js.map +1 -0
- package/dist/ui/orchestration/StatusOrchestrator.d.ts +24 -0
- package/dist/ui/orchestration/StatusOrchestrator.d.ts.map +1 -1
- package/dist/ui/orchestration/StatusOrchestrator.js +94 -0
- package/dist/ui/orchestration/StatusOrchestrator.js.map +1 -1
- package/dist/ui/orchestration/index.d.ts +15 -0
- package/dist/ui/orchestration/index.d.ts.map +1 -0
- package/dist/ui/orchestration/index.js +18 -0
- package/dist/ui/orchestration/index.js.map +1 -0
- package/package.json +1 -1
|
@@ -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
|
-
/**
|
|
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":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,KAAK,EAAE,MAAM,IAAI,CAAC;AASzB,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,OAAO;IACtB,QAAQ,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IAEjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,EAAE,CAAC;CACtB;AAGD,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC;AACnC,MAAM,WAAW,eAAe;IAC9B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AACD,MAAM,WAAW,UAAW,SAAQ,eAAe;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AACD,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAMD,qBAAa,
|
|
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
|
|
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
|
|
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
|
-
'
|
|
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
|
|
302
|
-
'find
|
|
303
|
-
'
|
|
304
|
-
'
|
|
305
|
-
'
|
|
306
|
-
'
|
|
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 =
|
|
659
|
-
const
|
|
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:
|
|
668
|
-
summary:
|
|
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
|
|
835
|
+
recommendations,
|
|
673
836
|
limitations: [],
|
|
674
837
|
toolsUsed: [...new Set(this.results.map(r => (r.command || '').split(' ')[0]))],
|
|
675
|
-
exitReason
|
|
676
|
-
statusSummary
|
|
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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"}
|