@graphrefly/ts 0.0.1 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (333) hide show
  1. package/README.md +197 -117
  2. package/dist/actions-types-CH-XCU9O.d.cts +657 -0
  3. package/dist/actions-types-w2iPQTkv.d.ts +657 -0
  4. package/dist/adapters/index.cjs +5157 -2951
  5. package/dist/adapters/index.cjs.map +1 -1
  6. package/dist/adapters/index.d.cts +207 -70
  7. package/dist/adapters/index.d.ts +207 -70
  8. package/dist/adapters/index.js +3738 -1688
  9. package/dist/adapters/index.js.map +1 -1
  10. package/dist/adapters/nestjs/microservices.cjs +841 -0
  11. package/dist/adapters/nestjs/microservices.cjs.map +1 -0
  12. package/dist/adapters/nestjs/microservices.d.cts +45 -0
  13. package/dist/adapters/nestjs/microservices.d.ts +45 -0
  14. package/dist/adapters/nestjs/microservices.js +206 -0
  15. package/dist/adapters/nestjs/microservices.js.map +1 -0
  16. package/dist/adapters/nestjs/native.cjs +1391 -0
  17. package/dist/adapters/nestjs/native.cjs.map +1 -0
  18. package/dist/adapters/nestjs/native.d.cts +111 -0
  19. package/dist/adapters/nestjs/native.d.ts +111 -0
  20. package/dist/adapters/nestjs/native.js +577 -0
  21. package/dist/adapters/nestjs/native.js.map +1 -0
  22. package/dist/adapters/nestjs/websockets.cjs +924 -0
  23. package/dist/adapters/nestjs/websockets.cjs.map +1 -0
  24. package/dist/adapters/nestjs/websockets.d.cts +47 -0
  25. package/dist/adapters/nestjs/websockets.d.ts +47 -0
  26. package/dist/adapters/nestjs/websockets.js +286 -0
  27. package/dist/adapters/nestjs/websockets.js.map +1 -0
  28. package/dist/adapters/nestjs.cjs +1085 -0
  29. package/dist/adapters/nestjs.cjs.map +1 -0
  30. package/dist/adapters/nestjs.d.cts +385 -0
  31. package/dist/adapters/nestjs.d.ts +385 -0
  32. package/dist/adapters/nestjs.js +112 -0
  33. package/dist/adapters/nestjs.js.map +1 -0
  34. package/dist/adapters/observe-storage.d.cts +3 -3
  35. package/dist/adapters/observe-storage.d.ts +3 -3
  36. package/dist/adapters/observe-storage.js +4 -4
  37. package/dist/adapters/react.cjs.map +1 -1
  38. package/dist/adapters/react.d.cts +2 -2
  39. package/dist/adapters/react.d.ts +2 -2
  40. package/dist/adapters/react.js +1 -1
  41. package/dist/adapters/solid.cjs.map +1 -1
  42. package/dist/adapters/solid.d.cts +2 -2
  43. package/dist/adapters/solid.d.ts +2 -2
  44. package/dist/adapters/solid.js +1 -1
  45. package/dist/adapters/svelte.cjs.map +1 -1
  46. package/dist/adapters/svelte.d.cts +2 -2
  47. package/dist/adapters/svelte.d.ts +2 -2
  48. package/dist/adapters/svelte.js +1 -1
  49. package/dist/adapters/vue.cjs.map +1 -1
  50. package/dist/adapters/vue.d.cts +2 -2
  51. package/dist/adapters/vue.d.ts +2 -2
  52. package/dist/adapters/vue.js +1 -1
  53. package/dist/{agent-runtime-BesGDZcB.d.ts → agent-runtime-types-core-CKwrBDyi.d.ts} +171 -320
  54. package/dist/{agent-runtime-DZTJ3C-p.d.cts → agent-runtime-types-core-bfl4m0vM.d.cts} +171 -320
  55. package/dist/agent-runtime-types-tool-BLPV3azj.d.cts +695 -0
  56. package/dist/agent-runtime-types-tool-hwqvVqNt.d.ts +695 -0
  57. package/dist/agentic-memory-retention-CLwI76JK.d.ts +14 -0
  58. package/dist/agentic-memory-retention-Cz8GR6ie.d.cts +14 -0
  59. package/dist/{agentic-memory-DfuVZ-lY.d.cts → agentic-memory-types-JDr7MPhh.d.cts} +13 -57
  60. package/dist/{agentic-memory-BmRCvh0d.d.ts → agentic-memory-types-khYJgzKL.d.ts} +13 -57
  61. package/dist/{capability-admission-B0BzqAm5.d.cts → capability-admission-B8RNFyaZ.d.cts} +3 -3
  62. package/dist/{capability-admission-g0mn9hpq.d.ts → capability-admission-Dkw1Xz3r.d.ts} +3 -3
  63. package/dist/chunk-2KUAG2GZ.js +9693 -0
  64. package/dist/chunk-2KUAG2GZ.js.map +1 -0
  65. package/dist/{chunk-CZNV3VXM.js → chunk-3J7UPZL5.js} +11 -11
  66. package/dist/{chunk-HKK2JD7Z.js → chunk-3LYI6ADX.js} +12 -125
  67. package/dist/chunk-3LYI6ADX.js.map +1 -0
  68. package/dist/{chunk-YXMZ2N6J.js → chunk-4M37FH2I.js} +1071 -1025
  69. package/dist/chunk-4M37FH2I.js.map +1 -0
  70. package/dist/{chunk-YDSIVHRR.js → chunk-4NWSNI4K.js} +1598 -1584
  71. package/dist/chunk-4NWSNI4K.js.map +1 -0
  72. package/dist/{chunk-Z2ANQ6JW.js → chunk-4Q77MMJY.js} +2 -2
  73. package/dist/{chunk-SS2A464I.js → chunk-54WPEODM.js} +3 -3
  74. package/dist/chunk-54WPEODM.js.map +1 -0
  75. package/dist/chunk-6E76H4OU.js +132 -0
  76. package/dist/chunk-6E76H4OU.js.map +1 -0
  77. package/dist/chunk-7GOTIIQ7.js +819 -0
  78. package/dist/chunk-7GOTIIQ7.js.map +1 -0
  79. package/dist/{chunk-V7CIJE4B.js → chunk-DKFWDTVY.js} +92 -9
  80. package/dist/chunk-DKFWDTVY.js.map +1 -0
  81. package/dist/{chunk-FBUU43PM.js → chunk-E4QCH32M.js} +448 -446
  82. package/dist/chunk-E4QCH32M.js.map +1 -0
  83. package/dist/{chunk-XKXWK2KP.js → chunk-GXU6WFEJ.js} +1157 -1021
  84. package/dist/chunk-GXU6WFEJ.js.map +1 -0
  85. package/dist/{chunk-K3FXTC3I.js → chunk-HJACH5PU.js} +3 -3
  86. package/dist/{chunk-GTPCOEOZ.js → chunk-IDMLXLLG.js} +3 -3
  87. package/dist/{chunk-DKP56CSW.js → chunk-JKAYLDQV.js} +2 -2
  88. package/dist/{chunk-4VLAQHZI.js → chunk-K7FB3JTD.js} +17 -1
  89. package/dist/chunk-K7FB3JTD.js.map +1 -0
  90. package/dist/{chunk-43BKLFZU.js → chunk-KFURM6FM.js} +10 -10
  91. package/dist/{chunk-H75VXTGT.js → chunk-L6LDXRWE.js} +3 -3
  92. package/dist/{chunk-H75VXTGT.js.map → chunk-L6LDXRWE.js.map} +1 -1
  93. package/dist/chunk-MCOFHMUU.js +4131 -0
  94. package/dist/chunk-MCOFHMUU.js.map +1 -0
  95. package/dist/chunk-MQEQMS7B.js +1009 -0
  96. package/dist/chunk-MQEQMS7B.js.map +1 -0
  97. package/dist/chunk-MTELVIYR.js +1421 -0
  98. package/dist/chunk-MTELVIYR.js.map +1 -0
  99. package/dist/{chunk-3JR3EDB2.js → chunk-NNDIFUKX.js} +121 -115
  100. package/dist/chunk-NNDIFUKX.js.map +1 -0
  101. package/dist/{chunk-2747WN4Y.js → chunk-PUSRRALM.js} +3 -3
  102. package/dist/{chunk-QFY4AFY4.js → chunk-PVC7WDKI.js} +58 -52
  103. package/dist/chunk-PVC7WDKI.js.map +1 -0
  104. package/dist/{chunk-VTHLCFN4.js → chunk-RAHNUYA5.js} +2 -2
  105. package/dist/chunk-TQPCAIQI.js +612 -0
  106. package/dist/chunk-TQPCAIQI.js.map +1 -0
  107. package/dist/{chunk-IXZBUWSP.js → chunk-UEMN5URK.js} +2 -2
  108. package/dist/chunk-WOS7RJYZ.js +1320 -0
  109. package/dist/chunk-WOS7RJYZ.js.map +1 -0
  110. package/dist/{chunk-6PHB5CJS.js → chunk-ZLFRB6FI.js} +2 -2
  111. package/dist/composition/index.cjs +1228 -1076
  112. package/dist/composition/index.cjs.map +1 -1
  113. package/dist/composition/index.d.cts +3 -3
  114. package/dist/composition/index.d.ts +3 -3
  115. package/dist/composition/index.js +4 -4
  116. package/dist/core/index.cjs +1198 -1046
  117. package/dist/core/index.cjs.map +1 -1
  118. package/dist/core/index.d.cts +23 -2
  119. package/dist/core/index.d.ts +23 -2
  120. package/dist/core/index.js +2 -2
  121. package/dist/cqrs/index.d.cts +3 -3
  122. package/dist/cqrs/index.d.ts +3 -3
  123. package/dist/cqrs/messaging.d.cts +4 -4
  124. package/dist/cqrs/messaging.d.ts +4 -4
  125. package/dist/cqrs/work-queue.d.cts +5 -5
  126. package/dist/cqrs/work-queue.d.ts +5 -5
  127. package/dist/data-structures/index.cjs +1226 -1074
  128. package/dist/data-structures/index.cjs.map +1 -1
  129. package/dist/data-structures/index.d.cts +8 -7
  130. package/dist/data-structures/index.d.ts +8 -7
  131. package/dist/data-structures/index.js +6 -5
  132. package/dist/{describe-DYMw_l1C.d.cts → describe-BumQ-3_0.d.cts} +1 -1
  133. package/dist/{describe-BpyJuWkw.d.ts → describe-cYr_Z5zm.d.ts} +1 -1
  134. package/dist/executors/tool-provider-adapters.cjs +3091 -0
  135. package/dist/executors/tool-provider-adapters.cjs.map +1 -0
  136. package/dist/executors/tool-provider-adapters.d.cts +174 -0
  137. package/dist/executors/tool-provider-adapters.d.ts +174 -0
  138. package/dist/executors/tool-provider-adapters.js +1336 -0
  139. package/dist/executors/tool-provider-adapters.js.map +1 -0
  140. package/dist/executors/tool-provider-runtime.cjs +5178 -0
  141. package/dist/executors/tool-provider-runtime.cjs.map +1 -0
  142. package/dist/executors/tool-provider-runtime.d.cts +17 -0
  143. package/dist/executors/tool-provider-runtime.d.ts +17 -0
  144. package/dist/executors/tool-provider-runtime.js +15 -0
  145. package/dist/executors/tool-provider-runtime.js.map +1 -0
  146. package/dist/executors/tool-provider.cjs +6392 -0
  147. package/dist/executors/tool-provider.cjs.map +1 -0
  148. package/dist/executors/tool-provider.d.cts +60 -0
  149. package/dist/executors/tool-provider.d.ts +60 -0
  150. package/dist/executors/tool-provider.js +89 -0
  151. package/dist/executors/tool-provider.js.map +1 -0
  152. package/dist/executors/work-queue.d.cts +6 -6
  153. package/dist/executors/work-queue.d.ts +6 -6
  154. package/dist/graph/index.cjs +1499 -1341
  155. package/dist/graph/index.cjs.map +1 -1
  156. package/dist/graph/index.d.cts +9 -8
  157. package/dist/graph/index.d.ts +9 -8
  158. package/dist/graph/index.js +23 -22
  159. package/dist/{graph-DCEWh4T2.d.cts → graph-C1C-wb0L.d.cts} +266 -137
  160. package/dist/{graph-D-1-SQeC.d.ts → graph-CS0b4V9B.d.ts} +266 -137
  161. package/dist/{index-72VZC0-E.d.cts → index-DLrNopda.d.cts} +151 -10
  162. package/dist/{index-Bmxeu0nK.d.ts → index-DzJni3_6.d.ts} +151 -10
  163. package/dist/index.cjs +3397 -3140
  164. package/dist/index.cjs.map +1 -1
  165. package/dist/index.d.cts +12 -9
  166. package/dist/index.d.ts +12 -9
  167. package/dist/index.js +110 -109
  168. package/dist/inspection/boundary.d.cts +4 -4
  169. package/dist/inspection/boundary.d.ts +4 -4
  170. package/dist/measurements-BWAnochv.d.ts +294 -0
  171. package/dist/measurements-B_gJfD8h.d.cts +294 -0
  172. package/dist/messaging/index.cjs +57 -51
  173. package/dist/messaging/index.cjs.map +1 -1
  174. package/dist/messaging/index.d.cts +11 -276
  175. package/dist/messaging/index.d.ts +11 -276
  176. package/dist/messaging/index.js +1 -1
  177. package/dist/operators/index.cjs +1228 -1076
  178. package/dist/operators/index.cjs.map +1 -1
  179. package/dist/operators/index.d.cts +5 -5
  180. package/dist/operators/index.d.ts +5 -5
  181. package/dist/operators/index.js +5 -5
  182. package/dist/orchestration/index.cjs +8844 -6071
  183. package/dist/orchestration/index.cjs.map +1 -1
  184. package/dist/orchestration/index.d.cts +171 -224
  185. package/dist/orchestration/index.d.ts +171 -224
  186. package/dist/orchestration/index.js +42 -991
  187. package/dist/orchestration/index.js.map +1 -1
  188. package/dist/orchestration/messaging.d.cts +5 -8
  189. package/dist/orchestration/messaging.d.ts +5 -8
  190. package/dist/orchestration/work-queue.cjs +1243 -5
  191. package/dist/orchestration/work-queue.cjs.map +1 -1
  192. package/dist/orchestration/work-queue.d.cts +121 -10
  193. package/dist/orchestration/work-queue.d.ts +121 -10
  194. package/dist/orchestration/work-queue.js +1067 -4
  195. package/dist/orchestration/work-queue.js.map +1 -1
  196. package/dist/patterns/event-flow.cjs +6 -20
  197. package/dist/patterns/event-flow.cjs.map +1 -1
  198. package/dist/patterns/event-flow.d.cts +4 -4
  199. package/dist/patterns/event-flow.d.ts +4 -4
  200. package/dist/patterns/event-flow.js +2 -2
  201. package/dist/patterns/index.cjs +453 -465
  202. package/dist/patterns/index.cjs.map +1 -1
  203. package/dist/patterns/index.d.cts +6 -5
  204. package/dist/patterns/index.d.ts +6 -5
  205. package/dist/patterns/index.js +3 -3
  206. package/dist/process-types-BB7oRhX3.d.cts +200 -0
  207. package/dist/process-types-QNhyoYJ8.d.ts +200 -0
  208. package/dist/{reactive-collection-DNV0-gFi.d.cts → reactive-collection-BYlWvtnp.d.cts} +4 -34
  209. package/dist/{reactive-collection-BAmfrGjd.d.ts → reactive-collection-efOEdGFN.d.ts} +4 -34
  210. package/dist/{reactive-collection-storage-BNEldDyi.d.cts → reactive-collection-storage-BjoLsoiC.d.cts} +5 -5
  211. package/dist/{reactive-collection-storage-YZsAQsWK.d.ts → reactive-collection-storage-DwW6UuK_.d.ts} +5 -5
  212. package/dist/{reactive-map-DRD1LJ2H.d.cts → reactive-map-BHacbIqz.d.cts} +7 -2
  213. package/dist/{reactive-map-EsDiCmJk.d.ts → reactive-map-DN4Jyqnf.d.ts} +7 -2
  214. package/dist/render/index.d.cts +2 -2
  215. package/dist/render/index.d.ts +2 -2
  216. package/dist/scheduled-readiness-BmqXxnzX.d.ts +91 -0
  217. package/dist/scheduled-readiness-CYSw7KDE.d.cts +91 -0
  218. package/dist/semantic-memory-graph-B_LwbM-E.d.cts +30 -0
  219. package/dist/semantic-memory-graph-rsFNNhwn.d.ts +30 -0
  220. package/dist/{semantic-memory-graph-DKuNzuWw.d.cts → semantic-memory-graph-types-Y73bbwVI.d.cts} +2 -28
  221. package/dist/{semantic-memory-graph-uwbwJdhe.d.ts → semantic-memory-graph-types-safmPkuX.d.ts} +2 -28
  222. package/dist/solutions/index.cjs +6353 -6169
  223. package/dist/solutions/index.cjs.map +1 -1
  224. package/dist/solutions/index.d.cts +12 -10
  225. package/dist/solutions/index.d.ts +12 -10
  226. package/dist/solutions/index.js +5 -5
  227. package/dist/solutions/reactive-layout/browser/index.cjs +116 -108
  228. package/dist/solutions/reactive-layout/browser/index.cjs.map +1 -1
  229. package/dist/solutions/reactive-layout/browser/index.d.cts +4 -4
  230. package/dist/solutions/reactive-layout/browser/index.d.ts +4 -4
  231. package/dist/solutions/reactive-layout/browser/index.js +3 -3
  232. package/dist/solutions/reactive-layout/index.cjs +3578 -3350
  233. package/dist/solutions/reactive-layout/index.cjs.map +1 -1
  234. package/dist/solutions/reactive-layout/index.d.cts +32 -576
  235. package/dist/solutions/reactive-layout/index.d.ts +32 -576
  236. package/dist/solutions/reactive-layout/index.js +65 -5
  237. package/dist/solutions/reactive-layout/node-canvas/index.cjs +127 -117
  238. package/dist/solutions/reactive-layout/node-canvas/index.cjs.map +1 -1
  239. package/dist/solutions/reactive-layout/node-canvas/index.d.cts +4 -4
  240. package/dist/solutions/reactive-layout/node-canvas/index.d.ts +4 -4
  241. package/dist/solutions/reactive-layout/node-canvas/index.js +3 -3
  242. package/dist/solutions/reactive-layout/react-native/index.cjs +127 -117
  243. package/dist/solutions/reactive-layout/react-native/index.cjs.map +1 -1
  244. package/dist/solutions/reactive-layout/react-native/index.d.cts +4 -4
  245. package/dist/solutions/reactive-layout/react-native/index.d.ts +4 -4
  246. package/dist/solutions/reactive-layout/react-native/index.js +3 -3
  247. package/dist/solutions/reactive-layout/skia/index.cjs +127 -117
  248. package/dist/solutions/reactive-layout/skia/index.cjs.map +1 -1
  249. package/dist/solutions/reactive-layout/skia/index.d.cts +4 -4
  250. package/dist/solutions/reactive-layout/skia/index.d.ts +4 -4
  251. package/dist/solutions/reactive-layout/skia/index.js +3 -3
  252. package/dist/solutions/work-item/actions.cjs +1609 -1428
  253. package/dist/solutions/work-item/actions.cjs.map +1 -1
  254. package/dist/solutions/work-item/actions.d.cts +23 -184
  255. package/dist/solutions/work-item/actions.d.ts +23 -184
  256. package/dist/solutions/work-item/actions.js +1558 -934
  257. package/dist/solutions/work-item/actions.js.map +1 -1
  258. package/dist/solutions/work-item/scheduling.cjs +9181 -1838
  259. package/dist/solutions/work-item/scheduling.cjs.map +1 -1
  260. package/dist/solutions/work-item/scheduling.d.cts +1763 -328
  261. package/dist/solutions/work-item/scheduling.d.ts +1763 -328
  262. package/dist/solutions/work-item/scheduling.js +117 -3
  263. package/dist/solutions/work-item/work-queue.d.cts +7 -7
  264. package/dist/solutions/work-item/work-queue.d.ts +7 -7
  265. package/dist/sources/browser.cjs +1318 -1083
  266. package/dist/sources/browser.cjs.map +1 -1
  267. package/dist/sources/browser.d.cts +22 -6
  268. package/dist/sources/browser.d.ts +22 -6
  269. package/dist/sources/browser.js +4 -4
  270. package/dist/sources/browser.js.map +1 -1
  271. package/dist/sources/index.cjs +1318 -1083
  272. package/dist/sources/index.cjs.map +1 -1
  273. package/dist/sources/index.d.cts +4 -4
  274. package/dist/sources/index.d.ts +4 -4
  275. package/dist/sources/index.js +4 -4
  276. package/dist/sources/node.d.cts +3 -3
  277. package/dist/sources/node.d.ts +3 -3
  278. package/dist/storage/browser.cjs +16 -0
  279. package/dist/storage/browser.cjs.map +1 -1
  280. package/dist/storage/browser.js +3 -3
  281. package/dist/storage/index.cjs +16 -0
  282. package/dist/storage/index.cjs.map +1 -1
  283. package/dist/storage/index.d.cts +5 -4
  284. package/dist/storage/index.d.ts +5 -4
  285. package/dist/storage/index.js +6 -6
  286. package/dist/storage/node.cjs +16 -0
  287. package/dist/storage/node.cjs.map +1 -1
  288. package/dist/storage/node.js +3 -3
  289. package/dist/{store-C-joM4gh.d.ts → store-6_CHF6Ge.d.ts} +1 -1
  290. package/dist/{store-CNJwmT-h.d.cts → store-BljX8RkQ.d.cts} +1 -1
  291. package/dist/types-BAw2QVVE.d.cts +274 -0
  292. package/dist/types-BUbbbh4f.d.cts +34 -0
  293. package/dist/types-CMnzoL54.d.cts +457 -0
  294. package/dist/{types-CcPIn7sy.d.cts → types-CTN3XoMl.d.cts} +57 -108
  295. package/dist/types-CV_ohy5T.d.cts +357 -0
  296. package/dist/{types-BsJvElYZ.d.ts → types-DChxk1vK.d.ts} +57 -108
  297. package/dist/types-DRu7SnLV.d.ts +274 -0
  298. package/dist/types-DeID_FRl.d.ts +34 -0
  299. package/dist/types-IhKH0hGW.d.ts +357 -0
  300. package/dist/types-ePlD2uyT.d.ts +457 -0
  301. package/dist/{work-item-runtime-qaVgsL0T.d.cts → work-item-runtime-types-BTxLskN5.d.cts} +3 -93
  302. package/dist/{work-item-runtime-C3M79vE9.d.ts → work-item-runtime-types-DAsZbb2y.d.ts} +3 -93
  303. package/dist/work-queue/index.cjs +957 -953
  304. package/dist/work-queue/index.cjs.map +1 -1
  305. package/dist/work-queue/index.d.cts +9 -357
  306. package/dist/work-queue/index.d.ts +9 -357
  307. package/dist/work-queue/index.js +957 -953
  308. package/dist/work-queue/index.js.map +1 -1
  309. package/package.json +611 -513
  310. package/dist/chunk-3JR3EDB2.js.map +0 -1
  311. package/dist/chunk-4VLAQHZI.js.map +0 -1
  312. package/dist/chunk-6XAIOL3X.js +0 -2407
  313. package/dist/chunk-6XAIOL3X.js.map +0 -1
  314. package/dist/chunk-FBUU43PM.js.map +0 -1
  315. package/dist/chunk-HKK2JD7Z.js.map +0 -1
  316. package/dist/chunk-PC3BTTBE.js +0 -3217
  317. package/dist/chunk-PC3BTTBE.js.map +0 -1
  318. package/dist/chunk-QFY4AFY4.js.map +0 -1
  319. package/dist/chunk-SS2A464I.js.map +0 -1
  320. package/dist/chunk-V7CIJE4B.js.map +0 -1
  321. package/dist/chunk-XKXWK2KP.js.map +0 -1
  322. package/dist/chunk-YDSIVHRR.js.map +0 -1
  323. package/dist/chunk-YXMZ2N6J.js.map +0 -1
  324. /package/dist/{chunk-CZNV3VXM.js.map → chunk-3J7UPZL5.js.map} +0 -0
  325. /package/dist/{chunk-Z2ANQ6JW.js.map → chunk-4Q77MMJY.js.map} +0 -0
  326. /package/dist/{chunk-K3FXTC3I.js.map → chunk-HJACH5PU.js.map} +0 -0
  327. /package/dist/{chunk-GTPCOEOZ.js.map → chunk-IDMLXLLG.js.map} +0 -0
  328. /package/dist/{chunk-DKP56CSW.js.map → chunk-JKAYLDQV.js.map} +0 -0
  329. /package/dist/{chunk-43BKLFZU.js.map → chunk-KFURM6FM.js.map} +0 -0
  330. /package/dist/{chunk-2747WN4Y.js.map → chunk-PUSRRALM.js.map} +0 -0
  331. /package/dist/{chunk-VTHLCFN4.js.map → chunk-RAHNUYA5.js.map} +0 -0
  332. /package/dist/{chunk-IXZBUWSP.js.map → chunk-UEMN5URK.js.map} +0 -0
  333. /package/dist/{chunk-6PHB5CJS.js.map → chunk-ZLFRB6FI.js.map} +0 -0
@@ -142,466 +142,158 @@ function scoreAtLeast(score, min) {
142
142
  return Number.isFinite(score) && score >= min;
143
143
  }
144
144
 
145
- // src/patterns/semantic-memory-graph.ts
146
- function memoryRetrievalBundle(graph, opts) {
147
- const name = opts.name ?? "memoryRetrieval";
148
- const { fragments, query } = opts;
149
- const snapshot = graph.node(
150
- [fragments, query],
151
- (ctx) => {
152
- const state = ctx.state.get() ?? { evaluation: 0 };
153
- state.evaluation += 1;
154
- const rawFragments = depLatest(ctx, 0);
155
- const rawQuery = depLatest(ctx, 1);
156
- const queryValidation = validateMemoryRetrievalQuery(rawQuery);
157
- const currentQuery = queryValidation.query;
158
- const valid = [];
159
- const seenIds = /* @__PURE__ */ new Set();
160
- const errors = [...queryValidation.errors];
161
- if (!Array.isArray(rawFragments)) {
162
- errors.push({
163
- code: "invalid-fragments-input",
164
- message: "memoryRetrievalBundle: fragments input must be an array",
165
- fragment: rawFragments
166
- });
167
- } else {
168
- const length = safeArrayLength(rawFragments);
169
- if (length === void 0) {
170
- errors.push({
171
- code: "invalid-fragments-input",
172
- message: "memoryRetrievalBundle: fragments input length could not be read",
173
- fragment: rawFragments
174
- });
145
+ // src/patterns/semantic-memory-graph-utils.ts
146
+ function validateKnowledgeGraphPolicy(value) {
147
+ if (value === void 0) return { policy: void 0, errors: [] };
148
+ if (!isPlainObject(value)) {
149
+ return {
150
+ errors: [
151
+ {
152
+ code: "invalid-policy",
153
+ message: "knowledgeGraphReducerBundle: policy must be an object",
154
+ assertion: value
175
155
  }
176
- for (let i = 0; i < (length ?? 0); i += 1) {
177
- const result = validateAndSnapshotFragment(rawFragments, i);
178
- if (result.error !== void 0) {
179
- errors.push(result.error);
180
- continue;
181
- }
182
- const fragment = result.fragment;
183
- if (seenIds.has(fragment.id)) {
184
- errors.push({
185
- code: "duplicate-fragment-id",
186
- message: "memoryRetrievalBundle: duplicate fragment id",
187
- index: i,
188
- fragment,
189
- validationErrors: [`duplicate fragment id '${fragment.id}'`]
190
- });
191
- continue;
192
- }
193
- seenIds.add(fragment.id);
194
- valid.push(fragment);
156
+ ]
157
+ };
158
+ }
159
+ const errors = [];
160
+ const policy = value;
161
+ if (policy.allowedPredicates !== void 0 && !isDenseArrayOf2(policy.allowedPredicates, (item) => typeof item === "string")) {
162
+ errors.push("allowedPredicates must be a readonly string array");
163
+ }
164
+ if (policy.requireEntityTypes !== void 0 && typeof policy.requireEntityTypes !== "boolean") {
165
+ errors.push("requireEntityTypes must be a boolean when present");
166
+ }
167
+ if (errors.length > 0) {
168
+ return {
169
+ errors: [
170
+ {
171
+ code: "invalid-policy",
172
+ message: "knowledgeGraphReducerBundle: policy is invalid",
173
+ assertion: value,
174
+ validationErrors: Object.freeze(errors)
195
175
  }
196
- }
197
- const ranked = errors.some((error) => !isRecoverableFragmentError(error)) ? [] : rankFragments(valid, currentQuery);
198
- const cursor = Object.freeze({
199
- evaluation: state.evaluation,
200
- validFragments: valid.length,
201
- invalidFragments: errors.filter(
202
- (error) => error.code === "invalid-fragment" || error.code === "duplicate-fragment-id"
203
- ).length,
204
- resultCount: ranked.length
205
- });
206
- ctx.state.set(state);
207
- const answer = Object.freeze({
208
- query: currentQuery,
209
- results: Object.freeze(ranked)
210
- });
211
- const status = Object.freeze({
212
- state: statusState(errors, ranked.length),
213
- query: currentQuery,
214
- cursor
215
- });
216
- const indexed = Object.freeze({
217
- ids: Object.freeze(valid.map((fragment) => fragment.id)),
218
- byId: indexById(valid),
219
- cursor
176
+ ]
177
+ };
178
+ }
179
+ return {
180
+ policy: Object.freeze({
181
+ ...policy.allowedPredicates === void 0 ? {} : { allowedPredicates: Object.freeze([...policy.allowedPredicates]) },
182
+ ...policy.requireEntityTypes === void 0 ? {} : { requireEntityTypes: policy.requireEntityTypes }
183
+ }),
184
+ errors: []
185
+ };
186
+ }
187
+ function reduceKnowledgeAssertions(value, policy) {
188
+ const assertions = [];
189
+ const errors = [];
190
+ const seenAssertions = /* @__PURE__ */ new Set();
191
+ if (!Array.isArray(value)) {
192
+ return {
193
+ assertions,
194
+ entities: [],
195
+ relations: [],
196
+ topics: [],
197
+ index: emptyKnowledgeGraphIndex(),
198
+ errors: [
199
+ {
200
+ code: "invalid-assertions-input",
201
+ message: "knowledgeGraphReducerBundle: assertions input must be an array",
202
+ assertion: value
203
+ }
204
+ ],
205
+ invalidAssertions: 0
206
+ };
207
+ }
208
+ const length = safeArrayLength(value);
209
+ if (length === void 0) {
210
+ return {
211
+ assertions,
212
+ entities: [],
213
+ relations: [],
214
+ topics: [],
215
+ index: emptyKnowledgeGraphIndex(),
216
+ errors: [
217
+ {
218
+ code: "invalid-assertions-input",
219
+ message: "knowledgeGraphReducerBundle: assertions input length could not be read",
220
+ assertion: value
221
+ }
222
+ ],
223
+ invalidAssertions: 0
224
+ };
225
+ }
226
+ for (let i = 0; i < length; i += 1) {
227
+ const result = validateKnowledgeAssertion(value[i], i, policy);
228
+ if (result.error !== void 0) {
229
+ errors.push(result.error);
230
+ continue;
231
+ }
232
+ const assertion = result.assertion;
233
+ if (seenAssertions.has(assertion.id)) {
234
+ errors.push({
235
+ code: "duplicate-assertion-id",
236
+ message: "knowledgeGraphReducerBundle: duplicate assertion id",
237
+ index: i,
238
+ assertionId: assertion.id,
239
+ assertion,
240
+ validationErrors: Object.freeze([`duplicate assertion id '${assertion.id}'`])
220
241
  });
221
- const errorFacts = Object.freeze(
222
- errors.map(
223
- (error) => Object.freeze({
224
- ...error,
225
- ...error.validationErrors === void 0 ? {} : { validationErrors: Object.freeze([...error.validationErrors]) },
226
- cursor
227
- })
228
- )
229
- );
230
- ctx.down([
231
- [
232
- "DATA",
233
- Object.freeze({
234
- fragments: Object.freeze([...valid]),
235
- indexed,
236
- ranked: answer,
237
- status,
238
- errors: errorFacts,
239
- cursor
240
- })
241
- ]
242
- ]);
243
- },
244
- {
245
- name: `${name}/snapshot`,
246
- factory: "memoryRetrievalSnapshot",
247
- completeWhenDepsComplete: false,
248
- errorWhenDepsError: false
242
+ continue;
249
243
  }
250
- );
244
+ seenAssertions.add(assertion.id);
245
+ assertions.push(assertion);
246
+ }
247
+ const materialized = materializeKnowledgeGraph(assertions);
251
248
  return {
252
- input: { fragments, query },
253
- snapshot,
254
- fragments: retrievalProjection(
255
- graph,
256
- snapshot,
257
- `${name}/fragments`,
258
- "memoryRetrievalFragments",
259
- (fact) => fact.fragments
260
- ),
261
- indexed: retrievalProjection(
262
- graph,
263
- snapshot,
264
- `${name}/indexed`,
265
- "memoryRetrievalIndexed",
266
- (fact) => fact.indexed
267
- ),
268
- ranked: retrievalProjection(
269
- graph,
270
- snapshot,
271
- `${name}/ranked`,
272
- "memoryRetrievalRanked",
273
- (fact) => fact.ranked
274
- ),
275
- status: retrievalProjection(
276
- graph,
277
- snapshot,
278
- `${name}/status`,
279
- "memoryRetrievalStatus",
280
- (fact) => fact.status
281
- ),
282
- errors: retrievalProjection(
283
- graph,
284
- snapshot,
285
- `${name}/errors`,
286
- "memoryRetrievalErrors",
287
- (fact) => fact.errors
288
- ),
289
- cursor: retrievalProjection(
290
- graph,
291
- snapshot,
292
- `${name}/cursor`,
293
- "memoryRetrievalCursor",
294
- (fact) => fact.cursor
295
- )
249
+ assertions: Object.freeze(assertions),
250
+ ...materialized,
251
+ errors,
252
+ invalidAssertions: errors.filter((error) => error.code !== "invalid-policy").length
296
253
  };
297
254
  }
298
- function knowledgeGraphReducerBundle(graph, opts) {
299
- const name = opts.name ?? "knowledgeGraph";
300
- const deps = opts.policy === void 0 ? [opts.assertions] : [opts.assertions, opts.policy];
301
- const snapshot = graph.node(
302
- deps,
303
- (ctx) => {
304
- const state = ctx.state.get() ?? { evaluation: 0 };
305
- state.evaluation += 1;
306
- const policy = validateKnowledgeGraphPolicy(
307
- opts.policy === void 0 ? void 0 : depLatest(ctx, 1)
308
- );
309
- const reduced = reduceKnowledgeAssertions(depLatest(ctx, 0), policy.policy);
310
- const pendingErrors = [...policy.errors, ...reduced.errors];
311
- const cursor = Object.freeze({
312
- evaluation: state.evaluation,
313
- validAssertions: reduced.assertions.length,
314
- invalidAssertions: reduced.invalidAssertions,
315
- entityCount: reduced.entities.length,
316
- relationCount: reduced.relations.length,
317
- predicateCount: reduced.topics.length
318
- });
319
- const errors = Object.freeze(
320
- pendingErrors.map(
321
- (error) => Object.freeze({
322
- ...error,
323
- ...error.validationErrors === void 0 ? {} : { validationErrors: Object.freeze([...error.validationErrors]) },
324
- cursor
325
- })
326
- )
327
- );
328
- const status = Object.freeze({
329
- state: reduced.assertions.length === 0 && errors.length === 0 ? "empty" : errors.length === 0 ? "ready" : reduced.assertions.length > 0 ? "partial" : "error",
330
- cursor
331
- });
332
- ctx.state.set(state);
333
- ctx.down([
334
- [
335
- "DATA",
336
- Object.freeze({
337
- assertions: Object.freeze(reduced.assertions),
338
- entities: Object.freeze(reduced.entities),
339
- relations: Object.freeze(reduced.relations),
340
- topics: Object.freeze(reduced.topics),
341
- index: reduced.index,
342
- status,
343
- errors,
344
- cursor
345
- })
346
- ]
347
- ]);
348
- },
349
- {
350
- name: `${name}/snapshot`,
351
- factory: "knowledgeGraphReducerSnapshot",
352
- completeWhenDepsComplete: false,
353
- errorWhenDepsError: false
354
- }
355
- );
356
- return {
357
- input: {
358
- assertions: opts.assertions,
359
- ...opts.policy === void 0 ? {} : { policy: opts.policy }
360
- },
361
- snapshot,
362
- assertions: kgProjection(
363
- graph,
364
- snapshot,
365
- `${name}/assertions`,
366
- "knowledgeGraphAssertions",
367
- (fact) => fact.assertions
368
- ),
369
- entities: kgProjection(
370
- graph,
371
- snapshot,
372
- `${name}/entities`,
373
- "knowledgeGraphEntities",
374
- (fact) => fact.entities
375
- ),
376
- relations: kgProjection(
377
- graph,
378
- snapshot,
379
- `${name}/relations`,
380
- "knowledgeGraphRelations",
381
- (fact) => fact.relations
382
- ),
383
- topics: kgProjection(
384
- graph,
385
- snapshot,
386
- `${name}/topics`,
387
- "knowledgeGraphTopics",
388
- (fact) => fact.topics
389
- ),
390
- index: kgProjection(
391
- graph,
392
- snapshot,
393
- `${name}/index`,
394
- "knowledgeGraphIndex",
395
- (fact) => fact.index
396
- ),
397
- status: kgProjection(
398
- graph,
399
- snapshot,
400
- `${name}/status`,
401
- "knowledgeGraphStatus",
402
- (fact) => fact.status
403
- ),
404
- errors: kgProjection(
405
- graph,
406
- snapshot,
407
- `${name}/errors`,
408
- "knowledgeGraphErrors",
409
- (fact) => fact.errors
410
- ),
411
- cursor: kgProjection(
412
- graph,
413
- snapshot,
414
- `${name}/cursor`,
415
- "knowledgeGraphCursor",
416
- (fact) => fact.cursor
417
- )
418
- };
419
- }
420
- function retrievalProjection(graph, snapshot, name, factory, select) {
421
- return graph.node(
422
- [snapshot],
423
- (ctx) => {
424
- for (const raw of depBatch(ctx, 0) ?? []) {
425
- const fact = raw;
426
- const selected = select(fact);
427
- if (selected !== void 0) ctx.down([["DATA", selected]]);
428
- }
429
- },
430
- {
431
- name,
432
- factory,
433
- completeWhenDepsComplete: false,
434
- errorWhenDepsError: false
435
- }
436
- );
437
- }
438
- function kgProjection(graph, snapshot, name, factory, select) {
439
- return graph.node(
440
- [snapshot],
441
- (ctx) => {
442
- for (const raw of depBatch(ctx, 0) ?? []) {
443
- ctx.down([["DATA", select(raw)]]);
444
- }
445
- },
446
- {
447
- name,
448
- factory,
449
- completeWhenDepsComplete: false,
450
- errorWhenDepsError: false
451
- }
452
- );
453
- }
454
- function validateKnowledgeGraphPolicy(value) {
455
- if (value === void 0) return { policy: void 0, errors: [] };
255
+ function validateKnowledgeAssertion(value, index, policy) {
456
256
  if (!isPlainObject(value)) {
457
- return {
458
- errors: [
459
- {
460
- code: "invalid-policy",
461
- message: "knowledgeGraphReducerBundle: policy must be an object",
462
- assertion: value
463
- }
464
- ]
465
- };
257
+ return invalidKnowledgeAssertion(index, value, ["assertion must be an object"]);
466
258
  }
259
+ const raw = value;
467
260
  const errors = [];
468
- const policy = value;
469
- if (policy.allowedPredicates !== void 0 && !isDenseArrayOf2(policy.allowedPredicates, (item) => typeof item === "string")) {
470
- errors.push("allowedPredicates must be a readonly string array");
261
+ if (!isNonEmptyString(raw.id)) errors.push("id must be a non-empty string");
262
+ if (!isKnowledgeSubject(raw.subject)) errors.push("subject.id must be a non-empty string");
263
+ if (!isNonEmptyString(raw.predicate)) errors.push("predicate must be a non-empty string");
264
+ if (!isKnowledgeObject(raw.object)) errors.push("object shape is invalid");
265
+ if (raw.confidence !== void 0 && (!Number.isFinite(raw.confidence) || raw.confidence < 0 || raw.confidence > 1)) {
266
+ errors.push("confidence must be a finite number in [0, 1] when present");
471
267
  }
472
- if (policy.requireEntityTypes !== void 0 && typeof policy.requireEntityTypes !== "boolean") {
473
- errors.push("requireEntityTypes must be a boolean when present");
268
+ if (raw.sources !== void 0 && !isDenseArrayOf2(raw.sources, isNonEmptyString)) {
269
+ errors.push("sources must be a readonly non-empty string array when present");
270
+ }
271
+ if (policy?.allowedPredicates !== void 0 && !policy.allowedPredicates.includes(raw.predicate ?? "")) {
272
+ errors.push(`predicate '${String(raw.predicate)}' is not allowed by policy`);
273
+ }
274
+ if (policy?.requireEntityTypes === true) {
275
+ if (isKnowledgeSubject(raw.subject) && raw.subject.type === void 0) {
276
+ errors.push("subject.type is required by policy");
277
+ }
278
+ if (isKnowledgeObject(raw.object) && raw.object.kind === "entity" && raw.object.type === void 0) {
279
+ errors.push("object.type is required by policy for entity objects");
280
+ }
474
281
  }
475
282
  if (errors.length > 0) {
476
- return {
477
- errors: [
478
- {
479
- code: "invalid-policy",
480
- message: "knowledgeGraphReducerBundle: policy is invalid",
481
- assertion: value,
482
- validationErrors: Object.freeze(errors)
483
- }
484
- ]
485
- };
283
+ return invalidKnowledgeAssertion(index, value, errors, raw.id);
486
284
  }
487
285
  return {
488
- policy: Object.freeze({
489
- ...policy.allowedPredicates === void 0 ? {} : { allowedPredicates: Object.freeze([...policy.allowedPredicates]) },
490
- ...policy.requireEntityTypes === void 0 ? {} : { requireEntityTypes: policy.requireEntityTypes }
491
- }),
492
- errors: []
493
- };
494
- }
495
- function reduceKnowledgeAssertions(value, policy) {
496
- const assertions = [];
497
- const errors = [];
498
- const seenAssertions = /* @__PURE__ */ new Set();
499
- if (!Array.isArray(value)) {
500
- return {
501
- assertions,
502
- entities: [],
503
- relations: [],
504
- topics: [],
505
- index: emptyKnowledgeGraphIndex(),
506
- errors: [
507
- {
508
- code: "invalid-assertions-input",
509
- message: "knowledgeGraphReducerBundle: assertions input must be an array",
510
- assertion: value
511
- }
512
- ],
513
- invalidAssertions: 0
514
- };
515
- }
516
- const length = safeArrayLength(value);
517
- if (length === void 0) {
518
- return {
519
- assertions,
520
- entities: [],
521
- relations: [],
522
- topics: [],
523
- index: emptyKnowledgeGraphIndex(),
524
- errors: [
525
- {
526
- code: "invalid-assertions-input",
527
- message: "knowledgeGraphReducerBundle: assertions input length could not be read",
528
- assertion: value
529
- }
530
- ],
531
- invalidAssertions: 0
532
- };
533
- }
534
- for (let i = 0; i < length; i += 1) {
535
- const result = validateKnowledgeAssertion(value[i], i, policy);
536
- if (result.error !== void 0) {
537
- errors.push(result.error);
538
- continue;
539
- }
540
- const assertion = result.assertion;
541
- if (seenAssertions.has(assertion.id)) {
542
- errors.push({
543
- code: "duplicate-assertion-id",
544
- message: "knowledgeGraphReducerBundle: duplicate assertion id",
545
- index: i,
546
- assertionId: assertion.id,
547
- assertion,
548
- validationErrors: Object.freeze([`duplicate assertion id '${assertion.id}'`])
549
- });
550
- continue;
551
- }
552
- seenAssertions.add(assertion.id);
553
- assertions.push(assertion);
554
- }
555
- const materialized = materializeKnowledgeGraph(assertions);
556
- return {
557
- assertions: Object.freeze(assertions),
558
- ...materialized,
559
- errors,
560
- invalidAssertions: errors.filter((error) => error.code !== "invalid-policy").length
561
- };
562
- }
563
- function validateKnowledgeAssertion(value, index, policy) {
564
- if (!isPlainObject(value)) {
565
- return invalidKnowledgeAssertion(index, value, ["assertion must be an object"]);
566
- }
567
- const raw = value;
568
- const errors = [];
569
- if (!isNonEmptyString(raw.id)) errors.push("id must be a non-empty string");
570
- if (!isKnowledgeSubject(raw.subject)) errors.push("subject.id must be a non-empty string");
571
- if (!isNonEmptyString(raw.predicate)) errors.push("predicate must be a non-empty string");
572
- if (!isKnowledgeObject(raw.object)) errors.push("object shape is invalid");
573
- if (raw.confidence !== void 0 && (!Number.isFinite(raw.confidence) || raw.confidence < 0 || raw.confidence > 1)) {
574
- errors.push("confidence must be a finite number in [0, 1] when present");
575
- }
576
- if (raw.sources !== void 0 && !isDenseArrayOf2(raw.sources, isNonEmptyString)) {
577
- errors.push("sources must be a readonly non-empty string array when present");
578
- }
579
- if (policy?.allowedPredicates !== void 0 && !policy.allowedPredicates.includes(raw.predicate ?? "")) {
580
- errors.push(`predicate '${String(raw.predicate)}' is not allowed by policy`);
581
- }
582
- if (policy?.requireEntityTypes === true) {
583
- if (isKnowledgeSubject(raw.subject) && raw.subject.type === void 0) {
584
- errors.push("subject.type is required by policy");
585
- }
586
- if (isKnowledgeObject(raw.object) && raw.object.kind === "entity" && raw.object.type === void 0) {
587
- errors.push("object.type is required by policy for entity objects");
588
- }
589
- }
590
- if (errors.length > 0) {
591
- return invalidKnowledgeAssertion(index, value, errors, raw.id);
592
- }
593
- return {
594
- assertion: Object.freeze({
595
- id: raw.id,
596
- ...raw.recordId === void 0 ? {} : { recordId: raw.recordId },
597
- ...raw.fragmentId === void 0 ? {} : { fragmentId: raw.fragmentId },
598
- subject: snapshotSubject(raw.subject),
599
- predicate: raw.predicate,
600
- object: snapshotObject(raw.object),
601
- ...raw.confidence === void 0 ? {} : { confidence: raw.confidence },
602
- sources: Object.freeze([...raw.sources ?? []]),
603
- ...raw.provenance === void 0 ? {} : { provenance: raw.provenance }
604
- })
286
+ assertion: Object.freeze({
287
+ id: raw.id,
288
+ ...raw.recordId === void 0 ? {} : { recordId: raw.recordId },
289
+ ...raw.fragmentId === void 0 ? {} : { fragmentId: raw.fragmentId },
290
+ subject: snapshotSubject(raw.subject),
291
+ predicate: raw.predicate,
292
+ object: snapshotObject(raw.object),
293
+ ...raw.confidence === void 0 ? {} : { confidence: raw.confidence },
294
+ sources: Object.freeze([...raw.sources ?? []]),
295
+ ...raw.provenance === void 0 ? {} : { provenance: raw.provenance }
296
+ })
605
297
  };
606
298
  }
607
299
  function invalidKnowledgeAssertion(index, assertion, validationErrors, assertionId) {
@@ -949,6 +641,316 @@ function compareBigIntDesc2(a, b) {
949
641
  return a > b ? -1 : 1;
950
642
  }
951
643
 
644
+ // src/patterns/semantic-memory-graph.ts
645
+ function memoryRetrievalBundle(graph, opts) {
646
+ const name = opts.name ?? "memoryRetrieval";
647
+ const { fragments, query } = opts;
648
+ const snapshot = graph.node(
649
+ [fragments, query],
650
+ (ctx) => {
651
+ const state = ctx.state.get() ?? { evaluation: 0 };
652
+ state.evaluation += 1;
653
+ const rawFragments = depLatest(ctx, 0);
654
+ const rawQuery = depLatest(ctx, 1);
655
+ const queryValidation = validateMemoryRetrievalQuery(rawQuery);
656
+ const currentQuery = queryValidation.query;
657
+ const valid = [];
658
+ const seenIds = /* @__PURE__ */ new Set();
659
+ const errors = [...queryValidation.errors];
660
+ if (!Array.isArray(rawFragments)) {
661
+ errors.push({
662
+ code: "invalid-fragments-input",
663
+ message: "memoryRetrievalBundle: fragments input must be an array",
664
+ fragment: rawFragments
665
+ });
666
+ } else {
667
+ const length = safeArrayLength(rawFragments);
668
+ if (length === void 0) {
669
+ errors.push({
670
+ code: "invalid-fragments-input",
671
+ message: "memoryRetrievalBundle: fragments input length could not be read",
672
+ fragment: rawFragments
673
+ });
674
+ }
675
+ for (let i = 0; i < (length ?? 0); i += 1) {
676
+ const result = validateAndSnapshotFragment(rawFragments, i);
677
+ if (result.error !== void 0) {
678
+ errors.push(result.error);
679
+ continue;
680
+ }
681
+ const fragment = result.fragment;
682
+ if (seenIds.has(fragment.id)) {
683
+ errors.push({
684
+ code: "duplicate-fragment-id",
685
+ message: "memoryRetrievalBundle: duplicate fragment id",
686
+ index: i,
687
+ fragment,
688
+ validationErrors: [`duplicate fragment id '${fragment.id}'`]
689
+ });
690
+ continue;
691
+ }
692
+ seenIds.add(fragment.id);
693
+ valid.push(fragment);
694
+ }
695
+ }
696
+ const ranked = errors.some((error) => !isRecoverableFragmentError(error)) ? [] : rankFragments(valid, currentQuery);
697
+ const cursor = Object.freeze({
698
+ evaluation: state.evaluation,
699
+ validFragments: valid.length,
700
+ invalidFragments: errors.filter(
701
+ (error) => error.code === "invalid-fragment" || error.code === "duplicate-fragment-id"
702
+ ).length,
703
+ resultCount: ranked.length
704
+ });
705
+ ctx.state.set(state);
706
+ const answer = Object.freeze({
707
+ query: currentQuery,
708
+ results: Object.freeze(ranked)
709
+ });
710
+ const status = Object.freeze({
711
+ state: statusState(errors, ranked.length),
712
+ query: currentQuery,
713
+ cursor
714
+ });
715
+ const indexed = Object.freeze({
716
+ ids: Object.freeze(valid.map((fragment) => fragment.id)),
717
+ byId: indexById(valid),
718
+ cursor
719
+ });
720
+ const errorFacts = Object.freeze(
721
+ errors.map(
722
+ (error) => Object.freeze({
723
+ ...error,
724
+ ...error.validationErrors === void 0 ? {} : { validationErrors: Object.freeze([...error.validationErrors]) },
725
+ cursor
726
+ })
727
+ )
728
+ );
729
+ ctx.down([
730
+ [
731
+ "DATA",
732
+ Object.freeze({
733
+ fragments: Object.freeze([...valid]),
734
+ indexed,
735
+ ranked: answer,
736
+ status,
737
+ errors: errorFacts,
738
+ cursor
739
+ })
740
+ ]
741
+ ]);
742
+ },
743
+ {
744
+ name: `${name}/snapshot`,
745
+ factory: "memoryRetrievalSnapshot",
746
+ completeWhenDepsComplete: false,
747
+ errorWhenDepsError: false
748
+ }
749
+ );
750
+ return {
751
+ input: { fragments, query },
752
+ snapshot,
753
+ fragments: retrievalProjection(
754
+ graph,
755
+ snapshot,
756
+ `${name}/fragments`,
757
+ "memoryRetrievalFragments",
758
+ (fact) => fact.fragments
759
+ ),
760
+ indexed: retrievalProjection(
761
+ graph,
762
+ snapshot,
763
+ `${name}/indexed`,
764
+ "memoryRetrievalIndexed",
765
+ (fact) => fact.indexed
766
+ ),
767
+ ranked: retrievalProjection(
768
+ graph,
769
+ snapshot,
770
+ `${name}/ranked`,
771
+ "memoryRetrievalRanked",
772
+ (fact) => fact.ranked
773
+ ),
774
+ status: retrievalProjection(
775
+ graph,
776
+ snapshot,
777
+ `${name}/status`,
778
+ "memoryRetrievalStatus",
779
+ (fact) => fact.status
780
+ ),
781
+ errors: retrievalProjection(
782
+ graph,
783
+ snapshot,
784
+ `${name}/errors`,
785
+ "memoryRetrievalErrors",
786
+ (fact) => fact.errors
787
+ ),
788
+ cursor: retrievalProjection(
789
+ graph,
790
+ snapshot,
791
+ `${name}/cursor`,
792
+ "memoryRetrievalCursor",
793
+ (fact) => fact.cursor
794
+ )
795
+ };
796
+ }
797
+ function knowledgeGraphReducerBundle(graph, opts) {
798
+ const name = opts.name ?? "knowledgeGraph";
799
+ const deps = opts.policy === void 0 ? [opts.assertions] : [opts.assertions, opts.policy];
800
+ const snapshot = graph.node(
801
+ deps,
802
+ (ctx) => {
803
+ const state = ctx.state.get() ?? { evaluation: 0 };
804
+ state.evaluation += 1;
805
+ const policy = validateKnowledgeGraphPolicy(
806
+ opts.policy === void 0 ? void 0 : depLatest(ctx, 1)
807
+ );
808
+ const reduced = reduceKnowledgeAssertions(depLatest(ctx, 0), policy.policy);
809
+ const pendingErrors = [...policy.errors, ...reduced.errors];
810
+ const cursor = Object.freeze({
811
+ evaluation: state.evaluation,
812
+ validAssertions: reduced.assertions.length,
813
+ invalidAssertions: reduced.invalidAssertions,
814
+ entityCount: reduced.entities.length,
815
+ relationCount: reduced.relations.length,
816
+ predicateCount: reduced.topics.length
817
+ });
818
+ const errors = Object.freeze(
819
+ pendingErrors.map(
820
+ (error) => Object.freeze({
821
+ ...error,
822
+ ...error.validationErrors === void 0 ? {} : { validationErrors: Object.freeze([...error.validationErrors]) },
823
+ cursor
824
+ })
825
+ )
826
+ );
827
+ const status = Object.freeze({
828
+ state: reduced.assertions.length === 0 && errors.length === 0 ? "empty" : errors.length === 0 ? "ready" : reduced.assertions.length > 0 ? "partial" : "error",
829
+ cursor
830
+ });
831
+ ctx.state.set(state);
832
+ ctx.down([
833
+ [
834
+ "DATA",
835
+ Object.freeze({
836
+ assertions: Object.freeze(reduced.assertions),
837
+ entities: Object.freeze(reduced.entities),
838
+ relations: Object.freeze(reduced.relations),
839
+ topics: Object.freeze(reduced.topics),
840
+ index: reduced.index,
841
+ status,
842
+ errors,
843
+ cursor
844
+ })
845
+ ]
846
+ ]);
847
+ },
848
+ {
849
+ name: `${name}/snapshot`,
850
+ factory: "knowledgeGraphReducerSnapshot",
851
+ completeWhenDepsComplete: false,
852
+ errorWhenDepsError: false
853
+ }
854
+ );
855
+ return {
856
+ input: {
857
+ assertions: opts.assertions,
858
+ ...opts.policy === void 0 ? {} : { policy: opts.policy }
859
+ },
860
+ snapshot,
861
+ assertions: kgProjection(
862
+ graph,
863
+ snapshot,
864
+ `${name}/assertions`,
865
+ "knowledgeGraphAssertions",
866
+ (fact) => fact.assertions
867
+ ),
868
+ entities: kgProjection(
869
+ graph,
870
+ snapshot,
871
+ `${name}/entities`,
872
+ "knowledgeGraphEntities",
873
+ (fact) => fact.entities
874
+ ),
875
+ relations: kgProjection(
876
+ graph,
877
+ snapshot,
878
+ `${name}/relations`,
879
+ "knowledgeGraphRelations",
880
+ (fact) => fact.relations
881
+ ),
882
+ topics: kgProjection(
883
+ graph,
884
+ snapshot,
885
+ `${name}/topics`,
886
+ "knowledgeGraphTopics",
887
+ (fact) => fact.topics
888
+ ),
889
+ index: kgProjection(
890
+ graph,
891
+ snapshot,
892
+ `${name}/index`,
893
+ "knowledgeGraphIndex",
894
+ (fact) => fact.index
895
+ ),
896
+ status: kgProjection(
897
+ graph,
898
+ snapshot,
899
+ `${name}/status`,
900
+ "knowledgeGraphStatus",
901
+ (fact) => fact.status
902
+ ),
903
+ errors: kgProjection(
904
+ graph,
905
+ snapshot,
906
+ `${name}/errors`,
907
+ "knowledgeGraphErrors",
908
+ (fact) => fact.errors
909
+ ),
910
+ cursor: kgProjection(
911
+ graph,
912
+ snapshot,
913
+ `${name}/cursor`,
914
+ "knowledgeGraphCursor",
915
+ (fact) => fact.cursor
916
+ )
917
+ };
918
+ }
919
+ function retrievalProjection(graph, snapshot, name, factory, select) {
920
+ return graph.node(
921
+ [snapshot],
922
+ (ctx) => {
923
+ for (const raw of depBatch(ctx, 0) ?? []) {
924
+ const fact = raw;
925
+ const selected = select(fact);
926
+ if (selected !== void 0) ctx.down([["DATA", selected]]);
927
+ }
928
+ },
929
+ {
930
+ name,
931
+ factory,
932
+ completeWhenDepsComplete: false,
933
+ errorWhenDepsError: false
934
+ }
935
+ );
936
+ }
937
+ function kgProjection(graph, snapshot, name, factory, select) {
938
+ return graph.node(
939
+ [snapshot],
940
+ (ctx) => {
941
+ for (const raw of depBatch(ctx, 0) ?? []) {
942
+ ctx.down([["DATA", select(raw)]]);
943
+ }
944
+ },
945
+ {
946
+ name,
947
+ factory,
948
+ completeWhenDepsComplete: false,
949
+ errorWhenDepsError: false
950
+ }
951
+ );
952
+ }
953
+
952
954
  export {
953
955
  cosineSimilarity,
954
956
  memoryFragmentValidAt,
@@ -962,4 +964,4 @@ export {
962
964
  memoryRetrievalBundle,
963
965
  knowledgeGraphReducerBundle
964
966
  };
965
- //# sourceMappingURL=chunk-FBUU43PM.js.map
967
+ //# sourceMappingURL=chunk-E4QCH32M.js.map