@remnic/core 1.1.31 → 9.3.515

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1087) hide show
  1. package/dist/abstraction-nodes.js +2 -2
  2. package/dist/access-cli.d.ts +1 -1
  3. package/dist/access-cli.js +156 -119
  4. package/dist/access-cli.js.map +1 -1
  5. package/dist/access-http.d.ts +8 -5
  6. package/dist/access-http.js +51 -51
  7. package/dist/access-idempotency.d.ts +2 -0
  8. package/dist/access-idempotency.js +1 -1
  9. package/dist/access-mcp.d.ts +16 -9
  10. package/dist/access-mcp.js +44 -44
  11. package/dist/access-schema.d.ts +45 -13
  12. package/dist/access-schema.js +8 -8
  13. package/dist/{access-service-CkZyb35d.d.ts → access-service-qrrIrC-0.d.ts} +5 -128
  14. package/dist/access-service.d.ts +7 -4
  15. package/dist/access-service.js +40 -40
  16. package/dist/action-confidence.d.ts +1 -0
  17. package/dist/active-memory-bridge.d.ts +1 -0
  18. package/dist/active-memory-bridge.js +3 -2
  19. package/dist/active-recall.d.ts +1 -0
  20. package/dist/active-recall.js +14 -9
  21. package/dist/active-recall.js.map +1 -1
  22. package/dist/adapters/claude-code.d.ts +6 -2
  23. package/dist/adapters/claude-code.js +2 -2
  24. package/dist/adapters/codex.d.ts +5 -1
  25. package/dist/adapters/codex.js +2 -2
  26. package/dist/adapters/hermes.js +2 -2
  27. package/dist/adapters/index.js +6 -6
  28. package/dist/adapters/registry.js +6 -6
  29. package/dist/adapters/replit.d.ts +4 -2
  30. package/dist/adapters/replit.js +2 -2
  31. package/dist/adapters/types.d.ts +4 -0
  32. package/dist/adapters/types.js +1 -1
  33. package/dist/behavior-learner.d.ts +1 -0
  34. package/dist/behavior-signals.d.ts +1 -0
  35. package/dist/behavior-signals.js +1 -1
  36. package/dist/bootstrap.d.ts +5 -3
  37. package/dist/bootstrap.js +2 -2
  38. package/dist/boxes.d.ts +1 -0
  39. package/dist/boxes.js +1 -1
  40. package/dist/briefing.d.ts +1 -0
  41. package/dist/briefing.js +9 -9
  42. package/dist/buffer-surprise-report.d.ts +1 -0
  43. package/dist/buffer.d.ts +1 -0
  44. package/dist/buffer.js +2 -2
  45. package/dist/bulk-import/index.d.ts +28 -0
  46. package/dist/bulk-import/index.js +31 -0
  47. package/dist/calibration.d.ts +2 -0
  48. package/dist/calibration.js +50 -17
  49. package/dist/calibration.js.map +1 -1
  50. package/dist/{capsule-crypto-5CYAGVC5.js → capsule-crypto-7FJQINUR.js} +2 -2
  51. package/dist/{capsule-merge-4MGKE7C5.js → capsule-merge-T2JRE46P.js} +3 -3
  52. package/dist/causal-behavior.d.ts +1 -0
  53. package/dist/causal-behavior.js +4 -4
  54. package/dist/causal-chain.js +4 -4
  55. package/dist/causal-consolidation.d.ts +16 -1
  56. package/dist/causal-consolidation.js +115 -32
  57. package/dist/causal-consolidation.js.map +1 -1
  58. package/dist/causal-retrieval.js +14 -6
  59. package/dist/causal-retrieval.js.map +1 -1
  60. package/dist/causal-trajectory-graph.js +2 -2
  61. package/dist/causal-trajectory.js +2 -2
  62. package/dist/{chunk-SAZS2QZB.js → chunk-23UORJ4S.js} +3 -3
  63. package/dist/{chunk-76FLAAUC.js → chunk-2AN2L4NL.js} +17 -6
  64. package/dist/chunk-2AN2L4NL.js.map +1 -0
  65. package/dist/{chunk-W4L6CZKA.js → chunk-2DL3OFLD.js} +15 -10
  66. package/dist/chunk-2DL3OFLD.js.map +1 -0
  67. package/dist/{chunk-7OZ53EXP.js → chunk-2NLLXCJG.js} +21 -10
  68. package/dist/chunk-2NLLXCJG.js.map +1 -0
  69. package/dist/{chunk-PK7H5L6Y.js → chunk-2NM43EWN.js} +2 -2
  70. package/dist/{chunk-PYXS46O7.js → chunk-3BP57I6J.js} +2 -2
  71. package/dist/{chunk-FBYESMQ2.js → chunk-3C5RPJAX.js} +2 -2
  72. package/dist/{chunk-ZAVUCJ4H.js → chunk-3Q4H3OBR.js} +150 -65
  73. package/dist/chunk-3Q4H3OBR.js.map +1 -0
  74. package/dist/{chunk-FKFMOY3N.js → chunk-42NQ7AVG.js} +3 -4
  75. package/dist/{chunk-FKFMOY3N.js.map → chunk-42NQ7AVG.js.map} +1 -1
  76. package/dist/chunk-4426WSWL.js +73 -0
  77. package/dist/chunk-4426WSWL.js.map +1 -0
  78. package/dist/{chunk-LIRZNNUP.js → chunk-44442YCH.js} +5 -2
  79. package/dist/chunk-44442YCH.js.map +1 -0
  80. package/dist/{chunk-H3ME6L6D.js → chunk-46GJIW5M.js} +23 -20
  81. package/dist/chunk-46GJIW5M.js.map +1 -0
  82. package/dist/{chunk-QDZ2RLEC.js → chunk-472U7RDF.js} +3 -3
  83. package/dist/chunk-472U7RDF.js.map +1 -0
  84. package/dist/{chunk-NN2DKE4T.js → chunk-4H5ZJHEN.js} +16 -3
  85. package/dist/{chunk-NN2DKE4T.js.map → chunk-4H5ZJHEN.js.map} +1 -1
  86. package/dist/{chunk-56K5QLHX.js → chunk-4HP7HIE3.js} +56 -13
  87. package/dist/chunk-4HP7HIE3.js.map +1 -0
  88. package/dist/{chunk-RK2Y4XOM.js → chunk-4JRRISLU.js} +9 -6
  89. package/dist/chunk-4JRRISLU.js.map +1 -0
  90. package/dist/{chunk-U7EJOMFC.js → chunk-4Q73JBSM.js} +4 -4
  91. package/dist/{chunk-XKLD5OK4.js → chunk-4RR6ROTB.js} +10 -11
  92. package/dist/chunk-4RR6ROTB.js.map +1 -0
  93. package/dist/{chunk-4KGVTPGD.js → chunk-6F6BXB7A.js} +9 -8
  94. package/dist/chunk-6F6BXB7A.js.map +1 -0
  95. package/dist/{chunk-NMZY542O.js → chunk-6URPAY2D.js} +41 -17
  96. package/dist/chunk-6URPAY2D.js.map +1 -0
  97. package/dist/{chunk-N53K2EXC.js → chunk-6VF75M3X.js} +2 -2
  98. package/dist/{chunk-XSZEP4SF.js → chunk-6XSPNR6L.js} +6 -5
  99. package/dist/chunk-6XSPNR6L.js.map +1 -0
  100. package/dist/{chunk-6H2TESSP.js → chunk-765K3SAT.js} +3 -3
  101. package/dist/{chunk-EDTHC6UD.js → chunk-77NAFXUD.js} +2 -2
  102. package/dist/{chunk-S7KDBTWT.js → chunk-7F7Z6MOS.js} +29 -14
  103. package/dist/chunk-7F7Z6MOS.js.map +1 -0
  104. package/dist/{chunk-MZH6EHNR.js → chunk-7H6CFEBJ.js} +41 -14
  105. package/dist/chunk-7H6CFEBJ.js.map +1 -0
  106. package/dist/{chunk-575RMLWN.js → chunk-7MV5CWTE.js} +26 -20
  107. package/dist/chunk-7MV5CWTE.js.map +1 -0
  108. package/dist/{chunk-MGKYQQYF.js → chunk-7Q3RCKAQ.js} +2 -2
  109. package/dist/chunk-7RXCMVFQ.js +27 -0
  110. package/dist/chunk-7RXCMVFQ.js.map +1 -0
  111. package/dist/{chunk-DGXUHMOV.js → chunk-A2IYSXDQ.js} +25 -6
  112. package/dist/chunk-A2IYSXDQ.js.map +1 -0
  113. package/dist/{chunk-EABGC2TL.js → chunk-A2Z6UCWT.js} +26 -4
  114. package/dist/chunk-A2Z6UCWT.js.map +1 -0
  115. package/dist/{chunk-3VAL7ZL2.js → chunk-A52AKD7C.js} +59 -24
  116. package/dist/chunk-A52AKD7C.js.map +1 -0
  117. package/dist/{chunk-5375UYTQ.js → chunk-A6D7A2FW.js} +4 -4
  118. package/dist/chunk-A6D7A2FW.js.map +1 -0
  119. package/dist/{chunk-FAAFWE4G.js → chunk-ALEPI75L.js} +24 -6
  120. package/dist/chunk-ALEPI75L.js.map +1 -0
  121. package/dist/{chunk-3SLRNYNG.js → chunk-AUDJPF4N.js} +15 -4
  122. package/dist/chunk-AUDJPF4N.js.map +1 -0
  123. package/dist/chunk-B5XMS73R.js +145 -0
  124. package/dist/chunk-B5XMS73R.js.map +1 -0
  125. package/dist/{chunk-HXXBL2KD.js → chunk-BECQDWBA.js} +44 -4
  126. package/dist/chunk-BECQDWBA.js.map +1 -0
  127. package/dist/{chunk-7SEAZFFB.js → chunk-BEUDU7Y4.js} +24 -4
  128. package/dist/chunk-BEUDU7Y4.js.map +1 -0
  129. package/dist/{chunk-XVVIG67A.js → chunk-BLZAVUD2.js} +61 -17
  130. package/dist/chunk-BLZAVUD2.js.map +1 -0
  131. package/dist/chunk-CHBI22MI.js +159 -0
  132. package/dist/chunk-CHBI22MI.js.map +1 -0
  133. package/dist/{chunk-GDFS42HT.js → chunk-CHCA44C3.js} +15 -8
  134. package/dist/chunk-CHCA44C3.js.map +1 -0
  135. package/dist/chunk-CINZGPSJ.js +22 -0
  136. package/dist/chunk-CINZGPSJ.js.map +1 -0
  137. package/dist/chunk-CMTINOFS.js +36 -0
  138. package/dist/chunk-CMTINOFS.js.map +1 -0
  139. package/dist/{chunk-34DQE4KF.js → chunk-CO7ZO4TU.js} +2 -2
  140. package/dist/{chunk-PFV5C235.js → chunk-CPPS65WS.js} +2 -1
  141. package/dist/{chunk-PFV5C235.js.map → chunk-CPPS65WS.js.map} +1 -1
  142. package/dist/{chunk-DINWEURR.js → chunk-CSKLPDN6.js} +20 -6
  143. package/dist/chunk-CSKLPDN6.js.map +1 -0
  144. package/dist/chunk-CWWMTTQE.js +566 -0
  145. package/dist/chunk-CWWMTTQE.js.map +1 -0
  146. package/dist/{chunk-IQT3XTKW.js → chunk-D24OXEPB.js} +13 -7
  147. package/dist/chunk-D24OXEPB.js.map +1 -0
  148. package/dist/{chunk-TPU5L5EY.js → chunk-D6WE5MTW.js} +272 -411
  149. package/dist/chunk-D6WE5MTW.js.map +1 -0
  150. package/dist/{chunk-WIICJPET.js → chunk-DEUNUKTD.js} +6 -4
  151. package/dist/{chunk-WIICJPET.js.map → chunk-DEUNUKTD.js.map} +1 -1
  152. package/dist/{chunk-ZYVPLJ4T.js → chunk-DHGSZ3UD.js} +9 -7
  153. package/dist/chunk-DHGSZ3UD.js.map +1 -0
  154. package/dist/{chunk-JR4ZC3G4.js → chunk-DLJ4IR6M.js} +91 -41
  155. package/dist/chunk-DLJ4IR6M.js.map +1 -0
  156. package/dist/{chunk-U4SCL7B7.js → chunk-DRD2Q7HQ.js} +82 -18
  157. package/dist/chunk-DRD2Q7HQ.js.map +1 -0
  158. package/dist/{chunk-2IWUMAES.js → chunk-E62SBGQ3.js} +28 -13
  159. package/dist/chunk-E62SBGQ3.js.map +1 -0
  160. package/dist/{chunk-C5BCH4ZS.js → chunk-EAZGEEG2.js} +21 -3
  161. package/dist/chunk-EAZGEEG2.js.map +1 -0
  162. package/dist/{chunk-TPB3I2AC.js → chunk-ECZU5BJH.js} +31 -10
  163. package/dist/chunk-ECZU5BJH.js.map +1 -0
  164. package/dist/{chunk-77H5NU3M.js → chunk-EDBEWFJO.js} +82 -18
  165. package/dist/chunk-EDBEWFJO.js.map +1 -0
  166. package/dist/chunk-EDQVAMQI.js +308 -0
  167. package/dist/chunk-EDQVAMQI.js.map +1 -0
  168. package/dist/{chunk-RRF5UOBJ.js → chunk-EI6V5UXY.js} +22 -15
  169. package/dist/chunk-EI6V5UXY.js.map +1 -0
  170. package/dist/{chunk-I5GLV3VE.js → chunk-EIPUHVKE.js} +31 -24
  171. package/dist/{chunk-I5GLV3VE.js.map → chunk-EIPUHVKE.js.map} +1 -1
  172. package/dist/{chunk-ZKSK55RC.js → chunk-ETUPBUHB.js} +2 -2
  173. package/dist/{chunk-25MQ7IHJ.js → chunk-EUML3N6B.js} +17 -6
  174. package/dist/chunk-EUML3N6B.js.map +1 -0
  175. package/dist/{chunk-5RGLBDQF.js → chunk-EVZFIAPG.js} +12 -12
  176. package/dist/chunk-EVZFIAPG.js.map +1 -0
  177. package/dist/{chunk-QRNI5JBH.js → chunk-EYIEWJNI.js} +2 -2
  178. package/dist/{chunk-YU5KIWYQ.js → chunk-FER4WARO.js} +79 -41
  179. package/dist/chunk-FER4WARO.js.map +1 -0
  180. package/dist/{chunk-43PJZYGL.js → chunk-FPGE5NVO.js} +45 -10
  181. package/dist/chunk-FPGE5NVO.js.map +1 -0
  182. package/dist/{chunk-C6QPK5GG.js → chunk-FZZ2QTJI.js} +2 -2
  183. package/dist/{chunk-D46YSIYX.js → chunk-G3Z3QEF5.js} +19 -11
  184. package/dist/{chunk-D46YSIYX.js.map → chunk-G3Z3QEF5.js.map} +1 -1
  185. package/dist/{chunk-3JXBXXM2.js → chunk-G4IAEX6D.js} +2 -2
  186. package/dist/{chunk-MSWG7JI6.js → chunk-G56P5RLD.js} +8 -2
  187. package/dist/chunk-G56P5RLD.js.map +1 -0
  188. package/dist/{chunk-AGZQD76C.js → chunk-GCGJW34D.js} +48 -2
  189. package/dist/chunk-GCGJW34D.js.map +1 -0
  190. package/dist/chunk-H2NCNXMS.js +159 -0
  191. package/dist/chunk-H2NCNXMS.js.map +1 -0
  192. package/dist/{chunk-XYIK4LF6.js → chunk-H3FZVNRN.js} +8 -2
  193. package/dist/chunk-H3FZVNRN.js.map +1 -0
  194. package/dist/{chunk-TK4UEOSK.js → chunk-HDDRVXX4.js} +8 -8
  195. package/dist/chunk-HDDRVXX4.js.map +1 -0
  196. package/dist/{chunk-LLQ2LLWF.js → chunk-HENLZHIT.js} +15 -5
  197. package/dist/chunk-HENLZHIT.js.map +1 -0
  198. package/dist/{chunk-N2D6GXBM.js → chunk-HINSGUA7.js} +28 -20
  199. package/dist/chunk-HINSGUA7.js.map +1 -0
  200. package/dist/{chunk-APO3DCMU.js → chunk-HLAVGJ62.js} +30 -8
  201. package/dist/chunk-HLAVGJ62.js.map +1 -0
  202. package/dist/{chunk-TPMQ3G6Z.js → chunk-HOJZMQ4J.js} +2 -2
  203. package/dist/chunk-HOJZMQ4J.js.map +1 -0
  204. package/dist/{chunk-LUDTDZLK.js → chunk-HPWVAEET.js} +33 -7
  205. package/dist/chunk-HPWVAEET.js.map +1 -0
  206. package/dist/{chunk-NZL6GGQE.js → chunk-HQ6NIBL6.js} +92 -30
  207. package/dist/chunk-HQ6NIBL6.js.map +1 -0
  208. package/dist/{chunk-UWVJF25J.js → chunk-HWVTS5NO.js} +20 -6
  209. package/dist/chunk-HWVTS5NO.js.map +1 -0
  210. package/dist/{chunk-2WWLHTZY.js → chunk-IC4GELZE.js} +2 -2
  211. package/dist/{chunk-QA2ZAPBU.js → chunk-IPLYGWQF.js} +28 -20
  212. package/dist/chunk-IPLYGWQF.js.map +1 -0
  213. package/dist/{chunk-A6KTB5R6.js → chunk-IQ3OI2RR.js} +3 -3
  214. package/dist/chunk-IQ3OI2RR.js.map +1 -0
  215. package/dist/{chunk-6LVVDPJ4.js → chunk-J64TK33U.js} +3 -4
  216. package/dist/chunk-J64TK33U.js.map +1 -0
  217. package/dist/{chunk-6FC5EGNV.js → chunk-JBPKEARU.js} +15 -5
  218. package/dist/{chunk-6FC5EGNV.js.map → chunk-JBPKEARU.js.map} +1 -1
  219. package/dist/{chunk-RHY3HH7P.js → chunk-JFEKNTX7.js} +125 -33
  220. package/dist/chunk-JFEKNTX7.js.map +1 -0
  221. package/dist/{chunk-TZOLIGIG.js → chunk-JJEJJ7RK.js} +4 -2
  222. package/dist/chunk-JJEJJ7RK.js.map +1 -0
  223. package/dist/{chunk-PCUKNJAZ.js → chunk-JKV57BTN.js} +2 -2
  224. package/dist/{chunk-EJI5XIBB.js → chunk-JLNBQWZ2.js} +55 -7
  225. package/dist/chunk-JLNBQWZ2.js.map +1 -0
  226. package/dist/{chunk-XIG5PDM7.js → chunk-JUC24CTX.js} +8 -12
  227. package/dist/chunk-JUC24CTX.js.map +1 -0
  228. package/dist/{chunk-3ZLVGM76.js → chunk-JYIKKAK3.js} +106 -44
  229. package/dist/chunk-JYIKKAK3.js.map +1 -0
  230. package/dist/{chunk-OIGNEXKZ.js → chunk-K5O2QY6T.js} +5 -1
  231. package/dist/{chunk-OIGNEXKZ.js.map → chunk-K5O2QY6T.js.map} +1 -1
  232. package/dist/{chunk-ZTFCYYEZ.js → chunk-KCYE2MZM.js} +3 -3
  233. package/dist/chunk-KCYE2MZM.js.map +1 -0
  234. package/dist/{chunk-JWPLJLDU.js → chunk-KD3QD3A5.js} +2 -2
  235. package/dist/{chunk-JWPLJLDU.js.map → chunk-KD3QD3A5.js.map} +1 -1
  236. package/dist/{chunk-YRMVARQP.js → chunk-KFY3SGN7.js} +49 -2
  237. package/dist/chunk-KFY3SGN7.js.map +1 -0
  238. package/dist/{chunk-CYFQJMUV.js → chunk-KIB7SDIJ.js} +15 -10
  239. package/dist/chunk-KIB7SDIJ.js.map +1 -0
  240. package/dist/{chunk-3KW65B36.js → chunk-KILOTVIF.js} +95 -48
  241. package/dist/chunk-KILOTVIF.js.map +1 -0
  242. package/dist/{chunk-MXFBBHJU.js → chunk-KJMYHC7K.js} +10 -5
  243. package/dist/chunk-KJMYHC7K.js.map +1 -0
  244. package/dist/{chunk-W3LR522O.js → chunk-KM2A35EO.js} +36 -34
  245. package/dist/chunk-KM2A35EO.js.map +1 -0
  246. package/dist/{chunk-WELDCG6C.js → chunk-L227SKTB.js} +109 -36
  247. package/dist/chunk-L227SKTB.js.map +1 -0
  248. package/dist/{chunk-W6AQJ2PY.js → chunk-L7S47WZT.js} +35 -16
  249. package/dist/chunk-L7S47WZT.js.map +1 -0
  250. package/dist/{chunk-BVF3AGJP.js → chunk-LJBOVCQG.js} +26 -11
  251. package/dist/chunk-LJBOVCQG.js.map +1 -0
  252. package/dist/{chunk-2KI4QFHU.js → chunk-LMDRGRJ2.js} +2 -2
  253. package/dist/{chunk-MY6TPVXW.js → chunk-LMPHTYJC.js} +2 -2
  254. package/dist/{chunk-EHRTFRWW.js → chunk-LQHDIS7L.js} +10 -5
  255. package/dist/chunk-LQHDIS7L.js.map +1 -0
  256. package/dist/chunk-LUDUFZTV.js +170 -0
  257. package/dist/chunk-LUDUFZTV.js.map +1 -0
  258. package/dist/{chunk-5HRY2WRF.js → chunk-LZ3VEOU5.js} +2 -2
  259. package/dist/{chunk-Q7P4WJDP.js → chunk-M5T4Q2ZU.js} +1 -1
  260. package/dist/chunk-M5T4Q2ZU.js.map +1 -0
  261. package/dist/{chunk-ICRIXAP2.js → chunk-MC4FJXPA.js} +16 -6
  262. package/dist/chunk-MC4FJXPA.js.map +1 -0
  263. package/dist/{chunk-WPGJYVUH.js → chunk-MGVIEM2O.js} +23 -6
  264. package/dist/chunk-MGVIEM2O.js.map +1 -0
  265. package/dist/{chunk-YROHKYBY.js → chunk-O27WNHTT.js} +22 -6
  266. package/dist/chunk-O27WNHTT.js.map +1 -0
  267. package/dist/{chunk-NGAVDO7E.js → chunk-OADWQ5CR.js} +2 -2
  268. package/dist/{chunk-2NMMFZ5T.js → chunk-OD4FM2U7.js} +6 -3
  269. package/dist/chunk-OD4FM2U7.js.map +1 -0
  270. package/dist/{chunk-OZHRDTDX.js → chunk-OKTXM5H4.js} +11 -1
  271. package/dist/chunk-OKTXM5H4.js.map +1 -0
  272. package/dist/{chunk-RXDLTSWT.js → chunk-ONPLNAPX.js} +16 -7
  273. package/dist/chunk-ONPLNAPX.js.map +1 -0
  274. package/dist/{chunk-FJ43PRLT.js → chunk-ORFGK3XI.js} +20 -14
  275. package/dist/chunk-ORFGK3XI.js.map +1 -0
  276. package/dist/{chunk-DOM4GKSW.js → chunk-OZKVVUJB.js} +3 -3
  277. package/dist/{chunk-MT4HVDUZ.js → chunk-PM3QHTFT.js} +3 -3
  278. package/dist/{chunk-4DWOBS2A.js → chunk-PRQJ5ESM.js} +27 -2
  279. package/dist/{chunk-4DWOBS2A.js.map → chunk-PRQJ5ESM.js.map} +1 -1
  280. package/dist/chunk-PU44GBL4.js +52 -0
  281. package/dist/chunk-PU44GBL4.js.map +1 -0
  282. package/dist/{chunk-MJFNCJXV.js → chunk-Q4CAQGKQ.js} +47 -9
  283. package/dist/chunk-Q4CAQGKQ.js.map +1 -0
  284. package/dist/{chunk-U3WSW6PZ.js → chunk-QMYXNM4P.js} +90 -35
  285. package/dist/chunk-QMYXNM4P.js.map +1 -0
  286. package/dist/{chunk-NBNN5GOB.js → chunk-QY7YA7OL.js} +11 -2
  287. package/dist/chunk-QY7YA7OL.js.map +1 -0
  288. package/dist/{chunk-QLLBRHAT.js → chunk-R26QUUQN.js} +181 -257
  289. package/dist/chunk-R26QUUQN.js.map +1 -0
  290. package/dist/{chunk-ZK7I7JYV.js → chunk-R3PS27B4.js} +7 -7
  291. package/dist/{chunk-TMQLARTH.js → chunk-RCTS5CKK.js} +33 -14
  292. package/dist/chunk-RCTS5CKK.js.map +1 -0
  293. package/dist/{chunk-2PRLKQAH.js → chunk-RLV3PQGH.js} +35 -19
  294. package/dist/chunk-RLV3PQGH.js.map +1 -0
  295. package/dist/{chunk-WW3QQF4H.js → chunk-ROZJACKP.js} +16 -1
  296. package/dist/chunk-ROZJACKP.js.map +1 -0
  297. package/dist/{chunk-7MNMYOFP.js → chunk-RSUYKGGZ.js} +3 -4
  298. package/dist/chunk-RSUYKGGZ.js.map +1 -0
  299. package/dist/{chunk-LT3NLYSI.js → chunk-RUZOJKNF.js} +10 -7
  300. package/dist/chunk-RUZOJKNF.js.map +1 -0
  301. package/dist/{chunk-326G7DJK.js → chunk-RW5DGAGO.js} +67 -13
  302. package/dist/chunk-RW5DGAGO.js.map +1 -0
  303. package/dist/{chunk-KOSORCJG.js → chunk-S53PKKWK.js} +63 -24
  304. package/dist/chunk-S53PKKWK.js.map +1 -0
  305. package/dist/{chunk-65PG43EQ.js → chunk-S7WU3Y3D.js} +21 -4
  306. package/dist/chunk-S7WU3Y3D.js.map +1 -0
  307. package/dist/{chunk-SKE7JYKA.js → chunk-SFXKHM7P.js} +2 -2
  308. package/dist/{chunk-HMDCOMYU.js → chunk-SKGV326D.js} +3 -3
  309. package/dist/chunk-T2PO5MUF.js +62 -0
  310. package/dist/chunk-T2PO5MUF.js.map +1 -0
  311. package/dist/{chunk-C7VW7C3F.js → chunk-TDKQGLJW.js} +3 -3
  312. package/dist/chunk-TDKQGLJW.js.map +1 -0
  313. package/dist/{chunk-3QKK7QOS.js → chunk-TERNBNJB.js} +3 -3
  314. package/dist/chunk-TERNBNJB.js.map +1 -0
  315. package/dist/{chunk-MXC3AP5I.js → chunk-TGQ2NTWH.js} +12 -7
  316. package/dist/chunk-TGQ2NTWH.js.map +1 -0
  317. package/dist/{chunk-3Y4P7RXM.js → chunk-TMSXWOBZ.js} +3 -4
  318. package/dist/chunk-TMSXWOBZ.js.map +1 -0
  319. package/dist/{chunk-3TNBOMQT.js → chunk-TVRN5QKH.js} +11 -11
  320. package/dist/{chunk-3TNBOMQT.js.map → chunk-TVRN5QKH.js.map} +1 -1
  321. package/dist/{chunk-5UM2VJ6D.js → chunk-UEY3VB6W.js} +2 -2
  322. package/dist/{chunk-I6K5FBRQ.js → chunk-UI3NYK34.js} +4 -1
  323. package/dist/{chunk-I6K5FBRQ.js.map → chunk-UI3NYK34.js.map} +1 -1
  324. package/dist/{chunk-VBJ7V5SK.js → chunk-UIPDNLXA.js} +21 -8
  325. package/dist/chunk-UIPDNLXA.js.map +1 -0
  326. package/dist/{chunk-GIF42EW3.js → chunk-UP6MOYCB.js} +3 -3
  327. package/dist/{chunk-K4FLSOR5.js → chunk-USYGGIJZ.js} +44 -15
  328. package/dist/chunk-USYGGIJZ.js.map +1 -0
  329. package/dist/{chunk-FIT6DMX6.js → chunk-UWY7GIVS.js} +152 -54
  330. package/dist/chunk-UWY7GIVS.js.map +1 -0
  331. package/dist/{chunk-MRILGULB.js → chunk-V2RCP53Q.js} +2 -2
  332. package/dist/{chunk-XKECPATV.js → chunk-VFUEZZBS.js} +113 -4
  333. package/dist/chunk-VFUEZZBS.js.map +1 -0
  334. package/dist/{chunk-FSFEQI74.js → chunk-W7L6HXUC.js} +2 -2
  335. package/dist/{chunk-3IQ2TR4N.js → chunk-WLEB7WCG.js} +2 -2
  336. package/dist/{chunk-GL6I6MEQ.js → chunk-WSGF57U2.js} +3 -3
  337. package/dist/{chunk-KNKUID7G.js → chunk-X7Y7WX73.js} +72 -6
  338. package/dist/chunk-X7Y7WX73.js.map +1 -0
  339. package/dist/{chunk-5NPGSAVB.js → chunk-XEKAG3FM.js} +23 -5
  340. package/dist/chunk-XEKAG3FM.js.map +1 -0
  341. package/dist/{chunk-3APJ5EVB.js → chunk-XKIQZXUB.js} +41 -26
  342. package/dist/chunk-XKIQZXUB.js.map +1 -0
  343. package/dist/chunk-XKXKSQU7.js +92 -0
  344. package/dist/chunk-XKXKSQU7.js.map +1 -0
  345. package/dist/{chunk-JA3AK3PT.js → chunk-XNLXAWHX.js} +4 -4
  346. package/dist/{chunk-CULXMQJH.js → chunk-XPXEJRUB.js} +3 -3
  347. package/dist/chunk-XPXEJRUB.js.map +1 -0
  348. package/dist/{chunk-PZIAX57I.js → chunk-XR6DNK4U.js} +7 -4
  349. package/dist/chunk-XR6DNK4U.js.map +1 -0
  350. package/dist/{chunk-47VWKCAF.js → chunk-XSQ4SGM5.js} +33 -4
  351. package/dist/chunk-XSQ4SGM5.js.map +1 -0
  352. package/dist/{chunk-66DHUKLO.js → chunk-XSWKORGM.js} +16 -14
  353. package/dist/chunk-XSWKORGM.js.map +1 -0
  354. package/dist/{chunk-QR3C7BKQ.js → chunk-XZ4WBBB5.js} +7 -8
  355. package/dist/chunk-XZ4WBBB5.js.map +1 -0
  356. package/dist/{chunk-WNARATI3.js → chunk-Y2SXZ5KZ.js} +59 -11
  357. package/dist/chunk-Y2SXZ5KZ.js.map +1 -0
  358. package/dist/{chunk-SIC6U3GZ.js → chunk-YHV3KRKS.js} +3 -3
  359. package/dist/{chunk-ZPKBYX2F.js → chunk-YNDLCWXS.js} +85 -9
  360. package/dist/chunk-YNDLCWXS.js.map +1 -0
  361. package/dist/{chunk-VLXA6PI2.js → chunk-YQMZ7IH2.js} +4 -4
  362. package/dist/{chunk-TMM4S4IJ.js → chunk-YR6GIWWY.js} +58 -8
  363. package/dist/chunk-YR6GIWWY.js.map +1 -0
  364. package/dist/{chunk-DK5LDEQM.js → chunk-YR7XMOWK.js} +39 -23
  365. package/dist/chunk-YR7XMOWK.js.map +1 -0
  366. package/dist/chunk-ZFXCQPNO.js +27 -0
  367. package/dist/chunk-ZFXCQPNO.js.map +1 -0
  368. package/dist/citations.js +1 -1
  369. package/dist/{cli-kuh9PwZ5.d.ts → cli-X4NJoqSe.d.ts} +8 -31
  370. package/dist/cli.d.ts +10 -6
  371. package/dist/cli.js +122 -117
  372. package/dist/commitment-ledger.js +2 -2
  373. package/dist/compat/checks.js +1 -2
  374. package/dist/compounding/engine.d.ts +3 -2
  375. package/dist/compounding/engine.js +11 -11
  376. package/dist/compounding/preference-consolidator.d.ts +1 -0
  377. package/dist/compounding/preference-consolidator.js +8 -8
  378. package/dist/compounding/preference-consolidator.js.map +1 -1
  379. package/dist/compression-optimizer.d.ts +1 -0
  380. package/dist/compression-optimizer.js +1 -1
  381. package/dist/config.d.ts +1 -0
  382. package/dist/config.js +3 -2
  383. package/dist/connectors/codex-materialize-runner.d.ts +1 -0
  384. package/dist/connectors/codex-materialize-runner.js +12 -11
  385. package/dist/connectors/codex-materialize.d.ts +1 -0
  386. package/dist/connectors/codex-materialize.js +3 -2
  387. package/dist/connectors/index.d.ts +1 -0
  388. package/dist/connectors/index.js +14 -14
  389. package/dist/{connectors-cli-CwbyjGR7.d.ts → connectors-cli-DbTPNj2H.d.ts} +7 -1
  390. package/dist/connectors-cli.d.ts +1 -1
  391. package/dist/connectors-cli.js +3 -1
  392. package/dist/consolidation-provenance-check.d.ts +1 -0
  393. package/dist/consolidation-provenance-check.js +2 -2
  394. package/dist/consolidation-undo.d.ts +1 -0
  395. package/dist/consolidation-undo.js +1 -1
  396. package/dist/contradiction/index.d.ts +3 -1
  397. package/dist/contradiction/index.js +3 -3
  398. package/dist/{contradiction-review-ATP4S6IC.js → contradiction-review-6V2LXXK6.js} +2 -2
  399. package/dist/{contradiction-scan-5A4IDZV5.js → contradiction-scan-GIRVC4C7.js} +3 -3
  400. package/dist/conversation-index/backend.d.ts +3 -1
  401. package/dist/conversation-index/backend.js +3 -3
  402. package/dist/conversation-index/chunker.d.ts +1 -0
  403. package/dist/conversation-index/cleanup.js +1 -1
  404. package/dist/conversation-index/faiss-adapter.d.ts +2 -1
  405. package/dist/conversation-index/faiss-adapter.js +1 -1
  406. package/dist/conversation-index/indexer.d.ts +5 -2
  407. package/dist/conversation-index/indexer.js +1 -1
  408. package/dist/conversation-index/search.d.ts +2 -1
  409. package/dist/cross-namespace-budget.js +1 -1
  410. package/dist/cue-anchors.js +2 -2
  411. package/dist/dashboard-runtime.d.ts +6 -0
  412. package/dist/dashboard-runtime.js +3 -3
  413. package/dist/day-summary.d.ts +1 -0
  414. package/dist/day-summary.js +2 -2
  415. package/dist/delinearize.d.ts +1 -0
  416. package/dist/direct-answer-wiring.d.ts +1 -0
  417. package/dist/direct-answer.d.ts +1 -0
  418. package/dist/{dreams-ledger-LR2NBAZE.js → dreams-ledger-3WSCI5V4.js} +5 -4
  419. package/dist/{dreams-ledger-LR2NBAZE.js.map → dreams-ledger-3WSCI5V4.js.map} +1 -1
  420. package/dist/embedding-fallback.d.ts +3 -0
  421. package/dist/embedding-fallback.js +2 -2
  422. package/dist/enrichment/index.d.ts +1 -0
  423. package/dist/enrichment/index.js +1 -1
  424. package/dist/entity-retrieval.d.ts +2 -0
  425. package/dist/entity-retrieval.js +9 -9
  426. package/dist/entity-schema.d.ts +1 -0
  427. package/dist/evals.js +1 -1
  428. package/dist/explicit-capture.d.ts +5 -3
  429. package/dist/explicit-capture.js +2 -2
  430. package/dist/extraction-judge-telemetry.d.ts +2 -0
  431. package/dist/extraction-judge-training.d.ts +2 -0
  432. package/dist/extraction-judge.d.ts +2 -0
  433. package/dist/extraction.d.ts +2 -0
  434. package/dist/extraction.js +12 -12
  435. package/dist/{faiss-adapter-CzPghc4C.d.ts → faiss-adapter-BHecI1fF.d.ts} +4 -1
  436. package/dist/fallback-llm.d.ts +11 -1
  437. package/dist/fallback-llm.js +8 -6
  438. package/dist/{first-start-migration-4MHQEOSD.js → first-start-migration-CKTCTCQI.js} +5 -5
  439. package/dist/graph-dashboard-diff.d.ts +4 -0
  440. package/dist/graph-dashboard-diff.js +1 -1
  441. package/dist/graph-dashboard-parser.js +1 -1
  442. package/dist/{graph-edge-decay-5DI5GUNL.js → graph-edge-decay-MUP5J7CC.js} +6 -6
  443. package/dist/graph-events.js +1 -1
  444. package/dist/graph-snapshot.js +3 -3
  445. package/dist/graph.js +2 -2
  446. package/dist/harmonic-retrieval.js +4 -4
  447. package/dist/identity-continuity.d.ts +1 -0
  448. package/dist/importance.d.ts +1 -0
  449. package/dist/importers/index.d.ts +244 -0
  450. package/dist/importers/index.js +20 -0
  451. package/dist/index.d.ts +20 -350
  452. package/dist/index.js +884 -561
  453. package/dist/index.js.map +1 -1
  454. package/dist/intent.d.ts +1 -0
  455. package/dist/lcm/archive.d.ts +2 -2
  456. package/dist/lcm/archive.js +2 -2
  457. package/dist/lcm/engine.d.ts +3 -2
  458. package/dist/lcm/engine.js +6 -6
  459. package/dist/lcm/index.d.ts +1 -0
  460. package/dist/lcm/index.js +8 -8
  461. package/dist/lcm/recall.js +1 -1
  462. package/dist/lcm/summarizer.js +3 -3
  463. package/dist/lcm/tools.d.ts +1 -0
  464. package/dist/lifecycle.d.ts +1 -0
  465. package/dist/live-connectors-runner.d.ts +1 -0
  466. package/dist/live-connectors-runner.js +6 -6
  467. package/dist/local-llm.d.ts +1 -0
  468. package/dist/local-llm.js +2 -2
  469. package/dist/maintenance/archive-observations.js +1 -1
  470. package/dist/maintenance/memory-governance.d.ts +3 -1
  471. package/dist/maintenance/memory-governance.js +10 -8
  472. package/dist/maintenance/migrate-observations.js +3 -2
  473. package/dist/maintenance/observation-ledger-utils.d.ts +3 -0
  474. package/dist/maintenance/observation-ledger-utils.js +2 -1
  475. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -1
  476. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +11 -8
  477. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -1
  478. package/dist/maintenance/rebuild-memory-projection.js +13 -10
  479. package/dist/maintenance/rebuild-observations.d.ts +1 -0
  480. package/dist/maintenance/rebuild-observations.js +3 -2
  481. package/dist/mcp-memory-inspector-app.d.ts +7 -4
  482. package/dist/mcp-memory-inspector-app.js +1 -1
  483. package/dist/memory-action-policy.d.ts +1 -0
  484. package/dist/memory-cache.d.ts +1 -0
  485. package/dist/memory-cache.js +1 -1
  486. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -0
  487. package/dist/memory-projection-store.d.ts +1 -0
  488. package/dist/memory-projection-store.js +1 -1
  489. package/dist/memory-provenance.d.ts +1 -0
  490. package/dist/memory-worth-outcomes.d.ts +1 -0
  491. package/dist/migrate/from-engram.js +2 -2
  492. package/dist/{migrate-from-identity-anchor-G27MCD6A.js → migrate-from-identity-anchor-EB4XI4Q2.js} +2 -2
  493. package/dist/model-registry.js +1 -1
  494. package/dist/models-json.d.ts +1 -0
  495. package/dist/namespaces/migrate.d.ts +3 -0
  496. package/dist/namespaces/migrate.js +24 -22
  497. package/dist/namespaces/principal.d.ts +1 -0
  498. package/dist/namespaces/principal.js +2 -1
  499. package/dist/namespaces/search.d.ts +1 -0
  500. package/dist/namespaces/search.js +15 -13
  501. package/dist/namespaces/storage.d.ts +4 -2
  502. package/dist/namespaces/storage.js +10 -9
  503. package/dist/native-knowledge.d.ts +1 -0
  504. package/dist/native-knowledge.js +1 -1
  505. package/dist/negative.js +1 -1
  506. package/dist/network/webdav.d.ts +16 -1
  507. package/dist/network/webdav.js +5 -3
  508. package/dist/objective-state-writers.js +4 -4
  509. package/dist/objective-state.js +2 -2
  510. package/dist/offline-sync.js +4 -4
  511. package/dist/operator-toolkit.d.ts +1 -0
  512. package/dist/operator-toolkit.js +35 -32
  513. package/dist/opik-exporter.js +1 -1
  514. package/dist/{orchestrator-DuWl9Hwx.d.ts → orchestrator-Co9nxRLF.d.ts} +4 -74
  515. package/dist/orchestrator.d.ts +5 -3
  516. package/dist/orchestrator.js +99 -96
  517. package/dist/page-versioning.js +1 -1
  518. package/dist/path-X2K5XCHL.js +9 -0
  519. package/dist/patterns-cli.d.ts +1 -0
  520. package/dist/peers/index.d.ts +328 -0
  521. package/dist/{peers-HCVGHMAE.js → peers/index.js} +4 -4
  522. package/dist/pipeline-D18UAKlN.d.ts +32 -0
  523. package/dist/plugin-entry-resolver.d.ts +9 -0
  524. package/dist/plugin-entry-resolver.js +8 -0
  525. package/dist/plugin-entry-resolver.js.map +1 -0
  526. package/dist/plugin-id.d.ts +2 -21
  527. package/dist/plugin-id.js +33 -4
  528. package/dist/plugin-id.js.map +1 -1
  529. package/dist/policy-runtime.d.ts +4 -0
  530. package/dist/policy-runtime.js +1 -1
  531. package/dist/profiling.js +1 -1
  532. package/dist/qmd-recall-cache.d.ts +1 -0
  533. package/dist/qmd.d.ts +1 -0
  534. package/dist/qmd.js +3 -3
  535. package/dist/recall-disclosure-escalation.d.ts +1 -0
  536. package/dist/recall-explain-renderer.d.ts +1 -0
  537. package/dist/recall-explain-renderer.js +3 -3
  538. package/dist/recall-state.d.ts +8 -1
  539. package/dist/recall-state.js +2 -1
  540. package/dist/recall-tag-filter.d.ts +1 -0
  541. package/dist/recall-xray-cli.d.ts +1 -0
  542. package/dist/recall-xray-cli.js +4 -4
  543. package/dist/recall-xray-renderer.d.ts +1 -0
  544. package/dist/recall-xray-renderer.js +3 -3
  545. package/dist/recall-xray.d.ts +1 -0
  546. package/dist/recall-xray.js +2 -2
  547. package/dist/relevance.d.ts +7 -1
  548. package/dist/relevance.js +2 -1
  549. package/dist/replay/normalizers/chatgpt.js +2 -2
  550. package/dist/replay/normalizers/claude.js +2 -2
  551. package/dist/replay/normalizers/openclaw.js +2 -2
  552. package/dist/replay/normalizers/shared.js +1 -1
  553. package/dist/replay/runner.js +1 -1
  554. package/dist/rerank.js +1 -1
  555. package/dist/{resolution-B7FNQSSP.js → resolution-ZY7VM6WS.js} +3 -3
  556. package/dist/resolution-ZY7VM6WS.js.map +1 -0
  557. package/dist/resolve-auth-token.d.ts +1 -0
  558. package/dist/resolve-auth-token.js +1 -1
  559. package/dist/resolve-provider-secret.d.ts +19 -29
  560. package/dist/resolve-provider-secret.js +2 -6
  561. package/dist/resume-bundles.js +10 -9
  562. package/dist/retrieval-agents.d.ts +2 -1
  563. package/dist/retrieval-agents.js +2 -1
  564. package/dist/retrieval-tiers.d.ts +1 -0
  565. package/dist/routing/engine.d.ts +1 -0
  566. package/dist/routing/store.d.ts +3 -0
  567. package/dist/routing/store.js +1 -1
  568. package/dist/runtime/env.js +1 -1
  569. package/dist/schemas.d.ts +191 -17
  570. package/dist/schemas.js +1 -1
  571. package/dist/sdk-compat.js +1 -1
  572. package/dist/search/document-scanner.js +1 -1
  573. package/dist/search/embed-helper.d.ts +7 -2
  574. package/dist/search/embed-helper.js +3 -1
  575. package/dist/search/factory.d.ts +2 -1
  576. package/dist/search/factory.js +13 -12
  577. package/dist/search/index.d.ts +2 -1
  578. package/dist/search/index.js +19 -18
  579. package/dist/search/lancedb-backend.d.ts +7 -6
  580. package/dist/search/lancedb-backend.js +4 -2
  581. package/dist/search/meilisearch-backend.d.ts +7 -6
  582. package/dist/search/meilisearch-backend.js +4 -2
  583. package/dist/search/noop-backend.d.ts +1 -0
  584. package/dist/search/orama-backend.d.ts +9 -7
  585. package/dist/search/orama-backend.js +8 -4
  586. package/dist/search/port.d.ts +1 -0
  587. package/dist/search/remote-backend.d.ts +1 -0
  588. package/dist/secure-store/index.d.ts +16 -3
  589. package/dist/secure-store/index.js +2 -2
  590. package/dist/{semantic-VwGI14Ok.d.ts → semantic-SLAa_prH.d.ts} +5 -3
  591. package/dist/semantic-consolidation.d.ts +1 -0
  592. package/dist/semantic-consolidation.js +14 -13
  593. package/dist/semantic-rule-promotion.js +8 -8
  594. package/dist/semantic-rule-verifier.d.ts +1 -0
  595. package/dist/semantic-rule-verifier.js +8 -8
  596. package/dist/session-integrity.d.ts +1 -0
  597. package/dist/session-integrity.js +1 -1
  598. package/dist/session-observer-bands.d.ts +1 -0
  599. package/dist/session-observer-state.d.ts +6 -1
  600. package/dist/session-observer-state.js +1 -1
  601. package/dist/shared-context/manager.d.ts +5 -0
  602. package/dist/shared-context/manager.js +3 -3
  603. package/dist/signal.d.ts +1 -0
  604. package/dist/signal.js +1 -1
  605. package/dist/source-attribution.js +1 -1
  606. package/dist/state-store-4QZISH3J.js +30 -0
  607. package/dist/state-store-4QZISH3J.js.map +1 -0
  608. package/dist/storage-C4DX8CuG.d.ts +157 -0
  609. package/dist/storage.d.ts +2 -0
  610. package/dist/storage.js +7 -7
  611. package/dist/store-contract.js +1 -1
  612. package/dist/summarizer.d.ts +1 -0
  613. package/dist/summarizer.js +7 -7
  614. package/dist/summary-snapshot.d.ts +1 -0
  615. package/dist/surfaces/dreams.js +48 -17
  616. package/dist/surfaces/dreams.js.map +1 -1
  617. package/dist/temporal-supersession.d.ts +1 -0
  618. package/dist/temporal-supersession.js +1 -1
  619. package/dist/temporal-validity.d.ts +1 -0
  620. package/dist/threading.d.ts +1 -0
  621. package/dist/tier-migration.d.ts +1 -0
  622. package/dist/tier-routing.d.ts +1 -0
  623. package/dist/{tier-stats-62ZVDFKS.js → tier-stats-SKML2OSF.js} +5 -5
  624. package/dist/tmt.js +1 -1
  625. package/dist/tokens.js +2 -2
  626. package/dist/topics.d.ts +1 -0
  627. package/dist/{trace-C5ETWBEF.js → trace-WM7V4CKI.js} +31 -1
  628. package/dist/trace-WM7V4CKI.js.map +1 -0
  629. package/dist/transcript.d.ts +1 -0
  630. package/dist/transcript.js +2 -2
  631. package/dist/transfer/autodetect.js +7 -7
  632. package/dist/transfer/backup.js +5 -5
  633. package/dist/transfer/capsule-export.js +5 -5
  634. package/dist/transfer/capsule-import.d.ts +6 -0
  635. package/dist/transfer/capsule-import.js +4 -4
  636. package/dist/transfer/export-json.js +3 -3
  637. package/dist/transfer/export-md.js +3 -3
  638. package/dist/transfer/export-sqlite.js +3 -3
  639. package/dist/transfer/fs-utils.d.ts +2 -1
  640. package/dist/transfer/fs-utils.js +5 -3
  641. package/dist/transfer/import-json.js +3 -3
  642. package/dist/transfer/import-md.js +3 -3
  643. package/dist/transfer/import-sqlite.js +3 -3
  644. package/dist/trust-zones.js +2 -2
  645. package/dist/types-B1VHaf2w.d.ts +126 -0
  646. package/dist/types-BliCnURB.d.ts +83 -0
  647. package/dist/types.d.ts +35 -0
  648. package/dist/types.js +1 -1
  649. package/dist/utility-learner.js +3 -3
  650. package/dist/utility-runtime.d.ts +1 -0
  651. package/dist/utility-runtime.js +4 -4
  652. package/dist/utility-telemetry.js +2 -2
  653. package/dist/verified-recall.js +9 -9
  654. package/dist/work/board.js +2 -2
  655. package/dist/work/boundary.js +1 -1
  656. package/dist/work/storage.d.ts +5 -0
  657. package/dist/work/storage.js +1 -1
  658. package/dist/work-product-ledger.js +2 -2
  659. package/package.json +74 -3
  660. package/scripts/ensure-better-sqlite3.mjs +8 -7
  661. package/scripts/faiss_index.py +141 -29
  662. package/src/access-cli.test.ts +87 -2
  663. package/src/access-cli.ts +59 -5
  664. package/src/access-http.test.ts +150 -0
  665. package/src/access-http.ts +89 -34
  666. package/src/access-idempotency.ts +136 -3
  667. package/src/access-mcp.test.ts +155 -0
  668. package/src/access-mcp.ts +116 -30
  669. package/src/access-schema.ts +22 -4
  670. package/src/access-service-project-tag.test.ts +37 -0
  671. package/src/access-service.ts +11 -10
  672. package/src/active-recall.test.ts +29 -1
  673. package/src/active-recall.ts +11 -7
  674. package/src/adapters/claude-code.ts +7 -8
  675. package/src/adapters/codex.ts +6 -7
  676. package/src/adapters/hermes.ts +1 -5
  677. package/src/adapters/registry.test.ts +63 -0
  678. package/src/adapters/registry.ts +10 -0
  679. package/src/adapters/replit.ts +5 -7
  680. package/src/adapters/types.ts +24 -1
  681. package/src/behavior-signals.ts +1 -1
  682. package/src/binary-lifecycle/backend.ts +16 -4
  683. package/src/binary-lifecycle/pipeline.test.ts +149 -0
  684. package/src/binary-lifecycle/pipeline.ts +49 -7
  685. package/src/binary-lifecycle/scanner.ts +19 -4
  686. package/src/boxes.ts +119 -32
  687. package/src/buffer-session.test.ts +28 -0
  688. package/src/buffer.ts +10 -14
  689. package/src/bulk-import/types.ts +10 -0
  690. package/src/calibration.test.ts +99 -0
  691. package/src/calibration.ts +57 -13
  692. package/src/causal-consolidation.test.ts +214 -0
  693. package/src/causal-consolidation.ts +131 -14
  694. package/src/causal-retrieval.ts +16 -3
  695. package/src/citations.test.ts +75 -0
  696. package/src/citations.ts +19 -6
  697. package/src/cli.ts +134 -109
  698. package/src/coding/coding-namespace.test.ts +7 -0
  699. package/src/coding/coding-namespace.ts +8 -0
  700. package/src/coding/review-context.test.ts +30 -0
  701. package/src/coding/review-context.ts +79 -9
  702. package/src/coding/wire-coding-context.test.ts +16 -0
  703. package/src/compat/checks.test.ts +33 -0
  704. package/src/compat/checks.ts +64 -4
  705. package/src/compounding/engine.ts +2 -2
  706. package/src/compounding/preference-consolidator.test.ts +47 -0
  707. package/src/compounding/preference-consolidator.ts +8 -8
  708. package/src/compression-optimizer.ts +5 -2
  709. package/src/config.test.ts +34 -2
  710. package/src/config.ts +62 -18
  711. package/src/connectors/codex-materialize-runner.ts +4 -3
  712. package/src/connectors/codex-materialize.ts +149 -34
  713. package/src/connectors/index.test.ts +144 -7
  714. package/src/connectors/index.ts +86 -15
  715. package/src/connectors/live/github.test.ts +47 -0
  716. package/src/connectors/live/github.ts +29 -1
  717. package/src/connectors/live/index.ts +2 -0
  718. package/src/connectors/live/live-connectors.test.ts +359 -73
  719. package/src/connectors/live/notion.test.ts +84 -0
  720. package/src/connectors/live/notion.ts +18 -1
  721. package/src/connectors/live/state-store.ts +419 -38
  722. package/src/connectors/weclone-installer.test.ts +16 -18
  723. package/src/connectors-cli.ts +19 -0
  724. package/src/console/trace.test.ts +28 -0
  725. package/src/console/trace.ts +42 -5
  726. package/src/contradiction/contradiction-judge.test.ts +49 -0
  727. package/src/contradiction/contradiction-judge.ts +15 -5
  728. package/src/contradiction/contradiction-review.ts +31 -7
  729. package/src/contradiction/contradiction-scan.ts +28 -18
  730. package/src/contradiction/contradiction.test.ts +237 -1
  731. package/src/contradiction/resolution.ts +43 -4
  732. package/src/conversation-index/backend.ts +13 -5
  733. package/src/conversation-index/cleanup.ts +25 -4
  734. package/src/conversation-index/faiss-adapter.ts +24 -15
  735. package/src/conversation-index/indexer.test.ts +71 -10
  736. package/src/conversation-index/indexer.ts +22 -3
  737. package/src/cross-namespace-budget.test.ts +59 -0
  738. package/src/cross-namespace-budget.ts +15 -7
  739. package/src/curation/index.ts +18 -17
  740. package/src/dashboard-runtime.test.ts +98 -0
  741. package/src/dashboard-runtime.ts +96 -6
  742. package/src/dedup/index.test.ts +133 -0
  743. package/src/dedup/index.ts +73 -10
  744. package/src/dedup/semantic.test.ts +77 -2
  745. package/src/dedup/semantic.ts +26 -6
  746. package/src/embedding-fallback.ts +47 -15
  747. package/src/enrichment/audit.ts +8 -1
  748. package/src/enrichment/pipeline.ts +21 -13
  749. package/src/enrichment/web-search-provider.ts +1 -6
  750. package/src/entity-retrieval.ts +57 -6
  751. package/src/evals.ts +22 -13
  752. package/src/explicit-capture.test.ts +40 -0
  753. package/src/explicit-capture.ts +14 -2
  754. package/src/extraction.ts +42 -30
  755. package/src/fallback-llm.ts +35 -2
  756. package/src/graph-dashboard-diff.test.ts +57 -0
  757. package/src/graph-dashboard-diff.ts +24 -2
  758. package/src/graph-dashboard-parser.test.ts +31 -0
  759. package/src/graph-dashboard-parser.ts +4 -1
  760. package/src/graph-events.ts +6 -4
  761. package/src/graph.test.ts +69 -0
  762. package/src/graph.ts +7 -4
  763. package/src/importers/base.test.ts +70 -0
  764. package/src/importers/base.ts +56 -7
  765. package/src/index.ts +5 -2
  766. package/src/lcm/archive.ts +65 -16
  767. package/src/lcm/engine.ts +27 -8
  768. package/src/lcm/recall.ts +5 -5
  769. package/src/lcm-engine.test.ts +87 -1
  770. package/src/lcm-recall.test.ts +71 -0
  771. package/src/live-connectors-runner.ts +100 -36
  772. package/src/maintenance/archive-observations.ts +24 -3
  773. package/src/maintenance/atomic-file.ts +85 -0
  774. package/src/maintenance/dreams-ledger.ts +15 -8
  775. package/src/maintenance/memory-governance.test.ts +53 -0
  776. package/src/maintenance/memory-governance.ts +15 -5
  777. package/src/maintenance/observation-ledger-utils.ts +6 -5
  778. package/src/maintenance/purge.test.ts +64 -0
  779. package/src/maintenance/rebuild-memory-lifecycle-ledger.ts +22 -9
  780. package/src/maintenance/rebuild-memory-projection.ts +22 -9
  781. package/src/maintenance/rebuild-observations.ts +7 -3
  782. package/src/mcp-memory-inspector-app.ts +26 -3
  783. package/src/memory-cache.test.ts +19 -0
  784. package/src/memory-cache.ts +1 -0
  785. package/src/memory-extension/codex-publisher.ts +25 -4
  786. package/src/memory-extension-host/host-discovery.test.ts +69 -0
  787. package/src/memory-extension-host/host-discovery.ts +63 -6
  788. package/src/memory-projection-store.ts +114 -62
  789. package/src/message-parts/index.ts +46 -31
  790. package/src/message-parts/message-parts.test.ts +77 -0
  791. package/src/migrate/from-engram.ts +68 -14
  792. package/src/model-registry.test.ts +38 -0
  793. package/src/model-registry.ts +12 -7
  794. package/src/namespaces/identity.test.ts +66 -0
  795. package/src/namespaces/identity.ts +23 -0
  796. package/src/namespaces/migrate.test.ts +62 -0
  797. package/src/namespaces/migrate.ts +82 -14
  798. package/src/namespaces/principal.test.ts +37 -1
  799. package/src/namespaces/principal.ts +18 -7
  800. package/src/namespaces/search.test.ts +76 -6
  801. package/src/namespaces/search.ts +22 -21
  802. package/src/namespaces/storage.ts +93 -11
  803. package/src/native-knowledge.ts +23 -3
  804. package/src/negative.ts +50 -5
  805. package/src/network/webdav.ts +177 -58
  806. package/src/onboarding/index.test.ts +105 -0
  807. package/src/onboarding/index.ts +17 -5
  808. package/src/operator-toolkit.ts +39 -4
  809. package/src/orchestrator.ts +52 -17
  810. package/src/page-versioning.ts +31 -5
  811. package/src/peers/peers.test.ts +70 -0
  812. package/src/peers/storage.ts +32 -3
  813. package/src/plugin-entry-resolver.test.ts +60 -0
  814. package/src/plugin-entry-resolver.ts +48 -0
  815. package/src/plugin-id.test.ts +38 -0
  816. package/src/plugin-id.ts +31 -64
  817. package/src/policy-runtime.test.ts +75 -0
  818. package/src/policy-runtime.ts +32 -3
  819. package/src/procedural/procedure-miner.test.ts +152 -0
  820. package/src/procedural/procedure-miner.ts +124 -19
  821. package/src/profiling.test.ts +23 -0
  822. package/src/profiling.ts +10 -1
  823. package/src/projection/index.test.ts +253 -0
  824. package/src/projection/index.ts +159 -18
  825. package/src/qmd-client.test.ts +45 -0
  826. package/src/qmd.ts +8 -8
  827. package/src/recall-disclosure.test.ts +15 -1
  828. package/src/recall-state.ts +24 -5
  829. package/src/relevance.ts +24 -5
  830. package/src/replay/normalizers/chatgpt.ts +14 -4
  831. package/src/replay/normalizers/claude.ts +8 -3
  832. package/src/replay/normalizers/openclaw.ts +35 -12
  833. package/src/replay/normalizers/replay-normalizers.test.ts +65 -0
  834. package/src/replay/normalizers/shared.ts +4 -1
  835. package/src/replay/runner.ts +1 -1
  836. package/src/rerank.test.ts +41 -1
  837. package/src/rerank.ts +2 -2
  838. package/src/resolve-auth-token.test.ts +29 -0
  839. package/src/resolve-auth-token.ts +12 -7
  840. package/src/resolve-provider-secret.test.ts +78 -22
  841. package/src/resolve-provider-secret.ts +55 -223
  842. package/src/retrieval-agents.ts +51 -14
  843. package/src/review/index.test.ts +75 -1
  844. package/src/review/index.ts +88 -30
  845. package/src/routing/store.ts +36 -6
  846. package/src/runtime/env.test.ts +73 -0
  847. package/src/runtime/env.ts +7 -11
  848. package/src/schemas.ts +16 -1
  849. package/src/search/abort.ts +18 -0
  850. package/src/search/document-scanner.test.ts +80 -0
  851. package/src/search/document-scanner.ts +51 -9
  852. package/src/search/embed-helper.ts +19 -6
  853. package/src/search/factory.ts +9 -5
  854. package/src/search/lancedb-backend.ts +62 -22
  855. package/src/search/meilisearch-backend.ts +35 -12
  856. package/src/search/orama-backend.test.ts +27 -0
  857. package/src/search/orama-backend.ts +65 -15
  858. package/src/secure-store/cli-handlers.ts +70 -6
  859. package/src/secure-store/cli-renderer.ts +13 -7
  860. package/src/secure-store/secure-fs.ts +11 -5
  861. package/src/secure-store/secure-store.test.ts +70 -0
  862. package/src/semantic-consolidation.test.ts +45 -0
  863. package/src/semantic-consolidation.ts +3 -3
  864. package/src/session-integrity.test.ts +98 -0
  865. package/src/session-integrity.ts +51 -1
  866. package/src/session-observer-state.ts +108 -41
  867. package/src/shared-context/manager.ts +93 -15
  868. package/src/signal.test.ts +14 -0
  869. package/src/signal.ts +8 -1
  870. package/src/source-attribution.test.ts +8 -0
  871. package/src/source-attribution.ts +24 -2
  872. package/src/spaces/index.test.ts +93 -0
  873. package/src/spaces/index.ts +75 -9
  874. package/src/storage.ts +14 -1
  875. package/src/store-contract.test.ts +35 -0
  876. package/src/store-contract.ts +39 -5
  877. package/src/summarizer.ts +24 -18
  878. package/src/summary-snapshot.test.ts +77 -0
  879. package/src/surfaces/dreams.test.ts +73 -0
  880. package/src/surfaces/dreams.ts +53 -19
  881. package/src/sync/index.ts +42 -17
  882. package/src/taxonomy/taxonomy-loader.ts +43 -4
  883. package/src/temporal-supersession.test.ts +67 -0
  884. package/src/temporal-supersession.ts +8 -0
  885. package/src/tmt.test.ts +50 -0
  886. package/src/tmt.ts +35 -11
  887. package/src/tokens.test.ts +18 -0
  888. package/src/tokens.ts +7 -0
  889. package/src/training-export/converter.test.ts +55 -2
  890. package/src/training-export/converter.ts +36 -10
  891. package/src/training-export/registry.test.ts +17 -0
  892. package/src/training-export/registry.ts +19 -1
  893. package/src/transcript.ts +2 -2
  894. package/src/transfer/backup.ts +18 -7
  895. package/src/transfer/capsule-crypto.ts +105 -21
  896. package/src/transfer/capsule-encrypt.test.ts +106 -7
  897. package/src/transfer/capsule-export.ts +23 -14
  898. package/src/transfer/capsule-import.ts +11 -2
  899. package/src/transfer/exclusions.ts +7 -0
  900. package/src/transfer/export-sqlite.ts +14 -13
  901. package/src/transfer/fs-utils.ts +52 -1
  902. package/src/transfer/import-json.ts +12 -7
  903. package/src/transfer/import-md.ts +5 -5
  904. package/src/transfer/import-sqlite.ts +4 -5
  905. package/src/trust-zones.ts +1 -1
  906. package/src/types.ts +25 -0
  907. package/src/utility-telemetry.ts +1 -1
  908. package/src/utils/category-dir.test.ts +15 -0
  909. package/src/utils/category-dir.ts +3 -1
  910. package/src/work/boundary.ts +30 -18
  911. package/src/work/storage.ts +116 -38
  912. package/src/work-product-ledger.ts +1 -1
  913. package/dist/chunk-25MQ7IHJ.js.map +0 -1
  914. package/dist/chunk-2IWUMAES.js.map +0 -1
  915. package/dist/chunk-2NMMFZ5T.js.map +0 -1
  916. package/dist/chunk-2PRLKQAH.js.map +0 -1
  917. package/dist/chunk-326G7DJK.js.map +0 -1
  918. package/dist/chunk-3APJ5EVB.js.map +0 -1
  919. package/dist/chunk-3KW65B36.js.map +0 -1
  920. package/dist/chunk-3QKK7QOS.js.map +0 -1
  921. package/dist/chunk-3SLRNYNG.js.map +0 -1
  922. package/dist/chunk-3VAL7ZL2.js.map +0 -1
  923. package/dist/chunk-3Y4P7RXM.js.map +0 -1
  924. package/dist/chunk-3ZLVGM76.js.map +0 -1
  925. package/dist/chunk-43PJZYGL.js.map +0 -1
  926. package/dist/chunk-47VWKCAF.js.map +0 -1
  927. package/dist/chunk-4KGVTPGD.js.map +0 -1
  928. package/dist/chunk-5375UYTQ.js.map +0 -1
  929. package/dist/chunk-56K5QLHX.js.map +0 -1
  930. package/dist/chunk-575RMLWN.js.map +0 -1
  931. package/dist/chunk-5NPGSAVB.js.map +0 -1
  932. package/dist/chunk-5RGLBDQF.js.map +0 -1
  933. package/dist/chunk-65PG43EQ.js.map +0 -1
  934. package/dist/chunk-66DHUKLO.js.map +0 -1
  935. package/dist/chunk-6LVVDPJ4.js.map +0 -1
  936. package/dist/chunk-76FLAAUC.js.map +0 -1
  937. package/dist/chunk-77H5NU3M.js.map +0 -1
  938. package/dist/chunk-7MNMYOFP.js.map +0 -1
  939. package/dist/chunk-7OZ53EXP.js.map +0 -1
  940. package/dist/chunk-7SEAZFFB.js.map +0 -1
  941. package/dist/chunk-A6KTB5R6.js.map +0 -1
  942. package/dist/chunk-AGZQD76C.js.map +0 -1
  943. package/dist/chunk-APO3DCMU.js.map +0 -1
  944. package/dist/chunk-BVF3AGJP.js.map +0 -1
  945. package/dist/chunk-C5BCH4ZS.js.map +0 -1
  946. package/dist/chunk-C7VW7C3F.js.map +0 -1
  947. package/dist/chunk-CULXMQJH.js.map +0 -1
  948. package/dist/chunk-CYFQJMUV.js.map +0 -1
  949. package/dist/chunk-D654IBA6.js +0 -61
  950. package/dist/chunk-D654IBA6.js.map +0 -1
  951. package/dist/chunk-DGXUHMOV.js.map +0 -1
  952. package/dist/chunk-DINWEURR.js.map +0 -1
  953. package/dist/chunk-DK5LDEQM.js.map +0 -1
  954. package/dist/chunk-EABGC2TL.js.map +0 -1
  955. package/dist/chunk-EHRTFRWW.js.map +0 -1
  956. package/dist/chunk-EJI5XIBB.js.map +0 -1
  957. package/dist/chunk-FAAFWE4G.js.map +0 -1
  958. package/dist/chunk-FAJ7FZYM.js +0 -11
  959. package/dist/chunk-FAJ7FZYM.js.map +0 -1
  960. package/dist/chunk-FDU6HUUL.js +0 -147
  961. package/dist/chunk-FDU6HUUL.js.map +0 -1
  962. package/dist/chunk-FIT6DMX6.js.map +0 -1
  963. package/dist/chunk-FJ43PRLT.js.map +0 -1
  964. package/dist/chunk-FLTNHQK6.js +0 -262
  965. package/dist/chunk-FLTNHQK6.js.map +0 -1
  966. package/dist/chunk-GDFS42HT.js.map +0 -1
  967. package/dist/chunk-H3ME6L6D.js.map +0 -1
  968. package/dist/chunk-HXXBL2KD.js.map +0 -1
  969. package/dist/chunk-ICRIXAP2.js.map +0 -1
  970. package/dist/chunk-IQT3XTKW.js.map +0 -1
  971. package/dist/chunk-JR4ZC3G4.js.map +0 -1
  972. package/dist/chunk-K4FLSOR5.js.map +0 -1
  973. package/dist/chunk-KNKUID7G.js.map +0 -1
  974. package/dist/chunk-KOSORCJG.js.map +0 -1
  975. package/dist/chunk-LIRZNNUP.js.map +0 -1
  976. package/dist/chunk-LLQ2LLWF.js.map +0 -1
  977. package/dist/chunk-LPMVBPA3.js +0 -236
  978. package/dist/chunk-LPMVBPA3.js.map +0 -1
  979. package/dist/chunk-LT3NLYSI.js.map +0 -1
  980. package/dist/chunk-LUDTDZLK.js.map +0 -1
  981. package/dist/chunk-MJFNCJXV.js.map +0 -1
  982. package/dist/chunk-MSWG7JI6.js.map +0 -1
  983. package/dist/chunk-MXC3AP5I.js.map +0 -1
  984. package/dist/chunk-MXFBBHJU.js.map +0 -1
  985. package/dist/chunk-MZH6EHNR.js.map +0 -1
  986. package/dist/chunk-N2D6GXBM.js.map +0 -1
  987. package/dist/chunk-NBNN5GOB.js.map +0 -1
  988. package/dist/chunk-NMZY542O.js.map +0 -1
  989. package/dist/chunk-NZL6GGQE.js.map +0 -1
  990. package/dist/chunk-OZHRDTDX.js.map +0 -1
  991. package/dist/chunk-PZIAX57I.js.map +0 -1
  992. package/dist/chunk-Q7P4WJDP.js.map +0 -1
  993. package/dist/chunk-QA2ZAPBU.js.map +0 -1
  994. package/dist/chunk-QDZ2RLEC.js.map +0 -1
  995. package/dist/chunk-QLLBRHAT.js.map +0 -1
  996. package/dist/chunk-QR3C7BKQ.js.map +0 -1
  997. package/dist/chunk-RHY3HH7P.js.map +0 -1
  998. package/dist/chunk-RK2Y4XOM.js.map +0 -1
  999. package/dist/chunk-RR2PKP3I.js +0 -63
  1000. package/dist/chunk-RR2PKP3I.js.map +0 -1
  1001. package/dist/chunk-RRF5UOBJ.js.map +0 -1
  1002. package/dist/chunk-RXDLTSWT.js.map +0 -1
  1003. package/dist/chunk-RYED3SPJ.js +0 -42
  1004. package/dist/chunk-RYED3SPJ.js.map +0 -1
  1005. package/dist/chunk-S7KDBTWT.js.map +0 -1
  1006. package/dist/chunk-TK4UEOSK.js.map +0 -1
  1007. package/dist/chunk-TMM4S4IJ.js.map +0 -1
  1008. package/dist/chunk-TMQLARTH.js.map +0 -1
  1009. package/dist/chunk-TPB3I2AC.js.map +0 -1
  1010. package/dist/chunk-TPMQ3G6Z.js.map +0 -1
  1011. package/dist/chunk-TPU5L5EY.js.map +0 -1
  1012. package/dist/chunk-TZOLIGIG.js.map +0 -1
  1013. package/dist/chunk-U3WSW6PZ.js.map +0 -1
  1014. package/dist/chunk-U4SCL7B7.js.map +0 -1
  1015. package/dist/chunk-U66YHYC7.js +0 -31
  1016. package/dist/chunk-U66YHYC7.js.map +0 -1
  1017. package/dist/chunk-UWVJF25J.js.map +0 -1
  1018. package/dist/chunk-VBJ7V5SK.js.map +0 -1
  1019. package/dist/chunk-W3LR522O.js.map +0 -1
  1020. package/dist/chunk-W4L6CZKA.js.map +0 -1
  1021. package/dist/chunk-W6AQJ2PY.js.map +0 -1
  1022. package/dist/chunk-WELDCG6C.js.map +0 -1
  1023. package/dist/chunk-WNARATI3.js.map +0 -1
  1024. package/dist/chunk-WPGJYVUH.js.map +0 -1
  1025. package/dist/chunk-WW3QQF4H.js.map +0 -1
  1026. package/dist/chunk-XIG5PDM7.js.map +0 -1
  1027. package/dist/chunk-XKECPATV.js.map +0 -1
  1028. package/dist/chunk-XKLD5OK4.js.map +0 -1
  1029. package/dist/chunk-XSZEP4SF.js.map +0 -1
  1030. package/dist/chunk-XVVIG67A.js.map +0 -1
  1031. package/dist/chunk-XYIK4LF6.js.map +0 -1
  1032. package/dist/chunk-YRMVARQP.js.map +0 -1
  1033. package/dist/chunk-YROHKYBY.js.map +0 -1
  1034. package/dist/chunk-YU5KIWYQ.js.map +0 -1
  1035. package/dist/chunk-ZAVUCJ4H.js.map +0 -1
  1036. package/dist/chunk-ZPKBYX2F.js.map +0 -1
  1037. package/dist/chunk-ZTFCYYEZ.js.map +0 -1
  1038. package/dist/chunk-ZYVPLJ4T.js.map +0 -1
  1039. package/dist/path-MR5JPYOP.js +0 -9
  1040. package/dist/state-store-VZU2IA53.js +0 -16
  1041. package/dist/trace-C5ETWBEF.js.map +0 -1
  1042. /package/dist/{capsule-crypto-5CYAGVC5.js.map → bulk-import/index.js.map} +0 -0
  1043. /package/dist/{contradiction-review-ATP4S6IC.js.map → capsule-crypto-7FJQINUR.js.map} +0 -0
  1044. /package/dist/{capsule-merge-4MGKE7C5.js.map → capsule-merge-T2JRE46P.js.map} +0 -0
  1045. /package/dist/{chunk-SAZS2QZB.js.map → chunk-23UORJ4S.js.map} +0 -0
  1046. /package/dist/{chunk-PK7H5L6Y.js.map → chunk-2NM43EWN.js.map} +0 -0
  1047. /package/dist/{chunk-PYXS46O7.js.map → chunk-3BP57I6J.js.map} +0 -0
  1048. /package/dist/{chunk-FBYESMQ2.js.map → chunk-3C5RPJAX.js.map} +0 -0
  1049. /package/dist/{chunk-U7EJOMFC.js.map → chunk-4Q73JBSM.js.map} +0 -0
  1050. /package/dist/{chunk-N53K2EXC.js.map → chunk-6VF75M3X.js.map} +0 -0
  1051. /package/dist/{chunk-6H2TESSP.js.map → chunk-765K3SAT.js.map} +0 -0
  1052. /package/dist/{chunk-EDTHC6UD.js.map → chunk-77NAFXUD.js.map} +0 -0
  1053. /package/dist/{chunk-MGKYQQYF.js.map → chunk-7Q3RCKAQ.js.map} +0 -0
  1054. /package/dist/{chunk-34DQE4KF.js.map → chunk-CO7ZO4TU.js.map} +0 -0
  1055. /package/dist/{chunk-ZKSK55RC.js.map → chunk-ETUPBUHB.js.map} +0 -0
  1056. /package/dist/{chunk-QRNI5JBH.js.map → chunk-EYIEWJNI.js.map} +0 -0
  1057. /package/dist/{chunk-C6QPK5GG.js.map → chunk-FZZ2QTJI.js.map} +0 -0
  1058. /package/dist/{chunk-3JXBXXM2.js.map → chunk-G4IAEX6D.js.map} +0 -0
  1059. /package/dist/{chunk-2WWLHTZY.js.map → chunk-IC4GELZE.js.map} +0 -0
  1060. /package/dist/{chunk-PCUKNJAZ.js.map → chunk-JKV57BTN.js.map} +0 -0
  1061. /package/dist/{chunk-2KI4QFHU.js.map → chunk-LMDRGRJ2.js.map} +0 -0
  1062. /package/dist/{chunk-MY6TPVXW.js.map → chunk-LMPHTYJC.js.map} +0 -0
  1063. /package/dist/{chunk-5HRY2WRF.js.map → chunk-LZ3VEOU5.js.map} +0 -0
  1064. /package/dist/{chunk-NGAVDO7E.js.map → chunk-OADWQ5CR.js.map} +0 -0
  1065. /package/dist/{chunk-DOM4GKSW.js.map → chunk-OZKVVUJB.js.map} +0 -0
  1066. /package/dist/{chunk-MT4HVDUZ.js.map → chunk-PM3QHTFT.js.map} +0 -0
  1067. /package/dist/{chunk-ZK7I7JYV.js.map → chunk-R3PS27B4.js.map} +0 -0
  1068. /package/dist/{chunk-SKE7JYKA.js.map → chunk-SFXKHM7P.js.map} +0 -0
  1069. /package/dist/{chunk-HMDCOMYU.js.map → chunk-SKGV326D.js.map} +0 -0
  1070. /package/dist/{chunk-5UM2VJ6D.js.map → chunk-UEY3VB6W.js.map} +0 -0
  1071. /package/dist/{chunk-GIF42EW3.js.map → chunk-UP6MOYCB.js.map} +0 -0
  1072. /package/dist/{chunk-MRILGULB.js.map → chunk-V2RCP53Q.js.map} +0 -0
  1073. /package/dist/{chunk-FSFEQI74.js.map → chunk-W7L6HXUC.js.map} +0 -0
  1074. /package/dist/{chunk-3IQ2TR4N.js.map → chunk-WLEB7WCG.js.map} +0 -0
  1075. /package/dist/{chunk-GL6I6MEQ.js.map → chunk-WSGF57U2.js.map} +0 -0
  1076. /package/dist/{chunk-JA3AK3PT.js.map → chunk-XNLXAWHX.js.map} +0 -0
  1077. /package/dist/{chunk-SIC6U3GZ.js.map → chunk-YHV3KRKS.js.map} +0 -0
  1078. /package/dist/{chunk-VLXA6PI2.js.map → chunk-YQMZ7IH2.js.map} +0 -0
  1079. /package/dist/{contradiction-scan-5A4IDZV5.js.map → contradiction-review-6V2LXXK6.js.map} +0 -0
  1080. /package/dist/{migrate-from-identity-anchor-G27MCD6A.js.map → contradiction-scan-GIRVC4C7.js.map} +0 -0
  1081. /package/dist/{first-start-migration-4MHQEOSD.js.map → first-start-migration-CKTCTCQI.js.map} +0 -0
  1082. /package/dist/{graph-edge-decay-5DI5GUNL.js.map → graph-edge-decay-MUP5J7CC.js.map} +0 -0
  1083. /package/dist/{path-MR5JPYOP.js.map → importers/index.js.map} +0 -0
  1084. /package/dist/{peers-HCVGHMAE.js.map → migrate-from-identity-anchor-EB4XI4Q2.js.map} +0 -0
  1085. /package/dist/{resolution-B7FNQSSP.js.map → path-X2K5XCHL.js.map} +0 -0
  1086. /package/dist/{state-store-VZU2IA53.js.map → peers/index.js.map} +0 -0
  1087. /package/dist/{tier-stats-62ZVDFKS.js.map → tier-stats-SKML2OSF.js.map} +0 -0
@@ -1,81 +1,87 @@
1
+ import {
2
+ openclawReplayNormalizer
3
+ } from "./chunk-7F7Z6MOS.js";
1
4
  import {
2
5
  chatgptReplayNormalizer
3
- } from "./chunk-ICRIXAP2.js";
6
+ } from "./chunk-MC4FJXPA.js";
4
7
  import {
5
8
  claudeReplayNormalizer
6
- } from "./chunk-EHRTFRWW.js";
9
+ } from "./chunk-LQHDIS7L.js";
7
10
  import {
8
- openclawReplayNormalizer
9
- } from "./chunk-S7KDBTWT.js";
11
+ exportJsonBundle
12
+ } from "./chunk-UP6MOYCB.js";
13
+ import {
14
+ exportSqlite
15
+ } from "./chunk-XSWKORGM.js";
10
16
  import {
11
17
  importMarkdownBundle
12
- } from "./chunk-TK4UEOSK.js";
18
+ } from "./chunk-HDDRVXX4.js";
13
19
  import {
14
20
  importSqlite
15
- } from "./chunk-XKLD5OK4.js";
21
+ } from "./chunk-4RR6ROTB.js";
16
22
  import {
17
23
  detectImportFormat
18
- } from "./chunk-DOM4GKSW.js";
24
+ } from "./chunk-OZKVVUJB.js";
19
25
  import {
20
26
  importJsonBundle
21
- } from "./chunk-W4L6CZKA.js";
27
+ } from "./chunk-2DL3OFLD.js";
22
28
  import {
23
29
  backupMemoryDir
24
- } from "./chunk-7OZ53EXP.js";
25
- import {
26
- exportJsonBundle
27
- } from "./chunk-GIF42EW3.js";
30
+ } from "./chunk-2NLLXCJG.js";
28
31
  import {
29
32
  exportMarkdownBundle
30
- } from "./chunk-6H2TESSP.js";
31
- import {
32
- exportSqlite
33
- } from "./chunk-66DHUKLO.js";
33
+ } from "./chunk-765K3SAT.js";
34
34
  import {
35
35
  TailscaleHelper
36
36
  } from "./chunk-TKWGAOLV.js";
37
37
  import {
38
38
  WebDavServer
39
- } from "./chunk-FIT6DMX6.js";
39
+ } from "./chunk-UWY7GIVS.js";
40
40
  import {
41
41
  buildReplayNormalizerRegistry,
42
42
  clampBatchSize,
43
43
  runReplay
44
- } from "./chunk-TPMQ3G6Z.js";
44
+ } from "./chunk-HOJZMQ4J.js";
45
+ import {
46
+ migrateObservations
47
+ } from "./chunk-2NM43EWN.js";
45
48
  import {
46
49
  rebuildMemoryLifecycleLedger
47
- } from "./chunk-BVF3AGJP.js";
50
+ } from "./chunk-LJBOVCQG.js";
48
51
  import {
49
52
  rebuildMemoryProjection,
50
53
  repairMemoryProjection,
51
54
  verifyMemoryProjection
52
- } from "./chunk-2IWUMAES.js";
55
+ } from "./chunk-E62SBGQ3.js";
53
56
  import {
54
57
  rebuildObservations
55
- } from "./chunk-PZIAX57I.js";
58
+ } from "./chunk-XR6DNK4U.js";
56
59
  import {
57
60
  archiveObservations
58
- } from "./chunk-65PG43EQ.js";
61
+ } from "./chunk-S7WU3Y3D.js";
59
62
  import {
60
- migrateObservations
61
- } from "./chunk-PK7H5L6Y.js";
63
+ getBulkImportSource,
64
+ listBulkImportSources,
65
+ registerBulkImportSource,
66
+ runBulkImportPipeline
67
+ } from "./chunk-H2NCNXMS.js";
62
68
  import {
63
69
  runCompatChecks
64
- } from "./chunk-TMM4S4IJ.js";
70
+ } from "./chunk-YR6GIWWY.js";
65
71
  import {
66
72
  promoteSemanticRuleFromMemory
67
- } from "./chunk-MRILGULB.js";
68
- import {
69
- resolveAgentAccessAuthToken
70
- } from "./chunk-MXC3AP5I.js";
73
+ } from "./chunk-V2RCP53Q.js";
71
74
  import {
72
75
  buildResumeBundleFromState,
73
76
  getResumeBundleStatus,
74
77
  recordResumeBundle
75
- } from "./chunk-ZK7I7JYV.js";
78
+ } from "./chunk-R3PS27B4.js";
79
+ import {
80
+ resolveAgentAccessAuthToken
81
+ } from "./chunk-TGQ2NTWH.js";
76
82
  import {
77
83
  parseXrayCliOptions
78
- } from "./chunk-MT4HVDUZ.js";
84
+ } from "./chunk-PM3QHTFT.js";
79
85
  import {
80
86
  collectPatternMemories,
81
87
  explainPatternMemory,
@@ -92,70 +98,76 @@ import {
92
98
  runOperatorInventory,
93
99
  runOperatorRepair,
94
100
  runOperatorSetup
95
- } from "./chunk-W6AQJ2PY.js";
101
+ } from "./chunk-L7S47WZT.js";
96
102
  import {
97
103
  listNamespaces,
98
104
  runNamespaceMigration,
99
105
  verifyNamespaces
100
- } from "./chunk-77H5NU3M.js";
106
+ } from "./chunk-EDBEWFJO.js";
101
107
  import {
102
108
  GraphDashboardServer
103
- } from "./chunk-ZPKBYX2F.js";
109
+ } from "./chunk-YNDLCWXS.js";
110
+ import {
111
+ RoutingRulesStore
112
+ } from "./chunk-HPWVAEET.js";
104
113
  import {
105
114
  isReplaySource,
106
115
  normalizeReplaySessionKey
107
116
  } from "./chunk-2PRQG7PV.js";
108
- import {
109
- RoutingRulesStore
110
- } from "./chunk-LUDTDZLK.js";
111
117
  import {
112
118
  searchVerifiedEpisodes
113
- } from "./chunk-JA3AK3PT.js";
119
+ } from "./chunk-XNLXAWHX.js";
114
120
  import {
115
121
  getUtilityLearningStatus,
116
122
  learnUtilityPromotionWeights
117
- } from "./chunk-PYXS46O7.js";
123
+ } from "./chunk-3BP57I6J.js";
118
124
  import {
119
125
  getUtilityTelemetryStatus,
120
126
  recordUtilityTelemetryEvent
121
- } from "./chunk-3QKK7QOS.js";
127
+ } from "./chunk-TERNBNJB.js";
122
128
  import {
123
129
  ThreadingManager
124
130
  } from "./chunk-W4RVMTHR.js";
125
131
  import {
126
132
  searchVerifiedSemanticRules
127
- } from "./chunk-SAZS2QZB.js";
133
+ } from "./chunk-23UORJ4S.js";
128
134
  import {
129
135
  getWorkProductLedgerStatus,
130
136
  recordWorkProductLedgerEntry,
131
137
  searchWorkProductLedgerEntries
132
- } from "./chunk-CULXMQJH.js";
138
+ } from "./chunk-XPXEJRUB.js";
133
139
  import {
134
140
  readRuntimePolicySnapshot,
135
141
  sanitizeRuntimePolicyValues
136
- } from "./chunk-EABGC2TL.js";
142
+ } from "./chunk-A2Z6UCWT.js";
137
143
  import {
138
144
  analyzeSessionIntegrity,
139
145
  applySessionRepair,
140
146
  planSessionRepair
141
- } from "./chunk-YRMVARQP.js";
147
+ } from "./chunk-KFY3SGN7.js";
142
148
  import {
149
+ GITHUB_CONNECTOR_ID,
150
+ GMAIL_CONNECTOR_ID,
143
151
  GOOGLE_DRIVE_CONNECTOR_ID,
144
152
  NOTION_CONNECTOR_ID,
153
+ createGitHubConnector,
154
+ createGmailConnector,
145
155
  createGoogleDriveConnector,
146
156
  createNotionConnector,
157
+ validateGitHubConfig,
158
+ validateGmailConfig,
147
159
  validateGoogleDriveConfig,
148
160
  validateNotionConfig
149
- } from "./chunk-HXXBL2KD.js";
161
+ } from "./chunk-BECQDWBA.js";
150
162
  import {
151
163
  listConnectorStates
152
- } from "./chunk-LPMVBPA3.js";
164
+ } from "./chunk-CWWMTTQE.js";
153
165
  import {
154
166
  rescoreMemoryImportance
155
167
  } from "./chunk-JXS5PDQ7.js";
156
168
  import {
157
169
  searchHarmonicRetrieval
158
- } from "./chunk-HMDCOMYU.js";
170
+ } from "./chunk-SKGV326D.js";
159
171
  import {
160
172
  createEvalBaselineSnapshot,
161
173
  getEvalHarnessStatus,
@@ -164,24 +176,25 @@ import {
164
176
  runEvalBenchmarkCiGate,
165
177
  runEvalStoredBaselineCiGate,
166
178
  validateEvalBenchmarkPack
167
- } from "./chunk-D46YSIYX.js";
179
+ } from "./chunk-G3Z3QEF5.js";
168
180
  import {
169
181
  getCueAnchorStoreStatus
170
- } from "./chunk-C6QPK5GG.js";
182
+ } from "./chunk-FZZ2QTJI.js";
171
183
  import {
172
184
  applyCommitmentLedgerLifecycle,
173
185
  getCommitmentLedgerStatus,
174
186
  recordCommitmentLedgerEntry,
175
187
  transitionCommitmentLedgerEntryState
176
- } from "./chunk-2KI4QFHU.js";
188
+ } from "./chunk-LMDRGRJ2.js";
177
189
  import {
190
+ buildConnectorRowsFromDefinitions,
178
191
  parseConnectorsListOptions,
179
192
  parseConnectorsRunName,
180
193
  parseConnectorsStatusOptions,
181
194
  renderConnectorsList,
182
195
  renderConnectorsRunResult,
183
196
  runConnectorPollOnce
184
- } from "./chunk-OZHRDTDX.js";
197
+ } from "./chunk-OKTXM5H4.js";
185
198
  import {
186
199
  resolveNamespaceChildRoot
187
200
  } from "./chunk-3UXOZBHV.js";
@@ -190,64 +203,61 @@ import {
190
203
  } from "./chunk-4WMCPJWX.js";
191
204
  import {
192
205
  parseConfig
193
- } from "./chunk-MZH6EHNR.js";
206
+ } from "./chunk-7H6CFEBJ.js";
194
207
  import {
195
208
  getAbstractionNodeStoreStatus
196
- } from "./chunk-NGAVDO7E.js";
209
+ } from "./chunk-OADWQ5CR.js";
197
210
  import {
198
211
  EngramAccessHttpServer
199
- } from "./chunk-YU5KIWYQ.js";
212
+ } from "./chunk-FER4WARO.js";
200
213
  import {
201
214
  EngramMcpServer
202
- } from "./chunk-3ZLVGM76.js";
215
+ } from "./chunk-JYIKKAK3.js";
203
216
  import {
204
217
  EngramAccessService
205
- } from "./chunk-ZAVUCJ4H.js";
218
+ } from "./chunk-3Q4H3OBR.js";
206
219
  import {
207
220
  WorkStorage
208
- } from "./chunk-WELDCG6C.js";
221
+ } from "./chunk-L227SKTB.js";
209
222
  import {
210
223
  parseRecallExplainFormat,
211
224
  renderRecallExplain,
212
225
  renderXray
213
- } from "./chunk-FBYESMQ2.js";
226
+ } from "./chunk-3C5RPJAX.js";
214
227
  import {
215
228
  getTrustZoneStoreStatus,
216
229
  promoteTrustZoneRecord,
217
230
  seedTrustZoneDemoDataset
218
- } from "./chunk-QDZ2RLEC.js";
231
+ } from "./chunk-472U7RDF.js";
219
232
  import {
220
233
  getObjectiveStateStoreStatus
221
- } from "./chunk-5UM2VJ6D.js";
234
+ } from "./chunk-UEY3VB6W.js";
222
235
  import {
223
236
  listMemoryGovernanceRuns,
224
237
  readMemoryGovernanceRunArtifact,
225
238
  restoreMemoryGovernanceRun,
226
239
  runMemoryGovernance
227
- } from "./chunk-76FLAAUC.js";
228
- import {
229
- selectRouteRule,
230
- validateRouteTarget
231
- } from "./chunk-U3PN77QT.js";
240
+ } from "./chunk-2AN2L4NL.js";
232
241
  import {
233
242
  analyzeGraphHealth
234
- } from "./chunk-RK2Y4XOM.js";
243
+ } from "./chunk-4JRRISLU.js";
235
244
  import {
236
245
  RECALL_DISCLOSURE_LEVELS,
237
246
  isRecallDisclosure
238
- } from "./chunk-Q7P4WJDP.js";
239
- import {
240
- expandTildePath
241
- } from "./chunk-QRNI5JBH.js";
247
+ } from "./chunk-M5T4Q2ZU.js";
242
248
  import {
243
249
  getCausalTrajectoryStoreStatus
244
- } from "./chunk-MY6TPVXW.js";
250
+ } from "./chunk-LMPHTYJC.js";
245
251
  import {
246
- resolveHomeDir
247
- } from "./chunk-XIG5PDM7.js";
252
+ selectRouteRule,
253
+ validateRouteTarget
254
+ } from "./chunk-U3PN77QT.js";
248
255
  import {
249
- parseIsoOffsetTimestamp
250
- } from "./chunk-P7FMDTKL.js";
256
+ expandTildePath
257
+ } from "./chunk-EYIEWJNI.js";
258
+ import {
259
+ resolveHomeDir
260
+ } from "./chunk-JUC24CTX.js";
251
261
  import {
252
262
  buildActionConfidenceInputFromOptions,
253
263
  evaluateActionConfidence,
@@ -256,197 +266,12 @@ import {
256
266
 
257
267
  // src/cli.ts
258
268
  import path2 from "path";
259
- import { access, readFile as readFile2, readdir as readdir2, unlink } from "fs/promises";
269
+ import { access, readFile, readdir as readdir2, unlink } from "fs/promises";
260
270
  import { createHash } from "crypto";
261
271
 
262
- // src/bulk-import/types.ts
263
- var VALID_ROLES = /* @__PURE__ */ new Set(["user", "assistant", "other"]);
264
- function isImportRole(value) {
265
- return typeof value === "string" && VALID_ROLES.has(value);
266
- }
267
- function parseIsoTimestamp(value) {
268
- return parseIsoOffsetTimestamp(value);
269
- }
270
- function validateImportTurn(turn, index) {
271
- const issues = [];
272
- if (!turn || typeof turn !== "object") {
273
- issues.push({
274
- code: "turn.invalid",
275
- message: "Import turn must be an object.",
276
- index
277
- });
278
- return issues;
279
- }
280
- if (!isImportRole(turn.role)) {
281
- issues.push({
282
- code: "turn.role.invalid",
283
- message: `Import turn role must be 'user', 'assistant', or 'other', received '${String(turn.role)}'.`,
284
- index
285
- });
286
- }
287
- if (!turn.content || typeof turn.content !== "string" || turn.content.trim().length === 0) {
288
- issues.push({
289
- code: "turn.content.invalid",
290
- message: "Import turn content must be a non-empty string.",
291
- index
292
- });
293
- }
294
- if (!turn.timestamp || typeof turn.timestamp !== "string" || parseIsoTimestamp(turn.timestamp) === null) {
295
- issues.push({
296
- code: "turn.timestamp.invalid",
297
- message: `Import turn timestamp must be a valid ISO timestamp, received '${String(turn.timestamp)}'.`,
298
- index
299
- });
300
- }
301
- return issues;
302
- }
303
-
304
- // src/bulk-import/registry.ts
305
- var adapters = /* @__PURE__ */ new Map();
306
- function registerBulkImportSource(adapter) {
307
- if (!adapter || typeof adapter !== "object") {
308
- throw new Error("bulk-import adapter must be an object");
309
- }
310
- if (!adapter.name || typeof adapter.name !== "string" || adapter.name.trim().length === 0) {
311
- throw new Error("bulk-import adapter name must be a non-empty string");
312
- }
313
- if (typeof adapter.parse !== "function") {
314
- throw new Error(
315
- `bulk-import adapter '${adapter.name}' must have a parse function`
316
- );
317
- }
318
- const key = adapter.name.trim();
319
- if (adapters.has(key)) {
320
- throw new Error(
321
- `bulk-import source adapter '${key}' is already registered`
322
- );
323
- }
324
- const normalized = adapter.name === key ? adapter : { ...adapter, name: key };
325
- adapters.set(key, normalized);
326
- }
327
- function getBulkImportSource(name) {
328
- if (typeof name !== "string") return void 0;
329
- const key = name.trim();
330
- if (key.length === 0) return void 0;
331
- return adapters.get(key);
332
- }
333
- function listBulkImportSources() {
334
- return [...adapters.keys()];
335
- }
336
- function clearBulkImportSources() {
337
- adapters.clear();
338
- }
339
-
340
- // src/bulk-import/pipeline.ts
341
- var DEFAULT_BATCH_SIZE = 20;
342
- var MIN_BATCH_SIZE = 1;
343
- var MAX_BATCH_SIZE = 1e3;
344
- function validateBatchSize(value) {
345
- if (value === void 0) return DEFAULT_BATCH_SIZE;
346
- if (typeof value !== "number" || !Number.isFinite(value)) {
347
- throw new Error(
348
- `batchSize must be a finite number, received ${String(value)}`
349
- );
350
- }
351
- if (!Number.isInteger(value)) {
352
- throw new Error(
353
- `batchSize must be an integer, received ${value}`
354
- );
355
- }
356
- if (value < MIN_BATCH_SIZE || value > MAX_BATCH_SIZE) {
357
- throw new Error(
358
- `batchSize must be between ${MIN_BATCH_SIZE} and ${MAX_BATCH_SIZE}, received ${value}`
359
- );
360
- }
361
- return value;
362
- }
363
- function resolveBulkImportContext(options) {
364
- if (options.dedup !== void 0 && typeof options.dedup !== "boolean") {
365
- throw new Error(
366
- `dedup must be a boolean when provided, received ${String(options.dedup)}`
367
- );
368
- }
369
- if (options.trustLevel !== void 0 && options.trustLevel !== "import") {
370
- throw new Error(
371
- `trustLevel must be 'import' when provided, received ${String(options.trustLevel)}`
372
- );
373
- }
374
- if (options.namespace !== void 0) {
375
- if (typeof options.namespace !== "string" || options.namespace.trim().length === 0) {
376
- throw new Error(
377
- `namespace must be a non-empty string when provided, received ${String(options.namespace)}`
378
- );
379
- }
380
- }
381
- return {
382
- dedup: options.dedup !== false,
383
- trustLevel: options.trustLevel ?? "import",
384
- ...options.namespace !== void 0 ? { namespace: options.namespace } : {}
385
- };
386
- }
387
- function formatBatchTranscript(turns) {
388
- return turns.map((t) => {
389
- const prefix = t.participantName ?? t.participantId ?? t.role;
390
- return `[${t.timestamp}] ${prefix}: ${t.content}`;
391
- }).join("\n");
392
- }
393
- async function runBulkImportPipeline(source, options = {}, processBatch) {
394
- const batchSize = validateBatchSize(options.batchSize);
395
- const dryRun = options.dryRun === true;
396
- const batchContext = resolveBulkImportContext(options);
397
- const result = {
398
- memoriesCreated: 0,
399
- duplicatesSkipped: 0,
400
- entitiesCreated: 0,
401
- turnsProcessed: 0,
402
- batchesProcessed: 0,
403
- errors: []
404
- };
405
- const turns = source.turns;
406
- if (!turns || turns.length === 0) {
407
- return result;
408
- }
409
- const validTurns = [];
410
- for (let i = 0; i < turns.length; i += 1) {
411
- const issues = validateImportTurn(turns[i], i);
412
- if (issues.length > 0) {
413
- const error = {
414
- batchIndex: -1,
415
- message: issues.map((iss) => iss.message).join("; ")
416
- };
417
- result.errors.push(error);
418
- } else {
419
- validTurns.push(turns[i]);
420
- }
421
- }
422
- if (dryRun) {
423
- result.turnsProcessed = validTurns.length;
424
- result.batchesProcessed = validTurns.length > 0 ? Math.ceil(validTurns.length / batchSize) : 0;
425
- return result;
426
- }
427
- let batchIndex = 0;
428
- for (let i = 0; i < validTurns.length; i += batchSize) {
429
- const batch = validTurns.slice(i, i + batchSize);
430
- try {
431
- const batchResult = await processBatch(batch, batchContext);
432
- result.memoriesCreated += batchResult.memoriesCreated;
433
- result.duplicatesSkipped += batchResult.duplicatesSkipped;
434
- if (typeof batchResult.entitiesCreated === "number") {
435
- result.entitiesCreated += batchResult.entitiesCreated;
436
- }
437
- } catch (err) {
438
- const message = err instanceof Error ? err.message : String(err);
439
- result.errors.push({ batchIndex, message });
440
- }
441
- result.turnsProcessed += batch.length;
442
- result.batchesProcessed += 1;
443
- batchIndex += 1;
444
- }
445
- return result;
446
- }
447
-
448
272
  // src/training-export/converter.ts
449
- import { lstat, readdir, readFile, realpath } from "fs/promises";
273
+ import { constants } from "fs";
274
+ import { lstat, open, readdir, realpath } from "fs/promises";
450
275
  import path from "path";
451
276
  function parseFrontmatter(raw) {
452
277
  const match = raw.match(/^---\n([\s\S]*?)\n---\n?([\s\S]*)$/);
@@ -486,6 +311,9 @@ async function safeRealpath(p) {
486
311
  return null;
487
312
  }
488
313
  }
314
+ function isContainedPath(real, containmentRoot) {
315
+ return real === containmentRoot || real.startsWith(containmentRoot + path.sep);
316
+ }
489
317
  async function collectMarkdownFiles(dir, containmentRoot) {
490
318
  const files = [];
491
319
  const walk = async (d) => {
@@ -518,7 +346,7 @@ async function collectMarkdownFiles(dir, containmentRoot) {
518
346
  if (st.nlink > 1) continue;
519
347
  const real = await safeRealpath(full);
520
348
  if (!real) continue;
521
- if (real !== containmentRoot && !real.startsWith(containmentRoot + path.sep)) {
349
+ if (!isContainedPath(real, containmentRoot)) {
522
350
  continue;
523
351
  }
524
352
  files.push(full);
@@ -528,6 +356,21 @@ async function collectMarkdownFiles(dir, containmentRoot) {
528
356
  await walk(dir);
529
357
  return files.sort((a, b) => a.localeCompare(b));
530
358
  }
359
+ async function readContainedMarkdownFile(filePath, containmentRoot) {
360
+ let handle = null;
361
+ try {
362
+ handle = await open(filePath, constants.O_RDONLY | constants.O_NOFOLLOW);
363
+ const st = await handle.stat();
364
+ if (!st.isFile() || st.nlink > 1) return null;
365
+ const real = await safeRealpath(filePath);
366
+ if (!real || !isContainedPath(real, containmentRoot)) return null;
367
+ return await handle.readFile("utf-8");
368
+ } catch {
369
+ return null;
370
+ } finally {
371
+ await handle?.close().catch(() => void 0);
372
+ }
373
+ }
531
374
  function buildInstruction(category, tags) {
532
375
  const tagSuffix = tags.length > 0 ? ` (${tags.join(", ")})` : "";
533
376
  switch (category) {
@@ -561,8 +404,11 @@ function buildInstruction(category, tags) {
561
404
  }
562
405
  function parseIsoDate(isoStr) {
563
406
  if (!isoStr) return null;
564
- const d = new Date(isoStr);
565
- return Number.isFinite(d.getTime()) ? d : null;
407
+ try {
408
+ return parseStrictCliDate(isoStr, "memory created timestamp");
409
+ } catch {
410
+ return null;
411
+ }
566
412
  }
567
413
  async function convertMemoriesToRecords(options) {
568
414
  const { memoryDir } = options;
@@ -581,12 +427,8 @@ async function convertMemoriesToRecords(options) {
581
427
  }
582
428
  const records = [];
583
429
  for (const filePath of allFiles) {
584
- let raw;
585
- try {
586
- raw = await readFile(filePath, "utf-8");
587
- } catch {
588
- continue;
589
- }
430
+ const raw = await readContainedMarkdownFile(filePath, containmentRoot);
431
+ if (raw === null) continue;
590
432
  const parsed = parseFrontmatter(raw);
591
433
  if (!parsed) continue;
592
434
  if (!parsed.content) continue;
@@ -622,29 +464,44 @@ async function convertMemoriesToRecords(options) {
622
464
  }
623
465
 
624
466
  // src/training-export/registry.ts
625
- var adapters2 = /* @__PURE__ */ new Map();
467
+ var adapters = /* @__PURE__ */ new Map();
626
468
  function registerTrainingExportAdapter(adapter) {
627
- if (!adapter || typeof adapter.name !== "string" || adapter.name.trim().length === 0) {
469
+ if (!adapter || typeof adapter !== "object" || Array.isArray(adapter)) {
470
+ throw new Error(
471
+ "registerTrainingExportAdapter: adapter must be an object with name, fileExtension, and formatRecords."
472
+ );
473
+ }
474
+ if (typeof adapter.name !== "string" || adapter.name.trim().length === 0) {
628
475
  throw new Error(
629
476
  "registerTrainingExportAdapter: adapter.name must be a non-empty string. Provide a unique adapter name (e.g. 'weclone', 'axolotl', 'mlx')."
630
477
  );
631
478
  }
479
+ if (typeof adapter.formatRecords !== "function") {
480
+ throw new Error(
481
+ "registerTrainingExportAdapter: adapter.formatRecords must be a function."
482
+ );
483
+ }
484
+ if (typeof adapter.fileExtension !== "string" || !/^\.[A-Za-z0-9][A-Za-z0-9._-]*$/.test(adapter.fileExtension.trim())) {
485
+ throw new Error(
486
+ "registerTrainingExportAdapter: adapter.fileExtension must be a non-empty extension like '.jsonl'."
487
+ );
488
+ }
632
489
  const key = adapter.name.trim();
633
- if (adapters2.has(key)) {
490
+ if (adapters.has(key)) {
634
491
  throw new Error(
635
492
  `registerTrainingExportAdapter: adapter "${key}" is already registered. Currently registered adapters: [${listTrainingExportAdapters().join(", ")}].`
636
493
  );
637
494
  }
638
- adapters2.set(key, adapter);
495
+ adapters.set(key, adapter);
639
496
  }
640
497
  function getTrainingExportAdapter(name) {
641
- return adapters2.get(name.trim());
498
+ return adapters.get(name.trim());
642
499
  }
643
500
  function listTrainingExportAdapters() {
644
- return [...adapters2.keys()];
501
+ return [...adapters.keys()];
645
502
  }
646
503
  function clearTrainingExportAdapters() {
647
- adapters2.clear();
504
+ adapters.clear();
648
505
  }
649
506
 
650
507
  // src/cli.ts
@@ -724,6 +581,16 @@ var activeDashboardServer = null;
724
581
  var dashboardOperationChain = Promise.resolve();
725
582
  var activeAccessHttpServer = null;
726
583
  var accessHttpOperationChain = Promise.resolve();
584
+ function parseDashboardPort(value, fallback = 4319) {
585
+ if (value === void 0 || value === null || String(value).trim().length === 0) {
586
+ return fallback;
587
+ }
588
+ const port = Number(String(value).trim());
589
+ if (!Number.isInteger(port) || port < 0 || port > 65535) {
590
+ throw new Error("dashboard port must be an integer from 0 to 65535");
591
+ }
592
+ return port;
593
+ }
727
594
  async function withWebDavLock(operation) {
728
595
  const run = webDavOperationChain.then(operation, operation);
729
596
  webDavOperationChain = run.then(
@@ -1865,6 +1732,7 @@ async function runWebDavStopCliCommand() {
1865
1732
  }
1866
1733
  async function runDashboardStartCliCommand(options) {
1867
1734
  return withDashboardLock(async () => {
1735
+ const port = parseDashboardPort(options.port, 4319);
1868
1736
  if (activeDashboardServer) {
1869
1737
  const status = activeDashboardServer.status();
1870
1738
  if (status.running) return status;
@@ -1872,10 +1740,11 @@ async function runDashboardStartCliCommand(options) {
1872
1740
  const createServer = options.createServer ?? ((opts) => new GraphDashboardServer({
1873
1741
  memoryDir: opts.memoryDir,
1874
1742
  host: opts.host,
1875
- port: opts.port,
1876
- publicDir: opts.publicDir
1743
+ port,
1744
+ publicDir: opts.publicDir,
1745
+ authToken: opts.authToken
1877
1746
  }));
1878
- const server = createServer(options);
1747
+ const server = createServer({ ...options, port });
1879
1748
  activeDashboardServer = server;
1880
1749
  try {
1881
1750
  return await server.start();
@@ -2150,7 +2019,7 @@ async function withTimeout(promise, timeoutMs, timeoutMessage) {
2150
2019
  }
2151
2020
  async function runReplayCliCommand(orchestrator, options) {
2152
2021
  const extractionIdleTimeoutMs = Number.isFinite(options.extractionIdleTimeoutMs) ? Math.max(1e3, Math.floor(options.extractionIdleTimeoutMs)) : 15 * 6e4;
2153
- const inputRaw = await readFile2(options.inputPath, "utf-8");
2022
+ const inputRaw = await readFile(options.inputPath, "utf-8");
2154
2023
  const registry = buildReplayNormalizerRegistry([
2155
2024
  openclawReplayNormalizer,
2156
2025
  claudeReplayNormalizer,
@@ -2242,7 +2111,7 @@ async function runBulkImportCliCommand(opts) {
2242
2111
  "Bulk import persistence is not wired: no ingestBatch callback was provided by the host CLI. Use --dry-run to validate without persisting, or invoke via `openclaw engram bulk-import` which supplies the orchestrator-backed ingestion path."
2243
2112
  );
2244
2113
  }
2245
- const inputRaw = await readFile2(opts.file, "utf-8");
2114
+ const inputRaw = await readFile(opts.file, "utf-8");
2246
2115
  let inputParsed;
2247
2116
  try {
2248
2117
  inputParsed = JSON.parse(inputRaw);
@@ -2306,7 +2175,7 @@ async function runBulkImportCliCommand(opts) {
2306
2175
  async function getPluginVersion() {
2307
2176
  try {
2308
2177
  const pkgPath = new URL("../package.json", import.meta.url);
2309
- const raw = await readFile2(pkgPath, "utf-8");
2178
+ const raw = await readFile(pkgPath, "utf-8");
2310
2179
  const parsed = JSON.parse(raw);
2311
2180
  return parsed.version ?? "unknown";
2312
2181
  } catch {
@@ -2377,7 +2246,7 @@ async function readAllMemoryFiles(memoryDir) {
2377
2246
  const out = [];
2378
2247
  await walkMemoryMarkdownFiles(memoryDir, async (fullPath) => {
2379
2248
  try {
2380
- const raw = await readFile2(fullPath, "utf-8");
2249
+ const raw = await readFile(fullPath, "utf-8");
2381
2250
  const parsed = raw.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);
2382
2251
  if (!parsed) return;
2383
2252
  const fmRaw = parsed[1];
@@ -2692,7 +2561,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
2692
2561
  );
2693
2562
  tierCmd.command("list").description("Summarize tier distribution across all memories").option("--json", "Emit machine-readable JSON only").action(async (...args) => {
2694
2563
  const options = args[0] ?? {};
2695
- const { summarizeTiers, formatTierSummaryText } = await import("./tier-stats-62ZVDFKS.js");
2564
+ const { summarizeTiers, formatTierSummaryText } = await import("./tier-stats-SKML2OSF.js");
2696
2565
  const summary = await summarizeTiers(orchestrator.storage);
2697
2566
  if (reportHasMachineReadableOutput(options)) {
2698
2567
  console.log(JSON.stringify(summary, null, 2));
@@ -2703,7 +2572,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
2703
2572
  tierCmd.command("explain").description("Explain the tier-transition decision for a single memory").argument("<id>", "Memory id to explain").option("--json", "Emit machine-readable JSON only").action(async (...args) => {
2704
2573
  const idArg = typeof args[0] === "string" ? args[0] : "";
2705
2574
  const options = args[1] ?? {};
2706
- const { explainTierForMemory, formatTierExplainText } = await import("./tier-stats-62ZVDFKS.js");
2575
+ const { explainTierForMemory, formatTierExplainText } = await import("./tier-stats-SKML2OSF.js");
2707
2576
  try {
2708
2577
  const explain = await explainTierForMemory(
2709
2578
  orchestrator.storage,
@@ -3149,8 +3018,8 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3149
3018
  console.log("OK");
3150
3019
  });
3151
3020
  capsuleCmd.command("import").description(
3152
- "Import a capsule archive into the memory directory. Auto-detects encrypted archives (REMNIC-ENC header); requires --encrypt-key-dir or the memory dir to have an unlocked secure-store."
3153
- ).argument("<archive>", "Path to the .capsule.json.gz (or .enc) archive").option("--mode <mode>", "Conflict mode: skip (default), overwrite, fork", "skip").option("--namespace <ns>", "Target namespace (v3.0+, default: config defaultNamespace)", "").action(async (...args) => {
3021
+ "Import a capsule archive into the memory directory. Auto-detects encrypted archives (REMNIC-ENC header); requires the original passphrase or an unlocked secure-store."
3022
+ ).argument("<archive>", "Path to the .capsule.json.gz (or .enc) archive").option("--mode <mode>", "Conflict mode: skip (default), overwrite, fork", "skip").option("--namespace <ns>", "Target namespace (v3.0+, default: config defaultNamespace)", "").option("--passphrase <passphrase>", "Original secure-store passphrase for encrypted format-v2 archive restore").action(async (...args) => {
3154
3023
  const archivePath = args[0] ? String(args[0]) : "";
3155
3024
  const options = args[1] ?? {};
3156
3025
  if (!archivePath) {
@@ -3165,6 +3034,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3165
3034
  return;
3166
3035
  }
3167
3036
  const namespace = options.namespace ? String(options.namespace) : "";
3037
+ const passphrase = typeof options.passphrase === "string" ? options.passphrase : void 0;
3168
3038
  const memoryDir = await resolveMemoryDirForNamespace(orchestrator, namespace, {
3169
3039
  rejectUnsupportedOverride: true
3170
3040
  });
@@ -3173,7 +3043,8 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3173
3043
  archivePath: expandTildePath(archivePath),
3174
3044
  root: memoryDir,
3175
3045
  mode,
3176
- memoryDir
3046
+ memoryDir,
3047
+ passphrase
3177
3048
  });
3178
3049
  console.log(`Imported: ${result.imported.length} record(s)`);
3179
3050
  if (result.skipped.length > 0) {
@@ -3219,7 +3090,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3219
3090
  }
3220
3091
  }
3221
3092
  if (sourceArchive.endsWith(".enc")) {
3222
- const { isEncryptedCapsuleFile } = await import("./capsule-crypto-5CYAGVC5.js");
3093
+ const { isEncryptedCapsuleFile } = await import("./capsule-crypto-7FJQINUR.js");
3223
3094
  const encDetected = await isEncryptedCapsuleFile(sourceArchive).catch(() => true);
3224
3095
  if (encDetected) {
3225
3096
  throw new Error(
@@ -3227,7 +3098,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3227
3098
  );
3228
3099
  }
3229
3100
  }
3230
- const { mergeCapsule } = await import("./capsule-merge-4MGKE7C5.js");
3101
+ const { mergeCapsule } = await import("./capsule-merge-T2JRE46P.js");
3231
3102
  const result = await mergeCapsule({
3232
3103
  sourceArchive,
3233
3104
  targetRoot: memoryDir,
@@ -3264,7 +3135,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3264
3135
  const dirWasExplicit = typeof opts.dir === "string" && opts.dir.trim() !== "";
3265
3136
  const parsed = parseCapsuleListOptions(opts, defaultDir);
3266
3137
  const capsulesDir = expandTildePath(parsed.capsulesDir);
3267
- const { readdir: readdir3, readFile: readFile3, stat } = await import("fs/promises");
3138
+ const { readdir: readdir3, readFile: readFile2, stat } = await import("fs/promises");
3268
3139
  let dirEntries;
3269
3140
  try {
3270
3141
  dirEntries = await readdir3(capsulesDir);
@@ -3303,7 +3174,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3303
3174
  }
3304
3175
  if (hasManifest) {
3305
3176
  try {
3306
- const raw = await readFile3(manifestPath, "utf-8");
3177
+ const raw = await readFile2(manifestPath, "utf-8");
3307
3178
  const sidecar = JSON.parse(raw);
3308
3179
  createdAt = typeof sidecar.createdAt === "string" ? sidecar.createdAt : null;
3309
3180
  pluginVersion = typeof sidecar.pluginVersion === "string" ? sidecar.pluginVersion : null;
@@ -3369,8 +3240,8 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3369
3240
  const sidecarPath = archivePath.replace(/\.enc$/, "").replace(/\.capsule\.json\.gz$/, ".manifest.json");
3370
3241
  let sidecar = null;
3371
3242
  try {
3372
- const { readFile: readFile3 } = await import("fs/promises");
3373
- const raw = await readFile3(sidecarPath, "utf-8");
3243
+ const { readFile: readFile2 } = await import("fs/promises");
3244
+ const raw = await readFile2(sidecarPath, "utf-8");
3374
3245
  sidecar = JSON.parse(raw);
3375
3246
  } catch {
3376
3247
  }
@@ -3382,7 +3253,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3382
3253
  const { parseExportBundle } = await import("./transfer/types.js");
3383
3254
  let decryptedBuf;
3384
3255
  try {
3385
- const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-5CYAGVC5.js");
3256
+ const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-7FJQINUR.js");
3386
3257
  decryptedBuf = await decryptCapsuleFileInMemory(archivePath, memoryDir);
3387
3258
  } catch (decErr) {
3388
3259
  const msg = decErr instanceof Error ? decErr.message : String(decErr);
@@ -3407,10 +3278,10 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3407
3278
  }
3408
3279
  manifest = parsed2.bundle.manifest;
3409
3280
  } else {
3410
- const { readFile: readFile3 } = await import("fs/promises");
3281
+ const { readFile: readFile2 } = await import("fs/promises");
3411
3282
  const { gunzipSync } = await import("zlib");
3412
3283
  const { parseExportBundle } = await import("./transfer/types.js");
3413
- const buf = await readFile3(archivePath);
3284
+ const buf = await readFile2(archivePath);
3414
3285
  const json = gunzipSync(buf).toString("utf-8");
3415
3286
  const parsed2 = parseExportBundle(JSON.parse(json));
3416
3287
  if (parsed2.capsuleVersion !== 2) {
@@ -3898,29 +3769,56 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3898
3769
  console.log(renderPatternExplain(detail, parsed.format));
3899
3770
  });
3900
3771
  {
3901
- async function buildConnectorRows() {
3902
- const states = await listConnectorStates(
3903
- orchestrator.config.memoryDir
3904
- );
3905
- const stateMap = new Map(states.map((s) => [s.id, s]));
3906
- const builtIn = [
3772
+ let builtInConnectorDefinitions2 = function() {
3773
+ const cfg = orchestrator.config.connectors;
3774
+ return [
3907
3775
  {
3908
3776
  id: GOOGLE_DRIVE_CONNECTOR_ID,
3909
3777
  displayName: "Google Drive",
3910
- enabled: orchestrator.config.connectors.googleDrive.enabled
3778
+ enabled: cfg.googleDrive.enabled,
3779
+ rawConfig: cfg.googleDrive,
3780
+ enabledConfigPath: "connectors.googleDrive.enabled",
3781
+ createConnector: () => createGoogleDriveConnector(),
3782
+ validateConfig: (raw) => validateGoogleDriveConfig(raw)
3911
3783
  },
3912
3784
  {
3913
3785
  id: NOTION_CONNECTOR_ID,
3914
3786
  displayName: "Notion",
3915
- enabled: orchestrator.config.connectors.notion.enabled
3787
+ enabled: cfg.notion.enabled,
3788
+ rawConfig: cfg.notion,
3789
+ enabledConfigPath: "connectors.notion.enabled",
3790
+ createConnector: () => createNotionConnector(),
3791
+ validateConfig: (raw) => validateNotionConfig(raw)
3792
+ },
3793
+ {
3794
+ id: GMAIL_CONNECTOR_ID,
3795
+ displayName: "Gmail",
3796
+ enabled: cfg.gmail.enabled,
3797
+ rawConfig: cfg.gmail,
3798
+ enabledConfigPath: "connectors.gmail.enabled",
3799
+ createConnector: () => createGmailConnector(),
3800
+ validateConfig: (raw) => validateGmailConfig(raw)
3801
+ },
3802
+ {
3803
+ id: GITHUB_CONNECTOR_ID,
3804
+ displayName: "GitHub",
3805
+ enabled: cfg.github.enabled,
3806
+ rawConfig: cfg.github,
3807
+ enabledConfigPath: "connectors.github.enabled",
3808
+ createConnector: () => createGitHubConnector(),
3809
+ validateConfig: (raw) => validateGitHubConfig(raw)
3916
3810
  }
3917
3811
  ];
3918
- return builtIn.map((c) => ({
3919
- id: c.id,
3920
- displayName: c.displayName,
3921
- enabled: c.enabled,
3922
- state: stateMap.get(c.id) ?? null
3923
- }));
3812
+ };
3813
+ var builtInConnectorDefinitions = builtInConnectorDefinitions2;
3814
+ async function buildConnectorRows() {
3815
+ const states = await listConnectorStates(
3816
+ orchestrator.config.memoryDir
3817
+ );
3818
+ return buildConnectorRowsFromDefinitions(
3819
+ builtInConnectorDefinitions2(),
3820
+ states
3821
+ );
3924
3822
  }
3925
3823
  const connectorsCmd = cmd.command("connectors").description(
3926
3824
  "Manage live connectors (Google Drive, Notion, \u2026). Subcommands: list, status, run. See docs/live-connectors.md."
@@ -3997,8 +3895,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
3997
3895
  process.exitCode = 2;
3998
3896
  return;
3999
3897
  }
4000
- const cfg = orchestrator.config.connectors;
4001
- const { readConnectorState, writeConnectorState } = await import("./state-store-VZU2IA53.js");
3898
+ const { readConnectorState, withConnectorStateLock, writeConnectorState } = await import("./state-store-4QZISH3J.js");
4002
3899
  const sharedIngestFn = async (docs) => {
4003
3900
  const fetchedAt = (/* @__PURE__ */ new Date()).toISOString();
4004
3901
  const turns = docs.map((doc) => ({
@@ -4030,10 +3927,13 @@ ${doc.content}` : doc.content,
4030
3927
  );
4031
3928
  };
4032
3929
  let runResult;
4033
- if (name === GOOGLE_DRIVE_CONNECTOR_ID) {
4034
- if (!cfg.googleDrive.enabled) {
3930
+ const connectorDefinition = builtInConnectorDefinitions2().find(
3931
+ (definition) => definition.id === name
3932
+ );
3933
+ if (connectorDefinition) {
3934
+ if (!connectorDefinition.enabled) {
4035
3935
  process.stderr.write(
4036
- `connectors run: connector "${name}" is disabled. Set connectors.googleDrive.enabled=true in config.
3936
+ `connectors run: connector "${name}" is disabled. Set ${connectorDefinition.enabledConfigPath}=true in config.
4037
3937
  `
4038
3938
  );
4039
3939
  process.exitCode = 1;
@@ -4041,45 +3941,9 @@ ${doc.content}` : doc.content,
4041
3941
  }
4042
3942
  let validatedCfg;
4043
3943
  try {
4044
- validatedCfg = validateGoogleDriveConfig(cfg.googleDrive);
4045
- } catch (err) {
4046
- process.stderr.write(
4047
- `connectors run: invalid config for "${name}": ${err instanceof Error ? err.message : String(err)}
4048
- `
4049
- );
4050
- process.exitCode = 1;
4051
- return;
4052
- }
4053
- const connector = createGoogleDriveConnector();
4054
- const state = await readConnectorState(
4055
- orchestrator.config.memoryDir,
4056
- name
4057
- );
4058
- runResult = await runConnectorPollOnce({
4059
- connectorId: name,
4060
- priorState: state,
4061
- syncFn: (cursor) => connector.syncIncremental({
4062
- cursor,
4063
- // GoogleDriveConnectorConfig is narrower than ConnectorConfig
4064
- // (no index signature) but is structurally compatible at
4065
- // runtime. Double-cast via unknown to satisfy the interface.
4066
- config: validatedCfg
4067
- }),
4068
- ingestFn: sharedIngestFn,
4069
- writeCursorFn: makeWriteCursorFn(name)
4070
- });
4071
- } else if (name === NOTION_CONNECTOR_ID) {
4072
- if (!cfg.notion.enabled) {
4073
- process.stderr.write(
4074
- `connectors run: connector "${name}" is disabled. Set connectors.notion.enabled=true in config.
4075
- `
3944
+ validatedCfg = connectorDefinition.validateConfig(
3945
+ connectorDefinition.rawConfig
4076
3946
  );
4077
- process.exitCode = 1;
4078
- return;
4079
- }
4080
- let validatedCfg;
4081
- try {
4082
- validatedCfg = validateNotionConfig(cfg.notion);
4083
3947
  } catch (err) {
4084
3948
  process.stderr.write(
4085
3949
  `connectors run: invalid config for "${name}": ${err instanceof Error ? err.message : String(err)}
@@ -4088,27 +3952,27 @@ ${doc.content}` : doc.content,
4088
3952
  process.exitCode = 1;
4089
3953
  return;
4090
3954
  }
4091
- const connector = createNotionConnector();
4092
- const state = await readConnectorState(
4093
- orchestrator.config.memoryDir,
4094
- name
4095
- );
4096
- runResult = await runConnectorPollOnce({
4097
- connectorId: name,
4098
- priorState: state,
4099
- syncFn: (cursor) => connector.syncIncremental({
4100
- cursor,
4101
- // NotionConnectorConfig is narrower than ConnectorConfig (no
4102
- // index signature) but is structurally compatible at runtime.
4103
- // Double-cast via unknown to satisfy the interface boundary.
4104
- config: validatedCfg
4105
- }),
4106
- ingestFn: sharedIngestFn,
4107
- writeCursorFn: makeWriteCursorFn(name)
3955
+ const connector = connectorDefinition.createConnector();
3956
+ runResult = await withConnectorStateLock(orchestrator.config.memoryDir, name, async () => {
3957
+ const state = await readConnectorState(
3958
+ orchestrator.config.memoryDir,
3959
+ name
3960
+ );
3961
+ return runConnectorPollOnce({
3962
+ connectorId: name,
3963
+ priorState: state,
3964
+ syncFn: (cursor) => connector.syncIncremental({
3965
+ cursor,
3966
+ config: validatedCfg
3967
+ }),
3968
+ ingestFn: sharedIngestFn,
3969
+ writeCursorFn: makeWriteCursorFn(name)
3970
+ });
4108
3971
  });
4109
3972
  } else {
3973
+ const known = builtInConnectorDefinitions2().map((definition) => definition.id).join(", ");
4110
3974
  process.stderr.write(
4111
- `connectors run: unknown connector "${name}". Known connectors: ${GOOGLE_DRIVE_CONNECTOR_ID}, ${NOTION_CONNECTOR_ID}.
3975
+ `connectors run: unknown connector "${name}". Known connectors: ${known}.
4112
3976
  `
4113
3977
  );
4114
3978
  process.exitCode = 1;
@@ -4810,14 +4674,14 @@ ${doc.content}` : doc.content,
4810
4674
  console.log("OK");
4811
4675
  });
4812
4676
  const dashboardCmd = cmd.command("dashboard").description("Manage live graph dashboard service");
4813
- dashboardCmd.command("start").description("Start dashboard server (localhost by default)").option("--host <host>", "Bind host", "127.0.0.1").option("--port <n>", "Bind port", "4319").option("--public-dir <path>", "Override static dashboard assets path").action(async (...args) => {
4677
+ dashboardCmd.command("start").description("Start dashboard server (localhost by default)").option("--host <host>", "Bind host", "127.0.0.1").option("--port <n>", "Bind port", "4319").option("--public-dir <path>", "Override static dashboard assets path").option("--token <token>", "Bearer token required for non-loopback dashboard API access").action(async (...args) => {
4814
4678
  const options = args[0] ?? {};
4815
- const portRaw = parseInt(String(options.port ?? "4319"), 10);
4816
4679
  const status = await runDashboardStartCliCommand({
4817
4680
  memoryDir: orchestrator.config.memoryDir,
4818
4681
  host: typeof options.host === "string" ? options.host : "127.0.0.1",
4819
- port: Number.isFinite(portRaw) ? portRaw : 4319,
4820
- publicDir: typeof options.publicDir === "string" ? options.publicDir : void 0
4682
+ port: parseDashboardPort(options.port, 4319),
4683
+ publicDir: typeof options.publicDir === "string" ? options.publicDir : void 0,
4684
+ authToken: typeof options.token === "string" ? options.token : void 0
4821
4685
  });
4822
4686
  console.log(JSON.stringify(status, null, 2));
4823
4687
  console.log("OK");
@@ -5972,7 +5836,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
5972
5836
  process.exit(1);
5973
5837
  }
5974
5838
  const limit = parseInt(options.limit ?? "50", 10);
5975
- const { listPairs } = await import("./contradiction-review-ATP4S6IC.js");
5839
+ const { listPairs } = await import("./contradiction-review-6V2LXXK6.js");
5976
5840
  const result = listPairs(orchestrator.config.memoryDir, {
5977
5841
  filter,
5978
5842
  namespace: options.namespace,
@@ -5999,7 +5863,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
5999
5863
  console.error("pairId is required");
6000
5864
  process.exit(1);
6001
5865
  }
6002
- const { readPair } = await import("./contradiction-review-ATP4S6IC.js");
5866
+ const { readPair } = await import("./contradiction-review-6V2LXXK6.js");
6003
5867
  const pair = readPair(orchestrator.config.memoryDir, pairId);
6004
5868
  if (!pair) {
6005
5869
  console.error(`Pair ${pairId} not found.`);
@@ -6019,7 +5883,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6019
5883
  console.error("--verb is required. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context");
6020
5884
  process.exit(1);
6021
5885
  }
6022
- const { isValidResolutionVerb, executeResolution } = await import("./resolution-B7FNQSSP.js");
5886
+ const { isValidResolutionVerb, executeResolution } = await import("./resolution-ZY7VM6WS.js");
6023
5887
  if (!isValidResolutionVerb(verb)) {
6024
5888
  console.error(`Invalid verb: ${verb}. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context`);
6025
5889
  process.exit(1);
@@ -6045,7 +5909,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6045
5909
  });
6046
5910
  reviewCmd.command("scan").description("Run an on-demand contradiction scan").option("--namespace <ns>", "Namespace to scan").action(async (...args) => {
6047
5911
  const options = args[0] ?? {};
6048
- const { runContradictionScan } = await import("./contradiction-scan-5A4IDZV5.js");
5912
+ const { runContradictionScan } = await import("./contradiction-scan-GIRVC4C7.js");
6049
5913
  console.log("Running contradiction scan...");
6050
5914
  const result = await runContradictionScan({
6051
5915
  storage: orchestrator.storage,
@@ -6085,7 +5949,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6085
5949
  console.error(`Invalid --format '${fmt}'. Must be one of: text, json, markdown`);
6086
5950
  process.exit(1);
6087
5951
  }
6088
- const { normalizeDreamsStatusWindowHours } = await import("./dreams-ledger-LR2NBAZE.js");
5952
+ const { normalizeDreamsStatusWindowHours } = await import("./dreams-ledger-3WSCI5V4.js");
6089
5953
  let windowHours;
6090
5954
  const rawWindowHours = options.windowHours;
6091
5955
  try {
@@ -6198,7 +6062,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6198
6062
  }
6199
6063
  });
6200
6064
  const secureStoreCmd = cmd.command("secure-store").description(
6201
- "At-rest encryption keyring (issue #690). Manage the secure-store header and the in-memory master key used by the running daemon."
6065
+ "At-rest encryption keyring (issue #690). Manage the secure-store header and the process-local in-memory master key."
6202
6066
  );
6203
6067
  secureStoreCmd.command("init").description(
6204
6068
  "Initialize a new secure-store header. Prompts for a passphrase, derives a master key via Argon2id by default, and writes the verifier to <memoryDir>/.secure-store/header.json. Refuses to overwrite an existing header."
@@ -6229,7 +6093,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6229
6093
  console.log(renderInitReport(report));
6230
6094
  });
6231
6095
  secureStoreCmd.command("unlock").description(
6232
- "Unlock the secure-store. Prompts for the passphrase, validates it against the header verifier, and registers the master key in the daemon's in-memory keyring. The key is cleared on `lock`, daemon restart, or process exit."
6096
+ "Unlock the secure-store for this Remnic process. Prompts for the passphrase, validates it against the header verifier, and registers the master key in this process-local keyring. The key is cleared on `lock`, process restart, or process exit."
6233
6097
  ).option("--json", "Emit machine-readable JSON only").action(async (...args) => {
6234
6098
  const options = args[0] ?? {};
6235
6099
  const {
@@ -6252,7 +6116,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6252
6116
  }
6253
6117
  });
6254
6118
  secureStoreCmd.command("lock").description(
6255
- "Lock the secure-store. Clears the master key from the daemon's in-memory keyring. Idempotent \u2014 succeeds even if the store is already locked."
6119
+ "Lock the secure-store in this Remnic process. Clears the master key from the process-local in-memory keyring. Idempotent \u2014 succeeds even if this process is already locked."
6256
6120
  ).option("--json", "Emit machine-readable JSON only").action(async (...args) => {
6257
6121
  const options = args[0] ?? {};
6258
6122
  const { runSecureStoreLock, renderLockReport } = await import("./secure-store/index.js");
@@ -6268,9 +6132,12 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6268
6132
  "Encrypt existing plaintext storage-managed memory files in an initialized, unlocked secure-store. Idempotent; already-encrypted files are skipped."
6269
6133
  ).option("--json", "Emit machine-readable JSON only").action(async (...args) => {
6270
6134
  const options = args[0] ?? {};
6271
- const { runSecureStoreMigrate, renderMigrateReport } = await import("./secure-store/index.js");
6135
+ const { runSecureStoreMigrate, renderMigrateReport, createPassphraseReader } = await import("./secure-store/index.js");
6272
6136
  const memoryDir = expandTildePath(orchestrator.config.memoryDir);
6273
- const report = await runSecureStoreMigrate({ memoryDir });
6137
+ const report = await runSecureStoreMigrate({
6138
+ memoryDir,
6139
+ readPassphrase: createPassphraseReader()
6140
+ });
6274
6141
  if (options.json === true) {
6275
6142
  console.log(JSON.stringify(report, null, 2));
6276
6143
  } else {
@@ -6281,9 +6148,12 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6281
6148
  }
6282
6149
  });
6283
6150
  async function runSecureStoreDisableCommand(options) {
6284
- const { runSecureStoreDisable, renderDisableReport } = await import("./secure-store/index.js");
6151
+ const { runSecureStoreDisable, renderDisableReport, createPassphraseReader } = await import("./secure-store/index.js");
6285
6152
  const memoryDir = expandTildePath(orchestrator.config.memoryDir);
6286
- const report = await runSecureStoreDisable({ memoryDir });
6153
+ const report = await runSecureStoreDisable({
6154
+ memoryDir,
6155
+ readPassphrase: createPassphraseReader()
6156
+ });
6287
6157
  if (options.json === true) {
6288
6158
  console.log(JSON.stringify(report, null, 2));
6289
6159
  } else {
@@ -6304,7 +6174,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6304
6174
  await runSecureStoreDisableCommand(options);
6305
6175
  });
6306
6176
  secureStoreCmd.command("status").description(
6307
- "Report secure-store status: whether a header exists, whether the daemon currently holds the key, KDF parameters, and last-unlock timestamp."
6177
+ "Report secure-store status: whether a header exists, whether this Remnic process currently holds the key, KDF parameters, and last-unlock timestamp."
6308
6178
  ).option("--json", "Emit machine-readable JSON only").action(async (...args) => {
6309
6179
  const options = args[0] ?? {};
6310
6180
  const { runSecureStoreStatus, renderStatusReport } = await import("./secure-store/index.js");
@@ -6319,7 +6189,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6319
6189
  const peerCmd = cmd.command("peer").description("Manage the peer registry (issue #679).");
6320
6190
  peerCmd.command("list").description("List all registered peers").option("--json", "Emit machine-readable JSON only").action(async (...args) => {
6321
6191
  const options = args[0] ?? {};
6322
- const { listPeers } = await import("./peers-HCVGHMAE.js");
6192
+ const { listPeers } = await import("./peers/index.js");
6323
6193
  const peers = await listPeers(orchestrator.config.memoryDir);
6324
6194
  if (options.json === true) {
6325
6195
  console.log(JSON.stringify({ peers }, null, 2));
@@ -6343,7 +6213,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
6343
6213
  console.error("peer id is required");
6344
6214
  process.exit(1);
6345
6215
  }
6346
- const peersShow = await import("./peers-HCVGHMAE.js");
6216
+ const peersShow = await import("./peers/index.js");
6347
6217
  const validateIdShow = peersShow.assertValidPeerId;
6348
6218
  try {
6349
6219
  validateIdShow(id);
@@ -6456,7 +6326,7 @@ ${peer.notes.split("\n").map((l) => ` ${l}`).join("\n")}`);
6456
6326
  console.error("peer id is required");
6457
6327
  process.exit(1);
6458
6328
  }
6459
- const peersProfile = await import("./peers-HCVGHMAE.js");
6329
+ const peersProfile = await import("./peers/index.js");
6460
6330
  const validateIdProfile = peersProfile.assertValidPeerId;
6461
6331
  try {
6462
6332
  validateIdProfile(id);
@@ -6491,7 +6361,7 @@ ${peer.notes.split("\n").map((l) => ` ${l}`).join("\n")}`);
6491
6361
  const options = args[0] ?? {};
6492
6362
  const isDryRun = options.dryRun === true;
6493
6363
  const displayName = typeof options.displayName === "string" && options.displayName.length > 0 ? options.displayName : void 0;
6494
- const { migrateFromIdentityAnchor } = await import("./migrate-from-identity-anchor-G27MCD6A.js");
6364
+ const { migrateFromIdentityAnchor } = await import("./migrate-from-identity-anchor-EB4XI4Q2.js");
6495
6365
  let result;
6496
6366
  try {
6497
6367
  result = await migrateFromIdentityAnchor({
@@ -6565,8 +6435,8 @@ Legacy identity-anchor files are untouched. Verify the migration result`);
6565
6435
  return;
6566
6436
  }
6567
6437
  if (typeof options.trace === "string" && options.trace.length > 0) {
6568
- const { replayTrace, parseSpeedFlag } = await import("./trace-C5ETWBEF.js");
6569
- const { expandTildePath: expandTildePath2 } = await import("./path-MR5JPYOP.js");
6438
+ const { replayTrace, parseSpeedFlag } = await import("./trace-WM7V4CKI.js");
6439
+ const { expandTildePath: expandTildePath2 } = await import("./path-X2K5XCHL.js");
6570
6440
  const tracePath = expandTildePath2(options.trace);
6571
6441
  let speed;
6572
6442
  try {
@@ -6596,8 +6466,8 @@ Legacy identity-anchor files are untouched. Verify the migration result`);
6596
6466
  const { runConsoleTui } = await import("./tui-RI7P6PBS.js");
6597
6467
  let recorder = null;
6598
6468
  if (typeof options.recordTrace === "string" && options.recordTrace.length > 0) {
6599
- const { openTraceRecorder } = await import("./trace-C5ETWBEF.js");
6600
- const { expandTildePath: expandTildePath2 } = await import("./path-MR5JPYOP.js");
6469
+ const { openTraceRecorder } = await import("./trace-WM7V4CKI.js");
6470
+ const { expandTildePath: expandTildePath2 } = await import("./path-X2K5XCHL.js");
6601
6471
  recorder = await openTraceRecorder(
6602
6472
  expandTildePath2(options.recordTrace)
6603
6473
  );
@@ -6610,7 +6480,7 @@ Legacy identity-anchor files are untouched. Verify the migration result`);
6610
6480
  } finally {
6611
6481
  if (recorder) {
6612
6482
  const CLOSE_TIMEOUT_MS = 2e3;
6613
- const { flushWithTimeout } = await import("./trace-C5ETWBEF.js");
6483
+ const { flushWithTimeout } = await import("./trace-WM7V4CKI.js");
6614
6484
  const flushResult = await flushWithTimeout(
6615
6485
  (signal) => recorder.close(signal),
6616
6486
  CLOSE_TIMEOUT_MS
@@ -6650,15 +6520,6 @@ function parseDuration(duration) {
6650
6520
  }
6651
6521
 
6652
6522
  export {
6653
- isImportRole,
6654
- parseIsoTimestamp,
6655
- validateImportTurn,
6656
- registerBulkImportSource,
6657
- getBulkImportSource,
6658
- listBulkImportSources,
6659
- clearBulkImportSources,
6660
- formatBatchTranscript,
6661
- runBulkImportPipeline,
6662
6523
  convertMemoriesToRecords,
6663
6524
  registerTrainingExportAdapter,
6664
6525
  getTrainingExportAdapter,
@@ -6755,4 +6616,4 @@ export {
6755
6616
  resolveMemoryDirForNamespace,
6756
6617
  registerCli
6757
6618
  };
6758
- //# sourceMappingURL=chunk-TPU5L5EY.js.map
6619
+ //# sourceMappingURL=chunk-D6WE5MTW.js.map