@mxf-dev/core 1.0.1 → 2.0.1

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 (303) hide show
  1. package/README.md +18 -0
  2. package/dist/adapters/FrameworkAdapter.js +1 -1
  3. package/dist/adapters/FrameworkAdapter.js.map +1 -1
  4. package/dist/config/ConfigManager.d.ts +9 -8
  5. package/dist/config/ConfigManager.d.ts.map +1 -1
  6. package/dist/config/ConfigManager.js +47 -17
  7. package/dist/config/ConfigManager.js.map +1 -1
  8. package/dist/config/memory-strata.config.d.ts +25 -0
  9. package/dist/config/memory-strata.config.d.ts.map +1 -0
  10. package/dist/config/memory-strata.config.js +107 -0
  11. package/dist/config/memory-strata.config.js.map +1 -0
  12. package/dist/constants/ToolNames.d.ts +1 -29
  13. package/dist/constants/ToolNames.d.ts.map +1 -1
  14. package/dist/constants/ToolNames.js +4 -17
  15. package/dist/constants/ToolNames.js.map +1 -1
  16. package/dist/database/DatabaseAdapterFactory.d.ts +14 -2
  17. package/dist/database/DatabaseAdapterFactory.d.ts.map +1 -1
  18. package/dist/database/DatabaseAdapterFactory.js +21 -6
  19. package/dist/database/DatabaseAdapterFactory.js.map +1 -1
  20. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts +7 -1
  21. package/dist/database/adapters/mongodb/MongoBaseRepository.d.ts.map +1 -1
  22. package/dist/database/adapters/mongodb/MongoBaseRepository.js +12 -2
  23. package/dist/database/adapters/mongodb/MongoBaseRepository.js.map +1 -1
  24. package/dist/events/ClientEventBus.d.ts +16 -77
  25. package/dist/events/ClientEventBus.d.ts.map +1 -1
  26. package/dist/events/ClientEventBus.js +38 -311
  27. package/dist/events/ClientEventBus.js.map +1 -1
  28. package/dist/events/EventBus.d.ts +1 -1
  29. package/dist/events/EventBus.d.ts.map +1 -1
  30. package/dist/events/EventBus.js +5 -4
  31. package/dist/events/EventBus.js.map +1 -1
  32. package/dist/events/EventBusBase.d.ts +139 -34
  33. package/dist/events/EventBusBase.d.ts.map +1 -1
  34. package/dist/events/EventBusBase.js +366 -88
  35. package/dist/events/EventBusBase.js.map +1 -1
  36. package/dist/events/EventNames.d.ts +10 -1
  37. package/dist/events/EventNames.d.ts.map +1 -1
  38. package/dist/events/EventNames.js +3 -0
  39. package/dist/events/EventNames.js.map +1 -1
  40. package/dist/events/PublicEvents.d.ts +6 -2
  41. package/dist/events/PublicEvents.d.ts.map +1 -1
  42. package/dist/events/PublicEvents.js +7 -4
  43. package/dist/events/PublicEvents.js.map +1 -1
  44. package/dist/events/ServerEventBus.d.ts +23 -112
  45. package/dist/events/ServerEventBus.d.ts.map +1 -1
  46. package/dist/events/ServerEventBus.js +58 -323
  47. package/dist/events/ServerEventBus.js.map +1 -1
  48. package/dist/events/event-definitions/LlmBudgetEvents.d.ts +68 -0
  49. package/dist/events/event-definitions/LlmBudgetEvents.d.ts.map +1 -0
  50. package/dist/events/event-definitions/LlmBudgetEvents.js +35 -0
  51. package/dist/events/event-definitions/LlmBudgetEvents.js.map +1 -0
  52. package/dist/interfaces/IMemoryPersistence.d.ts +41 -0
  53. package/dist/interfaces/IMemoryPersistence.d.ts.map +1 -0
  54. package/dist/interfaces/IMemoryPersistence.js +15 -0
  55. package/dist/interfaces/IMemoryPersistence.js.map +1 -0
  56. package/dist/middleware/MxpMiddleware.d.ts +8 -1
  57. package/dist/middleware/MxpMiddleware.d.ts.map +1 -1
  58. package/dist/middleware/MxpMiddleware.js +42 -20
  59. package/dist/middleware/MxpMiddleware.js.map +1 -1
  60. package/dist/models/channelKey.d.ts +1 -0
  61. package/dist/models/channelKey.d.ts.map +1 -1
  62. package/dist/models/channelKey.js +5 -0
  63. package/dist/models/channelKey.js.map +1 -1
  64. package/dist/models/memoryUtility.d.ts +39 -0
  65. package/dist/models/memoryUtility.d.ts.map +1 -0
  66. package/dist/models/memoryUtility.js +39 -0
  67. package/dist/models/memoryUtility.js.map +1 -0
  68. package/dist/models/user.d.ts.map +1 -1
  69. package/dist/models/user.js +23 -1
  70. package/dist/models/user.js.map +1 -1
  71. package/dist/mxp/BinaryProtocolLayer.d.ts +24 -8
  72. package/dist/mxp/BinaryProtocolLayer.d.ts.map +1 -1
  73. package/dist/mxp/BinaryProtocolLayer.js +90 -103
  74. package/dist/mxp/BinaryProtocolLayer.js.map +1 -1
  75. package/dist/mxp/ContextCompressionEngine.d.ts +57 -10
  76. package/dist/mxp/ContextCompressionEngine.d.ts.map +1 -1
  77. package/dist/mxp/ContextCompressionEngine.js +170 -128
  78. package/dist/mxp/ContextCompressionEngine.js.map +1 -1
  79. package/dist/mxp/MxpTokenOptimizer.d.ts +7 -3
  80. package/dist/mxp/MxpTokenOptimizer.d.ts.map +1 -1
  81. package/dist/mxp/MxpTokenOptimizer.js +8 -5
  82. package/dist/mxp/MxpTokenOptimizer.js.map +1 -1
  83. package/dist/prompts/MxfAgentSystemPrompt.d.ts +1 -1
  84. package/dist/prompts/MxfAgentSystemPrompt.d.ts.map +1 -1
  85. package/dist/prompts/MxfAgentSystemPrompt.js +47 -57
  86. package/dist/prompts/MxfAgentSystemPrompt.js.map +1 -1
  87. package/dist/protocols/mcp/ToolError.d.ts +123 -0
  88. package/dist/protocols/mcp/ToolError.d.ts.map +1 -0
  89. package/dist/protocols/mcp/ToolError.js +108 -0
  90. package/dist/protocols/mcp/ToolError.js.map +1 -0
  91. package/dist/protocols/mcp/defineTool.d.ts +133 -0
  92. package/dist/protocols/mcp/defineTool.d.ts.map +1 -0
  93. package/dist/protocols/mcp/defineTool.js +236 -0
  94. package/dist/protocols/mcp/defineTool.js.map +1 -0
  95. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts +38 -0
  96. package/dist/protocols/mcp/security/HttpTargetGuard.d.ts.map +1 -0
  97. package/dist/protocols/mcp/security/HttpTargetGuard.js +227 -0
  98. package/dist/protocols/mcp/security/HttpTargetGuard.js.map +1 -0
  99. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts +9 -1
  100. package/dist/protocols/mcp/security/McpSecurityGuard.d.ts.map +1 -1
  101. package/dist/protocols/mcp/security/McpSecurityGuard.js +10 -2
  102. package/dist/protocols/mcp/security/McpSecurityGuard.js.map +1 -1
  103. package/dist/protocols/mcp/security/McpToolPolicy.d.ts +81 -0
  104. package/dist/protocols/mcp/security/McpToolPolicy.d.ts.map +1 -0
  105. package/dist/protocols/mcp/security/McpToolPolicy.js +202 -0
  106. package/dist/protocols/mcp/security/McpToolPolicy.js.map +1 -0
  107. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts +51 -18
  108. package/dist/protocols/mcp/services/ExternalMcpServerManager.d.ts.map +1 -1
  109. package/dist/protocols/mcp/services/ExternalMcpServerManager.js +256 -283
  110. package/dist/protocols/mcp/services/ExternalMcpServerManager.js.map +1 -1
  111. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts +39 -6
  112. package/dist/protocols/mcp/services/ExternalServerConfigs.d.ts.map +1 -1
  113. package/dist/protocols/mcp/services/ExternalServerConfigs.js +76 -18
  114. package/dist/protocols/mcp/services/ExternalServerConfigs.js.map +1 -1
  115. package/dist/protocols/mcp/tools/AnalyticsTools.js +1 -1
  116. package/dist/protocols/mcp/tools/AnalyticsTools.js.map +1 -1
  117. package/dist/protocols/mcp/tools/CodeAnalysisTools.d.ts.map +1 -1
  118. package/dist/protocols/mcp/tools/CodeAnalysisTools.js +15 -0
  119. package/dist/protocols/mcp/tools/CodeAnalysisTools.js.map +1 -1
  120. package/dist/protocols/mcp/tools/EffectivenessTools.js +3 -3
  121. package/dist/protocols/mcp/tools/EffectivenessTools.js.map +1 -1
  122. package/dist/protocols/mcp/tools/GitTools.d.ts +9 -369
  123. package/dist/protocols/mcp/tools/GitTools.d.ts.map +1 -1
  124. package/dist/protocols/mcp/tools/GitTools.js +222 -517
  125. package/dist/protocols/mcp/tools/GitTools.js.map +1 -1
  126. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts +56 -24
  127. package/dist/protocols/mcp/tools/InfrastructureTools.d.ts.map +1 -1
  128. package/dist/protocols/mcp/tools/InfrastructureTools.js +117 -26
  129. package/dist/protocols/mcp/tools/InfrastructureTools.js.map +1 -1
  130. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts +0 -3
  131. package/dist/protocols/mcp/tools/MemorySearchTools.d.ts.map +1 -1
  132. package/dist/protocols/mcp/tools/MemorySearchTools.js +58 -1
  133. package/dist/protocols/mcp/tools/MemorySearchTools.js.map +1 -1
  134. package/dist/protocols/mcp/tools/OrparTools.d.ts +8 -0
  135. package/dist/protocols/mcp/tools/OrparTools.d.ts.map +1 -1
  136. package/dist/protocols/mcp/tools/OrparTools.js +66 -0
  137. package/dist/protocols/mcp/tools/OrparTools.js.map +1 -1
  138. package/dist/protocols/mcp/tools/SafetyTools.d.ts +7 -525
  139. package/dist/protocols/mcp/tools/SafetyTools.d.ts.map +1 -1
  140. package/dist/protocols/mcp/tools/SafetyTools.js +349 -514
  141. package/dist/protocols/mcp/tools/SafetyTools.js.map +1 -1
  142. package/dist/protocols/mcp/tools/TaskPlanningTools.d.ts.map +1 -1
  143. package/dist/protocols/mcp/tools/TaskPlanningTools.js +56 -26
  144. package/dist/protocols/mcp/tools/TaskPlanningTools.js.map +1 -1
  145. package/dist/protocols/mcp/tools/TestTools.d.ts +15 -376
  146. package/dist/protocols/mcp/tools/TestTools.d.ts.map +1 -1
  147. package/dist/protocols/mcp/tools/TestTools.js +241 -363
  148. package/dist/protocols/mcp/tools/TestTools.js.map +1 -1
  149. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts +6 -276
  150. package/dist/protocols/mcp/tools/TypeScriptTools.d.ts.map +1 -1
  151. package/dist/protocols/mcp/tools/TypeScriptTools.js +223 -337
  152. package/dist/protocols/mcp/tools/TypeScriptTools.js.map +1 -1
  153. package/dist/protocols/mcp/tools/WebTools.d.ts +15 -728
  154. package/dist/protocols/mcp/tools/WebTools.d.ts.map +1 -1
  155. package/dist/protocols/mcp/tools/WebTools.js +151 -257
  156. package/dist/protocols/mcp/tools/WebTools.js.map +1 -1
  157. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts +5 -3
  158. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.d.ts.map +1 -1
  159. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js +31 -6
  160. package/dist/protocols/mcp/tools/shell/ShellExecuteHandler.js.map +1 -1
  161. package/dist/schemas/EventPayloadSchema.d.ts +21 -0
  162. package/dist/schemas/EventPayloadSchema.d.ts.map +1 -1
  163. package/dist/schemas/EventPayloadSchema.js +14 -0
  164. package/dist/schemas/EventPayloadSchema.js.map +1 -1
  165. package/dist/services/BackgroundTaskManager.d.ts.map +1 -1
  166. package/dist/services/BackgroundTaskManager.js +12 -4
  167. package/dist/services/BackgroundTaskManager.js.map +1 -1
  168. package/dist/services/BrowserManager.d.ts +1 -1
  169. package/dist/services/BrowserManager.d.ts.map +1 -1
  170. package/dist/services/BrowserManager.js +26 -3
  171. package/dist/services/BrowserManager.js.map +1 -1
  172. package/dist/services/MemoryCompressor.d.ts +11 -2
  173. package/dist/services/MemoryCompressor.d.ts.map +1 -1
  174. package/dist/services/MemoryCompressor.js +8 -26
  175. package/dist/services/MemoryCompressor.js.map +1 -1
  176. package/dist/services/MemoryService.d.ts +16 -3
  177. package/dist/services/MemoryService.d.ts.map +1 -1
  178. package/dist/services/MemoryService.js +79 -55
  179. package/dist/services/MemoryService.js.map +1 -1
  180. package/dist/services/MxfMLService.d.ts +5 -0
  181. package/dist/services/MxfMLService.d.ts.map +1 -1
  182. package/dist/services/MxfMLService.js +32 -6
  183. package/dist/services/MxfMLService.js.map +1 -1
  184. package/dist/services/PredictiveAnalyticsService.d.ts +45 -9
  185. package/dist/services/PredictiveAnalyticsService.d.ts.map +1 -1
  186. package/dist/services/PredictiveAnalyticsService.js +82 -44
  187. package/dist/services/PredictiveAnalyticsService.js.map +1 -1
  188. package/dist/services/QValueManager.d.ts +7 -0
  189. package/dist/services/QValueManager.d.ts.map +1 -1
  190. package/dist/services/QValueManager.js +9 -0
  191. package/dist/services/QValueManager.js.map +1 -1
  192. package/dist/services/RewardSignalProcessor.d.ts +38 -1
  193. package/dist/services/RewardSignalProcessor.d.ts.map +1 -1
  194. package/dist/services/RewardSignalProcessor.js +109 -7
  195. package/dist/services/RewardSignalProcessor.js.map +1 -1
  196. package/dist/services/SharedStateService.d.ts +16 -2
  197. package/dist/services/SharedStateService.d.ts.map +1 -1
  198. package/dist/services/SharedStateService.js +44 -3
  199. package/dist/services/SharedStateService.js.map +1 -1
  200. package/dist/services/TaskEffectivenessService.d.ts +34 -18
  201. package/dist/services/TaskEffectivenessService.d.ts.map +1 -1
  202. package/dist/services/TaskEffectivenessService.js +91 -155
  203. package/dist/services/TaskEffectivenessService.js.map +1 -1
  204. package/dist/services/WebSearchService.d.ts.map +1 -1
  205. package/dist/services/WebSearchService.js.map +1 -1
  206. package/dist/services/dag/TaskDagService.d.ts.map +1 -1
  207. package/dist/services/dag/TaskDagService.js +2 -0
  208. package/dist/services/dag/TaskDagService.js.map +1 -1
  209. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts +7 -0
  210. package/dist/services/orpar-memory/OrparMemoryCoordinator.d.ts.map +1 -1
  211. package/dist/services/orpar-memory/OrparMemoryCoordinator.js +71 -10
  212. package/dist/services/orpar-memory/OrparMemoryCoordinator.js.map +1 -1
  213. package/dist/types/MemoryUtilityTypes.d.ts +2 -0
  214. package/dist/types/MemoryUtilityTypes.d.ts.map +1 -1
  215. package/dist/types/MemoryUtilityTypes.js.map +1 -1
  216. package/dist/utils/Logger.d.ts +43 -3
  217. package/dist/utils/Logger.d.ts.map +1 -1
  218. package/dist/utils/Logger.js +78 -36
  219. package/dist/utils/Logger.js.map +1 -1
  220. package/dist/utils/MxpEncryption.d.ts +19 -6
  221. package/dist/utils/MxpEncryption.d.ts.map +1 -1
  222. package/dist/utils/MxpEncryption.js +48 -16
  223. package/dist/utils/MxpEncryption.js.map +1 -1
  224. package/package.json +19 -4
  225. package/src/adapters/FrameworkAdapter.ts +1 -1
  226. package/src/config/ConfigManager.ts +52 -19
  227. package/src/config/memory-strata.config.ts +136 -0
  228. package/src/constants/ToolNames.ts +4 -18
  229. package/src/database/DatabaseAdapterFactory.ts +23 -6
  230. package/src/database/adapters/mongodb/MongoBaseRepository.ts +16 -2
  231. package/src/events/ClientEventBus.ts +68 -403
  232. package/src/events/EventBus.ts +7 -8
  233. package/src/events/EventBusBase.ts +479 -116
  234. package/src/events/EventNames.ts +6 -0
  235. package/src/events/PublicEvents.ts +7 -4
  236. package/src/events/ServerEventBus.ts +78 -473
  237. package/src/events/event-definitions/LlmBudgetEvents.ts +74 -0
  238. package/src/interfaces/IMemoryPersistence.ts +51 -0
  239. package/src/middleware/MxpMiddleware.ts +51 -24
  240. package/src/models/channelKey.ts +18 -4
  241. package/src/models/memoryUtility.ts +64 -0
  242. package/src/models/user.ts +36 -4
  243. package/src/mxp/BinaryProtocolLayer.ts +108 -124
  244. package/src/mxp/ContextCompressionEngine.ts +219 -161
  245. package/src/mxp/MxpTokenOptimizer.ts +10 -10
  246. package/src/prompts/MxfAgentSystemPrompt.ts +45 -55
  247. package/src/protocols/mcp/ToolError.ts +201 -0
  248. package/src/protocols/mcp/defineTool.ts +379 -0
  249. package/src/protocols/mcp/security/HttpTargetGuard.ts +267 -0
  250. package/src/protocols/mcp/security/McpSecurityGuard.ts +10 -3
  251. package/src/protocols/mcp/security/McpToolPolicy.ts +221 -0
  252. package/src/protocols/mcp/services/ExternalMcpServerManager.ts +340 -322
  253. package/src/protocols/mcp/services/ExternalServerConfigs.ts +82 -19
  254. package/src/protocols/mcp/tools/AnalyticsTools.ts +1 -1
  255. package/src/protocols/mcp/tools/CodeAnalysisTools.ts +15 -0
  256. package/src/protocols/mcp/tools/EffectivenessTools.ts +3 -3
  257. package/src/protocols/mcp/tools/GitTools.ts +290 -569
  258. package/src/protocols/mcp/tools/InfrastructureTools.ts +189 -43
  259. package/src/protocols/mcp/tools/MemorySearchTools.ts +77 -1
  260. package/src/protocols/mcp/tools/OrparTools.ts +87 -0
  261. package/src/protocols/mcp/tools/SafetyTools.ts +501 -579
  262. package/src/protocols/mcp/tools/TaskPlanningTools.ts +81 -39
  263. package/src/protocols/mcp/tools/TestTools.ts +339 -419
  264. package/src/protocols/mcp/tools/TypeScriptTools.ts +316 -376
  265. package/src/protocols/mcp/tools/WebTools.ts +209 -307
  266. package/src/protocols/mcp/tools/shell/ShellExecuteHandler.ts +53 -14
  267. package/src/schemas/EventPayloadSchema.ts +37 -0
  268. package/src/services/BackgroundTaskManager.ts +12 -4
  269. package/src/services/BrowserManager.ts +41 -1
  270. package/src/services/MemoryCompressor.ts +20 -32
  271. package/src/services/MemoryService.ts +96 -58
  272. package/src/services/MxfMLService.ts +41 -7
  273. package/src/services/PredictiveAnalyticsService.ts +101 -51
  274. package/src/services/QValueManager.ts +10 -0
  275. package/src/services/RewardSignalProcessor.ts +138 -9
  276. package/src/services/SharedStateService.ts +56 -8
  277. package/src/services/TaskEffectivenessService.ts +114 -187
  278. package/src/services/WebSearchService.ts +2 -1
  279. package/src/services/dag/TaskDagService.ts +2 -0
  280. package/src/services/orpar-memory/OrparMemoryCoordinator.ts +86 -10
  281. package/src/types/MemoryUtilityTypes.ts +2 -0
  282. package/src/utils/Logger.ts +116 -40
  283. package/src/utils/MxpEncryption.ts +69 -34
  284. package/dist/mxp/MxpEventForwardingEnhancer.d.ts +0 -134
  285. package/dist/mxp/MxpEventForwardingEnhancer.d.ts.map +0 -1
  286. package/dist/mxp/MxpEventForwardingEnhancer.js +0 -361
  287. package/dist/mxp/MxpEventForwardingEnhancer.js.map +0 -1
  288. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts +0 -56
  289. package/dist/protocols/mcp/services/ToolSchemaEnhancements.d.ts.map +0 -1
  290. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js +0 -57
  291. package/dist/protocols/mcp/services/ToolSchemaEnhancements.js.map +0 -1
  292. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts +0 -270
  293. package/dist/protocols/mcp/tools/ControlLoopLifecycle.d.ts.map +0 -1
  294. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js +0 -256
  295. package/dist/protocols/mcp/tools/ControlLoopLifecycle.js.map +0 -1
  296. package/dist/protocols/mcp/tools/LspTools.d.ts +0 -495
  297. package/dist/protocols/mcp/tools/LspTools.d.ts.map +0 -1
  298. package/dist/protocols/mcp/tools/LspTools.js +0 -469
  299. package/dist/protocols/mcp/tools/LspTools.js.map +0 -1
  300. package/src/mxp/MxpEventForwardingEnhancer.ts +0 -471
  301. package/src/protocols/mcp/services/ToolSchemaEnhancements.ts +0 -92
  302. package/src/protocols/mcp/tools/ControlLoopLifecycle.ts +0 -302
  303. package/src/protocols/mcp/tools/LspTools.ts +0 -476
@@ -1 +1 @@
1
- {"version":3,"file":"MxpMiddleware.d.ts","sourceRoot":"","sources":["../../src/middleware/MxpMiddleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AAEH,OAAO,EACH,UAAU,EAQb,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAK5E;;GAEG;AACH,qBAAa,aAAa;IACtB;;OAEG;WACiB,eAAe,CAC/B,OAAO,EAAE,cAAc,GAAG,YAAY,GAAG,UAAU,EACnD,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QACL,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,KAAK,GAAG,kBAAkB,CAAC;KAC3C,GACP,OAAO,CAAC,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;IA8BtD;;OAEG;WACiB,eAAe,CAC/B,OAAO,EAAE,GAAG,GACb,OAAO,CAAC,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;IA+BtD;;OAEG;mBACkB,YAAY;IA+CjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA8BnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA8BlC;;OAEG;WACW,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM;IAmDxD;;OAEG;WACW,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAS1D;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,KAAK,CASlB;WAEY,QAAQ;;;;;;;;;;;;;;WAaR,UAAU;CAY3B"}
1
+ {"version":3,"file":"MxpMiddleware.d.ts","sourceRoot":"","sources":["../../src/middleware/MxpMiddleware.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;GAKG;AAEH,OAAO,EACH,UAAU,EAQb,MAAM,kCAAkC,CAAC;AAE1C,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAK5E;;GAEG;AACH,qBAAa,aAAa;IACtB;;OAEG;WACiB,eAAe,CAC/B,OAAO,EAAE,cAAc,GAAG,YAAY,GAAG,UAAU,EACnD,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE;QACL,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,eAAe,CAAC,EAAE,KAAK,GAAG,kBAAkB,CAAC;KAC3C,GACP,OAAO,CAAC,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;IA8BtD;;OAEG;WACiB,eAAe,CAC/B,OAAO,EAAE,GAAG,GACb,OAAO,CAAC,cAAc,GAAG,YAAY,GAAG,UAAU,CAAC;IA+BtD;;OAEG;mBACkB,YAAY;IA+CjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA8BnC;;;;;;;;;OASG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAkDlC;;OAEG;WACW,oBAAoB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM;IAmDxD;;OAEG;WACW,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAS1D;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,KAAK,CASlB;WAEY,QAAQ;;;;;;;;;;;;;;WAaR,UAAU;CAY3B"}
@@ -69,10 +69,11 @@ export class MxpMiddleware {
69
69
  if (isMxpMessage(message)) {
70
70
  this.stats.mxpMessages++;
71
71
  const mxpMsg = message;
72
- // Decrypt if needed
72
+ // Decrypt if needed. decryptMessage() throws on failure — an
73
+ // undecryptable message must not be passed on as if it were fine.
73
74
  if (mxpMsg.encrypted && isEncryptedPayload(mxpMsg.payload)) {
74
- const decrypted = mxpEncryption.decryptMessage(mxpMsg.payload);
75
- if (decrypted) {
75
+ try {
76
+ const decrypted = mxpEncryption.decryptMessage(mxpMsg.payload);
76
77
  this.stats.messagesDecrypted++;
77
78
  return {
78
79
  ...mxpMsg,
@@ -80,10 +81,9 @@ export class MxpMiddleware {
80
81
  encrypted: false
81
82
  };
82
83
  }
83
- else {
84
- logger.error('Failed to decrypt MXP message');
84
+ catch (error) {
85
85
  this.stats.encryptionFailures++;
86
- throw new Error('Decryption failed');
86
+ throw error;
87
87
  }
88
88
  }
89
89
  return mxpMsg;
@@ -158,31 +158,53 @@ export class MxpMiddleware {
158
158
  return args;
159
159
  }
160
160
  /**
161
- * Handle encryption for MXP messages
161
+ * Handle encryption for MXP messages.
162
+ *
163
+ * `forceEncryption` means exactly that: if the message cannot be encrypted,
164
+ * this throws rather than putting the plaintext on the wire. An earlier
165
+ * version incremented an `encryptionFailures` counter and returned the
166
+ * message unencrypted, so callers that asked for encryption silently got none.
167
+ *
168
+ * @throws If forceEncryption is set and encryption is unavailable or fails.
162
169
  */
163
170
  static handleMxpEncryption(message, forceEncryption) {
164
171
  // Skip if already encrypted
165
172
  if (message.encrypted && isEncryptedPayload(message.payload)) {
166
173
  return message;
167
174
  }
168
- // Check if encryption should be applied
175
+ if (isEncryptedPayload(message.payload)) {
176
+ return message;
177
+ }
178
+ if (forceEncryption && !mxpEncryption.isEncryptionEnabled()) {
179
+ this.stats.encryptionFailures++;
180
+ throw new Error('forceEncryption was requested but MXP encryption is not configured. ' +
181
+ 'Set MXP_ENCRYPTION_KEY and MXP_ENCRYPTION_SALT, or stop forcing encryption.');
182
+ }
183
+ // Reasoning messages stay in the clear unless encryption is forced:
184
+ // they carry no operational payload and are meant to be human-readable.
169
185
  const shouldEncrypt = forceEncryption ||
170
186
  (mxpEncryption.isEncryptionEnabled() && message.type !== MxpMessageType.REASONING);
171
- if (shouldEncrypt && !isEncryptedPayload(message.payload)) {
187
+ if (!shouldEncrypt) {
188
+ return message;
189
+ }
190
+ try {
191
+ // Throws on cipher failure; returns null only when encryption is off,
192
+ // which forceEncryption has already ruled out above.
172
193
  const encrypted = mxpEncryption.encrypt(message.payload);
173
- if (encrypted) {
174
- this.stats.messagesEncrypted++;
175
- return {
176
- ...message,
177
- encrypted: true,
178
- payload: encrypted
179
- };
180
- }
181
- else {
182
- this.stats.encryptionFailures++;
194
+ if (!encrypted) {
195
+ return message;
183
196
  }
197
+ this.stats.messagesEncrypted++;
198
+ return {
199
+ ...message,
200
+ encrypted: true,
201
+ payload: encrypted
202
+ };
203
+ }
204
+ catch (error) {
205
+ this.stats.encryptionFailures++;
206
+ throw error;
184
207
  }
185
- return message;
186
208
  }
187
209
  /**
188
210
  * Convert MXP message back to natural language (for display/logging)
@@ -1 +1 @@
1
- {"version":3,"file":"MxpMiddleware.js","sourceRoot":"","sources":["../../src/middleware/MxpMiddleware.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MxpMiddleware.js","sourceRoot":"","sources":["../../src/middleware/MxpMiddleware.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,7 @@ export interface IChannelKey extends Document {
32
32
  keyId: string;
33
33
  secretKey: string;
34
34
  channelId: string;
35
+ agentId: string;
35
36
  name?: string;
36
37
  createdBy: Schema.Types.ObjectId;
37
38
  isActive: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"channelKey.d.ts","sourceRoot":"","sources":["../../src/models/channelKey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;GAMG;AAEH,OAAO,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAEzC,KAAK,EAAE,MAAM,CAAC;IAGd,SAAS,EAAE,MAAM,CAAC;IAGlB,SAAS,EAAE,MAAM,CAAC;IAGlB,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IAGjC,QAAQ,EAAE,OAAO,CAAC;IAGlB,SAAS,CAAC,EAAE,IAAI,CAAC;IAGjB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACnB;AAuDD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAAO;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAKvE,CAAC;AAGF,QAAA,MAAM,UAAU;;;;OAA8D,CAAC;AAC/E,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"channelKey.d.ts","sourceRoot":"","sources":["../../src/models/channelKey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;GAMG;AAEH,OAAO,QAAQ,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AAGtD;;GAEG;AACH,MAAM,WAAW,WAAY,SAAQ,QAAQ;IAEzC,KAAK,EAAE,MAAM,CAAC;IAKd,SAAS,EAAE,MAAM,CAAC;IAGlB,SAAS,EAAE,MAAM,CAAC;IAOlB,OAAO,EAAE,MAAM,CAAC;IAGhB,IAAI,CAAC,EAAE,MAAM,CAAC;IAGd,SAAS,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC;IAGjC,QAAQ,EAAE,OAAO,CAAC;IAGlB,SAAS,CAAC,EAAE,IAAI,CAAC;IAGjB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,QAAQ,CAAC,EAAE,IAAI,CAAC;CACnB;AA4DD;;;GAGG;AACH,eAAO,MAAM,kBAAkB,QAAO;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAKvE,CAAC;AAGF,QAAA,MAAM,UAAU;;;;OAA8D,CAAC;AAC/E,eAAe,UAAU,CAAC"}
@@ -45,6 +45,11 @@ const ChannelKeySchema = new Schema({
45
45
  index: true,
46
46
  ref: 'ChannelRegistration',
47
47
  },
48
+ agentId: {
49
+ type: String,
50
+ required: true,
51
+ index: true,
52
+ },
48
53
  name: {
49
54
  type: String,
50
55
  required: false,
@@ -1 +1 @@
1
- {"version":3,"file":"channelKey.js","sourceRoot":"","sources":["../../src/models/channelKey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;GAMG;AAEH,OAAO,QAAQ,EAAE,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AACtD,OAAO,MAAM,MAAM,QAAQ,CAAC;AAiC5B;;GAEG;AACH,MAAM,gBAAgB,GAAW,IAAI,MAAM,CAAC;IACxC,KAAK,EAAE;QACH,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;KACf;IACD,SAAS,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;KACjB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;QACX,GAAG,EAAE,qBAAqB;KAC7B;IACD,IAAI,EAAE;QACF,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;KAClB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC3B,GAAG,EAAE,MAAM;QACX,QAAQ,EAAE,IAAI;KACjB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KAChB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,KAAK;KAClB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,CAAC,GAAG;KACpB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,CAAC,GAAG;KACpB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,KAAK;KAClB;CACJ,CAAC,CAAC;AAEH,8BAA8B;AAC9B,gBAAgB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAyC,EAAE;IACzE,OAAO;QACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtD,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACvD,CAAC;AACN,CAAC,CAAC;AAEF,yCAAyC;AACzC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAc,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAC/E,eAAe,UAAU,CAAC"}
1
+ {"version":3,"file":"channelKey.js","sourceRoot":"","sources":["../../src/models/channelKey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH;;;;;;GAMG;AAEH,OAAO,QAAQ,EAAE,EAAE,MAAM,EAAY,MAAM,UAAU,CAAC;AACtD,OAAO,MAAM,MAAM,QAAQ,CAAC;AA0C5B;;GAEG;AACH,MAAM,gBAAgB,GAAW,IAAI,MAAM,CAAC;IACxC,KAAK,EAAE;QACH,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,MAAM,EAAE,IAAI;KACf;IACD,SAAS,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;KACjB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;QACX,GAAG,EAAE,qBAAqB;KAC7B;IACD,OAAO,EAAE;QACL,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,IAAI;QACd,KAAK,EAAE,IAAI;KACd;IACD,IAAI,EAAE;QACF,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,KAAK;KAClB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;QAC3B,GAAG,EAAE,MAAM;QACX,QAAQ,EAAE,IAAI;KACjB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,OAAO;QACb,OAAO,EAAE,IAAI;KAChB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,KAAK;KAClB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,CAAC,GAAG;KACpB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,IAAI,CAAC,GAAG;KACpB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,IAAI;QACV,QAAQ,EAAE,KAAK;KAClB;CACJ,CAAC,CAAC;AAEH,8BAA8B;AAC9B,gBAAgB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC;AAEtD;;;GAGG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAyC,EAAE;IACzE,OAAO;QACH,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC;QACtD,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;KACvD,CAAC;AACN,CAAC,CAAC;AAEF,yCAAyC;AACzC,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAc,YAAY,EAAE,gBAAgB,CAAC,CAAC;AAC/E,eAAe,UAAU,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Memory Utility model (MULS).
3
+ *
4
+ * Stores the learned Q-value and reward statistics for a single *retrievable* memory —
5
+ * the unit QValueManager actually learns about, which is a document in the search index
6
+ * (a conversation message, action, or pattern), identified by its search-index id.
7
+ *
8
+ * Why this is its own collection: the `utility` subdocument on AgentMemory /
9
+ * ChannelMemory / RelationshipMemory is keyed by the id of a whole memory-scope
10
+ * document, whereas retrieval returns individual indexed items. Those are different
11
+ * granularities, so utility written onto a scope document would never match the id a
12
+ * retrieval learned about. That mismatch is why the previous persistence path silently
13
+ * matched nothing. Keying by the retrieved memory id is what makes learning durable.
14
+ */
15
+ import { Document, Model } from 'mongoose';
16
+ import { QValueInitSource } from '../types/MemoryUtilityTypes.js';
17
+ export interface IMemoryUtilityDocument extends Document {
18
+ /** The retrieved memory's id — matches the search-index document id. */
19
+ memoryId: string;
20
+ /** Agent this memory's utility was learned for (scoping and analytics). */
21
+ agentId?: string;
22
+ /** Channel this memory's utility was learned in (scoping and analytics). */
23
+ channelId?: string;
24
+ qValue: number;
25
+ qValueHistory: Array<{
26
+ value: number;
27
+ reward: number;
28
+ timestamp: Date;
29
+ phase?: string;
30
+ }>;
31
+ retrievalCount: number;
32
+ successCount: number;
33
+ failureCount: number;
34
+ lastRewardAt?: Date;
35
+ initializedFrom: QValueInitSource;
36
+ updatedAt: Date;
37
+ }
38
+ export declare const MemoryUtility: Model<IMemoryUtilityDocument>;
39
+ //# sourceMappingURL=memoryUtility.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memoryUtility.d.ts","sourceRoot":"","sources":["../../src/models/memoryUtility.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAiB,EAAU,QAAQ,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAElE,MAAM,WAAW,sBAAuB,SAAQ,QAAQ;IACpD,wEAAwE;IACxE,QAAQ,EAAE,MAAM,CAAC;IACjB,2EAA2E;IAC3E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,IAAI,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACzF,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,IAAI,CAAC;IACpB,eAAe,EAAE,gBAAgB,CAAC;IAClC,SAAS,EAAE,IAAI,CAAC;CACnB;AA4BD,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,sBAAsB,CAEwB,CAAC"}
@@ -0,0 +1,39 @@
1
+ /**
2
+ * Memory Utility model (MULS).
3
+ *
4
+ * Stores the learned Q-value and reward statistics for a single *retrievable* memory —
5
+ * the unit QValueManager actually learns about, which is a document in the search index
6
+ * (a conversation message, action, or pattern), identified by its search-index id.
7
+ *
8
+ * Why this is its own collection: the `utility` subdocument on AgentMemory /
9
+ * ChannelMemory / RelationshipMemory is keyed by the id of a whole memory-scope
10
+ * document, whereas retrieval returns individual indexed items. Those are different
11
+ * granularities, so utility written onto a scope document would never match the id a
12
+ * retrieval learned about. That mismatch is why the previous persistence path silently
13
+ * matched nothing. Keying by the retrieved memory id is what makes learning durable.
14
+ */
15
+ import mongoose, { Schema } from 'mongoose';
16
+ const memoryUtilitySchema = new Schema({
17
+ memoryId: { type: String, required: true, unique: true, index: true },
18
+ agentId: { type: String, index: true },
19
+ channelId: { type: String, index: true },
20
+ qValue: { type: Number, default: 0.5, min: 0, max: 1 },
21
+ qValueHistory: [{
22
+ value: { type: Number, required: true },
23
+ reward: { type: Number, required: true },
24
+ timestamp: { type: Date, default: Date.now },
25
+ phase: { type: String }
26
+ }],
27
+ retrievalCount: { type: Number, default: 0 },
28
+ successCount: { type: Number, default: 0 },
29
+ failureCount: { type: Number, default: 0 },
30
+ lastRewardAt: { type: Date },
31
+ initializedFrom: { type: String, default: 'default' },
32
+ updatedAt: { type: Date, default: Date.now }
33
+ });
34
+ // Ranking reads sort by Q-value, scoped by agent or channel.
35
+ memoryUtilitySchema.index({ agentId: 1, qValue: -1 });
36
+ memoryUtilitySchema.index({ channelId: 1, qValue: -1 });
37
+ export const MemoryUtility = mongoose.models.MemoryUtility ||
38
+ mongoose.model('MemoryUtility', memoryUtilitySchema);
39
+ //# sourceMappingURL=memoryUtility.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memoryUtility.js","sourceRoot":"","sources":["../../src/models/memoryUtility.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,QAAQ,EAAE,EAAE,MAAM,EAAmB,MAAM,UAAU,CAAC;AAoB7D,MAAM,mBAAmB,GAAG,IAAI,MAAM,CAAyB;IAC3D,QAAQ,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE;IACrE,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IACtC,SAAS,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE;IAExC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE;IAEtD,aAAa,EAAE,CAAC;YACZ,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YACvC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE;YACxC,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;YAC5C,KAAK,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE;SAC1B,CAAC;IAEF,cAAc,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;IAC5C,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;IAC1C,YAAY,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,EAAE;IAC1C,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;IAC5B,eAAe,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE;IACrD,SAAS,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,GAAG,EAAE;CAC/C,CAAC,CAAC;AAEH,6DAA6D;AAC7D,mBAAmB,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AACtD,mBAAmB,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;AAExD,MAAM,CAAC,MAAM,aAAa,GACtB,QAAQ,CAAC,MAAM,CAAC,aAAa;IAC7B,QAAQ,CAAC,KAAK,CAAyB,eAAe,EAAE,mBAAmB,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,QAAQ,EAAE,EAAE,QAAQ,EAAU,MAAM,UAAU,CAAC;AAGtD;;GAEG;AACH,oBAAY,QAAQ;IAChB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAGhB,eAAe,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AA+FD,eAAO,MAAM,IAAI;;;;OAA4C,CAAC"}
1
+ {"version":3,"file":"user.d.ts","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,QAAQ,EAAE,EAAE,QAAQ,EAAU,MAAM,UAAU,CAAC;AAgCtD;;GAEG;AACH,oBAAY,QAAQ;IAChB,KAAK,UAAU;IACf,QAAQ,aAAa;IACrB,QAAQ,aAAa;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,KAAM,SAAQ,QAAQ;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,EAAE,IAAI,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAGhB,eAAe,CAAC,iBAAiB,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAChE;AAkGD,eAAO,MAAM,IAAI;;;;OAA4C,CAAC"}
@@ -18,7 +18,27 @@
18
18
  * @documentation https://mxf-dev.github.io/mxf/
19
19
  */
20
20
  import mongoose, { Schema } from 'mongoose';
21
- import bcrypt from 'bcrypt';
21
+ let bcryptModule = null;
22
+ /**
23
+ * Load bcrypt on demand.
24
+ *
25
+ * @throws If bcrypt is not installed. Passwords are never stored unhashed.
26
+ */
27
+ const loadBcrypt = async () => {
28
+ if (bcryptModule) {
29
+ return bcryptModule;
30
+ }
31
+ try {
32
+ const imported = await import('bcrypt');
33
+ bcryptModule = (imported.default ?? imported);
34
+ return bcryptModule;
35
+ }
36
+ catch (error) {
37
+ throw new Error('Password hashing requires the optional peer dependency "bcrypt", which is not installed. ' +
38
+ 'Install it with `bun add bcrypt` (or `npm install bcrypt`) to use the User model. ' +
39
+ `Underlying error: ${error instanceof Error ? error.message : String(error)}`);
40
+ }
41
+ };
22
42
  /**
23
43
  * User role enum
24
44
  */
@@ -97,6 +117,7 @@ UserSchema.pre('save', async function (next) {
97
117
  return next();
98
118
  }
99
119
  try {
120
+ const bcrypt = await loadBcrypt();
100
121
  // Generate a salt
101
122
  const salt = await bcrypt.genSalt(10);
102
123
  // Hash the password along with the new salt
@@ -111,6 +132,7 @@ UserSchema.pre('save', async function (next) {
111
132
  });
112
133
  // Method to compare passwords
113
134
  UserSchema.methods.comparePassword = async function (candidatePassword) {
135
+ const bcrypt = await loadBcrypt();
114
136
  return bcrypt.compare(candidatePassword, this.password);
115
137
  };
116
138
  // Create and export the User model
@@ -1 +1 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../src/models/user.ts"],"names":[],"mappings":"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"}
@@ -39,6 +39,8 @@ export declare class BinaryProtocolLayer {
39
39
  private readonly logger;
40
40
  private readonly validator;
41
41
  private readonly compressionThresholds;
42
+ /** Counters for getCompressionStats(). Updated on every encode. */
43
+ private readonly stats;
42
44
  private constructor();
43
45
  /**
44
46
  * Get the singleton instance of BinaryProtocolLayer
@@ -50,16 +52,28 @@ export declare class BinaryProtocolLayer {
50
52
  */
51
53
  encodeMessage(message: MxpMessage, channelId: string, agentId?: string): CompressionResult | null;
52
54
  /**
53
- * Decode compressed message back to original format
55
+ * Decode an encoded message back to its original form.
56
+ *
57
+ * @throws If the payload cannot be decoded. A corrupt message is an error,
58
+ * not an empty result.
54
59
  */
55
- decodeMessage(compressedData: CompressionResult): MxpMessage | null;
60
+ decodeMessage(compressedData: CompressionResult): MxpMessage;
56
61
  /**
57
- * Batch compress multiple messages with intelligent batching
62
+ * Encode a group of messages as one or more batches.
63
+ *
64
+ * Batches that exceed maxBatchSize are split in half recursively until each
65
+ * part fits, and EVERY part is returned. An earlier version encoded only the
66
+ * first half and discarded the rest, silently losing messages.
67
+ *
68
+ * @returns One CompressionResult per batch, or null when bandwidth
69
+ * optimization is disabled or there is nothing to send.
70
+ * @throws If a batch cannot be encoded, or a single message is too large to
71
+ * fit in maxBatchSize on its own.
58
72
  */
59
73
  batchEncode(messages: MxpMessage[], channelId: string, agentId?: string, options?: {
60
74
  maxBatchSize?: number;
61
75
  compressionLevel?: 'light' | 'standard' | 'aggressive';
62
- }): CompressionResult | null;
76
+ }): CompressionResult[] | null;
63
77
  /**
64
78
  * Select optimal encoding format based on message characteristics
65
79
  */
@@ -69,7 +83,10 @@ export declare class BinaryProtocolLayer {
69
83
  */
70
84
  shouldApplyCompression(channelId: string, agentId?: string): boolean;
71
85
  /**
72
- * Get compression statistics for monitoring
86
+ * Compression statistics measured from the encodes this instance performed.
87
+ *
88
+ * averageCompressionRatio is compressedBytes/originalBytes across all
89
+ * encodes (1.0 = no reduction), and is 0 before anything has been encoded.
73
90
  */
74
91
  getCompressionStats(): {
75
92
  totalCompressions: number;
@@ -78,9 +95,8 @@ export declare class BinaryProtocolLayer {
78
95
  algorithmUsage: Record<CompressionAlgorithm, number>;
79
96
  };
80
97
  /**
81
- * Create streaming compression for real-time communication
82
- * Placeholder for future implementation with Socket.IO streaming
98
+ * Reset the compression counters (used by tests).
83
99
  */
84
- createCompressionStream(channelId: string, agentId?: string): any;
100
+ resetCompressionStats(): void;
85
101
  }
86
102
  //# sourceMappingURL=BinaryProtocolLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BinaryProtocolLayer.d.ts","sourceRoot":"","sources":["../../src/mxp/BinaryProtocolLayer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAsBH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,oBAAoB,CAAC;AACvE,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1E,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,oBAAoB,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,qBAAa,mBAAmB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoC;IAE3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgD;IAG1E,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAIpC;IAEF,OAAO;IAIP;;OAEG;WACW,WAAW,IAAI,mBAAmB;IAOhD;;;OAGG;IACI,aAAa,CAChB,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACjB,iBAAiB,GAAG,IAAI;IAyH3B;;OAEG;IACI,aAAa,CAAC,cAAc,EAAE,iBAAiB,GAAG,UAAU,GAAG,IAAI;IAwC1E;;OAEG;IACI,WAAW,CACd,QAAQ,EAAE,UAAU,EAAE,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE;QACL,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,CAAC;KACrD,GACP,iBAAiB,GAAG,IAAI;IAqE3B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;OAEG;IACI,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;IAQ3E;;OAEG;IACI,mBAAmB,IAAI;QAC1B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,uBAAuB,EAAE,MAAM,CAAC;QAChC,mBAAmB,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;KACxD;IAeD;;;OAGG;IACI,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,GAAG;CAiB3E"}
1
+ {"version":3,"file":"BinaryProtocolLayer.d.ts","sourceRoot":"","sources":["../../src/mxp/BinaryProtocolLayer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAsBH,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,SAAS,GAAG,oBAAoB,CAAC;AACvE,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;AAE1E,MAAM,WAAW,iBAAiB;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,SAAS,EAAE,oBAAoB,CAAC;IAChC,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,GAAG,CAAC;IACb,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,qBAAa,mBAAmB;IAC5B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAoC;IAE3D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAgD;IAG1E,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAGpC;IAEF,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAUpB;IAEF,OAAO;IAIP;;OAEG;WACW,WAAW,IAAI,mBAAmB;IAOhD;;;OAGG;IACI,aAAa,CAChB,OAAO,EAAE,UAAU,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,GACjB,iBAAiB,GAAG,IAAI;IAgH3B;;;;;OAKG;IACI,aAAa,CAAC,cAAc,EAAE,iBAAiB,GAAG,UAAU;IA8BnE;;;;;;;;;;;OAWG;IACI,WAAW,CACd,QAAQ,EAAE,UAAU,EAAE,EACtB,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE;QACL,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,gBAAgB,CAAC,EAAE,OAAO,GAAG,UAAU,GAAG,YAAY,CAAC;KACrD,GACP,iBAAiB,EAAE,GAAG,IAAI;IA2D7B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;OAEG;IACI,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO;IAQ3E;;;;;OAKG;IACI,mBAAmB,IAAI;QAC1B,iBAAiB,EAAE,MAAM,CAAC;QAC1B,uBAAuB,EAAE,MAAM,CAAC;QAChC,mBAAmB,EAAE,MAAM,CAAC;QAC5B,cAAc,EAAE,MAAM,CAAC,oBAAoB,EAAE,MAAM,CAAC,CAAC;KACxD;IAaD;;OAEG;IACI,qBAAqB,IAAI,IAAI;CAMvC"}