@graphrefly/graphrefly 0.43.0 → 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (422) hide show
  1. package/README.md +21 -17
  2. package/dist/compat/index.cjs +20 -10
  3. package/dist/compat/index.cjs.map +1 -0
  4. package/dist/compat/index.d.cts +1 -22
  5. package/dist/compat/index.d.ts +1 -22
  6. package/dist/compat/index.js +3 -1
  7. package/dist/compat/index.js.map +1 -0
  8. package/dist/compat/jotai/index.cjs +21 -1
  9. package/dist/compat/jotai/index.cjs.map +1 -0
  10. package/dist/compat/jotai/index.d.cts +1 -2
  11. package/dist/compat/jotai/index.d.ts +1 -2
  12. package/dist/compat/jotai/index.js +3 -1
  13. package/dist/compat/jotai/index.js.map +1 -0
  14. package/dist/compat/nanostores/index.cjs +21 -1
  15. package/dist/compat/nanostores/index.cjs.map +1 -0
  16. package/dist/compat/nanostores/index.d.cts +1 -2
  17. package/dist/compat/nanostores/index.d.ts +1 -2
  18. package/dist/compat/nanostores/index.js +3 -1
  19. package/dist/compat/nanostores/index.js.map +1 -0
  20. package/dist/compat/nestjs/index.cjs +20 -10
  21. package/dist/compat/nestjs/index.cjs.map +1 -0
  22. package/dist/compat/nestjs/index.d.cts +1 -13
  23. package/dist/compat/nestjs/index.d.ts +1 -13
  24. package/dist/compat/nestjs/index.js +3 -1
  25. package/dist/compat/nestjs/index.js.map +1 -0
  26. package/dist/compat/react/index.cjs +21 -1
  27. package/dist/compat/react/index.cjs.map +1 -0
  28. package/dist/compat/react/index.d.cts +1 -2
  29. package/dist/compat/react/index.d.ts +1 -2
  30. package/dist/compat/react/index.js +3 -1
  31. package/dist/compat/react/index.js.map +1 -0
  32. package/dist/compat/solid/index.cjs +21 -1
  33. package/dist/compat/solid/index.cjs.map +1 -0
  34. package/dist/compat/solid/index.d.cts +1 -2
  35. package/dist/compat/solid/index.d.ts +1 -2
  36. package/dist/compat/solid/index.js +3 -1
  37. package/dist/compat/solid/index.js.map +1 -0
  38. package/dist/compat/svelte/index.cjs +21 -1
  39. package/dist/compat/svelte/index.cjs.map +1 -0
  40. package/dist/compat/svelte/index.d.cts +1 -2
  41. package/dist/compat/svelte/index.d.ts +1 -2
  42. package/dist/compat/svelte/index.js +3 -1
  43. package/dist/compat/svelte/index.js.map +1 -0
  44. package/dist/compat/vue/index.cjs +21 -1
  45. package/dist/compat/vue/index.cjs.map +1 -0
  46. package/dist/compat/vue/index.d.cts +1 -3
  47. package/dist/compat/vue/index.d.ts +1 -3
  48. package/dist/compat/vue/index.js +3 -1
  49. package/dist/compat/vue/index.js.map +1 -0
  50. package/dist/compat/zustand/index.cjs +21 -3
  51. package/dist/compat/zustand/index.cjs.map +1 -0
  52. package/dist/compat/zustand/index.d.cts +1 -6
  53. package/dist/compat/zustand/index.d.ts +1 -6
  54. package/dist/compat/zustand/index.js +3 -1
  55. package/dist/compat/zustand/index.js.map +1 -0
  56. package/dist/core/index.cjs +21 -1
  57. package/dist/core/index.cjs.map +1 -0
  58. package/dist/core/index.d.cts +1 -4
  59. package/dist/core/index.d.ts +1 -4
  60. package/dist/core/index.js +3 -1
  61. package/dist/core/index.js.map +1 -0
  62. package/dist/extra/browser.cjs +21 -1
  63. package/dist/extra/browser.cjs.map +1 -0
  64. package/dist/extra/browser.d.cts +1 -4
  65. package/dist/extra/browser.d.ts +1 -4
  66. package/dist/extra/browser.js +3 -1
  67. package/dist/extra/browser.js.map +1 -0
  68. package/dist/extra/index.cjs +20 -19
  69. package/dist/extra/index.cjs.map +1 -0
  70. package/dist/extra/index.d.cts +1 -17
  71. package/dist/extra/index.d.ts +1 -17
  72. package/dist/extra/index.js +3 -1
  73. package/dist/extra/index.js.map +1 -0
  74. package/dist/extra/node.cjs +21 -2
  75. package/dist/extra/node.cjs.map +1 -0
  76. package/dist/extra/node.d.cts +1 -187
  77. package/dist/extra/node.d.ts +1 -187
  78. package/dist/extra/node.js +3 -2
  79. package/dist/extra/node.js.map +1 -0
  80. package/dist/extra/operators.cjs +21 -1
  81. package/dist/extra/operators.cjs.map +1 -0
  82. package/dist/extra/operators.d.cts +1 -950
  83. package/dist/extra/operators.d.ts +1 -950
  84. package/dist/extra/operators.js +3 -1
  85. package/dist/extra/operators.js.map +1 -0
  86. package/dist/extra/reactive.cjs +21 -1
  87. package/dist/extra/reactive.cjs.map +1 -0
  88. package/dist/extra/reactive.d.cts +1 -353
  89. package/dist/extra/reactive.d.ts +1 -353
  90. package/dist/extra/reactive.js +3 -1
  91. package/dist/extra/reactive.js.map +1 -0
  92. package/dist/extra/render/index.cjs +21 -5
  93. package/dist/extra/render/index.cjs.map +1 -0
  94. package/dist/extra/render/index.d.cts +1 -183
  95. package/dist/extra/render/index.d.ts +1 -183
  96. package/dist/extra/render/index.js +3 -1
  97. package/dist/extra/render/index.js.map +1 -0
  98. package/dist/extra/sources.cjs +21 -3
  99. package/dist/extra/sources.cjs.map +1 -0
  100. package/dist/extra/sources.d.cts +1 -584
  101. package/dist/extra/sources.d.ts +1 -584
  102. package/dist/extra/sources.js +3 -1
  103. package/dist/extra/sources.js.map +1 -0
  104. package/dist/extra/storage-browser.cjs +21 -1
  105. package/dist/extra/storage-browser.cjs.map +1 -0
  106. package/dist/extra/storage-browser.d.cts +1 -37
  107. package/dist/extra/storage-browser.d.ts +1 -37
  108. package/dist/extra/storage-browser.js +3 -1
  109. package/dist/extra/storage-browser.js.map +1 -0
  110. package/dist/extra/storage-core.cjs +21 -1
  111. package/dist/extra/storage-core.cjs.map +1 -0
  112. package/dist/extra/storage-core.d.cts +1 -28
  113. package/dist/extra/storage-core.d.ts +1 -28
  114. package/dist/extra/storage-core.js +3 -1
  115. package/dist/extra/storage-core.js.map +1 -0
  116. package/dist/extra/storage-node.cjs +20 -0
  117. package/dist/extra/storage-node.cjs.map +1 -0
  118. package/dist/extra/storage-node.d.cts +1 -2
  119. package/dist/extra/storage-node.d.ts +1 -2
  120. package/dist/extra/storage-node.js +3 -0
  121. package/dist/extra/storage-node.js.map +1 -0
  122. package/dist/extra/storage-tiers-browser.cjs +21 -1
  123. package/dist/extra/storage-tiers-browser.cjs.map +1 -0
  124. package/dist/extra/storage-tiers-browser.d.cts +1 -120
  125. package/dist/extra/storage-tiers-browser.d.ts +1 -120
  126. package/dist/extra/storage-tiers-browser.js +3 -1
  127. package/dist/extra/storage-tiers-browser.js.map +1 -0
  128. package/dist/extra/storage-tiers-node.cjs +21 -1
  129. package/dist/extra/storage-tiers-node.cjs.map +1 -0
  130. package/dist/extra/storage-tiers-node.d.cts +1 -210
  131. package/dist/extra/storage-tiers-node.d.ts +1 -210
  132. package/dist/extra/storage-tiers-node.js +3 -1
  133. package/dist/extra/storage-tiers-node.js.map +1 -0
  134. package/dist/extra/storage-tiers.cjs +21 -1
  135. package/dist/extra/storage-tiers.cjs.map +1 -0
  136. package/dist/extra/storage-tiers.d.cts +1 -412
  137. package/dist/extra/storage-tiers.d.ts +1 -412
  138. package/dist/extra/storage-tiers.js +3 -1
  139. package/dist/extra/storage-tiers.js.map +1 -0
  140. package/dist/extra/storage-wal.cjs +21 -0
  141. package/dist/extra/storage-wal.cjs.map +1 -0
  142. package/dist/extra/storage-wal.d.cts +1 -0
  143. package/dist/extra/storage-wal.d.ts +1 -0
  144. package/dist/extra/storage-wal.js +3 -0
  145. package/dist/extra/storage-wal.js.map +1 -0
  146. package/dist/graph/index.cjs +21 -7
  147. package/dist/graph/index.cjs.map +1 -0
  148. package/dist/graph/index.d.cts +1 -7
  149. package/dist/graph/index.d.ts +1 -7
  150. package/dist/graph/index.js +3 -1
  151. package/dist/graph/index.js.map +1 -0
  152. package/dist/index.cjs +20 -227
  153. package/dist/index.cjs.map +1 -0
  154. package/dist/index.d.cts +45 -96
  155. package/dist/index.d.ts +45 -96
  156. package/dist/index.js +3 -1
  157. package/dist/index.js.map +1 -0
  158. package/dist/patterns/ai/browser.cjs +20 -7
  159. package/dist/patterns/ai/browser.cjs.map +1 -0
  160. package/dist/patterns/ai/browser.d.cts +1 -127
  161. package/dist/patterns/ai/browser.d.ts +1 -127
  162. package/dist/patterns/ai/browser.js +3 -3
  163. package/dist/patterns/ai/browser.js.map +1 -0
  164. package/dist/patterns/ai/index.cjs +20 -73
  165. package/dist/patterns/ai/index.cjs.map +1 -0
  166. package/dist/patterns/ai/index.d.cts +1 -21
  167. package/dist/patterns/ai/index.d.ts +1 -21
  168. package/dist/patterns/ai/index.js +3 -1
  169. package/dist/patterns/ai/index.js.map +1 -0
  170. package/dist/patterns/ai/node.cjs +21 -1
  171. package/dist/patterns/ai/node.cjs.map +1 -0
  172. package/dist/patterns/ai/node.d.cts +1 -59
  173. package/dist/patterns/ai/node.d.ts +1 -59
  174. package/dist/patterns/ai/node.js +3 -1
  175. package/dist/patterns/ai/node.js.map +1 -0
  176. package/dist/patterns/cqrs/index.cjs +21 -3
  177. package/dist/patterns/cqrs/index.cjs.map +1 -0
  178. package/dist/patterns/cqrs/index.d.cts +1 -8
  179. package/dist/patterns/cqrs/index.d.ts +1 -8
  180. package/dist/patterns/cqrs/index.js +3 -1
  181. package/dist/patterns/cqrs/index.js.map +1 -0
  182. package/dist/patterns/demo-shell/index.cjs +21 -5
  183. package/dist/patterns/demo-shell/index.cjs.map +1 -0
  184. package/dist/patterns/demo-shell/index.d.cts +1 -7
  185. package/dist/patterns/demo-shell/index.d.ts +1 -7
  186. package/dist/patterns/demo-shell/index.js +3 -1
  187. package/dist/patterns/demo-shell/index.js.map +1 -0
  188. package/dist/patterns/domain-templates/index.cjs +21 -3
  189. package/dist/patterns/domain-templates/index.cjs.map +1 -0
  190. package/dist/patterns/domain-templates/index.d.cts +1 -6
  191. package/dist/patterns/domain-templates/index.d.ts +1 -6
  192. package/dist/patterns/domain-templates/index.js +3 -1
  193. package/dist/patterns/domain-templates/index.js.map +1 -0
  194. package/dist/patterns/graphspec/index.cjs +21 -86
  195. package/dist/patterns/graphspec/index.cjs.map +1 -0
  196. package/dist/patterns/graphspec/index.d.cts +1 -8
  197. package/dist/patterns/graphspec/index.d.ts +1 -8
  198. package/dist/patterns/graphspec/index.js +3 -1
  199. package/dist/patterns/graphspec/index.js.map +1 -0
  200. package/dist/patterns/harness/index.cjs +21 -48
  201. package/dist/patterns/harness/index.cjs.map +1 -0
  202. package/dist/patterns/harness/index.d.cts +1 -14
  203. package/dist/patterns/harness/index.d.ts +1 -14
  204. package/dist/patterns/harness/index.js +3 -1
  205. package/dist/patterns/harness/index.js.map +1 -0
  206. package/dist/patterns/inspect/index.cjs +21 -3
  207. package/dist/patterns/inspect/index.cjs.map +1 -0
  208. package/dist/patterns/inspect/index.d.cts +1 -9
  209. package/dist/patterns/inspect/index.d.ts +1 -9
  210. package/dist/patterns/inspect/index.js +3 -1
  211. package/dist/patterns/inspect/index.js.map +1 -0
  212. package/dist/patterns/job-queue/index.cjs +21 -3
  213. package/dist/patterns/job-queue/index.cjs.map +1 -0
  214. package/dist/patterns/job-queue/index.d.cts +1 -9
  215. package/dist/patterns/job-queue/index.d.ts +1 -9
  216. package/dist/patterns/job-queue/index.js +3 -1
  217. package/dist/patterns/job-queue/index.js.map +1 -0
  218. package/dist/patterns/memory/index.cjs +21 -3
  219. package/dist/patterns/memory/index.cjs.map +1 -0
  220. package/dist/patterns/memory/index.d.cts +1 -8
  221. package/dist/patterns/memory/index.d.ts +1 -8
  222. package/dist/patterns/memory/index.js +3 -1
  223. package/dist/patterns/memory/index.js.map +1 -0
  224. package/dist/patterns/messaging/index.cjs +21 -3
  225. package/dist/patterns/messaging/index.cjs.map +1 -0
  226. package/dist/patterns/messaging/index.d.cts +1 -7
  227. package/dist/patterns/messaging/index.d.ts +1 -7
  228. package/dist/patterns/messaging/index.js +3 -1
  229. package/dist/patterns/messaging/index.js.map +1 -0
  230. package/dist/patterns/orchestration/index.cjs +21 -3
  231. package/dist/patterns/orchestration/index.cjs.map +1 -0
  232. package/dist/patterns/orchestration/index.d.cts +1 -9
  233. package/dist/patterns/orchestration/index.d.ts +1 -9
  234. package/dist/patterns/orchestration/index.js +3 -1
  235. package/dist/patterns/orchestration/index.js.map +1 -0
  236. package/dist/patterns/process/index.cjs +21 -1
  237. package/dist/patterns/process/index.cjs.map +1 -0
  238. package/dist/patterns/process/index.d.cts +1 -10
  239. package/dist/patterns/process/index.d.ts +1 -10
  240. package/dist/patterns/process/index.js +3 -1
  241. package/dist/patterns/process/index.js.map +1 -0
  242. package/dist/patterns/reactive-layout/index.cjs +21 -4
  243. package/dist/patterns/reactive-layout/index.cjs.map +1 -0
  244. package/dist/patterns/reactive-layout/index.d.cts +1 -7
  245. package/dist/patterns/reactive-layout/index.d.ts +1 -7
  246. package/dist/patterns/reactive-layout/index.js +3 -1
  247. package/dist/patterns/reactive-layout/index.js.map +1 -0
  248. package/dist/patterns/reduction/index.cjs +21 -3
  249. package/dist/patterns/reduction/index.cjs.map +1 -0
  250. package/dist/patterns/reduction/index.d.cts +1 -6
  251. package/dist/patterns/reduction/index.d.ts +1 -6
  252. package/dist/patterns/reduction/index.js +3 -1
  253. package/dist/patterns/reduction/index.js.map +1 -0
  254. package/dist/patterns/surface/index.cjs +21 -13
  255. package/dist/patterns/surface/index.cjs.map +1 -0
  256. package/dist/patterns/surface/index.d.cts +1 -9
  257. package/dist/patterns/surface/index.d.ts +1 -9
  258. package/dist/patterns/surface/index.js +3 -1
  259. package/dist/patterns/surface/index.js.map +1 -0
  260. package/dist/patterns/topology-view/index.cjs +21 -0
  261. package/dist/patterns/topology-view/index.cjs.map +1 -0
  262. package/dist/patterns/topology-view/index.d.cts +1 -0
  263. package/dist/patterns/topology-view/index.d.ts +1 -0
  264. package/dist/patterns/topology-view/index.js +3 -0
  265. package/dist/patterns/topology-view/index.js.map +1 -0
  266. package/dist/testing/index.cjs +21 -0
  267. package/dist/testing/index.cjs.map +1 -0
  268. package/dist/testing/index.d.cts +1 -0
  269. package/dist/testing/index.d.ts +1 -0
  270. package/dist/testing/index.js +3 -0
  271. package/dist/testing/index.js.map +1 -0
  272. package/package.json +608 -584
  273. package/dist/backoff-HPZMEZNF.js +0 -1
  274. package/dist/cascading-CH-_VwG9.d.cts +0 -199
  275. package/dist/cascading-OgKQZjsa.d.ts +0 -199
  276. package/dist/chunk-35JTVPOX.js +0 -1
  277. package/dist/chunk-3G5U5QNE.js +0 -5
  278. package/dist/chunk-3XDYJRYU.js +0 -1
  279. package/dist/chunk-4I45FVQS.js +0 -1
  280. package/dist/chunk-4VVTGLXJ.js +0 -1
  281. package/dist/chunk-4YAN45KM.js +0 -1
  282. package/dist/chunk-5QDBSZBV.js +0 -1
  283. package/dist/chunk-626TESAC.js +0 -3
  284. package/dist/chunk-6HOSXQKF.js +0 -1
  285. package/dist/chunk-6QZNQS5B.js +0 -1
  286. package/dist/chunk-C72GO4IZ.js +0 -1
  287. package/dist/chunk-CE72X3WO.js +0 -1
  288. package/dist/chunk-CK2E7BTU.js +0 -1
  289. package/dist/chunk-CLD3F4R5.js +0 -1
  290. package/dist/chunk-CUNIRONA.js +0 -1
  291. package/dist/chunk-D27JNOLZ.js +0 -1
  292. package/dist/chunk-D5RFJOZ2.js +0 -1
  293. package/dist/chunk-EBW4V6JN.js +0 -1
  294. package/dist/chunk-ESMPEKEV.js +0 -1
  295. package/dist/chunk-F3IGTWCQ.js +0 -1
  296. package/dist/chunk-F672GV32.js +0 -1
  297. package/dist/chunk-FDQGFWLF.js +0 -1
  298. package/dist/chunk-FG4TKHMC.js +0 -1
  299. package/dist/chunk-GPW2V3RE.js +0 -1
  300. package/dist/chunk-I7IGYPSL.js +0 -1
  301. package/dist/chunk-INQD2KRQ.js +0 -1
  302. package/dist/chunk-JNWRYDJN.js +0 -1
  303. package/dist/chunk-JQFH2DV6.js +0 -1
  304. package/dist/chunk-K2Q24F5T.js +0 -1
  305. package/dist/chunk-KGKJCHEK.js +0 -1
  306. package/dist/chunk-KRH66M4O.js +0 -1
  307. package/dist/chunk-KVV66NN2.js +0 -1
  308. package/dist/chunk-L6NSJVJZ.js +0 -1
  309. package/dist/chunk-LYCLF26R.js +0 -1
  310. package/dist/chunk-NNKJUORL.js +0 -1
  311. package/dist/chunk-NON4NLIC.js +0 -45
  312. package/dist/chunk-O2BLLH7M.js +0 -18
  313. package/dist/chunk-OCKEEPRJ.js +0 -2
  314. package/dist/chunk-OFZG3TB3.js +0 -9
  315. package/dist/chunk-OYJKFY7V.js +0 -1
  316. package/dist/chunk-P6C4WHZO.js +0 -5
  317. package/dist/chunk-PT7W5FCD.js +0 -5
  318. package/dist/chunk-Q4U3A3L5.js +0 -1
  319. package/dist/chunk-QE4IGY7I.js +0 -61
  320. package/dist/chunk-QYADASLV.js +0 -1
  321. package/dist/chunk-QYVXF7GW.js +0 -1
  322. package/dist/chunk-S3EEIPO7.js +0 -1
  323. package/dist/chunk-SUWT3ZON.js +0 -1
  324. package/dist/chunk-TPKQW72B.js +0 -1
  325. package/dist/chunk-TSOYJ743.js +0 -1
  326. package/dist/chunk-TZQPPQEQ.js +0 -1
  327. package/dist/chunk-V5A7M7RJ.js +0 -1
  328. package/dist/chunk-VIMF6LGM.js +0 -1
  329. package/dist/chunk-VJLMUKOI.js +0 -1
  330. package/dist/chunk-VN6RDSK2.js +0 -1
  331. package/dist/chunk-VNC3TMVY.js +0 -1
  332. package/dist/chunk-VOPGGIL7.js +0 -1
  333. package/dist/chunk-VQ4A6T2A.js +0 -1
  334. package/dist/chunk-XG62INFA.js +0 -1
  335. package/dist/chunk-Y4NI3X7O.js +0 -84
  336. package/dist/content-addressed-storage-4-ST1tYk.d.cts +0 -124
  337. package/dist/content-addressed-storage-DuYMjV7o.d.ts +0 -124
  338. package/dist/decay-2ZukgQ4o.d.cts +0 -112
  339. package/dist/decay-CdEBmDIs.d.ts +0 -112
  340. package/dist/fallback-CqYVLL6X.d.ts +0 -250
  341. package/dist/fallback-Ctlj2tMY.d.cts +0 -250
  342. package/dist/graph-7VguS7a4.d.ts +0 -1668
  343. package/dist/graph-C4SHb3Ly.d.cts +0 -1668
  344. package/dist/index-0rKFCVFp.d.cts +0 -557
  345. package/dist/index-B-i4_g3k.d.ts +0 -651
  346. package/dist/index-B5iz82A3.d.cts +0 -2655
  347. package/dist/index-BAOD98JD.d.cts +0 -754
  348. package/dist/index-BG0BN3PB.d.ts +0 -44
  349. package/dist/index-BJX94aud.d.cts +0 -34
  350. package/dist/index-BP8a88zx.d.ts +0 -385
  351. package/dist/index-BTQtTb_H.d.cts +0 -301
  352. package/dist/index-BVpm6noz.d.cts +0 -36
  353. package/dist/index-Bc41FuHp.d.cts +0 -291
  354. package/dist/index-BdGtBX-X.d.cts +0 -515
  355. package/dist/index-Bf7eqeSF.d.ts +0 -113
  356. package/dist/index-BiX1Nkgx.d.cts +0 -1844
  357. package/dist/index-BoLv_OfD.d.cts +0 -651
  358. package/dist/index-BojK2fwH.d.cts +0 -299
  359. package/dist/index-BsT7F2et.d.ts +0 -291
  360. package/dist/index-BwLvVVsy.d.cts +0 -189
  361. package/dist/index-C59mYFKp.d.ts +0 -121
  362. package/dist/index-C7O6r5fV.d.ts +0 -37
  363. package/dist/index-C9kSENB4.d.cts +0 -127
  364. package/dist/index-C9pjcz3l.d.cts +0 -209
  365. package/dist/index-CAC_rNzm.d.ts +0 -189
  366. package/dist/index-CCq87F7t.d.ts +0 -127
  367. package/dist/index-CDXc9zKM.d.cts +0 -26
  368. package/dist/index-CJK1JkYy.d.ts +0 -36
  369. package/dist/index-CLon-IWF.d.cts +0 -374
  370. package/dist/index-COD1kVoS.d.cts +0 -468
  371. package/dist/index-CPT7C_f1.d.ts +0 -374
  372. package/dist/index-CQG3D1cp.d.ts +0 -468
  373. package/dist/index-CZQXo5tH.d.ts +0 -209
  374. package/dist/index-CZjOhcBy.d.cts +0 -113
  375. package/dist/index-ChOyVLKm.d.cts +0 -86
  376. package/dist/index-CvrqGfNS.d.ts +0 -34
  377. package/dist/index-D-AEQVLo.d.ts +0 -2655
  378. package/dist/index-D4Y1cMG0.d.ts +0 -26
  379. package/dist/index-DBHK8O6H.d.ts +0 -301
  380. package/dist/index-DBevwHj_.d.ts +0 -515
  381. package/dist/index-DIOoAZUX.d.ts +0 -45
  382. package/dist/index-DSZ3ZCHF.d.ts +0 -3402
  383. package/dist/index-Dgs8zcj7.d.ts +0 -102
  384. package/dist/index-Dh_HJ82K.d.ts +0 -299
  385. package/dist/index-Dhc7a7Xo.d.cts +0 -102
  386. package/dist/index-Dmqp7KjD.d.ts +0 -86
  387. package/dist/index-Dn-wI9g4.d.ts +0 -231
  388. package/dist/index-Du7u1lSf.d.cts +0 -385
  389. package/dist/index-DwigL4lY.d.ts +0 -1844
  390. package/dist/index-DyR7eU5S.d.cts +0 -779
  391. package/dist/index-JZUPJIJy.d.ts +0 -779
  392. package/dist/index-K0_0eR8g.d.ts +0 -557
  393. package/dist/index-O16yXPK4.d.cts +0 -3402
  394. package/dist/index-O7fucFrU.d.cts +0 -121
  395. package/dist/index-RV_yDjOX.d.cts +0 -198
  396. package/dist/index-cm1GNcWE.d.ts +0 -754
  397. package/dist/index-f5IivDUX.d.cts +0 -37
  398. package/dist/index-hHcaFlJX.d.cts +0 -45
  399. package/dist/index-tJoTcnHh.d.cts +0 -231
  400. package/dist/index-wAzD9yVj.d.ts +0 -198
  401. package/dist/index-z96luz5O.d.cts +0 -44
  402. package/dist/meta-BgVAsg9j.d.ts +0 -102
  403. package/dist/meta-vE8bxW1E.d.cts +0 -102
  404. package/dist/node-ClS5yC-B.d.cts +0 -1347
  405. package/dist/node-ClS5yC-B.d.ts +0 -1347
  406. package/dist/observable-BsBzUrcI.d.ts +0 -36
  407. package/dist/observable-DLGPPtb8.d.cts +0 -36
  408. package/dist/pipeline-graph-DPqKDk59.d.cts +0 -137
  409. package/dist/pipeline-graph-loP57TBA.d.ts +0 -137
  410. package/dist/reactive-layout-Dsvob4zD.d.cts +0 -183
  411. package/dist/reactive-layout-v7KPvxoc.d.ts +0 -183
  412. package/dist/reactive-log-B00laMSQ.d.cts +0 -223
  413. package/dist/reactive-log-BezYsbA_.d.ts +0 -223
  414. package/dist/reactive-map-48mnZ-nu.d.cts +0 -296
  415. package/dist/reactive-map-BVVPdvmi.d.ts +0 -296
  416. package/dist/resilience-YIWPK4YC.js +0 -1
  417. package/dist/sugar-DLwvMr3F.d.ts +0 -223
  418. package/dist/sugar-DyVGtczU.d.cts +0 -223
  419. package/dist/topology-tree-BNGvuG82.d.ts +0 -25
  420. package/dist/topology-tree-BSdfSwMi.d.cts +0 -25
  421. package/dist/types-B1jDWVsM.d.cts +0 -442
  422. package/dist/types-DkzUUs0H.d.ts +0 -442
@@ -1,299 +0,0 @@
1
- import { B as BaseAuditRecord } from './index-C9pjcz3l.cjs';
2
- import { a as ReactiveLogBundle } from './reactive-log-B00laMSQ.cjs';
3
- import { NodeInput } from './extra/sources.cjs';
4
- import { AppendLogStorageTier } from './extra/storage-tiers.cjs';
5
- import { C as CqrsEventMap, a as CqrsEvent, b as CqrsGraph } from './index-COD1kVoS.cjs';
6
-
7
- /**
8
- * Process Manager pattern (Phase 7 — roadmap §4.6, Audit 3 — locked 2026-04-24).
9
- *
10
- * Reactive long-running workflow primitive over CQRS event nodes.
11
- * Correlates events across aggregates, tracks per-instance state, supports
12
- * retries with backoff, and runs compensation on failure or explicit cancel.
13
- *
14
- * ## Architecture
15
- *
16
- * - Per-instance state lives in a `Map<correlationId, TState>` closure (in-memory).
17
- * The `_process_<name>_started` synthetic event is dispatched per `start()`
18
- * for an event-sourced audit trail using `correlationId` as `aggregateId`.
19
- * Future state-snapshot persistence (`_process_<name>_state`) is reserved
20
- * under the same `_process_<name>_*` namespace but not yet implemented;
21
- * see `docs/optimizations.md` "Deferred follow-ups".
22
- * - Watched-event subscriptions are imperative (coordinator role) — each
23
- * watched CQRS event type is subscribed to via `entries.subscribe(...)`.
24
- * These are NOT reactive node edges; the process manager is intentionally
25
- * a coordinator that bridges reactive CQRS events into imperative instance logic.
26
- * - Step execution uses `fromAny` to uniformly handle sync and async handlers.
27
- * - Retry delays use `setTimeout` (same sanctioned pattern as `extra/resilience.ts`
28
- * retry helper — this primitive is a coordinator, not a reactive pipeline stage).
29
- * - Timer scheduling uses `fromTimer` from `extra/sources.ts` per spec §5.8.
30
- * - Audit log uses `createAuditLog` per Audit 2.
31
- *
32
- * @module
33
- */
34
-
35
- /**
36
- * Discriminated union returned by each step handler.
37
- *
38
- * - `"success"` — step ran cleanly; update state, optionally emit
39
- * side-effect events and schedule a future synthetic event. The process
40
- * instance stays `"running"`.
41
- * - `"terminate"` — workflow complete; instance moves to `"terminated"`.
42
- * Process-specific extension to the canonical outcome enum.
43
- * - `"failure"` — triggers compensation; instance moves to `"compensated"` /
44
- * `"errored"`.
45
- *
46
- * Field name is `outcome` (matching `cqrs.DispatchRecord.outcome` and the
47
- * canonical Tier 1.6.2 / 2.3 enum). `"success"` and `"failure"` are the
48
- * canonical values; `"terminate"` is the process-specific extension for
49
- * "early-return success".
50
- */
51
- type ProcessStepResult<TState> = {
52
- outcome: "success";
53
- state: TState;
54
- emit?: readonly {
55
- type: string;
56
- payload: unknown;
57
- }[];
58
- schedule?: ProcessSchedule;
59
- } | {
60
- outcome: "terminate";
61
- state: TState;
62
- emit?: readonly {
63
- type: string;
64
- payload: unknown;
65
- }[];
66
- reason?: string;
67
- } | {
68
- outcome: "failure";
69
- error: unknown;
70
- };
71
- /**
72
- * Schedule a synthetic timer event after `afterMs` milliseconds.
73
- * When the timer fires, the synthetic event of `eventType` is routed to the
74
- * matching step (if one is registered) for this correlationId.
75
- */
76
- type ProcessSchedule = {
77
- afterMs: number;
78
- eventType: string;
79
- };
80
- /**
81
- * Step handler signature.
82
- *
83
- * Receives the current instance state and the triggering CQRS event.
84
- * Returns a {@link ProcessStepResult} — sync value, Promise, or any
85
- * {@link NodeInput} consumed via `fromAny`.
86
- */
87
- type ProcessStep<TState, EM extends CqrsEventMap, K extends keyof EM & string> = (state: TState, event: CqrsEvent<EM[K]>) => NodeInput<ProcessStepResult<TState>>;
88
- /**
89
- * Compensation handler. Runs when a step returns `outcome: "failure"`, throws, or
90
- * when `cancel(correlationId)` is called on a running instance.
91
- *
92
- * Should undo any side effects performed by prior steps (refund, cancel
93
- * reservation, etc.). Errors thrown inside compensate are swallowed and
94
- * recorded in the audit log with `status: "errored"` to prevent cascading
95
- * failure loops.
96
- */
97
- type ProcessCompensate<TState> = (state: TState, error: unknown) => NodeInput<void>;
98
- /**
99
- * Audit record for a single process instance state transition.
100
- *
101
- * Every status change (start → running → terminated / errored / compensated)
102
- * appends one record. `correlationId` is the stable process key.
103
- *
104
- * Extends {@link BaseAuditRecord} so records carry `t_ns` / `seq` /
105
- * `handlerVersion` from the cross-cutting Audit 2 schema.
106
- */
107
- interface ProcessInstance<TState> extends BaseAuditRecord {
108
- /** Stable correlation key that identifies this process instance. */
109
- readonly correlationId: string;
110
- /** Most-recent instance state at this transition. */
111
- readonly state: TState;
112
- /** Current lifecycle status after this transition. */
113
- readonly status: "running" | "terminated" | "errored" | "compensated";
114
- /** Wall-clock nanoseconds when `start()` was called. */
115
- readonly startedAt: number;
116
- /** Wall-clock nanoseconds of this transition. */
117
- readonly updatedAt: number;
118
- /** Handler version stamped at transition time (Audit 5). */
119
- readonly handlerVersion?: {
120
- id: string;
121
- version: string | number;
122
- };
123
- /** Optional human-readable reason for cancellation. Present only on `"compensated"` records produced by `cancel()`. */
124
- readonly reason?: string;
125
- }
126
- /**
127
- * Recommended `keyOf` for storage tiers keyed by correlationId (Audit 2).
128
- */
129
- declare const processInstanceKeyOf: <TState>(i: ProcessInstance<TState>) => string;
130
- /**
131
- * Options for {@link processManager}.
132
- */
133
- interface ProcessManagerOpts<TState, EM extends CqrsEventMap> {
134
- /** Initial state value for every new process instance. */
135
- readonly initial: TState;
136
- /** CQRS event types to watch for correlation routing. */
137
- readonly watching: readonly (keyof EM & string)[];
138
- /**
139
- * Per-event-type step handlers. A step is invoked when a watched event's
140
- * `correlationId` matches a running instance and the event type is in
141
- * `steps`. Events with no matching step are silently ignored.
142
- */
143
- readonly steps: {
144
- [K in keyof EM & string]?: ProcessStep<TState, EM, K>;
145
- };
146
- /**
147
- * Optional compensation handler. Runs on step `outcome: "failure"` / step throw
148
- * and on explicit `cancel()`. If omitted, instances fail silently with
149
- * status `"errored"` instead of `"compensated"`.
150
- */
151
- readonly compensate?: ProcessCompensate<TState>;
152
- /**
153
- * Optional predicate called after each `"success"` step. When it returns
154
- * `true`, the instance is moved to `"terminated"` immediately without
155
- * waiting for a `"terminate"` step result.
156
- */
157
- readonly isTerminal?: (state: TState) => boolean;
158
- /**
159
- * Maximum number of retry attempts after a step throws (not counting the
160
- * first attempt). Default: `0` (no retry — fail immediately on throw).
161
- */
162
- readonly retryMax?: number;
163
- /**
164
- * Per-retry backoff delays in milliseconds. `backoffMs[i]` is the delay
165
- * before attempt `i + 1`. If fewer entries than `retryMax`, the last entry
166
- * is repeated. Default: `[0]` (no delay).
167
- *
168
- * **Implementation note:** retry delays are implemented with `setTimeout`
169
- * (same sanctioned exception as `extra/resilience.ts`). This is a
170
- * coordinator-layer primitive — `fromTimer` would require subscribing to
171
- * an additional node per attempt, which would leak timer nodes without a
172
- * clear disposal scope.
173
- */
174
- readonly backoffMs?: readonly number[];
175
- /** Handler version tag stamped onto audit records (Audit 5). */
176
- readonly handlerVersion?: {
177
- id: string;
178
- version: string | number;
179
- };
180
- /** Optional persistence wiring (Audit 4). */
181
- readonly persistence?: {
182
- /**
183
- * Wire the per-process synthetic state event stream to append-log tiers.
184
- * Reuses `CqrsGraph.attachEventStorage` so events persist across restarts.
185
- */
186
- eventStorage?: readonly AppendLogStorageTier<CqrsEvent>[];
187
- };
188
- }
189
- /**
190
- * Result handle returned by {@link processManager}.
191
- */
192
- interface ProcessManagerResult<TState> {
193
- /**
194
- * Reactive audit log of every process instance state transition.
195
- * Every `start()`, step result, retry, cancellation, and compensation
196
- * appends a {@link ProcessInstance} record.
197
- */
198
- readonly instances: ReactiveLogBundle<ProcessInstance<TState>>;
199
- /**
200
- * Alias for {@link instances} (Audit 2 `.audit` duplication convention).
201
- */
202
- readonly audit: ReactiveLogBundle<ProcessInstance<TState>>;
203
- /**
204
- * Start a new process instance identified by `correlationId`.
205
- *
206
- * Emits a synthetic `_process_<name>_started` event into the CQRS graph
207
- * with `correlationId` as `aggregateId` so per-aggregate streams record
208
- * the process lifecycle. If the correlationId already has an active
209
- * (running) instance, this call is a no-op (idempotent).
210
- *
211
- * @param correlationId - Stable key for this workflow instance.
212
- * @param initialPayload - Optional payload carried on the start event.
213
- */
214
- start(correlationId: string, initialPayload?: unknown): void;
215
- /**
216
- * Cancel a running instance by correlationId.
217
- *
218
- * Triggers the `compensate` handler (if configured), then marks the
219
- * instance as `"compensated"`. If the instance is not running, this is
220
- * a no-op.
221
- *
222
- * @param correlationId - Instance to cancel.
223
- * @param reason - Optional human-readable reason recorded in the audit log.
224
- */
225
- cancel(correlationId: string, reason?: string): void;
226
- /**
227
- * Synchronous read of the current in-memory state for a correlationId.
228
- * Returns `undefined` if the instance does not exist or has terminated.
229
- */
230
- getState(correlationId: string): TState | undefined;
231
- /**
232
- * Release all watched-event subscriptions and stop processing new events.
233
- *
234
- * After `dispose()`, subsequent `start()` and `cancel()` calls are no-ops.
235
- * In-flight async steps complete naturally; no new steps are dispatched.
236
- */
237
- dispose(): void;
238
- }
239
- /**
240
- * Create a process manager that coordinates long-running reactive workflows
241
- * over a {@link CqrsGraph}.
242
- *
243
- * Process instances are identified by `correlationId`. Events from the watched
244
- * event types are routed to per-instance step handlers when the event's
245
- * `correlationId` matches a running instance.
246
- *
247
- * ```ts
248
- * const app = cqrs<{ orderPlaced: { orderId: string }; paymentReceived: { amount: number } }>("orders");
249
- *
250
- * const pm = processManager(app, "fulfillment", {
251
- * initial: { step: "awaiting-payment", total: 0 },
252
- * watching: ["orderPlaced", "paymentReceived"],
253
- * steps: {
254
- * orderPlaced(state, event) {
255
- * return { outcome: "success", state: { ...state, orderId: event.payload.orderId } };
256
- * },
257
- * paymentReceived(state, event) {
258
- * return { outcome: "terminate", state: { ...state, total: event.payload.amount } };
259
- * },
260
- * },
261
- * compensate(state, _error) {
262
- * // undo reservation, issue refund, etc.
263
- * },
264
- * retryMax: 2,
265
- * backoffMs: [100, 500],
266
- * });
267
- *
268
- * pm.start("order-123");
269
- * app.dispatch("orderPlaced", { orderId: "order-123" }, { correlationId: "order-123" });
270
- * ```
271
- *
272
- * @param cqrsGraph - The CQRS graph whose event streams the manager watches.
273
- * @param name - Stable identifier for this process type; used for the
274
- * synthetic event-type prefix `_process_<name>_*`. Currently emits
275
- * `_process_<name>_started` per `start()`; the prefix is reserved for
276
- * future `_state` / `_timer` channels.
277
- * @param opts - Configuration: initial state, watched events, steps, retry,
278
- * compensation, and optional persistence.
279
- * @returns {@link ProcessManagerResult} with `instances` audit log and
280
- * `start`, `cancel`, `getState` imperative controls.
281
- *
282
- * @category patterns
283
- */
284
- declare function processManager<TState, EM extends CqrsEventMap = Record<string, unknown>>(cqrsGraph: CqrsGraph<EM>, name: string, opts: ProcessManagerOpts<TState, EM>): ProcessManagerResult<TState>;
285
-
286
- type index_ProcessCompensate<TState> = ProcessCompensate<TState>;
287
- type index_ProcessInstance<TState> = ProcessInstance<TState>;
288
- type index_ProcessManagerOpts<TState, EM extends CqrsEventMap> = ProcessManagerOpts<TState, EM>;
289
- type index_ProcessManagerResult<TState> = ProcessManagerResult<TState>;
290
- type index_ProcessSchedule = ProcessSchedule;
291
- type index_ProcessStep<TState, EM extends CqrsEventMap, K extends keyof EM & string> = ProcessStep<TState, EM, K>;
292
- type index_ProcessStepResult<TState> = ProcessStepResult<TState>;
293
- declare const index_processInstanceKeyOf: typeof processInstanceKeyOf;
294
- declare const index_processManager: typeof processManager;
295
- declare namespace index {
296
- export { type index_ProcessCompensate as ProcessCompensate, type index_ProcessInstance as ProcessInstance, type index_ProcessManagerOpts as ProcessManagerOpts, type index_ProcessManagerResult as ProcessManagerResult, type index_ProcessSchedule as ProcessSchedule, type index_ProcessStep as ProcessStep, type index_ProcessStepResult as ProcessStepResult, index_processInstanceKeyOf as processInstanceKeyOf, index_processManager as processManager };
297
- }
298
-
299
- export { type ProcessCompensate as P, type ProcessInstance as a, type ProcessManagerOpts as b, type ProcessManagerResult as c, type ProcessSchedule as d, type ProcessStep as e, type ProcessStepResult as f, processManager as g, index as i, processInstanceKeyOf as p };
@@ -1,291 +0,0 @@
1
- import { j as CompileSpecOptions, G as GraphSpec, c as GraphSpecCatalog, C as CatalogFnEntry, a as CatalogSourceEntry, b as ConfigFieldSchema, F as FnFactory, d as GraphSpecFeedbackEdge, e as GraphSpecNode, f as GraphSpecTemplate, g as GraphSpecTemplateRef, h as GraphSpecValidation, S as SourceFactory } from './index-BP8a88zx.js';
2
- import { G as Graph, o as GraphNodeFactory, m as GraphDiffResult } from './graph-7VguS7a4.js';
3
- import { KvStorageTier } from './extra/storage-tiers.js';
4
-
5
- /**
6
- * Surface: create a graph from a {@link GraphSpec} (§9.3-core).
7
- *
8
- * Thin wrapper over {@link compileSpec} that converts the two failure modes
9
- * ({@link validateSpec} structural errors, and catalog-aware validation
10
- * errors) into typed {@link SurfaceError} throws. Consumers are MCP/CLI
11
- * wrappers, not end-user graph code — those should import `compileSpec`
12
- * directly.
13
- *
14
- * @module
15
- */
16
-
17
- /** Options for {@link createGraph}. Same shape as {@link CompileSpecOptions}. */
18
- type CreateGraphOptions = CompileSpecOptions;
19
- /**
20
- * Build a {@link Graph} from a parsed {@link GraphSpec} with surface-layer
21
- * error typing.
22
- *
23
- * @throws {SurfaceError} `invalid-spec` for structural errors;
24
- * `catalog-error` when fn/source names or config don't match the catalog.
25
- */
26
- declare function createGraph(spec: GraphSpec, opts?: CreateGraphOptions): Graph;
27
-
28
- /**
29
- * Typed errors for the surface layer (§9.3-core).
30
- *
31
- * The surface layer is consumed by `@graphrefly/mcp-server` and
32
- * `@graphrefly/cli`. Both have native error channels (MCP's `isError` flag,
33
- * CLI's exit codes), so surface functions throw a {@link SurfaceError}
34
- * carrying a structured code + details payload that wrappers can map to
35
- * their native shape. No `Result` envelope — keep the callsite idiom
36
- * `try/catch` and let each wrapper surface the error its own way.
37
- *
38
- * @module
39
- */
40
- /** Structured error codes emitted by the surface layer. JSON-safe. */
41
- type SurfaceErrorCode = "invalid-spec" | "graph-not-found" | "graph-exists" | "snapshot-not-found" | "node-not-found" | "reduce-timeout" | "catalog-error" | "restore-failed" | "snapshot-failed" | "tier-no-list" | "compose-not-configured" | "compose-failed" | "internal-error";
42
- /** JSON-safe shape surfaces should echo back through the wrapper. */
43
- interface SurfaceErrorPayload {
44
- code: SurfaceErrorCode;
45
- message: string;
46
- /** Optional structured detail; must be JSON-safe. */
47
- details?: Readonly<Record<string, unknown>>;
48
- }
49
- /**
50
- * Thrown by surface layer functions on failure. `code` is the stable
51
- * machine-readable identifier; `details` carries structured context
52
- * (e.g. `validateSpec` errors, missing path name). Both fields round-trip
53
- * through `toJSON()` for wrappers that serialize errors over the wire.
54
- */
55
- declare class SurfaceError extends Error {
56
- readonly code: SurfaceErrorCode;
57
- readonly details?: Readonly<Record<string, unknown>>;
58
- constructor(code: SurfaceErrorCode, message: string, details?: Readonly<Record<string, unknown>>);
59
- /**
60
- * JSON-safe payload for wire serialization. Defensively validates
61
- * `details` — if it can't be round-tripped through `JSON.stringify`
62
- * (cyclic refs, `BigInt`, `Error` instance not pre-toJSON'd), the
63
- * payload falls back to `{code, message}` only rather than crashing
64
- * the MCP/CLI wrapper when it serializes this error onto the wire.
65
- */
66
- toJSON(): SurfaceErrorPayload;
67
- }
68
- /** Wrap any thrown value as a SurfaceError. Idempotent on existing SurfaceError. */
69
- declare function asSurfaceError(err: unknown, fallbackCode?: SurfaceErrorCode): SurfaceError;
70
-
71
- /**
72
- * Surface: one-shot `input → pipeline → output` (§9.3-core).
73
- *
74
- * `runReduction` compiles a {@link GraphSpec}, pushes an input value to a
75
- * named state node, awaits the first post-push DATA emission on a named
76
- * output, then disposes the graph. Stateless per call — no graphId, no
77
- * registry.
78
- *
79
- * Named `runReduction` (not `reduce`) to avoid collision with the
80
- * reactive {@link reduce} operator in `extra/operators.ts`. The MCP tool
81
- * name (`graphrefly_reduce`) and CLI subcommand (`graphrefly reduce`) use
82
- * the short form; the library export carries the verb.
83
- *
84
- * The subscribe-before-push ordering is deliberate. `graph.set` propagates
85
- * synchronously for sync derived/operator chains; for async sources
86
- * (`fromPromise`, `fromAsyncIter`, LLM adapters) the first post-push DATA
87
- * arrives on a later tick. Subscribing before the push catches both, and
88
- * skipping the priming push-on-subscribe emission avoids resolving with the
89
- * stale pre-push cache (spec §2.2).
90
- *
91
- * @module
92
- */
93
-
94
- /** Options for {@link reduce}. */
95
- interface ReduceOptions {
96
- /** Fn/source catalog for {@link createGraph}. */
97
- catalog?: GraphSpecCatalog;
98
- /** Path of the state node that receives the input. Default `"input"`. */
99
- inputPath?: string;
100
- /** Path of the node whose first post-push DATA is the result. Default `"output"`. */
101
- outputPath?: string;
102
- /** Hard deadline in milliseconds. Default `30_000`. */
103
- timeoutMs?: number;
104
- }
105
- /**
106
- * Run a spec as a one-shot reduction: `input → graph → output`.
107
- *
108
- * Resolves on the first `[DATA, v]` **or** `[RESOLVED]` emitted by
109
- * `outputPath` after the input push. The RESOLVED path handles spec
110
- * §1.3.3 equals-substitution (output recomputed to a value equal to its
111
- * cache, so the graph skips the DATA push) by returning `outputNode.cache`
112
- * — the caller always gets the settled value, never hangs on idempotent
113
- * inputs.
114
- *
115
- * @throws {SurfaceError} `invalid-spec` / `catalog-error` (propagated from
116
- * {@link createGraph}), `node-not-found` when `inputPath`/`outputPath`
117
- * can't be resolved, `reduce-timeout` when `timeoutMs` elapses without
118
- * a post-push emission, or the ERROR payload from the graph re-thrown
119
- * as `internal-error`.
120
- */
121
- declare function runReduction(spec: GraphSpec, input: unknown, opts?: ReduceOptions): Promise<unknown>;
122
-
123
- /**
124
- * Surface: snapshot save/restore/diff/list over {@link KvStorageTier} (§9.3-core).
125
- *
126
- * One-shot snapshot management for stateless callers (MCP tools, CLI
127
- * commands) layered on the existing multi-tier auto-checkpoint substrate.
128
- * A saved snapshot is a `mode: "full"` {@link GraphCheckpointRecord} with
129
- * `seq: 0` — byte-identical to the baseline anchor
130
- * {@link Graph.attachSnapshotStorage} writes on its first flush. An
131
- * auto-checkpointed graph can therefore be restored through this surface,
132
- * and a surface-saved snapshot can be picked up by `attachSnapshotStorage({
133
- * autoRestore: true })`.
134
- *
135
- * The wire envelope stays at {@link SNAPSHOT_WIRE_VERSION}; no new format.
136
- *
137
- * @module
138
- */
139
-
140
- /**
141
- * Current envelope version. Re-exported from `graph.ts` so the one-shot
142
- * surface path and `Graph.attachSnapshotStorage` write byte-identical
143
- * `format_version` fields — no silent wire drift.
144
- */
145
- declare const SNAPSHOT_WIRE_VERSION = 1;
146
- /** Shape returned by {@link saveSnapshot}. */
147
- interface SaveSnapshotResult {
148
- snapshotId: string;
149
- timestamp_ns: number;
150
- }
151
- /** Options for {@link restoreSnapshot}. */
152
- interface RestoreSnapshotOptions {
153
- /** Passthrough to `Graph.fromSnapshot`. First matching pattern wins. */
154
- factories?: Record<string, GraphNodeFactory>;
155
- }
156
- /**
157
- * Write a graph's current state as a one-shot `mode: "full"` record.
158
- *
159
- * Uses the same {@link GraphCheckpointRecord} envelope as
160
- * {@link Graph.attachSnapshotStorage} so the two persistence paths interoperate.
161
- *
162
- * @throws {SurfaceError} `snapshot-failed` when the tier's `save` throws.
163
- */
164
- declare function saveSnapshot(graph: Graph, snapshotId: string, tier: KvStorageTier): Promise<SaveSnapshotResult>;
165
- /**
166
- * Load a snapshot from a tier and materialize it as a new {@link Graph}.
167
- *
168
- * Uses {@link Graph.fromSnapshot} to reconstruct topology; pass
169
- * `factories` when the graph includes non-state nodes that the default
170
- * hydrator can't rebuild on its own.
171
- *
172
- * **Requires a `mode: "full"` record.** Surface-written snapshots from
173
- * {@link saveSnapshot} always qualify. Records written by
174
- * {@link Graph.attachSnapshotStorage} with `compactEvery > 1` may be
175
- * `mode: "diff"` between compacts — those throw `restore-failed` until
176
- * the tier's next compact flush (or until Phase 8.7 WAL replay lands).
177
- * If you need interop during development, either call
178
- * {@link saveSnapshot} explicitly (always full) or configure
179
- * `attachSnapshotStorage({compactEvery: 1})`.
180
- *
181
- * @throws {SurfaceError} `snapshot-not-found` on miss; `restore-failed`
182
- * when the payload shape doesn't match, when the record is
183
- * `mode: "diff"`, or when `Graph.fromSnapshot` rejects.
184
- */
185
- declare function restoreSnapshot(snapshotId: string, tier: KvStorageTier, opts?: RestoreSnapshotOptions): Promise<Graph>;
186
- /**
187
- * Load two snapshots and compute a {@link GraphDiffResult} via static
188
- * {@link Graph.diff}. Returns the audit shape (structural + value diff,
189
- * no payload); use {@link diffForWAL} directly for WAL-oriented diffs.
190
- *
191
- * @throws {SurfaceError} `snapshot-not-found` on either miss.
192
- */
193
- declare function diffSnapshots(snapshotIdA: string, snapshotIdB: string, tier: KvStorageTier): Promise<GraphDiffResult>;
194
- /**
195
- * Enumerate snapshot ids on a tier.
196
- *
197
- * Only keys written by {@link saveSnapshot} are returned. Surface-written
198
- * records are stored under the `"snapshot:"` key prefix and decoded back to
199
- * the caller-visible id before being returned — other keys on the same tier
200
- * (notably `attachSnapshotStorage` baseline/WAL keys written under `graph.name`) are
201
- * filtered out automatically. This lets a single tier back both the surface
202
- * and `attachSnapshotStorage` without leaking graph names through `listSnapshots`.
203
- *
204
- * @param tier — the storage tier to enumerate.
205
- * @param opts.includeUnprefixed — when `true`, also return keys that are
206
- * NOT under the namespacing prefix. Off by default; set this when reading
207
- * pre-namespacing snapshot sets.
208
- *
209
- * **Caveat:** when a tier is shared with {@link Graph.attachSnapshotStorage}, its
210
- * auto-checkpoint baseline + WAL keys (written under `graph.name`) are
211
- * unprefixed. Calling with `includeUnprefixed: true` returns those keys
212
- * alongside surface snapshots — and subsequent `restoreSnapshot` /
213
- * `deleteSnapshot` will operate on them via the fallback-lookup path,
214
- * potentially overwriting or deleting live auto-checkpoint state. Use
215
- * `includeUnprefixed` only against tiers you know are NOT shared with
216
- * `attachSnapshotStorage`, or follow up with a predicate filter to separate
217
- * ids you own from ones owned by other subsystems.
218
- *
219
- * @throws {SurfaceError} `tier-no-list` when the tier does not implement
220
- * the optional `list()` method. Check `typeof tier.list === "function"`
221
- * before calling if you want to branch on capability.
222
- */
223
- declare function listSnapshots(tier: KvStorageTier, opts?: {
224
- includeUnprefixed?: boolean;
225
- }): Promise<readonly string[]>;
226
- /**
227
- * Delete a snapshot from a tier.
228
- *
229
- * Silent on miss (clear semantics). `tier.clear` is optional — throws
230
- * `snapshot-failed` when the tier is append-only.
231
- *
232
- * @throws {SurfaceError} `snapshot-failed` when `clear` is unsupported
233
- * or throws.
234
- */
235
- declare function deleteSnapshot(snapshotId: string, tier: KvStorageTier): Promise<void>;
236
-
237
- /**
238
- * Surface layer (§9.3-core) — shared, JSON-safe operations consumed by
239
- * `@graphrefly/mcp-server` and `@graphrefly/cli`.
240
- *
241
- * The surface is a thin projection of existing Graph APIs (`describe`,
242
- * `observe`, `explain`, `snapshot`, `restore`, static `diff`), plus two
243
- * genuinely new operations:
244
- *
245
- * 1. {@link createGraph} — `compileSpec` wrapped with typed surface errors.
246
- * 2. {@link reduce} — one-shot `input → pipeline → output`.
247
- *
248
- * Snapshot persistence reuses the {@link KvStorageTier} substrate introduced
249
- * for `Graph.attachSnapshotStorage`, so one-shot snapshots and auto-checkpoints
250
- * share the {@link GraphCheckpointRecord} envelope. No new wire format.
251
- *
252
- * Errors throw as {@link SurfaceError} — wrappers map to their native
253
- * error channel (MCP `isError`, CLI exit code). No `Result<T, E>` wrapper.
254
- *
255
- * @module
256
- */
257
-
258
- declare const index_CatalogFnEntry: typeof CatalogFnEntry;
259
- declare const index_CatalogSourceEntry: typeof CatalogSourceEntry;
260
- declare const index_ConfigFieldSchema: typeof ConfigFieldSchema;
261
- type index_CreateGraphOptions = CreateGraphOptions;
262
- declare const index_FnFactory: typeof FnFactory;
263
- declare const index_GraphSpec: typeof GraphSpec;
264
- declare const index_GraphSpecCatalog: typeof GraphSpecCatalog;
265
- declare const index_GraphSpecFeedbackEdge: typeof GraphSpecFeedbackEdge;
266
- declare const index_GraphSpecNode: typeof GraphSpecNode;
267
- declare const index_GraphSpecTemplate: typeof GraphSpecTemplate;
268
- declare const index_GraphSpecTemplateRef: typeof GraphSpecTemplateRef;
269
- declare const index_GraphSpecValidation: typeof GraphSpecValidation;
270
- type index_ReduceOptions = ReduceOptions;
271
- type index_RestoreSnapshotOptions = RestoreSnapshotOptions;
272
- declare const index_SNAPSHOT_WIRE_VERSION: typeof SNAPSHOT_WIRE_VERSION;
273
- type index_SaveSnapshotResult = SaveSnapshotResult;
274
- declare const index_SourceFactory: typeof SourceFactory;
275
- type index_SurfaceError = SurfaceError;
276
- declare const index_SurfaceError: typeof SurfaceError;
277
- type index_SurfaceErrorCode = SurfaceErrorCode;
278
- type index_SurfaceErrorPayload = SurfaceErrorPayload;
279
- declare const index_asSurfaceError: typeof asSurfaceError;
280
- declare const index_createGraph: typeof createGraph;
281
- declare const index_deleteSnapshot: typeof deleteSnapshot;
282
- declare const index_diffSnapshots: typeof diffSnapshots;
283
- declare const index_listSnapshots: typeof listSnapshots;
284
- declare const index_restoreSnapshot: typeof restoreSnapshot;
285
- declare const index_runReduction: typeof runReduction;
286
- declare const index_saveSnapshot: typeof saveSnapshot;
287
- declare namespace index {
288
- export { index_CatalogFnEntry as CatalogFnEntry, index_CatalogSourceEntry as CatalogSourceEntry, index_ConfigFieldSchema as ConfigFieldSchema, type index_CreateGraphOptions as CreateGraphOptions, index_FnFactory as FnFactory, index_GraphSpec as GraphSpec, index_GraphSpecCatalog as GraphSpecCatalog, index_GraphSpecFeedbackEdge as GraphSpecFeedbackEdge, index_GraphSpecNode as GraphSpecNode, index_GraphSpecTemplate as GraphSpecTemplate, index_GraphSpecTemplateRef as GraphSpecTemplateRef, index_GraphSpecValidation as GraphSpecValidation, type index_ReduceOptions as ReduceOptions, type index_RestoreSnapshotOptions as RestoreSnapshotOptions, index_SNAPSHOT_WIRE_VERSION as SNAPSHOT_WIRE_VERSION, type index_SaveSnapshotResult as SaveSnapshotResult, index_SourceFactory as SourceFactory, index_SurfaceError as SurfaceError, type index_SurfaceErrorCode as SurfaceErrorCode, type index_SurfaceErrorPayload as SurfaceErrorPayload, index_asSurfaceError as asSurfaceError, index_createGraph as createGraph, index_deleteSnapshot as deleteSnapshot, index_diffSnapshots as diffSnapshots, index_listSnapshots as listSnapshots, index_restoreSnapshot as restoreSnapshot, index_runReduction as runReduction, index_saveSnapshot as saveSnapshot };
289
- }
290
-
291
- export { type CreateGraphOptions as C, type ReduceOptions as R, SNAPSHOT_WIRE_VERSION as S, type RestoreSnapshotOptions as a, type SaveSnapshotResult as b, SurfaceError as c, type SurfaceErrorCode as d, type SurfaceErrorPayload as e, asSurfaceError as f, createGraph as g, deleteSnapshot as h, diffSnapshots as i, runReduction as j, index as k, listSnapshots as l, restoreSnapshot as r, saveSnapshot as s };