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.
Files changed (250) hide show
  1. package/.claude/helpers/statusline-v3.cjs +96 -27
  2. package/README.md +6 -3
  3. package/package.json +1 -1
  4. package/scripts/sync-claude-flow.cjs +99 -0
  5. package/v3/CHANGELOG.md +133 -0
  6. package/v3/README.md +9 -5
  7. package/v3/dist/cli/bundle.js +60879 -51811
  8. package/v3/dist/coordination/consensus/domain-findings.d.ts +202 -0
  9. package/v3/dist/coordination/consensus/domain-findings.d.ts.map +1 -0
  10. package/v3/dist/coordination/consensus/domain-findings.js +66 -0
  11. package/v3/dist/coordination/consensus/domain-findings.js.map +1 -0
  12. package/v3/dist/coordination/consensus/index.d.ts +2 -0
  13. package/v3/dist/coordination/consensus/index.d.ts.map +1 -1
  14. package/v3/dist/coordination/consensus/index.js +4 -0
  15. package/v3/dist/coordination/consensus/index.js.map +1 -1
  16. package/v3/dist/coordination/index.d.ts +1 -0
  17. package/v3/dist/coordination/index.d.ts.map +1 -1
  18. package/v3/dist/coordination/index.js +4 -0
  19. package/v3/dist/coordination/index.js.map +1 -1
  20. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts +225 -0
  21. package/v3/dist/coordination/mixins/consensus-enabled-domain.d.ts.map +1 -0
  22. package/v3/dist/coordination/mixins/consensus-enabled-domain.js +466 -0
  23. package/v3/dist/coordination/mixins/consensus-enabled-domain.js.map +1 -0
  24. package/v3/dist/coordination/mixins/index.d.ts +14 -0
  25. package/v3/dist/coordination/mixins/index.d.ts.map +1 -0
  26. package/v3/dist/coordination/mixins/index.js +28 -0
  27. package/v3/dist/coordination/mixins/index.js.map +1 -0
  28. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts +227 -0
  29. package/v3/dist/coordination/mixins/mincut-aware-domain.d.ts.map +1 -0
  30. package/v3/dist/coordination/mixins/mincut-aware-domain.js +368 -0
  31. package/v3/dist/coordination/mixins/mincut-aware-domain.js.map +1 -0
  32. package/v3/dist/coordination/queen-coordinator.d.ts +23 -1
  33. package/v3/dist/coordination/queen-coordinator.d.ts.map +1 -1
  34. package/v3/dist/coordination/queen-coordinator.js +131 -3
  35. package/v3/dist/coordination/queen-coordinator.js.map +1 -1
  36. package/v3/dist/coordination/task-executor.d.ts +21 -1
  37. package/v3/dist/coordination/task-executor.d.ts.map +1 -1
  38. package/v3/dist/coordination/task-executor.js +222 -5
  39. package/v3/dist/coordination/task-executor.js.map +1 -1
  40. package/v3/dist/domains/chaos-resilience/coordinator.d.ts +92 -0
  41. package/v3/dist/domains/chaos-resilience/coordinator.d.ts.map +1 -1
  42. package/v3/dist/domains/chaos-resilience/coordinator.js +241 -1
  43. package/v3/dist/domains/chaos-resilience/coordinator.js.map +1 -1
  44. package/v3/dist/domains/chaos-resilience/plugin.js +1 -1
  45. package/v3/dist/domains/chaos-resilience/plugin.js.map +1 -1
  46. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts +29 -2
  47. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.d.ts.map +1 -1
  48. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js +62 -3
  49. package/v3/dist/domains/chaos-resilience/services/chaos-engineer.js.map +1 -1
  50. package/v3/dist/domains/code-intelligence/coordinator.d.ts +112 -0
  51. package/v3/dist/domains/code-intelligence/coordinator.d.ts.map +1 -1
  52. package/v3/dist/domains/code-intelligence/coordinator.js +221 -0
  53. package/v3/dist/domains/code-intelligence/coordinator.js.map +1 -1
  54. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts +66 -2
  55. package/v3/dist/domains/code-intelligence/services/knowledge-graph.d.ts.map +1 -1
  56. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js +253 -3
  57. package/v3/dist/domains/code-intelligence/services/knowledge-graph.js.map +1 -1
  58. package/v3/dist/domains/contract-testing/coordinator.d.ts +89 -1
  59. package/v3/dist/domains/contract-testing/coordinator.d.ts.map +1 -1
  60. package/v3/dist/domains/contract-testing/coordinator.js +222 -1
  61. package/v3/dist/domains/contract-testing/coordinator.js.map +1 -1
  62. package/v3/dist/domains/contract-testing/interfaces.d.ts +29 -1
  63. package/v3/dist/domains/contract-testing/interfaces.d.ts.map +1 -1
  64. package/v3/dist/domains/contract-testing/plugin.js +1 -1
  65. package/v3/dist/domains/contract-testing/plugin.js.map +1 -1
  66. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts +29 -2
  67. package/v3/dist/domains/contract-testing/services/contract-validator.d.ts.map +1 -1
  68. package/v3/dist/domains/contract-testing/services/contract-validator.js +58 -3
  69. package/v3/dist/domains/contract-testing/services/contract-validator.js.map +1 -1
  70. package/v3/dist/domains/coverage-analysis/coordinator.d.ts +95 -2
  71. package/v3/dist/domains/coverage-analysis/coordinator.d.ts.map +1 -1
  72. package/v3/dist/domains/coverage-analysis/coordinator.js +274 -6
  73. package/v3/dist/domains/coverage-analysis/coordinator.js.map +1 -1
  74. package/v3/dist/domains/coverage-analysis/plugin.d.ts +6 -1
  75. package/v3/dist/domains/coverage-analysis/plugin.d.ts.map +1 -1
  76. package/v3/dist/domains/coverage-analysis/plugin.js +73 -0
  77. package/v3/dist/domains/coverage-analysis/plugin.js.map +1 -1
  78. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts +119 -3
  79. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.d.ts.map +1 -1
  80. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js +267 -5
  81. package/v3/dist/domains/coverage-analysis/services/coverage-analyzer.js.map +1 -1
  82. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts +111 -2
  83. package/v3/dist/domains/coverage-analysis/services/gap-detector.d.ts.map +1 -1
  84. package/v3/dist/domains/coverage-analysis/services/gap-detector.js +231 -3
  85. package/v3/dist/domains/coverage-analysis/services/gap-detector.js.map +1 -1
  86. package/v3/dist/domains/defect-intelligence/coordinator.d.ts +80 -1
  87. package/v3/dist/domains/defect-intelligence/coordinator.d.ts.map +1 -1
  88. package/v3/dist/domains/defect-intelligence/coordinator.js +262 -7
  89. package/v3/dist/domains/defect-intelligence/coordinator.js.map +1 -1
  90. package/v3/dist/domains/defect-intelligence/interfaces.d.ts +17 -0
  91. package/v3/dist/domains/defect-intelligence/interfaces.d.ts.map +1 -1
  92. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts +91 -2
  93. package/v3/dist/domains/defect-intelligence/services/defect-predictor.d.ts.map +1 -1
  94. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js +274 -7
  95. package/v3/dist/domains/defect-intelligence/services/defect-predictor.js.map +1 -1
  96. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts +79 -2
  97. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.d.ts.map +1 -1
  98. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js +259 -3
  99. package/v3/dist/domains/defect-intelligence/services/root-cause-analyzer.js.map +1 -1
  100. package/v3/dist/domains/domain-interface.d.ts +194 -2
  101. package/v3/dist/domains/domain-interface.d.ts.map +1 -1
  102. package/v3/dist/domains/domain-interface.js +239 -0
  103. package/v3/dist/domains/domain-interface.js.map +1 -1
  104. package/v3/dist/domains/learning-optimization/coordinator.d.ts +171 -0
  105. package/v3/dist/domains/learning-optimization/coordinator.d.ts.map +1 -1
  106. package/v3/dist/domains/learning-optimization/coordinator.js +401 -1
  107. package/v3/dist/domains/learning-optimization/coordinator.js.map +1 -1
  108. package/v3/dist/domains/learning-optimization/index.d.ts +1 -1
  109. package/v3/dist/domains/learning-optimization/index.d.ts.map +1 -1
  110. package/v3/dist/domains/learning-optimization/index.js.map +1 -1
  111. package/v3/dist/domains/learning-optimization/interfaces.d.ts +18 -0
  112. package/v3/dist/domains/learning-optimization/interfaces.d.ts.map +1 -1
  113. package/v3/dist/domains/learning-optimization/plugin.js +1 -1
  114. package/v3/dist/domains/learning-optimization/plugin.js.map +1 -1
  115. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts +54 -2
  116. package/v3/dist/domains/learning-optimization/services/learning-coordinator.d.ts.map +1 -1
  117. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js +90 -3
  118. package/v3/dist/domains/learning-optimization/services/learning-coordinator.js.map +1 -1
  119. package/v3/dist/domains/quality-assessment/coordinator.d.ts +127 -0
  120. package/v3/dist/domains/quality-assessment/coordinator.d.ts.map +1 -1
  121. package/v3/dist/domains/quality-assessment/coordinator.js +493 -7
  122. package/v3/dist/domains/quality-assessment/coordinator.js.map +1 -1
  123. package/v3/dist/domains/quality-assessment/interfaces.d.ts +22 -0
  124. package/v3/dist/domains/quality-assessment/interfaces.d.ts.map +1 -1
  125. package/v3/dist/domains/quality-assessment/plugin.d.ts +6 -1
  126. package/v3/dist/domains/quality-assessment/plugin.d.ts.map +1 -1
  127. package/v3/dist/domains/quality-assessment/plugin.js +67 -0
  128. package/v3/dist/domains/quality-assessment/plugin.js.map +1 -1
  129. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts +61 -2
  130. package/v3/dist/domains/quality-assessment/services/deployment-advisor.d.ts.map +1 -1
  131. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js +213 -5
  132. package/v3/dist/domains/quality-assessment/services/deployment-advisor.js.map +1 -1
  133. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts +59 -4
  134. package/v3/dist/domains/quality-assessment/services/quality-analyzer.d.ts.map +1 -1
  135. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js +195 -3
  136. package/v3/dist/domains/quality-assessment/services/quality-analyzer.js.map +1 -1
  137. package/v3/dist/domains/requirements-validation/coordinator.d.ts +78 -0
  138. package/v3/dist/domains/requirements-validation/coordinator.d.ts.map +1 -1
  139. package/v3/dist/domains/requirements-validation/coordinator.js +189 -0
  140. package/v3/dist/domains/requirements-validation/coordinator.js.map +1 -1
  141. package/v3/dist/domains/requirements-validation/interfaces.d.ts +4 -0
  142. package/v3/dist/domains/requirements-validation/interfaces.d.ts.map +1 -1
  143. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts +106 -2
  144. package/v3/dist/domains/requirements-validation/services/requirements-validator.d.ts.map +1 -1
  145. package/v3/dist/domains/requirements-validation/services/requirements-validator.js +263 -3
  146. package/v3/dist/domains/requirements-validation/services/requirements-validator.js.map +1 -1
  147. package/v3/dist/domains/security-compliance/coordinator.d.ts +56 -1
  148. package/v3/dist/domains/security-compliance/coordinator.d.ts.map +1 -1
  149. package/v3/dist/domains/security-compliance/coordinator.js +241 -17
  150. package/v3/dist/domains/security-compliance/coordinator.js.map +1 -1
  151. package/v3/dist/domains/security-compliance/interfaces.d.ts +2 -0
  152. package/v3/dist/domains/security-compliance/interfaces.d.ts.map +1 -1
  153. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts +33 -2
  154. package/v3/dist/domains/security-compliance/services/security-scanner.d.ts.map +1 -1
  155. package/v3/dist/domains/security-compliance/services/security-scanner.js +107 -3
  156. package/v3/dist/domains/security-compliance/services/security-scanner.js.map +1 -1
  157. package/v3/dist/domains/test-execution/coordinator.d.ts +89 -0
  158. package/v3/dist/domains/test-execution/coordinator.d.ts.map +1 -1
  159. package/v3/dist/domains/test-execution/coordinator.js +259 -2
  160. package/v3/dist/domains/test-execution/coordinator.js.map +1 -1
  161. package/v3/dist/domains/test-execution/plugin.d.ts +6 -1
  162. package/v3/dist/domains/test-execution/plugin.d.ts.map +1 -1
  163. package/v3/dist/domains/test-execution/plugin.js +77 -0
  164. package/v3/dist/domains/test-execution/plugin.js.map +1 -1
  165. package/v3/dist/domains/test-execution/services/test-executor.d.ts +30 -2
  166. package/v3/dist/domains/test-execution/services/test-executor.d.ts.map +1 -1
  167. package/v3/dist/domains/test-execution/services/test-executor.js +64 -3
  168. package/v3/dist/domains/test-execution/services/test-executor.js.map +1 -1
  169. package/v3/dist/domains/test-generation/coordinator.d.ts +137 -0
  170. package/v3/dist/domains/test-generation/coordinator.d.ts.map +1 -1
  171. package/v3/dist/domains/test-generation/coordinator.js +421 -1
  172. package/v3/dist/domains/test-generation/coordinator.js.map +1 -1
  173. package/v3/dist/domains/test-generation/interfaces.d.ts +2 -0
  174. package/v3/dist/domains/test-generation/interfaces.d.ts.map +1 -1
  175. package/v3/dist/domains/test-generation/plugin.d.ts +6 -1
  176. package/v3/dist/domains/test-generation/plugin.d.ts.map +1 -1
  177. package/v3/dist/domains/test-generation/plugin.js +84 -0
  178. package/v3/dist/domains/test-generation/plugin.js.map +1 -1
  179. package/v3/dist/domains/test-generation/services/test-generator.d.ts +32 -0
  180. package/v3/dist/domains/test-generation/services/test-generator.d.ts.map +1 -1
  181. package/v3/dist/domains/test-generation/services/test-generator.js +158 -3
  182. package/v3/dist/domains/test-generation/services/test-generator.js.map +1 -1
  183. package/v3/dist/domains/visual-accessibility/coordinator.d.ts +77 -0
  184. package/v3/dist/domains/visual-accessibility/coordinator.d.ts.map +1 -1
  185. package/v3/dist/domains/visual-accessibility/coordinator.js +210 -2
  186. package/v3/dist/domains/visual-accessibility/coordinator.js.map +1 -1
  187. package/v3/dist/domains/visual-accessibility/plugin.d.ts.map +1 -1
  188. package/v3/dist/domains/visual-accessibility/plugin.js +3 -3
  189. package/v3/dist/domains/visual-accessibility/plugin.js.map +1 -1
  190. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts +47 -2
  191. package/v3/dist/domains/visual-accessibility/services/visual-tester.d.ts.map +1 -1
  192. package/v3/dist/domains/visual-accessibility/services/visual-tester.js +87 -3
  193. package/v3/dist/domains/visual-accessibility/services/visual-tester.js.map +1 -1
  194. package/v3/dist/kernel/interfaces.d.ts +54 -1
  195. package/v3/dist/kernel/interfaces.d.ts.map +1 -1
  196. package/v3/dist/learning/dream/dream-scheduler.d.ts +302 -0
  197. package/v3/dist/learning/dream/dream-scheduler.d.ts.map +1 -0
  198. package/v3/dist/learning/dream/dream-scheduler.js +551 -0
  199. package/v3/dist/learning/dream/dream-scheduler.js.map +1 -0
  200. package/v3/dist/learning/dream/index.d.ts +1 -0
  201. package/v3/dist/learning/dream/index.d.ts.map +1 -1
  202. package/v3/dist/learning/dream/index.js +4 -0
  203. package/v3/dist/learning/dream/index.js.map +1 -1
  204. package/v3/dist/learning/experience-capture-middleware.d.ts +119 -0
  205. package/v3/dist/learning/experience-capture-middleware.d.ts.map +1 -0
  206. package/v3/dist/learning/experience-capture-middleware.js +416 -0
  207. package/v3/dist/learning/experience-capture-middleware.js.map +1 -0
  208. package/v3/dist/mcp/bundle.js +83142 -70580
  209. package/v3/dist/mcp/handlers/core-handlers.d.ts.map +1 -1
  210. package/v3/dist/mcp/handlers/core-handlers.js +16 -2
  211. package/v3/dist/mcp/handlers/core-handlers.js.map +1 -1
  212. package/v3/dist/mcp/handlers/domain-handlers.d.ts +12 -13
  213. package/v3/dist/mcp/handlers/domain-handlers.d.ts.map +1 -1
  214. package/v3/dist/mcp/handlers/index.d.ts +1 -1
  215. package/v3/dist/mcp/handlers/index.d.ts.map +1 -1
  216. package/v3/dist/mcp/handlers/index.js +2 -2
  217. package/v3/dist/mcp/handlers/index.js.map +1 -1
  218. package/v3/dist/mcp/handlers/task-handlers.d.ts +1 -0
  219. package/v3/dist/mcp/handlers/task-handlers.d.ts.map +1 -1
  220. package/v3/dist/mcp/handlers/task-handlers.js +46 -12
  221. package/v3/dist/mcp/handlers/task-handlers.js.map +1 -1
  222. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts +30 -0
  223. package/v3/dist/mcp/handlers/wrapped-domain-handlers.d.ts.map +1 -0
  224. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js +75 -0
  225. package/v3/dist/mcp/handlers/wrapped-domain-handlers.js.map +1 -0
  226. package/v3/dist/mcp/services/reasoning-bank-service.d.ts +87 -13
  227. package/v3/dist/mcp/services/reasoning-bank-service.d.ts.map +1 -1
  228. package/v3/dist/mcp/services/reasoning-bank-service.js +291 -31
  229. package/v3/dist/mcp/services/reasoning-bank-service.js.map +1 -1
  230. package/v3/dist/mcp/tools/chaos-resilience/inject.js +1 -1
  231. package/v3/dist/mcp/tools/chaos-resilience/inject.js.map +1 -1
  232. package/v3/dist/mcp/tools/contract-testing/validate.js +1 -1
  233. package/v3/dist/mcp/tools/contract-testing/validate.js.map +1 -1
  234. package/v3/dist/mcp/tools/learning-optimization/optimize.js +1 -1
  235. package/v3/dist/mcp/tools/learning-optimization/optimize.js.map +1 -1
  236. package/v3/dist/mcp/tools/visual-accessibility/index.js +2 -2
  237. package/v3/dist/mcp/tools/visual-accessibility/index.js.map +1 -1
  238. package/v3/dist/routing/qe-agent-registry.d.ts +28 -1
  239. package/v3/dist/routing/qe-agent-registry.d.ts.map +1 -1
  240. package/v3/dist/routing/qe-agent-registry.js +116 -1
  241. package/v3/dist/routing/qe-agent-registry.js.map +1 -1
  242. package/v3/dist/shared/events/domain-events.d.ts +27 -0
  243. package/v3/dist/shared/events/domain-events.d.ts.map +1 -1
  244. package/v3/dist/shared/events/domain-events.js +1 -0
  245. package/v3/dist/shared/events/domain-events.js.map +1 -1
  246. package/v3/dist/sync/claude-flow-bridge.d.ts +63 -0
  247. package/v3/dist/sync/claude-flow-bridge.d.ts.map +1 -0
  248. package/v3/dist/sync/claude-flow-bridge.js +320 -0
  249. package/v3/dist/sync/claude-flow-bridge.js.map +1 -0
  250. 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":"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"}
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 or no engine, return all vulnerabilities
571
- if (!this.config.enableConsensus || !this.consensusEngine) {
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