agentic-qe 2.6.5 → 2.6.6
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/CHANGELOG.md +52 -0
- package/README.md +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +31 -0
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +159 -0
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/FleetCommanderAgent.d.ts +36 -0
- package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
- package/dist/agents/FleetCommanderAgent.js +226 -0
- package/dist/agents/FleetCommanderAgent.js.map +1 -1
- package/dist/cli/commands/kg/mincut.d.ts +50 -0
- package/dist/cli/commands/kg/mincut.d.ts.map +1 -0
- package/dist/cli/commands/kg/mincut.js +372 -0
- package/dist/cli/commands/kg/mincut.js.map +1 -0
- package/dist/cli/index.js +91 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/init/claude-config.js +2 -2
- package/dist/code-intelligence/analysis/mincut/CircularDependencyDetector.d.ts +148 -0
- package/dist/code-intelligence/analysis/mincut/CircularDependencyDetector.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/CircularDependencyDetector.js +393 -0
- package/dist/code-intelligence/analysis/mincut/CircularDependencyDetector.js.map +1 -0
- package/dist/code-intelligence/analysis/mincut/GraphAdapter.d.ts +169 -0
- package/dist/code-intelligence/analysis/mincut/GraphAdapter.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/GraphAdapter.js +335 -0
- package/dist/code-intelligence/analysis/mincut/GraphAdapter.js.map +1 -0
- package/dist/code-intelligence/analysis/mincut/JsMinCut.d.ts +55 -0
- package/dist/code-intelligence/analysis/mincut/JsMinCut.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/JsMinCut.js +265 -0
- package/dist/code-intelligence/analysis/mincut/JsMinCut.js.map +1 -0
- package/dist/code-intelligence/analysis/mincut/MinCutAnalyzer.d.ts +92 -0
- package/dist/code-intelligence/analysis/mincut/MinCutAnalyzer.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/MinCutAnalyzer.js +200 -0
- package/dist/code-intelligence/analysis/mincut/MinCutAnalyzer.js.map +1 -0
- package/dist/code-intelligence/analysis/mincut/ModuleCouplingAnalyzer.d.ts +157 -0
- package/dist/code-intelligence/analysis/mincut/ModuleCouplingAnalyzer.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/ModuleCouplingAnalyzer.js +434 -0
- package/dist/code-intelligence/analysis/mincut/ModuleCouplingAnalyzer.js.map +1 -0
- package/dist/code-intelligence/analysis/mincut/index.d.ts +12 -0
- package/dist/code-intelligence/analysis/mincut/index.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/index.js +20 -0
- package/dist/code-intelligence/analysis/mincut/index.js.map +1 -0
- package/dist/code-intelligence/analysis/mincut/types.d.ts +145 -0
- package/dist/code-intelligence/analysis/mincut/types.d.ts.map +1 -0
- package/dist/code-intelligence/analysis/mincut/types.js +16 -0
- package/dist/code-intelligence/analysis/mincut/types.js.map +1 -0
- package/dist/code-intelligence/chunking/ASTChunker.d.ts +1 -1
- package/dist/code-intelligence/chunking/ASTChunker.d.ts.map +1 -1
- package/dist/code-intelligence/chunking/ASTChunker.js +4 -4
- package/dist/code-intelligence/chunking/ASTChunker.js.map +1 -1
- package/dist/code-intelligence/graph/GraphBuilder.d.ts +120 -0
- package/dist/code-intelligence/graph/GraphBuilder.d.ts.map +1 -1
- package/dist/code-intelligence/graph/GraphBuilder.js +517 -0
- package/dist/code-intelligence/graph/GraphBuilder.js.map +1 -1
- package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.d.ts.map +1 -1
- package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js +3 -3
- package/dist/code-intelligence/orchestrator/CodeIntelligenceOrchestrator.js.map +1 -1
- package/dist/code-intelligence/parser/{TreeSitterParser.d.ts → WebTreeSitterParser.d.ts} +45 -10
- package/dist/code-intelligence/parser/WebTreeSitterParser.d.ts.map +1 -0
- package/dist/code-intelligence/parser/{TreeSitterParser.js → WebTreeSitterParser.js} +147 -54
- package/dist/code-intelligence/parser/WebTreeSitterParser.js.map +1 -0
- package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts +12 -10
- package/dist/code-intelligence/parser/extractors/BaseExtractor.d.ts.map +1 -1
- package/dist/code-intelligence/parser/extractors/BaseExtractor.js +7 -3
- package/dist/code-intelligence/parser/extractors/BaseExtractor.js.map +1 -1
- package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts +7 -5
- package/dist/code-intelligence/parser/extractors/GoExtractor.d.ts.map +1 -1
- package/dist/code-intelligence/parser/extractors/GoExtractor.js +2 -2
- package/dist/code-intelligence/parser/extractors/GoExtractor.js.map +1 -1
- package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts +7 -5
- package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.d.ts.map +1 -1
- package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js +2 -2
- package/dist/code-intelligence/parser/extractors/JavaScriptExtractor.js.map +1 -1
- package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts +7 -5
- package/dist/code-intelligence/parser/extractors/PythonExtractor.d.ts.map +1 -1
- package/dist/code-intelligence/parser/extractors/PythonExtractor.js +2 -2
- package/dist/code-intelligence/parser/extractors/PythonExtractor.js.map +1 -1
- package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts +7 -5
- package/dist/code-intelligence/parser/extractors/RustExtractor.d.ts.map +1 -1
- package/dist/code-intelligence/parser/extractors/RustExtractor.js +2 -2
- package/dist/code-intelligence/parser/extractors/RustExtractor.js.map +1 -1
- package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts +7 -5
- package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.d.ts.map +1 -1
- package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js +2 -2
- package/dist/code-intelligence/parser/extractors/TypeScriptExtractor.js.map +1 -1
- package/dist/code-intelligence/parser/index.d.ts +7 -1
- package/dist/code-intelligence/parser/index.d.ts.map +1 -1
- package/dist/code-intelligence/parser/index.js +11 -3
- package/dist/code-intelligence/parser/index.js.map +1 -1
- package/dist/code-intelligence/service/CodeIntelligenceService.d.ts.map +1 -1
- package/dist/code-intelligence/service/CodeIntelligenceService.js +7 -5
- package/dist/code-intelligence/service/CodeIntelligenceService.js.map +1 -1
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/coverage/CriticalPathDetector.d.ts +240 -0
- package/dist/coverage/CriticalPathDetector.d.ts.map +1 -0
- package/dist/coverage/CriticalPathDetector.js +388 -0
- package/dist/coverage/CriticalPathDetector.js.map +1 -0
- package/dist/coverage/index.d.ts +13 -0
- package/dist/coverage/index.d.ts.map +1 -0
- package/dist/coverage/index.js +16 -0
- package/dist/coverage/index.js.map +1 -0
- package/dist/fleet/topology/SPOFMonitor.d.ts +181 -0
- package/dist/fleet/topology/SPOFMonitor.d.ts.map +1 -0
- package/dist/fleet/topology/SPOFMonitor.js +286 -0
- package/dist/fleet/topology/SPOFMonitor.js.map +1 -0
- package/dist/fleet/topology/TopologyMinCutAnalyzer.d.ts +87 -0
- package/dist/fleet/topology/TopologyMinCutAnalyzer.d.ts.map +1 -0
- package/dist/fleet/topology/TopologyMinCutAnalyzer.js +472 -0
- package/dist/fleet/topology/TopologyMinCutAnalyzer.js.map +1 -0
- package/dist/fleet/topology/index.d.ts +13 -0
- package/dist/fleet/topology/index.d.ts.map +1 -0
- package/dist/fleet/topology/index.js +20 -0
- package/dist/fleet/topology/index.js.map +1 -0
- package/dist/fleet/topology/types.d.ts +139 -0
- package/dist/fleet/topology/types.d.ts.map +1 -0
- package/dist/fleet/topology/types.js +19 -0
- package/dist/fleet/topology/types.js.map +1 -0
- package/dist/mcp/handlers/test/test-execute-parallel.d.ts +34 -3
- package/dist/mcp/handlers/test/test-execute-parallel.d.ts.map +1 -1
- package/dist/mcp/handlers/test/test-execute-parallel.js +120 -5
- package/dist/mcp/handlers/test/test-execute-parallel.js.map +1 -1
- package/dist/mcp/server-instructions.d.ts +2 -2
- package/dist/mcp/server-instructions.d.ts.map +1 -1
- package/dist/mcp/server-instructions.js +2 -2
- package/dist/test/partition/MinCutPartitioner.d.ts +97 -0
- package/dist/test/partition/MinCutPartitioner.d.ts.map +1 -0
- package/dist/test/partition/MinCutPartitioner.js +459 -0
- package/dist/test/partition/MinCutPartitioner.js.map +1 -0
- package/dist/test/partition/RealTestExecutor.d.ts +86 -0
- package/dist/test/partition/RealTestExecutor.d.ts.map +1 -0
- package/dist/test/partition/RealTestExecutor.js +279 -0
- package/dist/test/partition/RealTestExecutor.js.map +1 -0
- package/dist/test/partition/TestDependencyAnalyzer.d.ts +75 -0
- package/dist/test/partition/TestDependencyAnalyzer.d.ts.map +1 -0
- package/dist/test/partition/TestDependencyAnalyzer.js +297 -0
- package/dist/test/partition/TestDependencyAnalyzer.js.map +1 -0
- package/dist/test/partition/index.d.ts +10 -0
- package/dist/test/partition/index.d.ts.map +1 -0
- package/dist/test/partition/index.js +26 -0
- package/dist/test/partition/index.js.map +1 -0
- package/dist/test/partition/types.d.ts +120 -0
- package/dist/test/partition/types.d.ts.map +1 -0
- package/dist/test/partition/types.js +21 -0
- package/dist/test/partition/types.js.map +1 -0
- package/package.json +4 -7
- package/dist/code-intelligence/parser/TreeSitterParser.d.ts.map +0 -1
- package/dist/code-intelligence/parser/TreeSitterParser.js.map +0 -1
|
@@ -17,6 +17,7 @@ exports.FleetCommanderAgent = void 0;
|
|
|
17
17
|
const BaseAgent_1 = require("./BaseAgent");
|
|
18
18
|
const SecureRandom_js_1 = require("../utils/SecureRandom.js");
|
|
19
19
|
const types_1 = require("../types");
|
|
20
|
+
const index_js_1 = require("../fleet/topology/index.js");
|
|
20
21
|
class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
21
22
|
constructor(config) {
|
|
22
23
|
super({
|
|
@@ -115,6 +116,11 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
115
116
|
heartbeatTimeout: 15000,
|
|
116
117
|
maxRetries: 3
|
|
117
118
|
},
|
|
119
|
+
spofAnalysis: {
|
|
120
|
+
enabled: true,
|
|
121
|
+
minResilienceScore: 0.6,
|
|
122
|
+
autoWarn: true,
|
|
123
|
+
},
|
|
118
124
|
...config
|
|
119
125
|
};
|
|
120
126
|
this.topologyState = {
|
|
@@ -124,6 +130,13 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
124
130
|
efficiency: 1.0,
|
|
125
131
|
lastChanged: new Date()
|
|
126
132
|
};
|
|
133
|
+
// Initialize SPOF analyzer if enabled
|
|
134
|
+
if (this.config.spofAnalysis?.enabled) {
|
|
135
|
+
this.topologyAnalyzer = new index_js_1.TopologyMinCutAnalyzer({
|
|
136
|
+
minResilienceScore: this.config.spofAnalysis.minResilienceScore,
|
|
137
|
+
analyzeAllSpofs: true,
|
|
138
|
+
});
|
|
139
|
+
}
|
|
127
140
|
this.initializeAgentPools();
|
|
128
141
|
}
|
|
129
142
|
// ============================================================================
|
|
@@ -275,6 +288,12 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
275
288
|
return await this.scaleAgentPool(task.payload);
|
|
276
289
|
case 'recover-agent':
|
|
277
290
|
return await this.recoverAgent(task.payload);
|
|
291
|
+
case 'topology-analyze':
|
|
292
|
+
return await this.analyzeTopologyResilience();
|
|
293
|
+
case 'topology-spof-check':
|
|
294
|
+
return await this.getTopologySpofs();
|
|
295
|
+
case 'topology-optimize':
|
|
296
|
+
return await this.getTopologyOptimizations();
|
|
278
297
|
default:
|
|
279
298
|
throw new Error(`Unknown task type: ${task.type}`);
|
|
280
299
|
}
|
|
@@ -592,6 +611,213 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
592
611
|
return this.topologyState.efficiency;
|
|
593
612
|
}
|
|
594
613
|
// ============================================================================
|
|
614
|
+
// Topology Resilience Analysis (Min-Cut SPOF Detection)
|
|
615
|
+
// ============================================================================
|
|
616
|
+
/**
|
|
617
|
+
* Analyze current topology for resilience and SPOFs
|
|
618
|
+
*
|
|
619
|
+
* Uses min-cut algorithm to detect single points of failure
|
|
620
|
+
* and calculate overall topology resilience score.
|
|
621
|
+
*/
|
|
622
|
+
async analyzeTopologyResilience() {
|
|
623
|
+
if (!this.topologyAnalyzer) {
|
|
624
|
+
console.warn('[FleetCommander] SPOF analysis disabled');
|
|
625
|
+
return null;
|
|
626
|
+
}
|
|
627
|
+
console.log('[FleetCommander] Analyzing topology resilience...');
|
|
628
|
+
const fleetTopology = await this.buildFleetTopology();
|
|
629
|
+
const result = await this.topologyAnalyzer.analyzeResilience(fleetTopology);
|
|
630
|
+
// Store result for caching
|
|
631
|
+
this.lastResilienceResult = result;
|
|
632
|
+
// Store in memory for other agents
|
|
633
|
+
await this.memoryStore.store('aqe/fleet/resilience', {
|
|
634
|
+
result,
|
|
635
|
+
timestamp: new Date(),
|
|
636
|
+
});
|
|
637
|
+
// Auto-warn if enabled and critical SPOFs detected
|
|
638
|
+
if (this.config.spofAnalysis?.autoWarn && result.criticalSpofs.length > 0) {
|
|
639
|
+
this.emitEvent('fleet.spof-warning', {
|
|
640
|
+
criticalSpofs: result.criticalSpofs,
|
|
641
|
+
resilienceScore: result.score,
|
|
642
|
+
grade: result.grade,
|
|
643
|
+
recommendations: result.recommendations,
|
|
644
|
+
}, 'critical');
|
|
645
|
+
console.warn(`[FleetCommander] WARNING: ${result.criticalSpofs.length} critical SPOF(s) detected. ` +
|
|
646
|
+
`Resilience score: ${(result.score * 100).toFixed(1)}% (Grade: ${result.grade})`);
|
|
647
|
+
}
|
|
648
|
+
return result;
|
|
649
|
+
}
|
|
650
|
+
/**
|
|
651
|
+
* Get detected SPOFs in current topology
|
|
652
|
+
*/
|
|
653
|
+
async getTopologySpofs() {
|
|
654
|
+
if (!this.topologyAnalyzer) {
|
|
655
|
+
return [];
|
|
656
|
+
}
|
|
657
|
+
const fleetTopology = await this.buildFleetTopology();
|
|
658
|
+
return await this.topologyAnalyzer.detectSpofs(fleetTopology);
|
|
659
|
+
}
|
|
660
|
+
/**
|
|
661
|
+
* Get topology optimization suggestions
|
|
662
|
+
*/
|
|
663
|
+
async getTopologyOptimizations() {
|
|
664
|
+
if (!this.topologyAnalyzer) {
|
|
665
|
+
return { optimizations: [], message: 'SPOF analysis disabled' };
|
|
666
|
+
}
|
|
667
|
+
const fleetTopology = await this.buildFleetTopology();
|
|
668
|
+
const optimizations = await this.topologyAnalyzer.suggestOptimizations(fleetTopology, this.lastResilienceResult);
|
|
669
|
+
return {
|
|
670
|
+
optimizations,
|
|
671
|
+
currentResilience: this.lastResilienceResult?.score,
|
|
672
|
+
currentGrade: this.lastResilienceResult?.grade,
|
|
673
|
+
};
|
|
674
|
+
}
|
|
675
|
+
/**
|
|
676
|
+
* Build FleetTopology from current agent state
|
|
677
|
+
*/
|
|
678
|
+
async buildFleetTopology() {
|
|
679
|
+
const nodes = [];
|
|
680
|
+
const edges = [];
|
|
681
|
+
// Build nodes from agent pools and allocations
|
|
682
|
+
for (const [agentId, allocation] of this.resourceAllocations.entries()) {
|
|
683
|
+
const agentData = await this.memoryStore.retrieve(`aqe/fleet/agents/${agentId}`);
|
|
684
|
+
if (!agentData)
|
|
685
|
+
continue;
|
|
686
|
+
// Determine role based on agent type
|
|
687
|
+
let role = 'worker';
|
|
688
|
+
if (agentData.type === types_1.QEAgentType.FLEET_COMMANDER) {
|
|
689
|
+
role = 'coordinator';
|
|
690
|
+
}
|
|
691
|
+
nodes.push({
|
|
692
|
+
id: agentId,
|
|
693
|
+
type: agentData.type,
|
|
694
|
+
role,
|
|
695
|
+
status: agentData.status || 'active',
|
|
696
|
+
priority: allocation.priority,
|
|
697
|
+
});
|
|
698
|
+
}
|
|
699
|
+
// Add self (FleetCommander) as coordinator if not already present
|
|
700
|
+
const selfId = this.agentId.id;
|
|
701
|
+
if (!nodes.find(n => n.id === selfId)) {
|
|
702
|
+
nodes.push({
|
|
703
|
+
id: selfId,
|
|
704
|
+
type: types_1.QEAgentType.FLEET_COMMANDER,
|
|
705
|
+
role: 'coordinator',
|
|
706
|
+
status: 'active',
|
|
707
|
+
priority: 'critical',
|
|
708
|
+
});
|
|
709
|
+
}
|
|
710
|
+
// Build edges based on topology mode
|
|
711
|
+
const nodeIds = nodes.map(n => n.id);
|
|
712
|
+
switch (this.topologyState.mode) {
|
|
713
|
+
case 'hierarchical':
|
|
714
|
+
// Star topology: commander connects to all workers
|
|
715
|
+
for (const nodeId of nodeIds) {
|
|
716
|
+
if (nodeId !== selfId) {
|
|
717
|
+
edges.push({
|
|
718
|
+
id: `${selfId}-${nodeId}`,
|
|
719
|
+
sourceId: selfId,
|
|
720
|
+
targetId: nodeId,
|
|
721
|
+
connectionType: 'command',
|
|
722
|
+
weight: 1.0,
|
|
723
|
+
bidirectional: true,
|
|
724
|
+
});
|
|
725
|
+
}
|
|
726
|
+
}
|
|
727
|
+
break;
|
|
728
|
+
case 'mesh':
|
|
729
|
+
// Full mesh: all nodes connected
|
|
730
|
+
for (let i = 0; i < nodeIds.length; i++) {
|
|
731
|
+
for (let j = i + 1; j < nodeIds.length; j++) {
|
|
732
|
+
edges.push({
|
|
733
|
+
id: `${nodeIds[i]}-${nodeIds[j]}`,
|
|
734
|
+
sourceId: nodeIds[i],
|
|
735
|
+
targetId: nodeIds[j],
|
|
736
|
+
connectionType: 'coordination',
|
|
737
|
+
weight: 1.0,
|
|
738
|
+
bidirectional: true,
|
|
739
|
+
});
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
break;
|
|
743
|
+
case 'hybrid':
|
|
744
|
+
// Hierarchical + some cross-connections
|
|
745
|
+
for (const nodeId of nodeIds) {
|
|
746
|
+
if (nodeId !== selfId) {
|
|
747
|
+
edges.push({
|
|
748
|
+
id: `${selfId}-${nodeId}`,
|
|
749
|
+
sourceId: selfId,
|
|
750
|
+
targetId: nodeId,
|
|
751
|
+
connectionType: 'command',
|
|
752
|
+
weight: 1.0,
|
|
753
|
+
bidirectional: true,
|
|
754
|
+
});
|
|
755
|
+
}
|
|
756
|
+
}
|
|
757
|
+
// Add some peer connections between workers
|
|
758
|
+
const workers = nodeIds.filter(id => id !== selfId);
|
|
759
|
+
for (let i = 0; i < workers.length - 1; i += 2) {
|
|
760
|
+
if (workers[i + 1]) {
|
|
761
|
+
edges.push({
|
|
762
|
+
id: `${workers[i]}-${workers[i + 1]}`,
|
|
763
|
+
sourceId: workers[i],
|
|
764
|
+
targetId: workers[i + 1],
|
|
765
|
+
connectionType: 'data',
|
|
766
|
+
weight: 0.5,
|
|
767
|
+
bidirectional: true,
|
|
768
|
+
});
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
break;
|
|
772
|
+
case 'adaptive':
|
|
773
|
+
// Dynamic based on utilization
|
|
774
|
+
const utilization = this.calculateFleetUtilization();
|
|
775
|
+
if (utilization < 0.5) {
|
|
776
|
+
// Low load: hierarchical
|
|
777
|
+
for (const nodeId of nodeIds) {
|
|
778
|
+
if (nodeId !== selfId) {
|
|
779
|
+
edges.push({
|
|
780
|
+
id: `${selfId}-${nodeId}`,
|
|
781
|
+
sourceId: selfId,
|
|
782
|
+
targetId: nodeId,
|
|
783
|
+
connectionType: 'command',
|
|
784
|
+
weight: 1.0,
|
|
785
|
+
bidirectional: true,
|
|
786
|
+
});
|
|
787
|
+
}
|
|
788
|
+
}
|
|
789
|
+
}
|
|
790
|
+
else {
|
|
791
|
+
// High load: mesh for better distribution
|
|
792
|
+
for (let i = 0; i < nodeIds.length; i++) {
|
|
793
|
+
for (let j = i + 1; j < nodeIds.length; j++) {
|
|
794
|
+
edges.push({
|
|
795
|
+
id: `${nodeIds[i]}-${nodeIds[j]}`,
|
|
796
|
+
sourceId: nodeIds[i],
|
|
797
|
+
targetId: nodeIds[j],
|
|
798
|
+
connectionType: 'coordination',
|
|
799
|
+
weight: 1.0,
|
|
800
|
+
bidirectional: true,
|
|
801
|
+
});
|
|
802
|
+
}
|
|
803
|
+
}
|
|
804
|
+
}
|
|
805
|
+
break;
|
|
806
|
+
}
|
|
807
|
+
return {
|
|
808
|
+
nodes,
|
|
809
|
+
edges,
|
|
810
|
+
mode: this.topologyState.mode,
|
|
811
|
+
lastUpdated: new Date(),
|
|
812
|
+
};
|
|
813
|
+
}
|
|
814
|
+
/**
|
|
815
|
+
* Get last resilience analysis result (cached)
|
|
816
|
+
*/
|
|
817
|
+
getLastResilienceResult() {
|
|
818
|
+
return this.lastResilienceResult;
|
|
819
|
+
}
|
|
820
|
+
// ============================================================================
|
|
595
821
|
// Load Balancing
|
|
596
822
|
// ============================================================================
|
|
597
823
|
async rebalanceWorkload(_payload) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FleetCommanderAgent.js","sourceRoot":"","sources":["../../src/agents/FleetCommanderAgent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FleetCommanderAgent.js","sourceRoot":"","sources":["../../src/agents/FleetCommanderAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* MinCut Analysis CLI Commands
|
|
3
|
+
*
|
|
4
|
+
* Provides CLI interface for module coupling analysis using MinCut algorithms:
|
|
5
|
+
* - coupling: Analyze coupling between two modules
|
|
6
|
+
* - coupling-all: Find all highly coupled module pairs
|
|
7
|
+
* - circular: Detect circular dependencies
|
|
8
|
+
* - boundaries: Suggest optimal module boundaries
|
|
9
|
+
* - overview: Get coupling overview for entire codebase
|
|
10
|
+
*/
|
|
11
|
+
export interface MinCutCouplingOptions {
|
|
12
|
+
threshold?: string;
|
|
13
|
+
json?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface MinCutCouplingAllOptions {
|
|
16
|
+
threshold?: string;
|
|
17
|
+
limit?: string;
|
|
18
|
+
json?: boolean;
|
|
19
|
+
}
|
|
20
|
+
export interface MinCutCircularOptions {
|
|
21
|
+
severity?: 'low' | 'medium' | 'high';
|
|
22
|
+
json?: boolean;
|
|
23
|
+
}
|
|
24
|
+
export interface MinCutBoundariesOptions {
|
|
25
|
+
json?: boolean;
|
|
26
|
+
}
|
|
27
|
+
export interface MinCutOverviewOptions {
|
|
28
|
+
json?: boolean;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Analyze coupling between two modules
|
|
32
|
+
*/
|
|
33
|
+
export declare function analyzeCoupling(module1: string, module2: string, options: MinCutCouplingOptions): Promise<void>;
|
|
34
|
+
/**
|
|
35
|
+
* Find all highly coupled module pairs
|
|
36
|
+
*/
|
|
37
|
+
export declare function findHighlyCoupledModules(options: MinCutCouplingAllOptions): Promise<void>;
|
|
38
|
+
/**
|
|
39
|
+
* Detect circular dependencies
|
|
40
|
+
*/
|
|
41
|
+
export declare function detectCircularDependencies(options: MinCutCircularOptions): Promise<void>;
|
|
42
|
+
/**
|
|
43
|
+
* Suggest optimal module boundaries
|
|
44
|
+
*/
|
|
45
|
+
export declare function suggestModuleBoundaries(count: string, options: MinCutBoundariesOptions): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Get coupling overview for entire codebase
|
|
48
|
+
*/
|
|
49
|
+
export declare function getCouplingOverview(options: MinCutOverviewOptions): Promise<void>;
|
|
50
|
+
//# sourceMappingURL=mincut.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mincut.d.ts","sourceRoot":"","sources":["../../../../src/cli/commands/kg/mincut.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAWH,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IACrC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AA4GD;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,IAAI,CAAC,CAgDf;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,wBAAwB,GAAG,OAAO,CAAC,IAAI,CAAC,CAkE/F;AAED;;GAEG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqF9F;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAY5G;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,OAAO,EAAE,qBAAqB,GAAG,OAAO,CAAC,IAAI,CAAC,CA+DvF"}
|