agentic-qe 3.3.1 → 3.3.3
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/.claude/helpers/statusline-v3.cjs +96 -27
- package/README.md +6 -3
- package/package.json +1 -1
- package/scripts/sync-claude-flow.cjs +99 -0
- package/v3/CHANGELOG.md +133 -0
- package/v3/README.md +9 -5
- package/v3/dist/cli/bundle.js +60879 -51811
- package/v3/dist/coordination/consensus/domain-findings.d.ts +202 -0
- package/v3/dist/coordination/consensus/domain-findings.d.ts.map +1 -0
- package/v3/dist/coordination/consensus/domain-findings.js +66 -0
- package/v3/dist/coordination/consensus/domain-findings.js.map +1 -0
- package/v3/dist/coordination/consensus/index.d.ts +2 -0
- package/v3/dist/coordination/consensus/index.d.ts.map +1 -1
- package/v3/dist/coordination/consensus/index.js +4 -0
- package/v3/dist/coordination/consensus/index.js.map +1 -1
- package/v3/dist/coordination/index.d.ts +1 -0
- package/v3/dist/coordination/index.d.ts.map +1 -1
- package/v3/dist/coordination/index.js +4 -0
- package/v3/dist/coordination/index.js.map +1 -1
- package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts +225 -0
- package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts.map +1 -0
- package/v3/dist/coordination/mixins/consensus-enabled-domain.js +466 -0
- package/v3/dist/coordination/mixins/consensus-enabled-domain.js.map +1 -0
- package/v3/dist/coordination/mixins/index.d.ts +14 -0
- package/v3/dist/coordination/mixins/index.d.ts.map +1 -0
- package/v3/dist/coordination/mixins/index.js +28 -0
- package/v3/dist/coordination/mixins/index.js.map +1 -0
- package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts +227 -0
- package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts.map +1 -0
- package/v3/dist/coordination/mixins/mincut-aware-domain.js +368 -0
- package/v3/dist/coordination/mixins/mincut-aware-domain.js.map +1 -0
- package/v3/dist/coordination/queen-coordinator.d.ts +23 -1
- package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
- package/v3/dist/coordination/queen-coordinator.js +131 -3
- package/v3/dist/coordination/queen-coordinator.js.map +1 -1
- package/v3/dist/coordination/task-executor.d.ts +21 -1
- package/v3/dist/coordination/task-executor.d.ts.map +1 -1
- package/v3/dist/coordination/task-executor.js +222 -5
- package/v3/dist/coordination/task-executor.js.map +1 -1
- package/v3/dist/domains/chaos-resilience/coordinator.d.ts +92 -0
- package/v3/dist/domains/chaos-resilience/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/chaos-resilience/coordinator.js +241 -1
- package/v3/dist/domains/chaos-resilience/coordinator.js.map +1 -1
- package/v3/dist/domains/chaos-resilience/plugin.js +1 -1
- package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
- package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts +29 -2
- package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts.map +1 -1
- package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js +62 -3
- package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js.map +1 -1
- package/v3/dist/domains/code-intelligence/coordinator.d.ts +112 -0
- package/v3/dist/domains/code-intelligence/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/code-intelligence/coordinator.js +221 -0
- package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
- package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts +66 -2
- package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts.map +1 -1
- package/v3/dist/domains/code-intelligence/services/knowledge-graph.js +253 -3
- package/v3/dist/domains/code-intelligence/services/knowledge-graph.js.map +1 -1
- package/v3/dist/domains/contract-testing/coordinator.d.ts +89 -1
- package/v3/dist/domains/contract-testing/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/contract-testing/coordinator.js +222 -1
- package/v3/dist/domains/contract-testing/coordinator.js.map +1 -1
- package/v3/dist/domains/contract-testing/interfaces.d.ts +29 -1
- package/v3/dist/domains/contract-testing/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/contract-testing/plugin.js +1 -1
- package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
- package/v3/dist/domains/contract-testing/services/contract-validator.d.ts +29 -2
- package/v3/dist/domains/contract-testing/services/contract-validator.d.ts.map +1 -1
- package/v3/dist/domains/contract-testing/services/contract-validator.js +58 -3
- package/v3/dist/domains/contract-testing/services/contract-validator.js.map +1 -1
- package/v3/dist/domains/coverage-analysis/coordinator.d.ts +95 -2
- package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/coverage-analysis/coordinator.js +274 -6
- package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
- package/v3/dist/domains/coverage-analysis/plugin.d.ts +6 -1
- package/v3/dist/domains/coverage-analysis/plugin.d.ts.map +1 -1
- package/v3/dist/domains/coverage-analysis/plugin.js +73 -0
- package/v3/dist/domains/coverage-analysis/plugin.js.map +1 -1
- package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts +119 -3
- package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
- package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +267 -5
- package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
- package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts +111 -2
- package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
- package/v3/dist/domains/coverage-analysis/services/gap-detector.js +231 -3
- package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
- package/v3/dist/domains/defect-intelligence/coordinator.d.ts +80 -1
- package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/defect-intelligence/coordinator.js +262 -7
- package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
- package/v3/dist/domains/defect-intelligence/interfaces.d.ts +17 -0
- package/v3/dist/domains/defect-intelligence/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts +91 -2
- package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
- package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +274 -7
- package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
- package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts +79 -2
- package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
- package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +259 -3
- package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
- package/v3/dist/domains/domain-interface.d.ts +194 -2
- package/v3/dist/domains/domain-interface.d.ts.map +1 -1
- package/v3/dist/domains/domain-interface.js +239 -0
- package/v3/dist/domains/domain-interface.js.map +1 -1
- package/v3/dist/domains/learning-optimization/coordinator.d.ts +171 -0
- package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/coordinator.js +401 -1
- package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
- package/v3/dist/domains/learning-optimization/index.d.ts +1 -1
- package/v3/dist/domains/learning-optimization/index.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/index.js.map +1 -1
- package/v3/dist/domains/learning-optimization/interfaces.d.ts +18 -0
- package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/plugin.js +1 -1
- package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
- package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts +54 -2
- package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
- package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +90 -3
- package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
- package/v3/dist/domains/quality-assessment/coordinator.d.ts +127 -0
- package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/coordinator.js +493 -7
- package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
- package/v3/dist/domains/quality-assessment/interfaces.d.ts +22 -0
- package/v3/dist/domains/quality-assessment/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/plugin.d.ts +6 -1
- package/v3/dist/domains/quality-assessment/plugin.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/plugin.js +67 -0
- package/v3/dist/domains/quality-assessment/plugin.js.map +1 -1
- package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts +61 -2
- package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +213 -5
- package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
- package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts +59 -4
- package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
- package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +195 -3
- package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
- package/v3/dist/domains/requirements-validation/coordinator.d.ts +78 -0
- package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/requirements-validation/coordinator.js +189 -0
- package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
- package/v3/dist/domains/requirements-validation/interfaces.d.ts +4 -0
- package/v3/dist/domains/requirements-validation/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts +106 -2
- package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
- package/v3/dist/domains/requirements-validation/services/requirements-validator.js +263 -3
- package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
- package/v3/dist/domains/security-compliance/coordinator.d.ts +56 -1
- package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/security-compliance/coordinator.js +241 -17
- package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
- package/v3/dist/domains/security-compliance/interfaces.d.ts +2 -0
- package/v3/dist/domains/security-compliance/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/security-compliance/services/security-scanner.d.ts +33 -2
- package/v3/dist/domains/security-compliance/services/security-scanner.d.ts.map +1 -1
- package/v3/dist/domains/security-compliance/services/security-scanner.js +107 -3
- package/v3/dist/domains/security-compliance/services/security-scanner.js.map +1 -1
- package/v3/dist/domains/test-execution/coordinator.d.ts +89 -0
- package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/coordinator.js +259 -2
- package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
- package/v3/dist/domains/test-execution/plugin.d.ts +6 -1
- package/v3/dist/domains/test-execution/plugin.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/plugin.js +77 -0
- package/v3/dist/domains/test-execution/plugin.js.map +1 -1
- package/v3/dist/domains/test-execution/services/test-executor.d.ts +30 -2
- package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
- package/v3/dist/domains/test-execution/services/test-executor.js +64 -3
- package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
- package/v3/dist/domains/test-generation/coordinator.d.ts +137 -0
- package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/coordinator.js +421 -1
- package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
- package/v3/dist/domains/test-generation/interfaces.d.ts +2 -0
- package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/plugin.d.ts +6 -1
- package/v3/dist/domains/test-generation/plugin.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/plugin.js +84 -0
- package/v3/dist/domains/test-generation/plugin.js.map +1 -1
- package/v3/dist/domains/test-generation/services/test-generator.d.ts +32 -0
- package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
- package/v3/dist/domains/test-generation/services/test-generator.js +158 -3
- package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/coordinator.d.ts +77 -0
- package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/coordinator.js +210 -2
- package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/plugin.js +3 -3
- package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
- package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts +47 -2
- package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
- package/v3/dist/domains/visual-accessibility/services/visual-tester.js +87 -3
- package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
- package/v3/dist/kernel/interfaces.d.ts +54 -1
- package/v3/dist/kernel/interfaces.d.ts.map +1 -1
- package/v3/dist/learning/dream/dream-scheduler.d.ts +302 -0
- package/v3/dist/learning/dream/dream-scheduler.d.ts.map +1 -0
- package/v3/dist/learning/dream/dream-scheduler.js +551 -0
- package/v3/dist/learning/dream/dream-scheduler.js.map +1 -0
- package/v3/dist/learning/dream/index.d.ts +1 -0
- package/v3/dist/learning/dream/index.d.ts.map +1 -1
- package/v3/dist/learning/dream/index.js +4 -0
- package/v3/dist/learning/dream/index.js.map +1 -1
- package/v3/dist/learning/experience-capture-middleware.d.ts +119 -0
- package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -0
- package/v3/dist/learning/experience-capture-middleware.js +416 -0
- package/v3/dist/learning/experience-capture-middleware.js.map +1 -0
- package/v3/dist/mcp/bundle.js +83142 -70580
- package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/core-handlers.js +16 -2
- package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
- package/v3/dist/mcp/handlers/domain-handlers.d.ts +12 -13
- package/v3/dist/mcp/handlers/domain-handlers.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/index.d.ts +1 -1
- package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/index.js +2 -2
- package/v3/dist/mcp/handlers/index.js.map +1 -1
- package/v3/dist/mcp/handlers/task-handlers.d.ts +1 -0
- package/v3/dist/mcp/handlers/task-handlers.d.ts.map +1 -1
- package/v3/dist/mcp/handlers/task-handlers.js +46 -12
- package/v3/dist/mcp/handlers/task-handlers.js.map +1 -1
- package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts +30 -0
- package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts.map +1 -0
- package/v3/dist/mcp/handlers/wrapped-domain-handlers.js +75 -0
- package/v3/dist/mcp/handlers/wrapped-domain-handlers.js.map +1 -0
- package/v3/dist/mcp/services/reasoning-bank-service.d.ts +87 -13
- package/v3/dist/mcp/services/reasoning-bank-service.d.ts.map +1 -1
- package/v3/dist/mcp/services/reasoning-bank-service.js +291 -31
- package/v3/dist/mcp/services/reasoning-bank-service.js.map +1 -1
- package/v3/dist/mcp/tools/chaos-resilience/inject.js +1 -1
- package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
- package/v3/dist/mcp/tools/contract-testing/validate.js +1 -1
- package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
- package/v3/dist/mcp/tools/learning-optimization/optimize.js +1 -1
- package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
- package/v3/dist/mcp/tools/visual-accessibility/index.js +2 -2
- package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
- package/v3/dist/routing/qe-agent-registry.d.ts +28 -1
- package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
- package/v3/dist/routing/qe-agent-registry.js +116 -1
- package/v3/dist/routing/qe-agent-registry.js.map +1 -1
- package/v3/dist/shared/events/domain-events.d.ts +27 -0
- package/v3/dist/shared/events/domain-events.d.ts.map +1 -1
- package/v3/dist/shared/events/domain-events.js +1 -0
- package/v3/dist/shared/events/domain-events.js.map +1 -1
- package/v3/dist/sync/claude-flow-bridge.d.ts +63 -0
- package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -0
- package/v3/dist/sync/claude-flow-bridge.js +320 -0
- package/v3/dist/sync/claude-flow-bridge.js.map +1 -0
- package/v3/package.json +1 -1
|
@@ -6,11 +6,12 @@
|
|
|
6
6
|
* - DQN Algorithm: Optimizes security test prioritization
|
|
7
7
|
* - QEFlashAttention: Fast vulnerability similarity matching
|
|
8
8
|
*/
|
|
9
|
-
import { Result } from '../../shared/types/index.js';
|
|
9
|
+
import { Result, DomainName } from '../../shared/types/index.js';
|
|
10
10
|
import type { EventBus, MemoryBackend, AgentCoordinator } from '../../kernel/interfaces.js';
|
|
11
11
|
import { FilePath } from '../../shared/value-objects/index.js';
|
|
12
12
|
import type { ISecurityComplianceCoordinator, SecurityAuditOptions, SecurityAuditReport, SecurityPosture, ComplianceReport, ComplianceContext, SASTResult, DASTResult } from './interfaces.js';
|
|
13
13
|
import { type ConsensusEngineConfig } from '../../coordination/consensus/index.js';
|
|
14
|
+
import type { QueenMinCutBridge } from '../../coordination/mincut/queen-integration';
|
|
14
15
|
export interface IExtendedSecurityComplianceCoordinator extends ISecurityComplianceCoordinator {
|
|
15
16
|
initialize(): Promise<void>;
|
|
16
17
|
dispose(): Promise<void>;
|
|
@@ -25,6 +26,9 @@ export interface IExtendedSecurityComplianceCoordinator extends ISecurityComplia
|
|
|
25
26
|
runComplianceValidation(standardId: string, context: ComplianceContext): Promise<Result<ComplianceReport>>;
|
|
26
27
|
runComplianceCheck(standardId: string): Promise<Result<ComplianceReport>>;
|
|
27
28
|
getSecurityPosture(): Promise<Result<SecurityPosture>>;
|
|
29
|
+
setMinCutBridge(bridge: QueenMinCutBridge): void;
|
|
30
|
+
isTopologyHealthy(): boolean;
|
|
31
|
+
isConsensusAvailable(): boolean;
|
|
28
32
|
}
|
|
29
33
|
export interface WorkflowStatus {
|
|
30
34
|
id: string;
|
|
@@ -46,6 +50,12 @@ export interface CoordinatorConfig {
|
|
|
46
50
|
enableFlashAttention: boolean;
|
|
47
51
|
enableConsensus: boolean;
|
|
48
52
|
consensusConfig?: Partial<ConsensusEngineConfig>;
|
|
53
|
+
enableMinCutAwareness: boolean;
|
|
54
|
+
topologyHealthThreshold: number;
|
|
55
|
+
pauseOnCriticalTopology: boolean;
|
|
56
|
+
consensusThreshold: number;
|
|
57
|
+
consensusStrategy: 'majority' | 'weighted' | 'unanimous';
|
|
58
|
+
consensusMinModels: number;
|
|
49
59
|
}
|
|
50
60
|
export declare class SecurityComplianceCoordinator implements IExtendedSecurityComplianceCoordinator {
|
|
51
61
|
private readonly eventBus;
|
|
@@ -61,6 +71,9 @@ export declare class SecurityComplianceCoordinator implements IExtendedSecurityC
|
|
|
61
71
|
private flashAttention?;
|
|
62
72
|
private rlInitialized;
|
|
63
73
|
private consensusEngine?;
|
|
74
|
+
private readonly minCutMixin;
|
|
75
|
+
private readonly consensusMixin;
|
|
76
|
+
private readonly domainName;
|
|
64
77
|
constructor(eventBus: EventBus, memory: MemoryBackend, agentCoordinator: AgentCoordinator, config?: Partial<CoordinatorConfig>);
|
|
65
78
|
initialize(): Promise<void>;
|
|
66
79
|
/**
|
|
@@ -134,8 +147,15 @@ export declare class SecurityComplianceCoordinator implements IExtendedSecurityC
|
|
|
134
147
|
/**
|
|
135
148
|
* V3 Integration: Verify CRITICAL/HIGH findings with multi-model consensus
|
|
136
149
|
* Improves detection accuracy from 27% to 75%+ by requiring model agreement (MM-006)
|
|
150
|
+
*
|
|
151
|
+
* Uses the consensusMixin.verifyFinding() for consistent pattern across domains.
|
|
137
152
|
*/
|
|
138
153
|
private verifyHighSeverityFindings;
|
|
154
|
+
/**
|
|
155
|
+
* Legacy verification using direct consensusEngine (kept for backwards compatibility)
|
|
156
|
+
* @deprecated Use verifyHighSeverityFindings with consensusMixin instead
|
|
157
|
+
*/
|
|
158
|
+
private verifyHighSeverityFindingsLegacy;
|
|
139
159
|
private publishComplianceValidationCompleted;
|
|
140
160
|
private startWorkflow;
|
|
141
161
|
private completeWorkflow;
|
|
@@ -146,5 +166,40 @@ export declare class SecurityComplianceCoordinator implements IExtendedSecurityC
|
|
|
146
166
|
private handleImpactAnalysis;
|
|
147
167
|
private loadWorkflowState;
|
|
148
168
|
private saveWorkflowState;
|
|
169
|
+
/**
|
|
170
|
+
* Set the MinCut bridge for topology awareness
|
|
171
|
+
*/
|
|
172
|
+
setMinCutBridge(bridge: QueenMinCutBridge): void;
|
|
173
|
+
/**
|
|
174
|
+
* Check if topology is healthy
|
|
175
|
+
*/
|
|
176
|
+
isTopologyHealthy(): boolean;
|
|
177
|
+
/**
|
|
178
|
+
* Get topology-based routing excluding weak domains
|
|
179
|
+
* @param targetDomains - List of potential target domains
|
|
180
|
+
* @returns Filtered list of healthy domains for routing
|
|
181
|
+
*/
|
|
182
|
+
getTopologyBasedRouting(targetDomains: DomainName[]): DomainName[];
|
|
183
|
+
/**
|
|
184
|
+
* Get weak vertices belonging to this domain
|
|
185
|
+
*/
|
|
186
|
+
getDomainWeakVertices(): import("../../index.js").WeakVertex[];
|
|
187
|
+
/**
|
|
188
|
+
* Check if this domain is a weak point in the topology
|
|
189
|
+
*/
|
|
190
|
+
isDomainWeakPoint(): boolean;
|
|
191
|
+
/**
|
|
192
|
+
* Get domains that are healthy for routing
|
|
193
|
+
* Convenience method that considers monitored domains
|
|
194
|
+
*/
|
|
195
|
+
getHealthyRoutingDomains(): DomainName[];
|
|
196
|
+
/**
|
|
197
|
+
* Check if consensus engine is available
|
|
198
|
+
*/
|
|
199
|
+
isConsensusAvailable(): boolean;
|
|
200
|
+
/**
|
|
201
|
+
* Get consensus statistics
|
|
202
|
+
*/
|
|
203
|
+
getConsensusStats(): import("../../index.js").ConsensusStats | undefined;
|
|
149
204
|
}
|
|
150
205
|
//# sourceMappingURL=coordinator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/domains/security-compliance/coordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAGH,OAAO,EACL,MAAM,
|
|
1
|
+
{"version":3,"file":"coordinator.d.ts","sourceRoot":"","sources":["../../../src/domains/security-compliance/coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,12 @@ import { DQNAlgorithm } from '../../integrations/rl-suite/algorithms/dqn.js';
|
|
|
19
19
|
import { createQEFlashAttention, } from '../../integrations/ruvector/wrappers.js';
|
|
20
20
|
// V3 Integration: Multi-Model Consensus for Security Finding Verification (MM-006)
|
|
21
21
|
import { createConsensusEngine, registerProvidersFromEnv, } from '../../coordination/consensus/index.js';
|
|
22
|
+
// ============================================================================
|
|
23
|
+
// MinCut & Consensus Mixin Imports (ADR-047, MM-001)
|
|
24
|
+
// ============================================================================
|
|
25
|
+
import { createMinCutAwareMixin, } from '../../coordination/mixins/mincut-aware-domain';
|
|
26
|
+
import { createConsensusEnabledMixin, } from '../../coordination/mixins/consensus-enabled-domain';
|
|
27
|
+
import { createDomainFinding, } from '../../coordination/consensus/domain-findings';
|
|
22
28
|
const DEFAULT_CONFIG = {
|
|
23
29
|
maxConcurrentWorkflows: 3,
|
|
24
30
|
defaultTimeout: 300000, // 5 minutes
|
|
@@ -29,6 +35,14 @@ const DEFAULT_CONFIG = {
|
|
|
29
35
|
enableFlashAttention: true,
|
|
30
36
|
// V3: Multi-Model Consensus enabled by default for CRITICAL/HIGH findings
|
|
31
37
|
enableConsensus: true,
|
|
38
|
+
// MinCut integration defaults (ADR-047)
|
|
39
|
+
enableMinCutAwareness: true,
|
|
40
|
+
topologyHealthThreshold: 0.5,
|
|
41
|
+
pauseOnCriticalTopology: false,
|
|
42
|
+
// Consensus mixin defaults (MM-001)
|
|
43
|
+
consensusThreshold: 0.7,
|
|
44
|
+
consensusStrategy: 'weighted',
|
|
45
|
+
consensusMinModels: 2,
|
|
32
46
|
};
|
|
33
47
|
// ============================================================================
|
|
34
48
|
// Security & Compliance Coordinator Implementation
|
|
@@ -49,11 +63,39 @@ export class SecurityComplianceCoordinator {
|
|
|
49
63
|
rlInitialized = false;
|
|
50
64
|
// V3: Multi-Model Consensus for security finding verification (MM-006)
|
|
51
65
|
consensusEngine;
|
|
66
|
+
// MinCut topology awareness mixin (ADR-047)
|
|
67
|
+
minCutMixin;
|
|
68
|
+
// Consensus verification mixin (MM-001)
|
|
69
|
+
consensusMixin;
|
|
70
|
+
// Domain identifier for mixin initialization
|
|
71
|
+
domainName = 'security-compliance';
|
|
52
72
|
constructor(eventBus, memory, agentCoordinator, config = {}) {
|
|
53
73
|
this.eventBus = eventBus;
|
|
54
74
|
this.memory = memory;
|
|
55
75
|
this.agentCoordinator = agentCoordinator;
|
|
56
76
|
this.config = { ...DEFAULT_CONFIG, ...config };
|
|
77
|
+
// Initialize MinCut-aware mixin (ADR-047)
|
|
78
|
+
this.minCutMixin = createMinCutAwareMixin(this.domainName, {
|
|
79
|
+
enableMinCutAwareness: this.config.enableMinCutAwareness,
|
|
80
|
+
topologyHealthThreshold: this.config.topologyHealthThreshold,
|
|
81
|
+
pauseOnCriticalTopology: this.config.pauseOnCriticalTopology,
|
|
82
|
+
});
|
|
83
|
+
// Initialize Consensus-enabled mixin (MM-001)
|
|
84
|
+
// Verifies security vulnerabilities, compliance violations, and credential exposures
|
|
85
|
+
this.consensusMixin = createConsensusEnabledMixin({
|
|
86
|
+
enableConsensus: this.config.enableConsensus,
|
|
87
|
+
consensusThreshold: this.config.consensusThreshold,
|
|
88
|
+
verifyFindingTypes: [
|
|
89
|
+
'security-vulnerability',
|
|
90
|
+
'compliance-violation',
|
|
91
|
+
'credential-exposure',
|
|
92
|
+
],
|
|
93
|
+
strategy: this.config.consensusStrategy,
|
|
94
|
+
minModels: this.config.consensusMinModels,
|
|
95
|
+
modelTimeout: 60000,
|
|
96
|
+
verifySeverities: ['critical', 'high'],
|
|
97
|
+
enableLogging: false,
|
|
98
|
+
});
|
|
57
99
|
this.securityScanner = new SecurityScannerService(memory);
|
|
58
100
|
this.securityAuditor = new SecurityAuditorService(memory);
|
|
59
101
|
this.complianceValidator = new ComplianceValidatorService(memory);
|
|
@@ -70,6 +112,17 @@ export class SecurityComplianceCoordinator {
|
|
|
70
112
|
if (this.config.enableDQN || this.config.enableFlashAttention || this.config.enableConsensus) {
|
|
71
113
|
await this.initializeRLIntegrations();
|
|
72
114
|
}
|
|
115
|
+
// Initialize Consensus mixin engine if enabled (MM-001)
|
|
116
|
+
if (this.config.enableConsensus) {
|
|
117
|
+
try {
|
|
118
|
+
await this.consensusMixin.initializeConsensus();
|
|
119
|
+
console.log(`[${this.domainName}] Consensus mixin engine initialized`);
|
|
120
|
+
}
|
|
121
|
+
catch (error) {
|
|
122
|
+
console.error(`[${this.domainName}] Failed to initialize consensus mixin engine:`, error);
|
|
123
|
+
console.warn(`[${this.domainName}] Continuing without consensus mixin verification`);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
73
126
|
this.initialized = true;
|
|
74
127
|
}
|
|
75
128
|
/**
|
|
@@ -128,6 +181,15 @@ export class SecurityComplianceCoordinator {
|
|
|
128
181
|
}
|
|
129
182
|
async dispose() {
|
|
130
183
|
await this.saveWorkflowState();
|
|
184
|
+
// Dispose Consensus mixin engine (MM-001)
|
|
185
|
+
try {
|
|
186
|
+
await this.consensusMixin.disposeConsensus();
|
|
187
|
+
}
|
|
188
|
+
catch (error) {
|
|
189
|
+
console.error(`[${this.domainName}] Error disposing consensus mixin engine:`, error);
|
|
190
|
+
}
|
|
191
|
+
// Dispose MinCut mixin (ADR-047)
|
|
192
|
+
this.minCutMixin.dispose();
|
|
131
193
|
this.workflows.clear();
|
|
132
194
|
this.initialized = false;
|
|
133
195
|
}
|
|
@@ -144,6 +206,17 @@ export class SecurityComplianceCoordinator {
|
|
|
144
206
|
const workflowId = uuidv4();
|
|
145
207
|
try {
|
|
146
208
|
this.startWorkflow(workflowId, 'audit');
|
|
209
|
+
// Self-healing: Check if operations should be paused due to critical topology
|
|
210
|
+
if (this.minCutMixin.shouldPauseOperations()) {
|
|
211
|
+
console.warn(`[${this.domainName}] Security audit paused: topology is in critical state`);
|
|
212
|
+
this.failWorkflow(workflowId, 'Topology is in critical state');
|
|
213
|
+
return err(new Error('Security audit paused: topology is in critical state'));
|
|
214
|
+
}
|
|
215
|
+
// Self-healing: Log warning and potentially reduce scope when topology is degraded
|
|
216
|
+
if (this.config.enableMinCutAwareness && !this.isTopologyHealthy()) {
|
|
217
|
+
console.warn(`[${this.domainName}] Topology degraded, using conservative audit strategy`);
|
|
218
|
+
// Could reduce parallel operations, prioritize critical checks, etc.
|
|
219
|
+
}
|
|
147
220
|
// Check agent availability
|
|
148
221
|
if (!this.agentCoordinator.canSpawn()) {
|
|
149
222
|
return err(new Error('Agent limit reached, cannot spawn security audit agents'));
|
|
@@ -199,6 +272,16 @@ export class SecurityComplianceCoordinator {
|
|
|
199
272
|
const workflowId = uuidv4();
|
|
200
273
|
try {
|
|
201
274
|
this.startWorkflow(workflowId, 'scan');
|
|
275
|
+
// Self-healing: Check if operations should be paused due to critical topology
|
|
276
|
+
if (this.minCutMixin.shouldPauseOperations()) {
|
|
277
|
+
console.warn(`[${this.domainName}] Security scan paused: topology is in critical state`);
|
|
278
|
+
this.failWorkflow(workflowId, 'Topology is in critical state');
|
|
279
|
+
return err(new Error('Security scan paused: topology is in critical state'));
|
|
280
|
+
}
|
|
281
|
+
// Self-healing: Log warning when topology is degraded
|
|
282
|
+
if (this.config.enableMinCutAwareness && !this.isTopologyHealthy()) {
|
|
283
|
+
console.warn(`[${this.domainName}] Topology degraded, proceeding with conservative scan strategy`);
|
|
284
|
+
}
|
|
202
285
|
// Run scan based on type
|
|
203
286
|
let result;
|
|
204
287
|
if (scanType === 'sast') {
|
|
@@ -232,6 +315,16 @@ export class SecurityComplianceCoordinator {
|
|
|
232
315
|
const workflowId = uuidv4();
|
|
233
316
|
try {
|
|
234
317
|
this.startWorkflow(workflowId, 'compliance');
|
|
318
|
+
// Self-healing: Check if operations should be paused due to critical topology
|
|
319
|
+
if (this.minCutMixin.shouldPauseOperations()) {
|
|
320
|
+
console.warn(`[${this.domainName}] Compliance validation paused: topology is in critical state`);
|
|
321
|
+
this.failWorkflow(workflowId, 'Topology is in critical state');
|
|
322
|
+
return err(new Error('Compliance validation paused: topology is in critical state'));
|
|
323
|
+
}
|
|
324
|
+
// Self-healing: Log warning when topology is degraded
|
|
325
|
+
if (this.config.enableMinCutAwareness && !this.isTopologyHealthy()) {
|
|
326
|
+
console.warn(`[${this.domainName}] Topology degraded, proceeding with compliance validation`);
|
|
327
|
+
}
|
|
235
328
|
// Get standard by ID and validate
|
|
236
329
|
const standards = await this.complianceValidator.getAvailableStandards();
|
|
237
330
|
const standard = standards.find(s => s.id === standardId);
|
|
@@ -264,6 +357,16 @@ export class SecurityComplianceCoordinator {
|
|
|
264
357
|
const workflowId = uuidv4();
|
|
265
358
|
try {
|
|
266
359
|
this.startWorkflow(workflowId, 'posture');
|
|
360
|
+
// Self-healing: Check if operations should be paused due to critical topology
|
|
361
|
+
if (this.minCutMixin.shouldPauseOperations()) {
|
|
362
|
+
console.warn(`[${this.domainName}] Security posture assessment paused: topology is in critical state`);
|
|
363
|
+
this.failWorkflow(workflowId, 'Topology is in critical state');
|
|
364
|
+
return err(new Error('Security posture assessment paused: topology is in critical state'));
|
|
365
|
+
}
|
|
366
|
+
// Self-healing: Log warning when topology is degraded
|
|
367
|
+
if (this.config.enableMinCutAwareness && !this.isTopologyHealthy()) {
|
|
368
|
+
console.warn(`[${this.domainName}] Topology degraded, proceeding with security posture assessment`);
|
|
369
|
+
}
|
|
267
370
|
const result = await this.securityAuditor.getSecurityPosture();
|
|
268
371
|
if (result.success) {
|
|
269
372
|
this.completeWorkflow(workflowId);
|
|
@@ -565,10 +668,20 @@ export class SecurityComplianceCoordinator {
|
|
|
565
668
|
/**
|
|
566
669
|
* V3 Integration: Verify CRITICAL/HIGH findings with multi-model consensus
|
|
567
670
|
* Improves detection accuracy from 27% to 75%+ by requiring model agreement (MM-006)
|
|
671
|
+
*
|
|
672
|
+
* Uses the consensusMixin.verifyFinding() for consistent pattern across domains.
|
|
568
673
|
*/
|
|
569
674
|
async verifyHighSeverityFindings(vulnerabilities) {
|
|
570
|
-
// If consensus is disabled
|
|
571
|
-
if (!this.config.enableConsensus
|
|
675
|
+
// If consensus is disabled, return all vulnerabilities
|
|
676
|
+
if (!this.config.enableConsensus) {
|
|
677
|
+
return vulnerabilities;
|
|
678
|
+
}
|
|
679
|
+
// Check if consensus mixin is available (uses mixin pattern)
|
|
680
|
+
if (!this.isConsensusAvailable()) {
|
|
681
|
+
// Fallback to legacy consensusEngine if available
|
|
682
|
+
if (this.consensusEngine) {
|
|
683
|
+
return this.verifyHighSeverityFindingsLegacy(vulnerabilities);
|
|
684
|
+
}
|
|
572
685
|
return vulnerabilities;
|
|
573
686
|
}
|
|
574
687
|
const verified = [];
|
|
@@ -576,7 +689,74 @@ export class SecurityComplianceCoordinator {
|
|
|
576
689
|
const lowSeverity = vulnerabilities.filter(v => v.severity !== 'critical' && v.severity !== 'high');
|
|
577
690
|
// Low/medium severity findings pass through without consensus
|
|
578
691
|
verified.push(...lowSeverity);
|
|
579
|
-
// Verify CRITICAL/HIGH findings with multi-model consensus
|
|
692
|
+
// Verify CRITICAL/HIGH findings with multi-model consensus using mixin
|
|
693
|
+
for (const vuln of highSeverity) {
|
|
694
|
+
try {
|
|
695
|
+
// Create DomainFinding for mixin verification
|
|
696
|
+
const domainFinding = createDomainFinding({
|
|
697
|
+
id: vuln.id,
|
|
698
|
+
type: 'security-vulnerability',
|
|
699
|
+
confidence: 0.8, // Default high confidence from scanner
|
|
700
|
+
description: `${vuln.title}: ${vuln.description}`,
|
|
701
|
+
payload: {
|
|
702
|
+
vulnerability: vuln,
|
|
703
|
+
location: vuln.location,
|
|
704
|
+
},
|
|
705
|
+
detectedBy: 'security-scanner',
|
|
706
|
+
severity: vuln.severity,
|
|
707
|
+
context: {
|
|
708
|
+
domain: this.domainName,
|
|
709
|
+
cveId: vuln.cveId,
|
|
710
|
+
category: vuln.category,
|
|
711
|
+
},
|
|
712
|
+
});
|
|
713
|
+
// Check if this finding requires consensus
|
|
714
|
+
if (!this.consensusMixin.requiresConsensus(domainFinding)) {
|
|
715
|
+
// Low-risk findings pass through
|
|
716
|
+
verified.push(vuln);
|
|
717
|
+
continue;
|
|
718
|
+
}
|
|
719
|
+
// Verify using consensus mixin
|
|
720
|
+
const result = await this.consensusMixin.verifyFinding(domainFinding);
|
|
721
|
+
if (result.success && result.value.verdict === 'verified') {
|
|
722
|
+
// Finding confirmed by multiple models
|
|
723
|
+
console.log(`[${this.domainName}] Consensus VERIFIED: ${vuln.title} (confidence: ${(result.value.confidence * 100).toFixed(1)}%)`);
|
|
724
|
+
verified.push(vuln);
|
|
725
|
+
}
|
|
726
|
+
else if (result.success && result.value.verdict === 'disputed') {
|
|
727
|
+
// Disputed findings still included but logged
|
|
728
|
+
console.log(`[${this.domainName}] Consensus DISPUTED: ${vuln.title} - including with lower confidence`);
|
|
729
|
+
verified.push(vuln);
|
|
730
|
+
}
|
|
731
|
+
else {
|
|
732
|
+
// Rejected by consensus - likely false positive
|
|
733
|
+
console.log(`[${this.domainName}] Consensus REJECTED: ${vuln.title} - likely false positive`);
|
|
734
|
+
}
|
|
735
|
+
}
|
|
736
|
+
catch (error) {
|
|
737
|
+
// On consensus error, include the finding but log warning
|
|
738
|
+
console.warn(`[${this.domainName}] Consensus error verifying ${vuln.title}, including by default:`, error);
|
|
739
|
+
verified.push(vuln);
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
const rejectedCount = highSeverity.length - verified.filter(v => v.severity === 'critical' || v.severity === 'high').length;
|
|
743
|
+
if (rejectedCount > 0) {
|
|
744
|
+
console.log(`[${this.domainName}] Consensus filtered out ${rejectedCount} likely false positive(s)`);
|
|
745
|
+
}
|
|
746
|
+
return verified;
|
|
747
|
+
}
|
|
748
|
+
/**
|
|
749
|
+
* Legacy verification using direct consensusEngine (kept for backwards compatibility)
|
|
750
|
+
* @deprecated Use verifyHighSeverityFindings with consensusMixin instead
|
|
751
|
+
*/
|
|
752
|
+
async verifyHighSeverityFindingsLegacy(vulnerabilities) {
|
|
753
|
+
if (!this.consensusEngine) {
|
|
754
|
+
return vulnerabilities;
|
|
755
|
+
}
|
|
756
|
+
const verified = [];
|
|
757
|
+
const highSeverity = vulnerabilities.filter(v => v.severity === 'critical' || v.severity === 'high');
|
|
758
|
+
const lowSeverity = vulnerabilities.filter(v => v.severity !== 'critical' && v.severity !== 'high');
|
|
759
|
+
verified.push(...lowSeverity);
|
|
580
760
|
for (const vuln of highSeverity) {
|
|
581
761
|
try {
|
|
582
762
|
const finding = {
|
|
@@ -601,30 +781,16 @@ export class SecurityComplianceCoordinator {
|
|
|
601
781
|
};
|
|
602
782
|
const result = await this.consensusEngine.verify(finding);
|
|
603
783
|
if (result.success && result.value.verdict === 'verified') {
|
|
604
|
-
// Finding confirmed by multiple models
|
|
605
|
-
console.log(`[Consensus] VERIFIED: ${vuln.title} (confidence: ${(result.value.confidence * 100).toFixed(1)}%)`);
|
|
606
784
|
verified.push(vuln);
|
|
607
785
|
}
|
|
608
786
|
else if (result.success && result.value.verdict === 'disputed') {
|
|
609
|
-
// Disputed findings still included but logged
|
|
610
|
-
console.log(`[Consensus] DISPUTED: ${vuln.title} - including with lower confidence`);
|
|
611
787
|
verified.push(vuln);
|
|
612
788
|
}
|
|
613
|
-
else {
|
|
614
|
-
// Rejected by consensus - likely false positive
|
|
615
|
-
console.log(`[Consensus] REJECTED: ${vuln.title} - likely false positive`);
|
|
616
|
-
}
|
|
617
789
|
}
|
|
618
790
|
catch (error) {
|
|
619
|
-
// On consensus error, include the finding but log warning
|
|
620
|
-
console.warn(`[Consensus] Error verifying ${vuln.title}, including by default:`, error);
|
|
621
791
|
verified.push(vuln);
|
|
622
792
|
}
|
|
623
793
|
}
|
|
624
|
-
const rejectedCount = highSeverity.length - verified.filter(v => v.severity === 'critical' || v.severity === 'high').length;
|
|
625
|
-
if (rejectedCount > 0) {
|
|
626
|
-
console.log(`[Consensus] Filtered out ${rejectedCount} likely false positive(s)`);
|
|
627
|
-
}
|
|
628
794
|
return verified;
|
|
629
795
|
}
|
|
630
796
|
async publishComplianceValidationCompleted(report) {
|
|
@@ -709,5 +875,63 @@ export class SecurityComplianceCoordinator {
|
|
|
709
875
|
const workflows = Array.from(this.workflows.values());
|
|
710
876
|
await this.memory.set('security-compliance:coordinator:workflows', workflows, { namespace: 'security-compliance', persist: true });
|
|
711
877
|
}
|
|
878
|
+
// ==========================================================================
|
|
879
|
+
// MinCut Integration Methods (ADR-047)
|
|
880
|
+
// ==========================================================================
|
|
881
|
+
/**
|
|
882
|
+
* Set the MinCut bridge for topology awareness
|
|
883
|
+
*/
|
|
884
|
+
setMinCutBridge(bridge) {
|
|
885
|
+
this.minCutMixin.setMinCutBridge(bridge);
|
|
886
|
+
console.log(`[${this.domainName}] MinCut bridge connected for topology awareness`);
|
|
887
|
+
}
|
|
888
|
+
/**
|
|
889
|
+
* Check if topology is healthy
|
|
890
|
+
*/
|
|
891
|
+
isTopologyHealthy() {
|
|
892
|
+
return this.minCutMixin.isTopologyHealthy();
|
|
893
|
+
}
|
|
894
|
+
/**
|
|
895
|
+
* Get topology-based routing excluding weak domains
|
|
896
|
+
* @param targetDomains - List of potential target domains
|
|
897
|
+
* @returns Filtered list of healthy domains for routing
|
|
898
|
+
*/
|
|
899
|
+
getTopologyBasedRouting(targetDomains) {
|
|
900
|
+
return this.minCutMixin.getTopologyBasedRouting(targetDomains);
|
|
901
|
+
}
|
|
902
|
+
/**
|
|
903
|
+
* Get weak vertices belonging to this domain
|
|
904
|
+
*/
|
|
905
|
+
getDomainWeakVertices() {
|
|
906
|
+
return this.minCutMixin.getDomainWeakVertices();
|
|
907
|
+
}
|
|
908
|
+
/**
|
|
909
|
+
* Check if this domain is a weak point in the topology
|
|
910
|
+
*/
|
|
911
|
+
isDomainWeakPoint() {
|
|
912
|
+
return this.minCutMixin.isDomainWeakPoint();
|
|
913
|
+
}
|
|
914
|
+
/**
|
|
915
|
+
* Get domains that are healthy for routing
|
|
916
|
+
* Convenience method that considers monitored domains
|
|
917
|
+
*/
|
|
918
|
+
getHealthyRoutingDomains() {
|
|
919
|
+
return this.minCutMixin.getHealthyRoutingDomains();
|
|
920
|
+
}
|
|
921
|
+
// ==========================================================================
|
|
922
|
+
// Consensus Integration Methods (MM-001)
|
|
923
|
+
// ==========================================================================
|
|
924
|
+
/**
|
|
925
|
+
* Check if consensus engine is available
|
|
926
|
+
*/
|
|
927
|
+
isConsensusAvailable() {
|
|
928
|
+
return this.consensusMixin.isConsensusAvailable?.() ?? false;
|
|
929
|
+
}
|
|
930
|
+
/**
|
|
931
|
+
* Get consensus statistics
|
|
932
|
+
*/
|
|
933
|
+
getConsensusStats() {
|
|
934
|
+
return this.consensusMixin.getConsensusStats();
|
|
935
|
+
}
|
|
712
936
|
}
|
|
713
937
|
//# sourceMappingURL=coordinator.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/domains/security-compliance/coordinator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AACpC,OAAO,EAEL,EAAE,EACF,GAAG,GAEJ,MAAM,6BAA6B,CAAC;AAOrC,OAAO,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AAC/D,OAAO,EACL,wBAAwB,EAGxB,WAAW,GACZ,MAAM,sCAAsC,CAAC;AAY9C,OAAO,EACL,sBAAsB,GAEvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,sBAAsB,GAEvB,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,0BAA0B,GAE3B,MAAM,oCAAoC,CAAC;AAE5C,2BAA2B;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,+CAA+C,CAAC;AAG7E,qCAAqC;AACrC,OAAO,EAEL,sBAAsB,GAEvB,MAAM,yCAAyC,CAAC;AAEjD,mFAAmF;AACnF,OAAO,EACL,qBAAqB,EAKrB,wBAAwB,GACzB,MAAM,uCAAuC,CAAC;AAkE/C,MAAM,cAAc,GAAsB;IACxC,sBAAsB,EAAE,CAAC;IACzB,cAAc,EAAE,MAAM,EAAE,YAAY;IACpC,aAAa,EAAE,IAAI;IACnB,yBAAyB,EAAE,IAAI;IAC/B,aAAa,EAAE,GAAG;IAClB,SAAS,EAAE,IAAI;IACf,oBAAoB,EAAE,IAAI;IAC1B,0EAA0E;IAC1E,eAAe,EAAE,IAAI;CACtB,CAAC;AAEF,+EAA+E;AAC/E,mDAAmD;AACnD,+EAA+E;AAE/E,MAAM,OAAO,6BAA6B;IAmBrB;IACA;IACA;IAlBF,MAAM,CAAoB;IAC1B,eAAe,CAA0B;IACzC,eAAe,CAA0B;IACzC,mBAAmB,CAAuC;IAC1D,SAAS,GAAgC,IAAI,GAAG,EAAE,CAAC;IAC5D,WAAW,GAAG,KAAK,CAAC;IAE5B,2CAA2C;IACnC,YAAY,CAAgB;IAC5B,cAAc,CAAoB;IAClC,aAAa,GAAG,KAAK,CAAC;IAE9B,uEAAuE;IAC/D,eAAe,CAAmB;IAE1C,YACmB,QAAkB,EAClB,MAAqB,EACrB,gBAAkC,EACnD,SAAqC,EAAE;QAHtB,aAAQ,GAAR,QAAQ,CAAU;QAClB,WAAM,GAAN,MAAM,CAAe;QACrB,qBAAgB,GAAhB,gBAAgB,CAAkB;QAGnD,IAAI,CAAC,MAAM,GAAG,EAAE,GAAG,cAAc,EAAE,GAAG,MAAM,EAAE,CAAC;QAC/C,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,eAAe,GAAG,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;QAC1D,IAAI,CAAC,mBAAmB,GAAG,IAAI,0BAA0B,CAAC,MAAM,CAAC,CAAC;IACpE,CAAC;IAED,6EAA6E;IAC7E,oBAAoB;IACpB,6EAA6E;IAE7E,KAAK,CAAC,UAAU;QACd,IAAI,IAAI,CAAC,WAAW;YAAE,OAAO;QAE7B,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAE/B,oEAAoE;QACpE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;YAC7F,MAAM,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACxC,CAAC;QAED,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,wBAAwB;QACpC,IAAI,CAAC;YACH,kDAAkD;YAClD,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC;gBAC1B,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC;oBACnC,SAAS,EAAE,CAAC;oBACZ,UAAU,EAAE,CAAC;oBACb,YAAY,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC;oBACxB,gBAAgB,EAAE,GAAG;oBACrB,aAAa,EAAE,GAAG;oBAClB,SAAS,EAAE,IAAI;iBAChB,CAAC,CAAC;gBACH,+CAA+C;YACjD,CAAC;YAED,0DAA0D;YAC1D,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC;gBACrC,MAAM,YAAY,GAAmB,iBAAiB,CAAC;gBACvD,IAAI,CAAC,cAAc,GAAG,MAAM,sBAAsB,CAAC,YAAY,EAAE;oBAC/D,GAAG,EAAE,GAAG;oBACR,QAAQ,EAAE,OAAO;oBACjB,QAAQ,EAAE,CAAC;iBACZ,CAAC,CAAC;YACL,CAAC;YAED,qFAAqF;YACrF,0FAA0F;YAC1F,IAAI,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;gBAChD,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC;gBAEpC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,IAAI,CAAC,eAAe,GAAG,qBAAqB,CAAC;wBAC3C,QAAQ,EAAE,UAAU;wBACpB,MAAM,EAAE,SAAS;wBACjB,YAAY,EAAE;4BACZ,SAAS,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,MAAM,CAAC;4BACxC,mBAAmB,EAAE,KAAK;4BAC1B,GAAG,IAAI,CAAC,MAAM,CAAC,eAAe;yBAC/B;qBACF,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CAAC,+DAA+D,SAAS,CAAC,MAAM,YAAY,CAAC,CAAC;gBAC3G,CAAC;qBAAM,CAAC;oBACN,OAAO,CAAC,IAAI,CAAC,8EAA8E,CAAC,CAAC;gBAC/F,CAAC;YACH,CAAC;YAED,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAC;YAC9D,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED,KAAK,CAAC,OAAO;QACX,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC/B,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;QACvB,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IAED,kBAAkB;QAChB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CAC/C,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CACxD,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,gDAAgD;IAChD,6EAA6E;IAE7E;;OAEG;IACH,KAAK,CAAC,gBAAgB,CACpB,OAA6B;QAE7B,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;QAE5B,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAExC,2BAA2B;YAC3B,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,EAAE,CAAC;gBACtC,OAAO,GAAG,CACR,IAAI,KAAK,CAAC,yDAAyD,CAAC,CACrE,CAAC;YACJ,CAAC;YAED,6BAA6B;YAC7B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC5E,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzB,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACzD,OAAO,GAAG,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAChC,CAAC;YAED,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC;YAEvD,8CAA8C;YAC9C,IAAI,gBAAgB,GAAI,OAAgC,CAAC,KAAK,IAAI,EAAE,CAAC;YACrE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9E,gBAAgB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAAC,OAAO,EAAE,gBAAgB,CAAC,CAAC;YACnF,CAAC;YAED,MAAM,gBAAgB,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;YAExC,gBAAgB;YAChB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC;YAErE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAElC,0DAA0D;gBAC1D,MAAM,eAAe,GAAG,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,IAAI,IAAI,CAAC,MAAM,CAAC,oBAAoB,IAAI,IAAI,CAAC,cAAc,IAAI,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC1F,MAAM,IAAI,CAAC,4BAA4B,CAAC,eAAe,CAAC,CAAC;gBAC3D,CAAC;gBAED,oCAAoC;gBACpC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;oBAC/C,MAAM,IAAI,CAAC,yBAAyB,CAAC,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC9D,CAAC;gBAED,iBAAiB;gBACjB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC,6BAA6B,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC;YAED,aAAa;YACb,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAEpD,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,eAAe,CACnB,KAAiB,EACjB,QAAkC;QAElC,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;QAE5B,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAEvC,yBAAyB;YACzB,IAAI,MAAuC,CAAC;YAC5C,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;gBACxB,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACvD,CAAC;iBAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;gBAC/B,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;YACrE,CAAC;iBAAM,CAAC;gBACN,YAAY;gBACZ,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;YACvD,CAAC;YAED,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,uBAAuB,CAC3B,UAAkB,EAClB,OAA0B;QAE1B,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;QAE5B,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;YAE7C,kCAAkC;YAClC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,qBAAqB,EAAE,CAAC;YACzE,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,CAAC;YAC1D,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,GAAG,CAAC,IAAI,KAAK,CAAC,gCAAgC,UAAU,EAAE,CAAC,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAE1E,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAElC,iBAAiB;gBACjB,IAAI,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC;oBAC9B,MAAM,IAAI,CAAC,oCAAoC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAChE,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACtD,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,qBAAqB;QACzB,MAAM,UAAU,GAAG,MAAM,EAAE,CAAC;QAE5B,IAAI,CAAC;YACH,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;YAE1C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,kBAAkB,EAAE,CAAC;YAE/D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC;gBAClC,mCAAmC;gBACnC,MAAM,OAAO,GAAoB;oBAC/B,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,YAAY;oBACvC,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC,KAA6C;oBACjE,uBAAuB,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc;oBACpD,gBAAgB,EAAE,IAAI,GAAG,EAAE;oBAC3B,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,aAAa;iBAC1C,CAAC;gBACF,OAAO,EAAE,CAAC,OAAO,CAAC,CAAC;YACrB,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBACpD,OAAO,MAAiC,CAAC;YAC3C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,GAAG,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YAC3C,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;QACxC,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB,CAAC,UAAkB;QACzC,yBAAyB;QACzB,MAAM,OAAO,GAAsB;YACjC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC;YACjC,eAAe,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC;YACvC,eAAe,EAAE,CAAC,iBAAiB,CAAC;SACrC,CAAC;QACF,OAAO,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,kBAAkB;QACtB,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;IACtC,CAAC;IAED,6EAA6E;IAC7E,uDAAuD;IACvD,6EAA6E;IAE7E;;OAEG;IACK,KAAK,CAAC,uBAAuB,CACnC,OAA6B,EAC7B,KAAe;QAEf,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,2CAA2C;YAC3C,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE;gBACvB,MAAM,KAAK,GAAY;oBACrB,EAAE,EAAE,QAAQ,IAAI,EAAE;oBAClB,QAAQ,EAAE,IAAI,CAAC,2BAA2B,CAAC,OAAO,EAAE,IAAI,CAAC;iBAC1D,CAAC;gBAEF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,YAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;gBAC3D,OAAO;oBACL,IAAI;oBACJ,KAAK,EAAE,UAAU,CAAC,KAAK,IAAI,CAAC;iBAC7B,CAAC;YACJ,CAAC,CAAC,CACH,CAAC;YAEF,6BAA6B;YAC7B,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;YACzC,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;QACnC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,sCAAsC,EAAE,KAAK,CAAC,CAAC;YAC7D,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED;;OAEG;IACK,KAAK,CAAC,yBAAyB,CACrC,OAA6B,EAC7B,MAA2B;QAE3B,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,CAAC;YACtE,MAAM,KAAK,GAAY;gBACrB,EAAE,EAAE,SAAS,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;gBAC3C,QAAQ,EAAE,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;aAC7C,CAAC;YAEF,MAAM,MAAM,GAAa;gBACvB,IAAI,EAAE,WAAW;gBACjB,KAAK,EAAE,eAAe,CAAC,MAAM;aAC9B,CAAC;YAEF,yCAAyC;YACzC,MAAM,MAAM,GAAG,IAAI,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;YAEjD,MAAM,UAAU,GAAiB;gBAC/B,KAAK;gBACL,MAAM;gBACN,MAAM;gBACN,SAAS,EAAE,KAAK;gBAChB,IAAI,EAAE,IAAI;gBACV,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB,CAAC;YAEF,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,6CAA6C,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAChF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,MAA2B;QACtD,MAAM,eAAe,GAAG,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,CAAC;QACtE,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,OAAO,GAAG,CAAC,CAAC,6CAA6C;QAC3D,CAAC;QAED,IAAI,MAAM,GAAG,GAAG,CAAC;QAEjB,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,MAAM,CAAC;QACjF,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,GAAG,GAAG,CAAC,CAAC;QAExC,gCAAgC;QAChC,MAAM,IAAI,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QACzE,MAAM,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,IAAI,CAAC,CAAC;QAErC,sCAAsC;QACtC,MAAM,IAAI,CAAC,MAAM,CAAC,gBAAgB,EAAE,KAAK,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC;QAEtD,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACK,2BAA2B,CAAC,OAA6B,EAAE,IAAY;QAC7E,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QAC1C,OAAO;YACL,SAAS,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,MAAM,GAAG,GAAG,EAAE,wBAAwB;SAC5C,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,oBAAoB,CAAC,OAA6B;QACxD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC;QAC1C,MAAM,UAAU,GAAG,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC5E,OAAO;YACL,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC3B,UAAU;YACV,CAAC,OAAO,CAAC,SAAS,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YACpC,OAAO,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,CAAC,OAAO,CAAC,oBAAoB,EAAE,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC;YAC/C,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;SAC1B,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,+DAA+D;IAC/D,6EAA6E;IAE7E;;OAEG;IACK,KAAK,CAAC,4BAA4B,CAAC,eAAgC;QACzE,IAAI,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAChF,OAAO;QACT,CAAC;QAED,IAAI,CAAC;YACH,2CAA2C;YAC3C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC,CAAC,CAAC,CAAC;YACpF,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;YACjC,MAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;YAEjC,+CAA+C;YAC/C,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YACzC,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YACzC,MAAM,CAAC,GAAG,IAAI,YAAY,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;YAEzC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC9B,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;gBAC9B,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;YAChC,CAAC;YAED,8CAA8C;YAC9C,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,qBAAqB,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;YAE9F,yDAAyD;YACzD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,MAAM,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;gBAC9E,MAAM,cAAc,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,GAAG,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;gBAEhG,IAAI,cAAc,GAAG,GAAG,EAAE,CAAC;oBACzB,OAAO,CAAC,GAAG,CAAC,0DAA0D,eAAe,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjG,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED;;OAEG;IACK,4BAA4B,CAAC,aAA4B;QAC/D,mDAAmD;QACnD,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,qDAAqD;QACrD,MAAM,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;QAC3D,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAE5C,oBAAoB;QACpB,MAAM,WAAW,GAA2B;YAC1C,QAAQ,EAAE,GAAG;YACb,IAAI,EAAE,IAAI;YACV,MAAM,EAAE,GAAG;YACX,GAAG,EAAE,IAAI;YACT,aAAa,EAAE,GAAG;SACnB,CAAC;QACF,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;QAE1D,qCAAqC;QACrC,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAEzC,qBAAqB;QACrB,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC;QAEnE,4CAA4C;QAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC7E,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,CAAC;QAEvC,wCAAwC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC;QACxE,KAAK,IAAI,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,CAAC;QACxD,CAAC;QAED,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,GAAW;QAC1B,IAAI,IAAI,GAAG,CAAC,CAAC;QACb,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpC,IAAI,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAChD,IAAI,GAAG,IAAI,GAAG,CAAC,CAAC;QAClB,CAAC;QACD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,6EAA6E;IAC7E,iBAAiB;IACjB,6EAA6E;IAErE,KAAK,CAAC,uBAAuB,CACnC,UAAkB,EAClB,OAA6B;QAE7B,MAAM,MAAM,GAAqB;YAC/B,IAAI,EAAE,oBAAoB,UAAU,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE;YAClD,MAAM,EAAE,qBAAqB;YAC7B,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,CAAC,gBAAgB,EAAE,wBAAwB,EAAE,kBAAkB,CAAC;YAC9E,MAAM,EAAE;gBACN,UAAU;gBACV,SAAS,EAAE,OAAO,CAAC,SAAS;gBAC5B,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB;SACF,CAAC;QAEF,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,gCAAgC,CAAC,MAA2B;QAClE,MAAM,eAAe,GAAoB,EAAE,CAAC;QAE5C,IAAI,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC;YACxC,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,MAAM,CAAC,WAAW,EAAE,eAAe,EAAE,CAAC;YACxC,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,WAAW,CAAC,eAAe,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,MAAM,CAAC,iBAAiB,EAAE,eAAe,EAAE,CAAC;YAC9C,eAAe,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,eAAe,CAAC;IACzB,CAAC;IAED,6EAA6E;IAC7E,mBAAmB;IACnB,6EAA6E;IAErE,KAAK,CAAC,6BAA6B,CAAC,MAA2B;QACrE,MAAM,eAAe,GAAG,IAAI,CAAC,gCAAgC,CAAC,MAAM,CAAC,CAAC;QAEtE,wEAAwE;QACxE,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,eAAe,CAAC,CAAC;QAEvF,iDAAiD;QACjD,KAAK,MAAM,IAAI,IAAI,uBAAuB,EAAE,CAAC;YAC3C,MAAM,OAAO,GAAyB;gBACpC,MAAM,EAAE,IAAI,CAAC,EAAE;gBACf,GAAG,EAAE,IAAI,CAAC,KAAK;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAkD;gBACjE,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACxB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBACxB,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW;aAC1C,CAAC;YAEF,MAAM,KAAK,GAAG,WAAW,CACvB,wBAAwB,CAAC,sBAAsB,EAC/C,qBAAqB,EACrB,OAAO,CACR,CAAC;YAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACrC,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,0BAA0B,CAAC,eAAgC;QACvE,oEAAoE;QACpE,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YAC1D,OAAO,eAAe,CAAC;QACzB,CAAC;QAED,MAAM,QAAQ,GAAoB,EAAE,CAAC;QACrC,MAAM,YAAY,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;QACrG,MAAM,WAAW,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC;QAEpG,8DAA8D;QAC9D,QAAQ,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAE9B,2DAA2D;QAC3D,KAAK,MAAM,IAAI,IAAI,YAAY,EAAE,CAAC;YAChC,IAAI,CAAC;gBACH,MAAM,OAAO,GAAoB;oBAC/B,EAAE,EAAE,IAAI,CAAC,EAAE;oBACX,IAAI,EAAE,IAAI,CAAC,QAAQ;oBACnB,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,QAAQ,EAAE,IAAI,CAAC,QAAuC;oBACtD,QAAQ,EAAE,IAAI,CAAC,QAAuC;oBACtD,QAAQ,EAAE;wBACR,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,IAAI,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI;wBACxB,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;qBAC7B;oBACD,QAAQ,EAAE,CAAC;4BACT,IAAI,EAAE,cAAc;4BACpB,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,OAAO,IAAI,IAAI,CAAC,WAAW;yBACnD,CAAC;oBACF,KAAK,EAAE,IAAI,CAAC,KAAK;oBACjB,WAAW,EAAE,IAAI,CAAC,WAAW,CAAC,WAAW;oBACzC,UAAU,EAAE,IAAI,IAAI,EAAE;oBACtB,UAAU,EAAE,kBAAkB;iBAC/B,CAAC;gBAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAE1D,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBAC1D,uCAAuC;oBACvC,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,KAAK,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAChH,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;qBAAM,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;oBACjE,8CAA8C;oBAC9C,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,KAAK,oCAAoC,CAAC,CAAC;oBACrF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACtB,CAAC;qBAAM,CAAC;oBACN,gDAAgD;oBAChD,OAAO,CAAC,GAAG,CAAC,yBAAyB,IAAI,CAAC,KAAK,0BAA0B,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,0DAA0D;gBAC1D,OAAO,CAAC,IAAI,CAAC,+BAA+B,IAAI,CAAC,KAAK,yBAAyB,EAAE,KAAK,CAAC,CAAC;gBACxF,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;QAED,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,UAAU,IAAI,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;QAC5H,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,4BAA4B,aAAa,2BAA2B,CAAC,CAAC;QACpF,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,oCAAoC,CAAC,MAAwB;QACzE,MAAM,OAAO,GAAsB;YACjC,QAAQ,EAAE,MAAM,CAAC,UAAU;YAC3B,MAAM,EAAE,MAAM,CAAC,eAAe,IAAI,GAAG,EAAE,6BAA6B;YACpE,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC,MAAM;YACpC,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;SAC7D,CAAC;QAEF,MAAM,KAAK,GAAG,WAAW,CACvB,wBAAwB,CAAC,mBAAmB,EAC5C,qBAAqB,EACrB,OAAO,CACR,CAAC;QAEF,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,6EAA6E;IAC7E,sBAAsB;IACtB,6EAA6E;IAErE,aAAa,CAAC,EAAU,EAAE,IAA4B;QAC5D,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,IAAI,eAAe,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,sBAAsB,EAAE,CAAC;YACjE,MAAM,IAAI,KAAK,CACb,iCAAiC,IAAI,CAAC,MAAM,CAAC,sBAAsB,WAAW,CAC/E,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,EAAE;YACrB,EAAE;YACF,IAAI;YACJ,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI,IAAI,EAAE;YACrB,QAAQ,EAAE,EAAE;YACZ,QAAQ,EAAE,CAAC;SACZ,CAAC,CAAC;IACL,CAAC;IAEO,gBAAgB,CAAC,EAAU;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,MAAM,GAAG,WAAW,CAAC;YAC9B,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YAClC,QAAQ,CAAC,QAAQ,GAAG,GAAG,CAAC;QAC1B,CAAC;IACH,CAAC;IAEO,YAAY,CAAC,EAAU,EAAE,KAAa;QAC5C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QACxC,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;YAC3B,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;YAClC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAC;QACzB,CAAC;IACH,CAAC;IAEO,kBAAkB,CAAC,UAAkB,EAAE,OAAe;QAC5D,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,QAAQ,EAAE,CAAC;YACb,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,iBAAiB;IACjB,6EAA6E;IAErE,iBAAiB;QACvB,IAAI,CAAC,QAAQ,CAAC,SAAS,CACrB,iCAAiC,EACjC,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CACvC,CAAC;QAEF,IAAI,CAAC,QAAQ,CAAC,SAAS,CACrB,2CAA2C,EAC3C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CACrC,CAAC;IACJ,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAAC,MAAmB;QACtD,qDAAqD;IACvD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAAC,MAAmB;QACpD,iDAAiD;IACnD,CAAC;IAED,6EAA6E;IAC7E,oBAAoB;IACpB,6EAA6E;IAErE,KAAK,CAAC,iBAAiB;QAC7B,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACtC,2CAA2C,CAC5C,CAAC;QAEF,IAAI,UAAU,EAAE,CAAC;YACf,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;gBAClC,IAAI,QAAQ,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;oBAClC,QAAQ,CAAC,MAAM,GAAG,QAAQ,CAAC;oBAC3B,QAAQ,CAAC,KAAK,GAAG,uBAAuB,CAAC;oBACzC,QAAQ,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC;gBACpC,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;YAC5C,CAAC;QACH,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,iBAAiB;QAC7B,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;QACtD,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CACnB,2CAA2C,EAC3C,SAAS,EACT,EAAE,SAAS,EAAE,qBAAqB,EAAE,OAAO,EAAE,IAAI,EAAE,CACpD,CAAC;IACJ,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"coordinator.js","sourceRoot":"","sources":["../../../src/domains/security-compliance/coordinator.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,6 +39,8 @@ export interface RemediationAdvice {
|
|
|
39
39
|
readonly fixExample?: string;
|
|
40
40
|
readonly estimatedEffort: 'trivial' | 'minor' | 'moderate' | 'major';
|
|
41
41
|
readonly automatable: boolean;
|
|
42
|
+
/** ADR-051: Whether advice was enhanced by LLM analysis */
|
|
43
|
+
readonly llmEnhanced?: boolean;
|
|
42
44
|
}
|
|
43
45
|
/**
|
|
44
46
|
* Compliance standard and rules
|