@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,311 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * CLI: read-only Catalox inventory for execution-matrix + graphs native items.
4
+ *
5
+ * **`createCataloxFromEnv`** (from `@x12i/catalox/firebase`) already reads the usual env vars — for example
6
+ * **`FIREBASE_PROJECT_ID`**, **`GOOGLE_SERVICE_ACCOUNT_BASE64`** or ADC, optional **`FIRESTORE_DATABASE_ID`** /
7
+ * **`CATALOX_MONGO_URI`**. It does **not** load a `.env` file by itself.
8
+ *
9
+ * This entrypoint calls **`initConfig`** with **`dotenvPath: '.env'`** first so a repo `.env` (e.g.
10
+ * **`FIREBASE_PROJECT_ID`** plus credentials) is on **`process.env`** before Catalox runs — same
11
+ * convenience Vitest gives live tests. If **`FIREBASE_PROJECT_ID`** is still unset after that, we copy
12
+ * from **`GOOGLE_CLOUD_PROJECT`** / **`GCLOUD_PROJECT`** or from **`project_id`** inside base64 SA JSON
13
+ * so `initializeApp` always gets a project id when one is inferable.
14
+ *
15
+ * **XMemory entity counts (catalog-driven):** **`--namespace`** + one or more native catalog ids
16
+ * (**`--entity-catalog-id`**, **`--entity-catalog-ids=a,b`**, **`CATALOX_ENTITY_CATALOG_IDS`**) and **`MONGO_URI`**.
17
+ * Optional **`--matrix-catalog-id`** / **`EXELLIX_ENTITY_REPORT_MATRIX_CATALOG_ID`** (+ optional run id) adds execution matrix row + snapshot counts.
18
+ *
19
+ * **Tier discovery (no Catalox entity catalog):** **`--entity-discovery=scoped-data-tier`** (or env **`XMEMORY_ENTITY_DISCOVERY=scoped-data-tier`**) with **`--namespace`** + **`MONGO_URI`** only — discovers distinct entity-type buckets from scoped data via **`getXmemoryTierStatistics`** (broader default **`groupByPaths.scoped_data`** than stock tier stats), then counts surfaces (+ optional matrix). Override paths with **`--entity-discovery-group-paths`** or **`XMEMORY_ENTITY_DISCOVERY_GROUP_PATHS`** (comma-separated Mongo paths, optional **`$`** prefix). No Firebase/Catalox required for this branch.
20
+ *
21
+ * Usage:
22
+ * npm run catalox:inventory
23
+ * npm run catalox:inventory -- --entity-discovery=scoped-data-tier --namespace=production --out=reports/all-entities.json
24
+ * npm run catalox:inventory -- --entity-catalog-ids=cat-a,cat-b --namespace=production --matrix-catalog-id=exellix.execution-matrix.foo --out=reports/entities.json
25
+ * npm run catalox:inventory -- --format=markdown --out=reports/catalox-inventory.md
26
+ */
27
+ import { Buffer } from 'node:buffer';
28
+ import { writeFileSync } from 'node:fs';
29
+ import { deleteApp } from 'firebase-admin/app';
30
+ import { MongoClient } from 'mongodb';
31
+ import { initConfig } from '@x12i/env';
32
+ import { createMemorixRuntimeTier } from '../execution-matrix/memorix-runtime-tier.js';
33
+ import { createCataloxFromEnv } from '@x12i/catalox/firebase';
34
+ import { openLiveMatrixFromDataTier } from '../execution-matrix/live-tier-open.js';
35
+ import { formatCataloxExecutionMatrixInventoryMarkdown, runCataloxExecutionMatrixInventory, } from './catalox-execution-matrix-inventory.js';
36
+ import { driverBackedMongoClientForXmemoryCli, formatCataloxXmemoryEntityCountMarkdown, normalizeEntityReportCatalogIds, parseTierDiscoveryGroupPathsCsv, runCataloxXmemoryEntityCountReport, runScopedDataEntityTypeDiscoveryReport, } from './catalox-xmemory-entity-count-report.js';
37
+ let inventoryCliArgv = process.argv;
38
+ function argValue(name) {
39
+ const prefix = `${name}=`;
40
+ const hit = inventoryCliArgv.find((a) => a === name || a.startsWith(prefix));
41
+ if (!hit)
42
+ return undefined;
43
+ if (hit === name) {
44
+ const i = inventoryCliArgv.indexOf(name);
45
+ return inventoryCliArgv[i + 1];
46
+ }
47
+ return hit.slice(prefix.length);
48
+ }
49
+ /** Collect every `--entity-catalog-id` value in argv (supports repeated flag). */
50
+ function allArgValues(name) {
51
+ const out = [];
52
+ const eq = `${name}=`;
53
+ for (let i = 0; i < inventoryCliArgv.length; i++) {
54
+ const a = inventoryCliArgv[i];
55
+ if (a === name) {
56
+ const v = inventoryCliArgv[i + 1];
57
+ if (v !== undefined && !v.startsWith('-'))
58
+ out.push(v);
59
+ }
60
+ else if (a.startsWith(eq)) {
61
+ out.push(a.slice(eq.length));
62
+ }
63
+ }
64
+ return out;
65
+ }
66
+ function resolveEntityCatalogIds() {
67
+ const repeated = allArgValues('--entity-catalog-id');
68
+ const csv = (argValue('--entity-catalog-ids') ?? '')
69
+ .split(',')
70
+ .map((s) => s.trim())
71
+ .filter(Boolean);
72
+ const fromEnv = (process.env.CATALOX_ENTITY_CATALOG_IDS ?? '')
73
+ .split(',')
74
+ .map((s) => s.trim())
75
+ .filter(Boolean);
76
+ const single = (process.env.CATALOX_ENTITY_CATALOG_ID ?? '').trim();
77
+ return normalizeEntityReportCatalogIds([...(single ? [single] : []), ...repeated, ...csv, ...fromEnv]);
78
+ }
79
+ function isScopedDataTierDiscovery(raw) {
80
+ const v = raw.trim().toLowerCase().replace(/-/g, '_');
81
+ return v === 'scoped_data_tier' || v === 'tier' || v === 'scoped_data';
82
+ }
83
+ /** Align with {@link createCataloxFromEnv}: it only passes `projectId` when `FIREBASE_PROJECT_ID` is set. */
84
+ function coerceFirebaseProjectIdFromEnv() {
85
+ if (String(process.env.FIREBASE_PROJECT_ID ?? '').trim())
86
+ return;
87
+ const fromGcp = String(process.env.GOOGLE_CLOUD_PROJECT ?? process.env.GCLOUD_PROJECT ?? '').trim();
88
+ if (fromGcp) {
89
+ process.env.FIREBASE_PROJECT_ID = fromGcp;
90
+ return;
91
+ }
92
+ const b64 = String(process.env.GOOGLE_SERVICE_ACCOUNT_BASE64 ?? '').trim();
93
+ if (!b64)
94
+ return;
95
+ try {
96
+ const json = JSON.parse(Buffer.from(b64, 'base64').toString('utf8'));
97
+ const pid = json !== null && typeof json === 'object' && 'project_id' in json && typeof json.project_id === 'string'
98
+ ? json.project_id.trim()
99
+ : '';
100
+ if (pid)
101
+ process.env.FIREBASE_PROJECT_ID = pid;
102
+ }
103
+ catch {
104
+ // Invalid base64/JSON: let createCataloxFromEnv surface the real error.
105
+ }
106
+ }
107
+ async function runTierDiscoveryEntityReport(args) {
108
+ const { format, out, mongoUri, namespace, reportMatrixCatalogId, reportMatrixRunId, executionDb, discoveryGroupByPathsScopedData, } = args;
109
+ const driver = new MongoClient(mongoUri);
110
+ await driver.connect();
111
+ let matrixBundle;
112
+ if (reportMatrixCatalogId) {
113
+ matrixBundle = await openLiveMatrixFromDataTier({ mongoUri, executionDb });
114
+ }
115
+ const tier = await createMemorixRuntimeTier({
116
+ mongoUri,
117
+ fallbackMongoClient: driverBackedMongoClientForXmemoryCli(driver),
118
+ });
119
+ try {
120
+ const report = await runScopedDataEntityTypeDiscoveryReport(tier, namespace, {
121
+ ...(matrixBundle
122
+ ? {
123
+ matrix: {
124
+ runtime: matrixBundle.runtime,
125
+ matrixCatalogId: reportMatrixCatalogId,
126
+ matrixRunId: reportMatrixRunId,
127
+ mongoDb: executionDb,
128
+ },
129
+ }
130
+ : {}),
131
+ ...(discoveryGroupByPathsScopedData?.length
132
+ ? { discoveryGroupByPathsScopedData: [...discoveryGroupByPathsScopedData] }
133
+ : {}),
134
+ });
135
+ const enriched = { ...report };
136
+ let body;
137
+ if (format === 'markdown' || format === 'md') {
138
+ body = formatCataloxXmemoryEntityCountMarkdown(report);
139
+ }
140
+ else {
141
+ body = `${JSON.stringify(enriched, null, 2)}\n`;
142
+ }
143
+ if (out) {
144
+ writeFileSync(out, body, 'utf8');
145
+ console.error(`Wrote ${out}`);
146
+ }
147
+ else {
148
+ process.stdout.write(body);
149
+ }
150
+ }
151
+ finally {
152
+ await tier.close();
153
+ if (matrixBundle) {
154
+ await matrixBundle.close();
155
+ }
156
+ await driver.close();
157
+ }
158
+ }
159
+ /** Run catalox inventory with optional forwarded argv (used by unified `exellix-runtime` CLI). */
160
+ export async function runCataloxInventoryCli(forwardArgv) {
161
+ const prevArgv = inventoryCliArgv;
162
+ if (forwardArgv) {
163
+ inventoryCliArgv = forwardArgv;
164
+ }
165
+ try {
166
+ await runCataloxInventoryCliBody();
167
+ }
168
+ finally {
169
+ inventoryCliArgv = prevArgv;
170
+ }
171
+ }
172
+ async function runCataloxInventoryCliBody() {
173
+ initConfig({}, { dotenvPath: '.env', throwOnMissing: false });
174
+ const format = (argValue('--format') ?? 'json').toLowerCase();
175
+ const out = argValue('--out');
176
+ const namespace = (argValue('--namespace') ?? process.env.XMEMORY_ENTITY_REPORT_NAMESPACE ?? '').trim();
177
+ const mongoUri = (argValue('--mongo-uri') ?? process.env.MONGO_URI ?? '').trim();
178
+ const discoveryRaw = (argValue('--entity-discovery') ?? process.env.XMEMORY_ENTITY_DISCOVERY ?? '').trim();
179
+ const tierDiscovery = isScopedDataTierDiscovery(discoveryRaw);
180
+ if (discoveryRaw && !tierDiscovery) {
181
+ throw new Error(`catalox:inventory: unknown --entity-discovery="${discoveryRaw}" (supported: scoped-data-tier, tier, scoped-data)`);
182
+ }
183
+ if (tierDiscovery) {
184
+ if (!namespace) {
185
+ throw new Error('catalox:inventory: --entity-discovery=scoped-data-tier requires --namespace (or XMEMORY_ENTITY_REPORT_NAMESPACE)');
186
+ }
187
+ if (!mongoUri) {
188
+ throw new Error('catalox:inventory: tier discovery requires MONGO_URI (or --mongo-uri)');
189
+ }
190
+ const executionDb = (process.env.execution_db ?? 'exellix-runtime').trim();
191
+ const reportMatrixCatalogId = (argValue('--matrix-catalog-id') ??
192
+ process.env.EXELLIX_ENTITY_REPORT_MATRIX_CATALOG_ID ??
193
+ '').trim();
194
+ const reportMatrixRunId = (argValue('--matrix-run-id') ?? process.env.EXELLIX_ENTITY_REPORT_MATRIX_RUN_ID ?? '').trim() || undefined;
195
+ const discoveryPathsRaw = argValue('--entity-discovery-group-paths') ?? process.env.XMEMORY_ENTITY_DISCOVERY_GROUP_PATHS ?? '';
196
+ const discoveryGroupByPathsScopedData = parseTierDiscoveryGroupPathsCsv(discoveryPathsRaw);
197
+ await runTierDiscoveryEntityReport({
198
+ format,
199
+ out,
200
+ mongoUri,
201
+ namespace,
202
+ reportMatrixCatalogId,
203
+ reportMatrixRunId,
204
+ executionDb,
205
+ discoveryGroupByPathsScopedData,
206
+ });
207
+ return;
208
+ }
209
+ coerceFirebaseProjectIdFromEnv();
210
+ const catalogIds = resolveEntityCatalogIds();
211
+ const xmemoryEntityMode = Boolean(namespace && catalogIds.length > 0);
212
+ if (catalogIds.length > 0 && !namespace) {
213
+ throw new Error('catalox:inventory: --namespace (or XMEMORY_ENTITY_REPORT_NAMESPACE) is required with entity catalog id(s)');
214
+ }
215
+ if (namespace && catalogIds.length === 0 && !tierDiscovery) {
216
+ throw new Error('catalox:inventory: entity catalog id(s) required with --namespace: use --entity-catalog-id, --entity-catalog-ids, and/or CATALOX_ENTITY_CATALOG_IDS — or use --entity-discovery=scoped-data-tier');
217
+ }
218
+ const { catalox, app, credentialSource, databaseId } = createCataloxFromEnv();
219
+ try {
220
+ if (xmemoryEntityMode) {
221
+ if (!mongoUri) {
222
+ throw new Error('catalox:inventory: xmemory entity mode requires MONGO_URI (or --mongo-uri)');
223
+ }
224
+ const driver = new MongoClient(mongoUri);
225
+ await driver.connect();
226
+ const executionDb = (process.env.execution_db ?? 'exellix-runtime').trim();
227
+ const reportMatrixCatalogId = (argValue('--matrix-catalog-id') ??
228
+ process.env.EXELLIX_ENTITY_REPORT_MATRIX_CATALOG_ID ??
229
+ '').trim();
230
+ const reportMatrixRunId = (argValue('--matrix-run-id') ?? process.env.EXELLIX_ENTITY_REPORT_MATRIX_RUN_ID ?? '').trim() || undefined;
231
+ let matrixBundle;
232
+ if (reportMatrixCatalogId) {
233
+ matrixBundle = await openLiveMatrixFromDataTier({ mongoUri, executionDb });
234
+ }
235
+ const tier = await createMemorixRuntimeTier({
236
+ mongoUri,
237
+ fallbackMongoClient: driverBackedMongoClientForXmemoryCli(driver),
238
+ });
239
+ try {
240
+ const report = await runCataloxXmemoryEntityCountReport(catalox, tier, catalogIds, namespace, {
241
+ ...(matrixBundle
242
+ ? {
243
+ matrix: {
244
+ runtime: matrixBundle.runtime,
245
+ matrixCatalogId: reportMatrixCatalogId,
246
+ matrixRunId: reportMatrixRunId,
247
+ mongoDb: executionDb,
248
+ },
249
+ }
250
+ : {}),
251
+ });
252
+ const enriched = {
253
+ ...report,
254
+ firebase: { credentialSource, ...(databaseId ? { databaseId } : {}) },
255
+ };
256
+ let body;
257
+ if (format === 'markdown' || format === 'md') {
258
+ body = formatCataloxXmemoryEntityCountMarkdown(report);
259
+ body += `\n\n## Firebase\n\ncredentialSource: **${credentialSource}**${databaseId ? ` · databaseId: **${databaseId}**` : ''}\n`;
260
+ }
261
+ else {
262
+ body = `${JSON.stringify(enriched, null, 2)}\n`;
263
+ }
264
+ if (out) {
265
+ writeFileSync(out, body, 'utf8');
266
+ console.error(`Wrote ${out}`);
267
+ }
268
+ else {
269
+ process.stdout.write(body);
270
+ }
271
+ }
272
+ finally {
273
+ await tier.close();
274
+ if (matrixBundle) {
275
+ await matrixBundle.close();
276
+ }
277
+ await driver.close();
278
+ }
279
+ }
280
+ else {
281
+ const report = await runCataloxExecutionMatrixInventory(catalox);
282
+ const enriched = {
283
+ ...report,
284
+ firebase: { credentialSource, ...(databaseId ? { databaseId } : {}) },
285
+ };
286
+ let body;
287
+ if (format === 'markdown' || format === 'md') {
288
+ body = formatCataloxExecutionMatrixInventoryMarkdown(report);
289
+ body += `\n\n## Firebase\n\ncredentialSource: **${credentialSource}**${databaseId ? ` · databaseId: **${databaseId}**` : ''}\n`;
290
+ }
291
+ else {
292
+ body = `${JSON.stringify(enriched, null, 2)}\n`;
293
+ }
294
+ if (out) {
295
+ writeFileSync(out, body, 'utf8');
296
+ console.error(`Wrote ${out}`);
297
+ }
298
+ else {
299
+ process.stdout.write(body);
300
+ }
301
+ }
302
+ }
303
+ finally {
304
+ await deleteApp(app);
305
+ }
306
+ }
307
+ void runCataloxInventoryCli().catch((e) => {
308
+ console.error(e instanceof Error ? e.stack ?? e.message : e);
309
+ process.exitCode = 1;
310
+ });
311
+ //# sourceMappingURL=catalox-execution-matrix-inventory-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-execution-matrix-inventory-cli.js","sourceRoot":"","sources":["../../src/catalox-inventory/catalox-execution-matrix-inventory-cli.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Read-only Catalox sweep: native catalogs → items → validate **execution-matrix** and **graphs**
3
+ * payloads and cross-check matrix **`graphs[]`** references against loaded graph definitions.
4
+ */
5
+ import type { Catalox, CataloxContext, CatalogSummary } from '@x12i/catalox';
6
+ export type CataloxInventoryItemIssue = {
7
+ kind: 'graph' | 'execution-matrix' | 'matrix-materialize';
8
+ message: string;
9
+ issues?: string[];
10
+ };
11
+ export type CataloxInventoryGraphRow = {
12
+ catalogId: string;
13
+ itemId: string;
14
+ ok: false;
15
+ issues: CataloxInventoryItemIssue[];
16
+ };
17
+ export type CataloxInventoryMatrixRow = {
18
+ catalogId: string;
19
+ itemId: string;
20
+ ok: boolean;
21
+ graphIds?: string[];
22
+ issues?: CataloxInventoryItemIssue[];
23
+ materializeOk?: boolean;
24
+ materializeError?: string;
25
+ };
26
+ export type CataloxExecutionMatrixInventoryReport = {
27
+ generatedAt: string;
28
+ context: CataloxContext;
29
+ catalogs: Array<{
30
+ catalogId: string;
31
+ label: string;
32
+ sourceMode: CatalogSummary['sourceMode'];
33
+ catalogType: string;
34
+ itemCount: number;
35
+ listOutcome?: string;
36
+ listError?: string;
37
+ }>;
38
+ summary: {
39
+ nativeCatalogs: number;
40
+ itemsListed: number;
41
+ graphItemsAttempted: number;
42
+ graphItemsOk: number;
43
+ graphValidationFailures: number;
44
+ matrixItemsAttempted: number;
45
+ matrixItemsOk: number;
46
+ matrixMaterializeOk: number;
47
+ matrixMaterializeFailures: number;
48
+ matrixPayloadFailures: number;
49
+ };
50
+ graphs: CataloxInventoryGraphRow[];
51
+ matrices: CataloxInventoryMatrixRow[];
52
+ };
53
+ export declare function formatCataloxExecutionMatrixInventoryMarkdown(report: CataloxExecutionMatrixInventoryReport): string;
54
+ export type RunCataloxExecutionMatrixInventoryOptions = {
55
+ context?: CataloxContext;
56
+ pageSize?: number;
57
+ };
58
+ /**
59
+ * Lists all native catalogs (super-admin), pages native items, validates **graphs** / **execution-matrix**
60
+ * rows using this package’s loaders, then runs {@link buildMatrixMaterializeContext} for each matrix item
61
+ * against the union of successfully parsed graph definitions (keyed by **`graphId`**).
62
+ */
63
+ export declare function runCataloxExecutionMatrixInventory(catalox: Catalox, options?: RunCataloxExecutionMatrixInventoryOptions): Promise<CataloxExecutionMatrixInventoryReport>;
64
+ //# sourceMappingURL=catalox-execution-matrix-inventory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-execution-matrix-inventory.d.ts","sourceRoot":"","sources":["../../src/catalox-inventory/catalox-execution-matrix-inventory.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAsB,MAAM,eAAe,CAAC;AAajG,MAAM,MAAM,yBAAyB,GAAG;IACtC,IAAI,EAAE,OAAO,GAAG,kBAAkB,GAAG,oBAAoB,CAAC;IAC1D,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,CAAC;AAEF,MAAM,MAAM,wBAAwB,GAAG;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,KAAK,CAAC;IACV,MAAM,EAAE,yBAAyB,EAAE,CAAC;CACrC,CAAC;AAEF,MAAM,MAAM,yBAAyB,GAAG;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,OAAO,CAAC;IACZ,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,yBAAyB,EAAE,CAAC;IACrC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,MAAM,MAAM,qCAAqC,GAAG;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,cAAc,CAAC;IACxB,QAAQ,EAAE,KAAK,CAAC;QACd,SAAS,EAAE,MAAM,CAAC;QAClB,KAAK,EAAE,MAAM,CAAC;QACd,UAAU,EAAE,cAAc,CAAC,YAAY,CAAC,CAAC;QACzC,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;IACH,OAAO,EAAE;QACP,cAAc,EAAE,MAAM,CAAC;QACvB,WAAW,EAAE,MAAM,CAAC;QACpB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,YAAY,EAAE,MAAM,CAAC;QACrB,uBAAuB,EAAE,MAAM,CAAC;QAChC,oBAAoB,EAAE,MAAM,CAAC;QAC7B,aAAa,EAAE,MAAM,CAAC;QACtB,mBAAmB,EAAE,MAAM,CAAC;QAC5B,yBAAyB,EAAE,MAAM,CAAC;QAClC,qBAAqB,EAAE,MAAM,CAAC;KAC/B,CAAC;IACF,MAAM,EAAE,wBAAwB,EAAE,CAAC;IACnC,QAAQ,EAAE,yBAAyB,EAAE,CAAC;CACvC,CAAC;AASF,wBAAgB,6CAA6C,CAAC,MAAM,EAAE,qCAAqC,GAAG,MAAM,CA2CnH;AAED,MAAM,MAAM,yCAAyC,GAAG;IACtD,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,wBAAsB,kCAAkC,CACtD,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,yCAAyC,GAClD,OAAO,CAAC,qCAAqC,CAAC,CAyKhD"}
@@ -0,0 +1,226 @@
1
+ import { buildMatrixMaterializeContext } from '../execution-matrix/catalox-matrix-host.js';
2
+ import { ExecutionMatrixCatalogValidationError, executionMatrixPayloadFromCatalogItem, graphCatalogPayloadFromCatalogItem, isExecutionMatrixCatalogMetadata, isGraphCatalogMetadata, } from '../execution-matrix/catalox-loader.js';
3
+ const DEFAULT_PAGE = 200;
4
+ function itemToNativeLike(item) {
5
+ return {
6
+ data: item.data,
7
+ metadata: item.metadata,
8
+ };
9
+ }
10
+ export function formatCataloxExecutionMatrixInventoryMarkdown(report) {
11
+ const s = report.summary;
12
+ const lines = [
13
+ '# Catalox execution-matrix inventory',
14
+ '',
15
+ `- **Generated:** ${report.generatedAt}`,
16
+ `- **Native catalogs:** ${s.nativeCatalogs}`,
17
+ `- **Items listed:** ${s.itemsListed}`,
18
+ `- **Graph validation failures:** ${s.graphValidationFailures}`,
19
+ `- **Matrix payload failures:** ${s.matrixPayloadFailures}`,
20
+ `- **Matrix materialize failures:** ${s.matrixMaterializeFailures}`,
21
+ '',
22
+ '## Catalogs',
23
+ '',
24
+ '| catalogId | source | type | items |',
25
+ '|-----------|--------|------|------:|',
26
+ ];
27
+ for (const c of report.catalogs) {
28
+ lines.push(`| ${c.catalogId} | ${c.sourceMode} | ${c.catalogType} | ${c.itemCount} |`);
29
+ }
30
+ lines.push('', '## Graph validation failures', '');
31
+ const badG = report.graphs;
32
+ if (badG.length === 0)
33
+ lines.push('_(none)_');
34
+ else {
35
+ for (const r of badG) {
36
+ lines.push(`- **${r.catalogId}** / ${r.itemId}: ${r.issues?.map((i) => i.message).join('; ') ?? 'error'}`);
37
+ }
38
+ }
39
+ lines.push('', '## Matrix validation / materialize failures', '');
40
+ const badM = report.matrices.filter((r) => !r.ok || r.materializeOk === false);
41
+ if (badM.length === 0)
42
+ lines.push('_(none)_');
43
+ else {
44
+ for (const r of badM) {
45
+ const bits = [
46
+ !r.ok ? 'payload invalid' : null,
47
+ r.materializeOk === false ? `materialize: ${r.materializeError ?? '?'}` : null,
48
+ ]
49
+ .filter(Boolean)
50
+ .join(' · ');
51
+ lines.push(`- **${r.catalogId}** / ${r.itemId} (${(r.graphIds ?? []).join(', ') || '—'}): ${bits}`);
52
+ }
53
+ }
54
+ return lines.join('\n');
55
+ }
56
+ /**
57
+ * Lists all native catalogs (super-admin), pages native items, validates **graphs** / **execution-matrix**
58
+ * rows using this package’s loaders, then runs {@link buildMatrixMaterializeContext} for each matrix item
59
+ * against the union of successfully parsed graph definitions (keyed by **`graphId`**).
60
+ */
61
+ export async function runCataloxExecutionMatrixInventory(catalox, options) {
62
+ const ctx = {
63
+ superAdmin: true,
64
+ userId: 'exellix-runtime-catalox-inventory',
65
+ actor: { type: 'system', id: '@exellix/exellix-runtime' },
66
+ ...options?.context,
67
+ };
68
+ const pageSize = Math.max(50, Math.min(options?.pageSize ?? DEFAULT_PAGE, 2000));
69
+ const catalogs = await catalox.listAllCatalogs(ctx, { includeDisabled: true, includeHidden: true });
70
+ const catalogRows = [];
71
+ const graphRows = [];
72
+ const matrixRows = [];
73
+ const graphItemsByGraphId = new Map();
74
+ const allMatrixItems = [];
75
+ let itemsListed = 0;
76
+ let graphItemsAttempted = 0;
77
+ let graphItemsOk = 0;
78
+ let matrixItemsAttempted = 0;
79
+ let matrixItemsOk = 0;
80
+ let matrixMaterializeOk = 0;
81
+ let nativeCatalogs = 0;
82
+ for (const cat of catalogs) {
83
+ if (cat.sourceMode !== 'native') {
84
+ catalogRows.push({
85
+ catalogId: cat.catalogId,
86
+ label: cat.label,
87
+ sourceMode: cat.sourceMode,
88
+ catalogType: cat.catalogType,
89
+ itemCount: 0,
90
+ });
91
+ continue;
92
+ }
93
+ nativeCatalogs += 1;
94
+ const items = [];
95
+ let offset = 0;
96
+ let listOutcome = 'ok';
97
+ let listError;
98
+ for (;;) {
99
+ try {
100
+ const page = await catalox.listCatalogItems(ctx, cat.catalogId, {
101
+ limit: pageSize,
102
+ offset,
103
+ scope: { superAdmin: true },
104
+ });
105
+ listOutcome = page.listOutcome;
106
+ if (page.listOutcome !== 'ok') {
107
+ listError = page.issues?.map((i) => `${i.severity ?? ''}:${JSON.stringify(i)}`).join('; ');
108
+ break;
109
+ }
110
+ items.push(...page.items);
111
+ if (page.items.length < pageSize)
112
+ break;
113
+ offset += page.items.length;
114
+ }
115
+ catch (e) {
116
+ listError = e instanceof Error ? e.message : String(e);
117
+ break;
118
+ }
119
+ }
120
+ itemsListed += items.length;
121
+ catalogRows.push({
122
+ catalogId: cat.catalogId,
123
+ label: cat.label,
124
+ sourceMode: cat.sourceMode,
125
+ catalogType: cat.catalogType,
126
+ itemCount: items.length,
127
+ listOutcome,
128
+ listError,
129
+ });
130
+ for (const item of items) {
131
+ const meta = item.metadata;
132
+ if (isGraphCatalogMetadata(meta)) {
133
+ graphItemsAttempted += 1;
134
+ try {
135
+ const record = graphCatalogPayloadFromCatalogItem(itemToNativeLike(item));
136
+ graphItemsOk += 1;
137
+ graphItemsByGraphId.set(record.graphId, itemToNativeLike(item));
138
+ }
139
+ catch (e) {
140
+ const issues = e instanceof ExecutionMatrixCatalogValidationError
141
+ ? e.issues
142
+ : undefined;
143
+ graphRows.push({
144
+ catalogId: cat.catalogId,
145
+ itemId: item.itemId,
146
+ ok: false,
147
+ issues: [
148
+ {
149
+ kind: 'graph',
150
+ message: e instanceof Error ? e.message : String(e),
151
+ issues,
152
+ },
153
+ ],
154
+ });
155
+ }
156
+ }
157
+ else if (isExecutionMatrixCatalogMetadata(meta)) {
158
+ allMatrixItems.push({ catalogId: cat.catalogId, item });
159
+ }
160
+ }
161
+ }
162
+ for (const { catalogId, item } of allMatrixItems) {
163
+ matrixItemsAttempted += 1;
164
+ let graphIds;
165
+ let ok = false;
166
+ let issues;
167
+ let materializeOk;
168
+ let materializeError;
169
+ try {
170
+ const payload = executionMatrixPayloadFromCatalogItem(itemToNativeLike(item));
171
+ graphIds = payload.graphs;
172
+ ok = true;
173
+ matrixItemsOk += 1;
174
+ try {
175
+ buildMatrixMaterializeContext(itemToNativeLike(item), graphItemsByGraphId);
176
+ materializeOk = true;
177
+ matrixMaterializeOk += 1;
178
+ }
179
+ catch (e) {
180
+ materializeOk = false;
181
+ materializeError = e instanceof Error ? e.message : String(e);
182
+ }
183
+ }
184
+ catch (e) {
185
+ const iss = e instanceof ExecutionMatrixCatalogValidationError
186
+ ? e.issues
187
+ : undefined;
188
+ issues = [
189
+ {
190
+ kind: 'execution-matrix',
191
+ message: e instanceof Error ? e.message : String(e),
192
+ issues: iss,
193
+ },
194
+ ];
195
+ }
196
+ matrixRows.push({
197
+ catalogId,
198
+ itemId: item.itemId,
199
+ ok,
200
+ graphIds,
201
+ issues,
202
+ materializeOk,
203
+ materializeError,
204
+ });
205
+ }
206
+ return {
207
+ generatedAt: new Date().toISOString(),
208
+ context: ctx,
209
+ catalogs: catalogRows,
210
+ summary: {
211
+ nativeCatalogs,
212
+ itemsListed,
213
+ graphItemsAttempted,
214
+ graphItemsOk,
215
+ graphValidationFailures: graphRows.length,
216
+ matrixItemsAttempted,
217
+ matrixItemsOk,
218
+ matrixMaterializeOk,
219
+ matrixMaterializeFailures: matrixRows.filter((r) => r.ok && r.materializeOk === false).length,
220
+ matrixPayloadFailures: matrixRows.filter((r) => !r.ok).length,
221
+ },
222
+ graphs: graphRows,
223
+ matrices: matrixRows,
224
+ };
225
+ }
226
+ //# sourceMappingURL=catalox-execution-matrix-inventory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalox-execution-matrix-inventory.js","sourceRoot":"","sources":["../../src/catalox-inventory/catalox-execution-matrix-inventory.ts"],"names":[],"mappings":"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"}