agentic-qe 2.6.5 → 2.7.0
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 +112 -0
- package/README.md +1 -1
- package/dist/agents/AccessibilityAllyAgent.d.ts.map +1 -1
- package/dist/agents/AccessibilityAllyAgent.js +1 -1
- package/dist/agents/AccessibilityAllyAgent.js.map +1 -1
- package/dist/agents/ApiContractValidatorAgent.d.ts +83 -56
- package/dist/agents/ApiContractValidatorAgent.d.ts.map +1 -1
- package/dist/agents/ApiContractValidatorAgent.js +97 -46
- package/dist/agents/ApiContractValidatorAgent.js.map +1 -1
- package/dist/agents/BaseAgent.d.ts +64 -13
- package/dist/agents/BaseAgent.d.ts.map +1 -1
- package/dist/agents/BaseAgent.js +5 -4
- package/dist/agents/BaseAgent.js.map +1 -1
- package/dist/agents/CodeComplexityAnalyzerAgent.d.ts +18 -12
- package/dist/agents/CodeComplexityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CodeComplexityAnalyzerAgent.js +25 -24
- package/dist/agents/CodeComplexityAnalyzerAgent.js.map +1 -1
- package/dist/agents/CodeIntelligenceAgent.d.ts.map +1 -1
- package/dist/agents/CodeIntelligenceAgent.js.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.d.ts +201 -41
- package/dist/agents/CoverageAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/CoverageAnalyzerAgent.js +165 -4
- package/dist/agents/CoverageAnalyzerAgent.js.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.d.ts +49 -13
- package/dist/agents/DeploymentReadinessAgent.d.ts.map +1 -1
- package/dist/agents/DeploymentReadinessAgent.js +30 -30
- package/dist/agents/DeploymentReadinessAgent.js.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.d.ts +56 -18
- package/dist/agents/FlakyTestHunterAgent.d.ts.map +1 -1
- package/dist/agents/FlakyTestHunterAgent.js +45 -46
- package/dist/agents/FlakyTestHunterAgent.js.map +1 -1
- package/dist/agents/FleetCommanderAgent.d.ts +199 -14
- package/dist/agents/FleetCommanderAgent.d.ts.map +1 -1
- package/dist/agents/FleetCommanderAgent.js +270 -34
- package/dist/agents/FleetCommanderAgent.js.map +1 -1
- package/dist/agents/LearningAgent.d.ts +29 -7
- package/dist/agents/LearningAgent.d.ts.map +1 -1
- package/dist/agents/LearningAgent.js +6 -4
- package/dist/agents/LearningAgent.js.map +1 -1
- package/dist/agents/NeuralAgentExtension.d.ts +46 -2
- package/dist/agents/NeuralAgentExtension.d.ts.map +1 -1
- package/dist/agents/NeuralAgentExtension.js +13 -11
- package/dist/agents/NeuralAgentExtension.js.map +1 -1
- package/dist/agents/PerformanceTesterAgent.d.ts +177 -14
- package/dist/agents/PerformanceTesterAgent.d.ts.map +1 -1
- package/dist/agents/PerformanceTesterAgent.js +73 -10
- package/dist/agents/PerformanceTesterAgent.js.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.d.ts +117 -15
- package/dist/agents/ProductionIntelligenceAgent.d.ts.map +1 -1
- package/dist/agents/ProductionIntelligenceAgent.js +76 -63
- package/dist/agents/ProductionIntelligenceAgent.js.map +1 -1
- package/dist/agents/QXPartnerAgent.d.ts.map +1 -1
- package/dist/agents/QXPartnerAgent.js +40 -30
- package/dist/agents/QXPartnerAgent.js.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.d.ts +113 -6
- package/dist/agents/QualityAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/QualityAnalyzerAgent.js +30 -25
- package/dist/agents/QualityAnalyzerAgent.js.map +1 -1
- package/dist/agents/QualityGateAgent.d.ts +125 -4
- package/dist/agents/QualityGateAgent.d.ts.map +1 -1
- package/dist/agents/QualityGateAgent.js +13 -15
- package/dist/agents/QualityGateAgent.js.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts +32 -13
- package/dist/agents/RegressionRiskAnalyzerAgent.d.ts.map +1 -1
- package/dist/agents/RegressionRiskAnalyzerAgent.js +49 -30
- package/dist/agents/RegressionRiskAnalyzerAgent.js.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.d.ts +6 -13
- package/dist/agents/RequirementsValidatorAgent.d.ts.map +1 -1
- package/dist/agents/RequirementsValidatorAgent.js +34 -27
- package/dist/agents/RequirementsValidatorAgent.js.map +1 -1
- package/dist/agents/SecurityScannerAgent.d.ts +86 -14
- package/dist/agents/SecurityScannerAgent.d.ts.map +1 -1
- package/dist/agents/SecurityScannerAgent.js +53 -38
- package/dist/agents/SecurityScannerAgent.js.map +1 -1
- package/dist/agents/TestDataArchitectAgent.d.ts +140 -57
- package/dist/agents/TestDataArchitectAgent.d.ts.map +1 -1
- package/dist/agents/TestDataArchitectAgent.js +93 -54
- package/dist/agents/TestDataArchitectAgent.js.map +1 -1
- package/dist/agents/TestExecutorAgent.d.ts +43 -18
- package/dist/agents/TestExecutorAgent.d.ts.map +1 -1
- package/dist/agents/TestExecutorAgent.js +31 -23
- package/dist/agents/TestExecutorAgent.js.map +1 -1
- package/dist/agents/TestGeneratorAgent.d.ts +71 -23
- package/dist/agents/TestGeneratorAgent.d.ts.map +1 -1
- package/dist/agents/TestGeneratorAgent.js +116 -58
- package/dist/agents/TestGeneratorAgent.js.map +1 -1
- package/dist/agents/adapters/LearningEngineAdapter.d.ts.map +1 -1
- package/dist/agents/adapters/LearningEngineAdapter.js.map +1 -1
- package/dist/agents/adapters/MemoryServiceAdapter.d.ts.map +1 -1
- package/dist/agents/adapters/MemoryServiceAdapter.js +10 -6
- package/dist/agents/adapters/MemoryServiceAdapter.js.map +1 -1
- package/dist/agents/index.d.ts +36 -5
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +1 -1
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/n8n/N8nBaseAgent.d.ts.map +1 -1
- package/dist/agents/n8n/N8nBaseAgent.js +2 -1
- package/dist/agents/n8n/N8nBaseAgent.js.map +1 -1
- package/dist/cli/commands/analyze.d.ts.map +1 -1
- package/dist/cli/commands/analyze.js +221 -66
- package/dist/cli/commands/analyze.js.map +1 -1
- package/dist/cli/commands/fleet/backup.d.ts +4 -4
- package/dist/cli/commands/fleet/backup.d.ts.map +1 -1
- package/dist/cli/commands/fleet/backup.js +4 -4
- package/dist/cli/commands/fleet/backup.js.map +1 -1
- package/dist/cli/commands/fleet/health.d.ts +131 -1
- package/dist/cli/commands/fleet/health.d.ts.map +1 -1
- package/dist/cli/commands/fleet/health.js +204 -138
- package/dist/cli/commands/fleet/health.js.map +1 -1
- package/dist/cli/commands/fleet/metrics.d.ts.map +1 -1
- package/dist/cli/commands/fleet/metrics.js +1 -1
- package/dist/cli/commands/fleet/metrics.js.map +1 -1
- package/dist/cli/commands/fleet/monitor.d.ts.map +1 -1
- package/dist/cli/commands/fleet/monitor.js +2 -1
- package/dist/cli/commands/fleet/monitor.js.map +1 -1
- package/dist/cli/commands/fleet/restart.d.ts.map +1 -1
- package/dist/cli/commands/fleet/restart.js +1 -1
- package/dist/cli/commands/fleet/restart.js.map +1 -1
- package/dist/cli/commands/fleet/shutdown.d.ts.map +1 -1
- package/dist/cli/commands/fleet/shutdown.js.map +1 -1
- package/dist/cli/commands/fleet/status.d.ts.map +1 -1
- package/dist/cli/commands/fleet/status.js +1 -1
- package/dist/cli/commands/fleet/status.js.map +1 -1
- package/dist/cli/commands/fleet/topology.d.ts.map +1 -1
- package/dist/cli/commands/fleet/topology.js +9 -8
- package/dist/cli/commands/fleet/topology.js.map +1 -1
- package/dist/cli/commands/fleet.d.ts +8 -0
- package/dist/cli/commands/fleet.d.ts.map +1 -1
- package/dist/cli/commands/fleet.js +55 -21
- package/dist/cli/commands/fleet.js.map +1 -1
- package/dist/cli/commands/improve/index.d.ts +2 -2
- package/dist/cli/commands/improve/index.d.ts.map +1 -1
- package/dist/cli/commands/improve/index.js +76 -38
- package/dist/cli/commands/improve/index.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/commands/learn/index.d.ts.map +1 -1
- package/dist/cli/commands/learn/index.js +57 -19
- package/dist/cli/commands/learn/index.js.map +1 -1
- package/dist/cli/commands/memory/index.d.ts +23 -4
- package/dist/cli/commands/memory/index.d.ts.map +1 -1
- package/dist/cli/commands/memory/index.js.map +1 -1
- package/dist/cli/commands/memory/stats.js +1 -1
- package/dist/cli/commands/memory/stats.js.map +1 -1
- package/dist/cli/commands/memory/vacuum.js +3 -3
- package/dist/cli/commands/memory/vacuum.js.map +1 -1
- package/dist/cli/commands/patterns/extract.d.ts.map +1 -1
- package/dist/cli/commands/patterns/extract.js +4 -3
- package/dist/cli/commands/patterns/extract.js.map +1 -1
- package/dist/cli/commands/patterns/index-new.d.ts +10 -1
- package/dist/cli/commands/patterns/index-new.d.ts.map +1 -1
- package/dist/cli/commands/patterns/index-new.js.map +1 -1
- package/dist/cli/commands/patterns/index.d.ts +2 -2
- package/dist/cli/commands/patterns/index.d.ts.map +1 -1
- package/dist/cli/commands/patterns/index.js +105 -19
- package/dist/cli/commands/patterns/index.js.map +1 -1
- package/dist/cli/commands/patterns/list.d.ts.map +1 -1
- package/dist/cli/commands/patterns/list.js +2 -1
- package/dist/cli/commands/patterns/list.js.map +1 -1
- package/dist/cli/commands/patterns/search.d.ts.map +1 -1
- package/dist/cli/commands/patterns/search.js +2 -1
- package/dist/cli/commands/patterns/search.js.map +1 -1
- package/dist/cli/commands/patterns/show.d.ts.map +1 -1
- package/dist/cli/commands/patterns/show.js +7 -6
- package/dist/cli/commands/patterns/show.js.map +1 -1
- package/dist/cli/commands/patterns/stats.d.ts.map +1 -1
- package/dist/cli/commands/patterns/stats.js +5 -4
- package/dist/cli/commands/patterns/stats.js.map +1 -1
- package/dist/cli/commands/quality/baseline.d.ts.map +1 -1
- package/dist/cli/commands/quality/baseline.js +2 -2
- package/dist/cli/commands/quality/baseline.js.map +1 -1
- package/dist/cli/commands/quality/compare.d.ts.map +1 -1
- package/dist/cli/commands/quality/compare.js +1 -1
- package/dist/cli/commands/quality/compare.js.map +1 -1
- package/dist/cli/commands/quality/trends.d.ts.map +1 -1
- package/dist/cli/commands/quality/trends.js.map +1 -1
- package/dist/cli/commands/routing/index.d.ts.map +1 -1
- package/dist/cli/commands/routing/index.js +90 -35
- package/dist/cli/commands/routing/index.js.map +1 -1
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +59 -33
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/workflow/cancel.d.ts +14 -7
- package/dist/cli/commands/workflow/cancel.d.ts.map +1 -1
- package/dist/cli/commands/workflow/cancel.js +23 -6
- package/dist/cli/commands/workflow/cancel.js.map +1 -1
- package/dist/cli/commands/workflow/list.d.ts.map +1 -1
- package/dist/cli/commands/workflow/list.js +46 -9
- package/dist/cli/commands/workflow/list.js.map +1 -1
- package/dist/cli/commands/workflow/pause.d.ts +1 -1
- package/dist/cli/commands/workflow/pause.d.ts.map +1 -1
- package/dist/cli/commands/workflow/pause.js +21 -4
- package/dist/cli/commands/workflow/pause.js.map +1 -1
- 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/ArtifactWorkflow.d.ts.map +1 -1
- package/dist/core/ArtifactWorkflow.js +130 -43
- package/dist/core/ArtifactWorkflow.js.map +1 -1
- package/dist/core/MemoryManager.d.ts +5 -5
- package/dist/core/MemoryManager.d.ts.map +1 -1
- package/dist/core/MemoryManager.js +4 -3
- package/dist/core/MemoryManager.js.map +1 -1
- package/dist/core/PatternDatabaseAdapter.d.ts +1 -1
- package/dist/core/PatternDatabaseAdapter.d.ts.map +1 -1
- package/dist/core/PatternDatabaseAdapter.js +12 -12
- package/dist/core/PatternDatabaseAdapter.js.map +1 -1
- package/dist/core/coordination/BlackboardCoordination.d.ts +2 -2
- package/dist/core/coordination/BlackboardCoordination.d.ts.map +1 -1
- package/dist/core/coordination/ConsensusGating.d.ts.map +1 -1
- package/dist/core/coordination/ConsensusGating.js +50 -9
- package/dist/core/coordination/ConsensusGating.js.map +1 -1
- package/dist/core/coordination/GOAPCoordination.d.ts +1 -1
- package/dist/core/coordination/GOAPCoordination.d.ts.map +1 -1
- package/dist/core/coordination/GOAPCoordination.js +70 -8
- package/dist/core/coordination/GOAPCoordination.js.map +1 -1
- package/dist/core/coordination/OODACoordination.d.ts +10 -10
- package/dist/core/coordination/OODACoordination.d.ts.map +1 -1
- package/dist/core/coordination/OODACoordination.js +48 -9
- package/dist/core/coordination/OODACoordination.js.map +1 -1
- package/dist/core/hooks/RollbackManager.d.ts +2 -2
- package/dist/core/hooks/RollbackManager.d.ts.map +1 -1
- package/dist/core/hooks/RollbackManager.js +41 -4
- package/dist/core/hooks/RollbackManager.js.map +1 -1
- package/dist/core/hooks/VerificationHookManager.d.ts +8 -8
- package/dist/core/hooks/VerificationHookManager.d.ts.map +1 -1
- package/dist/core/hooks/VerificationHookManager.js +12 -2
- package/dist/core/hooks/VerificationHookManager.js.map +1 -1
- package/dist/core/hooks/checkers/ConfigurationChecker.d.ts +1 -1
- package/dist/core/hooks/checkers/ConfigurationChecker.d.ts.map +1 -1
- package/dist/core/hooks/checkers/ConfigurationChecker.js.map +1 -1
- package/dist/core/hooks/validators/OutputValidator.d.ts +2 -2
- package/dist/core/hooks/validators/OutputValidator.d.ts.map +1 -1
- package/dist/core/hooks/validators/QualityValidator.d.ts +1 -1
- package/dist/core/hooks/validators/QualityValidator.d.ts.map +1 -1
- package/dist/core/memory/HNSWVectorMemory.js +1 -1
- package/dist/core/memory/SwarmMemoryManager.d.ts +143 -37
- package/dist/core/memory/SwarmMemoryManager.d.ts.map +1 -1
- package/dist/core/memory/SwarmMemoryManager.js +28 -25
- package/dist/core/memory/SwarmMemoryManager.js.map +1 -1
- package/dist/core/memory/VersionHistory.d.ts +5 -5
- package/dist/core/memory/VersionHistory.d.ts.map +1 -1
- package/dist/core/memory/VersionHistory.js +37 -4
- package/dist/core/memory/VersionHistory.js.map +1 -1
- package/dist/core/neural/NeuralTrainer.d.ts +12 -0
- package/dist/core/neural/NeuralTrainer.d.ts.map +1 -1
- package/dist/core/neural/NeuralTrainer.js +162 -18
- package/dist/core/neural/NeuralTrainer.js.map +1 -1
- package/dist/core/optimization/SwarmOptimizer.d.ts.map +1 -1
- package/dist/core/optimization/SwarmOptimizer.js +198 -26
- package/dist/core/optimization/SwarmOptimizer.js.map +1 -1
- package/dist/core/orchestration/WorkflowOrchestrator.d.ts +5 -1
- package/dist/core/orchestration/WorkflowOrchestrator.d.ts.map +1 -1
- package/dist/core/orchestration/WorkflowOrchestrator.js +58 -12
- package/dist/core/orchestration/WorkflowOrchestrator.js.map +1 -1
- package/dist/core/orchestration/types.d.ts +8 -8
- package/dist/core/orchestration/types.d.ts.map +1 -1
- package/dist/core/routing/AdaptiveModelRouter.d.ts +3 -3
- package/dist/core/routing/AdaptiveModelRouter.d.ts.map +1 -1
- package/dist/core/routing/AdaptiveModelRouter.js.map +1 -1
- package/dist/core/routing/CostTracker.d.ts +10 -2
- package/dist/core/routing/CostTracker.d.ts.map +1 -1
- package/dist/core/routing/CostTracker.js +36 -4
- package/dist/core/routing/CostTracker.js.map +1 -1
- package/dist/core/routing/FleetManagerIntegration.d.ts +1 -1
- package/dist/core/routing/types.d.ts +41 -4
- package/dist/core/routing/types.d.ts.map +1 -1
- package/dist/core/strategies/DefaultMemoryStrategy.d.ts.map +1 -1
- package/dist/core/strategies/DefaultMemoryStrategy.js +33 -1
- package/dist/core/strategies/DefaultMemoryStrategy.js.map +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/learning/ImprovementLoop.d.ts +4 -4
- package/dist/learning/ImprovementLoop.d.ts.map +1 -1
- package/dist/learning/ImprovementLoop.js +108 -9
- package/dist/learning/ImprovementLoop.js.map +1 -1
- package/dist/learning/LearningEngine.d.ts +2 -2
- package/dist/learning/LearningEngine.d.ts.map +1 -1
- package/dist/learning/LearningEngine.js +72 -30
- package/dist/learning/LearningEngine.js.map +1 -1
- package/dist/learning/PerformanceTracker.d.ts.map +1 -1
- package/dist/learning/PerformanceTracker.js +40 -4
- package/dist/learning/PerformanceTracker.js.map +1 -1
- package/dist/learning/TransferLearningManager.d.ts +1 -1
- package/dist/learning/TransferLearningManager.d.ts.map +1 -1
- package/dist/learning/TransferLearningManager.js +143 -9
- package/dist/learning/TransferLearningManager.js.map +1 -1
- package/dist/learning/metrics/AlertManager.d.ts.map +1 -1
- package/dist/learning/metrics/AlertManager.js +20 -9
- package/dist/learning/metrics/AlertManager.js.map +1 -1
- package/dist/learning/metrics/LearningMetrics.d.ts.map +1 -1
- package/dist/learning/metrics/LearningMetrics.js +21 -21
- package/dist/learning/metrics/LearningMetrics.js.map +1 -1
- package/dist/learning/metrics/MetricsCollector.d.ts.map +1 -1
- package/dist/learning/metrics/MetricsCollector.js +20 -7
- package/dist/learning/metrics/MetricsCollector.js.map +1 -1
- package/dist/learning/metrics/MetricsStore.js +6 -6
- package/dist/learning/metrics/MetricsStore.js.map +1 -1
- package/dist/mcp/handlers/base-handler.d.ts +8 -8
- package/dist/mcp/handlers/base-handler.d.ts.map +1 -1
- package/dist/mcp/handlers/base-handler.js +5 -4
- package/dist/mcp/handlers/base-handler.js.map +1 -1
- package/dist/mcp/handlers/coordination/event-emit.d.ts +2 -2
- package/dist/mcp/handlers/coordination/event-emit.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/event-emit.js.map +1 -1
- package/dist/mcp/handlers/coordination/event-subscribe.d.ts +2 -2
- package/dist/mcp/handlers/coordination/event-subscribe.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/event-subscribe.js +2 -1
- package/dist/mcp/handlers/coordination/event-subscribe.js.map +1 -1
- package/dist/mcp/handlers/coordination/task-status.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/task-status.js +40 -18
- package/dist/mcp/handlers/coordination/task-status.js.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-checkpoint.d.ts +5 -5
- package/dist/mcp/handlers/coordination/workflow-checkpoint.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-checkpoint.js +64 -16
- package/dist/mcp/handlers/coordination/workflow-checkpoint.js.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-create.d.ts +3 -3
- package/dist/mcp/handlers/coordination/workflow-create.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-execute.d.ts +3 -3
- package/dist/mcp/handlers/coordination/workflow-execute.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-execute.js +2 -2
- package/dist/mcp/handlers/coordination/workflow-execute.js.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-resume.d.ts +2 -2
- package/dist/mcp/handlers/coordination/workflow-resume.d.ts.map +1 -1
- package/dist/mcp/handlers/coordination/workflow-resume.js +26 -6
- package/dist/mcp/handlers/coordination/workflow-resume.js.map +1 -1
- package/dist/mcp/handlers/learning/learning-query.d.ts.map +1 -1
- package/dist/mcp/handlers/learning/learning-query.js +1 -1
- package/dist/mcp/handlers/learning/learning-query.js.map +1 -1
- package/dist/mcp/handlers/phase2/Phase2Tools.d.ts +5 -4
- package/dist/mcp/handlers/phase2/Phase2Tools.d.ts.map +1 -1
- package/dist/mcp/handlers/phase2/Phase2Tools.js +6 -4
- package/dist/mcp/handlers/phase2/Phase2Tools.js.map +1 -1
- package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts +247 -31
- package/dist/mcp/handlers/phase3/Phase3DomainTools.d.ts.map +1 -1
- package/dist/mcp/handlers/phase3/Phase3DomainTools.js +3 -3
- package/dist/mcp/handlers/phase3/Phase3DomainTools.js.map +1 -1
- package/dist/mcp/handlers/task-orchestrate.d.ts +3 -3
- package/dist/mcp/handlers/task-orchestrate.d.ts.map +1 -1
- package/dist/mcp/handlers/task-orchestrate.js +3 -2
- package/dist/mcp/handlers/task-orchestrate.js.map +1 -1
- package/dist/mcp/handlers/test/generate-integration-tests.d.ts +15 -3
- package/dist/mcp/handlers/test/generate-integration-tests.d.ts.map +1 -1
- package/dist/mcp/handlers/test/generate-integration-tests.js +5 -5
- package/dist/mcp/handlers/test/generate-integration-tests.js.map +1 -1
- package/dist/mcp/handlers/test/generate-unit-tests.js.map +1 -1
- package/dist/mcp/handlers/test/test-coverage-detailed.d.ts.map +1 -1
- package/dist/mcp/handlers/test/test-coverage-detailed.js +1 -1
- package/dist/mcp/handlers/test/test-coverage-detailed.js.map +1 -1
- 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 +128 -11
- package/dist/mcp/handlers/test/test-execute-parallel.js.map +1 -1
- package/dist/mcp/handlers/test/test-optimize-sublinear.d.ts +8 -1
- package/dist/mcp/handlers/test/test-optimize-sublinear.d.ts.map +1 -1
- package/dist/mcp/handlers/test/test-optimize-sublinear.js +1 -1
- package/dist/mcp/handlers/test/test-optimize-sublinear.js.map +1 -1
- package/dist/mcp/handlers/test/test-report-comprehensive.d.ts +14 -2
- package/dist/mcp/handlers/test/test-report-comprehensive.d.ts.map +1 -1
- package/dist/mcp/handlers/test/test-report-comprehensive.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/mcp/server.d.ts +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +11 -10
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/tools/qe/test-data/mask-sensitive-data.d.ts +2 -6
- package/dist/mcp/tools/qe/test-data/mask-sensitive-data.d.ts.map +1 -1
- package/dist/mcp/tools/qe/test-data/mask-sensitive-data.js.map +1 -1
- package/dist/reasoning/CodeSignatureGenerator.d.ts +37 -1
- package/dist/reasoning/CodeSignatureGenerator.d.ts.map +1 -1
- package/dist/reasoning/CodeSignatureGenerator.js +113 -53
- package/dist/reasoning/CodeSignatureGenerator.js.map +1 -1
- package/dist/reasoning/PatternExtractor.d.ts +91 -10
- package/dist/reasoning/PatternExtractor.d.ts.map +1 -1
- package/dist/reasoning/PatternExtractor.js +104 -26
- package/dist/reasoning/PatternExtractor.js.map +1 -1
- 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/dist/types/hook.types.d.ts +628 -70
- package/dist/types/hook.types.d.ts.map +1 -1
- package/dist/utils/Config.d.ts +1 -1
- package/dist/utils/Config.d.ts.map +1 -1
- package/dist/utils/Database.d.ts +187 -44
- package/dist/utils/Database.d.ts.map +1 -1
- package/dist/utils/Database.js +24 -15
- package/dist/utils/Database.js.map +1 -1
- package/dist/utils/FakerDataGenerator.d.ts +28 -4
- package/dist/utils/FakerDataGenerator.d.ts.map +1 -1
- package/dist/utils/FakerDataGenerator.js +2 -2
- package/dist/utils/FakerDataGenerator.js.map +1 -1
- package/dist/utils/Logger.d.ts +6 -6
- package/dist/utils/Logger.d.ts.map +1 -1
- package/dist/utils/Logger.js +5 -5
- package/dist/utils/Logger.js.map +1 -1
- package/dist/utils/SecureValidation.d.ts +4 -4
- package/dist/utils/SecureValidation.d.ts.map +1 -1
- package/dist/utils/SecureValidation.js.map +1 -1
- package/dist/utils/SeededRandom.d.ts +297 -0
- package/dist/utils/SeededRandom.d.ts.map +1 -0
- package/dist/utils/SeededRandom.js +389 -0
- package/dist/utils/SeededRandom.js.map +1 -0
- package/dist/utils/TestFrameworkExecutor.d.ts.map +1 -1
- package/dist/utils/TestFrameworkExecutor.js +3 -3
- package/dist/utils/TestFrameworkExecutor.js.map +1 -1
- package/dist/utils/batch-operations.d.ts +2 -2
- package/dist/utils/batch-operations.d.ts.map +1 -1
- package/dist/utils/batch-operations.js.map +1 -1
- package/dist/utils/filtering.d.ts +1 -1
- package/dist/utils/filtering.d.ts.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +5 -1
- package/dist/utils/index.js.map +1 -1
- 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
|
@@ -13,6 +13,125 @@
|
|
|
13
13
|
*/
|
|
14
14
|
import { BaseAgent, BaseAgentConfig } from './BaseAgent';
|
|
15
15
|
import { QETask } from '../types';
|
|
16
|
+
import { ResilienceResult, SPOFResult } from '../fleet/topology/index.js';
|
|
17
|
+
import { PostTaskData, TaskErrorData, FlexibleTaskResult, PreTaskData } from '../types/hook.types';
|
|
18
|
+
/**
|
|
19
|
+
* Result of fleet initialization
|
|
20
|
+
*/
|
|
21
|
+
interface FleetInitResult {
|
|
22
|
+
topology: string;
|
|
23
|
+
poolsInitialized: string[];
|
|
24
|
+
totalAgents: number;
|
|
25
|
+
status: string;
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* Result of workload rebalancing
|
|
29
|
+
*/
|
|
30
|
+
interface RebalanceResult {
|
|
31
|
+
strategy: Record<string, number>;
|
|
32
|
+
fleetUtilization: number;
|
|
33
|
+
timestamp: Date;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Payload for topology optimization results
|
|
37
|
+
*/
|
|
38
|
+
interface TopologyOptimizationResult {
|
|
39
|
+
optimizations: unknown[];
|
|
40
|
+
currentResilience?: number;
|
|
41
|
+
currentGrade?: string;
|
|
42
|
+
message?: string;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Result of terminating an agent
|
|
46
|
+
*/
|
|
47
|
+
interface TerminateAgentResult {
|
|
48
|
+
agentId: string;
|
|
49
|
+
terminated: boolean;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Result of changing topology
|
|
53
|
+
*/
|
|
54
|
+
interface TopologyChangeResult {
|
|
55
|
+
oldMode: string;
|
|
56
|
+
newMode: string;
|
|
57
|
+
nodes: number;
|
|
58
|
+
connections: number;
|
|
59
|
+
efficiency: number;
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Result of scaling an agent pool
|
|
63
|
+
*/
|
|
64
|
+
interface ScalePoolResult {
|
|
65
|
+
type: string;
|
|
66
|
+
spawnedCount?: number;
|
|
67
|
+
agentIds?: string[];
|
|
68
|
+
poolStatus?: AgentPoolStatus;
|
|
69
|
+
terminatedCount?: number;
|
|
70
|
+
reason?: string;
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Result of recovering an agent
|
|
74
|
+
*/
|
|
75
|
+
interface RecoverAgentResult {
|
|
76
|
+
agentId: string;
|
|
77
|
+
recovered: boolean;
|
|
78
|
+
newAgentId?: string;
|
|
79
|
+
attempts?: number;
|
|
80
|
+
reason?: string;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Fleet status response
|
|
84
|
+
*/
|
|
85
|
+
interface FleetStatusResult {
|
|
86
|
+
fleetId: string;
|
|
87
|
+
status: string;
|
|
88
|
+
topology: string;
|
|
89
|
+
totalAgents: number;
|
|
90
|
+
activeAgents: number;
|
|
91
|
+
agentPools: Record<string, {
|
|
92
|
+
active: number;
|
|
93
|
+
idle: number;
|
|
94
|
+
busy: number;
|
|
95
|
+
failed: number;
|
|
96
|
+
utilization: string;
|
|
97
|
+
}>;
|
|
98
|
+
resourceUtilization: {
|
|
99
|
+
cpu: string;
|
|
100
|
+
memory: string;
|
|
101
|
+
};
|
|
102
|
+
workloadQueue: number;
|
|
103
|
+
activeConflicts: number;
|
|
104
|
+
timestamp: Date;
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Detailed status response
|
|
108
|
+
*/
|
|
109
|
+
interface DetailedStatusResult {
|
|
110
|
+
fleetMetrics: FleetMetrics;
|
|
111
|
+
topology: TopologyState;
|
|
112
|
+
agentPools: Record<string, AgentPoolStatus>;
|
|
113
|
+
resourceAllocations: Record<string, ResourceAllocation>;
|
|
114
|
+
activeConflicts: Record<string, ConflictResolution>;
|
|
115
|
+
workloadQueueSize: number;
|
|
116
|
+
scalingHistory: ScalingDecision[];
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Result of conflict resolution
|
|
120
|
+
*/
|
|
121
|
+
interface ConflictResolutionResult {
|
|
122
|
+
conflictId: string;
|
|
123
|
+
type: ConflictResolution['type'];
|
|
124
|
+
agents: string[];
|
|
125
|
+
severity: ConflictResolution['severity'];
|
|
126
|
+
strategy: string;
|
|
127
|
+
resolved: boolean;
|
|
128
|
+
timestamp: Date;
|
|
129
|
+
resolution: unknown;
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Union type for all possible task results from performTask
|
|
133
|
+
*/
|
|
134
|
+
type FleetTaskResult = FleetInitResult | SpawnResult | TerminateAgentResult | TopologyChangeResult | RebalanceResult | ConflictResolutionResult | FleetStatusResult | FleetMetrics | ScalePoolResult | RecoverAgentResult | ResilienceResult | SPOFResult[] | TopologyOptimizationResult | null;
|
|
16
135
|
export interface FleetCommanderConfig extends BaseAgentConfig {
|
|
17
136
|
topology?: 'hierarchical' | 'mesh' | 'hybrid' | 'adaptive';
|
|
18
137
|
maxAgents?: number;
|
|
@@ -39,6 +158,14 @@ export interface FleetCommanderConfig extends BaseAgentConfig {
|
|
|
39
158
|
heartbeatTimeout: number;
|
|
40
159
|
maxRetries: number;
|
|
41
160
|
};
|
|
161
|
+
/** Enable SPOF analysis using min-cut algorithms */
|
|
162
|
+
spofAnalysis?: {
|
|
163
|
+
enabled: boolean;
|
|
164
|
+
/** Minimum resilience score threshold (0-1) */
|
|
165
|
+
minResilienceScore?: number;
|
|
166
|
+
/** Auto-warn on topology changes with critical SPOFs */
|
|
167
|
+
autoWarn?: boolean;
|
|
168
|
+
};
|
|
42
169
|
}
|
|
43
170
|
export interface AgentPoolStatus {
|
|
44
171
|
type: string;
|
|
@@ -73,6 +200,44 @@ export interface ConflictResolution {
|
|
|
73
200
|
resolved: boolean;
|
|
74
201
|
timestamp: Date;
|
|
75
202
|
}
|
|
203
|
+
/**
|
|
204
|
+
* Configuration for spawning new agents
|
|
205
|
+
*/
|
|
206
|
+
export interface SpawnConfig {
|
|
207
|
+
/** CPU allocation for the agent */
|
|
208
|
+
cpu?: number;
|
|
209
|
+
/** Memory allocation (e.g., '512MB', '1GB') */
|
|
210
|
+
memory?: string;
|
|
211
|
+
/** Priority level for resource allocation */
|
|
212
|
+
priority?: 'low' | 'medium' | 'high' | 'critical';
|
|
213
|
+
/** Custom capabilities for the agent */
|
|
214
|
+
capabilities?: string[];
|
|
215
|
+
/** Initial context data for the agent */
|
|
216
|
+
context?: Record<string, unknown>;
|
|
217
|
+
/** Whether to enable fault tolerance for this agent */
|
|
218
|
+
faultTolerant?: boolean;
|
|
219
|
+
/** Maximum retry attempts for agent recovery */
|
|
220
|
+
maxRetries?: number;
|
|
221
|
+
/** Whether the resource is already allocated */
|
|
222
|
+
allocated?: boolean;
|
|
223
|
+
}
|
|
224
|
+
/**
|
|
225
|
+
* Payload for agent spawn requests
|
|
226
|
+
*/
|
|
227
|
+
export interface SpawnPayload {
|
|
228
|
+
type: string;
|
|
229
|
+
count?: number;
|
|
230
|
+
config?: SpawnConfig;
|
|
231
|
+
}
|
|
232
|
+
/**
|
|
233
|
+
* Result of agent spawn operation
|
|
234
|
+
*/
|
|
235
|
+
export interface SpawnResult {
|
|
236
|
+
type: string;
|
|
237
|
+
spawnedCount: number;
|
|
238
|
+
agentIds: string[];
|
|
239
|
+
poolStatus: AgentPoolStatus;
|
|
240
|
+
}
|
|
76
241
|
export interface ScalingDecision {
|
|
77
242
|
action: 'scale-up' | 'scale-down' | 'no-action';
|
|
78
243
|
agentType: string;
|
|
@@ -105,30 +270,26 @@ export declare class FleetCommanderAgent extends BaseAgent {
|
|
|
105
270
|
private workloadQueue;
|
|
106
271
|
private heartbeatMonitorInterval?;
|
|
107
272
|
private autoScalingMonitorInterval?;
|
|
273
|
+
/** Min-cut based topology analyzer for SPOF detection */
|
|
274
|
+
private topologyAnalyzer?;
|
|
275
|
+
/** Last resilience analysis result */
|
|
276
|
+
private lastResilienceResult?;
|
|
108
277
|
private fleetMetrics;
|
|
109
278
|
constructor(config: FleetCommanderConfig);
|
|
110
279
|
/**
|
|
111
280
|
* Pre-task hook - Load fleet coordination state before task execution
|
|
112
281
|
*/
|
|
113
|
-
protected onPreTask(data:
|
|
114
|
-
assignment: any;
|
|
115
|
-
}): Promise<void>;
|
|
282
|
+
protected onPreTask(data: PreTaskData): Promise<void>;
|
|
116
283
|
/**
|
|
117
284
|
* Post-task hook - Store coordination results and emit fleet events
|
|
118
285
|
*/
|
|
119
|
-
protected onPostTask(data:
|
|
120
|
-
assignment: any;
|
|
121
|
-
result: any;
|
|
122
|
-
}): Promise<void>;
|
|
286
|
+
protected onPostTask(data: PostTaskData): Promise<void>;
|
|
123
287
|
/**
|
|
124
288
|
* Task error hook - Handle fleet coordination failures
|
|
125
289
|
*/
|
|
126
|
-
protected onTaskError(data:
|
|
127
|
-
assignment: any;
|
|
128
|
-
error: Error;
|
|
129
|
-
}): Promise<void>;
|
|
290
|
+
protected onTaskError(data: TaskErrorData): Promise<void>;
|
|
130
291
|
protected initializeComponents(): Promise<void>;
|
|
131
|
-
protected performTask(task: QETask): Promise<
|
|
292
|
+
protected performTask(task: QETask): Promise<FleetTaskResult>;
|
|
132
293
|
protected loadKnowledge(): Promise<void>;
|
|
133
294
|
protected cleanup(): Promise<void>;
|
|
134
295
|
private initializeFleet;
|
|
@@ -145,6 +306,29 @@ export declare class FleetCommanderAgent extends BaseAgent {
|
|
|
145
306
|
private updateTopologyConnections;
|
|
146
307
|
private calculateAdaptiveConnections;
|
|
147
308
|
private calculateTopologyEfficiency;
|
|
309
|
+
/**
|
|
310
|
+
* Analyze current topology for resilience and SPOFs
|
|
311
|
+
*
|
|
312
|
+
* Uses min-cut algorithm to detect single points of failure
|
|
313
|
+
* and calculate overall topology resilience score.
|
|
314
|
+
*/
|
|
315
|
+
private analyzeTopologyResilience;
|
|
316
|
+
/**
|
|
317
|
+
* Get detected SPOFs in current topology
|
|
318
|
+
*/
|
|
319
|
+
private getTopologySpofs;
|
|
320
|
+
/**
|
|
321
|
+
* Get topology optimization suggestions
|
|
322
|
+
*/
|
|
323
|
+
private getTopologyOptimizations;
|
|
324
|
+
/**
|
|
325
|
+
* Build FleetTopology from current agent state
|
|
326
|
+
*/
|
|
327
|
+
private buildFleetTopology;
|
|
328
|
+
/**
|
|
329
|
+
* Get last resilience analysis result (cached)
|
|
330
|
+
*/
|
|
331
|
+
getLastResilienceResult(): ResilienceResult | undefined;
|
|
148
332
|
private rebalanceWorkload;
|
|
149
333
|
private calculateRebalancingStrategy;
|
|
150
334
|
private optimizeUtilization;
|
|
@@ -185,11 +369,12 @@ export declare class FleetCommanderAgent extends BaseAgent {
|
|
|
185
369
|
/**
|
|
186
370
|
* Get current fleet commander status with detailed metrics
|
|
187
371
|
*/
|
|
188
|
-
getDetailedStatus(): Promise<
|
|
372
|
+
getDetailedStatus(): Promise<Record<string, unknown> & DetailedStatusResult>;
|
|
189
373
|
/**
|
|
190
374
|
* Extract domain-specific metrics for Nightly-Learner
|
|
191
375
|
* Provides rich fleet coordination metrics for pattern learning
|
|
192
376
|
*/
|
|
193
|
-
protected extractTaskMetrics(result:
|
|
377
|
+
protected extractTaskMetrics(result: FlexibleTaskResult): Record<string, number>;
|
|
194
378
|
}
|
|
379
|
+
export {};
|
|
195
380
|
//# sourceMappingURL=FleetCommanderAgent.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FleetCommanderAgent.d.ts","sourceRoot":"","sources":["../../src/agents/FleetCommanderAgent.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAwC,MAAM,EAAe,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"FleetCommanderAgent.d.ts","sourceRoot":"","sources":["../../src/agents/FleetCommanderAgent.ts"],"names":[],"mappings":"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"}
|
|
@@ -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
|
// ============================================================================
|
|
@@ -151,13 +164,17 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
151
164
|
async onPostTask(data) {
|
|
152
165
|
// Call parent implementation first (includes AgentDB storage, learning)
|
|
153
166
|
await super.onPostTask(data);
|
|
167
|
+
// Type-safe access to result properties
|
|
168
|
+
const result = data.result;
|
|
169
|
+
const success = result?.success !== false;
|
|
170
|
+
const agentsCoordinated = result?.agentsCoordinated || 0;
|
|
154
171
|
// Store fleet coordination results
|
|
155
172
|
await this.memoryStore.store(`aqe/${this.agentId.type}/results/${data.assignment.id}`, {
|
|
156
173
|
result: data.result,
|
|
157
174
|
timestamp: new Date(),
|
|
158
175
|
taskType: data.assignment.task.type,
|
|
159
|
-
success
|
|
160
|
-
agentsCoordinated
|
|
176
|
+
success,
|
|
177
|
+
agentsCoordinated
|
|
161
178
|
}, 86400 // 24 hours
|
|
162
179
|
);
|
|
163
180
|
// Emit fleet coordination event for other agents
|
|
@@ -275,6 +292,12 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
275
292
|
return await this.scaleAgentPool(task.payload);
|
|
276
293
|
case 'recover-agent':
|
|
277
294
|
return await this.recoverAgent(task.payload);
|
|
295
|
+
case 'topology-analyze':
|
|
296
|
+
return await this.analyzeTopologyResilience();
|
|
297
|
+
case 'topology-spof-check':
|
|
298
|
+
return await this.getTopologySpofs();
|
|
299
|
+
case 'topology-optimize':
|
|
300
|
+
return await this.getTopologyOptimizations();
|
|
278
301
|
default:
|
|
279
302
|
throw new Error(`Unknown task type: ${task.type}`);
|
|
280
303
|
}
|
|
@@ -325,8 +348,8 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
325
348
|
// ============================================================================
|
|
326
349
|
// Fleet Initialization
|
|
327
350
|
// ============================================================================
|
|
328
|
-
async initializeFleet(
|
|
329
|
-
console.log('[FleetCommander] Initializing fleet with config:',
|
|
351
|
+
async initializeFleet(_config) {
|
|
352
|
+
console.log('[FleetCommander] Initializing fleet with config:', _config);
|
|
330
353
|
const results = {
|
|
331
354
|
topology: this.topologyState.mode,
|
|
332
355
|
poolsInitialized: [],
|
|
@@ -335,10 +358,9 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
335
358
|
};
|
|
336
359
|
// Initialize agent pools based on configuration
|
|
337
360
|
for (const [agentType, poolConfig] of Object.entries(this.config.agentPools || {})) {
|
|
338
|
-
const pool = poolConfig;
|
|
339
361
|
// Spawn minimum required agents for each pool
|
|
340
|
-
for (let i = 0; i <
|
|
341
|
-
await this.requestAgentSpawn(agentType,
|
|
362
|
+
for (let i = 0; i < poolConfig.min; i++) {
|
|
363
|
+
await this.requestAgentSpawn(agentType, poolConfig.priority);
|
|
342
364
|
results.totalAgents++;
|
|
343
365
|
}
|
|
344
366
|
results.poolsInitialized.push(agentType);
|
|
@@ -592,6 +614,213 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
592
614
|
return this.topologyState.efficiency;
|
|
593
615
|
}
|
|
594
616
|
// ============================================================================
|
|
617
|
+
// Topology Resilience Analysis (Min-Cut SPOF Detection)
|
|
618
|
+
// ============================================================================
|
|
619
|
+
/**
|
|
620
|
+
* Analyze current topology for resilience and SPOFs
|
|
621
|
+
*
|
|
622
|
+
* Uses min-cut algorithm to detect single points of failure
|
|
623
|
+
* and calculate overall topology resilience score.
|
|
624
|
+
*/
|
|
625
|
+
async analyzeTopologyResilience() {
|
|
626
|
+
if (!this.topologyAnalyzer) {
|
|
627
|
+
console.warn('[FleetCommander] SPOF analysis disabled');
|
|
628
|
+
return null;
|
|
629
|
+
}
|
|
630
|
+
console.log('[FleetCommander] Analyzing topology resilience...');
|
|
631
|
+
const fleetTopology = await this.buildFleetTopology();
|
|
632
|
+
const result = await this.topologyAnalyzer.analyzeResilience(fleetTopology);
|
|
633
|
+
// Store result for caching
|
|
634
|
+
this.lastResilienceResult = result;
|
|
635
|
+
// Store in memory for other agents
|
|
636
|
+
await this.memoryStore.store('aqe/fleet/resilience', {
|
|
637
|
+
result,
|
|
638
|
+
timestamp: new Date(),
|
|
639
|
+
});
|
|
640
|
+
// Auto-warn if enabled and critical SPOFs detected
|
|
641
|
+
if (this.config.spofAnalysis?.autoWarn && result.criticalSpofs.length > 0) {
|
|
642
|
+
this.emitEvent('fleet.spof-warning', {
|
|
643
|
+
criticalSpofs: result.criticalSpofs,
|
|
644
|
+
resilienceScore: result.score,
|
|
645
|
+
grade: result.grade,
|
|
646
|
+
recommendations: result.recommendations,
|
|
647
|
+
}, 'critical');
|
|
648
|
+
console.warn(`[FleetCommander] WARNING: ${result.criticalSpofs.length} critical SPOF(s) detected. ` +
|
|
649
|
+
`Resilience score: ${(result.score * 100).toFixed(1)}% (Grade: ${result.grade})`);
|
|
650
|
+
}
|
|
651
|
+
return result;
|
|
652
|
+
}
|
|
653
|
+
/**
|
|
654
|
+
* Get detected SPOFs in current topology
|
|
655
|
+
*/
|
|
656
|
+
async getTopologySpofs() {
|
|
657
|
+
if (!this.topologyAnalyzer) {
|
|
658
|
+
return [];
|
|
659
|
+
}
|
|
660
|
+
const fleetTopology = await this.buildFleetTopology();
|
|
661
|
+
return await this.topologyAnalyzer.detectSpofs(fleetTopology);
|
|
662
|
+
}
|
|
663
|
+
/**
|
|
664
|
+
* Get topology optimization suggestions
|
|
665
|
+
*/
|
|
666
|
+
async getTopologyOptimizations() {
|
|
667
|
+
if (!this.topologyAnalyzer) {
|
|
668
|
+
return { optimizations: [], message: 'SPOF analysis disabled' };
|
|
669
|
+
}
|
|
670
|
+
const fleetTopology = await this.buildFleetTopology();
|
|
671
|
+
const optimizations = await this.topologyAnalyzer.suggestOptimizations(fleetTopology, this.lastResilienceResult);
|
|
672
|
+
return {
|
|
673
|
+
optimizations,
|
|
674
|
+
currentResilience: this.lastResilienceResult?.score,
|
|
675
|
+
currentGrade: this.lastResilienceResult?.grade,
|
|
676
|
+
};
|
|
677
|
+
}
|
|
678
|
+
/**
|
|
679
|
+
* Build FleetTopology from current agent state
|
|
680
|
+
*/
|
|
681
|
+
async buildFleetTopology() {
|
|
682
|
+
const nodes = [];
|
|
683
|
+
const edges = [];
|
|
684
|
+
// Build nodes from agent pools and allocations
|
|
685
|
+
for (const [agentId, allocation] of this.resourceAllocations.entries()) {
|
|
686
|
+
const agentData = await this.memoryStore.retrieve(`aqe/fleet/agents/${agentId}`);
|
|
687
|
+
if (!agentData)
|
|
688
|
+
continue;
|
|
689
|
+
// Determine role based on agent type
|
|
690
|
+
let role = 'worker';
|
|
691
|
+
if (agentData.type === types_1.QEAgentType.FLEET_COMMANDER) {
|
|
692
|
+
role = 'coordinator';
|
|
693
|
+
}
|
|
694
|
+
nodes.push({
|
|
695
|
+
id: agentId,
|
|
696
|
+
type: agentData.type,
|
|
697
|
+
role,
|
|
698
|
+
status: agentData.status || 'active',
|
|
699
|
+
priority: allocation.priority,
|
|
700
|
+
});
|
|
701
|
+
}
|
|
702
|
+
// Add self (FleetCommander) as coordinator if not already present
|
|
703
|
+
const selfId = this.agentId.id;
|
|
704
|
+
if (!nodes.find(n => n.id === selfId)) {
|
|
705
|
+
nodes.push({
|
|
706
|
+
id: selfId,
|
|
707
|
+
type: types_1.QEAgentType.FLEET_COMMANDER,
|
|
708
|
+
role: 'coordinator',
|
|
709
|
+
status: 'active',
|
|
710
|
+
priority: 'critical',
|
|
711
|
+
});
|
|
712
|
+
}
|
|
713
|
+
// Build edges based on topology mode
|
|
714
|
+
const nodeIds = nodes.map(n => n.id);
|
|
715
|
+
switch (this.topologyState.mode) {
|
|
716
|
+
case 'hierarchical':
|
|
717
|
+
// Star topology: commander connects to all workers
|
|
718
|
+
for (const nodeId of nodeIds) {
|
|
719
|
+
if (nodeId !== selfId) {
|
|
720
|
+
edges.push({
|
|
721
|
+
id: `${selfId}-${nodeId}`,
|
|
722
|
+
sourceId: selfId,
|
|
723
|
+
targetId: nodeId,
|
|
724
|
+
connectionType: 'command',
|
|
725
|
+
weight: 1.0,
|
|
726
|
+
bidirectional: true,
|
|
727
|
+
});
|
|
728
|
+
}
|
|
729
|
+
}
|
|
730
|
+
break;
|
|
731
|
+
case 'mesh':
|
|
732
|
+
// Full mesh: all nodes connected
|
|
733
|
+
for (let i = 0; i < nodeIds.length; i++) {
|
|
734
|
+
for (let j = i + 1; j < nodeIds.length; j++) {
|
|
735
|
+
edges.push({
|
|
736
|
+
id: `${nodeIds[i]}-${nodeIds[j]}`,
|
|
737
|
+
sourceId: nodeIds[i],
|
|
738
|
+
targetId: nodeIds[j],
|
|
739
|
+
connectionType: 'coordination',
|
|
740
|
+
weight: 1.0,
|
|
741
|
+
bidirectional: true,
|
|
742
|
+
});
|
|
743
|
+
}
|
|
744
|
+
}
|
|
745
|
+
break;
|
|
746
|
+
case 'hybrid':
|
|
747
|
+
// Hierarchical + some cross-connections
|
|
748
|
+
for (const nodeId of nodeIds) {
|
|
749
|
+
if (nodeId !== selfId) {
|
|
750
|
+
edges.push({
|
|
751
|
+
id: `${selfId}-${nodeId}`,
|
|
752
|
+
sourceId: selfId,
|
|
753
|
+
targetId: nodeId,
|
|
754
|
+
connectionType: 'command',
|
|
755
|
+
weight: 1.0,
|
|
756
|
+
bidirectional: true,
|
|
757
|
+
});
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
// Add some peer connections between workers
|
|
761
|
+
const workers = nodeIds.filter(id => id !== selfId);
|
|
762
|
+
for (let i = 0; i < workers.length - 1; i += 2) {
|
|
763
|
+
if (workers[i + 1]) {
|
|
764
|
+
edges.push({
|
|
765
|
+
id: `${workers[i]}-${workers[i + 1]}`,
|
|
766
|
+
sourceId: workers[i],
|
|
767
|
+
targetId: workers[i + 1],
|
|
768
|
+
connectionType: 'data',
|
|
769
|
+
weight: 0.5,
|
|
770
|
+
bidirectional: true,
|
|
771
|
+
});
|
|
772
|
+
}
|
|
773
|
+
}
|
|
774
|
+
break;
|
|
775
|
+
case 'adaptive':
|
|
776
|
+
// Dynamic based on utilization
|
|
777
|
+
const utilization = this.calculateFleetUtilization();
|
|
778
|
+
if (utilization < 0.5) {
|
|
779
|
+
// Low load: hierarchical
|
|
780
|
+
for (const nodeId of nodeIds) {
|
|
781
|
+
if (nodeId !== selfId) {
|
|
782
|
+
edges.push({
|
|
783
|
+
id: `${selfId}-${nodeId}`,
|
|
784
|
+
sourceId: selfId,
|
|
785
|
+
targetId: nodeId,
|
|
786
|
+
connectionType: 'command',
|
|
787
|
+
weight: 1.0,
|
|
788
|
+
bidirectional: true,
|
|
789
|
+
});
|
|
790
|
+
}
|
|
791
|
+
}
|
|
792
|
+
}
|
|
793
|
+
else {
|
|
794
|
+
// High load: mesh for better distribution
|
|
795
|
+
for (let i = 0; i < nodeIds.length; i++) {
|
|
796
|
+
for (let j = i + 1; j < nodeIds.length; j++) {
|
|
797
|
+
edges.push({
|
|
798
|
+
id: `${nodeIds[i]}-${nodeIds[j]}`,
|
|
799
|
+
sourceId: nodeIds[i],
|
|
800
|
+
targetId: nodeIds[j],
|
|
801
|
+
connectionType: 'coordination',
|
|
802
|
+
weight: 1.0,
|
|
803
|
+
bidirectional: true,
|
|
804
|
+
});
|
|
805
|
+
}
|
|
806
|
+
}
|
|
807
|
+
}
|
|
808
|
+
break;
|
|
809
|
+
}
|
|
810
|
+
return {
|
|
811
|
+
nodes,
|
|
812
|
+
edges,
|
|
813
|
+
mode: this.topologyState.mode,
|
|
814
|
+
lastUpdated: new Date(),
|
|
815
|
+
};
|
|
816
|
+
}
|
|
817
|
+
/**
|
|
818
|
+
* Get last resilience analysis result (cached)
|
|
819
|
+
*/
|
|
820
|
+
getLastResilienceResult() {
|
|
821
|
+
return this.lastResilienceResult;
|
|
822
|
+
}
|
|
823
|
+
// ============================================================================
|
|
595
824
|
// Load Balancing
|
|
596
825
|
// ============================================================================
|
|
597
826
|
async rebalanceWorkload(_payload) {
|
|
@@ -1019,46 +1248,53 @@ class FleetCommanderAgent extends BaseAgent_1.BaseAgent {
|
|
|
1019
1248
|
extractTaskMetrics(result) {
|
|
1020
1249
|
const metrics = {};
|
|
1021
1250
|
if (result && typeof result === 'object') {
|
|
1251
|
+
// Type-safe access to result object
|
|
1252
|
+
const resultObj = result;
|
|
1022
1253
|
// Fleet size and composition
|
|
1023
|
-
metrics.total_agents =
|
|
1024
|
-
metrics.active_agents =
|
|
1025
|
-
metrics.idle_agents =
|
|
1254
|
+
metrics.total_agents = resultObj.totalAgents || resultObj.agentCount || 0;
|
|
1255
|
+
metrics.active_agents = resultObj.activeAgents || 0;
|
|
1256
|
+
metrics.idle_agents = resultObj.idleAgents || 0;
|
|
1026
1257
|
// Task orchestration
|
|
1027
|
-
|
|
1028
|
-
|
|
1029
|
-
metrics.
|
|
1030
|
-
metrics.
|
|
1031
|
-
metrics.
|
|
1258
|
+
const orchestration = resultObj.orchestration;
|
|
1259
|
+
if (orchestration) {
|
|
1260
|
+
metrics.tasks_distributed = orchestration.tasksDistributed || 0;
|
|
1261
|
+
metrics.tasks_completed = orchestration.tasksCompleted || 0;
|
|
1262
|
+
metrics.tasks_failed = orchestration.tasksFailed || 0;
|
|
1263
|
+
metrics.distribution_efficiency = orchestration.efficiency || 0;
|
|
1032
1264
|
}
|
|
1033
1265
|
// Resource utilization
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
metrics.
|
|
1037
|
-
metrics.
|
|
1266
|
+
const resources = resultObj.resources;
|
|
1267
|
+
if (resources) {
|
|
1268
|
+
metrics.cpu_utilization = resources.cpuUtilization || 0;
|
|
1269
|
+
metrics.memory_utilization = resources.memoryUtilization || 0;
|
|
1270
|
+
metrics.resource_efficiency = resources.efficiency || 0;
|
|
1038
1271
|
}
|
|
1039
1272
|
// Scaling metrics
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
metrics.
|
|
1043
|
-
metrics.
|
|
1273
|
+
const scaling = resultObj.scaling;
|
|
1274
|
+
if (scaling) {
|
|
1275
|
+
metrics.scale_up_events = scaling.scaleUpEvents || 0;
|
|
1276
|
+
metrics.scale_down_events = scaling.scaleDownEvents || 0;
|
|
1277
|
+
metrics.auto_scaling_decisions = scaling.autoDecisions || 0;
|
|
1044
1278
|
}
|
|
1045
1279
|
// Conflict resolution
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
metrics.
|
|
1049
|
-
metrics.
|
|
1280
|
+
const conflicts = resultObj.conflicts;
|
|
1281
|
+
if (conflicts) {
|
|
1282
|
+
metrics.conflicts_detected = conflicts.detected || 0;
|
|
1283
|
+
metrics.conflicts_resolved = conflicts.resolved || 0;
|
|
1284
|
+
metrics.resolution_time_avg = conflicts.avgResolutionTime || 0;
|
|
1050
1285
|
}
|
|
1051
1286
|
// Topology metrics
|
|
1052
|
-
|
|
1053
|
-
|
|
1054
|
-
metrics.
|
|
1287
|
+
const topology = resultObj.topology;
|
|
1288
|
+
if (topology) {
|
|
1289
|
+
metrics.topology_changes = topology.changes || 0;
|
|
1290
|
+
metrics.topology_stability = topology.stability || 0;
|
|
1055
1291
|
}
|
|
1056
1292
|
// Workload queue
|
|
1057
|
-
metrics.queue_size =
|
|
1058
|
-
metrics.queue_wait_time_avg =
|
|
1293
|
+
metrics.queue_size = resultObj.queueSize || resultObj.workloadQueueSize || 0;
|
|
1294
|
+
metrics.queue_wait_time_avg = resultObj.avgQueueWaitTime || 0;
|
|
1059
1295
|
// Overall fleet health
|
|
1060
|
-
if (typeof
|
|
1061
|
-
metrics.fleet_health =
|
|
1296
|
+
if (typeof resultObj.fleetHealth === 'number') {
|
|
1297
|
+
metrics.fleet_health = resultObj.fleetHealth;
|
|
1062
1298
|
}
|
|
1063
1299
|
}
|
|
1064
1300
|
return metrics;
|