@mxf-dev/core 2.0.4 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (466) hide show
  1. package/dist/config/ModelContextLimits.d.ts.map +1 -1
  2. package/dist/config/ModelContextLimits.js +7 -1
  3. package/dist/config/ModelContextLimits.js.map +1 -1
  4. package/dist/constants/CoreTools.d.ts +6 -5
  5. package/dist/constants/CoreTools.d.ts.map +1 -1
  6. package/dist/constants/CoreTools.js +6 -5
  7. package/dist/constants/CoreTools.js.map +1 -1
  8. package/dist/constants/DefaultPhaseProfiles.d.ts.map +1 -1
  9. package/dist/constants/DefaultPhaseProfiles.js +29 -0
  10. package/dist/constants/DefaultPhaseProfiles.js.map +1 -1
  11. package/dist/constants/ReservedIdentities.d.ts +14 -0
  12. package/dist/constants/ReservedIdentities.d.ts.map +1 -0
  13. package/dist/constants/ReservedIdentities.js +42 -0
  14. package/dist/constants/ReservedIdentities.js.map +1 -0
  15. package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts +16 -16
  16. package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.d.ts.map +1 -1
  17. package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js +98 -36
  18. package/dist/database/adapters/mongodb/MongoKnowledgeGraphRepository.js.map +1 -1
  19. package/dist/events/ClientEventBus.d.ts +28 -0
  20. package/dist/events/ClientEventBus.d.ts.map +1 -1
  21. package/dist/events/ClientEventBus.js +87 -40
  22. package/dist/events/ClientEventBus.js.map +1 -1
  23. package/dist/events/EventBus.d.ts +19 -1
  24. package/dist/events/EventBus.d.ts.map +1 -1
  25. package/dist/events/EventBus.js +23 -0
  26. package/dist/events/EventBus.js.map +1 -1
  27. package/dist/events/EventBusBase.d.ts +37 -6
  28. package/dist/events/EventBusBase.d.ts.map +1 -1
  29. package/dist/events/EventBusBase.js +75 -27
  30. package/dist/events/EventBusBase.js.map +1 -1
  31. package/dist/events/EventNames.d.ts +49 -36
  32. package/dist/events/EventNames.d.ts.map +1 -1
  33. package/dist/events/EventNames.js +38 -36
  34. package/dist/events/EventNames.js.map +1 -1
  35. package/dist/events/PublicEvents.d.ts +5 -1
  36. package/dist/events/PublicEvents.d.ts.map +1 -1
  37. package/dist/events/PublicEvents.js +7 -0
  38. package/dist/events/PublicEvents.js.map +1 -1
  39. package/dist/events/ServerEventBus.d.ts +7 -54
  40. package/dist/events/ServerEventBus.d.ts.map +1 -1
  41. package/dist/events/ServerEventBus.js +10 -96
  42. package/dist/events/ServerEventBus.js.map +1 -1
  43. package/dist/events/event-definitions/ControlLoopEvents.d.ts +35 -0
  44. package/dist/events/event-definitions/ControlLoopEvents.d.ts.map +1 -1
  45. package/dist/events/event-definitions/ControlLoopEvents.js +6 -0
  46. package/dist/events/event-definitions/ControlLoopEvents.js.map +1 -1
  47. package/dist/events/event-definitions/SdkEvents.d.ts +55 -0
  48. package/dist/events/event-definitions/SdkEvents.d.ts.map +1 -0
  49. package/dist/events/event-definitions/SdkEvents.js +36 -0
  50. package/dist/events/event-definitions/SdkEvents.js.map +1 -0
  51. package/dist/events/event-definitions/TaskEvents.d.ts +2 -7
  52. package/dist/events/event-definitions/TaskEvents.d.ts.map +1 -1
  53. package/dist/index.d.ts +4 -0
  54. package/dist/index.d.ts.map +1 -1
  55. package/dist/index.js +2 -0
  56. package/dist/index.js.map +1 -1
  57. package/dist/interfaces/AgentInterfaces.d.ts +5 -0
  58. package/dist/interfaces/AgentInterfaces.d.ts.map +1 -1
  59. package/dist/interfaces/ChannelConfig.d.ts +2 -2
  60. package/dist/interfaces/ChannelConfig.d.ts.map +1 -1
  61. package/dist/interfaces/ConversationMessage.d.ts +1 -1
  62. package/dist/interfaces/ConversationMessage.d.ts.map +1 -1
  63. package/dist/interfaces/IMemoryPersistence.d.ts +47 -1
  64. package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -1
  65. package/dist/interfaces/SocketServiceInterface.d.ts +3 -2
  66. package/dist/interfaces/SocketServiceInterface.d.ts.map +1 -1
  67. package/dist/interfaces/TaskInterfaces.d.ts +14 -1
  68. package/dist/interfaces/TaskInterfaces.d.ts.map +1 -1
  69. package/dist/models/agent.d.ts +0 -1
  70. package/dist/models/agent.d.ts.map +1 -1
  71. package/dist/models/agent.js +0 -5
  72. package/dist/models/agent.js.map +1 -1
  73. package/dist/models/agentIdentityReservation.d.ts +42 -0
  74. package/dist/models/agentIdentityReservation.d.ts.map +1 -0
  75. package/dist/models/agentIdentityReservation.js +52 -0
  76. package/dist/models/agentIdentityReservation.js.map +1 -0
  77. package/dist/models/channel.d.ts +2 -0
  78. package/dist/models/channel.d.ts.map +1 -1
  79. package/dist/models/channel.js.map +1 -1
  80. package/dist/models/channelKey.d.ts +1 -0
  81. package/dist/models/channelKey.d.ts.map +1 -1
  82. package/dist/models/channelKey.js +5 -0
  83. package/dist/models/channelKey.js.map +1 -1
  84. package/dist/models/memory.d.ts +1 -1
  85. package/dist/models/memory.d.ts.map +1 -1
  86. package/dist/models/memory.js +9 -12
  87. package/dist/models/memory.js.map +1 -1
  88. package/dist/models/memoryStrata.d.ts +3 -16
  89. package/dist/models/memoryStrata.d.ts.map +1 -1
  90. package/dist/models/memoryStrata.js +3 -5
  91. package/dist/models/memoryStrata.js.map +1 -1
  92. package/dist/models/plan.d.ts +2 -2
  93. package/dist/models/plan.d.ts.map +1 -1
  94. package/dist/models/plan.js +1 -1
  95. package/dist/models/plan.js.map +1 -1
  96. package/dist/models/taskEffectiveness.d.ts +1 -0
  97. package/dist/models/taskEffectiveness.d.ts.map +1 -1
  98. package/dist/models/taskEffectiveness.js +7 -1
  99. package/dist/models/taskEffectiveness.js.map +1 -1
  100. package/dist/models/user.d.ts +4 -0
  101. package/dist/models/user.d.ts.map +1 -1
  102. package/dist/models/user.js +8 -0
  103. package/dist/models/user.js.map +1 -1
  104. package/dist/protocols/mcp/LlmTestEnvironmentGuard.d.ts +16 -0
  105. package/dist/protocols/mcp/LlmTestEnvironmentGuard.d.ts.map +1 -0
  106. package/dist/protocols/mcp/LlmTestEnvironmentGuard.js +25 -0
  107. package/dist/protocols/mcp/LlmTestEnvironmentGuard.js.map +1 -0
  108. package/dist/protocols/mcp/McpServerTypes.d.ts +9 -0
  109. package/dist/protocols/mcp/McpServerTypes.d.ts.map +1 -1
  110. package/dist/protocols/mcp/providers/AnthropicMcpClient.d.ts.map +1 -1
  111. package/dist/protocols/mcp/providers/AnthropicMcpClient.js +1 -0
  112. package/dist/protocols/mcp/providers/AnthropicMcpClient.js.map +1 -1
  113. package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.d.ts.map +1 -1
  114. package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js +1 -0
  115. package/dist/protocols/mcp/providers/AzureOpenAiMcpClient.js.map +1 -1
  116. package/dist/protocols/mcp/providers/BaseMcpClient.d.ts +4 -0
  117. package/dist/protocols/mcp/providers/BaseMcpClient.d.ts.map +1 -1
  118. package/dist/protocols/mcp/providers/BaseMcpClient.js +10 -0
  119. package/dist/protocols/mcp/providers/BaseMcpClient.js.map +1 -1
  120. package/dist/protocols/mcp/providers/CustomMcpClient.d.ts.map +1 -1
  121. package/dist/protocols/mcp/providers/CustomMcpClient.js +7 -0
  122. package/dist/protocols/mcp/providers/CustomMcpClient.js.map +1 -1
  123. package/dist/protocols/mcp/providers/GeminiMcpClient.d.ts.map +1 -1
  124. package/dist/protocols/mcp/providers/GeminiMcpClient.js +1 -0
  125. package/dist/protocols/mcp/providers/GeminiMcpClient.js.map +1 -1
  126. package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts +1 -0
  127. package/dist/protocols/mcp/providers/OllamaMcpClient.d.ts.map +1 -1
  128. package/dist/protocols/mcp/providers/OllamaMcpClient.js +1 -0
  129. package/dist/protocols/mcp/providers/OllamaMcpClient.js.map +1 -1
  130. package/dist/protocols/mcp/providers/OpenAiMcpClient.d.ts.map +1 -1
  131. package/dist/protocols/mcp/providers/OpenAiMcpClient.js +1 -0
  132. package/dist/protocols/mcp/providers/OpenAiMcpClient.js.map +1 -1
  133. package/dist/protocols/mcp/providers/OpenRouterMcpClient.d.ts.map +1 -1
  134. package/dist/protocols/mcp/providers/OpenRouterMcpClient.js +2 -0
  135. package/dist/protocols/mcp/providers/OpenRouterMcpClient.js.map +1 -1
  136. package/dist/protocols/mcp/providers/XaiMcpClient.d.ts.map +1 -1
  137. package/dist/protocols/mcp/providers/XaiMcpClient.js +1 -0
  138. package/dist/protocols/mcp/providers/XaiMcpClient.js.map +1 -1
  139. package/dist/protocols/mcp/security/BrowserTargetGuard.d.ts +14 -0
  140. package/dist/protocols/mcp/security/BrowserTargetGuard.d.ts.map +1 -0
  141. package/dist/protocols/mcp/security/BrowserTargetGuard.js +55 -0
  142. package/dist/protocols/mcp/security/BrowserTargetGuard.js.map +1 -0
  143. package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.d.ts +24 -0
  144. package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.d.ts.map +1 -0
  145. package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.js +33 -0
  146. package/dist/protocols/mcp/security/ExternalMcpRegistrationPolicy.js.map +1 -0
  147. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -1
  148. package/dist/protocols/mcp/security/HttpTargetGuard.js +68 -6
  149. package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -1
  150. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
  151. package/dist/protocols/mcp/security/McpSecurityGuard.js +7 -5
  152. package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
  153. package/dist/protocols/mcp/security/McpToolPolicy.d.ts +18 -0
  154. package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -1
  155. package/dist/protocols/mcp/security/McpToolPolicy.js +60 -0
  156. package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -1
  157. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +118 -5
  158. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
  159. package/dist/protocols/mcp/services/ExternalMcpServerManager.js +499 -98
  160. package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
  161. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +2 -2
  162. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
  163. package/dist/protocols/mcp/services/ExternalServerConfigs.js +25 -8
  164. package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
  165. package/dist/protocols/mcp/tools/AnalyticsTools.d.ts +3 -37
  166. package/dist/protocols/mcp/tools/AnalyticsTools.d.ts.map +1 -1
  167. package/dist/protocols/mcp/tools/AnalyticsTools.js +134 -614
  168. package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
  169. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
  170. package/dist/protocols/mcp/tools/CodeAnalysisTools.js +16 -13
  171. package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
  172. package/dist/protocols/mcp/tools/EffectivenessTools.d.ts.map +1 -1
  173. package/dist/protocols/mcp/tools/EffectivenessTools.js +94 -30
  174. package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
  175. package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
  176. package/dist/protocols/mcp/tools/GitTools.js +9 -5
  177. package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
  178. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +10 -40
  179. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
  180. package/dist/protocols/mcp/tools/InfrastructureTools.js +29 -70
  181. package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
  182. package/dist/protocols/mcp/tools/JsonTools.d.ts.map +1 -1
  183. package/dist/protocols/mcp/tools/JsonTools.js +4 -4
  184. package/dist/protocols/mcp/tools/JsonTools.js.map +1 -1
  185. package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts +55 -592
  186. package/dist/protocols/mcp/tools/KnowledgeGraphTools.d.ts.map +1 -1
  187. package/dist/protocols/mcp/tools/KnowledgeGraphTools.js +169 -119
  188. package/dist/protocols/mcp/tools/KnowledgeGraphTools.js.map +1 -1
  189. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +6 -6
  190. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
  191. package/dist/protocols/mcp/tools/MemorySearchTools.js +107 -39
  192. package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
  193. package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts +4 -5
  194. package/dist/protocols/mcp/tools/MemoryUtilityTools.d.ts.map +1 -1
  195. package/dist/protocols/mcp/tools/MemoryUtilityTools.js +59 -208
  196. package/dist/protocols/mcp/tools/MemoryUtilityTools.js.map +1 -1
  197. package/dist/protocols/mcp/tools/PlanningTools.d.ts +2 -1
  198. package/dist/protocols/mcp/tools/PlanningTools.d.ts.map +1 -1
  199. package/dist/protocols/mcp/tools/PlanningTools.js +111 -49
  200. package/dist/protocols/mcp/tools/PlanningTools.js.map +1 -1
  201. package/dist/protocols/mcp/tools/ProjectContextTools.d.ts.map +1 -1
  202. package/dist/protocols/mcp/tools/ProjectContextTools.js +18 -12
  203. package/dist/protocols/mcp/tools/ProjectContextTools.js.map +1 -1
  204. package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
  205. package/dist/protocols/mcp/tools/SafetyTools.js +16 -13
  206. package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
  207. package/dist/protocols/mcp/tools/SearchProjectTools.d.ts +24 -7
  208. package/dist/protocols/mcp/tools/SearchProjectTools.d.ts.map +1 -1
  209. package/dist/protocols/mcp/tools/SearchProjectTools.js +226 -126
  210. package/dist/protocols/mcp/tools/SearchProjectTools.js.map +1 -1
  211. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts +0 -32
  212. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
  213. package/dist/protocols/mcp/tools/TaskPlanningTools.js +363 -450
  214. package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
  215. package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
  216. package/dist/protocols/mcp/tools/TestTools.js +18 -11
  217. package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
  218. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
  219. package/dist/protocols/mcp/tools/TypeScriptTools.js +22 -12
  220. package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
  221. package/dist/protocols/mcp/tools/UserInputTools.d.ts.map +1 -1
  222. package/dist/protocols/mcp/tools/UserInputTools.js +14 -1
  223. package/dist/protocols/mcp/tools/UserInputTools.js.map +1 -1
  224. package/dist/protocols/mcp/tools/UserMemoryTools.d.ts +3 -1
  225. package/dist/protocols/mcp/tools/UserMemoryTools.d.ts.map +1 -1
  226. package/dist/protocols/mcp/tools/UserMemoryTools.js +27 -62
  227. package/dist/protocols/mcp/tools/UserMemoryTools.js.map +1 -1
  228. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
  229. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +14 -60
  230. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
  231. package/dist/protocols/mcp/tools/shell/ShellSandbox.d.ts.map +1 -1
  232. package/dist/protocols/mcp/tools/shell/ShellSandbox.js +9 -27
  233. package/dist/protocols/mcp/tools/shell/ShellSandbox.js.map +1 -1
  234. package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts +40 -30
  235. package/dist/repositories/interfaces/IKnowledgeGraphRepository.d.ts.map +1 -1
  236. package/dist/schemas/EventPayloadSchema.d.ts +28 -0
  237. package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
  238. package/dist/schemas/EventPayloadSchema.js +30 -1
  239. package/dist/schemas/EventPayloadSchema.js.map +1 -1
  240. package/dist/schemas/MxpProtocolSchemas.d.ts +6 -6
  241. package/dist/services/AgentPerformanceService.d.ts +11 -0
  242. package/dist/services/AgentPerformanceService.d.ts.map +1 -1
  243. package/dist/services/AgentPerformanceService.js +59 -33
  244. package/dist/services/AgentPerformanceService.js.map +1 -1
  245. package/dist/services/AutoCorrectionService.d.ts +3 -0
  246. package/dist/services/AutoCorrectionService.d.ts.map +1 -1
  247. package/dist/services/AutoCorrectionService.js +19 -2
  248. package/dist/services/AutoCorrectionService.js.map +1 -1
  249. package/dist/services/BackgroundTaskManager.d.ts +23 -7
  250. package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
  251. package/dist/services/BackgroundTaskManager.js +137 -57
  252. package/dist/services/BackgroundTaskManager.js.map +1 -1
  253. package/dist/services/BrowserManager.d.ts +2 -0
  254. package/dist/services/BrowserManager.d.ts.map +1 -1
  255. package/dist/services/BrowserManager.js +18 -15
  256. package/dist/services/BrowserManager.js.map +1 -1
  257. package/dist/services/ChannelContextMemoryOperations.d.ts +8 -1
  258. package/dist/services/ChannelContextMemoryOperations.d.ts.map +1 -1
  259. package/dist/services/ChannelContextMemoryOperations.js +89 -165
  260. package/dist/services/ChannelContextMemoryOperations.js.map +1 -1
  261. package/dist/services/ChannelContextMessageOperations.d.ts +4 -3
  262. package/dist/services/ChannelContextMessageOperations.d.ts.map +1 -1
  263. package/dist/services/ChannelContextMessageOperations.js +72 -212
  264. package/dist/services/ChannelContextMessageOperations.js.map +1 -1
  265. package/dist/services/MemoryService.d.ts +52 -21
  266. package/dist/services/MemoryService.d.ts.map +1 -1
  267. package/dist/services/MemoryService.js +775 -548
  268. package/dist/services/MemoryService.js.map +1 -1
  269. package/dist/services/PatternLearningService.d.ts +5 -0
  270. package/dist/services/PatternLearningService.d.ts.map +1 -1
  271. package/dist/services/PatternLearningService.js +26 -3
  272. package/dist/services/PatternLearningService.js.map +1 -1
  273. package/dist/services/PerformanceOptimizationService.d.ts +2 -1
  274. package/dist/services/PerformanceOptimizationService.d.ts.map +1 -1
  275. package/dist/services/PerformanceOptimizationService.js +21 -6
  276. package/dist/services/PerformanceOptimizationService.js.map +1 -1
  277. package/dist/services/PredictiveAnalyticsService.d.ts +1 -0
  278. package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
  279. package/dist/services/PredictiveAnalyticsService.js +18 -6
  280. package/dist/services/PredictiveAnalyticsService.js.map +1 -1
  281. package/dist/services/ProactiveValidationService.d.ts +6 -0
  282. package/dist/services/ProactiveValidationService.d.ts.map +1 -1
  283. package/dist/services/ProactiveValidationService.js +58 -39
  284. package/dist/services/ProactiveValidationService.js.map +1 -1
  285. package/dist/services/TaskEffectivenessService.d.ts +55 -31
  286. package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
  287. package/dist/services/TaskEffectivenessService.js +243 -125
  288. package/dist/services/TaskEffectivenessService.js.map +1 -1
  289. package/dist/services/ToolExecutionInterceptor.d.ts +4 -0
  290. package/dist/services/ToolExecutionInterceptor.d.ts.map +1 -1
  291. package/dist/services/ToolExecutionInterceptor.js +31 -5
  292. package/dist/services/ToolExecutionInterceptor.js.map +1 -1
  293. package/dist/services/UserInputRequestManager.d.ts +13 -3
  294. package/dist/services/UserInputRequestManager.d.ts.map +1 -1
  295. package/dist/services/UserInputRequestManager.js +42 -6
  296. package/dist/services/UserInputRequestManager.js.map +1 -1
  297. package/dist/services/UserMemoryService.d.ts +2 -0
  298. package/dist/services/UserMemoryService.d.ts.map +1 -1
  299. package/dist/services/UserMemoryService.js +9 -4
  300. package/dist/services/UserMemoryService.js.map +1 -1
  301. package/dist/services/ValidationAnalyticsService.d.ts +4 -0
  302. package/dist/services/ValidationAnalyticsService.d.ts.map +1 -1
  303. package/dist/services/ValidationAnalyticsService.js +30 -8
  304. package/dist/services/ValidationAnalyticsService.js.map +1 -1
  305. package/dist/services/ValidationCacheService.d.ts +3 -1
  306. package/dist/services/ValidationCacheService.d.ts.map +1 -1
  307. package/dist/services/ValidationCacheService.js +25 -4
  308. package/dist/services/ValidationCacheService.js.map +1 -1
  309. package/dist/services/ValidationMiddleware.d.ts +7 -0
  310. package/dist/services/ValidationMiddleware.d.ts.map +1 -1
  311. package/dist/services/ValidationMiddleware.js +53 -10
  312. package/dist/services/ValidationMiddleware.js.map +1 -1
  313. package/dist/services/ValidationPerformanceService.d.ts +3 -0
  314. package/dist/services/ValidationPerformanceService.d.ts.map +1 -1
  315. package/dist/services/ValidationPerformanceService.js +28 -11
  316. package/dist/services/ValidationPerformanceService.js.map +1 -1
  317. package/dist/services/WebSearchService.d.ts.map +1 -1
  318. package/dist/services/WebSearchService.js +9 -0
  319. package/dist/services/WebSearchService.js.map +1 -1
  320. package/dist/services/dag/TaskDagService.d.ts +3 -0
  321. package/dist/services/dag/TaskDagService.d.ts.map +1 -1
  322. package/dist/services/dag/TaskDagService.js +18 -0
  323. package/dist/services/dag/TaskDagService.js.map +1 -1
  324. package/dist/services/kg/EntityQValueManager.d.ts +3 -1
  325. package/dist/services/kg/EntityQValueManager.d.ts.map +1 -1
  326. package/dist/services/kg/EntityQValueManager.js +10 -10
  327. package/dist/services/kg/EntityQValueManager.js.map +1 -1
  328. package/dist/services/kg/GraphSurpriseCalculator.d.ts +0 -4
  329. package/dist/services/kg/GraphSurpriseCalculator.d.ts.map +1 -1
  330. package/dist/services/kg/GraphSurpriseCalculator.js +0 -9
  331. package/dist/services/kg/GraphSurpriseCalculator.js.map +1 -1
  332. package/dist/services/kg/KnowledgeGraphService.d.ts +12 -12
  333. package/dist/services/kg/KnowledgeGraphService.d.ts.map +1 -1
  334. package/dist/services/kg/KnowledgeGraphService.js +43 -51
  335. package/dist/services/kg/KnowledgeGraphService.js.map +1 -1
  336. package/dist/services/kg/OrparGraphIntegration.d.ts.map +1 -1
  337. package/dist/services/kg/OrparGraphIntegration.js +6 -5
  338. package/dist/services/kg/OrparGraphIntegration.js.map +1 -1
  339. package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts +1 -0
  340. package/dist/services/orpar-memory/CycleConsolidationTrigger.d.ts.map +1 -1
  341. package/dist/services/orpar-memory/CycleConsolidationTrigger.js +8 -1
  342. package/dist/services/orpar-memory/CycleConsolidationTrigger.js.map +1 -1
  343. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +8 -1
  344. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
  345. package/dist/services/orpar-memory/OrparMemoryCoordinator.js +93 -45
  346. package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
  347. package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts +1 -0
  348. package/dist/services/orpar-memory/SurpriseOrparAdapter.d.ts.map +1 -1
  349. package/dist/services/orpar-memory/SurpriseOrparAdapter.js +8 -1
  350. package/dist/services/orpar-memory/SurpriseOrparAdapter.js.map +1 -1
  351. package/dist/types/ChannelContext.d.ts +2 -1
  352. package/dist/types/ChannelContext.d.ts.map +1 -1
  353. package/dist/types/EffectivenessTypes.d.ts +4 -1
  354. package/dist/types/EffectivenessTypes.d.ts.map +1 -1
  355. package/dist/types/TaskCompletionTypes.d.ts +7 -5
  356. package/dist/types/TaskCompletionTypes.d.ts.map +1 -1
  357. package/dist/types/TaskTypes.d.ts +8 -1
  358. package/dist/types/TaskTypes.d.ts.map +1 -1
  359. package/dist/utils/GlobMatcher.d.ts +37 -0
  360. package/dist/utils/GlobMatcher.d.ts.map +1 -0
  361. package/dist/utils/GlobMatcher.js +131 -0
  362. package/dist/utils/GlobMatcher.js.map +1 -0
  363. package/package.json +1 -1
  364. package/src/config/ModelContextLimits.ts +7 -1
  365. package/src/constants/CoreTools.ts +6 -5
  366. package/src/constants/DefaultPhaseProfiles.ts +29 -0
  367. package/src/constants/ReservedIdentities.ts +51 -0
  368. package/src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts +115 -36
  369. package/src/events/ClientEventBus.ts +117 -48
  370. package/src/events/EventBus.ts +32 -2
  371. package/src/events/EventBusBase.ts +132 -39
  372. package/src/events/EventNames.ts +43 -36
  373. package/src/events/PublicEvents.ts +8 -0
  374. package/src/events/ServerEventBus.ts +9 -128
  375. package/src/events/event-definitions/ControlLoopEvents.ts +12 -0
  376. package/src/events/event-definitions/SdkEvents.ts +58 -0
  377. package/src/events/event-definitions/TaskEvents.ts +2 -2
  378. package/src/index.ts +15 -0
  379. package/src/interfaces/AgentInterfaces.ts +5 -0
  380. package/src/interfaces/ChannelConfig.ts +2 -2
  381. package/src/interfaces/ConversationMessage.ts +5 -0
  382. package/src/interfaces/IMemoryPersistence.ts +55 -1
  383. package/src/interfaces/SocketServiceInterface.ts +3 -2
  384. package/src/interfaces/TaskInterfaces.ts +16 -1
  385. package/src/models/agent.ts +0 -6
  386. package/src/models/agentIdentityReservation.ts +77 -0
  387. package/src/models/channel.ts +2 -0
  388. package/src/models/channelKey.ts +10 -0
  389. package/src/models/memory.ts +18 -19
  390. package/src/models/memoryStrata.ts +9 -23
  391. package/src/models/plan.ts +3 -3
  392. package/src/models/taskEffectiveness.ts +9 -2
  393. package/src/models/user.ts +12 -0
  394. package/src/protocols/mcp/LlmTestEnvironmentGuard.ts +30 -0
  395. package/src/protocols/mcp/McpServerTypes.ts +9 -0
  396. package/src/protocols/mcp/providers/AnthropicMcpClient.ts +2 -0
  397. package/src/protocols/mcp/providers/AzureOpenAiMcpClient.ts +1 -0
  398. package/src/protocols/mcp/providers/BaseMcpClient.ts +13 -0
  399. package/src/protocols/mcp/providers/CustomMcpClient.ts +7 -0
  400. package/src/protocols/mcp/providers/GeminiMcpClient.ts +2 -0
  401. package/src/protocols/mcp/providers/OllamaMcpClient.ts +3 -1
  402. package/src/protocols/mcp/providers/OpenAiMcpClient.ts +2 -0
  403. package/src/protocols/mcp/providers/OpenRouterMcpClient.ts +3 -0
  404. package/src/protocols/mcp/providers/XaiMcpClient.ts +2 -0
  405. package/src/protocols/mcp/security/BrowserTargetGuard.ts +64 -0
  406. package/src/protocols/mcp/security/ExternalMcpRegistrationPolicy.ts +38 -0
  407. package/src/protocols/mcp/security/HttpTargetGuard.ts +77 -6
  408. package/src/protocols/mcp/security/McpSecurityGuard.ts +7 -5
  409. package/src/protocols/mcp/security/McpToolPolicy.ts +74 -0
  410. package/src/protocols/mcp/services/ExternalMcpServerManager.ts +656 -111
  411. package/src/protocols/mcp/services/ExternalServerConfigs.ts +26 -8
  412. package/src/protocols/mcp/tools/AnalyticsTools.ts +167 -641
  413. package/src/protocols/mcp/tools/CodeAnalysisTools.ts +44 -14
  414. package/src/protocols/mcp/tools/EffectivenessTools.ts +185 -45
  415. package/src/protocols/mcp/tools/GitTools.ts +15 -5
  416. package/src/protocols/mcp/tools/InfrastructureTools.ts +42 -90
  417. package/src/protocols/mcp/tools/JsonTools.ts +7 -4
  418. package/src/protocols/mcp/tools/KnowledgeGraphTools.ts +313 -164
  419. package/src/protocols/mcp/tools/MemorySearchTools.ts +158 -46
  420. package/src/protocols/mcp/tools/MemoryUtilityTools.ts +85 -232
  421. package/src/protocols/mcp/tools/PlanningTools.ts +137 -59
  422. package/src/protocols/mcp/tools/ProjectContextTools.ts +33 -12
  423. package/src/protocols/mcp/tools/SafetyTools.ts +49 -13
  424. package/src/protocols/mcp/tools/SearchProjectTools.ts +294 -153
  425. package/src/protocols/mcp/tools/TaskPlanningTools.ts +437 -514
  426. package/src/protocols/mcp/tools/TestTools.ts +41 -11
  427. package/src/protocols/mcp/tools/TypeScriptTools.ts +61 -12
  428. package/src/protocols/mcp/tools/UserInputTools.ts +15 -1
  429. package/src/protocols/mcp/tools/UserMemoryTools.ts +27 -62
  430. package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +26 -84
  431. package/src/protocols/mcp/tools/shell/ShellSandbox.ts +13 -31
  432. package/src/repositories/interfaces/IKnowledgeGraphRepository.ts +45 -27
  433. package/src/schemas/EventPayloadSchema.ts +45 -1
  434. package/src/services/AgentPerformanceService.ts +85 -36
  435. package/src/services/AutoCorrectionService.ts +25 -6
  436. package/src/services/BackgroundTaskManager.ts +183 -76
  437. package/src/services/BrowserManager.ts +20 -16
  438. package/src/services/ChannelContextMemoryOperations.ts +169 -202
  439. package/src/services/ChannelContextMessageOperations.ts +112 -274
  440. package/src/services/MemoryService.ts +1053 -760
  441. package/src/services/PatternLearningService.ts +32 -7
  442. package/src/services/PerformanceOptimizationService.ts +26 -9
  443. package/src/services/PredictiveAnalyticsService.ts +23 -10
  444. package/src/services/ProactiveValidationService.ts +66 -40
  445. package/src/services/TaskEffectivenessService.ts +421 -206
  446. package/src/services/ToolExecutionInterceptor.ts +40 -9
  447. package/src/services/UserInputRequestManager.ts +51 -6
  448. package/src/services/UserMemoryService.ts +12 -3
  449. package/src/services/ValidationAnalyticsService.ts +36 -11
  450. package/src/services/ValidationCacheService.ts +30 -7
  451. package/src/services/ValidationMiddleware.ts +62 -14
  452. package/src/services/ValidationPerformanceService.ts +47 -25
  453. package/src/services/WebSearchService.ts +16 -4
  454. package/src/services/dag/TaskDagService.ts +20 -1
  455. package/src/services/kg/EntityQValueManager.ts +21 -10
  456. package/src/services/kg/GraphSurpriseCalculator.ts +0 -14
  457. package/src/services/kg/KnowledgeGraphService.ts +56 -48
  458. package/src/services/kg/OrparGraphIntegration.ts +11 -5
  459. package/src/services/orpar-memory/CycleConsolidationTrigger.ts +10 -1
  460. package/src/services/orpar-memory/OrparMemoryCoordinator.ts +142 -71
  461. package/src/services/orpar-memory/SurpriseOrparAdapter.ts +10 -1
  462. package/src/types/ChannelContext.ts +3 -1
  463. package/src/types/EffectivenessTypes.ts +6 -2
  464. package/src/types/TaskCompletionTypes.ts +9 -9
  465. package/src/types/TaskTypes.ts +12 -1
  466. package/src/utils/GlobMatcher.ts +157 -0
@@ -23,6 +23,17 @@ import { DEFAULT_ENTITY_UTILITY, } from '../../../types/KnowledgeGraphTypes.js';
23
23
  import { getContextLimits } from '../../../config/knowledge-graph.config.js';
24
24
  import { Logger } from '../../../utils/Logger.js';
25
25
  const logger = new Logger('info', 'MongoKnowledgeGraphRepository', 'server');
26
+ /**
27
+ * Every mutation and id-list read is bound to one channel. A blank channel
28
+ * would turn the predicate into "any channel", so it is rejected before the
29
+ * query is built.
30
+ */
31
+ const requireChannelId = (channelId, operation) => {
32
+ if (typeof channelId !== 'string' || channelId.trim().length === 0) {
33
+ throw new Error(`${operation} requires a non-empty channelId`);
34
+ }
35
+ return channelId;
36
+ };
26
37
  /**
27
38
  * MongoDB implementation of IKnowledgeGraphRepository
28
39
  */
@@ -60,19 +71,24 @@ export class MongoKnowledgeGraphRepository {
60
71
  logger.debug(`Created entity: ${saved.name} (${saved.type}) in channel ${request.channelId}`);
61
72
  return toEntityObject(saved);
62
73
  }
63
- async getEntity(entityId) {
64
- const doc = await EntityModel.findById(entityId);
74
+ async getEntity(entityId, channelId) {
75
+ const doc = await EntityModel.findOne({
76
+ _id: entityId,
77
+ ...(channelId ? { channelId } : {})
78
+ });
65
79
  return doc ? toEntityObject(doc) : null;
66
80
  }
67
- async updateEntity(entityId, updates) {
68
- const doc = await EntityModel.findByIdAndUpdate(entityId, { $set: updates }, { new: true });
81
+ async updateEntity(entityId, channelId, updates) {
82
+ const doc = await EntityModel.findOneAndUpdate({ _id: entityId, channelId: requireChannelId(channelId, 'updateEntity') }, { $set: updates }, { new: true });
69
83
  return doc ? toEntityObject(doc) : null;
70
84
  }
71
- async deleteEntity(entityId) {
72
- const result = await EntityModel.deleteOne({ _id: entityId });
85
+ async deleteEntity(entityId, channelId) {
86
+ const exactChannelId = requireChannelId(channelId, 'deleteEntity');
87
+ const result = await EntityModel.deleteOne({ _id: entityId, channelId: exactChannelId });
73
88
  if (result.deletedCount > 0) {
74
89
  // Also delete relationships involving this entity
75
90
  await RelationshipModel.deleteMany({
91
+ channelId: exactChannelId,
76
92
  $or: [
77
93
  { fromEntityId: entityId },
78
94
  { toEntityId: entityId },
@@ -160,8 +176,11 @@ export class MongoKnowledgeGraphRepository {
160
176
  }
161
177
  return this.createEntity(request);
162
178
  }
163
- async mergeEntities(targetEntityId, sourceEntityIds) {
164
- const target = await EntityModel.findById(targetEntityId);
179
+ async mergeEntities(targetEntityId, sourceEntityIds, channelId) {
180
+ const target = await EntityModel.findOne({
181
+ _id: targetEntityId,
182
+ ...(channelId ? { channelId } : {})
183
+ });
165
184
  if (!target) {
166
185
  return {
167
186
  success: false,
@@ -169,12 +188,23 @@ export class MongoKnowledgeGraphRepository {
169
188
  error: 'Target entity not found',
170
189
  };
171
190
  }
172
- const sources = await EntityModel.find({ _id: { $in: sourceEntityIds } });
173
- if (sources.length === 0) {
191
+ const uniqueSourceEntityIds = [...new Set(sourceEntityIds)];
192
+ if (uniqueSourceEntityIds.includes(targetEntityId)) {
193
+ return {
194
+ success: false,
195
+ sourceEntityIds,
196
+ error: 'The merge target cannot also be a source entity',
197
+ };
198
+ }
199
+ const sources = await EntityModel.find({
200
+ _id: { $in: uniqueSourceEntityIds },
201
+ ...(channelId ? { channelId } : {})
202
+ });
203
+ if (sources.length !== uniqueSourceEntityIds.length) {
174
204
  return {
175
205
  success: false,
176
206
  sourceEntityIds,
177
- error: 'No source entities found',
207
+ error: 'Every source entity must exist in the authorized channel',
178
208
  };
179
209
  }
180
210
  // Merge aliases
@@ -191,15 +221,24 @@ export class MongoKnowledgeGraphRepository {
191
221
  }
192
222
  target.sourceMemoryIds = Array.from(allMemoryIds);
193
223
  // Mark sources as merged
194
- await EntityModel.updateMany({ _id: { $in: sourceEntityIds } }, {
224
+ await EntityModel.updateMany({
225
+ _id: { $in: uniqueSourceEntityIds },
226
+ ...(channelId ? { channelId } : {})
227
+ }, {
195
228
  $set: {
196
229
  merged: true,
197
230
  mergedInto: targetEntityId,
198
231
  },
199
232
  });
200
233
  // Update relationships to point to target
201
- await RelationshipModel.updateMany({ fromEntityId: { $in: sourceEntityIds } }, { $set: { fromEntityId: targetEntityId } });
202
- await RelationshipModel.updateMany({ toEntityId: { $in: sourceEntityIds } }, { $set: { toEntityId: targetEntityId } });
234
+ await RelationshipModel.updateMany({
235
+ fromEntityId: { $in: uniqueSourceEntityIds },
236
+ ...(channelId ? { channelId } : {})
237
+ }, { $set: { fromEntityId: targetEntityId } });
238
+ await RelationshipModel.updateMany({
239
+ toEntityId: { $in: uniqueSourceEntityIds },
240
+ ...(channelId ? { channelId } : {})
241
+ }, { $set: { toEntityId: targetEntityId } });
203
242
  await target.save();
204
243
  logger.info(`Merged ${sources.length} entities into ${target.name}`);
205
244
  return {
@@ -310,12 +349,15 @@ export class MongoKnowledgeGraphRepository {
310
349
  const doc = await RelationshipModel.findById(relationshipId);
311
350
  return doc ? toRelationshipObject(doc) : null;
312
351
  }
313
- async updateRelationship(relationshipId, updates) {
314
- const doc = await RelationshipModel.findByIdAndUpdate(relationshipId, { $set: updates }, { new: true });
352
+ async updateRelationship(relationshipId, channelId, updates) {
353
+ const doc = await RelationshipModel.findOneAndUpdate({ _id: relationshipId, channelId: requireChannelId(channelId, 'updateRelationship') }, { $set: updates }, { new: true });
315
354
  return doc ? toRelationshipObject(doc) : null;
316
355
  }
317
- async deleteRelationship(relationshipId) {
318
- const result = await RelationshipModel.deleteOne({ _id: relationshipId });
356
+ async deleteRelationship(relationshipId, channelId) {
357
+ const result = await RelationshipModel.deleteOne({
358
+ _id: relationshipId,
359
+ channelId: requireChannelId(channelId, 'deleteRelationship')
360
+ });
319
361
  return result.deletedCount > 0;
320
362
  }
321
363
  async getRelationshipsBetween(fromEntityId, toEntityId, type) {
@@ -356,7 +398,7 @@ export class MongoKnowledgeGraphRepository {
356
398
  // ========================================================================
357
399
  // Graph Query Operations
358
400
  // ========================================================================
359
- async getNeighbors(entityId, options) {
401
+ async getNeighbors(entityId, options, channelId) {
360
402
  const direction = options?.direction || 'both';
361
403
  const limit = options?.limit || 100;
362
404
  let relationshipQuery = {};
@@ -376,6 +418,9 @@ export class MongoKnowledgeGraphRepository {
376
418
  ? { $in: options.relationshipType }
377
419
  : options.relationshipType;
378
420
  }
421
+ if (channelId) {
422
+ relationshipQuery.channelId = channelId;
423
+ }
379
424
  const relationships = await RelationshipModel.find(relationshipQuery)
380
425
  .limit(limit)
381
426
  .lean();
@@ -389,6 +434,7 @@ export class MongoKnowledgeGraphRepository {
389
434
  let entityQuery = {
390
435
  _id: { $in: Array.from(neighborIds) },
391
436
  merged: false,
437
+ ...(channelId ? { channelId } : {})
392
438
  };
393
439
  if (options?.entityType) {
394
440
  entityQuery.type = Array.isArray(options.entityType)
@@ -396,16 +442,25 @@ export class MongoKnowledgeGraphRepository {
396
442
  : options.entityType;
397
443
  }
398
444
  const entities = await EntityModel.find(entityQuery).lean();
445
+ const scopedEntities = entities.map(doc => toEntityObject(doc));
446
+ const scopedEntityIds = new Set([
447
+ entityId,
448
+ ...scopedEntities.map(entity => entity.id)
449
+ ]);
450
+ const scopedRelationships = relationships
451
+ .map(doc => toRelationshipObject(doc))
452
+ .filter(relationship => (scopedEntityIds.has(relationship.fromEntityId) &&
453
+ scopedEntityIds.has(relationship.toEntityId)));
399
454
  return {
400
- entities: entities.map((doc) => toEntityObject(doc)),
401
- relationships: relationships.map((doc) => toRelationshipObject(doc)),
455
+ entities: scopedEntities,
456
+ relationships: scopedRelationships,
402
457
  };
403
458
  }
404
- async findPath(fromEntityId, toEntityId, maxHops) {
405
- const paths = await this.findAllPaths(fromEntityId, toEntityId, maxHops, 1);
459
+ async findPath(fromEntityId, toEntityId, maxHops, channelId) {
460
+ const paths = await this.findAllPaths(fromEntityId, toEntityId, maxHops, 1, channelId);
406
461
  return paths.length > 0 ? paths[0] : null;
407
462
  }
408
- async findAllPaths(fromEntityId, toEntityId, maxHops, limit) {
463
+ async findAllPaths(fromEntityId, toEntityId, maxHops, limit, channelId) {
409
464
  const maxDepth = maxHops ?? 5;
410
465
  const maxPaths = limit ?? 10;
411
466
  // BFS to find paths
@@ -443,6 +498,7 @@ export class MongoKnowledgeGraphRepository {
443
498
  // Get outgoing relationships
444
499
  const rels = await RelationshipModel.find({
445
500
  fromEntityId: current.currentId,
501
+ ...(channelId ? { channelId } : {})
446
502
  }).lean();
447
503
  for (const rel of rels) {
448
504
  if (!current.path.includes(rel.toEntityId)) {
@@ -502,7 +558,7 @@ export class MongoKnowledgeGraphRepository {
502
558
  executionTimeMs: Date.now() - startTime,
503
559
  };
504
560
  }
505
- async getSubgraph(entityId, depth, limit) {
561
+ async getSubgraph(entityId, depth, limit, channelId) {
506
562
  const maxDepth = depth ?? 2;
507
563
  const maxEntities = limit ?? 50;
508
564
  const entityIds = new Set([entityId]);
@@ -513,7 +569,7 @@ export class MongoKnowledgeGraphRepository {
513
569
  for (const id of currentLevel) {
514
570
  const neighbors = await this.getNeighbors(id, {
515
571
  limit: Math.min(10, maxEntities - entityIds.size),
516
- });
572
+ }, channelId);
517
573
  for (const rel of neighbors.relationships) {
518
574
  if (!relationships.find((r) => r.id === rel.id)) {
519
575
  relationships.push(rel);
@@ -530,6 +586,7 @@ export class MongoKnowledgeGraphRepository {
530
586
  }
531
587
  const entities = await EntityModel.find({
532
588
  _id: { $in: Array.from(entityIds) },
589
+ ...(channelId ? { channelId } : {})
533
590
  }).lean();
534
591
  return {
535
592
  entities: entities.map((doc) => toEntityObject(doc)),
@@ -539,21 +596,25 @@ export class MongoKnowledgeGraphRepository {
539
596
  // ========================================================================
540
597
  // Batch Operations
541
598
  // ========================================================================
542
- async getEntitiesByIds(entityIds) {
599
+ async getEntitiesByIds(channelId, entityIds) {
600
+ const exactChannelId = requireChannelId(channelId, 'getEntitiesByIds');
543
601
  if (entityIds.length === 0) {
544
602
  return [];
545
603
  }
546
604
  const docs = await EntityModel.find({
547
605
  _id: { $in: entityIds },
606
+ channelId: exactChannelId,
548
607
  merged: false,
549
608
  }).lean();
550
609
  return docs.map((doc) => toEntityObject(doc));
551
610
  }
552
- async getRelationshipsByEntityIds(entityIds) {
611
+ async getRelationshipsByEntityIds(channelId, entityIds) {
612
+ const exactChannelId = requireChannelId(channelId, 'getRelationshipsByEntityIds');
553
613
  if (entityIds.length === 0) {
554
614
  return [];
555
615
  }
556
616
  const docs = await RelationshipModel.find({
617
+ channelId: exactChannelId,
557
618
  $or: [
558
619
  { fromEntityId: { $in: entityIds } },
559
620
  { toEntityId: { $in: entityIds } },
@@ -581,8 +642,8 @@ export class MongoKnowledgeGraphRepository {
581
642
  // ========================================================================
582
643
  // Q-Value / MULS Operations
583
644
  // ========================================================================
584
- async updateEntityQValue(entityId, newQValue, reason) {
585
- const doc = await EntityModel.findByIdAndUpdate(entityId, {
645
+ async updateEntityQValue(entityId, channelId, newQValue, reason) {
646
+ const doc = await EntityModel.findOneAndUpdate({ _id: entityId, channelId: requireChannelId(channelId, 'updateEntityQValue') }, {
586
647
  $set: {
587
648
  'utility.qValue': newQValue,
588
649
  'utility.lastQValueUpdateAt': Date.now(),
@@ -593,10 +654,11 @@ export class MongoKnowledgeGraphRepository {
593
654
  }
594
655
  return doc ? toEntityObject(doc) : null;
595
656
  }
596
- async batchUpdateQValues(updates) {
657
+ async batchUpdateQValues(channelId, updates) {
658
+ const exactChannelId = requireChannelId(channelId, 'batchUpdateQValues');
597
659
  const bulkOps = updates.map((update) => ({
598
660
  updateOne: {
599
- filter: { _id: update.entityId },
661
+ filter: { _id: update.entityId, channelId: exactChannelId },
600
662
  update: {
601
663
  $set: {
602
664
  'utility.qValue': update.qValue,
@@ -628,15 +690,15 @@ export class MongoKnowledgeGraphRepository {
628
690
  const docs = await q.lean();
629
691
  return docs.map((doc) => toEntityObject(doc));
630
692
  }
631
- async incrementRetrievalCount(entityIds) {
632
- await EntityModel.updateMany({ _id: { $in: entityIds } }, {
693
+ async incrementRetrievalCount(channelId, entityIds) {
694
+ await EntityModel.updateMany({ _id: { $in: entityIds }, channelId: requireChannelId(channelId, 'incrementRetrievalCount') }, {
633
695
  $inc: { 'utility.retrievalCount': 1 },
634
696
  $set: { 'utility.lastAccessedAt': Date.now() },
635
697
  });
636
698
  }
637
- async recordOutcome(entityIds, success) {
699
+ async recordOutcome(channelId, entityIds, success) {
638
700
  const field = success ? 'utility.successCount' : 'utility.failureCount';
639
- await EntityModel.updateMany({ _id: { $in: entityIds } }, { $inc: { [field]: 1 } });
701
+ await EntityModel.updateMany({ _id: { $in: entityIds }, channelId: requireChannelId(channelId, 'recordOutcome') }, { $inc: { [field]: 1 } });
640
702
  }
641
703
  // ========================================================================
642
704
  // Context Operations
@@ -1 +1 @@
1
- {"version":3,"file":"MongoKnowledgeGraphRepository.js","sourceRoot":"","sources":["../../../../src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MongoKnowledgeGraphRepository.js","sourceRoot":"","sources":["../../../../src/database/adapters/mongodb/MongoKnowledgeGraphRepository.ts"],"names":[],"mappings":"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"}
@@ -35,6 +35,11 @@ export interface IClientEventBus extends BaseEventBusImplementation {
35
35
  * @returns this (for chaining)
36
36
  */
37
37
  setClientSocket(socket: SocketLike): this;
38
+ /**
39
+ * Release the primary socket only when it is the expected socket. Named
40
+ * agent transports and listeners owned by other SDK services are retained.
41
+ */
42
+ clearClientSocket(socket?: SocketLike): this;
38
43
  /**
39
44
  * Set up socket event forwarding
40
45
  * @param socket Socket to use
@@ -65,6 +70,8 @@ export interface IClientEventBus extends BaseEventBusImplementation {
65
70
  * @param payload Event payload
66
71
  */
67
72
  emitOn<K extends AnyEventName>(socketId: string, event: K, payload: PayloadOf<K>): void;
73
+ /** Whether the exact named socket used by emitOn() is connected. */
74
+ isRegisteredSocketConnected(socketId: string): boolean;
68
75
  /**
69
76
  * Disconnect the primary socket and unregister all sockets
70
77
  * @returns this (for chaining)
@@ -87,6 +94,13 @@ export declare class ClientEventBus extends BaseEventBusImplementation implement
87
94
  private socketListeners;
88
95
  private socketRegistry;
89
96
  private socketListenersRegistry;
97
+ /**
98
+ * Socket.IO broadcasts one envelope to every local agent socket. All of
99
+ * those sockets feed this process-global bus, so remember exact envelopes
100
+ * and publish each one only once. Set iteration order supplies bounded FIFO
101
+ * eviction; raw/custom socket payloads without an eventId remain distinct.
102
+ */
103
+ private readonly inboundEventKeys;
90
104
  /**
91
105
  * Create a new ClientEventBus
92
106
  * @param eventSubject Subject to use for events
@@ -98,6 +112,8 @@ export declare class ClientEventBus extends BaseEventBusImplementation implement
98
112
  * @returns this (for chaining)
99
113
  */
100
114
  setClientSocket(socket: SocketLike): this;
115
+ /** Release only the primary transport and the exact callbacks this bus owns. */
116
+ clearClientSocket(socket?: SocketLike): this;
101
117
  /**
102
118
  * Forward an emitted event to the primary socket.
103
119
  *
@@ -151,6 +167,8 @@ export declare class ClientEventBus extends BaseEventBusImplementation implement
151
167
  * @returns this (for chaining)
152
168
  */
153
169
  removeAllSocketListeners(): this;
170
+ /** Remove only listeners installed by this bus on the primary socket. */
171
+ private removePrimarySocketListeners;
154
172
  /**
155
173
  * Remove all agent event listeners
156
174
  * @returns this (for chaining)
@@ -161,5 +179,15 @@ export declare class ClientEventBus extends BaseEventBusImplementation implement
161
179
  * @returns true if socket is connected
162
180
  */
163
181
  isSocketConnected(): boolean;
182
+ /**
183
+ * Check the exact named agent socket used by emitOn().
184
+ *
185
+ * Request/response services must not rely on emitOn()'s primary-socket
186
+ * fallback: when no transport is available that fallback only logs, which
187
+ * would leave an acknowledged request pending forever.
188
+ */
189
+ isRegisteredSocketConnected(socketId: string): boolean;
190
+ /** Publish one exact typed socket envelope into the shared local bus. */
191
+ private publishInboundEvent;
164
192
  }
165
193
  //# sourceMappingURL=ClientEventBus.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ClientEventBus.d.ts","sourceRoot":"","sources":["../../src/events/ClientEventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAC;AAG7C,OAAO,EACH,YAAY,EACZ,0BAA0B,EAC1B,YAAY,EACZ,UAAU,EAEV,SAAS,EACZ,MAAM,mBAAmB,CAAC;AAU3B;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,0BAA0B;IAC/D;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAE1C;;;;OAIG;IACH,2BAA2B,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAEtD;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAE3D;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC;;;;;;OAMG;IACH,MAAM,CAAC,CAAC,SAAS,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAExF;;;OAGG;IACH,UAAU,IAAI,IAAI,CAAC;IAEnB;;;OAGG;IACH,wBAAwB,IAAI,IAAI,CAAC;CACpC;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,0BAA2B,YAAW,eAAe;IAErF,OAAO,CAAC,MAAM,CAA2B;IAEzC,OAAO,CAAC,eAAe,CAAoD;IAI3E,OAAO,CAAC,cAAc,CAAsC;IAE5D,OAAO,CAAC,uBAAuB,CAAiE;IAGhG;;;OAGG;gBACS,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC;IAI/C;;;;OAIG;IACI,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAsBhD;;;;;;OAMG;cACgB,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAYpG;;;;OAIG;IACI,2BAA2B,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IAqD5D;;;;;;;;;OASG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAoDjE;;;;;;OAMG;IACI,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAkC/C;;;;;;;;OAQG;IACI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAiCxE;;;OAGG;IACI,UAAU,IAAI,IAAI;IA0BzB;;;OAGG;IACI,wBAAwB,IAAI,IAAI;IAqDvC;;;OAGG;IACI,uBAAuB,IAAI,IAAI;IAKtC;;;OAGG;IACI,iBAAiB,IAAI,OAAO;CAItC"}
1
+ {"version":3,"file":"ClientEventBus.d.ts","sourceRoot":"","sources":["../../src/events/ClientEventBus.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,MAAM,CAAC;AAG7C,OAAO,EACH,YAAY,EACZ,0BAA0B,EAC1B,YAAY,EACZ,UAAU,EAEV,SAAS,EACZ,MAAM,mBAAmB,CAAC;AAc3B;;GAEG;AACH,MAAM,WAAW,eAAgB,SAAQ,0BAA0B;IAC/D;;;;OAIG;IACH,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAE1C;;;OAGG;IACH,iBAAiB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAE7C;;;;OAIG;IACH,2BAA2B,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAEtD;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI,CAAC;IAE3D;;;;;OAKG;IACH,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAEzC;;;;;;OAMG;IACH,MAAM,CAAC,CAAC,SAAS,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAExF,oEAAoE;IACpE,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;IAEvD;;;OAGG;IACH,UAAU,IAAI,IAAI,CAAC;IAEnB;;;OAGG;IACH,wBAAwB,IAAI,IAAI,CAAC;CACpC;AAED;;;;;GAKG;AACH,qBAAa,cAAe,SAAQ,0BAA2B,YAAW,eAAe;IAErF,OAAO,CAAC,MAAM,CAA2B;IAEzC,OAAO,CAAC,eAAe,CAA0C;IAIjE,OAAO,CAAC,cAAc,CAAsC;IAE5D,OAAO,CAAC,uBAAuB,CAAuD;IAEtF;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAqB;IAGtD;;;OAGG;gBACS,YAAY,EAAE,OAAO,CAAC,YAAY,CAAC;IAI/C;;;;OAIG;IACI,eAAe,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IA2BhD,gFAAgF;IACzE,iBAAiB,CAAC,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI;IAUnD;;;;;;OAMG;cACgB,kBAAkB,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,GAAG,IAAI;IAYpG;;;;OAIG;IACI,2BAA2B,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IA8C5D;;;;;;;;;OASG;IACI,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAoDjE;;;;;;OAMG;IACI,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAiC/C;;;;;;;;OAQG;IACI,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI;IAiCxE;;;OAGG;IACI,UAAU,IAAI,IAAI;IA4BzB;;;OAGG;IACI,wBAAwB,IAAI,IAAI;IA4BvC,yEAAyE;IACzE,OAAO,CAAC,4BAA4B;IA2BpC;;;OAGG;IACI,uBAAuB,IAAI,IAAI;IAKtC;;;OAGG;IACI,iBAAiB,IAAI,OAAO;IAInC;;;;;;OAMG;IACI,2BAA2B,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAK7D,yEAAyE;IACzE,OAAO,CAAC,mBAAmB;CAsB9B"}