@graphrefly/graphrefly 0.38.0 → 0.39.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/dist/budget-gate-CmmVtasH.d.ts +115 -0
- package/dist/budget-gate-DiP_nK0n.d.cts +115 -0
- package/dist/{cascading-BsJ4GbnS.d.ts → cascading-BzuxW0_w.d.cts} +2 -2
- package/dist/{cascading-B25wxpRa.d.cts → cascading-g2_rhhaM.d.ts} +2 -2
- package/dist/chunk-35JTVPOX.js +1 -0
- package/dist/chunk-3G5U5QNE.js +5 -0
- package/dist/{chunk-PHXZRR6C.js → chunk-4I45FVQS.js} +1 -1
- package/dist/chunk-5LK7XMEV.js +1 -0
- package/dist/{chunk-FWGIZP3W.js → chunk-5XRI6RM3.js} +1 -1
- package/dist/chunk-73PBQNST.js +1 -0
- package/dist/chunk-7JRF5YEK.js +3 -0
- package/dist/{chunk-4BDQXBXE.js → chunk-7NZMZJMW.js} +1 -1
- package/dist/chunk-7QFRK3N3.js +84 -0
- package/dist/{chunk-POCWFIJ7.js → chunk-7SD73DS6.js} +1 -1
- package/dist/{chunk-NBGPXQSP.js → chunk-A6ZSKGUG.js} +1 -1
- package/dist/{chunk-7KZZLWZ6.js → chunk-AU7YTQX7.js} +1 -1
- package/dist/chunk-C72GO4IZ.js +1 -0
- package/dist/{chunk-B5S7KTGP.js → chunk-CGDMTXSY.js} +1 -1
- package/dist/chunk-D27JNOLZ.js +1 -0
- package/dist/chunk-D47YVDR5.js +1 -0
- package/dist/chunk-EWF7KCDJ.js +61 -0
- package/dist/{chunk-IBGE62GZ.js → chunk-GEAO3TL3.js} +1 -1
- package/dist/chunk-GX5LSSRE.js +1 -0
- package/dist/{chunk-O245YLM5.js → chunk-HAWKGIXM.js} +1 -1
- package/dist/chunk-HX3EGQ5Z.js +1 -0
- package/dist/{chunk-RZ5HKPGI.js → chunk-IA7DUNGB.js} +1 -1
- package/dist/{chunk-K5C67OGE.js → chunk-INH6FS2G.js} +2 -2
- package/dist/chunk-INHC33EH.js +1 -0
- package/dist/chunk-IUB4NYI2.js +1 -0
- package/dist/{chunk-UVLZX2OU.js → chunk-JNMC2WJ6.js} +1 -1
- package/dist/{chunk-O2BLVQU4.js → chunk-KD4NHLMU.js} +1 -1
- package/dist/chunk-L6NSJVJZ.js +1 -0
- package/dist/{chunk-6773HURD.js → chunk-L7WY6TZS.js} +1 -1
- package/dist/chunk-LQNOXGET.js +1 -0
- package/dist/chunk-MC4UYY2X.js +1 -0
- package/dist/{chunk-6KZZ6XQE.js → chunk-N7UIBZCW.js} +1 -1
- package/dist/chunk-NQI2C36M.js +1 -0
- package/dist/chunk-R75BMDLA.js +1 -0
- package/dist/chunk-RF3QZP6D.js +1 -0
- package/dist/{chunk-NV63VQHI.js → chunk-S2U57TFC.js} +1 -1
- package/dist/{chunk-SP5O2MIX.js → chunk-SC7BQDNP.js} +1 -1
- package/dist/{chunk-6VFC334U.js → chunk-TFPZLQ5H.js} +1 -1
- package/dist/chunk-VJJLIEAL.js +1 -0
- package/dist/{chunk-FAYEMS5M.js → chunk-WHIZM6JV.js} +1 -1
- package/dist/chunk-XEUANKBO.js +43 -0
- package/dist/{chunk-DSOVKKTI.js → chunk-XQ55HO5N.js} +1 -1
- package/dist/chunk-ZJ7SM3G2.js +1 -0
- package/dist/{chunk-TMVY7OWG.js → chunk-ZOX3LBRV.js} +1 -1
- package/dist/compat/index.cjs +9 -13
- package/dist/compat/index.d.cts +16 -16
- package/dist/compat/index.d.ts +16 -16
- package/dist/compat/index.js +1 -1
- package/dist/compat/jotai/index.d.cts +2 -2
- package/dist/compat/jotai/index.d.ts +2 -2
- package/dist/compat/nanostores/index.d.cts +2 -2
- package/dist/compat/nanostores/index.d.ts +2 -2
- package/dist/compat/nestjs/index.cjs +7 -11
- package/dist/compat/nestjs/index.d.cts +8 -8
- package/dist/compat/nestjs/index.d.ts +8 -8
- package/dist/compat/nestjs/index.js +1 -1
- package/dist/compat/react/index.d.cts +2 -2
- package/dist/compat/react/index.d.ts +2 -2
- package/dist/compat/solid/index.d.cts +2 -2
- package/dist/compat/solid/index.d.ts +2 -2
- package/dist/compat/svelte/index.d.cts +2 -2
- package/dist/compat/svelte/index.d.ts +2 -2
- package/dist/compat/vue/index.d.cts +2 -2
- package/dist/compat/vue/index.d.ts +2 -2
- package/dist/compat/zustand/index.cjs +3 -7
- package/dist/compat/zustand/index.d.cts +4 -4
- package/dist/compat/zustand/index.d.ts +4 -4
- package/dist/compat/zustand/index.js +1 -1
- package/dist/{composite-CgG0MqHm.d.cts → composite-CKd0e2vz.d.cts} +2 -2
- package/dist/{composite-DTOlDuch.d.ts → composite-DGatA-JK.d.ts} +2 -2
- package/dist/core/index.cjs +1 -1
- package/dist/core/index.d.cts +4 -4
- package/dist/core/index.d.ts +4 -4
- package/dist/core/index.js +1 -1
- package/dist/extra/browser.d.cts +1 -1
- package/dist/extra/browser.d.ts +1 -1
- package/dist/extra/index.cjs +16 -20
- package/dist/extra/index.d.cts +11 -9
- package/dist/extra/index.d.ts +11 -9
- package/dist/extra/index.js +1 -1
- package/dist/extra/node.cjs +2 -2
- package/dist/extra/node.d.cts +1 -1
- package/dist/extra/node.d.ts +1 -1
- package/dist/extra/node.js +1 -1
- package/dist/extra/operators.cjs +1 -1
- package/dist/extra/operators.d.cts +1 -1
- package/dist/extra/operators.d.ts +1 -1
- package/dist/extra/operators.js +1 -1
- package/dist/extra/reactive.cjs +1 -1
- package/dist/extra/reactive.d.cts +3 -3
- package/dist/extra/reactive.d.ts +3 -3
- package/dist/extra/reactive.js +1 -1
- package/dist/extra/render/index.cjs +5 -0
- package/dist/extra/render/index.d.cts +183 -0
- package/dist/extra/render/index.d.ts +183 -0
- package/dist/extra/render/index.js +1 -0
- package/dist/extra/sources.cjs +1 -1
- package/dist/extra/sources.d.cts +1 -1
- package/dist/extra/sources.d.ts +1 -1
- package/dist/extra/sources.js +1 -1
- package/dist/extra/storage-browser.d.cts +1 -1
- package/dist/extra/storage-browser.d.ts +1 -1
- package/dist/{fallback-axI2cXwt.d.cts → fallback-8JYU8tlT.d.cts} +1 -1
- package/dist/{fallback-DuEXfA4F.d.ts → fallback-CMZl39L5.d.ts} +1 -1
- package/dist/graph/index.cjs +7 -7
- package/dist/graph/index.d.cts +5 -5
- package/dist/graph/index.d.ts +5 -5
- package/dist/graph/index.js +1 -1
- package/dist/{graph-BjW1taJl.d.ts → graph-30XSgtVX.d.ts} +76 -100
- package/dist/{graph-CHsVwf9S.d.cts → graph-BUwMAxJI.d.cts} +76 -100
- package/dist/{index-CIcu6fIR.d.ts → index-2n8Eai6M.d.ts} +1 -1
- package/dist/{index-CrlHFsiT.d.ts → index-89FczVZ_.d.ts} +41 -85
- package/dist/{index-CM-i58FY.d.cts → index-8R1vzNOx.d.cts} +9 -9
- package/dist/{index-CDvC1m5p.d.ts → index-B2RUoIUz.d.ts} +1 -1
- package/dist/{index-BFaALJxR.d.ts → index-B41Asm7D.d.ts} +10 -8
- package/dist/{index-D-HZ7sP4.d.ts → index-B9fmw5n2.d.ts} +4 -6
- package/dist/{index-Bn0uZEL4.d.ts → index-BAlaVimV.d.ts} +9 -9
- package/dist/{index-DJVQ-t07.d.ts → index-BC9VybQs.d.ts} +41 -48
- package/dist/{index-5dNRlW7J.d.ts → index-BEHmxORq.d.ts} +11 -11
- package/dist/{index-DJNAWzcH.d.cts → index-BJ26eEjs.d.cts} +26 -19
- package/dist/{index-BiomL7AW.d.ts → index-BJSZxSFX.d.ts} +1 -1
- package/dist/{index-Czk3r0yA.d.cts → index-BKMdnYnk.d.ts} +56 -54
- package/dist/{index-BsZk9T8y.d.ts → index-BM9szD8n.d.cts} +14 -6
- package/dist/{index-BmWuVdER.d.ts → index-BUPVld1w.d.ts} +2 -2
- package/dist/{index-BwOsJfLJ.d.ts → index-BXd6OMEy.d.ts} +3 -3
- package/dist/index-BhUaMYm_.d.ts +113 -0
- package/dist/{index-BpMZzX9P.d.cts → index-BndG0cpK.d.cts} +3 -3
- package/dist/{index-AUqWe_fX.d.ts → index-Br3WnqEn.d.ts} +81 -9
- package/dist/{index-BhzwpIJc.d.cts → index-BskfDoZ_.d.ts} +14 -6
- package/dist/{index-D9vBTuzo.d.ts → index-C19qqa38.d.ts} +4 -4
- package/dist/{index-B-ORMr3k.d.ts → index-C7VV_qOs.d.ts} +4 -4
- package/dist/{index-BWUMIt7J.d.cts → index-CIRG8Hxp.d.cts} +11 -11
- package/dist/{index-B3D_z0Z6.d.cts → index-CL7oilfm.d.cts} +1 -1
- package/dist/{index-ML6vHKXK.d.ts → index-CPhBvRJU.d.ts} +1 -1
- package/dist/{index-CQsqqEVz.d.cts → index-CWHtYmSh.d.cts} +1 -1
- package/dist/{index-DKrIuF-r.d.ts → index-Cey6VTnX.d.ts} +8 -5
- package/dist/{resilience-BWP2c7Af.d.cts → index-CmqiJZKM.d.ts} +141 -23
- package/dist/{index-JYtN9uqM.d.ts → index-CoM4rzyB.d.ts} +1 -1
- package/dist/{index-C56XZiDe.d.cts → index-CpLpJb6A.d.cts} +8 -5
- package/dist/{index-BjWZARLy.d.ts → index-Ctb7_2sG.d.ts} +1 -1
- package/dist/index-CusEP3Sv.d.ts +210 -0
- package/dist/{resilience-Bys63Cpd.d.ts → index-CwP_KAMS.d.cts} +141 -23
- package/dist/{index-BFuVcqL8.d.cts → index-D3ayz3hy.d.cts} +1 -1
- package/dist/{index-Bpr0Pwgl.d.cts → index-DCbE8fFM.d.cts} +3 -3
- package/dist/{index-CAbHN_rP.d.cts → index-DIHcMLr6.d.cts} +1 -1
- package/dist/index-DINuaZlJ.d.cts +210 -0
- package/dist/{index-9xhIaM-w.d.cts → index-DOBLxOti.d.cts} +1 -1
- package/dist/{index-Di7OdwlO.d.ts → index-DQUVq1_d.d.ts} +37 -90
- package/dist/{index-BgzPO43H.d.cts → index-DTtBpuQy.d.cts} +4 -6
- package/dist/{index-D_QQ_dTD.d.cts → index-DYTBbF8T.d.cts} +1 -1
- package/dist/{index-UsU9ptzs.d.cts → index-DlgHqQxW.d.cts} +81 -9
- package/dist/{index-DTDVDzhA.d.ts → index-DlrWu9Hs.d.cts} +56 -54
- package/dist/{index-B2IUcH13.d.cts → index-DoYc8BWK.d.cts} +41 -48
- package/dist/{index-BUFCHvOR.d.ts → index-DszPlZzK.d.ts} +3 -3
- package/dist/{index-BqcgiSQg.d.cts → index-DyM4tFAe.d.cts} +10 -8
- package/dist/{index-CAV-3RpJ.d.cts → index-FVoPvhAu.d.cts} +4 -4
- package/dist/{index-Ckil6miL.d.cts → index-H_I66pav.d.cts} +2 -2
- package/dist/{index-C-3UXnHT.d.cts → index-IwFqHxCs.d.cts} +2 -2
- package/dist/index-K-vl_c6A.d.cts +113 -0
- package/dist/{index-CijfwEWx.d.ts → index-KlZ_ZUip.d.cts} +3 -3
- package/dist/{index-Bub6x_D4.d.cts → index-L8XI8Zql.d.cts} +37 -90
- package/dist/{index-DeSsvHDD.d.cts → index-MxYuWOrf.d.cts} +3 -3
- package/dist/{index-CpZKtdMw.d.cts → index-PgwvGWa1.d.cts} +1 -1
- package/dist/{index-Vz7KPfgz.d.ts → index-PlJ3MraE.d.ts} +1 -1
- package/dist/{index-BI1wMfyc.d.ts → index-PqbnoScQ.d.ts} +3 -3
- package/dist/{index-BsgxnHN8.d.cts → index-PsVHpPwP.d.cts} +3 -3
- package/dist/{index-D-B7U42V.d.cts → index-WyFKER-c.d.ts} +3 -3
- package/dist/{index-DY2f2b9z.d.ts → index-eaQuGJnv.d.ts} +3 -3
- package/dist/{index-DqICM_I7.d.ts → index-iTX5IqSP.d.ts} +67 -9
- package/dist/{index-Byp771zP.d.ts → index-jKLph6cu.d.ts} +2 -2
- package/dist/{index-CEVzBWeB.d.ts → index-jr6PuSBt.d.ts} +26 -19
- package/dist/{index-BkQqf1EF.d.cts → index-mNwgxC21.d.cts} +67 -9
- package/dist/{index-BaSy4L6w.d.cts → index-pVDQcbar.d.cts} +41 -85
- package/dist/{index-D7-RSD93.d.cts → index-xZYcDqFH.d.cts} +4 -4
- package/dist/{index-8OxXae3g.d.ts → index-yLt-aPMp.d.ts} +1 -1
- package/dist/{index-CqSJ25A9.d.cts → index-z8WFPVI8.d.cts} +1 -1
- package/dist/index.cjs +63 -59
- package/dist/index.d.cts +48 -47
- package/dist/index.d.ts +48 -47
- package/dist/index.js +1 -1
- package/dist/{meta-DreaEM_a.d.cts → meta-Ct9nqQS5.d.cts} +11 -7
- package/dist/{meta-BYqlATmg.d.ts → meta-D8OyedKp.d.ts} +11 -7
- package/dist/{node-fSc-hCv8.d.cts → node-BYInONRr.d.cts} +3 -3
- package/dist/{node-fSc-hCv8.d.ts → node-BYInONRr.d.ts} +3 -3
- package/dist/{observable-Cqty11jG.d.cts → observable-DMIlYJV1.d.cts} +1 -1
- package/dist/{observable-EAV_rNfM.d.ts → observable-DO8DDEzv.d.ts} +1 -1
- package/dist/patterns/ai/browser.cjs +5 -5
- package/dist/patterns/ai/browser.d.cts +4 -4
- package/dist/patterns/ai/browser.d.ts +4 -4
- package/dist/patterns/ai/browser.js +1 -1
- package/dist/patterns/ai/index.cjs +16 -20
- package/dist/patterns/ai/index.d.cts +17 -17
- package/dist/patterns/ai/index.d.ts +17 -17
- package/dist/patterns/ai/index.js +1 -1
- package/dist/patterns/ai/node.cjs +1 -1
- package/dist/patterns/ai/node.d.cts +4 -4
- package/dist/patterns/ai/node.d.ts +4 -4
- package/dist/patterns/ai/node.js +1 -1
- package/dist/patterns/audit/index.cjs +3 -7
- package/dist/patterns/audit/index.d.cts +6 -6
- package/dist/patterns/audit/index.d.ts +6 -6
- package/dist/patterns/audit/index.js +1 -1
- package/dist/patterns/cqrs/index.cjs +3 -7
- package/dist/patterns/cqrs/index.d.cts +6 -6
- package/dist/patterns/cqrs/index.d.ts +6 -6
- package/dist/patterns/cqrs/index.js +1 -1
- package/dist/patterns/demo-shell/index.cjs +5 -8
- package/dist/patterns/demo-shell/index.d.cts +5 -5
- package/dist/patterns/demo-shell/index.d.ts +5 -5
- package/dist/patterns/demo-shell/index.js +1 -1
- package/dist/patterns/domain-templates/index.cjs +3 -7
- package/dist/patterns/domain-templates/index.d.cts +4 -4
- package/dist/patterns/domain-templates/index.d.ts +4 -4
- package/dist/patterns/domain-templates/index.js +1 -1
- package/dist/patterns/graphspec/index.cjs +37 -37
- package/dist/patterns/graphspec/index.d.cts +5 -5
- package/dist/patterns/graphspec/index.d.ts +5 -5
- package/dist/patterns/graphspec/index.js +1 -1
- package/dist/patterns/guarded-execution/index.cjs +3 -7
- package/dist/patterns/guarded-execution/index.d.cts +7 -7
- package/dist/patterns/guarded-execution/index.d.ts +7 -7
- package/dist/patterns/guarded-execution/index.js +1 -1
- package/dist/patterns/harness/index.cjs +8 -12
- package/dist/patterns/harness/index.d.cts +12 -12
- package/dist/patterns/harness/index.d.ts +12 -12
- package/dist/patterns/harness/index.js +1 -1
- package/dist/patterns/job-queue/index.cjs +3 -7
- package/dist/patterns/job-queue/index.d.cts +6 -6
- package/dist/patterns/job-queue/index.d.ts +6 -6
- package/dist/patterns/job-queue/index.js +1 -1
- package/dist/patterns/lens/index.cjs +3 -7
- package/dist/patterns/lens/index.d.cts +6 -6
- package/dist/patterns/lens/index.d.ts +6 -6
- package/dist/patterns/lens/index.js +1 -1
- package/dist/patterns/memory/index.cjs +3 -7
- package/dist/patterns/memory/index.d.cts +6 -6
- package/dist/patterns/memory/index.d.ts +6 -6
- package/dist/patterns/memory/index.js +1 -1
- package/dist/patterns/messaging/index.cjs +3 -7
- package/dist/patterns/messaging/index.d.cts +5 -5
- package/dist/patterns/messaging/index.d.ts +5 -5
- package/dist/patterns/messaging/index.js +1 -1
- package/dist/patterns/orchestration/index.cjs +3 -7
- package/dist/patterns/orchestration/index.d.cts +8 -8
- package/dist/patterns/orchestration/index.d.ts +8 -8
- package/dist/patterns/orchestration/index.js +1 -1
- package/dist/patterns/process/index.cjs +1 -1
- package/dist/patterns/process/index.d.cts +7 -7
- package/dist/patterns/process/index.d.ts +7 -7
- package/dist/patterns/process/index.js +1 -1
- package/dist/patterns/reactive-layout/index.cjs +4 -8
- package/dist/patterns/reactive-layout/index.d.cts +5 -5
- package/dist/patterns/reactive-layout/index.d.ts +5 -5
- package/dist/patterns/reactive-layout/index.js +1 -1
- package/dist/patterns/reduction/index.cjs +3 -7
- package/dist/patterns/reduction/index.d.cts +4 -4
- package/dist/patterns/reduction/index.d.ts +4 -4
- package/dist/patterns/reduction/index.js +1 -1
- package/dist/patterns/refine-loop/index.cjs +5 -9
- package/dist/patterns/refine-loop/index.d.cts +6 -6
- package/dist/patterns/refine-loop/index.d.ts +6 -6
- package/dist/patterns/refine-loop/index.js +1 -1
- package/dist/patterns/resilient-pipeline/index.cjs +1 -1
- package/dist/patterns/resilient-pipeline/index.d.cts +4 -8
- package/dist/patterns/resilient-pipeline/index.d.ts +4 -8
- package/dist/patterns/resilient-pipeline/index.js +1 -1
- package/dist/patterns/surface/index.cjs +12 -16
- package/dist/patterns/surface/index.d.cts +6 -6
- package/dist/patterns/surface/index.d.ts +6 -6
- package/dist/patterns/surface/index.js +1 -1
- package/dist/{pipeline-graph-DuHpXSOn.d.cts → pipeline-graph-BQPr2Lqs.d.cts} +34 -17
- package/dist/{pipeline-graph-9JBbmRxA.d.ts → pipeline-graph-D8vKcO_p.d.ts} +34 -17
- package/dist/{reactive-layout-BMLDB4Vd.d.cts → reactive-layout-8CSc0tiA.d.cts} +2 -2
- package/dist/{reactive-layout-D-tRiNhg.d.ts → reactive-layout-DkTXxtSy.d.ts} +2 -2
- package/dist/{reactive-log-BgWSA1fg.d.ts → reactive-log-BlAsPLl2.d.ts} +2 -2
- package/dist/{reactive-log-C3IMAGpT.d.cts → reactive-log-_zeEnB9H.d.cts} +2 -2
- package/dist/{reactive-map-DmgeADH8.d.cts → reactive-map-B2qfD3hb.d.cts} +1 -1
- package/dist/{reactive-map-CHyeCf4D.d.ts → reactive-map-jFIsE6Kt.d.ts} +1 -1
- package/dist/resilience-HTF2LBRS.js +1 -0
- package/dist/{sugar-D13E2M_z.d.ts → sugar-BhfjgetH.d.ts} +1 -1
- package/dist/{sugar-DgaGJcI6.d.cts → sugar-DzePN5-g.d.cts} +1 -1
- package/dist/{topology-tree-jrZue3ao.d.cts → topology-tree-B5Ngw3j0.d.cts} +1 -1
- package/dist/{topology-tree-D47-nI6Z.d.ts → topology-tree-BtvbgMXJ.d.ts} +1 -1
- package/dist/{types-BMSGPlpO.d.cts → types-1Dhoi7HM.d.cts} +1 -1
- package/dist/{types-CidcBDuk.d.ts → types-39jk0kaV.d.ts} +1 -1
- package/package.json +11 -1
- package/dist/chunk-2YFDSYEF.js +0 -1
- package/dist/chunk-5BGFS2XH.js +0 -1
- package/dist/chunk-CMTN3KPT.js +0 -80
- package/dist/chunk-DQJLC6YY.js +0 -1
- package/dist/chunk-G7JN6LCB.js +0 -1
- package/dist/chunk-KJEAIIIY.js +0 -43
- package/dist/chunk-LV3ACS5J.js +0 -1
- package/dist/chunk-NN3QPJ6U.js +0 -1
- package/dist/chunk-NSAZ6PR6.js +0 -1
- package/dist/chunk-O32GJOUJ.js +0 -1
- package/dist/chunk-QEVSIVSF.js +0 -1
- package/dist/chunk-QMC2PLNM.js +0 -7
- package/dist/chunk-QOJFR6GS.js +0 -1
- package/dist/chunk-SFK7MN7S.js +0 -1
- package/dist/chunk-TB7JKSVS.js +0 -61
- package/dist/chunk-UAXFKMAG.js +0 -1
- package/dist/chunk-XIMFHEKV.js +0 -1
- package/dist/chunk-XLMYQB6F.js +0 -1
- package/dist/chunk-XLYF4LBH.js +0 -1
- package/dist/imperative-audit-ahAE65a9.d.cts +0 -28
- package/dist/imperative-audit-ahAE65a9.d.ts +0 -28
- package/dist/index-CpdnP-0y.d.cts +0 -186
- package/dist/index-DOU1Ee_k.d.ts +0 -186
- package/dist/resilience-LGBK236C.js +0 -1
package/dist/chunk-XLYF4LBH.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as $}from"./chunk-6KZZ6XQE.js";import{c as O}from"./chunk-O32GJOUJ.js";import{a as C}from"./chunk-NSAZ6PR6.js";import{k as A}from"./chunk-QMC2PLNM.js";import{b as x}from"./chunk-7KZZLWZ6.js";import{C as R}from"./chunk-RZ5HKPGI.js";import{C as T,E as N,G as E,o as b,p as w,u as P,w as S}from"./chunk-LYCLF26R.js";import{b as v}from"./chunk-CK2E7BTU.js";import{b as M}from"./chunk-QYADASLV.js";var J={};M(J,{AuditTrailGraph:()=>k,PolicyEnforcerGraph:()=>G,auditTrail:()=>z,complianceSnapshot:()=>F,policyEnforcer:()=>K,reactiveExplainPath:()=>q});function V(i,t){return O("audit",i,t)}var L=new Set(["data","error","complete","teardown"]),k=class extends A{entries;count;_log;_target;constructor(t,n){super(n.name??`${t.name}_audit`,n.graph),this._target=t,this._log=x([],{name:"entries",...n.maxSize!=null?{maxSize:n.maxSize}:{}}),this.entries=this._log.entries,this.add(this.entries,{name:"entries"}),this.count=E([this.entries],([c])=>c.length,{name:"count",describeKind:"derived",meta:V("count")}),this.add(this.count,{name:"count"}),this.addDisposer(R(this.count));let o=n.includeTypes!=null?new Set(n.includeTypes):L,u=n.filter,a=0,h=t.observe({timeline:!0,structured:!0}),m=h.onEvent(c=>{if(c.type==="derived")return;let e=c.type;if(!o.has(e))return;let d=c.path??"",r={seq:a++,timestamp_ns:c.timestamp_ns??b(),wall_clock_ns:w(),path:d,type:e},f=(d?D(t,d):void 0)?.lastMutation;f!=null&&(r.actor=f.actor),e==="data"&&(r.value=c.data),e==="error"&&(r.error=c.data);let l=d?U(t,d):void 0;l!=null&&(r.annotation=l),!(u!=null&&!u(r))&&this._log.append(r)});this.addDisposer(()=>{m(),h.dispose()}),this.addDisposer(()=>this._log.disposeAllViews())}all(){return this.entries.cache??[]}byNode(t){return this.all().filter(n=>n.path===t)}byActor(t){return this.all().filter(n=>n.actor?.id===t)}byActorType(t){return this.all().filter(n=>n.actor?.type===t)}byTimeRange(t,n){return this.all().filter(o=>!(o.timestamp_ns<t||n!=null&&o.timestamp_ns>=n))}get target(){return this._target}};function z(i,t={}){return new k(i,t)}var G=class extends A{policies;violations;violationCount;_target;_mode;_currentGuard;constructor(t,n,o){super(o.name??`${t.name}_policy`,o.graph),this._target=t,this._mode=o.mode??"audit";let u=I(n)?n:N(n,{name:"policies"});this.policies=u,this.add(this.policies,{name:"policies"}),this.violations=new $("violations",{retainedLimit:o.violationsLimit??1e3}),this.mount("violations",this.violations),this.violationCount=E([this.violations.events],([e])=>e.length,{name:"violationCount",describeKind:"derived",meta:V("policy_violation_count")}),this.add(this.violationCount,{name:"violationCount"}),this.addDisposer(R(this.violationCount));let h=u.cache??[];this._currentGuard=P(h);let m=u.subscribe(e=>{for(let d of e)d[0]===v&&(h=d[1]??[],this._currentGuard=P(h))});this.addDisposer(m);let c=o.paths!=null?[...o.paths]:j(t);if(this._mode==="enforce"){let e=new Map,d=r=>{if(e.has(r))return;let s=D(t,r);if(!(s instanceof T))return;let f=(l,p)=>{let y=this._currentGuard(l,p);return y||this._publishViolation(l,p,r,"blocked"),y};e.set(r,s._pushGuard(f))};for(let r of c)d(r);if(o.paths==null){let r=C(t,(s,f,l)=>{if(s.kind==="added")if(s.nodeKind==="node")d(`${l}${s.name}`);else{let p=f._mounts.get(s.name);if(!(p instanceof A))return;let y=`${l}${s.name}::`,_=j(p);for(let g of _)d(g===""?`${l}${s.name}`:`${y}${g}`)}else if(s.kind==="removed")if(s.nodeKind==="node"){let p=`${l}${s.name}`,y=e.get(p);y!=null&&(y(),e.delete(p))}else{let p=`${l}${s.name}`,y=`${p}::`;for(let[_,g]of e)(_===p||_.startsWith(y))&&(g(),e.delete(_))}});this.addDisposer(r)}else{let r=t.topology.subscribe(s=>{for(let f of s){if(f[0]!==v)continue;let l=f[1];if(l.kind!=="removed"||l.nodeKind!=="node")continue;let p=e.get(l.name);p!=null&&(p(),e.delete(l.name))}});this.addDisposer(r)}this.addDisposer(()=>{for(let r of e.values())r();e.clear()})}else{let e=t.observe({timeline:!0,structured:!0}),d=e.onEvent(r=>{if(r.type!=="data"&&r.type!=="error")return;let s=r.path??"";if(!s||o.paths!=null&&!o.paths.includes(s))return;let f=r.actor??D(t,s)?.lastMutation?.actor;if(f==null)return;let l="write";this._currentGuard(f,l)||this._publishViolation(f,l,s,"observed")});this.addDisposer(()=>{d(),e.dispose()})}}_publishViolation(t,n,o,u){this.violations.publish({timestamp_ns:b(),wall_clock_ns:w(),path:o,actor:t,action:n,mode:this._mode,result:u})}all(){return this.violations.retained()}get mode(){return this._mode}get target(){return this._target}};function K(i,t,n={}){return new G(i,t,n)}function q(i,t,n,o){return i.explain(t,n,{reactive:!0,...o})}function F(i,t={}){let n={format_version:1,timestamp_ns:b(),wall_clock_ns:w(),graph:i.snapshot()};if(t.actor!=null&&(n.actor=t.actor),t.audit!=null){let u=[...t.audit.all()];n.audit={count:u.length,entries:u}}if(t.policies!=null){let u=t.policies.policies.cache??[];n.policies={mode:t.policies.mode,rules:u,violations:[...t.policies.all()]}}let o=B(n);return{...n,fingerprint:o}}function I(i){return typeof i=="object"&&i!==null&&"subscribe"in i}function D(i,t){try{return i.node(t)}catch{return}}function U(i,t){try{return i.annotation(t)}catch{return}}function j(i){let t=i.describe({detail:"minimal"});return Object.keys(t.nodes)}function B(i){return S(JSON.stringify(H(i)))}function H(i){let t=new Set,n=o=>{if(o===void 0)return{__undefined:!0};if(o===null)return null;let u=typeof o;if(u==="bigint")return{__bigint:o.toString()};if(u!=="object")return o;let a=o;if(t.has(a))return{__circular:!0};t.add(a);try{if(Array.isArray(a))return a.map(n);if(a instanceof Date)return{__date:a.toISOString()};if(a instanceof RegExp)return{__regexp:{source:a.source,flags:a.flags}};if(a instanceof Map)return{__map:[...a.entries()].map(([c,e])=>[n(c),n(e)])};if(a instanceof Set)return{__set:[...a].map(n)};if(ArrayBuffer.isView(a)){let m=a,c=new Array(m.length);for(let e=0;e<m.length;e++)c[e]=m[e]??0;return{__typed_array:{ctor:a.constructor.name,data:c}}}let h={};for(let m of Object.keys(a).sort())h[m]=n(a[m]);return h}finally{t.delete(a)}};return n(i)}export{k as a,z as b,G as c,K as d,q as e,F as f,J as g};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Imperative-controller-with-audit helper layer (Audit 2 — locked 2026-04-24).
|
|
3
|
-
*
|
|
4
|
-
* Five Phase-4 primitives share the same shape: imperative mutation methods +
|
|
5
|
-
* closure state + reactive audit log + freeze-at-entry + rollback-on-throw.
|
|
6
|
-
* This module factors out the common machinery so each primitive becomes
|
|
7
|
-
* declarative wiring over typed audit records:
|
|
8
|
-
* - `gate`, `pipeline.gate` (Wave A.2 Unit 8)
|
|
9
|
-
* - `JobQueueGraph` (Wave B.3 Unit 15)
|
|
10
|
-
* - `CqrsGraph.dispatch` (Wave C.2 Unit 20)
|
|
11
|
-
* - `CqrsGraph.saga` (Wave C.3 Unit 22)
|
|
12
|
-
* - `processManager` (Wave 7) [out of scope this commit]
|
|
13
|
-
*
|
|
14
|
-
* @internal — exposed for primitive impls only; not re-exported through any
|
|
15
|
-
* patterns/<x>/index.ts barrel.
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
/** Shared base shape for every audit record. Per-primitive types extend this. */
|
|
19
|
-
interface BaseAuditRecord {
|
|
20
|
-
readonly t_ns: number;
|
|
21
|
-
readonly seq?: number;
|
|
22
|
-
readonly handlerVersion?: {
|
|
23
|
-
id: string;
|
|
24
|
-
version: string | number;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export type { BaseAuditRecord as B };
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Imperative-controller-with-audit helper layer (Audit 2 — locked 2026-04-24).
|
|
3
|
-
*
|
|
4
|
-
* Five Phase-4 primitives share the same shape: imperative mutation methods +
|
|
5
|
-
* closure state + reactive audit log + freeze-at-entry + rollback-on-throw.
|
|
6
|
-
* This module factors out the common machinery so each primitive becomes
|
|
7
|
-
* declarative wiring over typed audit records:
|
|
8
|
-
* - `gate`, `pipeline.gate` (Wave A.2 Unit 8)
|
|
9
|
-
* - `JobQueueGraph` (Wave B.3 Unit 15)
|
|
10
|
-
* - `CqrsGraph.dispatch` (Wave C.2 Unit 20)
|
|
11
|
-
* - `CqrsGraph.saga` (Wave C.3 Unit 22)
|
|
12
|
-
* - `processManager` (Wave 7) [out of scope this commit]
|
|
13
|
-
*
|
|
14
|
-
* @internal — exposed for primitive impls only; not re-exported through any
|
|
15
|
-
* patterns/<x>/index.ts barrel.
|
|
16
|
-
*/
|
|
17
|
-
|
|
18
|
-
/** Shared base shape for every audit record. Per-primitive types extend this. */
|
|
19
|
-
interface BaseAuditRecord {
|
|
20
|
-
readonly t_ns: number;
|
|
21
|
-
readonly seq?: number;
|
|
22
|
-
readonly handlerVersion?: {
|
|
23
|
-
id: string;
|
|
24
|
-
version: string | number;
|
|
25
|
-
};
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
export type { BaseAuditRecord as B };
|
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
import { a as Node, N as NodeOptions } from './node-fSc-hCv8.cjs';
|
|
2
|
-
import { a as GraphOptions, G as Graph } from './graph-CHsVwf9S.cjs';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Reduction primitives (roadmap §8.1).
|
|
6
|
-
*
|
|
7
|
-
* Composable building blocks for taking heterogeneous massive inputs and producing
|
|
8
|
-
* prioritized, auditable, human-actionable output. Each primitive is either a Graph
|
|
9
|
-
* factory or a Node factory, built on top of core + extra primitives.
|
|
10
|
-
*
|
|
11
|
-
* @module
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
type StepRef = string | Node<unknown>;
|
|
15
|
-
/** A named stage for {@link funnel}. */
|
|
16
|
-
type FunnelStage = {
|
|
17
|
-
/** Stage name (mounted as subgraph). */
|
|
18
|
-
name: string;
|
|
19
|
-
/** Builder: receives a sub-graph, should add an `"input"` and `"output"` node. */
|
|
20
|
-
build: (sub: Graph) => void;
|
|
21
|
-
};
|
|
22
|
-
/** Options for {@link funnel}. */
|
|
23
|
-
type FunnelOptions = GraphOptions & {
|
|
24
|
-
meta?: Record<string, unknown>;
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* Multi-source merge with sequential reduction stages.
|
|
28
|
-
*
|
|
29
|
-
* Sources are merged into a single stream. Each stage is a named subgraph
|
|
30
|
-
* (mounted via `graph.mount()`). Stages connect linearly:
|
|
31
|
-
* `merged → stage[0].input → stage[0].output → stage[1].input → ...`
|
|
32
|
-
*
|
|
33
|
-
* @param name - Graph name.
|
|
34
|
-
* @param sources - Input nodes to merge.
|
|
35
|
-
* @param stages - Sequential reduction stages.
|
|
36
|
-
* @param opts - Optional graph/meta options.
|
|
37
|
-
* @returns Graph with `"merged"` and mounted stage subgraphs.
|
|
38
|
-
*
|
|
39
|
-
* @category patterns
|
|
40
|
-
*/
|
|
41
|
-
declare function funnel<T>(name: string, sources: ReadonlyArray<Node<T>>, stages: ReadonlyArray<FunnelStage>, opts?: FunnelOptions): Graph;
|
|
42
|
-
/** Options for {@link feedback}. */
|
|
43
|
-
type FeedbackOptions = {
|
|
44
|
-
/** Maximum feedback iterations before stopping (default: 10). */
|
|
45
|
-
maxIterations?: number;
|
|
46
|
-
/** Optional budget gate node path for cost-bounded iteration. */
|
|
47
|
-
budgetNode?: StepRef;
|
|
48
|
-
meta?: Record<string, unknown>;
|
|
49
|
-
};
|
|
50
|
-
/**
|
|
51
|
-
* Introduce a bounded reactive cycle into an existing graph.
|
|
52
|
-
*
|
|
53
|
-
* When `condition` emits a non-null DATA value, the feedback effect routes it
|
|
54
|
-
* back to the `reentry` state node — creating a cycle. Bounded by
|
|
55
|
-
* `maxIterations` (default 10). The counter node (`__feedback_<condition>`)
|
|
56
|
-
* is the source of truth — reset it to 0 to allow more iterations.
|
|
57
|
-
*
|
|
58
|
-
* To remove the feedback cycle, call `graph.remove("__feedback_<condition>")`.
|
|
59
|
-
*
|
|
60
|
-
* @param graph - Existing graph to augment with a feedback cycle.
|
|
61
|
-
* @param condition - Path to a node whose DATA triggers feedback.
|
|
62
|
-
* @param reentry - Path to a state node that receives the feedback value.
|
|
63
|
-
* @param opts - Iteration bounds and metadata.
|
|
64
|
-
* @returns The same graph (mutated with feedback nodes added).
|
|
65
|
-
*
|
|
66
|
-
* @category patterns
|
|
67
|
-
*/
|
|
68
|
-
declare function feedback(graph: Graph, condition: string, reentry: string, opts?: FeedbackOptions): Graph;
|
|
69
|
-
/** A reactive constraint for {@link budgetGate}. */
|
|
70
|
-
type BudgetConstraint<T = unknown> = {
|
|
71
|
-
/** Constraint node whose value is checked. */
|
|
72
|
-
node: Node<T>;
|
|
73
|
-
/** Returns `true` when the constraint is satisfied (budget available). */
|
|
74
|
-
check: (value: T) => boolean;
|
|
75
|
-
};
|
|
76
|
-
/** Options for {@link budgetGate}. */
|
|
77
|
-
type BudgetGateOptions = Omit<NodeOptions<unknown>, "describeKind" | "name" | "meta"> & {
|
|
78
|
-
meta?: Record<string, unknown>;
|
|
79
|
-
};
|
|
80
|
-
/**
|
|
81
|
-
* Pass-through that respects reactive constraint nodes.
|
|
82
|
-
*
|
|
83
|
-
* DATA flows through when all constraints are satisfied. When any constraint
|
|
84
|
-
* is exceeded, PAUSE is sent upstream and DATA is buffered. When constraints
|
|
85
|
-
* relax, RESUME is sent and buffered DATA flushes.
|
|
86
|
-
*
|
|
87
|
-
* @param source - Input node.
|
|
88
|
-
* @param constraints - Reactive constraint checks.
|
|
89
|
-
* @param opts - Optional node options.
|
|
90
|
-
* @returns Gated node.
|
|
91
|
-
*
|
|
92
|
-
* @category patterns
|
|
93
|
-
*/
|
|
94
|
-
declare function budgetGate<T>(source: Node<T>, constraints: ReadonlyArray<BudgetConstraint>, opts?: BudgetGateOptions): Node<T>;
|
|
95
|
-
/** A scored item with full breakdown. */
|
|
96
|
-
type ScoredItem<T = unknown> = {
|
|
97
|
-
/** Original value. */
|
|
98
|
-
value: T;
|
|
99
|
-
/** Final weighted score. */
|
|
100
|
-
score: number;
|
|
101
|
-
/** Per-signal breakdown: signal index → weighted contribution. */
|
|
102
|
-
breakdown: number[];
|
|
103
|
-
};
|
|
104
|
-
/** Options for {@link scorer}. */
|
|
105
|
-
type ScorerOptions = Omit<NodeOptions<unknown>, "describeKind" | "name" | "meta"> & {
|
|
106
|
-
meta?: Record<string, unknown>;
|
|
107
|
-
/** Custom scoring function per signal. Default: identity (signal value IS the score). */
|
|
108
|
-
scoreFns?: ReadonlyArray<(value: unknown) => number>;
|
|
109
|
-
};
|
|
110
|
-
/**
|
|
111
|
-
* Reactive multi-signal scoring with live weights.
|
|
112
|
-
*
|
|
113
|
-
* Each source emits items to score. Weights are reactive state nodes that
|
|
114
|
-
* LLM or human can adjust live. Output is sorted scored items with full
|
|
115
|
-
* breakdown.
|
|
116
|
-
*
|
|
117
|
-
* @param sources - Signal nodes (each emits a numeric score dimension).
|
|
118
|
-
* @param weights - Reactive weight nodes (one per source).
|
|
119
|
-
* @param opts - Optional node/meta options.
|
|
120
|
-
* @returns Node emitting scored output.
|
|
121
|
-
*
|
|
122
|
-
* @category patterns
|
|
123
|
-
*/
|
|
124
|
-
declare function scorer(sources: ReadonlyArray<Node<number>>, weights: ReadonlyArray<Node<number>>, opts?: ScorerOptions): Node<ScoredItem<number[]>>;
|
|
125
|
-
/** A single effectiveness record for an action×context pair. */
|
|
126
|
-
type EffectivenessEntry = {
|
|
127
|
-
readonly key: string;
|
|
128
|
-
readonly attempts: number;
|
|
129
|
-
readonly successes: number;
|
|
130
|
-
readonly successRate: number;
|
|
131
|
-
};
|
|
132
|
-
/** Snapshot shape for the effectiveness tracker node. */
|
|
133
|
-
type EffectivenessSnapshot = ReadonlyMap<string, EffectivenessEntry>;
|
|
134
|
-
/** Bundle returned by {@link effectivenessTracker}. */
|
|
135
|
-
interface EffectivenessTrackerBundle {
|
|
136
|
-
/** Reactive node — current effectiveness map snapshot. */
|
|
137
|
-
readonly node: Node<EffectivenessSnapshot>;
|
|
138
|
-
/** Record a completed action (success or failure). */
|
|
139
|
-
record(key: string, success: boolean): void;
|
|
140
|
-
/** Look up effectiveness for a specific key. */
|
|
141
|
-
lookup(key: string): EffectivenessEntry | undefined;
|
|
142
|
-
/** Tear down internal keepalive subscriptions. */
|
|
143
|
-
dispose(): void;
|
|
144
|
-
}
|
|
145
|
-
/** Options for {@link effectivenessTracker}. */
|
|
146
|
-
type EffectivenessTrackerOptions = {
|
|
147
|
-
/** Name for the reactive map (default "effectiveness-entries"). */
|
|
148
|
-
name?: string;
|
|
149
|
-
};
|
|
150
|
-
/**
|
|
151
|
-
* Generic action×context → success rate tracker.
|
|
152
|
-
*
|
|
153
|
-
* Generalized from the harness `strategyModel` pattern. Tracks attempts and
|
|
154
|
-
* successes per string key, exposes a reactive snapshot node, and provides
|
|
155
|
-
* `record()` / `lookup()` methods.
|
|
156
|
-
*
|
|
157
|
-
* Use cases: A/B testing, routing optimization, cache policy tuning, retry
|
|
158
|
-
* strategy selection — any domain that tracks effectiveness per action.
|
|
159
|
-
*
|
|
160
|
-
* @param opts - Optional configuration.
|
|
161
|
-
* @returns Bundle with reactive node, record(), lookup(), dispose().
|
|
162
|
-
*/
|
|
163
|
-
declare function effectivenessTracker(opts?: EffectivenessTrackerOptions): EffectivenessTrackerBundle;
|
|
164
|
-
|
|
165
|
-
type index_BudgetConstraint<T = unknown> = BudgetConstraint<T>;
|
|
166
|
-
type index_BudgetGateOptions = BudgetGateOptions;
|
|
167
|
-
type index_EffectivenessEntry = EffectivenessEntry;
|
|
168
|
-
type index_EffectivenessSnapshot = EffectivenessSnapshot;
|
|
169
|
-
type index_EffectivenessTrackerBundle = EffectivenessTrackerBundle;
|
|
170
|
-
type index_EffectivenessTrackerOptions = EffectivenessTrackerOptions;
|
|
171
|
-
type index_FeedbackOptions = FeedbackOptions;
|
|
172
|
-
type index_FunnelOptions = FunnelOptions;
|
|
173
|
-
type index_FunnelStage = FunnelStage;
|
|
174
|
-
type index_ScoredItem<T = unknown> = ScoredItem<T>;
|
|
175
|
-
type index_ScorerOptions = ScorerOptions;
|
|
176
|
-
type index_StepRef = StepRef;
|
|
177
|
-
declare const index_budgetGate: typeof budgetGate;
|
|
178
|
-
declare const index_effectivenessTracker: typeof effectivenessTracker;
|
|
179
|
-
declare const index_feedback: typeof feedback;
|
|
180
|
-
declare const index_funnel: typeof funnel;
|
|
181
|
-
declare const index_scorer: typeof scorer;
|
|
182
|
-
declare namespace index {
|
|
183
|
-
export { type index_BudgetConstraint as BudgetConstraint, type index_BudgetGateOptions as BudgetGateOptions, type index_EffectivenessEntry as EffectivenessEntry, type index_EffectivenessSnapshot as EffectivenessSnapshot, type index_EffectivenessTrackerBundle as EffectivenessTrackerBundle, type index_EffectivenessTrackerOptions as EffectivenessTrackerOptions, type index_FeedbackOptions as FeedbackOptions, type index_FunnelOptions as FunnelOptions, type index_FunnelStage as FunnelStage, type index_ScoredItem as ScoredItem, type index_ScorerOptions as ScorerOptions, type index_StepRef as StepRef, index_budgetGate as budgetGate, index_effectivenessTracker as effectivenessTracker, index_feedback as feedback, index_funnel as funnel, index_scorer as scorer };
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
export { type BudgetConstraint as B, type EffectivenessEntry as E, type FeedbackOptions as F, type ScoredItem as S, type BudgetGateOptions as a, type EffectivenessSnapshot as b, type EffectivenessTrackerBundle as c, type EffectivenessTrackerOptions as d, type FunnelOptions as e, type FunnelStage as f, type ScorerOptions as g, type StepRef as h, index as i, budgetGate as j, effectivenessTracker as k, feedback as l, funnel as m, scorer as s };
|
package/dist/index-DOU1Ee_k.d.ts
DELETED
|
@@ -1,186 +0,0 @@
|
|
|
1
|
-
import { a as Node, N as NodeOptions } from './node-fSc-hCv8.js';
|
|
2
|
-
import { a as GraphOptions, G as Graph } from './graph-BjW1taJl.js';
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* Reduction primitives (roadmap §8.1).
|
|
6
|
-
*
|
|
7
|
-
* Composable building blocks for taking heterogeneous massive inputs and producing
|
|
8
|
-
* prioritized, auditable, human-actionable output. Each primitive is either a Graph
|
|
9
|
-
* factory or a Node factory, built on top of core + extra primitives.
|
|
10
|
-
*
|
|
11
|
-
* @module
|
|
12
|
-
*/
|
|
13
|
-
|
|
14
|
-
type StepRef = string | Node<unknown>;
|
|
15
|
-
/** A named stage for {@link funnel}. */
|
|
16
|
-
type FunnelStage = {
|
|
17
|
-
/** Stage name (mounted as subgraph). */
|
|
18
|
-
name: string;
|
|
19
|
-
/** Builder: receives a sub-graph, should add an `"input"` and `"output"` node. */
|
|
20
|
-
build: (sub: Graph) => void;
|
|
21
|
-
};
|
|
22
|
-
/** Options for {@link funnel}. */
|
|
23
|
-
type FunnelOptions = GraphOptions & {
|
|
24
|
-
meta?: Record<string, unknown>;
|
|
25
|
-
};
|
|
26
|
-
/**
|
|
27
|
-
* Multi-source merge with sequential reduction stages.
|
|
28
|
-
*
|
|
29
|
-
* Sources are merged into a single stream. Each stage is a named subgraph
|
|
30
|
-
* (mounted via `graph.mount()`). Stages connect linearly:
|
|
31
|
-
* `merged → stage[0].input → stage[0].output → stage[1].input → ...`
|
|
32
|
-
*
|
|
33
|
-
* @param name - Graph name.
|
|
34
|
-
* @param sources - Input nodes to merge.
|
|
35
|
-
* @param stages - Sequential reduction stages.
|
|
36
|
-
* @param opts - Optional graph/meta options.
|
|
37
|
-
* @returns Graph with `"merged"` and mounted stage subgraphs.
|
|
38
|
-
*
|
|
39
|
-
* @category patterns
|
|
40
|
-
*/
|
|
41
|
-
declare function funnel<T>(name: string, sources: ReadonlyArray<Node<T>>, stages: ReadonlyArray<FunnelStage>, opts?: FunnelOptions): Graph;
|
|
42
|
-
/** Options for {@link feedback}. */
|
|
43
|
-
type FeedbackOptions = {
|
|
44
|
-
/** Maximum feedback iterations before stopping (default: 10). */
|
|
45
|
-
maxIterations?: number;
|
|
46
|
-
/** Optional budget gate node path for cost-bounded iteration. */
|
|
47
|
-
budgetNode?: StepRef;
|
|
48
|
-
meta?: Record<string, unknown>;
|
|
49
|
-
};
|
|
50
|
-
/**
|
|
51
|
-
* Introduce a bounded reactive cycle into an existing graph.
|
|
52
|
-
*
|
|
53
|
-
* When `condition` emits a non-null DATA value, the feedback effect routes it
|
|
54
|
-
* back to the `reentry` state node — creating a cycle. Bounded by
|
|
55
|
-
* `maxIterations` (default 10). The counter node (`__feedback_<condition>`)
|
|
56
|
-
* is the source of truth — reset it to 0 to allow more iterations.
|
|
57
|
-
*
|
|
58
|
-
* To remove the feedback cycle, call `graph.remove("__feedback_<condition>")`.
|
|
59
|
-
*
|
|
60
|
-
* @param graph - Existing graph to augment with a feedback cycle.
|
|
61
|
-
* @param condition - Path to a node whose DATA triggers feedback.
|
|
62
|
-
* @param reentry - Path to a state node that receives the feedback value.
|
|
63
|
-
* @param opts - Iteration bounds and metadata.
|
|
64
|
-
* @returns The same graph (mutated with feedback nodes added).
|
|
65
|
-
*
|
|
66
|
-
* @category patterns
|
|
67
|
-
*/
|
|
68
|
-
declare function feedback(graph: Graph, condition: string, reentry: string, opts?: FeedbackOptions): Graph;
|
|
69
|
-
/** A reactive constraint for {@link budgetGate}. */
|
|
70
|
-
type BudgetConstraint<T = unknown> = {
|
|
71
|
-
/** Constraint node whose value is checked. */
|
|
72
|
-
node: Node<T>;
|
|
73
|
-
/** Returns `true` when the constraint is satisfied (budget available). */
|
|
74
|
-
check: (value: T) => boolean;
|
|
75
|
-
};
|
|
76
|
-
/** Options for {@link budgetGate}. */
|
|
77
|
-
type BudgetGateOptions = Omit<NodeOptions<unknown>, "describeKind" | "name" | "meta"> & {
|
|
78
|
-
meta?: Record<string, unknown>;
|
|
79
|
-
};
|
|
80
|
-
/**
|
|
81
|
-
* Pass-through that respects reactive constraint nodes.
|
|
82
|
-
*
|
|
83
|
-
* DATA flows through when all constraints are satisfied. When any constraint
|
|
84
|
-
* is exceeded, PAUSE is sent upstream and DATA is buffered. When constraints
|
|
85
|
-
* relax, RESUME is sent and buffered DATA flushes.
|
|
86
|
-
*
|
|
87
|
-
* @param source - Input node.
|
|
88
|
-
* @param constraints - Reactive constraint checks.
|
|
89
|
-
* @param opts - Optional node options.
|
|
90
|
-
* @returns Gated node.
|
|
91
|
-
*
|
|
92
|
-
* @category patterns
|
|
93
|
-
*/
|
|
94
|
-
declare function budgetGate<T>(source: Node<T>, constraints: ReadonlyArray<BudgetConstraint>, opts?: BudgetGateOptions): Node<T>;
|
|
95
|
-
/** A scored item with full breakdown. */
|
|
96
|
-
type ScoredItem<T = unknown> = {
|
|
97
|
-
/** Original value. */
|
|
98
|
-
value: T;
|
|
99
|
-
/** Final weighted score. */
|
|
100
|
-
score: number;
|
|
101
|
-
/** Per-signal breakdown: signal index → weighted contribution. */
|
|
102
|
-
breakdown: number[];
|
|
103
|
-
};
|
|
104
|
-
/** Options for {@link scorer}. */
|
|
105
|
-
type ScorerOptions = Omit<NodeOptions<unknown>, "describeKind" | "name" | "meta"> & {
|
|
106
|
-
meta?: Record<string, unknown>;
|
|
107
|
-
/** Custom scoring function per signal. Default: identity (signal value IS the score). */
|
|
108
|
-
scoreFns?: ReadonlyArray<(value: unknown) => number>;
|
|
109
|
-
};
|
|
110
|
-
/**
|
|
111
|
-
* Reactive multi-signal scoring with live weights.
|
|
112
|
-
*
|
|
113
|
-
* Each source emits items to score. Weights are reactive state nodes that
|
|
114
|
-
* LLM or human can adjust live. Output is sorted scored items with full
|
|
115
|
-
* breakdown.
|
|
116
|
-
*
|
|
117
|
-
* @param sources - Signal nodes (each emits a numeric score dimension).
|
|
118
|
-
* @param weights - Reactive weight nodes (one per source).
|
|
119
|
-
* @param opts - Optional node/meta options.
|
|
120
|
-
* @returns Node emitting scored output.
|
|
121
|
-
*
|
|
122
|
-
* @category patterns
|
|
123
|
-
*/
|
|
124
|
-
declare function scorer(sources: ReadonlyArray<Node<number>>, weights: ReadonlyArray<Node<number>>, opts?: ScorerOptions): Node<ScoredItem<number[]>>;
|
|
125
|
-
/** A single effectiveness record for an action×context pair. */
|
|
126
|
-
type EffectivenessEntry = {
|
|
127
|
-
readonly key: string;
|
|
128
|
-
readonly attempts: number;
|
|
129
|
-
readonly successes: number;
|
|
130
|
-
readonly successRate: number;
|
|
131
|
-
};
|
|
132
|
-
/** Snapshot shape for the effectiveness tracker node. */
|
|
133
|
-
type EffectivenessSnapshot = ReadonlyMap<string, EffectivenessEntry>;
|
|
134
|
-
/** Bundle returned by {@link effectivenessTracker}. */
|
|
135
|
-
interface EffectivenessTrackerBundle {
|
|
136
|
-
/** Reactive node — current effectiveness map snapshot. */
|
|
137
|
-
readonly node: Node<EffectivenessSnapshot>;
|
|
138
|
-
/** Record a completed action (success or failure). */
|
|
139
|
-
record(key: string, success: boolean): void;
|
|
140
|
-
/** Look up effectiveness for a specific key. */
|
|
141
|
-
lookup(key: string): EffectivenessEntry | undefined;
|
|
142
|
-
/** Tear down internal keepalive subscriptions. */
|
|
143
|
-
dispose(): void;
|
|
144
|
-
}
|
|
145
|
-
/** Options for {@link effectivenessTracker}. */
|
|
146
|
-
type EffectivenessTrackerOptions = {
|
|
147
|
-
/** Name for the reactive map (default "effectiveness-entries"). */
|
|
148
|
-
name?: string;
|
|
149
|
-
};
|
|
150
|
-
/**
|
|
151
|
-
* Generic action×context → success rate tracker.
|
|
152
|
-
*
|
|
153
|
-
* Generalized from the harness `strategyModel` pattern. Tracks attempts and
|
|
154
|
-
* successes per string key, exposes a reactive snapshot node, and provides
|
|
155
|
-
* `record()` / `lookup()` methods.
|
|
156
|
-
*
|
|
157
|
-
* Use cases: A/B testing, routing optimization, cache policy tuning, retry
|
|
158
|
-
* strategy selection — any domain that tracks effectiveness per action.
|
|
159
|
-
*
|
|
160
|
-
* @param opts - Optional configuration.
|
|
161
|
-
* @returns Bundle with reactive node, record(), lookup(), dispose().
|
|
162
|
-
*/
|
|
163
|
-
declare function effectivenessTracker(opts?: EffectivenessTrackerOptions): EffectivenessTrackerBundle;
|
|
164
|
-
|
|
165
|
-
type index_BudgetConstraint<T = unknown> = BudgetConstraint<T>;
|
|
166
|
-
type index_BudgetGateOptions = BudgetGateOptions;
|
|
167
|
-
type index_EffectivenessEntry = EffectivenessEntry;
|
|
168
|
-
type index_EffectivenessSnapshot = EffectivenessSnapshot;
|
|
169
|
-
type index_EffectivenessTrackerBundle = EffectivenessTrackerBundle;
|
|
170
|
-
type index_EffectivenessTrackerOptions = EffectivenessTrackerOptions;
|
|
171
|
-
type index_FeedbackOptions = FeedbackOptions;
|
|
172
|
-
type index_FunnelOptions = FunnelOptions;
|
|
173
|
-
type index_FunnelStage = FunnelStage;
|
|
174
|
-
type index_ScoredItem<T = unknown> = ScoredItem<T>;
|
|
175
|
-
type index_ScorerOptions = ScorerOptions;
|
|
176
|
-
type index_StepRef = StepRef;
|
|
177
|
-
declare const index_budgetGate: typeof budgetGate;
|
|
178
|
-
declare const index_effectivenessTracker: typeof effectivenessTracker;
|
|
179
|
-
declare const index_feedback: typeof feedback;
|
|
180
|
-
declare const index_funnel: typeof funnel;
|
|
181
|
-
declare const index_scorer: typeof scorer;
|
|
182
|
-
declare namespace index {
|
|
183
|
-
export { type index_BudgetConstraint as BudgetConstraint, type index_BudgetGateOptions as BudgetGateOptions, type index_EffectivenessEntry as EffectivenessEntry, type index_EffectivenessSnapshot as EffectivenessSnapshot, type index_EffectivenessTrackerBundle as EffectivenessTrackerBundle, type index_EffectivenessTrackerOptions as EffectivenessTrackerOptions, type index_FeedbackOptions as FeedbackOptions, type index_FunnelOptions as FunnelOptions, type index_FunnelStage as FunnelStage, type index_ScoredItem as ScoredItem, type index_ScorerOptions as ScorerOptions, type index_StepRef as StepRef, index_budgetGate as budgetGate, index_effectivenessTracker as effectivenessTracker, index_feedback as feedback, index_funnel as funnel, index_scorer as scorer };
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
export { type BudgetConstraint as B, type EffectivenessEntry as E, type FeedbackOptions as F, type ScoredItem as S, type BudgetGateOptions as a, type EffectivenessSnapshot as b, type EffectivenessTrackerBundle as c, type EffectivenessTrackerOptions as d, type FunnelOptions as e, type FunnelStage as f, type ScorerOptions as g, type StepRef as h, index as i, budgetGate as j, effectivenessTracker as k, feedback as l, funnel as m, scorer as s };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a,b,c,d,e,f,g,h,i,j,k}from"./chunk-XIMFHEKV.js";import"./chunk-ESMPEKEV.js";import"./chunk-4VVTGLXJ.js";import"./chunk-DQJLC6YY.js";import"./chunk-RZ5HKPGI.js";import"./chunk-LYCLF26R.js";import"./chunk-CK2E7BTU.js";import"./chunk-QYADASLV.js";export{b as CircuitOpenError,f as RateLimiterOverflowError,i as TimeoutError,c as circuitBreaker,j as fallback,g as rateLimiter,a as retry,k as timeout,e as tokenBucket,d as withBreaker,h as withStatus};
|