@exellix/exellix-runtime 3.5.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 (318) hide show
  1. package/README.md +422 -0
  2. package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.d.ts +4 -0
  3. package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.d.ts.map +1 -0
  4. package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.js +311 -0
  5. package/dist/catalox-inventory/catalox-execution-matrix-inventory-cli.js.map +1 -0
  6. package/dist/catalox-inventory/catalox-execution-matrix-inventory.d.ts +64 -0
  7. package/dist/catalox-inventory/catalox-execution-matrix-inventory.d.ts.map +1 -0
  8. package/dist/catalox-inventory/catalox-execution-matrix-inventory.js +226 -0
  9. package/dist/catalox-inventory/catalox-execution-matrix-inventory.js.map +1 -0
  10. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.d.ts +145 -0
  11. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.d.ts.map +1 -0
  12. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.js +477 -0
  13. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.js.map +1 -0
  14. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.d.ts +2 -0
  15. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.d.ts.map +1 -0
  16. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.js +34 -0
  17. package/dist/catalox-inventory/catalox-xmemory-entity-count-report.spec.js.map +1 -0
  18. package/dist/cli/argv.d.ts +5 -0
  19. package/dist/cli/argv.d.ts.map +1 -0
  20. package/dist/cli/argv.js +32 -0
  21. package/dist/cli/argv.js.map +1 -0
  22. package/dist/cli/commands/health.d.ts +2 -0
  23. package/dist/cli/commands/health.d.ts.map +1 -0
  24. package/dist/cli/commands/health.js +23 -0
  25. package/dist/cli/commands/health.js.map +1 -0
  26. package/dist/cli/commands/matrix-link.d.ts +2 -0
  27. package/dist/cli/commands/matrix-link.d.ts.map +1 -0
  28. package/dist/cli/commands/matrix-link.js +56 -0
  29. package/dist/cli/commands/matrix-link.js.map +1 -0
  30. package/dist/cli/commands/matrix-read.d.ts +2 -0
  31. package/dist/cli/commands/matrix-read.d.ts.map +1 -0
  32. package/dist/cli/commands/matrix-read.js +73 -0
  33. package/dist/cli/commands/matrix-read.js.map +1 -0
  34. package/dist/cli/env.d.ts +6 -0
  35. package/dist/cli/env.d.ts.map +1 -0
  36. package/dist/cli/env.js +39 -0
  37. package/dist/cli/env.js.map +1 -0
  38. package/dist/cli/exellix-runtime-cli.d.ts +3 -0
  39. package/dist/cli/exellix-runtime-cli.d.ts.map +1 -0
  40. package/dist/cli/exellix-runtime-cli.js +55 -0
  41. package/dist/cli/exellix-runtime-cli.js.map +1 -0
  42. package/dist/cli/help.d.ts +19 -0
  43. package/dist/cli/help.d.ts.map +1 -0
  44. package/dist/cli/help.js +94 -0
  45. package/dist/cli/help.js.map +1 -0
  46. package/dist/client-toolbox/bundle.d.ts +17 -0
  47. package/dist/client-toolbox/bundle.d.ts.map +1 -0
  48. package/dist/client-toolbox/bundle.js +17 -0
  49. package/dist/client-toolbox/bundle.js.map +1 -0
  50. package/dist/client-toolbox/client-toolbox.spec.d.ts +2 -0
  51. package/dist/client-toolbox/client-toolbox.spec.d.ts.map +1 -0
  52. package/dist/client-toolbox/client-toolbox.spec.js +145 -0
  53. package/dist/client-toolbox/client-toolbox.spec.js.map +1 -0
  54. package/dist/client-toolbox/index.d.ts +4 -0
  55. package/dist/client-toolbox/index.d.ts.map +1 -0
  56. package/dist/client-toolbox/index.js +4 -0
  57. package/dist/client-toolbox/index.js.map +1 -0
  58. package/dist/client-toolbox/matrix-config.d.ts +67 -0
  59. package/dist/client-toolbox/matrix-config.d.ts.map +1 -0
  60. package/dist/client-toolbox/matrix-config.js +140 -0
  61. package/dist/client-toolbox/matrix-config.js.map +1 -0
  62. package/dist/client-toolbox/matrix-materialize.d.ts +56 -0
  63. package/dist/client-toolbox/matrix-materialize.d.ts.map +1 -0
  64. package/dist/client-toolbox/matrix-materialize.js +130 -0
  65. package/dist/client-toolbox/matrix-materialize.js.map +1 -0
  66. package/dist/dev/matrix-read-dashboard-smoke.d.ts +2 -0
  67. package/dist/dev/matrix-read-dashboard-smoke.d.ts.map +1 -0
  68. package/dist/dev/matrix-read-dashboard-smoke.js +12 -0
  69. package/dist/dev/matrix-read-dashboard-smoke.js.map +1 -0
  70. package/dist/dev/runtime-real-dev-server.d.ts +2 -0
  71. package/dist/dev/runtime-real-dev-server.d.ts.map +1 -0
  72. package/dist/dev/runtime-real-dev-server.js +90 -0
  73. package/dist/dev/runtime-real-dev-server.js.map +1 -0
  74. package/dist/execution-matrix/catalox-loader.d.ts +55 -0
  75. package/dist/execution-matrix/catalox-loader.d.ts.map +1 -0
  76. package/dist/execution-matrix/catalox-loader.js +199 -0
  77. package/dist/execution-matrix/catalox-loader.js.map +1 -0
  78. package/dist/execution-matrix/catalox-matrix-host.d.ts +20 -0
  79. package/dist/execution-matrix/catalox-matrix-host.d.ts.map +1 -0
  80. package/dist/execution-matrix/catalox-matrix-host.js +19 -0
  81. package/dist/execution-matrix/catalox-matrix-host.js.map +1 -0
  82. package/dist/execution-matrix/collections.d.ts +16 -0
  83. package/dist/execution-matrix/collections.d.ts.map +1 -0
  84. package/dist/execution-matrix/collections.js +75 -0
  85. package/dist/execution-matrix/collections.js.map +1 -0
  86. package/dist/execution-matrix/config-store.d.ts +104 -0
  87. package/dist/execution-matrix/config-store.d.ts.map +1 -0
  88. package/dist/execution-matrix/config-store.js +273 -0
  89. package/dist/execution-matrix/config-store.js.map +1 -0
  90. package/dist/execution-matrix/constants.d.ts +19 -0
  91. package/dist/execution-matrix/constants.d.ts.map +1 -0
  92. package/dist/execution-matrix/constants.js +19 -0
  93. package/dist/execution-matrix/constants.js.map +1 -0
  94. package/dist/execution-matrix/contracts.d.ts +568 -0
  95. package/dist/execution-matrix/contracts.d.ts.map +1 -0
  96. package/dist/execution-matrix/contracts.js +44 -0
  97. package/dist/execution-matrix/contracts.js.map +1 -0
  98. package/dist/execution-matrix/data-source.d.ts +43 -0
  99. package/dist/execution-matrix/data-source.d.ts.map +1 -0
  100. package/dist/execution-matrix/data-source.js +307 -0
  101. package/dist/execution-matrix/data-source.js.map +1 -0
  102. package/dist/execution-matrix/eligibility.d.ts +48 -0
  103. package/dist/execution-matrix/eligibility.d.ts.map +1 -0
  104. package/dist/execution-matrix/eligibility.js +89 -0
  105. package/dist/execution-matrix/eligibility.js.map +1 -0
  106. package/dist/execution-matrix/execution-matrix-claim-pause.d.ts +20 -0
  107. package/dist/execution-matrix/execution-matrix-claim-pause.d.ts.map +1 -0
  108. package/dist/execution-matrix/execution-matrix-claim-pause.js +18 -0
  109. package/dist/execution-matrix/execution-matrix-claim-pause.js.map +1 -0
  110. package/dist/execution-matrix/execution-matrix-claim-pause.spec.d.ts +2 -0
  111. package/dist/execution-matrix/execution-matrix-claim-pause.spec.d.ts.map +1 -0
  112. package/dist/execution-matrix/execution-matrix-claim-pause.spec.js +23 -0
  113. package/dist/execution-matrix/execution-matrix-claim-pause.spec.js.map +1 -0
  114. package/dist/execution-matrix/execution-matrix.live.spec.d.ts +2 -0
  115. package/dist/execution-matrix/execution-matrix.live.spec.d.ts.map +1 -0
  116. package/dist/execution-matrix/execution-matrix.live.spec.js +152 -0
  117. package/dist/execution-matrix/execution-matrix.live.spec.js.map +1 -0
  118. package/dist/execution-matrix/execution-matrix.live.xmemory.spec.d.ts +2 -0
  119. package/dist/execution-matrix/execution-matrix.live.xmemory.spec.d.ts.map +1 -0
  120. package/dist/execution-matrix/execution-matrix.live.xmemory.spec.js +346 -0
  121. package/dist/execution-matrix/execution-matrix.live.xmemory.spec.js.map +1 -0
  122. package/dist/execution-matrix/execution-matrix.spec.d.ts +2 -0
  123. package/dist/execution-matrix/execution-matrix.spec.d.ts.map +1 -0
  124. package/dist/execution-matrix/execution-matrix.spec.js +1786 -0
  125. package/dist/execution-matrix/execution-matrix.spec.js.map +1 -0
  126. package/dist/execution-matrix/execution-mode.d.ts +34 -0
  127. package/dist/execution-matrix/execution-mode.d.ts.map +1 -0
  128. package/dist/execution-matrix/execution-mode.js +72 -0
  129. package/dist/execution-matrix/execution-mode.js.map +1 -0
  130. package/dist/execution-matrix/factory.d.ts +72 -0
  131. package/dist/execution-matrix/factory.d.ts.map +1 -0
  132. package/dist/execution-matrix/factory.js +77 -0
  133. package/dist/execution-matrix/factory.js.map +1 -0
  134. package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.d.ts +2 -0
  135. package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.d.ts.map +1 -0
  136. package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.js +48 -0
  137. package/dist/execution-matrix/graph-engine-datafilters-reexport.spec.js.map +1 -0
  138. package/dist/execution-matrix/graph-entry-xmemory-load.d.ts +130 -0
  139. package/dist/execution-matrix/graph-entry-xmemory-load.d.ts.map +1 -0
  140. package/dist/execution-matrix/graph-entry-xmemory-load.js +146 -0
  141. package/dist/execution-matrix/graph-entry-xmemory-load.js.map +1 -0
  142. package/dist/execution-matrix/graph-entry-xmemory-load.spec.d.ts +2 -0
  143. package/dist/execution-matrix/graph-entry-xmemory-load.spec.d.ts.map +1 -0
  144. package/dist/execution-matrix/graph-entry-xmemory-load.spec.js +66 -0
  145. package/dist/execution-matrix/graph-entry-xmemory-load.spec.js.map +1 -0
  146. package/dist/execution-matrix/graph-operational-aggregates.d.ts +47 -0
  147. package/dist/execution-matrix/graph-operational-aggregates.d.ts.map +1 -0
  148. package/dist/execution-matrix/graph-operational-aggregates.js +137 -0
  149. package/dist/execution-matrix/graph-operational-aggregates.js.map +1 -0
  150. package/dist/execution-matrix/graph-operational-lifecycle.d.ts +43 -0
  151. package/dist/execution-matrix/graph-operational-lifecycle.d.ts.map +1 -0
  152. package/dist/execution-matrix/graph-operational-lifecycle.js +88 -0
  153. package/dist/execution-matrix/graph-operational-lifecycle.js.map +1 -0
  154. package/dist/execution-matrix/graph-operational.spec.d.ts +2 -0
  155. package/dist/execution-matrix/graph-operational.spec.d.ts.map +1 -0
  156. package/dist/execution-matrix/graph-operational.spec.js +203 -0
  157. package/dist/execution-matrix/graph-operational.spec.js.map +1 -0
  158. package/dist/execution-matrix/index.d.ts +73 -0
  159. package/dist/execution-matrix/index.d.ts.map +1 -0
  160. package/dist/execution-matrix/index.js +57 -0
  161. package/dist/execution-matrix/index.js.map +1 -0
  162. package/dist/execution-matrix/live-tier-open.d.ts +6 -0
  163. package/dist/execution-matrix/live-tier-open.d.ts.map +1 -0
  164. package/dist/execution-matrix/live-tier-open.js +6 -0
  165. package/dist/execution-matrix/live-tier-open.js.map +1 -0
  166. package/dist/execution-matrix/materializer.d.ts +99 -0
  167. package/dist/execution-matrix/materializer.d.ts.map +1 -0
  168. package/dist/execution-matrix/materializer.js +210 -0
  169. package/dist/execution-matrix/materializer.js.map +1 -0
  170. package/dist/execution-matrix/matrix-activix.d.ts +24 -0
  171. package/dist/execution-matrix/matrix-activix.d.ts.map +1 -0
  172. package/dist/execution-matrix/matrix-activix.js +34 -0
  173. package/dist/execution-matrix/matrix-activix.js.map +1 -0
  174. package/dist/execution-matrix/matrix-data-tier.d.ts +55 -0
  175. package/dist/execution-matrix/matrix-data-tier.d.ts.map +1 -0
  176. package/dist/execution-matrix/matrix-data-tier.js +74 -0
  177. package/dist/execution-matrix/matrix-data-tier.js.map +1 -0
  178. package/dist/execution-matrix/matrix-execute-graph-adapter.d.ts +43 -0
  179. package/dist/execution-matrix/matrix-execute-graph-adapter.d.ts.map +1 -0
  180. package/dist/execution-matrix/matrix-execute-graph-adapter.js +62 -0
  181. package/dist/execution-matrix/matrix-execute-graph-adapter.js.map +1 -0
  182. package/dist/execution-matrix/matrix-execute-graph-adapter.spec.d.ts +2 -0
  183. package/dist/execution-matrix/matrix-execute-graph-adapter.spec.d.ts.map +1 -0
  184. package/dist/execution-matrix/matrix-execute-graph-adapter.spec.js +60 -0
  185. package/dist/execution-matrix/matrix-execute-graph-adapter.spec.js.map +1 -0
  186. package/dist/execution-matrix/matrix-logxer.d.ts +15 -0
  187. package/dist/execution-matrix/matrix-logxer.d.ts.map +1 -0
  188. package/dist/execution-matrix/matrix-logxer.js +65 -0
  189. package/dist/execution-matrix/matrix-logxer.js.map +1 -0
  190. package/dist/execution-matrix/matrix-read-tier.d.ts +41 -0
  191. package/dist/execution-matrix/matrix-read-tier.d.ts.map +1 -0
  192. package/dist/execution-matrix/matrix-read-tier.js +41 -0
  193. package/dist/execution-matrix/matrix-read-tier.js.map +1 -0
  194. package/dist/execution-matrix/memorix-entity-type-helpers.d.ts +25 -0
  195. package/dist/execution-matrix/memorix-entity-type-helpers.d.ts.map +1 -0
  196. package/dist/execution-matrix/memorix-entity-type-helpers.js +32 -0
  197. package/dist/execution-matrix/memorix-entity-type-helpers.js.map +1 -0
  198. package/dist/execution-matrix/memorix-entity-type-helpers.spec.d.ts +2 -0
  199. package/dist/execution-matrix/memorix-entity-type-helpers.spec.d.ts.map +1 -0
  200. package/dist/execution-matrix/memorix-entity-type-helpers.spec.js +83 -0
  201. package/dist/execution-matrix/memorix-entity-type-helpers.spec.js.map +1 -0
  202. package/dist/execution-matrix/memorix-inference-persister.d.ts +73 -0
  203. package/dist/execution-matrix/memorix-inference-persister.d.ts.map +1 -0
  204. package/dist/execution-matrix/memorix-inference-persister.js +126 -0
  205. package/dist/execution-matrix/memorix-inference-persister.js.map +1 -0
  206. package/dist/execution-matrix/memorix-inference-persister.spec.d.ts +2 -0
  207. package/dist/execution-matrix/memorix-inference-persister.spec.d.ts.map +1 -0
  208. package/dist/execution-matrix/memorix-inference-persister.spec.js +117 -0
  209. package/dist/execution-matrix/memorix-inference-persister.spec.js.map +1 -0
  210. package/dist/execution-matrix/memorix-matrix-entity-facet.d.ts +71 -0
  211. package/dist/execution-matrix/memorix-matrix-entity-facet.d.ts.map +1 -0
  212. package/dist/execution-matrix/memorix-matrix-entity-facet.js +91 -0
  213. package/dist/execution-matrix/memorix-matrix-entity-facet.js.map +1 -0
  214. package/dist/execution-matrix/memorix-matrix-entity-facet.spec.d.ts +2 -0
  215. package/dist/execution-matrix/memorix-matrix-entity-facet.spec.d.ts.map +1 -0
  216. package/dist/execution-matrix/memorix-matrix-entity-facet.spec.js +151 -0
  217. package/dist/execution-matrix/memorix-matrix-entity-facet.spec.js.map +1 -0
  218. package/dist/execution-matrix/memorix-runtime-tier.d.ts +153 -0
  219. package/dist/execution-matrix/memorix-runtime-tier.d.ts.map +1 -0
  220. package/dist/execution-matrix/memorix-runtime-tier.js +185 -0
  221. package/dist/execution-matrix/memorix-runtime-tier.js.map +1 -0
  222. package/dist/execution-matrix/memorix-tier-statistics.d.ts +103 -0
  223. package/dist/execution-matrix/memorix-tier-statistics.d.ts.map +1 -0
  224. package/dist/execution-matrix/memorix-tier-statistics.js +164 -0
  225. package/dist/execution-matrix/memorix-tier-statistics.js.map +1 -0
  226. package/dist/execution-matrix/memory-store.d.ts +20 -0
  227. package/dist/execution-matrix/memory-store.d.ts.map +1 -0
  228. package/dist/execution-matrix/memory-store.js +185 -0
  229. package/dist/execution-matrix/memory-store.js.map +1 -0
  230. package/dist/execution-matrix/navigator.d.ts +97 -0
  231. package/dist/execution-matrix/navigator.d.ts.map +1 -0
  232. package/dist/execution-matrix/navigator.js +119 -0
  233. package/dist/execution-matrix/navigator.js.map +1 -0
  234. package/dist/execution-matrix/orchestrator.d.ts +204 -0
  235. package/dist/execution-matrix/orchestrator.d.ts.map +1 -0
  236. package/dist/execution-matrix/orchestrator.js +656 -0
  237. package/dist/execution-matrix/orchestrator.js.map +1 -0
  238. package/dist/execution-matrix/records-eligibility.d.ts +34 -0
  239. package/dist/execution-matrix/records-eligibility.d.ts.map +1 -0
  240. package/dist/execution-matrix/records-eligibility.js +110 -0
  241. package/dist/execution-matrix/records-eligibility.js.map +1 -0
  242. package/dist/execution-matrix/records-eligibility.spec.d.ts +2 -0
  243. package/dist/execution-matrix/records-eligibility.spec.d.ts.map +1 -0
  244. package/dist/execution-matrix/records-eligibility.spec.js +154 -0
  245. package/dist/execution-matrix/records-eligibility.spec.js.map +1 -0
  246. package/dist/execution-matrix/run-loop.d.ts +140 -0
  247. package/dist/execution-matrix/run-loop.d.ts.map +1 -0
  248. package/dist/execution-matrix/run-loop.js +350 -0
  249. package/dist/execution-matrix/run-loop.js.map +1 -0
  250. package/dist/execution-matrix/runtime-connectivity-health.d.ts +128 -0
  251. package/dist/execution-matrix/runtime-connectivity-health.d.ts.map +1 -0
  252. package/dist/execution-matrix/runtime-connectivity-health.js +253 -0
  253. package/dist/execution-matrix/runtime-connectivity-health.js.map +1 -0
  254. package/dist/execution-matrix/runtime-connectivity-health.spec.d.ts +2 -0
  255. package/dist/execution-matrix/runtime-connectivity-health.spec.d.ts.map +1 -0
  256. package/dist/execution-matrix/runtime-connectivity-health.spec.js +23 -0
  257. package/dist/execution-matrix/runtime-connectivity-health.spec.js.map +1 -0
  258. package/dist/execution-matrix/runtime-objects.d.ts +16 -0
  259. package/dist/execution-matrix/runtime-objects.d.ts.map +1 -0
  260. package/dist/execution-matrix/runtime-objects.js +20 -0
  261. package/dist/execution-matrix/runtime-objects.js.map +1 -0
  262. package/dist/execution-matrix/runtime-store.d.ts +114 -0
  263. package/dist/execution-matrix/runtime-store.d.ts.map +1 -0
  264. package/dist/execution-matrix/runtime-store.js +506 -0
  265. package/dist/execution-matrix/runtime-store.js.map +1 -0
  266. package/dist/execution-matrix/snapshot-runner.d.ts +50 -0
  267. package/dist/execution-matrix/snapshot-runner.d.ts.map +1 -0
  268. package/dist/execution-matrix/snapshot-runner.js +111 -0
  269. package/dist/execution-matrix/snapshot-runner.js.map +1 -0
  270. package/dist/execution-matrix/source-resolver-factories.d.ts +31 -0
  271. package/dist/execution-matrix/source-resolver-factories.d.ts.map +1 -0
  272. package/dist/execution-matrix/source-resolver-factories.js +71 -0
  273. package/dist/execution-matrix/source-resolver-factories.js.map +1 -0
  274. package/dist/execution-matrix/source-resolver-factories.spec.d.ts +2 -0
  275. package/dist/execution-matrix/source-resolver-factories.spec.d.ts.map +1 -0
  276. package/dist/execution-matrix/source-resolver-factories.spec.js +127 -0
  277. package/dist/execution-matrix/source-resolver-factories.spec.js.map +1 -0
  278. package/dist/execution-matrix/source-resolver.d.ts +31 -0
  279. package/dist/execution-matrix/source-resolver.d.ts.map +1 -0
  280. package/dist/execution-matrix/source-resolver.js +26 -0
  281. package/dist/execution-matrix/source-resolver.js.map +1 -0
  282. package/dist/execution-matrix/status.d.ts +7 -0
  283. package/dist/execution-matrix/status.d.ts.map +1 -0
  284. package/dist/execution-matrix/status.js +33 -0
  285. package/dist/execution-matrix/status.js.map +1 -0
  286. package/dist/execution-matrix/xmemory-entity-collections.d.ts +69 -0
  287. package/dist/execution-matrix/xmemory-entity-collections.d.ts.map +1 -0
  288. package/dist/execution-matrix/xmemory-entity-collections.js +120 -0
  289. package/dist/execution-matrix/xmemory-entity-collections.js.map +1 -0
  290. package/dist/execution-matrix/xmemory-entity-collections.spec.d.ts +2 -0
  291. package/dist/execution-matrix/xmemory-entity-collections.spec.d.ts.map +1 -0
  292. package/dist/execution-matrix/xmemory-entity-collections.spec.js +112 -0
  293. package/dist/execution-matrix/xmemory-entity-collections.spec.js.map +1 -0
  294. package/dist/execution-matrix/xmemory-op-tier.d.ts +172 -0
  295. package/dist/execution-matrix/xmemory-op-tier.d.ts.map +1 -0
  296. package/dist/execution-matrix/xmemory-op-tier.js +339 -0
  297. package/dist/execution-matrix/xmemory-op-tier.js.map +1 -0
  298. package/dist/execution-matrix/xmemory-op-tier.spec.d.ts +2 -0
  299. package/dist/execution-matrix/xmemory-op-tier.spec.d.ts.map +1 -0
  300. package/dist/execution-matrix/xmemory-op-tier.spec.js +198 -0
  301. package/dist/execution-matrix/xmemory-op-tier.spec.js.map +1 -0
  302. package/dist/execution-matrix/xronox-matrix-factory.d.ts +38 -0
  303. package/dist/execution-matrix/xronox-matrix-factory.d.ts.map +1 -0
  304. package/dist/execution-matrix/xronox-matrix-factory.js +77 -0
  305. package/dist/execution-matrix/xronox-matrix-factory.js.map +1 -0
  306. package/dist/execution-matrix/xronox-store-native-driver-hooks.d.ts +15 -0
  307. package/dist/execution-matrix/xronox-store-native-driver-hooks.d.ts.map +1 -0
  308. package/dist/execution-matrix/xronox-store-native-driver-hooks.js +41 -0
  309. package/dist/execution-matrix/xronox-store-native-driver-hooks.js.map +1 -0
  310. package/dist/test-fixtures/exellix-test-matrix-ids.d.ts +16 -0
  311. package/dist/test-fixtures/exellix-test-matrix-ids.d.ts.map +1 -0
  312. package/dist/test-fixtures/exellix-test-matrix-ids.js +16 -0
  313. package/dist/test-fixtures/exellix-test-matrix-ids.js.map +1 -0
  314. package/dist/test-fixtures/seed-exellix-test-matrix-config.d.ts +26 -0
  315. package/dist/test-fixtures/seed-exellix-test-matrix-config.d.ts.map +1 -0
  316. package/dist/test-fixtures/seed-exellix-test-matrix-config.js +82 -0
  317. package/dist/test-fixtures/seed-exellix-test-matrix-config.js.map +1 -0
  318. package/package.json +67 -0
@@ -0,0 +1,117 @@
1
+ import { describe, expect, it } from 'vitest';
2
+ import { MemoryMatrixCollection } from './memory-store.js';
3
+ import { buildMemorixInferenceCollectionName, createMemorixInferencePersister, prepareMemorixRecordForGraph, resolveMemorixDbName, } from './memorix-inference-persister.js';
4
+ describe('prepareMemorixRecordForGraph', () => {
5
+ it('removes top-level _id from graph input and returns it as itemId', () => {
6
+ const prepared = prepareMemorixRecordForGraph({
7
+ _id: 'record_1',
8
+ name: 'Ada',
9
+ nested: { _id: 'nested_kept' },
10
+ });
11
+ expect(prepared.itemId).toBe('record_1');
12
+ expect(prepared.graphInput).toEqual({
13
+ name: 'Ada',
14
+ nested: { _id: 'nested_kept' },
15
+ });
16
+ expect(prepared.graphInput).not.toHaveProperty('_id');
17
+ });
18
+ it('rejects records without _id', () => {
19
+ expect(() => prepareMemorixRecordForGraph({ name: 'Ada' })).toThrow(/missing required _id/);
20
+ });
21
+ });
22
+ describe('MemorixInferencePersister', () => {
23
+ it('persists one inference document with generated metadata', async () => {
24
+ const collection = new MemoryMatrixCollection('_id');
25
+ const seenCollections = [];
26
+ const persister = createMemorixInferencePersister((collectionName) => {
27
+ seenCollections.push(collectionName);
28
+ return collection.asCollection();
29
+ });
30
+ const [result] = await persister.persistInferences({
31
+ itemId: 'record_1',
32
+ inference: { label: 'active' },
33
+ metadata: {
34
+ entityName: 'customers',
35
+ graphId: 'graph.classify',
36
+ matrixCatalogId: 'matrix.customers',
37
+ matrixRunId: 'run_1',
38
+ matrixRowId: 'row_1',
39
+ jobId: 'job_1',
40
+ sourceId: 'record_1',
41
+ },
42
+ });
43
+ expect(result?.collectionName).toBe('customers-infernces');
44
+ expect(seenCollections).toEqual(['customers-infernces']);
45
+ const docs = await collection.readMany({}, { limit: 10 });
46
+ expect(docs).toHaveLength(1);
47
+ expect(docs[0]?._itemId).toBe('record_1');
48
+ expect(docs[0]?.infernces).toEqual({ label: 'active' });
49
+ expect(docs[0]?.metadata).toMatchObject({
50
+ entityName: 'customers',
51
+ collectionName: 'customers-infernces',
52
+ graphId: 'graph.classify',
53
+ matrixCatalogId: 'matrix.customers',
54
+ matrixRunId: 'run_1',
55
+ matrixRowId: 'row_1',
56
+ jobId: 'job_1',
57
+ sourceId: 'record_1',
58
+ outputWasArray: false,
59
+ });
60
+ expect((docs[0]?.metadata).persistedAt).toEqual(expect.any(String));
61
+ });
62
+ it('persists array outputs as one document per item with array metadata', async () => {
63
+ const collection = new MemoryMatrixCollection('_id');
64
+ const persister = createMemorixInferencePersister(() => collection.asCollection());
65
+ const results = await persister.persistInferences({
66
+ itemId: 'order_1',
67
+ inference: [{ risk: 'low' }, { nextBestAction: 'email' }],
68
+ metadata: {
69
+ entityName: 'orders',
70
+ graphId: 'graph.order',
71
+ },
72
+ });
73
+ expect(results.map((r) => r.collectionName)).toEqual(['orders-infernces', 'orders-infernces']);
74
+ const docs = await collection.readMany({}, { limit: 10 });
75
+ expect(docs).toHaveLength(2);
76
+ expect(docs.map((d) => d.infernces)).toEqual([{ risk: 'low' }, { nextBestAction: 'email' }]);
77
+ expect(docs.map((d) => d.metadata.outputIndex)).toEqual([0, 1]);
78
+ expect(docs.map((d) => d.metadata.outputCount)).toEqual([2, 2]);
79
+ expect(docs.map((d) => d.metadata.outputWasArray)).toEqual([true, true]);
80
+ });
81
+ it('rejects missing item ids and unsafe entity collection names', async () => {
82
+ const collection = new MemoryMatrixCollection('_id');
83
+ const persister = createMemorixInferencePersister(() => collection.asCollection());
84
+ await expect(persister.persistInference({
85
+ itemId: undefined,
86
+ inference: {},
87
+ metadata: { entityName: 'customers' },
88
+ })).rejects.toThrow(/itemId is required/);
89
+ await expect(persister.persistInference({
90
+ itemId: 'record_1',
91
+ inference: {},
92
+ metadata: { entityName: '' },
93
+ })).rejects.toThrow(/entityName is required/);
94
+ expect(() => buildMemorixInferenceCollectionName('bad$name')).toThrow(/unsafe entityName/);
95
+ });
96
+ });
97
+ describe('resolveMemorixDbName', () => {
98
+ it('uses options, then MEMORIX_DB, then memorix', () => {
99
+ const prev = process.env.MEMORIX_DB;
100
+ try {
101
+ process.env.MEMORIX_DB = 'env_memorix';
102
+ expect(resolveMemorixDbName('option_memorix')).toBe('option_memorix');
103
+ expect(resolveMemorixDbName()).toBe('env_memorix');
104
+ delete process.env.MEMORIX_DB;
105
+ expect(resolveMemorixDbName()).toBe('memorix');
106
+ }
107
+ finally {
108
+ if (prev === undefined) {
109
+ delete process.env.MEMORIX_DB;
110
+ }
111
+ else {
112
+ process.env.MEMORIX_DB = prev;
113
+ }
114
+ }
115
+ });
116
+ });
117
+ //# sourceMappingURL=memorix-inference-persister.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorix-inference-persister.spec.js","sourceRoot":"","sources":["../../src/execution-matrix/memorix-inference-persister.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * Composed read: Memorix tier statistics + per-bucket samples + execution matrix rows / matrix snapshots
3
+ * for one **entity type** key (catalog id / discriminator shared across buckets where schemas align).
4
+ */
5
+ import type { MemorixRuntimeTier } from './memorix-runtime-tier.js';
6
+ import { getMemorixTierStatistics, type GetMemorixTierStatisticsOptions } from './memorix-tier-statistics.js';
7
+ import type { ExecutionMatrixRuntimeRecord, ExecutionMatrixSnapshotRecord } from './contracts.js';
8
+ import type { ExecutionMatrixRuntime } from './runtime-store.js';
9
+ import { type TierEntityTypeSectionCounts } from './memorix-entity-type-helpers.js';
10
+ export type { TierEntityTypeSectionCounts };
11
+ export type FetchMemorixMatrixEntityFacetDeps = {
12
+ tier: MemorixRuntimeTier;
13
+ runtime: ExecutionMatrixRuntime;
14
+ };
15
+ export type FetchMemorixMatrixEntityFacetSliceLimits = {
16
+ things?: number;
17
+ scopedViews?: number;
18
+ scopedData?: number;
19
+ memorixSnapshots?: number;
20
+ matrixRows?: number;
21
+ matrixSnapshots?: number;
22
+ };
23
+ export type FetchMemorixMatrixEntityFacetSliceSkips = {
24
+ things?: number;
25
+ scopedViews?: number;
26
+ scopedData?: number;
27
+ memorixSnapshots?: number;
28
+ matrixRows?: number;
29
+ matrixSnapshots?: number;
30
+ };
31
+ export type FetchMemorixMatrixEntityFacetQuery = {
32
+ entityType: string;
33
+ /**
34
+ * Tenant / corpus partition for {@link getXmemoryTierStatistics} (required by **`@x12i/xmemory-store`** ≥ 2.9).
35
+ */
36
+ namespace: string;
37
+ /** When omitted, **matrix** slices are empty arrays (Memorix-only facet). */
38
+ matrixCatalogId?: string;
39
+ matrixRunId?: string;
40
+ graphId?: string;
41
+ /**
42
+ * Extra options for {@link getXmemoryTierStatistics} (merged after **`namespace`**).
43
+ * **`groupByPaths.scoped_data`** defaults to {@link RECOMMENDED_TIER_STATS_SCOPED_DATA_GROUP_PATHS} when unset
44
+ * so counts align with {@link buildXScopedDataEntityTypeFilter}.
45
+ */
46
+ tierStatisticsOptions?: Omit<GetMemorixTierStatisticsOptions, 'namespace'>;
47
+ limits?: FetchMemorixMatrixEntityFacetSliceLimits;
48
+ skips?: FetchMemorixMatrixEntityFacetSliceSkips;
49
+ };
50
+ export type MemorixMatrixEntityFacetTierStatistics = Awaited<ReturnType<typeof getMemorixTierStatistics>>;
51
+ export type MemorixMatrixEntityFacetResult = {
52
+ entityType: string;
53
+ tierStatistics: MemorixMatrixEntityFacetTierStatistics;
54
+ countsForEntityType: TierEntityTypeSectionCounts;
55
+ slices: {
56
+ things: Record<string, unknown>[];
57
+ scopedViews: Record<string, unknown>[];
58
+ scopedData: Record<string, unknown>[];
59
+ memorixSnapshots: Record<string, unknown>[];
60
+ matrixRows: ExecutionMatrixRuntimeRecord[];
61
+ matrixSnapshots: ExecutionMatrixSnapshotRecord[];
62
+ };
63
+ };
64
+ /**
65
+ * Load namespace-scoped tier statistics (default **`groupByPaths.scoped_data`** for scoped-data buckets), per-section
66
+ * counts for **`entityType`**, and capped document samples from things / scoped views / scoped data / Memorix snapshots.
67
+ * When **`matrixCatalogId`** is set, also lists matrix rows matching {@link buildMatrixRowEntityTypeExtraFilter}
68
+ * and matrix snapshots with **`entityType`** on the snapshot record.
69
+ */
70
+ export declare function fetchMemorixMatrixEntityFacet(deps: FetchMemorixMatrixEntityFacetDeps, query: FetchMemorixMatrixEntityFacetQuery): Promise<MemorixMatrixEntityFacetResult>;
71
+ //# sourceMappingURL=memorix-matrix-entity-facet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorix-matrix-entity-facet.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/memorix-matrix-entity-facet.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AACpE,OAAO,EACL,wBAAwB,EACxB,KAAK,+BAA+B,EACrC,MAAM,8BAA8B,CAAC;AACtC,OAAO,KAAK,EACV,4BAA4B,EAC5B,6BAA6B,EAC9B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAGL,KAAK,2BAA2B,EACjC,MAAM,kCAAkC,CAAC;AAa1C,YAAY,EAAE,2BAA2B,EAAE,CAAC;AAE5C,MAAM,MAAM,iCAAiC,GAAG;IAC9C,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,sBAAsB,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,UAAU,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,6EAA6E;IAC7E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,qBAAqB,CAAC,EAAE,IAAI,CAAC,+BAA+B,EAAE,WAAW,CAAC,CAAC;IAC3E,MAAM,CAAC,EAAE,wCAAwC,CAAC;IAClD,KAAK,CAAC,EAAE,uCAAuC,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,sCAAsC,GAAG,OAAO,CAAC,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC;AAE1G,MAAM,MAAM,8BAA8B,GAAG;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,EAAE,sCAAsC,CAAC;IACvD,mBAAmB,EAAE,2BAA2B,CAAC;IACjD,MAAM,EAAE;QACN,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QAClC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QACvC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QACtC,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAC;QAC5C,UAAU,EAAE,4BAA4B,EAAE,CAAC;QAC3C,eAAe,EAAE,6BAA6B,EAAE,CAAC;KAClD,CAAC;CACH,CAAC;AAYF;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,iCAAiC,EACvC,KAAK,EAAE,kCAAkC,GACxC,OAAO,CAAC,8BAA8B,CAAC,CA2EzC"}
@@ -0,0 +1,91 @@
1
+ /**
2
+ * Composed read: Memorix tier statistics + per-bucket samples + execution matrix rows / matrix snapshots
3
+ * for one **entity type** key (catalog id / discriminator shared across buckets where schemas align).
4
+ */
5
+ import { getMemorixTierStatistics, } from './memorix-tier-statistics.js';
6
+ import { buildMatrixRowEntityTypeExtraFilter, pickTierEntityTypeSectionCounts, } from './memorix-entity-type-helpers.js';
7
+ import { RECOMMENDED_TIER_STATS_SCOPED_DATA_GROUP_PATHS, buildXMemorixSnapshotEntityTypeFilter, buildXScopedDataEntityTypeFilter, buildXScopedViewEntityTypeFilter, buildXThingEntityTypeFilter, listXmemoryOpScopedViewsPaged, listXmemoryTierScopedDataPaged, listXmemoryTierSnapshotsPaged, listXmemoryTierThingsPaged, } from './xmemory-op-tier.js';
8
+ function mergeTierStatisticsGroupByPaths(opts) {
9
+ const gp = opts?.groupByPaths;
10
+ return {
11
+ ...gp,
12
+ scoped_data: gp?.scoped_data ?? [...RECOMMENDED_TIER_STATS_SCOPED_DATA_GROUP_PATHS],
13
+ };
14
+ }
15
+ /**
16
+ * Load namespace-scoped tier statistics (default **`groupByPaths.scoped_data`** for scoped-data buckets), per-section
17
+ * counts for **`entityType`**, and capped document samples from things / scoped views / scoped data / Memorix snapshots.
18
+ * When **`matrixCatalogId`** is set, also lists matrix rows matching {@link buildMatrixRowEntityTypeExtraFilter}
19
+ * and matrix snapshots with **`entityType`** on the snapshot record.
20
+ */
21
+ export async function fetchMemorixMatrixEntityFacet(deps, query) {
22
+ const { entityType } = query;
23
+ const lim = query.limits ?? {};
24
+ const sk = query.skips ?? {};
25
+ const tierStatistics = await getMemorixTierStatistics(deps.tier, {
26
+ namespace: query.namespace,
27
+ ...query.tierStatisticsOptions,
28
+ groupByPaths: mergeTierStatisticsGroupByPaths(query.tierStatisticsOptions),
29
+ });
30
+ const countsForEntityType = pickTierEntityTypeSectionCounts(tierStatistics, entityType);
31
+ const thingFilter = buildXThingEntityTypeFilter(entityType);
32
+ const viewFilter = buildXScopedViewEntityTypeFilter(entityType);
33
+ const dataFilter = buildXScopedDataEntityTypeFilter(entityType);
34
+ const memSnapFilter = buildXMemorixSnapshotEntityTypeFilter(entityType);
35
+ const matrixCatalogId = query.matrixCatalogId;
36
+ const [things, scopedViews, scopedData, memorixSnapshots, matrixRows, matrixSnapshots] = await Promise.all([
37
+ listXmemoryTierThingsPaged(deps.tier, {
38
+ filter: thingFilter,
39
+ limit: lim.things ?? 50,
40
+ skip: sk.things,
41
+ }),
42
+ listXmemoryOpScopedViewsPaged(deps.tier, {
43
+ filter: viewFilter,
44
+ limit: lim.scopedViews ?? 50,
45
+ skip: sk.scopedViews,
46
+ }),
47
+ listXmemoryTierScopedDataPaged(deps.tier, {
48
+ filter: dataFilter,
49
+ limit: lim.scopedData ?? 50,
50
+ skip: sk.scopedData,
51
+ }),
52
+ listXmemoryTierSnapshotsPaged(deps.tier, {
53
+ filter: memSnapFilter,
54
+ limit: lim.memorixSnapshots ?? 50,
55
+ skip: sk.memorixSnapshots,
56
+ }),
57
+ matrixCatalogId
58
+ ? deps.runtime.listRecords({
59
+ matrixCatalogId,
60
+ matrixRunId: query.matrixRunId,
61
+ graphId: query.graphId,
62
+ limit: lim.matrixRows ?? 50,
63
+ skip: sk.matrixRows,
64
+ extraFilter: buildMatrixRowEntityTypeExtraFilter(entityType),
65
+ })
66
+ : Promise.resolve([]),
67
+ matrixCatalogId
68
+ ? deps.runtime.listSnapshots({
69
+ matrixCatalogId,
70
+ matrixRunId: query.matrixRunId,
71
+ entityType,
72
+ limit: lim.matrixSnapshots ?? 50,
73
+ skip: sk.matrixSnapshots,
74
+ })
75
+ : Promise.resolve([]),
76
+ ]);
77
+ return {
78
+ entityType,
79
+ tierStatistics,
80
+ countsForEntityType,
81
+ slices: {
82
+ things,
83
+ scopedViews,
84
+ scopedData,
85
+ memorixSnapshots,
86
+ matrixRows,
87
+ matrixSnapshots,
88
+ },
89
+ };
90
+ }
91
+ //# sourceMappingURL=memorix-matrix-entity-facet.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorix-matrix-entity-facet.js","sourceRoot":"","sources":["../../src/execution-matrix/memorix-matrix-entity-facet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=memorix-matrix-entity-facet.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorix-matrix-entity-facet.spec.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/memorix-matrix-entity-facet.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,151 @@
1
+ import { afterEach, describe, expect, it, vi } from 'vitest';
2
+ import { countScopedWorkspaceDocuments, listScopedWorkspaceEntityTypes } from '@x12i/memorix-retrieval';
3
+ import { clearTierStatisticsCache } from './memorix-tier-statistics.js';
4
+ vi.mock('@x12i/memorix-retrieval', async (importOriginal) => {
5
+ const actual = await importOriginal();
6
+ return {
7
+ ...actual,
8
+ listScopedWorkspaceEntityTypes: vi.fn(),
9
+ countScopedWorkspaceDocuments: vi.fn(),
10
+ };
11
+ });
12
+ import { MemoryMatrixCollection } from './memory-store.js';
13
+ import { MATRIX_ROW_PK, MATRIX_FAILURE_PK } from './constants.js';
14
+ import { createExecutionMatrixRuntime } from './runtime-store.js';
15
+ import { fetchMemorixMatrixEntityFacet } from './memorix-matrix-entity-facet.js';
16
+ import { materializeExecutionMatrixRuntimeRows } from './materializer.js';
17
+ /** Aggregate `$facet` row shape parsed by `@x12i/xmemory-store` `parseEntityTypeFacetRow`. */
18
+ function facetAggregateRow(total, typePage) {
19
+ const distinct = typePage.length;
20
+ return [
21
+ {
22
+ matchedDocTotal: [{ n: total }],
23
+ distinctTypeCount: [{ n: distinct }],
24
+ typePage: typePage.map((p) => ({ _id: p._id, docCount: p.docCount })),
25
+ },
26
+ ];
27
+ }
28
+ function createMockTier(findMany) {
29
+ const runMongoAggregate = vi.fn().mockImplementation((params) => {
30
+ const key = `${params.database}.${params.collection}`;
31
+ const table = {
32
+ 't.things': facetAggregateRow(1, [{ _id: 'ent', docCount: 1 }]),
33
+ 'op.scoped_views': facetAggregateRow(0, []),
34
+ 'op.sd': facetAggregateRow(2, [{ _id: 'ent', docCount: 2 }]),
35
+ 'op.sn': facetAggregateRow(0, []),
36
+ };
37
+ return Promise.resolve(table[key] ?? facetAggregateRow(0, []));
38
+ });
39
+ return {
40
+ env: {
41
+ opDb: 'op',
42
+ viewsCollection: 'scoped_views',
43
+ scopedDataCollection: 'sd',
44
+ snapshotsCollection: 'sn',
45
+ mapsDb: 'm',
46
+ thingsDb: 't',
47
+ mapsCollection: 'maps',
48
+ mappedQuestionsCollection: 'mq',
49
+ thingsCollection: 'things',
50
+ mongoUri: 'mongodb://',
51
+ metaDb: 'm',
52
+ },
53
+ mongoClient: { findMany, countMany: vi.fn() },
54
+ corpusStore: {},
55
+ opStore: {},
56
+ mapsStore: {},
57
+ metaStore: {},
58
+ storeBindings: {},
59
+ init: vi.fn(),
60
+ close: vi.fn(),
61
+ runMongoAggregate,
62
+ };
63
+ }
64
+ afterEach(() => {
65
+ clearTierStatisticsCache();
66
+ vi.mocked(listScopedWorkspaceEntityTypes).mockReset();
67
+ vi.mocked(countScopedWorkspaceDocuments).mockReset();
68
+ });
69
+ function mockWorkspaceStats(entityTypes = []) {
70
+ vi.mocked(listScopedWorkspaceEntityTypes).mockResolvedValue({
71
+ generatedAt: new Date().toISOString(),
72
+ entityTypes,
73
+ });
74
+ vi.mocked(countScopedWorkspaceDocuments).mockResolvedValue(entityTypes.reduce((n, e) => n + e.docCount, 0));
75
+ }
76
+ describe('fetchMemorixMatrixEntityFacet', () => {
77
+ it('returns tier counts and invokes list endpoints with entity-type filters', async () => {
78
+ mockWorkspaceStats([{ typeKey: 'ent', docCount: 2 }]);
79
+ const findMany = vi.fn().mockResolvedValue([{ sample: true }]);
80
+ const tier = createMockTier(findMany);
81
+ const rowsCol = new MemoryMatrixCollection(MATRIX_ROW_PK);
82
+ const failsCol = new MemoryMatrixCollection(MATRIX_FAILURE_PK);
83
+ const snapsCol = new MemoryMatrixCollection('snapshotId');
84
+ const runtime = createExecutionMatrixRuntime(rowsCol.asCollection(), failsCol.asCollection(), {
85
+ snapshots: snapsCol.asCollection(),
86
+ });
87
+ const payload = {
88
+ input: {},
89
+ graphs: ['g1'],
90
+ dataSource: { kind: 'event', subKind: 'api' },
91
+ };
92
+ const [row] = materializeExecutionMatrixRuntimeRows({
93
+ matrixCatalogId: 'mat',
94
+ matrixItemId: 'item',
95
+ matrixRunId: 'run',
96
+ payload,
97
+ graphRecords: [
98
+ {
99
+ graphId: 'g1',
100
+ mappedInput: [],
101
+ execution: { priority: 1 },
102
+ },
103
+ ],
104
+ inputRows: [{ sourceId: 's1', entityType: 'ent' }],
105
+ });
106
+ await runtime.insertRuntimeRow(row);
107
+ await runtime.insertSnapshot({
108
+ snapshotId: 'snap1',
109
+ matrixCatalogId: 'mat',
110
+ matrixRunId: 'run',
111
+ entityType: 'ent',
112
+ sourceQueryHash: 'h',
113
+ transformVersion: 'v1',
114
+ payload: {},
115
+ createdAt: new Date().toISOString(),
116
+ });
117
+ const result = await fetchMemorixMatrixEntityFacet({ tier, runtime }, {
118
+ entityType: 'ent',
119
+ namespace: 'mat-ns',
120
+ matrixCatalogId: 'mat',
121
+ matrixRunId: 'run',
122
+ limits: { things: 5, scopedViews: 5, scopedData: 5, memorixSnapshots: 5, matrixRows: 10, matrixSnapshots: 10 },
123
+ });
124
+ expect(result.entityType).toBe('ent');
125
+ expect(result.countsForEntityType).toEqual({
126
+ things: 0,
127
+ scopedViews: 0,
128
+ scopedData: 2,
129
+ memorixSnapshots: 0,
130
+ });
131
+ expect(result.slices.matrixRows).toHaveLength(1);
132
+ expect(result.slices.matrixSnapshots).toHaveLength(1);
133
+ expect(findMany).toHaveBeenCalled();
134
+ const thingsCall = findMany.mock.calls.find((c) => c[0].database === 't' && c[0].collection === 'things');
135
+ expect(thingsCall?.[0].filter).toMatchObject({
136
+ $or: [{ thingType: 'ent' }, { '_header.thingType': 'ent' }],
137
+ });
138
+ });
139
+ it('omits matrix slices when matrixCatalogId unset', async () => {
140
+ mockWorkspaceStats();
141
+ const findMany = vi.fn().mockResolvedValue([]);
142
+ const tier = createMockTier(findMany);
143
+ const rowsCol = new MemoryMatrixCollection(MATRIX_ROW_PK);
144
+ const failsCol = new MemoryMatrixCollection(MATRIX_FAILURE_PK);
145
+ const runtime = createExecutionMatrixRuntime(rowsCol.asCollection(), failsCol.asCollection());
146
+ const result = await fetchMemorixMatrixEntityFacet({ tier, runtime }, { entityType: 'x', namespace: 'ns' });
147
+ expect(result.slices.matrixRows).toEqual([]);
148
+ expect(result.slices.matrixSnapshots).toEqual([]);
149
+ });
150
+ });
151
+ //# sourceMappingURL=memorix-matrix-entity-facet.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorix-matrix-entity-facet.spec.js","sourceRoot":"","sources":["../../src/execution-matrix/memorix-matrix-entity-facet.spec.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,153 @@
1
+ /**
2
+ * Memorix data tier for execution-matrix hosts (replaces `@x12i/xmemory-store` + `@x12i/xmemory-scoper`).
3
+ *
4
+ * Wires `@x12i/memorix-retrieval` stack from env and exposes a compatibility surface for
5
+ * {@link ./xmemory-op-tier.ts} (`env`, `mongoClient`, `opStore` / `corpusStore` collection reads).
6
+ */
7
+ import { type MemorixRetrievalClient } from '@x12i/memorix-retrieval';
8
+ import type { XronoxCollection } from '@x12i/xronox-store';
9
+ export declare const FIND_MANY_DEFAULT_LIMIT_WITH_SKIP = 200;
10
+ export declare const FIND_MANY_MAX_SKIP = 100000;
11
+ export declare const FIND_MANY_MAX_WINDOW = 10000;
12
+ export declare const DEFAULT_SCOPED_DATA_COLLECTION = "x-scoped-data";
13
+ export declare const DEFAULT_SNAPSHOTS_COLLECTION = "x-snapshots";
14
+ export declare const COLLECTION_DEFAULTS: {
15
+ readonly scopedDataCollection: "x-scoped-data";
16
+ readonly snapshotsCollection: "x-snapshots";
17
+ readonly viewsCollection: "scoped_views";
18
+ readonly thingsCollection: "things";
19
+ };
20
+ export type MemorixRuntimeTierEnv = {
21
+ entitiesDb: string;
22
+ /** Legacy label — same DB as {@link MemorixRuntimeTierEnv.entitiesDb} after xmemory migration. */
23
+ opDb: string;
24
+ thingsDb: string;
25
+ mapsDb: string;
26
+ metaDb: string;
27
+ scopedDataCollection: string;
28
+ snapshotsCollection: string;
29
+ viewsCollection: string;
30
+ thingsCollection: string;
31
+ };
32
+ export type MemorixMongoClient = {
33
+ findMany: (params: {
34
+ database: string;
35
+ collection: string;
36
+ filter?: Record<string, unknown>;
37
+ projection?: Record<string, unknown>;
38
+ limit?: number;
39
+ skip?: number;
40
+ }) => Promise<Record<string, unknown>[]>;
41
+ countMany?: (params: {
42
+ database: string;
43
+ collection: string;
44
+ filter?: Record<string, unknown>;
45
+ }) => Promise<number>;
46
+ findById?: (params: {
47
+ database: string;
48
+ collection: string;
49
+ id: unknown;
50
+ idField?: string;
51
+ projection?: Record<string, unknown>;
52
+ }) => Promise<Record<string, unknown> | null>;
53
+ findOne?: (params: {
54
+ database: string;
55
+ collection: string;
56
+ filter?: Record<string, unknown>;
57
+ projection?: Record<string, unknown>;
58
+ }) => Promise<Record<string, unknown> | null>;
59
+ upsertOne?: (params: {
60
+ database: string;
61
+ collection: string;
62
+ filter: Record<string, unknown>;
63
+ set: Record<string, unknown>;
64
+ setOnInsert?: Record<string, unknown>;
65
+ }) => Promise<{
66
+ matchedCount: number;
67
+ modifiedCount: number;
68
+ upsertedCount: number;
69
+ }>;
70
+ createIndex?: (params: {
71
+ database: string;
72
+ collection: string;
73
+ spec: Record<string, unknown>;
74
+ options?: Record<string, unknown>;
75
+ }) => Promise<void>;
76
+ updateOne?: (params: {
77
+ database: string;
78
+ collection: string;
79
+ filter: Record<string, unknown>;
80
+ update: Record<string, unknown>;
81
+ options?: Record<string, unknown>;
82
+ }) => Promise<{
83
+ matchedCount: number;
84
+ modifiedCount: number;
85
+ upsertedCount?: number;
86
+ }>;
87
+ updateMany?: (params: {
88
+ database: string;
89
+ collection: string;
90
+ filter: Record<string, unknown>;
91
+ update: Record<string, unknown>;
92
+ }) => Promise<{
93
+ matchedCount: number;
94
+ modifiedCount: number;
95
+ }>;
96
+ deleteOne?: (params: {
97
+ database: string;
98
+ collection: string;
99
+ filter: Record<string, unknown>;
100
+ }) => Promise<{
101
+ deletedCount: number;
102
+ }>;
103
+ };
104
+ type MemorixStoreLike = {
105
+ collection: (name: string) => XronoxCollection<Record<string, unknown>>;
106
+ };
107
+ export type MemorixRuntimeTier = MemorixRetrievalClient & {
108
+ readonly env: MemorixRuntimeTierEnv;
109
+ readonly mongoClient: MemorixMongoClient;
110
+ readonly opStore: MemorixStoreLike;
111
+ readonly corpusStore: MemorixStoreLike;
112
+ readonly mapsStore: MemorixStoreLike;
113
+ readonly metaStore: MemorixStoreLike;
114
+ readonly storeBindings: Record<string, unknown>;
115
+ init(): Promise<MemorixRuntimeTier>;
116
+ close(): Promise<void>;
117
+ runMongoAggregate?: (params: {
118
+ database: string;
119
+ collection: string;
120
+ pipeline: Record<string, unknown>[];
121
+ }) => Promise<unknown[]>;
122
+ };
123
+ export type CreateMemorixRuntimeTierOptions = {
124
+ mongoUri?: string;
125
+ processEnv?: NodeJS.ProcessEnv;
126
+ /** Optional Mongo shim (e.g. Catalox inventory CLI driver) when `client.getMongo` is unavailable. */
127
+ fallbackMongoClient?: MemorixMongoClient;
128
+ };
129
+ /** @deprecated Use {@link MemorixRuntimeTier}. */
130
+ export type XmemoryDataTier = MemorixRuntimeTier;
131
+ /** @deprecated Use {@link MemorixMongoClient}. */
132
+ export type XmemoryMongoClient = MemorixMongoClient;
133
+ /** @deprecated Use {@link CreateMemorixRuntimeTierOptions}. */
134
+ export type CreateXmemoryDataTierOptions = CreateMemorixRuntimeTierOptions;
135
+ export declare function resolveMemorixRuntimeTierEnv(processEnv?: NodeJS.ProcessEnv): MemorixRuntimeTierEnv;
136
+ /** @deprecated Use {@link resolveMemorixRuntimeTierEnv}. */
137
+ export declare function resolveXmemoryStoreEnv(processEnv?: NodeJS.ProcessEnv): {
138
+ mongoUri: string;
139
+ opDb: string;
140
+ thingsDb: string;
141
+ mapsDb: string;
142
+ metaDb: string;
143
+ };
144
+ /**
145
+ * Create a Memorix retrieval client + matrix-compat tier surface from env (`MONGO_URI`, Catalox, `MEMORIX_*_DB`).
146
+ */
147
+ export declare function createMemorixRuntimeTier(options?: CreateMemorixRuntimeTierOptions): Promise<MemorixRuntimeTier>;
148
+ /**
149
+ * Legacy factory: returns a tier handle; call **`await tier.init()`** before use (same as xmemory-store).
150
+ */
151
+ export declare function createXmemoryDataTier(options?: CreateMemorixRuntimeTierOptions): MemorixRuntimeTier;
152
+ export {};
153
+ //# sourceMappingURL=memorix-runtime-tier.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"memorix-runtime-tier.d.ts","sourceRoot":"","sources":["../../src/execution-matrix/memorix-runtime-tier.ts"],"names":[],"mappings":"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"}