@cleocode/cleo 2026.9.7 → 2026.9.10
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/cli/index.js +3873 -2234
- package/package.json +14 -13
- package/scripts/check-cleo-tarball-size.mjs +105 -0
- package/scripts/copy-studio-dist.mjs +33 -9
- package/studio-dist/client/_app/immutable/chunks/{wI_OOyoh.js → BB7zPpV2.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{D8NsLz6i.js → BOnrCZaR.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{eK8hf4s7.js → BSRBuVG3.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/C6jhAnil.js +1 -0
- package/studio-dist/client/_app/immutable/chunks/C87Q3uxm.js +1 -0
- package/studio-dist/client/_app/immutable/chunks/{DVHIxkgs.js → CLZBEpLY.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{CqF5Lomf.js → CTLGzgdN.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{o1PZ6Kzq.js → CY3heNub.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{RptFUp2P.js → Cge6qiwc.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{BRgWBQlV.js → CnwXLaZJ.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{Bxz2A0ZC.js → DEH43YwF.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/DGftG5oL.js +3 -0
- package/studio-dist/client/_app/immutable/chunks/DX_JOBSO.js +1 -0
- package/studio-dist/client/_app/immutable/chunks/{CEqOYim7.js → DZrdToAH.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/EZwHPWle.js +2 -0
- package/studio-dist/client/_app/immutable/chunks/cWVw9W0E.js +3 -0
- package/studio-dist/client/_app/immutable/chunks/{B9psmq5-.js → rB_71s8h.js} +1 -1
- package/studio-dist/client/_app/immutable/chunks/{JPJd4fEI.js → rUtW7Hx6.js} +1 -1
- package/studio-dist/client/_app/immutable/entry/app.tvu3-wbp.js +2 -0
- package/studio-dist/client/_app/immutable/entry/start.BS-rpdjH.js +1 -0
- package/studio-dist/client/_app/immutable/nodes/{0.CZzEEyVh.js → 0.DMP7swbx.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{1.Bj3Opbua.js → 1.CYZMFpIp.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{10.xe_Mc2Ko.js → 10.3rxHNnSx.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{11.DuKPA7JD.js → 11.B6jWv3Kz.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{12.BoZ_QrUS.js → 12.BrDHeTEq.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{13.DFJiUiv8.js → 13.CE5bd4JV.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{14.eaAlFU4w.js → 14.DgXD2LRx.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{15.BfXgiwMC.js → 15.Cz1KI9Fv.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{16.mEwy9cqh.js → 16.K9wYQPhb.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{17.DP2QtQGn.js → 17.CtUmdfMg.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{18.Bu0054sX.js → 18.mtosd0sL.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{19.UWt6QbCm.js → 19.su55K8y_.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{2.y5jKpHiR.js → 2.mqgFVWFQ.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{20.B1AIHdkP.js → 20.NJuHLxuS.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{21.CpAN71H8.js → 21.BhwhdQCq.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{22.CrYKrN4c.js → 22.BmJEWwER.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{23.pGRaHQjq.js → 23.CAVIJEH-.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{24.BUoUu37z.js → 24.CMuXs5Sy.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/25.DhMBJYAo.js +39 -0
- package/studio-dist/client/_app/immutable/nodes/26.CJ4FA5FS.js +1 -0
- package/studio-dist/client/_app/immutable/nodes/{28.DcmYM7lb.js → 28.D64RBcfs.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{29.lbHbMqNO.js → 29.yfuBeH1x.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{3.Dyir4xXj.js → 3.y115j1d5.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{30.DXj0Wm2A.js → 30.1WUv5bh9.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/4.D6vXYBoQ.js +1 -0
- package/studio-dist/client/_app/immutable/nodes/{5.VWSdP7oc.js → 5.hjw2O-4e.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{6.Dl-XLwOj.js → 6.CAoDfDt6.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{7.CFuC5L-y.js → 7.CLgPSQ8Z.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{8.BCJ0DhOb.js → 8.zuaO1Hik.js} +1 -1
- package/studio-dist/client/_app/immutable/nodes/{9.Bq4SUzL9.js → 9.Cdsd85m2.js} +1 -1
- package/studio-dist/client/_app/version.json +1 -1
- package/studio-dist/server/chunks/0-BQvtFOrC.js +41 -0
- package/studio-dist/server/chunks/1-Bx2_yoiK.js +9 -0
- package/studio-dist/server/chunks/{10-DvOD4ksa.js → 10-CYLc3d5x.js} +3 -3
- package/studio-dist/server/chunks/{11-DMnBZ02H.js → 11-DcIYR5vm.js} +3 -3
- package/studio-dist/server/chunks/{12-CCyRyRWX.js → 12-WE1u104t.js} +3 -3
- package/studio-dist/server/chunks/{13-Dx1c3a_X.js → 13-joBDoxhK.js} +3 -3
- package/studio-dist/server/chunks/{14-Bo-dTCaZ.js → 14-Doj5F4uJ.js} +3 -3
- package/studio-dist/server/chunks/{15-BvUNl3KL.js → 15-nQTeHGD1.js} +3 -3
- package/studio-dist/server/chunks/{16-De6EzPSa.js → 16-CcTN0e8k.js} +5 -4
- package/studio-dist/server/chunks/{17-CZNsiZhi.js → 17-DWiFnzES.js} +10 -93
- package/studio-dist/server/chunks/{18-CbxxjZox.js → 18-Dcc9GnPo.js} +5 -4
- package/studio-dist/server/chunks/{19-DqHyladS.js → 19-BAQHPrMB.js} +3 -3
- package/studio-dist/server/chunks/{2-COvmA-ZA.js → 2-DXSVVaej.js} +10 -93
- package/studio-dist/server/chunks/20-DfQlGHPW.js +57 -0
- package/studio-dist/server/chunks/{21-DXK9ptAC.js → 21-qhGjkW41.js} +4 -31
- package/studio-dist/server/chunks/{22-DD5CLWJC.js → 22-Byy16hFA.js} +3 -3
- package/studio-dist/server/chunks/23-CZpFrGp4.js +97 -0
- package/studio-dist/server/chunks/24-EEysaT9T.js +67 -0
- package/studio-dist/server/chunks/{25-CAg6Xcmn.js → 25-CgiYn70L.js} +15 -96
- package/studio-dist/server/chunks/{26-_nfVTvNi.js → 26-Cfd6BaUb.js} +12 -93
- package/studio-dist/server/chunks/{27-C9edghG4.js → 27-Cqzlh9gZ.js} +3 -2
- package/studio-dist/server/chunks/{28-VemTJGyc.js → 28-DeYe2rpm.js} +8 -62
- package/studio-dist/server/chunks/{29-CXP-m29t.js → 29-6pjLM0Z1.js} +10 -93
- package/studio-dist/server/chunks/{3-B8KhfvHp.js → 3-E_fWDAkq.js} +9 -25
- package/studio-dist/server/chunks/{30-QiM1S4cJ.js → 30-Dw317sSW.js} +10 -93
- package/studio-dist/server/chunks/{31-BwdY9NnB.js → 31-Q4kHbp8j.js} +3 -2
- package/studio-dist/server/chunks/{4-CSaG4HjO.js → 4-C9BMSh4K.js} +4 -3
- package/studio-dist/server/chunks/{5-i5ry4y3C.js → 5-C0CF4WKG.js} +3 -3
- package/studio-dist/server/chunks/{6-DR1GWBMT.js → 6-BWyOJust.js} +3 -3
- package/studio-dist/server/chunks/{7-DSNwn3aQ.js → 7-CK4MK5gy.js} +3 -3
- package/studio-dist/server/chunks/{8-Bj0bx07K.js → 8-CiX7Xk9k.js} +3 -3
- package/studio-dist/server/chunks/{9-B3Tz0mZq.js → 9-Be5118w4.js} +3 -3
- package/studio-dist/server/chunks/{HeroHeader-v4Q9vaGr.js → HeroHeader-BrGN5WPw.js} +2 -2
- package/studio-dist/server/chunks/{Sparkline-BJ-GuhRd.js → Sparkline-DU_NVxz9.js} +2 -2
- package/studio-dist/server/chunks/{StatBlock-DHJMmOCx.js → StatBlock-jNsxycS1.js} +2 -2
- package/studio-dist/server/chunks/{Tabs-DzG6Bn9a.js → Tabs-DQKDflnT.js} +2 -2
- package/studio-dist/server/chunks/_dispatch-DTWViLGL.js +145 -0
- package/studio-dist/server/chunks/{_layout.svelte-BEIGQcIv.js → _layout.svelte-CL6GfET2.js} +7 -9
- package/studio-dist/server/chunks/{_page.svelte-al08ovKm.js → _page.svelte-6iMiGR11.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-Byz2djto.js → _page.svelte-B-YXGvAW.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-tYN7_LXI.js → _page.svelte-B5E6RqVb.js} +9 -11
- package/studio-dist/server/chunks/{_page.svelte-UYiF7YBK.js → _page.svelte-BCRyjlk2.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-CCoTp89s.js → _page.svelte-BoYafqft.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-nzffIbBP.js → _page.svelte-C7Wm6_HB.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-C_VSL8NW.js → _page.svelte-Cgqt7ucn.js} +13 -71
- package/studio-dist/server/chunks/{_page.svelte-CophUar3.js → _page.svelte-CqI6hqMm.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-BgwL2Gyu.js → _page.svelte-CvQ2rZZ1.js} +11 -13
- package/studio-dist/server/chunks/{_page.svelte-l4Z_xjl9.js → _page.svelte-CvTyJEyS.js} +9 -11
- package/studio-dist/server/chunks/{_page.svelte-DOWw416I.js → _page.svelte-CvzAttO9.js} +11 -13
- package/studio-dist/server/chunks/{_page.svelte-DYNorA0S.js → _page.svelte-Cx9Ptecp.js} +10 -67
- package/studio-dist/server/chunks/{_page.svelte-Wfx7ww_h.js → _page.svelte-Cx9dPjsT.js} +11 -13
- package/studio-dist/server/chunks/{_page.svelte-2cgtvHwW.js → _page.svelte-DGN5j-At.js} +13 -71
- package/studio-dist/server/chunks/{_page.svelte-BVVTrzTL.js → _page.svelte-DaheDIRs.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-M5D2QnMS.js → _page.svelte-Dm8y5a8S.js} +10 -67
- package/studio-dist/server/chunks/{_page.svelte-B_pq-Z98.js → _page.svelte-DqXxyNsF.js} +7 -7
- package/studio-dist/server/chunks/{_page.svelte-C3aIui4o.js → _page.svelte-DqsbnAhk.js} +4 -4
- package/studio-dist/server/chunks/{_page.svelte-ksTJUXce.js → _page.svelte-Dt0_c1T-.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-bGhsrIjS.js → _page.svelte-Dv6iwhu7.js} +3 -3
- package/studio-dist/server/chunks/{_page.svelte-BXyoMME1.js → _page.svelte-GPiHej3P.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-CYDjW1R0.js → _page.svelte-LuRm8XxE.js} +5 -5
- package/studio-dist/server/chunks/{_page.svelte-Clbkk1gm.js → _page.svelte-Z7nL9SC-.js} +8 -9
- package/studio-dist/server/chunks/{_page.svelte-DUWbZjC7.js → _page.svelte-_kntHS6v.js} +4 -4
- package/studio-dist/server/chunks/{_page.svelte-BIlhmugm.js → _page.svelte-eiomv6Pa.js} +11 -13
- package/studio-dist/server/chunks/{_page.svelte-9OQphlnm.js → _page.svelte-jXJbd8Mx.js} +14 -69
- package/studio-dist/server/chunks/{_page.svelte-CHzXuw2Q.js → _page.svelte-me5SUosG.js} +3 -3
- package/studio-dist/server/chunks/{_server.ts-DSzRdt1U.js → _server.ts--2m_U4SL.js} +11 -94
- package/studio-dist/server/chunks/{_server.ts-ujoDR2_g.js → _server.ts--sGLmBsz.js} +10 -92
- package/studio-dist/server/chunks/{_server.ts-k2fApwOp.js → _server.ts-0ukyuE0I.js} +5 -60
- package/studio-dist/server/chunks/_server.ts-1eW2mTeh.js +40 -0
- package/studio-dist/server/chunks/{_server.ts-Bfr4u3EP.js → _server.ts-3LzqLzt0.js} +10 -92
- package/studio-dist/server/chunks/_server.ts-40h9Y46Y.js +122 -0
- package/studio-dist/server/chunks/_server.ts-5euivmMj.js +38 -0
- package/studio-dist/server/chunks/{_server.ts-CShsBkeE.js → _server.ts-B0uoay97.js} +7 -23
- package/studio-dist/server/chunks/{_server.ts-hL92cV7Z.js → _server.ts-B5vYKkI6.js} +9 -63
- package/studio-dist/server/chunks/{_server.ts-_RJXtmfi.js → _server.ts-B8dTbPHd.js} +8 -23
- package/studio-dist/server/chunks/{_server.ts-C3Jo-ju8.js → _server.ts-BA8Xdegq.js} +10 -92
- package/studio-dist/server/chunks/_server.ts-BBClE0n9.js +54 -0
- package/studio-dist/server/chunks/{_server.ts-ZS1_yMwR.js → _server.ts-BDwMoyZ_.js} +6 -32
- package/studio-dist/server/chunks/{_server.ts-sv4pA808.js → _server.ts-BE-Uhx4N.js} +5 -46
- package/studio-dist/server/chunks/{_server.ts-DV6pzF-M.js → _server.ts-BSHADOUJ.js} +4 -3
- package/studio-dist/server/chunks/_server.ts-BcsqAqXt.js +67 -0
- package/studio-dist/server/chunks/_server.ts-Bl9tMqwZ.js +159 -0
- package/studio-dist/server/chunks/_server.ts-BlzDnRI0.js +51 -0
- package/studio-dist/server/chunks/{_server.ts-DnE0f-iC.js → _server.ts-BtuemCsf.js} +4 -3
- package/studio-dist/server/chunks/{_server.ts-BPcErnS0.js → _server.ts-C2nYqbd9.js} +10 -92
- package/studio-dist/server/chunks/{_server.ts-4p6cp9ke.js → _server.ts-C6IDM_3I.js} +10 -92
- package/studio-dist/server/chunks/_server.ts-C8Z32vuL.js +45 -0
- package/studio-dist/server/chunks/_server.ts-CBXyadsy.js +26 -0
- package/studio-dist/server/chunks/{_server.ts-Do9RIPRo.js → _server.ts-CE6h2ATE.js} +5 -32
- package/studio-dist/server/chunks/_server.ts-CH06JVqZ.js +65 -0
- package/studio-dist/server/chunks/_server.ts-CNqcws-M.js +29 -0
- package/studio-dist/server/chunks/{_server.ts-CJA1djzJ.js → _server.ts-CPf8necd.js} +8 -92
- package/studio-dist/server/chunks/{_server.ts-uUx7uT2Y.js → _server.ts-CYv5YuHd.js} +6 -43
- package/studio-dist/server/chunks/{_server.ts-B2E7fxo9.js → _server.ts-CZ5GZRWX.js} +6 -91
- package/studio-dist/server/chunks/{_server.ts-DSAv66wD.js → _server.ts-CbThsyhY.js} +4 -3
- package/studio-dist/server/chunks/{_server.ts-DgbY5EB3.js → _server.ts-CeQolQOK.js} +10 -92
- package/studio-dist/server/chunks/_server.ts-ChoGyX5C.js +61 -0
- package/studio-dist/server/chunks/_server.ts-CjJYkLJH.js +61 -0
- package/studio-dist/server/chunks/{_server.ts-lPlBUIJX.js → _server.ts-CtjArzxf.js} +5 -60
- package/studio-dist/server/chunks/{_server.ts-Cq60m8Pw.js → _server.ts-D3QWZwt_.js} +4 -3
- package/studio-dist/server/chunks/{_server.ts-CkoJ2HCW.js → _server.ts-D6wP5bCh.js} +10 -92
- package/studio-dist/server/chunks/{_server.ts-DwTRjS4y.js → _server.ts-D7JwQTun.js} +10 -93
- package/studio-dist/server/chunks/_server.ts-DKFJdXPK.js +97 -0
- package/studio-dist/server/chunks/_server.ts-DNAPGKEF.js +55 -0
- package/studio-dist/server/chunks/_server.ts-DQiTiY3E.js +78 -0
- package/studio-dist/server/chunks/{_server.ts-BT0Uq2yq.js → _server.ts-DUyeSXbV.js} +10 -92
- package/studio-dist/server/chunks/{_server.ts-DRVz9D-J.js → _server.ts-DY7BwZCv.js} +9 -24
- package/studio-dist/server/chunks/{_server.ts-Cz0zgaUV.js → _server.ts-D_E276ms.js} +3 -2
- package/studio-dist/server/chunks/{_server.ts-B5g3eScF.js → _server.ts-DgtmTAp5.js} +5 -60
- package/studio-dist/server/chunks/{_server.ts-CboRJY0Q.js → _server.ts-DhTKaw7h.js} +10 -63
- package/studio-dist/server/chunks/_server.ts-DqKBSCPT.js +31 -0
- package/studio-dist/server/chunks/{_server.ts-CpmMp5D8.js → _server.ts-DyXBNnRD.js} +4 -3
- package/studio-dist/server/chunks/_server.ts-DzjUpduu.js +25 -0
- package/studio-dist/server/chunks/{_server.ts-CGiAXy5i.js → _server.ts-Dznqw6Dg.js} +8 -23
- package/studio-dist/server/chunks/{_server.ts-tKMjUFUP.js → _server.ts-EVwS7UXb.js} +4 -3
- package/studio-dist/server/chunks/_server.ts-J17j25VG.js +62 -0
- package/studio-dist/server/chunks/{_server.ts-BdN4AJ6o.js → _server.ts-VQchZxXq.js} +10 -91
- package/studio-dist/server/chunks/{_server.ts-C4BcDGqS.js → _server.ts-XLV5SvjH.js} +7 -63
- package/studio-dist/server/chunks/_server.ts-jZgqFIJz.js +45 -0
- package/studio-dist/server/chunks/{_server.ts-Bw7A4zgb.js → _server.ts-lyiGGv7w.js} +5 -3
- package/studio-dist/server/chunks/{brain-CXR7ZT7S.js → brain-xt_NeshR.js} +2 -2
- package/studio-dist/server/chunks/cleo-home-_XIqkZaL.js +109 -0
- package/studio-dist/server/chunks/{cli-action-DQcaqcfn.js → cli-action-VJPEn1pY.js} +2 -2
- package/studio-dist/server/chunks/{client-CgX38JBu.js → client-D71MZ7Vi.js} +5 -6
- package/studio-dist/server/chunks/cluster-label-layer-CysRMvhi.js +6721 -0
- package/studio-dist/server/chunks/connections-CWLPjwBP.js +15 -0
- package/studio-dist/server/chunks/{connections2-mi7mZqJM.js → connections2-DHVs5ytW.js} +32 -19
- package/studio-dist/server/chunks/{dev-BNpEUZI3.js → dev-Br5zieNA.js} +2 -2
- package/studio-dist/server/chunks/dist-BzgWhfUR.js +18748 -0
- package/studio-dist/server/chunks/{error.svelte-CplNulnS.js → error.svelte-BIToUowC.js} +6 -8
- package/studio-dist/server/chunks/{explorer-loader-BN_mkt3_.js → explorer-loader-B_uCSs9_.js} +2 -2
- package/studio-dist/server/chunks/exports-Dg-gdPPq.js +124 -0
- package/studio-dist/server/chunks/{hooks.server-DBsyphiX.js → hooks.server-CWBRp8NI.js} +10 -93
- package/studio-dist/server/chunks/{http-CRTZe306.js → http-DPU3HHl2.js} +3 -4
- package/studio-dist/server/chunks/{index-server-DocJvixA.js → index-server-BgfA6C0S.js} +17 -4
- package/studio-dist/server/chunks/{internal-D6eWgsHJ.js → internal-DPnIJYMs.js} +56 -92
- package/studio-dist/server/chunks/{memory2-Cgc_4D5q.js → memory-BZHnDZzu.js} +4 -4
- package/studio-dist/server/chunks/{nexus-adapter-9EL_VlGI.js → nexus-adapter-D1ryYG1Z.js} +5 -5
- package/studio-dist/server/chunks/{no-face-up-DcejJLy-.js → no-face-up-B_3h6Hgs.js} +2 -2
- package/studio-dist/server/chunks/project-context-BAXQmgch.js +188 -0
- package/studio-dist/server/chunks/{src-BUqGet2c.js → src-D2rW9bIF.js} +422 -5
- package/studio-dist/server/chunks/{stores-5DmdjPCH.js → stores-BZdYTyl7.js} +3 -3
- package/studio-dist/server/chunks/{tasks2-Bf9VHrv-.js → tasks-sWuEmiGW.js} +2349 -9
- package/studio-dist/server/chunks/{ui-DR8zOSpC.js → ui-CkQ-pCs3.js} +2 -2
- package/studio-dist/server/chunks/utils-g564cUMV.js +151 -0
- package/studio-dist/server/index.js +5 -16
- package/studio-dist/server/manifest.js +88 -88
- package/dist/cli/index.js.map +0 -6
- package/studio-dist/client/_app/immutable/assets/parse-worker.CSEr67Qi.js +0 -1127
- package/studio-dist/client/_app/immutable/chunks/2mEksghu2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/3KebaI-z.js +0 -53
- package/studio-dist/client/_app/immutable/chunks/3y2yNYEk2.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/7UXYlaI1.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/83VLmCvk.js +0 -4
- package/studio-dist/client/_app/immutable/chunks/84Rhmi6r.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/9CV9TXTg2.js +0 -92
- package/studio-dist/client/_app/immutable/chunks/9LFtcz24.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/9bLMgKwu2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/9kKqohVR2.js +0 -37
- package/studio-dist/client/_app/immutable/chunks/B-Ye28EY.js +0 -7
- package/studio-dist/client/_app/immutable/chunks/B-jnUl7o.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B0ORuy8x2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B0xCM1wN2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B0zCN4sX.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B1wt-iGW.js +0 -7
- package/studio-dist/client/_app/immutable/chunks/B2F3KUIU.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B2_6RrlL2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B2qKEYxA2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B2u2rNyI2.js +0 -8
- package/studio-dist/client/_app/immutable/chunks/B3_X3Lhd2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B3sNtbqf.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/B4NQP1Ax2.js +0 -6
- package/studio-dist/client/_app/immutable/chunks/BAtZg5v5.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BB6WKLm82.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BBX8UDtn.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BBs1U1iU.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BEli_4Jp2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BEt2wIUt.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BEyM8qSW2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BFZA3Dsk2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BGdPweG1.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BGiusSqE.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BGmpyfzD.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BH5rhSIR.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BHciFt922.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BHnFwTQY.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BIvye3XP2.js +0 -59
- package/studio-dist/client/_app/immutable/chunks/BJ8mcpQA2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BK17qSHw.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BLkgUtyb.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BMUko3r62.js +0 -5
- package/studio-dist/client/_app/immutable/chunks/BMwzdEaa.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BQZx6brg.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BUPJTTTd.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BVNGAeZe2.js +0 -146
- package/studio-dist/client/_app/immutable/chunks/BWfLryGm.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BXIfeogw.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BXTfFyUU.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BYJC6_MM.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BZV1ZJzH.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BZu9rehd.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Bbzm48C52.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BfGnlwjH.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Bfjb9LPp.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BieFfu-R.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Bmv63uXe2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BtBW1A0u.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/BxISGQCl2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/ByNR_KvT.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BzjhD6Hr2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/BzpWnq0c2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C-yJVcyI2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C0cQ-8kS2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C1vWmhYe.js +0 -48
- package/studio-dist/client/_app/immutable/chunks/C1w6bBje.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C243sn7r.js +0 -4
- package/studio-dist/client/_app/immutable/chunks/C2oZaDvt.js +0 -67
- package/studio-dist/client/_app/immutable/chunks/C3OziSQx.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C3hFPbMK.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/C4P9oFvU2.js +0 -6
- package/studio-dist/client/_app/immutable/chunks/C5Nlanei.js +0 -8
- package/studio-dist/client/_app/immutable/chunks/C6KBAXPl.js +0 -15
- package/studio-dist/client/_app/immutable/chunks/C8MZnWta.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CAoan3K12.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CBpcINYH.js +0 -29
- package/studio-dist/client/_app/immutable/chunks/CE7phgWq.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CFb4Co_K.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CGWoRK3t2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CH3t4xo1.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CHJgk6g-.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CHgPjuDQ.js +0 -17
- package/studio-dist/client/_app/immutable/chunks/CHkCZrnr.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CI_91WUN.js +0 -4
- package/studio-dist/client/_app/immutable/chunks/CJ7-hP0H.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CKIrNnkY2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CKoQ7Ko5.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CM8O4zqs.js +0 -56
- package/studio-dist/client/_app/immutable/chunks/CMz3AVRO.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CNToUR3P.js +0 -13
- package/studio-dist/client/_app/immutable/chunks/CNuQG1yl2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CQLIZtxj.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CQYVNgM0.js +0 -20
- package/studio-dist/client/_app/immutable/chunks/CQeVOmFO2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CSPHHq09.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CTJEdbIn.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CTTT3wYw.js +0 -35
- package/studio-dist/client/_app/immutable/chunks/CV4ck7fz.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CXQrVnHf.js +0 -11
- package/studio-dist/client/_app/immutable/chunks/CXTCtOUQ.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C_CsU7Qq.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/C_IZx3682.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CbTnu2Po2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Cba8RZ1a2.js +0 -8
- package/studio-dist/client/_app/immutable/chunks/Cc8xxDr5.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CdPxoldu.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CdqDTozW.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CdsmcCfC.js +0 -25
- package/studio-dist/client/_app/immutable/chunks/CeYPAoY9.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Cf4kGS9y.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CfWEqXtJ2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Cg7Wj2b9.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CgTpKZfi2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Chpy9ca7.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CiLKuLrQ.js +0 -4
- package/studio-dist/client/_app/immutable/chunks/CjNDJjwu.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Cjde0ZKr2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Cjgnade02.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/Ckp90om52.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/ClAPVhCD.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/ClT89UdO.js +0 -11
- package/studio-dist/client/_app/immutable/chunks/CnJf5tML.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CpF4Rrcc2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CqCka5yX2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CqtqZrOl.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CrJdywQt.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Cs0zC2l2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CsMn5fBs.js +0 -141
- package/studio-dist/client/_app/immutable/chunks/CsvKLHQQ2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/Ctaresvj.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Ctetf8vc2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/Cv7yW6MG.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CxRIz-Zd.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/CxbvtjIH.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/CxfeoXkZ.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/CySLscL2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/D0PKQAbM.js +0 -87
- package/studio-dist/client/_app/immutable/chunks/D0WQsLTu.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D1LBVx6r2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D1NlFXu9.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D1QfC4hu2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D1yrHAn72.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D2pa4reh.js +0 -7
- package/studio-dist/client/_app/immutable/chunks/D3QsWcIw2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/D4OkQuPl2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D6UDnATk2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D7w7HllH.js +0 -38
- package/studio-dist/client/_app/immutable/chunks/D93KpglN.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D99fQj2G2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DB5ifLM-.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/DBhP8ifO2.js +0 -15
- package/studio-dist/client/_app/immutable/chunks/DF_4OWhj.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DFpNK1vs2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DGRYMk-W.js +0 -142
- package/studio-dist/client/_app/immutable/chunks/DH3CcQwq.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DHQfJeLU.js +0 -4
- package/studio-dist/client/_app/immutable/chunks/DL89yEDy2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DLRku_0p2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DMZkjPYT2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DNP72foU.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DO2GztVm.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DOVNXmCK2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DOqzs8kl2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DQnR63hh2.js +0 -7
- package/studio-dist/client/_app/immutable/chunks/DTxtWPkw.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DVDgCC9A2.js +0 -20
- package/studio-dist/client/_app/immutable/chunks/DVVCJYjz.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DWRhYUMj2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DWavBJBI.js +0 -4
- package/studio-dist/client/_app/immutable/chunks/DXDSWRw-.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DXoHaH4a.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DXpCX2Hi.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DYP3EJMY.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DYQphR_V.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DYUlIivP.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DYo2ye8X2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DYxFu8yV.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DZ66sRb6.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/D_XTiylm2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DaRv9jn22.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DaXb9i_E.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Dccf4VP2.js +0 -24
- package/studio-dist/client/_app/immutable/chunks/DdODs-Sb.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DdekYWer.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DeHaovsF.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DeRRkRO52.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DeWI5qCn.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DfivR-Md.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DgmxpSo7.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DhPLWrun2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DhhrVdfi.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/Djr2dbcc2.js +0 -37
- package/studio-dist/client/_app/immutable/chunks/DjuRo5vv.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Djz4EDzO.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DkRfaw-K2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DksB5g4W2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Dmqenb5z2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DnbToVyf.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DpGZwlmj.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Dq0lE5C32.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Dq54XqHT2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DqK84mbb.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DqjFtSJD.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DrKWWDpL.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DsQIgu-4.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DsqdgJHS2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DtNkZUkq.js +0 -17
- package/studio-dist/client/_app/immutable/chunks/DutIls4V2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DvxYFW4C.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Dwp-76GQ.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/DxSZd548.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DxiUMhk0.js +0 -5
- package/studio-dist/client/_app/immutable/chunks/DxslLswf.js +0 -23
- package/studio-dist/client/_app/immutable/chunks/Dy7EjGgb2.js +0 -9
- package/studio-dist/client/_app/immutable/chunks/DyGQ_VXC.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/DySe3kTV2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DyzE2Uxw.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/DzhuJaxE2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/FmMHyrh6.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Gxs0J274.js +0 -5
- package/studio-dist/client/_app/immutable/chunks/HwtzDYxN.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/ITRz_Q7H2.js +0 -15
- package/studio-dist/client/_app/immutable/chunks/KDNP98XY2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/LmVjFhpk2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/MiAejGV_.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Ml4JR6Jz2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/NU5S3nNs2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/Oh5zPjv3.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/QZkvJ9vi.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Rbn8UpBm.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/SPX3gYwn2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/TX-23QW3.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/UyeQuL132.js +0 -12
- package/studio-dist/client/_app/immutable/chunks/VQszoXcV.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/VtZsEMxD.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/W2IeK61p2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Wadww7ZG.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/WgfA1zWk2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/WxIgAS1f.js +0 -21
- package/studio-dist/client/_app/immutable/chunks/XrsBoOj9.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/Y3PX4poR.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/YxfwqiF32.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/Z7uO1YaO.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/_4ykQk_8.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/_kRcZFVn.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/aQNM7eVA2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/bHKz_Fb2.js +0 -45
- package/studio-dist/client/_app/immutable/chunks/bJRyRGSZ.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/dlzF6lnR.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/fjRbpfEr2.js +0 -26
- package/studio-dist/client/_app/immutable/chunks/imLk4if5.js +0 -3
- package/studio-dist/client/_app/immutable/chunks/lgRG0R-32.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/mFhCjxQJ2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/mgnH6qYg.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/n6M_5LoW.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/nLIOiDZp2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/nab7WB3u2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/orUmAKoW2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/p-fLQDfY2.js +0 -63
- package/studio-dist/client/_app/immutable/chunks/s0-WkOGk2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/sPuXfbUF.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/t4h0vrqR2.js +0 -2
- package/studio-dist/client/_app/immutable/chunks/uE83FKL-.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/uzhXlm0g2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/vTrEsGlD2.js +0 -1
- package/studio-dist/client/_app/immutable/chunks/xJgCk3dx2.js +0 -28
- package/studio-dist/client/_app/immutable/chunks/z0Mt579s2.js +0 -13
- package/studio-dist/client/_app/immutable/entry/app.BoQ7cgT2.js +0 -2
- package/studio-dist/client/_app/immutable/entry/start.Cg1v8DU4.js +0 -1
- package/studio-dist/client/_app/immutable/nodes/25.ddZ1_EFk.js +0 -1
- package/studio-dist/client/_app/immutable/nodes/26.6OcmQbLV.js +0 -1
- package/studio-dist/client/_app/immutable/nodes/4.CCjOEwVU.js +0 -1
- package/studio-dist/server/chunks/0-CvsKDxQ6.js +0 -126
- package/studio-dist/server/chunks/1-ck_x2Hf0.js +0 -9
- package/studio-dist/server/chunks/20-DVU22np7.js +0 -142
- package/studio-dist/server/chunks/23-D_tUnnoc.js +0 -181
- package/studio-dist/server/chunks/24-CVlymvLF.js +0 -151
- package/studio-dist/server/chunks/AwsRestJsonProtocol-BZuoNBmL.js +0 -416
- package/studio-dist/server/chunks/UnionSerde-BflIkhKj.js +0 -2653
- package/studio-dist/server/chunks/_dispatch-ncuRztUQ.js +0 -5597
- package/studio-dist/server/chunks/_server.ts-4NyKAneX.js +0 -116
- package/studio-dist/server/chunks/_server.ts-7hGdxdEI.js +0 -136
- package/studio-dist/server/chunks/_server.ts-B6b3b-yA.js +0 -131
- package/studio-dist/server/chunks/_server.ts-BOgGqaZp.js +0 -144
- package/studio-dist/server/chunks/_server.ts-BV1HiKZ0.js +0 -120
- package/studio-dist/server/chunks/_server.ts-BWp3g6Cr.js +0 -110
- package/studio-dist/server/chunks/_server.ts-C5NF-UgC.js +0 -122
- package/studio-dist/server/chunks/_server.ts-CDMurH5m.js +0 -2301
- package/studio-dist/server/chunks/_server.ts-COJHCgbq.js +0 -127
- package/studio-dist/server/chunks/_server.ts-CUl-Utkt.js +0 -148
- package/studio-dist/server/chunks/_server.ts-D0GAFJRb.js +0 -156
- package/studio-dist/server/chunks/_server.ts-DA6p3pmi.js +0 -117
- package/studio-dist/server/chunks/_server.ts-DThYFaZj.js +0 -160
- package/studio-dist/server/chunks/_server.ts-D_3Pm0gr.js +0 -179
- package/studio-dist/server/chunks/_server.ts-DcHxdMsm.js +0 -144
- package/studio-dist/server/chunks/_server.ts-Dlfadh2I.js +0 -144
- package/studio-dist/server/chunks/_server.ts-JallJnps.js +0 -240
- package/studio-dist/server/chunks/_server.ts-NEFTbJpM.js +0 -142
- package/studio-dist/server/chunks/_server.ts-d-2NvRwX.js +0 -122
- package/studio-dist/server/chunks/_server.ts-rUWMLkIw.js +0 -146
- package/studio-dist/server/chunks/abort-events-CDRAJSqb.js +0 -30
- package/studio-dist/server/chunks/adapters-BkMgPNUM.js +0 -359
- package/studio-dist/server/chunks/adapters2-CQ3PzoaK.js +0 -28
- package/studio-dist/server/chunks/api-mode2-3W-I1-XO.js +0 -36
- package/studio-dist/server/chunks/api2-CmNQzb0b.js +0 -96
- package/studio-dist/server/chunks/attention-consolidate-CidG1jfH.js +0 -485
- package/studio-dist/server/chunks/audit3-DMO_fUGp.js +0 -52
- package/studio-dist/server/chunks/auto-extract-B84La1Vs.js +0 -34
- package/studio-dist/server/chunks/brain-consolidator-JGm6mzFf.js +0 -373
- package/studio-dist/server/chunks/brain-doctor-Dc2WqVbs.js +0 -311
- package/studio-dist/server/chunks/brain-embedding-Djw9ekXu.js +0 -42
- package/studio-dist/server/chunks/brain-lifecycle-BOOa876K.js +0 -969
- package/studio-dist/server/chunks/brain-maintenance-U6VvsvmK.js +0 -133
- package/studio-dist/server/chunks/brain-maintenance2-CwVSmfDT.js +0 -43
- package/studio-dist/server/chunks/brain-retrieval2-exR8mdgh.js +0 -751
- package/studio-dist/server/chunks/brain-search-CpSh-SNi.js +0 -48
- package/studio-dist/server/chunks/brain-search2-CwI2cXgg.js +0 -716
- package/studio-dist/server/chunks/brain-similarity-DI4yzm9e.js +0 -113
- package/studio-dist/server/chunks/brain-stdp2-BxSBIlSr.js +0 -960
- package/studio-dist/server/chunks/brain-writer-handlers-Dwu0QCAA.js +0 -188
- package/studio-dist/server/chunks/brain-writer-thread-6n7wI7Gy.js +0 -360
- package/studio-dist/server/chunks/branch-lock-Cq7zzmFK.js +0 -1118
- package/studio-dist/server/chunks/branch-lock2-CmDc4CZW.js +0 -45
- package/studio-dist/server/chunks/cancelled-child-waiver-audit-DkesrN83.js +0 -54
- package/studio-dist/server/chunks/catalog-model-resolver-Bas9qnoP.js +0 -9
- package/studio-dist/server/chunks/catalog-model-resolver2-Cexk2TN0.js +0 -237
- package/studio-dist/server/chunks/catalog-resolver-CLot3XJO.js +0 -260
- package/studio-dist/server/chunks/catalog-resolver2-JmKb91kY.js +0 -33
- package/studio-dist/server/chunks/chunk-DDP5xfzh.js +0 -39
- package/studio-dist/server/chunks/cleo-home-CCfe6kAQ.js +0 -64
- package/studio-dist/server/chunks/concrete-session2-bb_vxJ2N.js +0 -43
- package/studio-dist/server/chunks/config-DHj9CcFs.js +0 -386
- package/studio-dist/server/chunks/config2-F6PPIn7D.js +0 -35
- package/studio-dist/server/chunks/connections-BMGJVYcS.js +0 -98
- package/studio-dist/server/chunks/credential-pool-vF6NdtT9.js +0 -4600
- package/studio-dist/server/chunks/credentials-C7EJFf5O.js +0 -35
- package/studio-dist/server/chunks/credentials-store-CFygIuB2.js +0 -35
- package/studio-dist/server/chunks/cross-db-cleanup-1LWTUKPi.js +0 -147
- package/studio-dist/server/chunks/data-accessor-CWgVndbR.js +0 -72
- package/studio-dist/server/chunks/data-safety-central-DaFxK27G.js +0 -683
- package/studio-dist/server/chunks/decisions-CmVXV2-H.js +0 -574
- package/studio-dist/server/chunks/decisions2-XQsSYdxa.js +0 -48
- package/studio-dist/server/chunks/depends-waiver-audit-CUmlBYHx.js +0 -56
- package/studio-dist/server/chunks/dialectic-evaluator2-BOyyXhdI.js +0 -96
- package/studio-dist/server/chunks/dist-es2-DQy2Mjn_.js +0 -43
- package/studio-dist/server/chunks/dist-es3-CBygU4n5.js +0 -365
- package/studio-dist/server/chunks/dist-es4-CavbNu4B.js +0 -162
- package/studio-dist/server/chunks/dist-es5-Crpm8Wsl.js +0 -465
- package/studio-dist/server/chunks/dist-es6-CgePHzh4.js +0 -99
- package/studio-dist/server/chunks/dist-es7-k6c5GEd7.js +0 -311
- package/studio-dist/server/chunks/dist-es8-Bd9v0_pE.js +0 -91
- package/studio-dist/server/chunks/dist3-23bsJhRw.js +0 -27
- package/studio-dist/server/chunks/dist4-DmC1zSXi.js +0 -35618
- package/studio-dist/server/chunks/dual-scope-db-DKnWu1KM.js +0 -5672
- package/studio-dist/server/chunks/dual-scope-db2-Dht3luRw.js +0 -31
- package/studio-dist/server/chunks/duplicate-bypass-audit-BN5w1H2y.js +0 -36
- package/studio-dist/server/chunks/duplicate-detector-CaVFMKdE.js +0 -692
- package/studio-dist/server/chunks/edge-types-CgBvb0w1.js +0 -28
- package/studio-dist/server/chunks/embedding-local-xEnym8Ho.js +0 -92
- package/studio-dist/server/chunks/event-streams-Bi2p_fVo.js +0 -232
- package/studio-dist/server/chunks/execution-learning-BVCw7Plq.js +0 -278
- package/studio-dist/server/chunks/exodus-BBuuN6aA.js +0 -2594
- package/studio-dist/server/chunks/externalDataInterceptor-C3C4cObe.js +0 -21
- package/studio-dist/server/chunks/extraction-gate-DDNBq7gu.js +0 -48
- package/studio-dist/server/chunks/extraction-gate2-D77EZBQ6.js +0 -375
- package/studio-dist/server/chunks/getSSOTokenFromFile-yZAJxDci.js +0 -21
- package/studio-dist/server/chunks/governor2-CtfV3wfX.js +0 -923
- package/studio-dist/server/chunks/graph-auto-populate-Dmsr9ZJM.js +0 -42
- package/studio-dist/server/chunks/graph-auto-populate2-Cz0qeebM.js +0 -156
- package/studio-dist/server/chunks/graph-memory-bridge-CY8ft_d7.js +0 -43
- package/studio-dist/server/chunks/graph-memory-bridge2-Cd0XZwqc.js +0 -429
- package/studio-dist/server/chunks/handler-helpers-AANBGA_p.js +0 -49
- package/studio-dist/server/chunks/hash-Cm6yMET4.js +0 -14
- package/studio-dist/server/chunks/health-monitor-FepUZN1m.js +0 -106
- package/studio-dist/server/chunks/identity-DRpurt56.js +0 -30
- package/studio-dist/server/chunks/identity2-DeAB5RXE.js +0 -114
- package/studio-dist/server/chunks/index-61916rmV.js +0 -632
- package/studio-dist/server/chunks/index-DAgVDouG.js +0 -268
- package/studio-dist/server/chunks/index-Dtt_h58T.js +0 -2116
- package/studio-dist/server/chunks/indexes-DZ52grq6.js +0 -615
- package/studio-dist/server/chunks/json-Bfixam3g.js +0 -126
- package/studio-dist/server/chunks/learnings-D6Y3YGMU.js +0 -47
- package/studio-dist/server/chunks/learnings2-MwBdR9vb.js +0 -171
- package/studio-dist/server/chunks/lifecycle-ops2-V2CR5-7X.js +0 -121
- package/studio-dist/server/chunks/list-BhObczvn.js +0 -229
- package/studio-dist/server/chunks/living-brain2-j0B_Ir8j.js +0 -285
- package/studio-dist/server/chunks/llm-backend-resolver-D4ANvUPL.js +0 -295
- package/studio-dist/server/chunks/llm-extraction-DVCu4heR.js +0 -408
- package/studio-dist/server/chunks/loadSharedConfigFiles-umvW7kuz.js +0 -73
- package/studio-dist/server/chunks/loadSso-iidd5iKx.js +0 -599
- package/studio-dist/server/chunks/local-model-fit-B0TxifnX.js +0 -53
- package/studio-dist/server/chunks/local-model-fit2-BMqo6GJm.js +0 -2664
- package/studio-dist/server/chunks/lock-CA7d6lj7.js +0 -57
- package/studio-dist/server/chunks/logger-DQIoyZbq.js +0 -34
- package/studio-dist/server/chunks/memory-BUbicBbE.js +0 -618
- package/studio-dist/server/chunks/memory-accessor-i3P-RHSg.js +0 -42
- package/studio-dist/server/chunks/memory-accessor2-B981tHDR.js +0 -467
- package/studio-dist/server/chunks/memory-bridge-BOlEWg9w.js +0 -424
- package/studio-dist/server/chunks/memory-sqlite2-B7dq8doO.js +0 -42
- package/studio-dist/server/chunks/model-runner2-B71xjp4y.js +0 -43
- package/studio-dist/server/chunks/mvi-helpers-BNsJ8ZpQ.js +0 -59
- package/studio-dist/server/chunks/nexus-plasticity-BTfU8cW_.js +0 -269
- package/studio-dist/server/chunks/nexus-risk-audit-p379-TU5.js +0 -54
- package/studio-dist/server/chunks/nexus-schema-zeygY8OD.js +0 -11
- package/studio-dist/server/chunks/nexus-schema2-DP0Qd7CA.js +0 -444
- package/studio-dist/server/chunks/nexus-sqlite-BVNIpwc7.js +0 -36
- package/studio-dist/server/chunks/nexus-sqlite2-BBfY2xnY.js +0 -1103
- package/studio-dist/server/chunks/node-http-handler-CJI8kn7X.js +0 -386
- package/studio-dist/server/chunks/observe-Bo9veHGe.js +0 -47
- package/studio-dist/server/chunks/observe2-wzO0MaMY.js +0 -245
- package/studio-dist/server/chunks/observer-reflector-BwNOuq1d.js +0 -62
- package/studio-dist/server/chunks/observer-reflector2-ggtC1hmk.js +0 -478
- package/studio-dist/server/chunks/on-open-Wpcw7DV4.js +0 -740
- package/studio-dist/server/chunks/open-cleo-db--8sYNaYY.js +0 -70
- package/studio-dist/server/chunks/parseKnownFiles-Dg0pMFcT.js +0 -18
- package/studio-dist/server/chunks/parseUrl-qgGfl-Vh.js +0 -120
- package/studio-dist/server/chunks/paths-CV7S5-Zm.js +0 -30012
- package/studio-dist/server/chunks/patterns-lh5kn13I.js +0 -48
- package/studio-dist/server/chunks/patterns2-CzIcT-ai.js +0 -177
- package/studio-dist/server/chunks/pipeline-stage-IB_pOft-.js +0 -63
- package/studio-dist/server/chunks/prediction-D1lSGJ4c.js +0 -217
- package/studio-dist/server/chunks/premature-close-audit-VG09uAco.js +0 -53
- package/studio-dist/server/chunks/project-context-BjiqfEBi.js +0 -166
- package/studio-dist/server/chunks/provider-registry2-Cu7rAF0R.js +0 -35
- package/studio-dist/server/chunks/quality-feedback-CuCGEI6S.js +0 -371
- package/studio-dist/server/chunks/quality-scoring-CCPuRQmJ.js +0 -160
- package/studio-dist/server/chunks/query-ops-DCrjbZb9.js +0 -78
- package/studio-dist/server/chunks/query-promise-BkPmGPJy.js +0 -1257
- package/studio-dist/server/chunks/readFile-CxwXhymG.js +0 -31
- package/studio-dist/server/chunks/registry-CL2gN1zd.js +0 -27
- package/studio-dist/server/chunks/registry2-DoPYJnUW.js +0 -233
- package/studio-dist/server/chunks/registry3-BajEb-ll.js +0 -42
- package/studio-dist/server/chunks/registry4-DCqffZkT.js +0 -142
- package/studio-dist/server/chunks/retry-B3oEKYpp.js +0 -105
- package/studio-dist/server/chunks/role-executor-CC8BU54L.js +0 -25379
- package/studio-dist/server/chunks/role-resolver-D9QaDT0e.js +0 -6544
- package/studio-dist/server/chunks/role-resolver2-nkhzS1oy.js +0 -37
- package/studio-dist/server/chunks/rollup-CiefjN_Y.js +0 -194
- package/studio-dist/server/chunks/safety-data-accessor-CniDmGJO.js +0 -276
- package/studio-dist/server/chunks/service-connections-accessor-yBCdcgU-.js +0 -282
- package/studio-dist/server/chunks/session-factory-vbengc42.js +0 -96
- package/studio-dist/server/chunks/session-grade-BF4ZZtN_.js +0 -244
- package/studio-dist/server/chunks/session-journal-Bvey70Ur.js +0 -235
- package/studio-dist/server/chunks/session-narrative-BirZINSU.js +0 -304
- package/studio-dist/server/chunks/session-store--N_xHxUH.js +0 -557
- package/studio-dist/server/chunks/session-store2-DAM-eVTH.js +0 -43
- package/studio-dist/server/chunks/sessions-33DD4hkt.js +0 -2273
- package/studio-dist/server/chunks/sessions2-BHswKRDP.js +0 -50
- package/studio-dist/server/chunks/sigil-B-RznFXz.js +0 -33
- package/studio-dist/server/chunks/sigil2-jRMG5DuR.js +0 -47
- package/studio-dist/server/chunks/signin-BAsW3mM8.js +0 -644
- package/studio-dist/server/chunks/sleep-consolidation-BnSwXrvq.js +0 -823
- package/studio-dist/server/chunks/specialists-B_ZbpQlK.js +0 -441
- package/studio-dist/server/chunks/sqlite-Bm5LzbPs.js +0 -5977
- package/studio-dist/server/chunks/sqlite-backup-CFG1-b2e.js +0 -42
- package/studio-dist/server/chunks/sqlite-data-accessor-DD_RFX6r.js +0 -987
- package/studio-dist/server/chunks/sqlite-data-accessor2-CRmgNBnq.js +0 -44
- package/studio-dist/server/chunks/sqlite-native-BwlIqtbs.js +0 -42
- package/studio-dist/server/chunks/sqlite2-CUPut2fh.js +0 -42
- package/studio-dist/server/chunks/src2-DK8DKufK.js +0 -290
- package/studio-dist/server/chunks/src3-BJjf7XRG.js +0 -798
- package/studio-dist/server/chunks/src4-DNleK_t_.js +0 -28
- package/studio-dist/server/chunks/sso-oidc-eUvwseuL.js +0 -861
- package/studio-dist/server/chunks/storage-B9UA3BHR.js +0 -198
- package/studio-dist/server/chunks/sts-g7LDMLEd.js +0 -4655
- package/studio-dist/server/chunks/surprisal-CwTfWQi8.js +0 -224
- package/studio-dist/server/chunks/surprisal-tree-7dfHsuw1.js +0 -230
- package/studio-dist/server/chunks/system-resolver2-Bzhue_zQ.js +0 -53
- package/studio-dist/server/chunks/tasks-SHX7UPGY.js +0 -19694
- package/studio-dist/server/chunks/tasks-schema2-CTMoQKQy.js +0 -42
- package/studio-dist/server/chunks/temporal-supersession-DP4GPG_B.js +0 -298
- package/studio-dist/server/chunks/token-cAhAD9f9.js +0 -139
- package/studio-dist/server/chunks/token-util-D6drEz8_.js +0 -353
- package/studio-dist/server/chunks/token-util2-8UPSGvbb.js +0 -97
- package/studio-dist/server/chunks/transcript-scanner-kJWhWmlg.js +0 -53
- package/studio-dist/server/chunks/transformers.node-_xbxmK5p.js +0 -38475
- package/studio-dist/server/chunks/typed-query-l1D_QElt.js +0 -18
- package/studio-dist/server/chunks/unique-constraint-BZrrwgwc.js +0 -88
- package/studio-dist/server/chunks/update-B2YVBZG0.js +0 -1594
- package/studio-dist/server/chunks/user-profile-B61ZhVmC.js +0 -89
- package/studio-dist/server/chunks/utils-BPSZyajG.js +0 -1176
- package/studio-dist/server/chunks/validation-rules-CE27rtoF.js +0 -44
- package/studio-dist/server/chunks/zod-DsAeKNLm.js +0 -141
- /package/studio-dist/client/_app/immutable/chunks/{CQCxd1p9.js → B8WnZMYa.js} +0 -0
- /package/studio-dist/client/_app/immutable/chunks/{D13Quv9e2.js → B_0_YCYG.js} +0 -0
- /package/studio-dist/client/_app/immutable/chunks/{djL6V-tr.js → CqgtdAx_.js} +0 -0
- /package/studio-dist/client/_app/immutable/chunks/{_FU7h_8p2.js → KrUPZzXZ.js} +0 -0
|
@@ -1,969 +0,0 @@
|
|
|
1
|
-
import { b as getLogger } from './paths-CV7S5-Zm.js';
|
|
2
|
-
import { g as getBrainAccessor } from './memory-accessor2-B981tHDR.js';
|
|
3
|
-
import { t as typedAll } from './typed-query-l1D_QElt.js';
|
|
4
|
-
import { E as EDGE_TYPES } from './edge-types-CgBvb0w1.js';
|
|
5
|
-
import { createHash } from 'node:crypto';
|
|
6
|
-
import 'node:fs';
|
|
7
|
-
import 'node:path';
|
|
8
|
-
import 'node:os';
|
|
9
|
-
import 'node:events';
|
|
10
|
-
import 'node:diagnostics_channel';
|
|
11
|
-
import 'fs';
|
|
12
|
-
import 'events';
|
|
13
|
-
import 'util';
|
|
14
|
-
import 'path';
|
|
15
|
-
import 'assert';
|
|
16
|
-
import 'worker_threads';
|
|
17
|
-
import 'module';
|
|
18
|
-
import 'node:url';
|
|
19
|
-
import 'url';
|
|
20
|
-
import 'buffer';
|
|
21
|
-
import 'node:module';
|
|
22
|
-
import 'node:child_process';
|
|
23
|
-
import 'node:process';
|
|
24
|
-
import 'node:async_hooks';
|
|
25
|
-
import './sqlite-Bm5LzbPs.js';
|
|
26
|
-
import './dual-scope-db-DKnWu1KM.js';
|
|
27
|
-
import './indexes-DZ52grq6.js';
|
|
28
|
-
import './utils-BPSZyajG.js';
|
|
29
|
-
import './query-promise-BkPmGPJy.js';
|
|
30
|
-
import './nexus-sqlite2-BBfY2xnY.js';
|
|
31
|
-
import './nexus-schema2-DP0Qd7CA.js';
|
|
32
|
-
import './chunk-DDP5xfzh.js';
|
|
33
|
-
import './logger-DQIoyZbq.js';
|
|
34
|
-
import 'node:sqlite';
|
|
35
|
-
import './unique-constraint-BZrrwgwc.js';
|
|
36
|
-
import './lock-CA7d6lj7.js';
|
|
37
|
-
import './index-Dtt_h58T.js';
|
|
38
|
-
import 'constants';
|
|
39
|
-
import 'stream';
|
|
40
|
-
|
|
41
|
-
//#region ../core/dist/memory/brain-lifecycle.js
|
|
42
|
-
/**
|
|
43
|
-
* BRAIN lifecycle operations — temporal decay, memory consolidation, and tier promotion.
|
|
44
|
-
*
|
|
45
|
-
* Reduces confidence of stale learnings based on age, following an
|
|
46
|
-
* exponential decay model: new_confidence = confidence * (decayRate ^ daysSinceUpdate).
|
|
47
|
-
*
|
|
48
|
-
* Consolidation groups old observations by keyword overlap and merges
|
|
49
|
-
* clusters into summary observations, archiving the originals.
|
|
50
|
-
*
|
|
51
|
-
* Wave 3 additions (T549):
|
|
52
|
-
* - runTierPromotion — promotes entries through short→medium→long based on citation count,
|
|
53
|
-
* age, and verification; soft-evicts stale short-term entries.
|
|
54
|
-
* - runConsolidation — orchestrates all consolidation steps (dedup, quality recompute,
|
|
55
|
-
* tier promotion, contradiction detection, soft eviction, graph strengthening, summaries).
|
|
56
|
-
*
|
|
57
|
-
* @task T5394 T5395 T549
|
|
58
|
-
* @epic T5149
|
|
59
|
-
*/
|
|
60
|
-
/** Stop words excluded from keyword extraction. */
|
|
61
|
-
var STOP_WORDS = new Set([
|
|
62
|
-
"the",
|
|
63
|
-
"a",
|
|
64
|
-
"an",
|
|
65
|
-
"is",
|
|
66
|
-
"are",
|
|
67
|
-
"was",
|
|
68
|
-
"were",
|
|
69
|
-
"be",
|
|
70
|
-
"been",
|
|
71
|
-
"being",
|
|
72
|
-
"have",
|
|
73
|
-
"has",
|
|
74
|
-
"had",
|
|
75
|
-
"do",
|
|
76
|
-
"does",
|
|
77
|
-
"did",
|
|
78
|
-
"will",
|
|
79
|
-
"would",
|
|
80
|
-
"could",
|
|
81
|
-
"should",
|
|
82
|
-
"may",
|
|
83
|
-
"might",
|
|
84
|
-
"shall",
|
|
85
|
-
"can",
|
|
86
|
-
"need",
|
|
87
|
-
"dare",
|
|
88
|
-
"ought",
|
|
89
|
-
"used",
|
|
90
|
-
"to",
|
|
91
|
-
"of",
|
|
92
|
-
"in",
|
|
93
|
-
"for",
|
|
94
|
-
"on",
|
|
95
|
-
"with",
|
|
96
|
-
"at",
|
|
97
|
-
"by",
|
|
98
|
-
"from",
|
|
99
|
-
"as",
|
|
100
|
-
"into",
|
|
101
|
-
"through",
|
|
102
|
-
"during",
|
|
103
|
-
"before",
|
|
104
|
-
"after",
|
|
105
|
-
"above",
|
|
106
|
-
"below",
|
|
107
|
-
"between",
|
|
108
|
-
"out",
|
|
109
|
-
"off",
|
|
110
|
-
"over",
|
|
111
|
-
"under",
|
|
112
|
-
"again",
|
|
113
|
-
"further",
|
|
114
|
-
"then",
|
|
115
|
-
"once",
|
|
116
|
-
"and",
|
|
117
|
-
"but",
|
|
118
|
-
"or",
|
|
119
|
-
"nor",
|
|
120
|
-
"not",
|
|
121
|
-
"so",
|
|
122
|
-
"yet",
|
|
123
|
-
"both",
|
|
124
|
-
"either",
|
|
125
|
-
"neither",
|
|
126
|
-
"each",
|
|
127
|
-
"every",
|
|
128
|
-
"all",
|
|
129
|
-
"any",
|
|
130
|
-
"few",
|
|
131
|
-
"more",
|
|
132
|
-
"most",
|
|
133
|
-
"other",
|
|
134
|
-
"some",
|
|
135
|
-
"such",
|
|
136
|
-
"no",
|
|
137
|
-
"only",
|
|
138
|
-
"own",
|
|
139
|
-
"same",
|
|
140
|
-
"than",
|
|
141
|
-
"too",
|
|
142
|
-
"very",
|
|
143
|
-
"just",
|
|
144
|
-
"because",
|
|
145
|
-
"until",
|
|
146
|
-
"while",
|
|
147
|
-
"about",
|
|
148
|
-
"against",
|
|
149
|
-
"this",
|
|
150
|
-
"that",
|
|
151
|
-
"these",
|
|
152
|
-
"those",
|
|
153
|
-
"it",
|
|
154
|
-
"its"
|
|
155
|
-
]);
|
|
156
|
-
/**
|
|
157
|
-
* Extract significant keywords from text for grouping.
|
|
158
|
-
* Filters stop words and short tokens, returns lowercase words.
|
|
159
|
-
*/
|
|
160
|
-
function extractKeywords(text) {
|
|
161
|
-
const words = text.toLowerCase().replace(/[^a-z0-9\s-]/g, "").split(/\s+/);
|
|
162
|
-
const keywords = /* @__PURE__ */ new Set();
|
|
163
|
-
for (const w of words) if (w.length >= 4 && !STOP_WORDS.has(w)) keywords.add(w);
|
|
164
|
-
return keywords;
|
|
165
|
-
}
|
|
166
|
-
/**
|
|
167
|
-
* Calculate keyword overlap ratio between two sets.
|
|
168
|
-
* Returns the Jaccard similarity coefficient.
|
|
169
|
-
*/
|
|
170
|
-
function keywordOverlap(a, b) {
|
|
171
|
-
if (a.size === 0 || b.size === 0) return 0;
|
|
172
|
-
let intersection = 0;
|
|
173
|
-
for (const w of a) if (b.has(w)) intersection++;
|
|
174
|
-
const union = a.size + b.size - intersection;
|
|
175
|
-
return union > 0 ? intersection / union : 0;
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Consolidate old observations by keyword similarity.
|
|
179
|
-
*
|
|
180
|
-
* Groups observations older than `olderThanDays` by FTS5 keyword overlap.
|
|
181
|
-
* For groups with at least `minClusterSize` entries, creates one summary
|
|
182
|
-
* observation and marks originals as archived (updated_at set, narrative
|
|
183
|
-
* prefixed with [ARCHIVED]).
|
|
184
|
-
*
|
|
185
|
-
* @param projectRoot - Project root directory for brain.db resolution
|
|
186
|
-
* @param options - Consolidation configuration
|
|
187
|
-
* @returns Counts of grouped, merged, and archived observations
|
|
188
|
-
*/
|
|
189
|
-
async function consolidateMemories(projectRoot, options) {
|
|
190
|
-
const olderThanDays = options?.olderThanDays;
|
|
191
|
-
const minClusterSize = options?.minClusterSize;
|
|
192
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
193
|
-
await getBrainDb(projectRoot);
|
|
194
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
195
|
-
if (!nativeDb) return {
|
|
196
|
-
grouped: 0,
|
|
197
|
-
merged: 0,
|
|
198
|
-
archived: 0
|
|
199
|
-
};
|
|
200
|
-
const cutoffDate = (/* @__PURE__ */ new Date(Date.now() - olderThanDays * 24 * 60 * 60 * 1e3)).toISOString().replace("T", " ").slice(0, 19);
|
|
201
|
-
const oldObservations = typedAll(nativeDb.prepare(`
|
|
202
|
-
SELECT id, type, title, narrative, project, created_at
|
|
203
|
-
FROM brain_observations
|
|
204
|
-
WHERE created_at < ?
|
|
205
|
-
AND narrative NOT LIKE '[ARCHIVED]%'
|
|
206
|
-
ORDER BY created_at DESC
|
|
207
|
-
`), cutoffDate);
|
|
208
|
-
if (oldObservations.length < minClusterSize) return {
|
|
209
|
-
grouped: 0,
|
|
210
|
-
merged: 0,
|
|
211
|
-
archived: 0
|
|
212
|
-
};
|
|
213
|
-
const entries = oldObservations.map((obs) => ({
|
|
214
|
-
...obs,
|
|
215
|
-
keywords: extractKeywords(`${obs.title} ${obs.narrative ?? ""}`),
|
|
216
|
-
clustered: false
|
|
217
|
-
}));
|
|
218
|
-
const clusters = [];
|
|
219
|
-
const overlapThreshold = .3;
|
|
220
|
-
for (let i = 0; i < entries.length; i++) {
|
|
221
|
-
if (entries[i].clustered) continue;
|
|
222
|
-
const cluster = [entries[i]];
|
|
223
|
-
entries[i].clustered = true;
|
|
224
|
-
for (let j = i + 1; j < entries.length; j++) {
|
|
225
|
-
if (entries[j].clustered) continue;
|
|
226
|
-
if (entries[i].type !== entries[j].type) continue;
|
|
227
|
-
if (keywordOverlap(entries[i].keywords, entries[j].keywords) >= overlapThreshold) {
|
|
228
|
-
cluster.push(entries[j]);
|
|
229
|
-
entries[j].clustered = true;
|
|
230
|
-
}
|
|
231
|
-
}
|
|
232
|
-
if (cluster.length >= minClusterSize) clusters.push(cluster);
|
|
233
|
-
}
|
|
234
|
-
let grouped = 0;
|
|
235
|
-
let merged = 0;
|
|
236
|
-
let archived = 0;
|
|
237
|
-
const accessor = await getBrainAccessor(projectRoot);
|
|
238
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
239
|
-
for (const cluster of clusters) {
|
|
240
|
-
grouped += cluster.length;
|
|
241
|
-
const titles = cluster.map((c) => c.title).join("; ");
|
|
242
|
-
const summaryTitle = `Consolidated: ${cluster[0].type} observations (${cluster.length} entries)`;
|
|
243
|
-
const summaryNarrative = `Merged from ${cluster.length} observations: ${titles.slice(0, 500)}`;
|
|
244
|
-
const contentHash = createHash("sha256").update(summaryTitle + summaryNarrative).digest("hex").slice(0, 16);
|
|
245
|
-
const id = `O-${Date.now().toString(36)}`;
|
|
246
|
-
await accessor.addObservation({
|
|
247
|
-
id,
|
|
248
|
-
type: cluster[0].type,
|
|
249
|
-
title: summaryTitle,
|
|
250
|
-
narrative: summaryNarrative,
|
|
251
|
-
contentHash,
|
|
252
|
-
project: cluster[0].project ?? null,
|
|
253
|
-
sourceType: "agent",
|
|
254
|
-
createdAt: now
|
|
255
|
-
});
|
|
256
|
-
merged++;
|
|
257
|
-
for (const obs of cluster) {
|
|
258
|
-
nativeDb.prepare(`
|
|
259
|
-
UPDATE brain_observations
|
|
260
|
-
SET narrative = '[ARCHIVED] ' || COALESCE(narrative, ''),
|
|
261
|
-
updated_at = ?
|
|
262
|
-
WHERE id = ?
|
|
263
|
-
`).run(now, obs.id);
|
|
264
|
-
archived++;
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
return {
|
|
268
|
-
grouped,
|
|
269
|
-
merged,
|
|
270
|
-
archived
|
|
271
|
-
};
|
|
272
|
-
}
|
|
273
|
-
/**
|
|
274
|
-
* Run tier promotion for all memory tables.
|
|
275
|
-
*
|
|
276
|
-
* Promotion rules (per spec §1.1–§1.3, relaxed in T614):
|
|
277
|
-
* - short → medium:
|
|
278
|
-
* A. (citationCount >= 3 AND age > 24h) — citation-based track
|
|
279
|
-
* B. (qualityScore >= 0.7 AND age > 24h) — quality fast-track
|
|
280
|
-
* C. (verified = true AND age > 24h) — owner-verified track
|
|
281
|
-
* Note: `verified` is no longer a hard gate for routes A and B.
|
|
282
|
-
* Requiring verified=true on all paths caused all 235 short-tier observations
|
|
283
|
-
* to be permanently stuck (T614 bug).
|
|
284
|
-
* - medium → long:
|
|
285
|
-
* (citationCount >= 5 AND age > 7 days) OR (verified = true AND age > 7 days)
|
|
286
|
-
* Verified entries accelerate to long-tier without citation threshold.
|
|
287
|
-
*
|
|
288
|
-
* Eviction rules:
|
|
289
|
-
* - short-term entries older than 7 days with no promotion eligibility are
|
|
290
|
-
* soft-evicted (invalidAt = now).
|
|
291
|
-
* - long-term entries are NEVER auto-evicted.
|
|
292
|
-
*
|
|
293
|
-
* @param projectRoot - Project root directory for brain.db resolution
|
|
294
|
-
* @returns Lists of promoted and evicted entries
|
|
295
|
-
*/
|
|
296
|
-
async function runTierPromotion(projectRoot) {
|
|
297
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
298
|
-
await getBrainDb(projectRoot);
|
|
299
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
300
|
-
if (!nativeDb) return {
|
|
301
|
-
promoted: [],
|
|
302
|
-
evicted: []
|
|
303
|
-
};
|
|
304
|
-
const promoted = [];
|
|
305
|
-
const evicted = [];
|
|
306
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
307
|
-
const age24h = (/* @__PURE__ */ new Date(Date.now() - 1440 * 60 * 1e3)).toISOString().replace("T", " ").slice(0, 19);
|
|
308
|
-
const age7d = (/* @__PURE__ */ new Date(Date.now() - 10080 * 60 * 1e3)).toISOString().replace("T", " ").slice(0, 19);
|
|
309
|
-
const evictionCutoff = (/* @__PURE__ */ new Date(Date.now() - 10080 * 60 * 1e3)).toISOString().replace("T", " ").slice(0, 19);
|
|
310
|
-
for (const { table, dateCol } of [
|
|
311
|
-
{
|
|
312
|
-
table: "brain_observations",
|
|
313
|
-
dateCol: "created_at"
|
|
314
|
-
},
|
|
315
|
-
{
|
|
316
|
-
table: "brain_learnings",
|
|
317
|
-
dateCol: "created_at"
|
|
318
|
-
},
|
|
319
|
-
{
|
|
320
|
-
table: "brain_patterns",
|
|
321
|
-
dateCol: "extracted_at"
|
|
322
|
-
},
|
|
323
|
-
{
|
|
324
|
-
table: "brain_decisions",
|
|
325
|
-
dateCol: "created_at"
|
|
326
|
-
}
|
|
327
|
-
]) {
|
|
328
|
-
let shortToMedium = [];
|
|
329
|
-
try {
|
|
330
|
-
shortToMedium = typedAll(nativeDb.prepare(`
|
|
331
|
-
SELECT id, citation_count, quality_score, verified
|
|
332
|
-
FROM ${table}
|
|
333
|
-
WHERE memory_tier = 'short'
|
|
334
|
-
AND invalid_at IS NULL
|
|
335
|
-
AND ${dateCol} < ?
|
|
336
|
-
AND (
|
|
337
|
-
citation_count >= 3
|
|
338
|
-
OR quality_score >= 0.7
|
|
339
|
-
OR verified = 1
|
|
340
|
-
)
|
|
341
|
-
`), age24h);
|
|
342
|
-
} catch {
|
|
343
|
-
continue;
|
|
344
|
-
}
|
|
345
|
-
for (const row of shortToMedium) try {
|
|
346
|
-
let reason;
|
|
347
|
-
if (row.citation_count >= 3) reason = `citationCount=${row.citation_count} >= 3, age > 24h`;
|
|
348
|
-
else if ((row.quality_score ?? 0) >= .7) reason = `qualityScore=${row.quality_score?.toFixed(2)} >= 0.70, age > 24h`;
|
|
349
|
-
else reason = `verified=true, age > 24h`;
|
|
350
|
-
nativeDb.prepare(`UPDATE ${table} SET memory_tier = 'medium', updated_at = ?, tier_promoted_at = ?, tier_promotion_reason = ? WHERE id = ?`).run(now, now, reason, row.id);
|
|
351
|
-
promoted.push({
|
|
352
|
-
id: row.id,
|
|
353
|
-
table,
|
|
354
|
-
fromTier: "short",
|
|
355
|
-
toTier: "medium",
|
|
356
|
-
reason
|
|
357
|
-
});
|
|
358
|
-
} catch {}
|
|
359
|
-
let mediumToLong = [];
|
|
360
|
-
try {
|
|
361
|
-
mediumToLong = typedAll(nativeDb.prepare(`
|
|
362
|
-
SELECT id, citation_count, quality_score, verified
|
|
363
|
-
FROM ${table}
|
|
364
|
-
WHERE memory_tier = 'medium'
|
|
365
|
-
AND invalid_at IS NULL
|
|
366
|
-
AND ${dateCol} < ?
|
|
367
|
-
AND (citation_count >= 5 OR verified = 1)
|
|
368
|
-
`), age7d);
|
|
369
|
-
} catch {
|
|
370
|
-
continue;
|
|
371
|
-
}
|
|
372
|
-
for (const row of mediumToLong) try {
|
|
373
|
-
const reason = row.citation_count >= 5 ? `citationCount=${row.citation_count} >= 5, age > 7d` : `verified=true, age > 7d`;
|
|
374
|
-
nativeDb.prepare(`UPDATE ${table} SET memory_tier = 'long', updated_at = ?, tier_promoted_at = ?, tier_promotion_reason = ? WHERE id = ?`).run(now, now, reason, row.id);
|
|
375
|
-
promoted.push({
|
|
376
|
-
id: row.id,
|
|
377
|
-
table,
|
|
378
|
-
fromTier: "medium",
|
|
379
|
-
toTier: "long",
|
|
380
|
-
reason
|
|
381
|
-
});
|
|
382
|
-
} catch {}
|
|
383
|
-
let toEvict = [];
|
|
384
|
-
try {
|
|
385
|
-
toEvict = typedAll(nativeDb.prepare(`
|
|
386
|
-
SELECT id, quality_score
|
|
387
|
-
FROM ${table}
|
|
388
|
-
WHERE memory_tier = 'short'
|
|
389
|
-
AND invalid_at IS NULL
|
|
390
|
-
AND ${dateCol} < ?
|
|
391
|
-
AND (verified = 0 OR verified IS NULL)
|
|
392
|
-
AND (quality_score IS NULL OR quality_score < 0.5)
|
|
393
|
-
`), evictionCutoff);
|
|
394
|
-
} catch {
|
|
395
|
-
continue;
|
|
396
|
-
}
|
|
397
|
-
for (const row of toEvict) try {
|
|
398
|
-
nativeDb.prepare(`UPDATE ${table} SET invalid_at = ?, updated_at = ? WHERE id = ?`).run(now, now, row.id);
|
|
399
|
-
evicted.push({
|
|
400
|
-
id: row.id,
|
|
401
|
-
table,
|
|
402
|
-
tier: "short",
|
|
403
|
-
reason: `age > 7d, unverified, qualityScore=${row.quality_score?.toFixed(2) ?? "null"} < 0.5`
|
|
404
|
-
});
|
|
405
|
-
} catch {}
|
|
406
|
-
}
|
|
407
|
-
return {
|
|
408
|
-
promoted,
|
|
409
|
-
evicted
|
|
410
|
-
};
|
|
411
|
-
}
|
|
412
|
-
/**
|
|
413
|
-
* Run the full sleep-time consolidation pipeline.
|
|
414
|
-
*
|
|
415
|
-
* This is the "Letta OS sleep-time compute" pattern — consolidation runs
|
|
416
|
-
* during idle time (after session end), never during active work.
|
|
417
|
-
*
|
|
418
|
-
* Steps (in order):
|
|
419
|
-
* 1. Deduplication — merge entries with >0.85 content similarity
|
|
420
|
-
* 2. Quality recompute — recalculate scores with current age/citations
|
|
421
|
-
* 3. Tier promotion — runTierPromotion()
|
|
422
|
-
* 4. Contradiction detection — from brain-consolidator
|
|
423
|
-
* 5. Soft eviction — invalidate low-quality medium-term entries
|
|
424
|
-
* 6. Graph edge strengthening — increment weight on frequently-traversed edges
|
|
425
|
-
* 7. Summary generation — existing consolidateMemories() for large clusters
|
|
426
|
-
* 8. Code↔memory graph linking
|
|
427
|
-
* 9a. R-STDP reward backfill — assign reward_signal from task outcomes (T681)
|
|
428
|
-
* 9a.5. Outcome correlation — correlateOutcomes quality adjustments (T994)
|
|
429
|
-
* 9b. STDP timing-dependent plasticity — apply Δw using reward_signal (T679)
|
|
430
|
-
* 9c. Homeostatic decay — synaptic scaling + pruning (T690)
|
|
431
|
-
* 9d. History retention — prune brain_plasticity_events + brain_weight_history (T10348)
|
|
432
|
-
* 9e. Consolidation event log — INSERT into brain_consolidation_events (T694)
|
|
433
|
-
* 9f. Hard-sweeper — DELETE prune_candidate=1 + quality<0.2 + citations=0 + age>30d (T995)
|
|
434
|
-
*
|
|
435
|
-
* All steps are BEST-EFFORT — any step failure is caught and logged to console.warn.
|
|
436
|
-
*
|
|
437
|
-
* @param projectRoot - Project root directory for brain.db resolution
|
|
438
|
-
* @param sessionId - Active session ID, passed to backfillRewardSignals (Step 9a).
|
|
439
|
-
* If null/undefined, Step 9a is a no-op (no task correlation available).
|
|
440
|
-
* @param trigger - What triggered this consolidation run (for observability).
|
|
441
|
-
* Defaults to 'session_end'. Written to brain_consolidation_events.
|
|
442
|
-
* @returns Aggregated counts from each consolidation step
|
|
443
|
-
*/
|
|
444
|
-
async function runConsolidation(projectRoot, sessionId, trigger = "session_end") {
|
|
445
|
-
const consolidationStartMs = Date.now();
|
|
446
|
-
const result = {
|
|
447
|
-
deduplicated: 0,
|
|
448
|
-
qualityRecomputed: 0,
|
|
449
|
-
tierPromotions: {
|
|
450
|
-
promoted: [],
|
|
451
|
-
evicted: []
|
|
452
|
-
},
|
|
453
|
-
contradictions: 0,
|
|
454
|
-
softEvicted: 0,
|
|
455
|
-
edgesStrengthened: 0,
|
|
456
|
-
nexusEdgesStrengthened: 0,
|
|
457
|
-
summariesGenerated: 0
|
|
458
|
-
};
|
|
459
|
-
try {
|
|
460
|
-
result.deduplicated = await deduplicateByEmbedding(projectRoot);
|
|
461
|
-
} catch (err) {
|
|
462
|
-
console.warn("[consolidation] Step 1 deduplication failed:", err);
|
|
463
|
-
}
|
|
464
|
-
try {
|
|
465
|
-
result.qualityRecomputed = await recomputeQualityScores(projectRoot);
|
|
466
|
-
} catch (err) {
|
|
467
|
-
console.warn("[consolidation] Step 2 quality recompute failed:", err);
|
|
468
|
-
}
|
|
469
|
-
try {
|
|
470
|
-
result.tierPromotions = await runTierPromotion(projectRoot);
|
|
471
|
-
} catch (err) {
|
|
472
|
-
console.warn("[consolidation] Step 3 tier promotion failed:", err);
|
|
473
|
-
}
|
|
474
|
-
try {
|
|
475
|
-
result.autoExtractPromotion = await fulfillPromotionLog(projectRoot);
|
|
476
|
-
} catch (err) {
|
|
477
|
-
console.warn("[consolidation] Step 3b promotion fulfillment failed:", err);
|
|
478
|
-
}
|
|
479
|
-
try {
|
|
480
|
-
const { detectContradictions } = await import('./brain-consolidator-JGm6mzFf.js');
|
|
481
|
-
result.contradictions = (await detectContradictions(projectRoot)).length;
|
|
482
|
-
} catch (err) {
|
|
483
|
-
console.warn("[consolidation] Step 4 contradiction detection failed:", err);
|
|
484
|
-
}
|
|
485
|
-
try {
|
|
486
|
-
const { dedupePatterns } = await import('./brain-consolidator-JGm6mzFf.js');
|
|
487
|
-
result.patternDeduped = await dedupePatterns(projectRoot);
|
|
488
|
-
} catch (err) {
|
|
489
|
-
console.warn("[consolidation] Step 4b pattern dedup failed:", err);
|
|
490
|
-
}
|
|
491
|
-
try {
|
|
492
|
-
result.softEvicted = await softEvictLowQualityMedium(projectRoot);
|
|
493
|
-
} catch (err) {
|
|
494
|
-
console.warn("[consolidation] Step 5 soft eviction failed:", err);
|
|
495
|
-
}
|
|
496
|
-
try {
|
|
497
|
-
result.edgesStrengthened = await strengthenCoRetrievedEdges(projectRoot);
|
|
498
|
-
} catch (err) {
|
|
499
|
-
console.warn("[consolidation] Step 6 edge strengthening failed:", err);
|
|
500
|
-
}
|
|
501
|
-
try {
|
|
502
|
-
const { extractNexusPairsFromRetrievalLog, strengthenNexusCoAccess } = await import('./nexus-plasticity-BTfU8cW_.js');
|
|
503
|
-
const nexusPairs = await extractNexusPairsFromRetrievalLog(projectRoot);
|
|
504
|
-
if (nexusPairs.length > 0) result.nexusEdgesStrengthened = (await strengthenNexusCoAccess(nexusPairs)).strengthened;
|
|
505
|
-
else result.nexusEdgesStrengthened = 0;
|
|
506
|
-
} catch (err) {
|
|
507
|
-
console.warn("[consolidation] Step 6b nexus plasticity failed:", err);
|
|
508
|
-
result.nexusEdgesStrengthened = 0;
|
|
509
|
-
}
|
|
510
|
-
try {
|
|
511
|
-
const { applyPlasticityDecay } = await import('./nexus-plasticity-BTfU8cW_.js');
|
|
512
|
-
result.nexusEdgesDecayed = (await applyPlasticityDecay()).updated;
|
|
513
|
-
} catch (err) {
|
|
514
|
-
console.warn("[consolidation] Step 6c plasticity decay failed:", err);
|
|
515
|
-
}
|
|
516
|
-
try {
|
|
517
|
-
result.summariesGenerated = (await consolidateMemories(projectRoot, {
|
|
518
|
-
olderThanDays: 30,
|
|
519
|
-
minClusterSize: 5
|
|
520
|
-
})).merged;
|
|
521
|
-
} catch (err) {
|
|
522
|
-
console.warn("[consolidation] Step 7 summary generation failed:", err);
|
|
523
|
-
}
|
|
524
|
-
try {
|
|
525
|
-
const { autoLinkMemories } = await import('./graph-memory-bridge-CY8ft_d7.js');
|
|
526
|
-
result.graphLinksCreated = (await autoLinkMemories(projectRoot)).linked;
|
|
527
|
-
} catch (err) {
|
|
528
|
-
console.warn("[consolidation] Step 8 graph memory bridge failed:", err);
|
|
529
|
-
}
|
|
530
|
-
try {
|
|
531
|
-
const { backfillRewardSignals } = await import('./brain-stdp2-BxSBIlSr.js');
|
|
532
|
-
result.rewardBackfilled = await backfillRewardSignals(projectRoot, sessionId ?? null);
|
|
533
|
-
} catch (err) {
|
|
534
|
-
console.warn("[consolidation] Step 9a reward backfill failed:", err);
|
|
535
|
-
}
|
|
536
|
-
try {
|
|
537
|
-
const { correlateOutcomes } = await import('./quality-feedback-CuCGEI6S.js');
|
|
538
|
-
const correlateResult = await correlateOutcomes(projectRoot);
|
|
539
|
-
result.outcomeCorrelation = {
|
|
540
|
-
boosted: correlateResult.boosted,
|
|
541
|
-
penalized: correlateResult.penalized,
|
|
542
|
-
flaggedForPruning: correlateResult.flaggedForPruning
|
|
543
|
-
};
|
|
544
|
-
} catch (err) {
|
|
545
|
-
console.warn("[consolidation] Step 9a.5 outcome correlation failed:", err);
|
|
546
|
-
}
|
|
547
|
-
try {
|
|
548
|
-
const { applyStdpPlasticity, shouldRunPlasticity } = await import('./brain-stdp2-BxSBIlSr.js');
|
|
549
|
-
if (await shouldRunPlasticity(projectRoot, sessionId ?? null, 2)) result.stdpPlasticity = await applyStdpPlasticity(projectRoot);
|
|
550
|
-
else result.stdpPlasticity = {
|
|
551
|
-
ltpEvents: 0,
|
|
552
|
-
ltdEvents: 0,
|
|
553
|
-
edgesCreated: 0,
|
|
554
|
-
pairsExamined: 0
|
|
555
|
-
};
|
|
556
|
-
} catch (err) {
|
|
557
|
-
console.warn("[consolidation] Step 9b STDP plasticity failed:", err);
|
|
558
|
-
}
|
|
559
|
-
try {
|
|
560
|
-
const { applyHomeostaticDecay } = await import('./brain-stdp2-BxSBIlSr.js');
|
|
561
|
-
result.homeostaticDecay = await applyHomeostaticDecay(projectRoot);
|
|
562
|
-
} catch (err) {
|
|
563
|
-
console.warn("[consolidation] Step 9c homeostatic decay failed:", err);
|
|
564
|
-
}
|
|
565
|
-
try {
|
|
566
|
-
const { pruneStaleHistory } = await import('./brain-stdp2-BxSBIlSr.js');
|
|
567
|
-
result.historyRetention = await pruneStaleHistory(projectRoot);
|
|
568
|
-
} catch (err) {
|
|
569
|
-
console.warn("[consolidation] Step 9d history retention failed:", err);
|
|
570
|
-
}
|
|
571
|
-
try {
|
|
572
|
-
const { runPruneSweep } = await import('./brain-maintenance2-CwVSmfDT.js');
|
|
573
|
-
const sweepResult = await runPruneSweep(projectRoot);
|
|
574
|
-
result.pruneSweep = {
|
|
575
|
-
deleted: sweepResult.deleted,
|
|
576
|
-
wouldDelete: sweepResult.wouldDelete,
|
|
577
|
-
dryRun: sweepResult.dryRun
|
|
578
|
-
};
|
|
579
|
-
} catch (err) {
|
|
580
|
-
console.warn("[consolidation] Step 9f prune sweep failed:", err);
|
|
581
|
-
}
|
|
582
|
-
try {
|
|
583
|
-
const { consolidateAttention } = await import('./attention-consolidate-CidG1jfH.js');
|
|
584
|
-
const attentionResult = await consolidateAttention(projectRoot);
|
|
585
|
-
result.attentionConsolidation = {
|
|
586
|
-
reviewed: attentionResult.reviewed,
|
|
587
|
-
promoted: attentionResult.promoted,
|
|
588
|
-
kept: attentionResult.kept,
|
|
589
|
-
discarded: attentionResult.discarded
|
|
590
|
-
};
|
|
591
|
-
} catch (err) {
|
|
592
|
-
getLogger("consolidation").warn({ err }, "Step 9g attention consolidation failed");
|
|
593
|
-
}
|
|
594
|
-
try {
|
|
595
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
596
|
-
await getBrainDb(projectRoot);
|
|
597
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
598
|
-
if (nativeDb) {
|
|
599
|
-
let consolidationEventsExist = false;
|
|
600
|
-
try {
|
|
601
|
-
nativeDb.prepare("SELECT 1 FROM brain_consolidation_events LIMIT 1").get();
|
|
602
|
-
consolidationEventsExist = true;
|
|
603
|
-
} catch {}
|
|
604
|
-
if (consolidationEventsExist) {
|
|
605
|
-
const durationMs = Date.now() - consolidationStartMs;
|
|
606
|
-
const stepResultsJson = JSON.stringify(result);
|
|
607
|
-
nativeDb.prepare(`INSERT INTO brain_consolidation_events
|
|
608
|
-
(trigger, session_id, step_results_json, duration_ms, succeeded)
|
|
609
|
-
VALUES (?, ?, ?, ?, 1)`).run(trigger, sessionId ?? null, stepResultsJson, durationMs);
|
|
610
|
-
}
|
|
611
|
-
}
|
|
612
|
-
} catch (err) {
|
|
613
|
-
console.warn("[consolidation] Step 9e consolidation event log failed:", err);
|
|
614
|
-
}
|
|
615
|
-
try {
|
|
616
|
-
const { runSleepConsolidation } = await import('./sleep-consolidation-BnSwXrvq.js');
|
|
617
|
-
const sleepResult = await runSleepConsolidation(projectRoot);
|
|
618
|
-
result.sleepConsolidation = {
|
|
619
|
-
ran: sleepResult.ran,
|
|
620
|
-
merged: sleepResult.mergeDuplicates.merged,
|
|
621
|
-
pruned: sleepResult.pruneStale.pruned,
|
|
622
|
-
patternsGenerated: sleepResult.strengthenPatterns.patternsGenerated,
|
|
623
|
-
insightsStored: sleepResult.generateInsights.insightsStored
|
|
624
|
-
};
|
|
625
|
-
if (sleepResult.ran) result.summariesGenerated += sleepResult.strengthenPatterns.patternsGenerated + sleepResult.generateInsights.insightsStored;
|
|
626
|
-
else console.warn("[consolidation] Step 10 sleep consolidation skipped (disabled or no LLM)");
|
|
627
|
-
} catch (err) {
|
|
628
|
-
console.warn("[consolidation] Step 10 sleep consolidation failed:", err);
|
|
629
|
-
}
|
|
630
|
-
return result;
|
|
631
|
-
}
|
|
632
|
-
/**
|
|
633
|
-
* Fulfill pending entries in brain_promotion_log by inserting them into
|
|
634
|
-
* brain_learnings or brain_patterns.
|
|
635
|
-
*
|
|
636
|
-
* `promoteObservationsToTyped` (Step 3 of runConsolidation) only writes audit
|
|
637
|
-
* rows to brain_promotion_log — it does NOT insert into the typed tables.
|
|
638
|
-
* This step reads those pending log rows and performs the actual inserts.
|
|
639
|
-
*
|
|
640
|
-
* Idempotent: rows that have already been fulfilled (fulfilled_at IS NOT NULL)
|
|
641
|
-
* are skipped.
|
|
642
|
-
*
|
|
643
|
-
* @param projectRoot - Project root for brain.db resolution
|
|
644
|
-
* @returns AutoExtractMetrics describing what happened
|
|
645
|
-
*
|
|
646
|
-
* @task T1903
|
|
647
|
-
*/
|
|
648
|
-
async function fulfillPromotionLog(projectRoot) {
|
|
649
|
-
const metrics = {
|
|
650
|
-
invocations: 0,
|
|
651
|
-
candidates: 0,
|
|
652
|
-
promoted: 0,
|
|
653
|
-
rejected: {
|
|
654
|
-
already_fulfilled: 0,
|
|
655
|
-
store_error: 0,
|
|
656
|
-
no_narrative: 0,
|
|
657
|
-
dedup_hash: 0,
|
|
658
|
-
other: 0
|
|
659
|
-
}
|
|
660
|
-
};
|
|
661
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
662
|
-
await getBrainDb(projectRoot);
|
|
663
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
664
|
-
if (!nativeDb) return metrics;
|
|
665
|
-
try {
|
|
666
|
-
nativeDb.prepare("SELECT 1 FROM brain_promotion_log LIMIT 1").get();
|
|
667
|
-
} catch {
|
|
668
|
-
return metrics;
|
|
669
|
-
}
|
|
670
|
-
let pending = [];
|
|
671
|
-
try {
|
|
672
|
-
pending = typedAll(nativeDb.prepare(`
|
|
673
|
-
SELECT id, observation_id, to_tier, score, fulfilled_at
|
|
674
|
-
FROM brain_promotion_log
|
|
675
|
-
WHERE fulfilled_at IS NULL
|
|
676
|
-
AND decided_by = 'composite-scorer'
|
|
677
|
-
ORDER BY score DESC
|
|
678
|
-
LIMIT 200
|
|
679
|
-
`));
|
|
680
|
-
} catch {
|
|
681
|
-
return metrics;
|
|
682
|
-
}
|
|
683
|
-
metrics.invocations = pending.length;
|
|
684
|
-
if (pending.length === 0) return metrics;
|
|
685
|
-
const obsIds = pending.map((r) => r.observation_id);
|
|
686
|
-
const placeholders = obsIds.map(() => "?").join(", ");
|
|
687
|
-
const obsMap = /* @__PURE__ */ new Map();
|
|
688
|
-
try {
|
|
689
|
-
const rows = typedAll(nativeDb.prepare(`SELECT id, type, title, narrative, created_at, citation_count
|
|
690
|
-
FROM brain_observations
|
|
691
|
-
WHERE id IN (${placeholders}) AND invalid_at IS NULL`), ...obsIds);
|
|
692
|
-
for (const row of rows) obsMap.set(row.id, row);
|
|
693
|
-
} catch {
|
|
694
|
-
return metrics;
|
|
695
|
-
}
|
|
696
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
697
|
-
const { checkHashDedup } = await import('./extraction-gate-DDNBq7gu.js');
|
|
698
|
-
for (const logRow of pending) {
|
|
699
|
-
const obs = obsMap.get(logRow.observation_id);
|
|
700
|
-
if (!obs) {
|
|
701
|
-
metrics.rejected.other++;
|
|
702
|
-
continue;
|
|
703
|
-
}
|
|
704
|
-
const content = obs.narrative ?? obs.title;
|
|
705
|
-
if (!content?.trim()) {
|
|
706
|
-
metrics.rejected.no_narrative++;
|
|
707
|
-
try {
|
|
708
|
-
nativeDb.prepare(`UPDATE brain_promotion_log SET fulfilled_at = ?, fulfillment_note = 'no-narrative' WHERE id = ?`).run(now, logRow.id);
|
|
709
|
-
} catch {}
|
|
710
|
-
continue;
|
|
711
|
-
}
|
|
712
|
-
metrics.candidates++;
|
|
713
|
-
if ((await checkHashDedup(projectRoot, content, logRow.to_tier === "pattern" ? "brain_patterns" : "brain_learnings")).matched) {
|
|
714
|
-
metrics.rejected.dedup_hash++;
|
|
715
|
-
try {
|
|
716
|
-
nativeDb.prepare(`UPDATE brain_promotion_log SET fulfilled_at = ?, fulfillment_note = 'dedup-hash' WHERE id = ?`).run(now, logRow.id);
|
|
717
|
-
} catch {}
|
|
718
|
-
continue;
|
|
719
|
-
}
|
|
720
|
-
try {
|
|
721
|
-
if (logRow.to_tier === "pattern") {
|
|
722
|
-
const { storePattern } = await import('./patterns-lh5kn13I.js');
|
|
723
|
-
await storePattern(projectRoot, {
|
|
724
|
-
type: "workflow",
|
|
725
|
-
pattern: content,
|
|
726
|
-
context: obs.title,
|
|
727
|
-
_skipGate: true
|
|
728
|
-
});
|
|
729
|
-
} else {
|
|
730
|
-
const { storeLearning } = await import('./learnings-D6Y3YGMU.js');
|
|
731
|
-
await storeLearning(projectRoot, {
|
|
732
|
-
insight: content,
|
|
733
|
-
source: `promotion-log:${logRow.id}`,
|
|
734
|
-
confidence: Math.min(logRow.score, 1),
|
|
735
|
-
actionable: obs.type === "bugfix" || obs.type === "discovery",
|
|
736
|
-
_skipGate: true
|
|
737
|
-
});
|
|
738
|
-
}
|
|
739
|
-
metrics.promoted++;
|
|
740
|
-
try {
|
|
741
|
-
nativeDb.prepare(`UPDATE brain_promotion_log SET fulfilled_at = ?, fulfillment_note = 'stored' WHERE id = ?`).run(now, logRow.id);
|
|
742
|
-
} catch {}
|
|
743
|
-
} catch {
|
|
744
|
-
metrics.rejected.store_error++;
|
|
745
|
-
}
|
|
746
|
-
}
|
|
747
|
-
return metrics;
|
|
748
|
-
}
|
|
749
|
-
/**
|
|
750
|
-
* Merge entries with high embedding similarity (> 0.85 cosine similarity).
|
|
751
|
-
*
|
|
752
|
-
* For each pair above the threshold: keep the higher-quality entry, transfer
|
|
753
|
-
* citationCount, and soft-evict the clone (set invalidAt). When embeddings
|
|
754
|
-
* are unavailable, falls back to exact content-hash deduplication.
|
|
755
|
-
*
|
|
756
|
-
* @param projectRoot - Project root for brain.db resolution
|
|
757
|
-
* @returns Count of merged/evicted duplicate entries
|
|
758
|
-
*/
|
|
759
|
-
async function deduplicateByEmbedding(projectRoot) {
|
|
760
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
761
|
-
await getBrainDb(projectRoot);
|
|
762
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
763
|
-
if (!nativeDb) return 0;
|
|
764
|
-
let merged = 0;
|
|
765
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
766
|
-
const dupHashes = typedAll(nativeDb.prepare(`
|
|
767
|
-
SELECT content_hash, COUNT(*) as cnt
|
|
768
|
-
FROM brain_observations
|
|
769
|
-
WHERE content_hash IS NOT NULL
|
|
770
|
-
AND invalid_at IS NULL
|
|
771
|
-
GROUP BY content_hash
|
|
772
|
-
HAVING cnt > 1
|
|
773
|
-
`));
|
|
774
|
-
for (const dup of dupHashes) {
|
|
775
|
-
const dupes = typedAll(nativeDb.prepare(`
|
|
776
|
-
SELECT id, quality_score, citation_count
|
|
777
|
-
FROM brain_observations
|
|
778
|
-
WHERE content_hash = ?
|
|
779
|
-
AND invalid_at IS NULL
|
|
780
|
-
ORDER BY quality_score DESC, citation_count DESC
|
|
781
|
-
`), dup.content_hash);
|
|
782
|
-
if (dupes.length < 2) continue;
|
|
783
|
-
const [keeper, ...clones] = dupes;
|
|
784
|
-
if (!keeper) continue;
|
|
785
|
-
let totalCitations = keeper.citation_count;
|
|
786
|
-
for (const clone of clones) {
|
|
787
|
-
totalCitations += clone.citation_count;
|
|
788
|
-
nativeDb.prepare(`UPDATE brain_observations SET invalid_at = ?, updated_at = ? WHERE id = ?`).run(now, now, clone.id);
|
|
789
|
-
merged++;
|
|
790
|
-
}
|
|
791
|
-
if (totalCitations !== keeper.citation_count) nativeDb.prepare(`UPDATE brain_observations SET citation_count = ?, updated_at = ? WHERE id = ?`).run(totalCitations, now, keeper.id);
|
|
792
|
-
}
|
|
793
|
-
return merged;
|
|
794
|
-
}
|
|
795
|
-
/**
|
|
796
|
-
* Recompute quality scores factoring in current citation count and age.
|
|
797
|
-
*
|
|
798
|
-
* Applies a citation boost: +0.01 per citation, capped at +0.15.
|
|
799
|
-
* Applies age decay only on episodic entries (observations, episodic learnings).
|
|
800
|
-
*
|
|
801
|
-
* @param projectRoot - Project root for brain.db resolution
|
|
802
|
-
* @returns Count of entries updated
|
|
803
|
-
*/
|
|
804
|
-
async function recomputeQualityScores(projectRoot) {
|
|
805
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
806
|
-
await getBrainDb(projectRoot);
|
|
807
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
808
|
-
if (!nativeDb) return 0;
|
|
809
|
-
let updated = 0;
|
|
810
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
811
|
-
try {
|
|
812
|
-
const r = nativeDb.prepare(`
|
|
813
|
-
UPDATE brain_observations
|
|
814
|
-
SET quality_score = MIN(1.0, COALESCE(quality_score, 0.5) + MIN(0.15, citation_count * 0.01)),
|
|
815
|
-
updated_at = ?
|
|
816
|
-
WHERE citation_count > 0
|
|
817
|
-
AND invalid_at IS NULL
|
|
818
|
-
`).run(now);
|
|
819
|
-
updated += typeof r.changes === "number" ? r.changes : 0;
|
|
820
|
-
} catch {}
|
|
821
|
-
try {
|
|
822
|
-
const r = nativeDb.prepare(`
|
|
823
|
-
UPDATE brain_learnings
|
|
824
|
-
SET quality_score = MIN(1.0, COALESCE(quality_score, 0.5) + MIN(0.15, citation_count * 0.01)),
|
|
825
|
-
updated_at = ?
|
|
826
|
-
WHERE citation_count > 0
|
|
827
|
-
AND invalid_at IS NULL
|
|
828
|
-
`).run(now);
|
|
829
|
-
updated += typeof r.changes === "number" ? r.changes : 0;
|
|
830
|
-
} catch {}
|
|
831
|
-
return updated;
|
|
832
|
-
}
|
|
833
|
-
/**
|
|
834
|
-
* Soft-evict medium-term entries that have decayed below quality threshold.
|
|
835
|
-
*
|
|
836
|
-
* Entries are invalidated (invalidAt = now) when:
|
|
837
|
-
* - memoryTier = 'medium'
|
|
838
|
-
* - qualityScore < 0.30 AND age > 30 days
|
|
839
|
-
* - NOT long-term (protected from auto-eviction)
|
|
840
|
-
*
|
|
841
|
-
* @param projectRoot - Project root for brain.db resolution
|
|
842
|
-
* @returns Count of entries soft-evicted
|
|
843
|
-
*/
|
|
844
|
-
async function softEvictLowQualityMedium(projectRoot) {
|
|
845
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
846
|
-
await getBrainDb(projectRoot);
|
|
847
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
848
|
-
if (!nativeDb) return 0;
|
|
849
|
-
let evicted = 0;
|
|
850
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
851
|
-
const age30d = (/* @__PURE__ */ new Date(Date.now() - 720 * 60 * 60 * 1e3)).toISOString().replace("T", " ").slice(0, 19);
|
|
852
|
-
for (const { table, dateCol } of [
|
|
853
|
-
{
|
|
854
|
-
table: "brain_observations",
|
|
855
|
-
dateCol: "created_at"
|
|
856
|
-
},
|
|
857
|
-
{
|
|
858
|
-
table: "brain_learnings",
|
|
859
|
-
dateCol: "created_at"
|
|
860
|
-
},
|
|
861
|
-
{
|
|
862
|
-
table: "brain_patterns",
|
|
863
|
-
dateCol: "extracted_at"
|
|
864
|
-
},
|
|
865
|
-
{
|
|
866
|
-
table: "brain_decisions",
|
|
867
|
-
dateCol: "created_at"
|
|
868
|
-
}
|
|
869
|
-
]) try {
|
|
870
|
-
const r = nativeDb.prepare(`
|
|
871
|
-
UPDATE ${table}
|
|
872
|
-
SET invalid_at = ?, updated_at = ?
|
|
873
|
-
WHERE memory_tier = 'medium'
|
|
874
|
-
AND invalid_at IS NULL
|
|
875
|
-
AND quality_score IS NOT NULL
|
|
876
|
-
AND quality_score < 0.30
|
|
877
|
-
AND ${dateCol} < ?
|
|
878
|
-
`).run(now, now, age30d);
|
|
879
|
-
evicted += typeof r.changes === "number" ? r.changes : 0;
|
|
880
|
-
} catch {}
|
|
881
|
-
return evicted;
|
|
882
|
-
}
|
|
883
|
-
/**
|
|
884
|
-
* Strengthen edges between frequently co-retrieved brain graph nodes.
|
|
885
|
-
*
|
|
886
|
-
* Queries the brain_retrieval_log table (if it exists) to find pairs of
|
|
887
|
-
* entries that were returned together frequently (>= 3 times in the last
|
|
888
|
-
* 30 days). For each qualifying pair, increments the edge weight by 0.1
|
|
889
|
-
* (capped at 1.0) in brain_page_edges.
|
|
890
|
-
*
|
|
891
|
-
* Gracefully no-ops when brain_retrieval_log does not yet exist.
|
|
892
|
-
*
|
|
893
|
-
* @param projectRoot - Project root for brain.db resolution
|
|
894
|
-
* @returns Count of edges strengthened
|
|
895
|
-
*/
|
|
896
|
-
/**
|
|
897
|
-
* Parse entry_ids which may be either JSON array or comma-separated string (BUG-2 fix).
|
|
898
|
-
*
|
|
899
|
-
* @param raw - Raw entry_ids value from brain_retrieval_log
|
|
900
|
-
* @returns Parsed array of entry IDs, or empty array if parse fails
|
|
901
|
-
*/
|
|
902
|
-
function parseEntryIds(raw) {
|
|
903
|
-
const trimmed = raw.trim();
|
|
904
|
-
if (trimmed.startsWith("[")) try {
|
|
905
|
-
const parsed = JSON.parse(trimmed);
|
|
906
|
-
return Array.isArray(parsed) ? parsed : [];
|
|
907
|
-
} catch {
|
|
908
|
-
return [];
|
|
909
|
-
}
|
|
910
|
-
return trimmed.split(",").map((s) => s.trim()).filter(Boolean);
|
|
911
|
-
}
|
|
912
|
-
async function strengthenCoRetrievedEdges(projectRoot) {
|
|
913
|
-
const { getBrainDb, getBrainNativeDb } = await import('./memory-sqlite2-B7dq8doO.js');
|
|
914
|
-
await getBrainDb(projectRoot);
|
|
915
|
-
const nativeDb = getBrainNativeDb(projectRoot);
|
|
916
|
-
if (!nativeDb) return 0;
|
|
917
|
-
try {
|
|
918
|
-
nativeDb.prepare("SELECT 1 FROM brain_retrieval_log LIMIT 1").get();
|
|
919
|
-
} catch {
|
|
920
|
-
return 0;
|
|
921
|
-
}
|
|
922
|
-
const age30d = (/* @__PURE__ */ new Date(Date.now() - 720 * 60 * 60 * 1e3)).toISOString().replace("T", " ").slice(0, 19);
|
|
923
|
-
const now = (/* @__PURE__ */ new Date()).toISOString().replace("T", " ").slice(0, 19);
|
|
924
|
-
let logRows = [];
|
|
925
|
-
try {
|
|
926
|
-
logRows = typedAll(nativeDb.prepare(`SELECT entry_ids, query FROM brain_retrieval_log WHERE created_at >= ? LIMIT 1000`), age30d);
|
|
927
|
-
} catch {
|
|
928
|
-
return 0;
|
|
929
|
-
}
|
|
930
|
-
const coOccurrence = /* @__PURE__ */ new Map();
|
|
931
|
-
for (const row of logRows) {
|
|
932
|
-
const ids = parseEntryIds(row.entry_ids);
|
|
933
|
-
if (ids.length < 2) continue;
|
|
934
|
-
for (let i = 0; i < ids.length; i++) for (let j = i + 1; j < ids.length; j++) {
|
|
935
|
-
const a = ids[i];
|
|
936
|
-
const b = ids[j];
|
|
937
|
-
const key = a < b ? `${a}|${b}` : `${b}|${a}`;
|
|
938
|
-
const querySet = coOccurrence.get(key) ?? /* @__PURE__ */ new Set();
|
|
939
|
-
querySet.add(row.query);
|
|
940
|
-
coOccurrence.set(key, querySet);
|
|
941
|
-
}
|
|
942
|
-
}
|
|
943
|
-
let strengthened = 0;
|
|
944
|
-
for (const [pair, querySet] of coOccurrence) {
|
|
945
|
-
if (querySet.size < 3) continue;
|
|
946
|
-
const [fromId, toId] = pair.split("|");
|
|
947
|
-
if (!fromId || !toId) continue;
|
|
948
|
-
const nodeFrom = `observation:${fromId}`;
|
|
949
|
-
const nodeTo = `observation:${toId}`;
|
|
950
|
-
try {
|
|
951
|
-
const updateResult = nativeDb.prepare(`
|
|
952
|
-
UPDATE brain_page_edges
|
|
953
|
-
SET weight = MIN(1.0, weight + 0.1),
|
|
954
|
-
plasticity_class = 'hebbian'
|
|
955
|
-
WHERE from_id = ? AND to_id = ? AND edge_type = ?
|
|
956
|
-
`).run(nodeFrom, nodeTo, EDGE_TYPES.CO_RETRIEVED);
|
|
957
|
-
if ((typeof updateResult.changes === "number" ? updateResult.changes : 0) === 0) nativeDb.prepare(`
|
|
958
|
-
INSERT OR IGNORE INTO brain_page_edges
|
|
959
|
-
(from_id, to_id, edge_type, weight, provenance, plasticity_class, created_at)
|
|
960
|
-
VALUES (?, ?, ?, 0.3, 'consolidation:co-retrieval', 'hebbian', ?)
|
|
961
|
-
`).run(nodeFrom, nodeTo, EDGE_TYPES.CO_RETRIEVED, now);
|
|
962
|
-
strengthened++;
|
|
963
|
-
} catch {}
|
|
964
|
-
}
|
|
965
|
-
return strengthened;
|
|
966
|
-
}
|
|
967
|
-
|
|
968
|
-
export { runConsolidation };
|
|
969
|
-
//# sourceMappingURL=brain-lifecycle-BOOa876K.js.map
|