@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.
- package/README.md +21 -17
- package/dist/compat/index.cjs +20 -10
- package/dist/compat/index.cjs.map +1 -0
- package/dist/compat/index.d.cts +1 -22
- package/dist/compat/index.d.ts +1 -22
- package/dist/compat/index.js +3 -1
- package/dist/compat/index.js.map +1 -0
- package/dist/compat/jotai/index.cjs +21 -1
- package/dist/compat/jotai/index.cjs.map +1 -0
- package/dist/compat/jotai/index.d.cts +1 -2
- package/dist/compat/jotai/index.d.ts +1 -2
- package/dist/compat/jotai/index.js +3 -1
- package/dist/compat/jotai/index.js.map +1 -0
- package/dist/compat/nanostores/index.cjs +21 -1
- package/dist/compat/nanostores/index.cjs.map +1 -0
- package/dist/compat/nanostores/index.d.cts +1 -2
- package/dist/compat/nanostores/index.d.ts +1 -2
- package/dist/compat/nanostores/index.js +3 -1
- package/dist/compat/nanostores/index.js.map +1 -0
- package/dist/compat/nestjs/index.cjs +20 -10
- package/dist/compat/nestjs/index.cjs.map +1 -0
- package/dist/compat/nestjs/index.d.cts +1 -13
- package/dist/compat/nestjs/index.d.ts +1 -13
- package/dist/compat/nestjs/index.js +3 -1
- package/dist/compat/nestjs/index.js.map +1 -0
- package/dist/compat/react/index.cjs +21 -1
- package/dist/compat/react/index.cjs.map +1 -0
- package/dist/compat/react/index.d.cts +1 -2
- package/dist/compat/react/index.d.ts +1 -2
- package/dist/compat/react/index.js +3 -1
- package/dist/compat/react/index.js.map +1 -0
- package/dist/compat/solid/index.cjs +21 -1
- package/dist/compat/solid/index.cjs.map +1 -0
- package/dist/compat/solid/index.d.cts +1 -2
- package/dist/compat/solid/index.d.ts +1 -2
- package/dist/compat/solid/index.js +3 -1
- package/dist/compat/solid/index.js.map +1 -0
- package/dist/compat/svelte/index.cjs +21 -1
- package/dist/compat/svelte/index.cjs.map +1 -0
- package/dist/compat/svelte/index.d.cts +1 -2
- package/dist/compat/svelte/index.d.ts +1 -2
- package/dist/compat/svelte/index.js +3 -1
- package/dist/compat/svelte/index.js.map +1 -0
- package/dist/compat/vue/index.cjs +21 -1
- package/dist/compat/vue/index.cjs.map +1 -0
- package/dist/compat/vue/index.d.cts +1 -3
- package/dist/compat/vue/index.d.ts +1 -3
- package/dist/compat/vue/index.js +3 -1
- package/dist/compat/vue/index.js.map +1 -0
- package/dist/compat/zustand/index.cjs +21 -3
- package/dist/compat/zustand/index.cjs.map +1 -0
- package/dist/compat/zustand/index.d.cts +1 -6
- package/dist/compat/zustand/index.d.ts +1 -6
- package/dist/compat/zustand/index.js +3 -1
- package/dist/compat/zustand/index.js.map +1 -0
- package/dist/core/index.cjs +21 -1
- package/dist/core/index.cjs.map +1 -0
- package/dist/core/index.d.cts +1 -4
- package/dist/core/index.d.ts +1 -4
- package/dist/core/index.js +3 -1
- package/dist/core/index.js.map +1 -0
- package/dist/extra/browser.cjs +21 -1
- package/dist/extra/browser.cjs.map +1 -0
- package/dist/extra/browser.d.cts +1 -4
- package/dist/extra/browser.d.ts +1 -4
- package/dist/extra/browser.js +3 -1
- package/dist/extra/browser.js.map +1 -0
- package/dist/extra/index.cjs +20 -19
- package/dist/extra/index.cjs.map +1 -0
- package/dist/extra/index.d.cts +1 -17
- package/dist/extra/index.d.ts +1 -17
- package/dist/extra/index.js +3 -1
- package/dist/extra/index.js.map +1 -0
- package/dist/extra/node.cjs +21 -2
- package/dist/extra/node.cjs.map +1 -0
- package/dist/extra/node.d.cts +1 -187
- package/dist/extra/node.d.ts +1 -187
- package/dist/extra/node.js +3 -2
- package/dist/extra/node.js.map +1 -0
- package/dist/extra/operators.cjs +21 -1
- package/dist/extra/operators.cjs.map +1 -0
- package/dist/extra/operators.d.cts +1 -950
- package/dist/extra/operators.d.ts +1 -950
- package/dist/extra/operators.js +3 -1
- package/dist/extra/operators.js.map +1 -0
- package/dist/extra/reactive.cjs +21 -1
- package/dist/extra/reactive.cjs.map +1 -0
- package/dist/extra/reactive.d.cts +1 -353
- package/dist/extra/reactive.d.ts +1 -353
- package/dist/extra/reactive.js +3 -1
- package/dist/extra/reactive.js.map +1 -0
- package/dist/extra/render/index.cjs +21 -5
- package/dist/extra/render/index.cjs.map +1 -0
- package/dist/extra/render/index.d.cts +1 -183
- package/dist/extra/render/index.d.ts +1 -183
- package/dist/extra/render/index.js +3 -1
- package/dist/extra/render/index.js.map +1 -0
- package/dist/extra/sources.cjs +21 -3
- package/dist/extra/sources.cjs.map +1 -0
- package/dist/extra/sources.d.cts +1 -584
- package/dist/extra/sources.d.ts +1 -584
- package/dist/extra/sources.js +3 -1
- package/dist/extra/sources.js.map +1 -0
- package/dist/extra/storage-browser.cjs +21 -1
- package/dist/extra/storage-browser.cjs.map +1 -0
- package/dist/extra/storage-browser.d.cts +1 -37
- package/dist/extra/storage-browser.d.ts +1 -37
- package/dist/extra/storage-browser.js +3 -1
- package/dist/extra/storage-browser.js.map +1 -0
- package/dist/extra/storage-core.cjs +21 -1
- package/dist/extra/storage-core.cjs.map +1 -0
- package/dist/extra/storage-core.d.cts +1 -28
- package/dist/extra/storage-core.d.ts +1 -28
- package/dist/extra/storage-core.js +3 -1
- package/dist/extra/storage-core.js.map +1 -0
- package/dist/extra/storage-node.cjs +20 -0
- package/dist/extra/storage-node.cjs.map +1 -0
- package/dist/extra/storage-node.d.cts +1 -2
- package/dist/extra/storage-node.d.ts +1 -2
- package/dist/extra/storage-node.js +3 -0
- package/dist/extra/storage-node.js.map +1 -0
- package/dist/extra/storage-tiers-browser.cjs +21 -1
- package/dist/extra/storage-tiers-browser.cjs.map +1 -0
- package/dist/extra/storage-tiers-browser.d.cts +1 -120
- package/dist/extra/storage-tiers-browser.d.ts +1 -120
- package/dist/extra/storage-tiers-browser.js +3 -1
- package/dist/extra/storage-tiers-browser.js.map +1 -0
- package/dist/extra/storage-tiers-node.cjs +21 -1
- package/dist/extra/storage-tiers-node.cjs.map +1 -0
- package/dist/extra/storage-tiers-node.d.cts +1 -210
- package/dist/extra/storage-tiers-node.d.ts +1 -210
- package/dist/extra/storage-tiers-node.js +3 -1
- package/dist/extra/storage-tiers-node.js.map +1 -0
- package/dist/extra/storage-tiers.cjs +21 -1
- package/dist/extra/storage-tiers.cjs.map +1 -0
- package/dist/extra/storage-tiers.d.cts +1 -412
- package/dist/extra/storage-tiers.d.ts +1 -412
- package/dist/extra/storage-tiers.js +3 -1
- package/dist/extra/storage-tiers.js.map +1 -0
- package/dist/extra/storage-wal.cjs +21 -0
- package/dist/extra/storage-wal.cjs.map +1 -0
- package/dist/extra/storage-wal.d.cts +1 -0
- package/dist/extra/storage-wal.d.ts +1 -0
- package/dist/extra/storage-wal.js +3 -0
- package/dist/extra/storage-wal.js.map +1 -0
- package/dist/graph/index.cjs +21 -7
- package/dist/graph/index.cjs.map +1 -0
- package/dist/graph/index.d.cts +1 -7
- package/dist/graph/index.d.ts +1 -7
- package/dist/graph/index.js +3 -1
- package/dist/graph/index.js.map +1 -0
- package/dist/index.cjs +20 -227
- package/dist/index.cjs.map +1 -0
- package/dist/index.d.cts +45 -96
- package/dist/index.d.ts +45 -96
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -0
- package/dist/patterns/ai/browser.cjs +20 -7
- package/dist/patterns/ai/browser.cjs.map +1 -0
- package/dist/patterns/ai/browser.d.cts +1 -127
- package/dist/patterns/ai/browser.d.ts +1 -127
- package/dist/patterns/ai/browser.js +3 -3
- package/dist/patterns/ai/browser.js.map +1 -0
- package/dist/patterns/ai/index.cjs +20 -73
- package/dist/patterns/ai/index.cjs.map +1 -0
- package/dist/patterns/ai/index.d.cts +1 -21
- package/dist/patterns/ai/index.d.ts +1 -21
- package/dist/patterns/ai/index.js +3 -1
- package/dist/patterns/ai/index.js.map +1 -0
- package/dist/patterns/ai/node.cjs +21 -1
- package/dist/patterns/ai/node.cjs.map +1 -0
- package/dist/patterns/ai/node.d.cts +1 -59
- package/dist/patterns/ai/node.d.ts +1 -59
- package/dist/patterns/ai/node.js +3 -1
- package/dist/patterns/ai/node.js.map +1 -0
- package/dist/patterns/cqrs/index.cjs +21 -3
- package/dist/patterns/cqrs/index.cjs.map +1 -0
- package/dist/patterns/cqrs/index.d.cts +1 -8
- package/dist/patterns/cqrs/index.d.ts +1 -8
- package/dist/patterns/cqrs/index.js +3 -1
- package/dist/patterns/cqrs/index.js.map +1 -0
- package/dist/patterns/demo-shell/index.cjs +21 -5
- package/dist/patterns/demo-shell/index.cjs.map +1 -0
- package/dist/patterns/demo-shell/index.d.cts +1 -7
- package/dist/patterns/demo-shell/index.d.ts +1 -7
- package/dist/patterns/demo-shell/index.js +3 -1
- package/dist/patterns/demo-shell/index.js.map +1 -0
- package/dist/patterns/domain-templates/index.cjs +21 -3
- package/dist/patterns/domain-templates/index.cjs.map +1 -0
- package/dist/patterns/domain-templates/index.d.cts +1 -6
- package/dist/patterns/domain-templates/index.d.ts +1 -6
- package/dist/patterns/domain-templates/index.js +3 -1
- package/dist/patterns/domain-templates/index.js.map +1 -0
- package/dist/patterns/graphspec/index.cjs +21 -86
- package/dist/patterns/graphspec/index.cjs.map +1 -0
- package/dist/patterns/graphspec/index.d.cts +1 -8
- package/dist/patterns/graphspec/index.d.ts +1 -8
- package/dist/patterns/graphspec/index.js +3 -1
- package/dist/patterns/graphspec/index.js.map +1 -0
- package/dist/patterns/harness/index.cjs +21 -48
- package/dist/patterns/harness/index.cjs.map +1 -0
- package/dist/patterns/harness/index.d.cts +1 -14
- package/dist/patterns/harness/index.d.ts +1 -14
- package/dist/patterns/harness/index.js +3 -1
- package/dist/patterns/harness/index.js.map +1 -0
- package/dist/patterns/inspect/index.cjs +21 -3
- package/dist/patterns/inspect/index.cjs.map +1 -0
- package/dist/patterns/inspect/index.d.cts +1 -9
- package/dist/patterns/inspect/index.d.ts +1 -9
- package/dist/patterns/inspect/index.js +3 -1
- package/dist/patterns/inspect/index.js.map +1 -0
- package/dist/patterns/job-queue/index.cjs +21 -3
- package/dist/patterns/job-queue/index.cjs.map +1 -0
- package/dist/patterns/job-queue/index.d.cts +1 -9
- package/dist/patterns/job-queue/index.d.ts +1 -9
- package/dist/patterns/job-queue/index.js +3 -1
- package/dist/patterns/job-queue/index.js.map +1 -0
- package/dist/patterns/memory/index.cjs +21 -3
- package/dist/patterns/memory/index.cjs.map +1 -0
- package/dist/patterns/memory/index.d.cts +1 -8
- package/dist/patterns/memory/index.d.ts +1 -8
- package/dist/patterns/memory/index.js +3 -1
- package/dist/patterns/memory/index.js.map +1 -0
- package/dist/patterns/messaging/index.cjs +21 -3
- package/dist/patterns/messaging/index.cjs.map +1 -0
- package/dist/patterns/messaging/index.d.cts +1 -7
- package/dist/patterns/messaging/index.d.ts +1 -7
- package/dist/patterns/messaging/index.js +3 -1
- package/dist/patterns/messaging/index.js.map +1 -0
- package/dist/patterns/orchestration/index.cjs +21 -3
- package/dist/patterns/orchestration/index.cjs.map +1 -0
- package/dist/patterns/orchestration/index.d.cts +1 -9
- package/dist/patterns/orchestration/index.d.ts +1 -9
- package/dist/patterns/orchestration/index.js +3 -1
- package/dist/patterns/orchestration/index.js.map +1 -0
- package/dist/patterns/process/index.cjs +21 -1
- package/dist/patterns/process/index.cjs.map +1 -0
- package/dist/patterns/process/index.d.cts +1 -10
- package/dist/patterns/process/index.d.ts +1 -10
- package/dist/patterns/process/index.js +3 -1
- package/dist/patterns/process/index.js.map +1 -0
- package/dist/patterns/reactive-layout/index.cjs +21 -4
- package/dist/patterns/reactive-layout/index.cjs.map +1 -0
- package/dist/patterns/reactive-layout/index.d.cts +1 -7
- package/dist/patterns/reactive-layout/index.d.ts +1 -7
- package/dist/patterns/reactive-layout/index.js +3 -1
- package/dist/patterns/reactive-layout/index.js.map +1 -0
- package/dist/patterns/reduction/index.cjs +21 -3
- package/dist/patterns/reduction/index.cjs.map +1 -0
- package/dist/patterns/reduction/index.d.cts +1 -6
- package/dist/patterns/reduction/index.d.ts +1 -6
- package/dist/patterns/reduction/index.js +3 -1
- package/dist/patterns/reduction/index.js.map +1 -0
- package/dist/patterns/surface/index.cjs +21 -13
- package/dist/patterns/surface/index.cjs.map +1 -0
- package/dist/patterns/surface/index.d.cts +1 -9
- package/dist/patterns/surface/index.d.ts +1 -9
- package/dist/patterns/surface/index.js +3 -1
- package/dist/patterns/surface/index.js.map +1 -0
- package/dist/patterns/topology-view/index.cjs +21 -0
- package/dist/patterns/topology-view/index.cjs.map +1 -0
- package/dist/patterns/topology-view/index.d.cts +1 -0
- package/dist/patterns/topology-view/index.d.ts +1 -0
- package/dist/patterns/topology-view/index.js +3 -0
- package/dist/patterns/topology-view/index.js.map +1 -0
- package/dist/testing/index.cjs +21 -0
- package/dist/testing/index.cjs.map +1 -0
- package/dist/testing/index.d.cts +1 -0
- package/dist/testing/index.d.ts +1 -0
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.js.map +1 -0
- package/package.json +608 -584
- package/dist/backoff-HPZMEZNF.js +0 -1
- package/dist/cascading-CH-_VwG9.d.cts +0 -199
- package/dist/cascading-OgKQZjsa.d.ts +0 -199
- package/dist/chunk-35JTVPOX.js +0 -1
- package/dist/chunk-3G5U5QNE.js +0 -5
- package/dist/chunk-3XDYJRYU.js +0 -1
- package/dist/chunk-4I45FVQS.js +0 -1
- package/dist/chunk-4VVTGLXJ.js +0 -1
- package/dist/chunk-4YAN45KM.js +0 -1
- package/dist/chunk-5QDBSZBV.js +0 -1
- package/dist/chunk-626TESAC.js +0 -3
- package/dist/chunk-6HOSXQKF.js +0 -1
- package/dist/chunk-6QZNQS5B.js +0 -1
- package/dist/chunk-C72GO4IZ.js +0 -1
- package/dist/chunk-CE72X3WO.js +0 -1
- package/dist/chunk-CK2E7BTU.js +0 -1
- package/dist/chunk-CLD3F4R5.js +0 -1
- package/dist/chunk-CUNIRONA.js +0 -1
- package/dist/chunk-D27JNOLZ.js +0 -1
- package/dist/chunk-D5RFJOZ2.js +0 -1
- package/dist/chunk-EBW4V6JN.js +0 -1
- package/dist/chunk-ESMPEKEV.js +0 -1
- package/dist/chunk-F3IGTWCQ.js +0 -1
- package/dist/chunk-F672GV32.js +0 -1
- package/dist/chunk-FDQGFWLF.js +0 -1
- package/dist/chunk-FG4TKHMC.js +0 -1
- package/dist/chunk-GPW2V3RE.js +0 -1
- package/dist/chunk-I7IGYPSL.js +0 -1
- package/dist/chunk-INQD2KRQ.js +0 -1
- package/dist/chunk-JNWRYDJN.js +0 -1
- package/dist/chunk-JQFH2DV6.js +0 -1
- package/dist/chunk-K2Q24F5T.js +0 -1
- package/dist/chunk-KGKJCHEK.js +0 -1
- package/dist/chunk-KRH66M4O.js +0 -1
- package/dist/chunk-KVV66NN2.js +0 -1
- package/dist/chunk-L6NSJVJZ.js +0 -1
- package/dist/chunk-LYCLF26R.js +0 -1
- package/dist/chunk-NNKJUORL.js +0 -1
- package/dist/chunk-NON4NLIC.js +0 -45
- package/dist/chunk-O2BLLH7M.js +0 -18
- package/dist/chunk-OCKEEPRJ.js +0 -2
- package/dist/chunk-OFZG3TB3.js +0 -9
- package/dist/chunk-OYJKFY7V.js +0 -1
- package/dist/chunk-P6C4WHZO.js +0 -5
- package/dist/chunk-PT7W5FCD.js +0 -5
- package/dist/chunk-Q4U3A3L5.js +0 -1
- package/dist/chunk-QE4IGY7I.js +0 -61
- package/dist/chunk-QYADASLV.js +0 -1
- package/dist/chunk-QYVXF7GW.js +0 -1
- package/dist/chunk-S3EEIPO7.js +0 -1
- package/dist/chunk-SUWT3ZON.js +0 -1
- package/dist/chunk-TPKQW72B.js +0 -1
- package/dist/chunk-TSOYJ743.js +0 -1
- package/dist/chunk-TZQPPQEQ.js +0 -1
- package/dist/chunk-V5A7M7RJ.js +0 -1
- package/dist/chunk-VIMF6LGM.js +0 -1
- package/dist/chunk-VJLMUKOI.js +0 -1
- package/dist/chunk-VN6RDSK2.js +0 -1
- package/dist/chunk-VNC3TMVY.js +0 -1
- package/dist/chunk-VOPGGIL7.js +0 -1
- package/dist/chunk-VQ4A6T2A.js +0 -1
- package/dist/chunk-XG62INFA.js +0 -1
- package/dist/chunk-Y4NI3X7O.js +0 -84
- package/dist/content-addressed-storage-4-ST1tYk.d.cts +0 -124
- package/dist/content-addressed-storage-DuYMjV7o.d.ts +0 -124
- package/dist/decay-2ZukgQ4o.d.cts +0 -112
- package/dist/decay-CdEBmDIs.d.ts +0 -112
- package/dist/fallback-CqYVLL6X.d.ts +0 -250
- package/dist/fallback-Ctlj2tMY.d.cts +0 -250
- package/dist/graph-7VguS7a4.d.ts +0 -1668
- package/dist/graph-C4SHb3Ly.d.cts +0 -1668
- package/dist/index-0rKFCVFp.d.cts +0 -557
- package/dist/index-B-i4_g3k.d.ts +0 -651
- package/dist/index-B5iz82A3.d.cts +0 -2655
- package/dist/index-BAOD98JD.d.cts +0 -754
- package/dist/index-BG0BN3PB.d.ts +0 -44
- package/dist/index-BJX94aud.d.cts +0 -34
- package/dist/index-BP8a88zx.d.ts +0 -385
- package/dist/index-BTQtTb_H.d.cts +0 -301
- package/dist/index-BVpm6noz.d.cts +0 -36
- package/dist/index-Bc41FuHp.d.cts +0 -291
- package/dist/index-BdGtBX-X.d.cts +0 -515
- package/dist/index-Bf7eqeSF.d.ts +0 -113
- package/dist/index-BiX1Nkgx.d.cts +0 -1844
- package/dist/index-BoLv_OfD.d.cts +0 -651
- package/dist/index-BojK2fwH.d.cts +0 -299
- package/dist/index-BsT7F2et.d.ts +0 -291
- package/dist/index-BwLvVVsy.d.cts +0 -189
- package/dist/index-C59mYFKp.d.ts +0 -121
- package/dist/index-C7O6r5fV.d.ts +0 -37
- package/dist/index-C9kSENB4.d.cts +0 -127
- package/dist/index-C9pjcz3l.d.cts +0 -209
- package/dist/index-CAC_rNzm.d.ts +0 -189
- package/dist/index-CCq87F7t.d.ts +0 -127
- package/dist/index-CDXc9zKM.d.cts +0 -26
- package/dist/index-CJK1JkYy.d.ts +0 -36
- package/dist/index-CLon-IWF.d.cts +0 -374
- package/dist/index-COD1kVoS.d.cts +0 -468
- package/dist/index-CPT7C_f1.d.ts +0 -374
- package/dist/index-CQG3D1cp.d.ts +0 -468
- package/dist/index-CZQXo5tH.d.ts +0 -209
- package/dist/index-CZjOhcBy.d.cts +0 -113
- package/dist/index-ChOyVLKm.d.cts +0 -86
- package/dist/index-CvrqGfNS.d.ts +0 -34
- package/dist/index-D-AEQVLo.d.ts +0 -2655
- package/dist/index-D4Y1cMG0.d.ts +0 -26
- package/dist/index-DBHK8O6H.d.ts +0 -301
- package/dist/index-DBevwHj_.d.ts +0 -515
- package/dist/index-DIOoAZUX.d.ts +0 -45
- package/dist/index-DSZ3ZCHF.d.ts +0 -3402
- package/dist/index-Dgs8zcj7.d.ts +0 -102
- package/dist/index-Dh_HJ82K.d.ts +0 -299
- package/dist/index-Dhc7a7Xo.d.cts +0 -102
- package/dist/index-Dmqp7KjD.d.ts +0 -86
- package/dist/index-Dn-wI9g4.d.ts +0 -231
- package/dist/index-Du7u1lSf.d.cts +0 -385
- package/dist/index-DwigL4lY.d.ts +0 -1844
- package/dist/index-DyR7eU5S.d.cts +0 -779
- package/dist/index-JZUPJIJy.d.ts +0 -779
- package/dist/index-K0_0eR8g.d.ts +0 -557
- package/dist/index-O16yXPK4.d.cts +0 -3402
- package/dist/index-O7fucFrU.d.cts +0 -121
- package/dist/index-RV_yDjOX.d.cts +0 -198
- package/dist/index-cm1GNcWE.d.ts +0 -754
- package/dist/index-f5IivDUX.d.cts +0 -37
- package/dist/index-hHcaFlJX.d.cts +0 -45
- package/dist/index-tJoTcnHh.d.cts +0 -231
- package/dist/index-wAzD9yVj.d.ts +0 -198
- package/dist/index-z96luz5O.d.cts +0 -44
- package/dist/meta-BgVAsg9j.d.ts +0 -102
- package/dist/meta-vE8bxW1E.d.cts +0 -102
- package/dist/node-ClS5yC-B.d.cts +0 -1347
- package/dist/node-ClS5yC-B.d.ts +0 -1347
- package/dist/observable-BsBzUrcI.d.ts +0 -36
- package/dist/observable-DLGPPtb8.d.cts +0 -36
- package/dist/pipeline-graph-DPqKDk59.d.cts +0 -137
- package/dist/pipeline-graph-loP57TBA.d.ts +0 -137
- package/dist/reactive-layout-Dsvob4zD.d.cts +0 -183
- package/dist/reactive-layout-v7KPvxoc.d.ts +0 -183
- package/dist/reactive-log-B00laMSQ.d.cts +0 -223
- package/dist/reactive-log-BezYsbA_.d.ts +0 -223
- package/dist/reactive-map-48mnZ-nu.d.cts +0 -296
- package/dist/reactive-map-BVVPdvmi.d.ts +0 -296
- package/dist/resilience-YIWPK4YC.js +0 -1
- package/dist/sugar-DLwvMr3F.d.ts +0 -223
- package/dist/sugar-DyVGtczU.d.cts +0 -223
- package/dist/topology-tree-BNGvuG82.d.ts +0 -25
- package/dist/topology-tree-BSdfSwMi.d.cts +0 -25
- package/dist/types-B1jDWVsM.d.cts +0 -442
- 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 };
|
package/dist/index-BsT7F2et.d.ts
DELETED
|
@@ -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 };
|