@remnic/core 1.1.12 → 1.1.13

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 (1324) hide show
  1. package/dist/access-cli.d.ts +2 -1
  2. package/dist/access-cli.js +263 -82
  3. package/dist/access-cli.js.map +1 -1
  4. package/dist/access-http.d.ts +26 -60
  5. package/dist/access-http.js +43 -29
  6. package/dist/access-mcp.d.ts +24 -6
  7. package/dist/access-mcp.js +35 -28
  8. package/dist/access-schema.d.ts +9 -6
  9. package/dist/access-schema.js +7 -5
  10. package/dist/access-service-DcCDmNYC.d.ts +1542 -0
  11. package/dist/access-service.d.ts +25 -7
  12. package/dist/access-service.js +33 -26
  13. package/dist/active-memory-bridge.js +2 -2
  14. package/dist/active-recall.js +11 -3
  15. package/dist/active-recall.js.map +1 -1
  16. package/dist/adapters/claude-code.d.ts +24 -0
  17. package/dist/adapters/claude-code.js +9 -0
  18. package/dist/adapters/codex.d.ts +25 -0
  19. package/dist/adapters/codex.js +9 -0
  20. package/dist/adapters/hermes.d.ts +35 -0
  21. package/dist/adapters/hermes.js +9 -0
  22. package/dist/adapters/index.d.ts +6 -0
  23. package/dist/adapters/index.js +26 -0
  24. package/dist/adapters/registry.d.ts +20 -0
  25. package/dist/adapters/registry.js +13 -0
  26. package/dist/adapters/replit.d.ts +28 -0
  27. package/dist/adapters/replit.js +9 -0
  28. package/dist/adapters/types.d.ts +43 -0
  29. package/dist/adapters/types.js +8 -0
  30. package/dist/bootstrap.d.ts +20 -5
  31. package/dist/boxes.d.ts +7 -0
  32. package/dist/boxes.js +1 -1
  33. package/dist/briefing.d.ts +5 -3
  34. package/dist/briefing.js +9 -6
  35. package/dist/buffer-surprise-report.js +1 -1
  36. package/dist/buffer.d.ts +18 -4
  37. package/dist/buffer.js +1 -1
  38. package/dist/calibration.js +4 -4
  39. package/dist/capsule-cli.d.ts +4 -4
  40. package/dist/capsule-cli.js +1 -1
  41. package/dist/capsule-crypto-5CYAGVC5.js +18 -0
  42. package/dist/capsule-merge-4MGKE7C5.js +189 -0
  43. package/dist/causal-behavior.d.ts +8 -28
  44. package/dist/causal-behavior.js +6 -3
  45. package/dist/causal-behavior.js.map +1 -1
  46. package/dist/causal-chain.js +3 -2
  47. package/dist/causal-consolidation.d.ts +1 -1
  48. package/dist/causal-consolidation.js +24 -13
  49. package/dist/causal-consolidation.js.map +1 -1
  50. package/dist/causal-retrieval.js +3 -3
  51. package/dist/causal-trajectory.js +1 -1
  52. package/dist/chunk-25MQ7IHJ.js +427 -0
  53. package/dist/chunk-25MQ7IHJ.js.map +1 -0
  54. package/dist/chunk-2F2W355T.js +256 -0
  55. package/dist/chunk-2F2W355T.js.map +1 -0
  56. package/dist/chunk-2KI4QFHU.js +228 -0
  57. package/dist/chunk-2KI4QFHU.js.map +1 -0
  58. package/dist/chunk-2PRQG7PV.js +86 -0
  59. package/dist/chunk-2PRQG7PV.js.map +1 -0
  60. package/dist/chunk-2QR3XXIC.js +2272 -0
  61. package/dist/chunk-2QR3XXIC.js.map +1 -0
  62. package/dist/chunk-2WWLHTZY.js +121 -0
  63. package/dist/chunk-326G7DJK.js +2185 -0
  64. package/dist/chunk-326G7DJK.js.map +1 -0
  65. package/dist/chunk-34DQE4KF.js +174 -0
  66. package/dist/chunk-34DQE4KF.js.map +1 -0
  67. package/dist/chunk-3APJ5EVB.js +601 -0
  68. package/dist/chunk-3APJ5EVB.js.map +1 -0
  69. package/dist/chunk-3HPAPHUK.js +51 -0
  70. package/dist/chunk-3HPAPHUK.js.map +1 -0
  71. package/dist/chunk-3JXBXXM2.js +69 -0
  72. package/dist/chunk-3JXBXXM2.js.map +1 -0
  73. package/dist/chunk-3KW65B36.js +681 -0
  74. package/dist/chunk-3KW65B36.js.map +1 -0
  75. package/dist/chunk-3UXOZBHV.js +20 -0
  76. package/dist/chunk-3UXOZBHV.js.map +1 -0
  77. package/dist/chunk-3VAL7ZL2.js +266 -0
  78. package/dist/chunk-3VAL7ZL2.js.map +1 -0
  79. package/dist/chunk-3Y4P7RXM.js +31 -0
  80. package/dist/chunk-3Y4P7RXM.js.map +1 -0
  81. package/dist/chunk-47VWKCAF.js +273 -0
  82. package/dist/chunk-47VWKCAF.js.map +1 -0
  83. package/dist/chunk-4CRG46BG.js +271 -0
  84. package/dist/chunk-5375UYTQ.js +914 -0
  85. package/dist/chunk-5375UYTQ.js.map +1 -0
  86. package/dist/chunk-56K5QLHX.js +506 -0
  87. package/dist/chunk-56K5QLHX.js.map +1 -0
  88. package/dist/chunk-5RGLBDQF.js +596 -0
  89. package/dist/chunk-5RGLBDQF.js.map +1 -0
  90. package/dist/chunk-5UZXUTVO.js +9 -0
  91. package/dist/chunk-5UZXUTVO.js.map +1 -0
  92. package/dist/chunk-65PG43EQ.js +105 -0
  93. package/dist/chunk-65PG43EQ.js.map +1 -0
  94. package/dist/chunk-66DHUKLO.js +57 -0
  95. package/dist/chunk-66DHUKLO.js.map +1 -0
  96. package/dist/chunk-6FC5EGNV.js +46 -0
  97. package/dist/chunk-6FC5EGNV.js.map +1 -0
  98. package/dist/chunk-6H2TESSP.js +62 -0
  99. package/dist/chunk-6H2TESSP.js.map +1 -0
  100. package/dist/chunk-6LVVDPJ4.js +32 -0
  101. package/dist/chunk-6LVVDPJ4.js.map +1 -0
  102. package/dist/chunk-6RVI47ZR.js +159 -0
  103. package/dist/chunk-6RVI47ZR.js.map +1 -0
  104. package/dist/chunk-7AAT6G4Q.js +5117 -0
  105. package/dist/chunk-7AAT6G4Q.js.map +1 -0
  106. package/dist/chunk-7DTASS5T.js +29 -0
  107. package/dist/chunk-7DTASS5T.js.map +1 -0
  108. package/dist/chunk-7IASACLB.js +596 -0
  109. package/dist/chunk-7MNMYOFP.js +32 -0
  110. package/dist/chunk-7MNMYOFP.js.map +1 -0
  111. package/dist/chunk-7N4KAIGN.js +133 -0
  112. package/dist/chunk-7N4KAIGN.js.map +1 -0
  113. package/dist/chunk-7OZ53EXP.js +101 -0
  114. package/dist/chunk-7OZ53EXP.js.map +1 -0
  115. package/dist/chunk-7XYTQGCC.js +134 -0
  116. package/dist/chunk-7XYTQGCC.js.map +1 -0
  117. package/dist/chunk-A2XUIMJ3.js +341 -0
  118. package/dist/chunk-A2XUIMJ3.js.map +1 -0
  119. package/dist/chunk-AGZQD76C.js +201 -0
  120. package/dist/chunk-AGZQD76C.js.map +1 -0
  121. package/dist/chunk-APO3DCMU.js +361 -0
  122. package/dist/chunk-APO3DCMU.js.map +1 -0
  123. package/dist/chunk-BFBF3XEF.js +283 -0
  124. package/dist/chunk-BFBF3XEF.js.map +1 -0
  125. package/dist/chunk-BJ3KMYTB.js +1974 -0
  126. package/dist/chunk-BJ3KMYTB.js.map +1 -0
  127. package/dist/chunk-CHEL3SKB.js +6758 -0
  128. package/dist/chunk-CHEL3SKB.js.map +1 -0
  129. package/dist/chunk-CQZRLNMV.js +1491 -0
  130. package/dist/chunk-CQZRLNMV.js.map +1 -0
  131. package/dist/chunk-D46YSIYX.js +892 -0
  132. package/dist/chunk-D46YSIYX.js.map +1 -0
  133. package/dist/chunk-DINWEURR.js +648 -0
  134. package/dist/chunk-DINWEURR.js.map +1 -0
  135. package/dist/chunk-DK5LDEQM.js +530 -0
  136. package/dist/chunk-DK5LDEQM.js.map +1 -0
  137. package/dist/chunk-DOM4GKSW.js +34 -0
  138. package/dist/chunk-DOM4GKSW.js.map +1 -0
  139. package/dist/chunk-EDTHC6UD.js +1075 -0
  140. package/dist/chunk-EFJ3MQ4V.js +721 -0
  141. package/dist/chunk-EHRTFRWW.js +89 -0
  142. package/dist/chunk-EHRTFRWW.js.map +1 -0
  143. package/dist/chunk-FAJ7FZYM.js +11 -0
  144. package/dist/chunk-FAJ7FZYM.js.map +1 -0
  145. package/dist/chunk-FBYESMQ2.js +570 -0
  146. package/dist/chunk-FDU6HUUL.js +147 -0
  147. package/dist/chunk-FF4KLI5W.js +99 -0
  148. package/dist/chunk-FF4KLI5W.js.map +1 -0
  149. package/dist/chunk-FIT6DMX6.js +310 -0
  150. package/dist/chunk-FIT6DMX6.js.map +1 -0
  151. package/dist/chunk-FJ43PRLT.js +272 -0
  152. package/dist/chunk-FJ43PRLT.js.map +1 -0
  153. package/dist/chunk-FKFMOY3N.js +32 -0
  154. package/dist/chunk-FKFMOY3N.js.map +1 -0
  155. package/dist/chunk-FLTNHQK6.js +262 -0
  156. package/dist/chunk-FLTNHQK6.js.map +1 -0
  157. package/dist/chunk-GA454ALV.js +12436 -0
  158. package/dist/chunk-GA454ALV.js.map +1 -0
  159. package/dist/chunk-GGKRUQOO.js +228 -0
  160. package/dist/chunk-GIF42EW3.js +63 -0
  161. package/dist/chunk-GIF42EW3.js.map +1 -0
  162. package/dist/chunk-GL6I6MEQ.js +647 -0
  163. package/dist/chunk-H3ME6L6D.js +709 -0
  164. package/dist/chunk-H3ME6L6D.js.map +1 -0
  165. package/dist/chunk-HHLLAQGZ.js +1 -0
  166. package/dist/chunk-HXXBL2KD.js +2040 -0
  167. package/dist/chunk-I5V2VDIW.js +219 -0
  168. package/dist/chunk-I5V2VDIW.js.map +1 -0
  169. package/dist/chunk-I6K5FBRQ.js +35 -0
  170. package/dist/chunk-I6K5FBRQ.js.map +1 -0
  171. package/dist/chunk-ICRIXAP2.js +121 -0
  172. package/dist/chunk-ICRIXAP2.js.map +1 -0
  173. package/dist/chunk-J4EB7DNW.js +11 -0
  174. package/dist/chunk-J4EB7DNW.js.map +1 -0
  175. package/dist/chunk-JLFA7DQG.js +62 -0
  176. package/dist/chunk-JLFA7DQG.js.map +1 -0
  177. package/dist/chunk-KJTKLXTH.js +9 -0
  178. package/dist/chunk-KJTKLXTH.js.map +1 -0
  179. package/dist/chunk-KLAO5DGL.js +917 -0
  180. package/dist/chunk-KLAO5DGL.js.map +1 -0
  181. package/dist/chunk-KNKUID7G.js +183 -0
  182. package/dist/chunk-KOSORCJG.js +624 -0
  183. package/dist/chunk-KOSORCJG.js.map +1 -0
  184. package/dist/chunk-KUJVMMZQ.js +1262 -0
  185. package/dist/chunk-KUJVMMZQ.js.map +1 -0
  186. package/dist/chunk-LCR46JY5.js +123 -0
  187. package/dist/chunk-LCR46JY5.js.map +1 -0
  188. package/dist/chunk-LLQ2LLWF.js +148 -0
  189. package/dist/chunk-LLQ2LLWF.js.map +1 -0
  190. package/dist/chunk-LPMVBPA3.js +236 -0
  191. package/dist/chunk-LT3NLYSI.js +50 -0
  192. package/dist/chunk-LT3NLYSI.js.map +1 -0
  193. package/dist/chunk-LUDTDZLK.js +287 -0
  194. package/dist/chunk-LUDTDZLK.js.map +1 -0
  195. package/dist/chunk-M23FSH32.js +3963 -0
  196. package/dist/chunk-M23FSH32.js.map +1 -0
  197. package/dist/chunk-MC26UJIM.js +118 -0
  198. package/dist/chunk-ME6ESPZU.js +119 -0
  199. package/dist/chunk-ME6ESPZU.js.map +1 -0
  200. package/dist/chunk-MGKYQQYF.js +272 -0
  201. package/dist/chunk-MJFNCJXV.js +66 -0
  202. package/dist/chunk-MJFNCJXV.js.map +1 -0
  203. package/dist/chunk-MSWG7JI6.js +237 -0
  204. package/dist/chunk-MSWG7JI6.js.map +1 -0
  205. package/dist/chunk-MT25YHYH.js +141 -0
  206. package/dist/chunk-MT25YHYH.js.map +1 -0
  207. package/dist/chunk-MT4HVDUZ.js +53 -0
  208. package/dist/chunk-MY6TPVXW.js +219 -0
  209. package/dist/chunk-N2D6GXBM.js +267 -0
  210. package/dist/chunk-N2D6GXBM.js.map +1 -0
  211. package/dist/chunk-NJ3MJQZX.js +46 -0
  212. package/dist/chunk-NJ3MJQZX.js.map +1 -0
  213. package/dist/chunk-NMZY542O.js +335 -0
  214. package/dist/chunk-NMZY542O.js.map +1 -0
  215. package/dist/chunk-NNVTUXEB.js +23 -0
  216. package/dist/chunk-NZL6GGQE.js +375 -0
  217. package/dist/chunk-NZL6GGQE.js.map +1 -0
  218. package/dist/chunk-P4NEIHUT.js +108 -0
  219. package/dist/chunk-P7FMDTKL.js +103 -0
  220. package/dist/chunk-P7FMDTKL.js.map +1 -0
  221. package/dist/chunk-PHK3HARR.js +32 -0
  222. package/dist/chunk-PHK3HARR.js.map +1 -0
  223. package/dist/chunk-PIRJPV5T.js +98 -0
  224. package/dist/chunk-PIRJPV5T.js.map +1 -0
  225. package/dist/chunk-PK7H5L6Y.js +159 -0
  226. package/dist/chunk-PK7H5L6Y.js.map +1 -0
  227. package/dist/chunk-PR5FBTFU.js +233 -0
  228. package/dist/chunk-PR5FBTFU.js.map +1 -0
  229. package/dist/chunk-PU63GXWS.js +174 -0
  230. package/dist/chunk-PU63GXWS.js.map +1 -0
  231. package/dist/chunk-PZIAX57I.js +124 -0
  232. package/dist/chunk-PZIAX57I.js.map +1 -0
  233. package/dist/chunk-Q7P4WJDP.js +26 -0
  234. package/dist/chunk-Q7P4WJDP.js.map +1 -0
  235. package/dist/chunk-QQUAB63I.js +63 -0
  236. package/dist/chunk-QQUAB63I.js.map +1 -0
  237. package/dist/chunk-QRNI5JBH.js +18 -0
  238. package/dist/chunk-RHY3HH7P.js +601 -0
  239. package/dist/chunk-RHY3HH7P.js.map +1 -0
  240. package/dist/chunk-RRF5UOBJ.js +91 -0
  241. package/dist/chunk-RXDLTSWT.js +124 -0
  242. package/dist/chunk-RXDLTSWT.js.map +1 -0
  243. package/dist/chunk-RYED3SPJ.js +42 -0
  244. package/dist/chunk-RYED3SPJ.js.map +1 -0
  245. package/dist/chunk-S7KDBTWT.js +106 -0
  246. package/dist/chunk-S7KDBTWT.js.map +1 -0
  247. package/dist/chunk-SEDEKFYQ.js +1 -0
  248. package/dist/chunk-TECVW3JP.js +36 -0
  249. package/dist/chunk-TECVW3JP.js.map +1 -0
  250. package/dist/chunk-TFO23QT4.js +88 -0
  251. package/dist/chunk-TFO23QT4.js.map +1 -0
  252. package/dist/chunk-TK4UEOSK.js +76 -0
  253. package/dist/chunk-TK4UEOSK.js.map +1 -0
  254. package/dist/chunk-TKWGAOLV.js +122 -0
  255. package/dist/chunk-TKWGAOLV.js.map +1 -0
  256. package/dist/chunk-TMM4S4IJ.js +597 -0
  257. package/dist/chunk-TMM4S4IJ.js.map +1 -0
  258. package/dist/chunk-TMQLARTH.js +188 -0
  259. package/dist/chunk-TMQLARTH.js.map +1 -0
  260. package/dist/chunk-TPDBFYEG.js +130 -0
  261. package/dist/chunk-TPDBFYEG.js.map +1 -0
  262. package/dist/chunk-TPMQ3G6Z.js +145 -0
  263. package/dist/chunk-TPMQ3G6Z.js.map +1 -0
  264. package/dist/chunk-TZOLIGIG.js +61 -0
  265. package/dist/chunk-TZOLIGIG.js.map +1 -0
  266. package/dist/chunk-U3PN77QT.js +113 -0
  267. package/dist/chunk-U3WSW6PZ.js +277 -0
  268. package/dist/chunk-U4SCL7B7.js +640 -0
  269. package/dist/chunk-U4SCL7B7.js.map +1 -0
  270. package/dist/chunk-UWK5OXUJ.js +156 -0
  271. package/dist/chunk-UWK5OXUJ.js.map +1 -0
  272. package/dist/chunk-UWVJF25J.js +74 -0
  273. package/dist/chunk-UXHQAFNA.js +1317 -0
  274. package/dist/chunk-UXHQAFNA.js.map +1 -0
  275. package/dist/chunk-V5OCT34X.js +1 -0
  276. package/dist/chunk-VLXA6PI2.js +304 -0
  277. package/dist/chunk-VLXA6PI2.js.map +1 -0
  278. package/dist/chunk-VNO6ZJ35.js +500 -0
  279. package/dist/chunk-VNO6ZJ35.js.map +1 -0
  280. package/dist/chunk-VW676BEI.js +827 -0
  281. package/dist/chunk-VW676BEI.js.map +1 -0
  282. package/dist/chunk-W3LR522O.js +2296 -0
  283. package/dist/chunk-W4L6CZKA.js +96 -0
  284. package/dist/chunk-W4L6CZKA.js.map +1 -0
  285. package/dist/chunk-W4RVMTHR.js +372 -0
  286. package/dist/chunk-W4RVMTHR.js.map +1 -0
  287. package/dist/chunk-WEHSQBFR.js +188 -0
  288. package/dist/chunk-WEHSQBFR.js.map +1 -0
  289. package/dist/chunk-WELDCG6C.js +380 -0
  290. package/dist/chunk-WELDCG6C.js.map +1 -0
  291. package/dist/chunk-WZYKANL3.js +2800 -0
  292. package/dist/chunk-WZYKANL3.js.map +1 -0
  293. package/dist/chunk-XIG5PDM7.js +48 -0
  294. package/dist/chunk-XJNBEDFE.js +193 -0
  295. package/dist/chunk-XJNBEDFE.js.map +1 -0
  296. package/dist/chunk-XVVIG67A.js +291 -0
  297. package/dist/chunk-XVVIG67A.js.map +1 -0
  298. package/dist/chunk-XVZ7B3HG.js +135 -0
  299. package/dist/chunk-YBPYIAA5.js +73 -0
  300. package/dist/chunk-YBPYIAA5.js.map +1 -0
  301. package/dist/chunk-Z734BLO3.js +21 -0
  302. package/dist/chunk-Z734BLO3.js.map +1 -0
  303. package/dist/chunk-ZKSK55RC.js +269 -0
  304. package/dist/chunk-ZKSK55RC.js.map +1 -0
  305. package/dist/chunk-ZTFCYYEZ.js +69 -0
  306. package/dist/chunk-ZTFCYYEZ.js.map +1 -0
  307. package/dist/chunk-ZY2MNJR6.js +329 -0
  308. package/dist/chunk-ZY2MNJR6.js.map +1 -0
  309. package/dist/cli-D3VpkVwB.d.ts +1136 -0
  310. package/dist/cli.d.ts +39 -10
  311. package/dist/cli.js +108 -49
  312. package/dist/commitment-ledger.js +1 -1
  313. package/dist/compat/checks.d.ts +5 -0
  314. package/dist/compat/checks.js +11 -0
  315. package/dist/compat/checks.js.map +1 -0
  316. package/dist/compat/types.d.ts +30 -0
  317. package/dist/compat/types.js +1 -0
  318. package/dist/compat/types.js.map +1 -0
  319. package/dist/compounding/engine.d.ts +221 -0
  320. package/dist/compounding/engine.js +32 -0
  321. package/dist/compounding/engine.js.map +1 -0
  322. package/dist/compounding/preference-consolidator.d.ts +92 -0
  323. package/dist/compounding/preference-consolidator.js +553 -0
  324. package/dist/compounding/preference-consolidator.js.map +1 -0
  325. package/dist/config.d.ts +4 -2
  326. package/dist/config.js +9 -4
  327. package/dist/conflict-policy-DyJ2wd-h.d.ts +4 -0
  328. package/dist/connectors/codex-materialize-runner.d.ts +64 -0
  329. package/dist/connectors/codex-materialize-runner.js +33 -0
  330. package/dist/connectors/codex-materialize-runner.js.map +1 -0
  331. package/dist/connectors/codex-materialize.d.ts +195 -0
  332. package/dist/connectors/codex-materialize.js +38 -0
  333. package/dist/connectors/codex-materialize.js.map +1 -0
  334. package/dist/connectors/index.d.ts +444 -0
  335. package/dist/connectors/index.js +115 -0
  336. package/dist/connectors/index.js.map +1 -0
  337. package/dist/connectors-cli-CwbyjGR7.d.ts +257 -0
  338. package/dist/connectors-cli.d.ts +1 -1
  339. package/dist/consolidation-provenance-check.d.ts +3 -1
  340. package/dist/consolidation-undo.d.ts +3 -1
  341. package/dist/contradiction/index.d.ts +258 -0
  342. package/dist/contradiction/index.js +43 -0
  343. package/dist/contradiction/index.js.map +1 -0
  344. package/dist/contradiction-review-ATP4S6IC.js +30 -0
  345. package/dist/contradiction-review-ATP4S6IC.js.map +1 -0
  346. package/dist/contradiction-scan-5A4IDZV5.js +13 -0
  347. package/dist/contradiction-scan-5A4IDZV5.js.map +1 -0
  348. package/dist/conversation-index/backend.d.ts +97 -0
  349. package/dist/conversation-index/backend.js +13 -0
  350. package/dist/conversation-index/backend.js.map +1 -0
  351. package/dist/conversation-index/chunker.d.ts +16 -0
  352. package/dist/conversation-index/chunker.js +8 -0
  353. package/dist/conversation-index/chunker.js.map +1 -0
  354. package/dist/conversation-index/cleanup.d.ts +11 -0
  355. package/dist/conversation-index/cleanup.js +9 -0
  356. package/dist/conversation-index/cleanup.js.map +1 -0
  357. package/dist/conversation-index/faiss-adapter.d.ts +6 -0
  358. package/dist/conversation-index/faiss-adapter.js +16 -0
  359. package/dist/conversation-index/faiss-adapter.js.map +1 -0
  360. package/dist/conversation-index/indexer.d.ts +23 -0
  361. package/dist/conversation-index/indexer.js +15 -0
  362. package/dist/conversation-index/indexer.js.map +1 -0
  363. package/dist/conversation-index/search.d.ts +6 -0
  364. package/dist/conversation-index/search.js +11 -0
  365. package/dist/conversation-index/search.js.map +1 -0
  366. package/dist/embedding-fallback.js +2 -2
  367. package/dist/enrichment/index.d.ts +163 -0
  368. package/dist/enrichment/index.js +18 -0
  369. package/dist/enrichment/index.js.map +1 -0
  370. package/dist/entity-retrieval.d.ts +4 -2
  371. package/dist/entity-retrieval.js +8 -5
  372. package/dist/evals.js +1 -1
  373. package/dist/explicit-capture.d.ts +20 -5
  374. package/dist/explicit-capture.js +2 -2
  375. package/dist/extraction-judge-training.js +1 -1
  376. package/dist/extraction.js +8 -8
  377. package/dist/faiss-adapter-CzPghc4C.d.ts +70 -0
  378. package/dist/fallback-llm.d.ts +2 -0
  379. package/dist/fallback-llm.js +4 -4
  380. package/dist/graph-edge-decay-5DI5GUNL.js +207 -0
  381. package/dist/index.d.ts +66 -711
  382. package/dist/index.js +556 -2680
  383. package/dist/index.js.map +1 -1
  384. package/dist/lcm/archive.d.ts +89 -0
  385. package/dist/lcm/archive.js +12 -0
  386. package/dist/lcm/archive.js.map +1 -0
  387. package/dist/lcm/dag.d.ts +48 -0
  388. package/dist/lcm/dag.js +8 -0
  389. package/dist/lcm/dag.js.map +1 -0
  390. package/dist/lcm/engine.d.ts +116 -0
  391. package/dist/lcm/engine.js +20 -0
  392. package/dist/lcm/engine.js.map +1 -0
  393. package/dist/lcm/index.d.ts +12 -0
  394. package/dist/lcm/index.js +44 -0
  395. package/dist/lcm/index.js.map +1 -0
  396. package/dist/lcm/queue.d.ts +62 -0
  397. package/dist/lcm/queue.js +8 -0
  398. package/dist/lcm/queue.js.map +1 -0
  399. package/dist/lcm/recall.d.ts +20 -0
  400. package/dist/lcm/recall.js +8 -0
  401. package/dist/lcm/recall.js.map +1 -0
  402. package/dist/lcm/schema.d.ts +16 -0
  403. package/dist/lcm/schema.js +14 -0
  404. package/dist/lcm/schema.js.map +1 -0
  405. package/dist/lcm/summarizer.d.ts +38 -0
  406. package/dist/lcm/summarizer.js +12 -0
  407. package/dist/lcm/summarizer.js.map +1 -0
  408. package/dist/lcm/tools.d.ts +29 -0
  409. package/dist/lcm/tools.js +8 -0
  410. package/dist/lcm/tools.js.map +1 -0
  411. package/dist/live-connectors-runner.js +5 -5
  412. package/dist/local-llm.js +3 -3
  413. package/dist/maintenance/archive-observations.d.ts +18 -0
  414. package/dist/maintenance/archive-observations.js +8 -0
  415. package/dist/maintenance/archive-observations.js.map +1 -0
  416. package/dist/maintenance/backup-stamp.d.ts +3 -0
  417. package/dist/maintenance/backup-stamp.js +8 -0
  418. package/dist/maintenance/backup-stamp.js.map +1 -0
  419. package/dist/maintenance/memory-governance-cron.d.ts +85 -0
  420. package/dist/maintenance/memory-governance-cron.js +22 -0
  421. package/dist/maintenance/memory-governance-cron.js.map +1 -0
  422. package/dist/maintenance/memory-governance.d.ts +137 -0
  423. package/dist/maintenance/memory-governance.js +40 -0
  424. package/dist/maintenance/memory-governance.js.map +1 -0
  425. package/dist/maintenance/migrate-observations.d.ts +18 -0
  426. package/dist/maintenance/migrate-observations.js +9 -0
  427. package/dist/maintenance/migrate-observations.js.map +1 -0
  428. package/dist/maintenance/observation-ledger-utils.d.ts +10 -0
  429. package/dist/maintenance/observation-ledger-utils.js +10 -0
  430. package/dist/maintenance/observation-ledger-utils.js.map +1 -0
  431. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +15 -0
  432. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +28 -0
  433. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js.map +1 -0
  434. package/dist/maintenance/rebuild-memory-projection.d.ts +77 -0
  435. package/dist/maintenance/rebuild-memory-projection.js +35 -0
  436. package/dist/maintenance/rebuild-memory-projection.js.map +1 -0
  437. package/dist/maintenance/rebuild-observations.d.ts +17 -0
  438. package/dist/maintenance/rebuild-observations.js +9 -0
  439. package/dist/maintenance/rebuild-observations.js.map +1 -0
  440. package/dist/mcp-memory-inspector-app.d.ts +24 -6
  441. package/dist/memory-projection-store.d.ts +108 -3
  442. package/dist/memory-projection-store.js +2 -1
  443. package/dist/memory-worth-outcomes.d.ts +4 -2
  444. package/dist/migrate/from-engram.d.ts +24 -0
  445. package/dist/migrate/from-engram.js +12 -0
  446. package/dist/migrate/from-engram.js.map +1 -0
  447. package/dist/namespaces/migrate.d.ts +50 -0
  448. package/dist/namespaces/migrate.js +50 -0
  449. package/dist/namespaces/migrate.js.map +1 -0
  450. package/dist/namespaces/principal.d.ts +17 -0
  451. package/dist/namespaces/principal.js +16 -0
  452. package/dist/namespaces/principal.js.map +1 -0
  453. package/dist/namespaces/search.d.ts +46 -0
  454. package/dist/namespaces/search.js +28 -0
  455. package/dist/namespaces/search.js.map +1 -0
  456. package/dist/namespaces/storage.d.ts +32 -0
  457. package/dist/namespaces/storage.js +28 -0
  458. package/dist/namespaces/storage.js.map +1 -0
  459. package/dist/network/tailscale.d.ts +41 -0
  460. package/dist/network/tailscale.js +9 -0
  461. package/dist/network/tailscale.js.map +1 -0
  462. package/dist/network/webdav.d.ts +39 -0
  463. package/dist/network/webdav.js +10 -0
  464. package/dist/network/webdav.js.map +1 -0
  465. package/dist/objective-state-writers.js +2 -2
  466. package/dist/operator-toolkit.d.ts +4 -2
  467. package/dist/operator-toolkit.js +32 -14
  468. package/dist/opik-exporter.js +2 -2
  469. package/dist/opik-exporter.js.map +1 -1
  470. package/dist/orchestrator-DuWl9Hwx.d.ts +1244 -0
  471. package/dist/orchestrator.d.ts +22 -7
  472. package/dist/orchestrator.js +79 -44
  473. package/dist/path-MR5JPYOP.js +9 -0
  474. package/dist/path-MR5JPYOP.js.map +1 -0
  475. package/dist/qmd-recall-cache.d.ts +1 -1
  476. package/dist/qmd.d.ts +102 -3
  477. package/dist/qmd.js +23 -5
  478. package/dist/recall-explain-renderer.js +3 -3
  479. package/dist/recall-xray-cli.js +4 -4
  480. package/dist/recall-xray-renderer.js +3 -3
  481. package/dist/recall-xray.js +2 -2
  482. package/dist/replay/normalizers/chatgpt.d.ts +6 -0
  483. package/dist/replay/normalizers/chatgpt.js +11 -0
  484. package/dist/replay/normalizers/chatgpt.js.map +1 -0
  485. package/dist/replay/normalizers/claude.d.ts +6 -0
  486. package/dist/replay/normalizers/claude.js +11 -0
  487. package/dist/replay/normalizers/claude.js.map +1 -0
  488. package/dist/replay/normalizers/openclaw.d.ts +6 -0
  489. package/dist/replay/normalizers/openclaw.js +11 -0
  490. package/dist/replay/normalizers/openclaw.js.map +1 -0
  491. package/dist/replay/normalizers/shared.d.ts +16 -0
  492. package/dist/replay/normalizers/shared.js +14 -0
  493. package/dist/replay/normalizers/shared.js.map +1 -0
  494. package/dist/replay/runner.d.ts +35 -0
  495. package/dist/replay/runner.js +16 -0
  496. package/dist/replay/runner.js.map +1 -0
  497. package/dist/replay/types.d.ts +57 -0
  498. package/dist/replay/types.js +19 -0
  499. package/dist/replay/types.js.map +1 -0
  500. package/dist/resolution-B7FNQSSP.js +12 -0
  501. package/dist/resolution-B7FNQSSP.js.map +1 -0
  502. package/dist/resolve-provider-secret.js +2 -2
  503. package/dist/resume-bundles.js +8 -6
  504. package/dist/retrieval-agents.d.ts +1 -1
  505. package/dist/routing/engine.d.ts +35 -0
  506. package/dist/routing/engine.js +16 -0
  507. package/dist/routing/engine.js.map +1 -0
  508. package/dist/routing/store.d.ts +27 -0
  509. package/dist/routing/store.js +10 -0
  510. package/dist/routing/store.js.map +1 -0
  511. package/dist/runtime/better-sqlite.d.ts +8 -0
  512. package/dist/runtime/better-sqlite.js +10 -0
  513. package/dist/runtime/better-sqlite.js.map +1 -0
  514. package/dist/runtime/child-process.d.ts +32 -0
  515. package/dist/runtime/child-process.js +10 -0
  516. package/dist/runtime/child-process.js.map +1 -0
  517. package/dist/runtime/env.d.ts +5 -0
  518. package/dist/runtime/env.js +12 -0
  519. package/dist/runtime/env.js.map +1 -0
  520. package/dist/schemas.d.ts +22 -22
  521. package/dist/sdk-compat.js +1 -1
  522. package/dist/search/document-scanner.d.ts +22 -0
  523. package/dist/search/document-scanner.js +8 -0
  524. package/dist/search/document-scanner.js.map +1 -0
  525. package/dist/search/embed-helper.d.ts +35 -0
  526. package/dist/search/embed-helper.js +9 -0
  527. package/dist/search/embed-helper.js.map +1 -0
  528. package/dist/search/factory.d.ts +32 -0
  529. package/dist/search/factory.js +29 -0
  530. package/dist/search/factory.js.map +1 -0
  531. package/dist/search/index.d.ts +15 -0
  532. package/dist/search/index.js +50 -0
  533. package/dist/search/index.js.map +1 -0
  534. package/dist/search/lancedb-backend.d.ts +51 -0
  535. package/dist/search/lancedb-backend.js +10 -0
  536. package/dist/search/lancedb-backend.js.map +1 -0
  537. package/dist/search/meilisearch-backend.d.ts +48 -0
  538. package/dist/search/meilisearch-backend.js +10 -0
  539. package/dist/search/meilisearch-backend.js.map +1 -0
  540. package/dist/search/noop-backend.d.ts +26 -0
  541. package/dist/search/noop-backend.js +8 -0
  542. package/dist/search/noop-backend.js.map +1 -0
  543. package/dist/search/orama-backend.d.ts +53 -0
  544. package/dist/search/orama-backend.js +10 -0
  545. package/dist/search/orama-backend.js.map +1 -0
  546. package/dist/search/port.d.ts +61 -0
  547. package/dist/search/port.js +1 -0
  548. package/dist/search/port.js.map +1 -0
  549. package/dist/search/remote-backend.d.ts +39 -0
  550. package/dist/search/remote-backend.js +9 -0
  551. package/dist/search/remote-backend.js.map +1 -0
  552. package/dist/secure-store/index.d.ts +890 -0
  553. package/dist/secure-store/index.js +156 -0
  554. package/dist/secure-store/index.js.map +1 -0
  555. package/dist/semantic-VwGI14Ok.d.ts +69 -0
  556. package/dist/semantic-consolidation-4HkHWgeI.d.ts +180 -0
  557. package/dist/semantic-consolidation.d.ts +2 -2
  558. package/dist/semantic-consolidation.js +13 -6
  559. package/dist/semantic-rule-promotion.js +8 -5
  560. package/dist/semantic-rule-verifier.js +8 -5
  561. package/dist/shared-context/manager.d.ts +131 -0
  562. package/dist/shared-context/manager.js +15 -0
  563. package/dist/shared-context/manager.js.map +1 -0
  564. package/dist/skills-registry.js +13 -1
  565. package/dist/skills-registry.js.map +1 -1
  566. package/dist/state-store-VZU2IA53.js +16 -0
  567. package/dist/state-store-VZU2IA53.js.map +1 -0
  568. package/dist/storage-paths.d.ts +9 -0
  569. package/dist/storage-paths.js +20 -0
  570. package/dist/storage-paths.js.map +1 -0
  571. package/dist/storage.d.ts +3 -1
  572. package/dist/storage.js +7 -4
  573. package/dist/summarizer.d.ts +5 -0
  574. package/dist/summarizer.js +9 -8
  575. package/dist/summary-snapshot.js +2 -1
  576. package/dist/surfaces/dreams.d.ts +16 -0
  577. package/dist/surfaces/dreams.js +282 -0
  578. package/dist/surfaces/dreams.js.map +1 -0
  579. package/dist/surfaces/heartbeat.d.ts +17 -0
  580. package/dist/surfaces/heartbeat.js +265 -0
  581. package/dist/surfaces/heartbeat.js.map +1 -0
  582. package/dist/temporal-supersession.d.ts +3 -1
  583. package/dist/threading.d.ts +5 -0
  584. package/dist/threading.js +2 -1
  585. package/dist/tier-migration.d.ts +4 -2
  586. package/dist/tokens.js +2 -2
  587. package/dist/transcript.d.ts +15 -1
  588. package/dist/transcript.js +2 -1
  589. package/dist/transfer/autodetect.d.ts +4 -0
  590. package/dist/transfer/autodetect.js +15 -0
  591. package/dist/transfer/autodetect.js.map +1 -0
  592. package/dist/transfer/backup.d.ts +21 -0
  593. package/dist/transfer/backup.js +17 -0
  594. package/dist/transfer/backup.js.map +1 -0
  595. package/dist/transfer/capsule-export.d.ts +113 -0
  596. package/dist/transfer/capsule-export.js +19 -0
  597. package/dist/transfer/capsule-export.js.map +1 -0
  598. package/dist/transfer/capsule-import.d.ts +124 -0
  599. package/dist/transfer/capsule-import.js +16 -0
  600. package/dist/transfer/capsule-import.js.map +1 -0
  601. package/dist/transfer/constants.d.ts +13 -0
  602. package/dist/transfer/constants.js +12 -0
  603. package/dist/transfer/constants.js.map +1 -0
  604. package/dist/transfer/export-json.d.ts +11 -0
  605. package/dist/transfer/export-json.js +11 -0
  606. package/dist/transfer/export-json.js.map +1 -0
  607. package/dist/transfer/export-md.d.ts +10 -0
  608. package/dist/transfer/export-md.js +13 -0
  609. package/dist/transfer/export-md.js.map +1 -0
  610. package/dist/transfer/export-sqlite.d.ts +9 -0
  611. package/dist/transfer/export-sqlite.js +12 -0
  612. package/dist/transfer/export-sqlite.js.map +1 -0
  613. package/dist/transfer/fs-utils.d.ts +61 -0
  614. package/dist/transfer/fs-utils.js +40 -0
  615. package/dist/transfer/fs-utils.js.map +1 -0
  616. package/dist/transfer/import-json.d.ts +16 -0
  617. package/dist/transfer/import-json.js +13 -0
  618. package/dist/transfer/import-json.js.map +1 -0
  619. package/dist/transfer/import-md.d.ts +14 -0
  620. package/dist/transfer/import-md.js +11 -0
  621. package/dist/transfer/import-md.js.map +1 -0
  622. package/dist/transfer/import-sqlite.d.ts +14 -0
  623. package/dist/transfer/import-sqlite.js +12 -0
  624. package/dist/transfer/import-sqlite.js.map +1 -0
  625. package/dist/transfer/sqlite-schema.d.ts +4 -0
  626. package/dist/transfer/sqlite-schema.js +10 -0
  627. package/dist/transfer/sqlite-schema.js.map +1 -0
  628. package/dist/transfer/types.d.ts +916 -0
  629. package/dist/transfer/types.js +30 -0
  630. package/dist/transfer/types.js.map +1 -0
  631. package/dist/types.d.ts +28 -1
  632. package/dist/types.js +1 -1
  633. package/dist/verified-recall.js +9 -6
  634. package/dist/work/board.d.ts +43 -0
  635. package/dist/work/board.js +14 -0
  636. package/dist/work/board.js.map +1 -0
  637. package/dist/work/boundary.d.ts +8 -0
  638. package/dist/work/boundary.js +14 -0
  639. package/dist/work/boundary.js.map +1 -0
  640. package/dist/work/storage.d.ts +39 -0
  641. package/dist/work/storage.js +11 -0
  642. package/dist/work/storage.js.map +1 -0
  643. package/dist/work/types.d.ts +75 -0
  644. package/dist/work/types.js +1 -0
  645. package/dist/work/types.js.map +1 -0
  646. package/package.json +2767 -6
  647. package/scripts/faiss_index.py +816 -0
  648. package/scripts/faiss_requirements.txt +3 -0
  649. package/skills/remnic-entities/SKILL.md +51 -0
  650. package/skills/remnic-memory-workflow/SKILL.md +61 -0
  651. package/skills/remnic-recall/SKILL.md +51 -0
  652. package/skills/remnic-remember/SKILL.md +56 -0
  653. package/skills/remnic-search/SKILL.md +51 -0
  654. package/skills/remnic-status/SKILL.md +51 -0
  655. package/src/abort-error.test.ts +49 -0
  656. package/src/abort-error.ts +46 -0
  657. package/src/abstraction-nodes.ts +162 -0
  658. package/src/access-audit.test.ts +178 -0
  659. package/src/access-audit.ts +125 -0
  660. package/src/access-cli.test.ts +439 -0
  661. package/src/access-cli.ts +438 -0
  662. package/src/access-http.test.ts +225 -0
  663. package/src/access-http.ts +1899 -0
  664. package/src/access-idempotency.ts +232 -0
  665. package/src/access-mcp.test.ts +568 -0
  666. package/src/access-mcp.ts +3056 -0
  667. package/src/access-schema-pi.test.ts +60 -0
  668. package/src/access-schema.ts +522 -0
  669. package/src/access-service-namespace.test.ts +123 -0
  670. package/src/access-service.ts +5629 -0
  671. package/src/action-confidence.test.ts +206 -0
  672. package/src/action-confidence.ts +466 -0
  673. package/src/active-memory-bridge.test.ts +285 -0
  674. package/src/active-memory-bridge.ts +217 -0
  675. package/src/active-recall.test.ts +484 -0
  676. package/src/active-recall.ts +459 -0
  677. package/src/adapters/claude-code.ts +56 -0
  678. package/src/adapters/codex.ts +57 -0
  679. package/src/adapters/hermes.ts +64 -0
  680. package/src/adapters/index.ts +6 -0
  681. package/src/adapters/registry.ts +41 -0
  682. package/src/adapters/replit.ts +55 -0
  683. package/src/adapters/types.ts +51 -0
  684. package/src/behavior-learner.ts +144 -0
  685. package/src/behavior-signals.ts +73 -0
  686. package/src/binary-lifecycle/backend.ts +117 -0
  687. package/src/binary-lifecycle/index.ts +35 -0
  688. package/src/binary-lifecycle/manifest.ts +79 -0
  689. package/src/binary-lifecycle/pipeline.ts +352 -0
  690. package/src/binary-lifecycle/scanner.ts +89 -0
  691. package/src/binary-lifecycle/types.ts +89 -0
  692. package/src/bootstrap.ts +178 -0
  693. package/src/boxes.ts +521 -0
  694. package/src/briefing.test.ts +1535 -0
  695. package/src/briefing.ts +1382 -0
  696. package/src/buffer-session.test.ts +443 -0
  697. package/src/buffer-surprise-report.ts +176 -0
  698. package/src/buffer-surprise-telemetry.test.ts +606 -0
  699. package/src/buffer-surprise-trigger.test.ts +766 -0
  700. package/src/buffer-surprise.test.ts +339 -0
  701. package/src/buffer-surprise.ts +203 -0
  702. package/src/buffer.ts +900 -0
  703. package/src/bulk-import/cli-command.test.ts +204 -0
  704. package/src/bulk-import/index.ts +34 -0
  705. package/src/bulk-import/pipeline.test.ts +445 -0
  706. package/src/bulk-import/pipeline.ts +178 -0
  707. package/src/bulk-import/registry.test.ts +151 -0
  708. package/src/bulk-import/registry.ts +72 -0
  709. package/src/bulk-import/types.test.ts +272 -0
  710. package/src/bulk-import/types.ts +145 -0
  711. package/src/calibration.ts +394 -0
  712. package/src/capsule-cli.test.ts +398 -0
  713. package/src/capsule-cli.ts +565 -0
  714. package/src/causal-behavior.ts +308 -0
  715. package/src/causal-chain.ts +419 -0
  716. package/src/causal-consolidation.ts +370 -0
  717. package/src/causal-retrieval.ts +286 -0
  718. package/src/causal-trajectory-graph.ts +60 -0
  719. package/src/causal-trajectory.ts +303 -0
  720. package/src/chunking.ts +220 -0
  721. package/src/citations.ts +232 -0
  722. package/src/cli.ts +9403 -0
  723. package/src/codex-cli-fallback.ts +162 -0
  724. package/src/codex-thread-key.ts +1 -0
  725. package/src/coding/access-coding-context.test.ts +197 -0
  726. package/src/coding/coding-branch-scope.test.ts +281 -0
  727. package/src/coding/coding-namespace.test.ts +360 -0
  728. package/src/coding/coding-namespace.ts +412 -0
  729. package/src/coding/coding-orchestrator.test.ts +249 -0
  730. package/src/coding/git-context.test.ts +507 -0
  731. package/src/coding/git-context.ts +336 -0
  732. package/src/coding/mcp-set-coding-context.test.ts +174 -0
  733. package/src/coding/review-context.test.ts +316 -0
  734. package/src/coding/review-context.ts +349 -0
  735. package/src/coding/wire-coding-context.test.ts +468 -0
  736. package/src/commitment-ledger.test.ts +78 -0
  737. package/src/commitment-ledger.ts +337 -0
  738. package/src/compat/checks.test.ts +206 -0
  739. package/src/compat/checks.ts +716 -0
  740. package/src/compat/types.ts +33 -0
  741. package/src/compounding/engine.ts +1686 -0
  742. package/src/compounding/preference-consolidator.ts +778 -0
  743. package/src/compression-optimizer.ts +312 -0
  744. package/src/config.test.ts +930 -0
  745. package/src/config.ts +3807 -0
  746. package/src/connectors/codex/instructions.md +160 -0
  747. package/src/connectors/codex/resources/namespace-cheatsheet.md +48 -0
  748. package/src/connectors/codex-marketplace.ts +500 -0
  749. package/src/connectors/codex-materialize-runner.ts +212 -0
  750. package/src/connectors/codex-materialize.ts +983 -0
  751. package/src/connectors/coerce.ts +62 -0
  752. package/src/connectors/index.test.ts +1570 -0
  753. package/src/connectors/index.ts +3222 -0
  754. package/src/connectors/live/framework.ts +164 -0
  755. package/src/connectors/live/github.test.ts +1218 -0
  756. package/src/connectors/live/github.ts +1068 -0
  757. package/src/connectors/live/gmail.test.ts +1706 -0
  758. package/src/connectors/live/gmail.ts +1293 -0
  759. package/src/connectors/live/google-drive.test.ts +696 -0
  760. package/src/connectors/live/google-drive.ts +724 -0
  761. package/src/connectors/live/index.ts +101 -0
  762. package/src/connectors/live/live-connectors.test.ts +689 -0
  763. package/src/connectors/live/notion.test.ts +1109 -0
  764. package/src/connectors/live/notion.ts +978 -0
  765. package/src/connectors/live/registry.ts +103 -0
  766. package/src/connectors/live/state-store.ts +399 -0
  767. package/src/connectors/live/transient-errors.ts +150 -0
  768. package/src/connectors/weclone-installer.test.ts +850 -0
  769. package/src/connectors-cli.ts +513 -0
  770. package/src/console/state.test.ts +224 -0
  771. package/src/console/state.ts +514 -0
  772. package/src/console/trace.test.ts +813 -0
  773. package/src/console/trace.ts +603 -0
  774. package/src/console/tui.test.ts +582 -0
  775. package/src/console/tui.ts +508 -0
  776. package/src/consolidation-operator.ts +182 -0
  777. package/src/consolidation-provenance-check.ts +551 -0
  778. package/src/consolidation-undo.ts +718 -0
  779. package/src/contradiction/contradiction-judge.test.ts +189 -0
  780. package/src/contradiction/contradiction-judge.ts +333 -0
  781. package/src/contradiction/contradiction-review.ts +574 -0
  782. package/src/contradiction/contradiction-scan.ts +504 -0
  783. package/src/contradiction/contradiction.test.ts +2230 -0
  784. package/src/contradiction/index.ts +37 -0
  785. package/src/contradiction/resolution.ts +383 -0
  786. package/src/conversation-index/backend.ts +323 -0
  787. package/src/conversation-index/chunker.ts +47 -0
  788. package/src/conversation-index/cleanup.ts +53 -0
  789. package/src/conversation-index/faiss-adapter.ts +384 -0
  790. package/src/conversation-index/indexer.test.ts +164 -0
  791. package/src/conversation-index/indexer.ts +192 -0
  792. package/src/conversation-index/search.ts +37 -0
  793. package/src/cross-namespace-budget.test.ts +275 -0
  794. package/src/cross-namespace-budget.ts +365 -0
  795. package/src/cue-anchors.ts +163 -0
  796. package/src/curation/index.ts +544 -0
  797. package/src/dashboard-runtime.ts +337 -0
  798. package/src/day-summary.ts +122 -0
  799. package/src/dedup/index.ts +330 -0
  800. package/src/dedup/semantic.test.ts +1577 -0
  801. package/src/dedup/semantic.ts +148 -0
  802. package/src/delinearize.ts +193 -0
  803. package/src/direct-answer-wiring.test.ts +473 -0
  804. package/src/direct-answer-wiring.ts +180 -0
  805. package/src/direct-answer.test.ts +484 -0
  806. package/src/direct-answer.ts +273 -0
  807. package/src/embedding-fallback.ts +565 -0
  808. package/src/enrichment/audit.ts +89 -0
  809. package/src/enrichment/index.ts +27 -0
  810. package/src/enrichment/pipeline.ts +197 -0
  811. package/src/enrichment/provider-registry.ts +85 -0
  812. package/src/enrichment/types.ts +100 -0
  813. package/src/enrichment/web-search-provider.ts +63 -0
  814. package/src/entity-retrieval.ts +774 -0
  815. package/src/entity-schema.ts +239 -0
  816. package/src/evals.ts +1312 -0
  817. package/src/event-order-recall.test.ts +4164 -0
  818. package/src/event-order-recall.ts +2802 -0
  819. package/src/evidence-pack.test.ts +89 -0
  820. package/src/evidence-pack.ts +388 -0
  821. package/src/explicit-capture.ts +530 -0
  822. package/src/explicit-cue-recall.test.ts +3019 -0
  823. package/src/explicit-cue-recall.ts +5545 -0
  824. package/src/extraction-judge-telemetry.ts +234 -0
  825. package/src/extraction-judge-training.ts +221 -0
  826. package/src/extraction-judge.ts +846 -0
  827. package/src/extraction-timeout.test.ts +265 -0
  828. package/src/extraction.ts +2719 -0
  829. package/src/fallback-llm.test.ts +1060 -0
  830. package/src/fallback-llm.ts +918 -0
  831. package/src/focused-list-recall.test.ts +734 -0
  832. package/src/focused-list-recall.ts +1160 -0
  833. package/src/graph-dashboard-diff.ts +35 -0
  834. package/src/graph-dashboard-key.ts +5 -0
  835. package/src/graph-dashboard-parser.ts +104 -0
  836. package/src/graph-edge-reinforcement.ts +192 -0
  837. package/src/graph-events.ts +151 -0
  838. package/src/graph-recall.test.ts +164 -0
  839. package/src/graph-recall.ts +189 -0
  840. package/src/graph-retrieval.test.ts +809 -0
  841. package/src/graph-retrieval.ts +823 -0
  842. package/src/graph-snapshot.ts +329 -0
  843. package/src/graph.ts +813 -0
  844. package/src/harmonic-retrieval.ts +223 -0
  845. package/src/himem.ts +154 -0
  846. package/src/hygiene.ts +87 -0
  847. package/src/identity-continuity.ts +333 -0
  848. package/src/importance.ts +328 -0
  849. package/src/importers/base.test.ts +294 -0
  850. package/src/importers/base.ts +436 -0
  851. package/src/importers/index.ts +21 -0
  852. package/src/index.ts +1204 -0
  853. package/src/intent.ts +154 -0
  854. package/src/json-extract.ts +85 -0
  855. package/src/json-store.ts +42 -0
  856. package/src/lcm/archive.ts +617 -0
  857. package/src/lcm/dag.ts +199 -0
  858. package/src/lcm/engine.ts +645 -0
  859. package/src/lcm/index.ts +7 -0
  860. package/src/lcm/queue.test.ts +178 -0
  861. package/src/lcm/queue.ts +200 -0
  862. package/src/lcm/recall.ts +117 -0
  863. package/src/lcm/schema.ts +154 -0
  864. package/src/lcm/summarizer.ts +235 -0
  865. package/src/lcm/tools.ts +191 -0
  866. package/src/lcm-engine.test.ts +660 -0
  867. package/src/legacy-hook-compat.test.ts +20 -0
  868. package/src/legacy-hook-compat.ts +45 -0
  869. package/src/lifecycle.ts +289 -0
  870. package/src/live-connectors-runner.ts +385 -0
  871. package/src/local-llm-qos.test.ts +303 -0
  872. package/src/local-llm-thinking.test.ts +292 -0
  873. package/src/local-llm.ts +1464 -0
  874. package/src/logger.ts +49 -0
  875. package/src/maintenance/archive-observations.ts +147 -0
  876. package/src/maintenance/backup-stamp.ts +3 -0
  877. package/src/maintenance/dreams-ledger.ts +516 -0
  878. package/src/maintenance/first-start-migration.ts +362 -0
  879. package/src/maintenance/forget.test.ts +206 -0
  880. package/src/maintenance/forget.ts +126 -0
  881. package/src/maintenance/graph-edge-decay.test.ts +409 -0
  882. package/src/maintenance/graph-edge-decay.ts +394 -0
  883. package/src/maintenance/memory-governance-cron.ts +447 -0
  884. package/src/maintenance/memory-governance.ts +1039 -0
  885. package/src/maintenance/migrate-observations.ts +216 -0
  886. package/src/maintenance/observation-ledger-utils.ts +54 -0
  887. package/src/maintenance/pattern-reinforcement.test.ts +875 -0
  888. package/src/maintenance/pattern-reinforcement.ts +369 -0
  889. package/src/maintenance/purge.ts +334 -0
  890. package/src/maintenance/rebuild-memory-lifecycle-ledger.ts +78 -0
  891. package/src/maintenance/rebuild-memory-projection.ts +1234 -0
  892. package/src/maintenance/rebuild-observations.ts +178 -0
  893. package/src/maintenance/tier-stats.test.ts +378 -0
  894. package/src/maintenance/tier-stats.ts +222 -0
  895. package/src/mcp-memory-inspector-app.ts +421 -0
  896. package/src/memory-action-policy.ts +80 -0
  897. package/src/memory-cache.ts +208 -0
  898. package/src/memory-extension/claude-code-publisher.ts +51 -0
  899. package/src/memory-extension/codex-publisher.ts +149 -0
  900. package/src/memory-extension/hermes-publisher.ts +51 -0
  901. package/src/memory-extension/index.ts +100 -0
  902. package/src/memory-extension/shared-instructions.ts +133 -0
  903. package/src/memory-extension/types.ts +86 -0
  904. package/src/memory-extension-host/host-discovery.ts +276 -0
  905. package/src/memory-extension-host/index.ts +14 -0
  906. package/src/memory-extension-host/render-extensions-block.ts +73 -0
  907. package/src/memory-extension-host/types.ts +21 -0
  908. package/src/memory-lifecycle-ledger-utils.ts +116 -0
  909. package/src/memory-projection-format.ts +11 -0
  910. package/src/memory-projection-store.ts +951 -0
  911. package/src/memory-provenance.test.ts +196 -0
  912. package/src/memory-provenance.ts +484 -0
  913. package/src/memory-worth-bench.test.ts +71 -0
  914. package/src/memory-worth-bench.ts +265 -0
  915. package/src/memory-worth-filter.test.ts +209 -0
  916. package/src/memory-worth-filter.ts +204 -0
  917. package/src/memory-worth-frontmatter.test.ts +311 -0
  918. package/src/memory-worth-outcomes.test.ts +316 -0
  919. package/src/memory-worth-outcomes.ts +286 -0
  920. package/src/memory-worth.test.ts +317 -0
  921. package/src/memory-worth.ts +215 -0
  922. package/src/message-parts/index.ts +806 -0
  923. package/src/message-parts/message-parts.test.ts +421 -0
  924. package/src/migrate/from-engram.ts +789 -0
  925. package/src/model-registry.ts +313 -0
  926. package/src/models-json.ts +76 -0
  927. package/src/namespaces/migrate.ts +187 -0
  928. package/src/namespaces/path.ts +25 -0
  929. package/src/namespaces/principal.test.ts +195 -0
  930. package/src/namespaces/principal.ts +86 -0
  931. package/src/namespaces/search.test.ts +105 -0
  932. package/src/namespaces/search.ts +233 -0
  933. package/src/namespaces/storage.ts +74 -0
  934. package/src/native-knowledge.ts +1823 -0
  935. package/src/negative.ts +72 -0
  936. package/src/network/tailscale.ts +179 -0
  937. package/src/network/webdav.ts +385 -0
  938. package/src/objective-state-writers.ts +951 -0
  939. package/src/objective-state.ts +320 -0
  940. package/src/onboarding/index.ts +529 -0
  941. package/src/openai-chat-compat.ts +56 -0
  942. package/src/operator-toolkit.ts +2132 -0
  943. package/src/opik-exporter.test.ts +72 -0
  944. package/src/opik-exporter.ts +587 -0
  945. package/src/orchestrator-extraction-queue.test.ts +197 -0
  946. package/src/orchestrator-flush.test.ts +1171 -0
  947. package/src/orchestrator-pattern-reinforcement.test.ts +128 -0
  948. package/src/orchestrator-source-attribution.test.ts +701 -0
  949. package/src/orchestrator.ts +16368 -0
  950. package/src/page-versioning.ts +450 -0
  951. package/src/patterns-cli.ts +574 -0
  952. package/src/peers/index.ts +54 -0
  953. package/src/peers/migrate-from-identity-anchor.test.ts +291 -0
  954. package/src/peers/migrate-from-identity-anchor.ts +350 -0
  955. package/src/peers/peers.test.ts +419 -0
  956. package/src/peers/profile-reasoner.ts +694 -0
  957. package/src/peers/storage.ts +1350 -0
  958. package/src/peers/types.ts +138 -0
  959. package/src/plugin-id.ts +84 -0
  960. package/src/policy-runtime.ts +209 -0
  961. package/src/procedural/procedure-miner.ts +150 -0
  962. package/src/procedural/procedure-recall.ts +93 -0
  963. package/src/procedural/procedure-stats.ts +213 -0
  964. package/src/procedural/procedure-types.ts +132 -0
  965. package/src/procedural/reinforcement-core.test.ts +132 -0
  966. package/src/procedural/reinforcement-core.ts +73 -0
  967. package/src/profiling.test.ts +263 -0
  968. package/src/profiling.ts +435 -0
  969. package/src/projection/index.ts +398 -0
  970. package/src/qmd-recall-cache.test.ts +138 -0
  971. package/src/qmd-recall-cache.ts +111 -0
  972. package/src/qmd.test.ts +257 -0
  973. package/src/qmd.ts +2614 -0
  974. package/src/reasoning-trace-recall.ts +201 -0
  975. package/src/reasoning-trace-types.ts +235 -0
  976. package/src/recall-audit-anomaly.test.ts +246 -0
  977. package/src/recall-audit-anomaly.ts +297 -0
  978. package/src/recall-audit.test.ts +51 -0
  979. package/src/recall-audit.ts +72 -0
  980. package/src/recall-budget-config.test.ts +87 -0
  981. package/src/recall-disclosure-escalation.test.ts +196 -0
  982. package/src/recall-disclosure-escalation.ts +158 -0
  983. package/src/recall-disclosure-shaping.test.ts +146 -0
  984. package/src/recall-disclosure.test.ts +214 -0
  985. package/src/recall-explain-renderer.test.ts +140 -0
  986. package/src/recall-explain-renderer.ts +356 -0
  987. package/src/recall-mmr.test.ts +808 -0
  988. package/src/recall-mmr.ts +607 -0
  989. package/src/recall-qos.test.ts +85 -0
  990. package/src/recall-qos.ts +82 -0
  991. package/src/recall-query-policy.ts +221 -0
  992. package/src/recall-state.test.ts +233 -0
  993. package/src/recall-state.ts +456 -0
  994. package/src/recall-tag-filter.ts +143 -0
  995. package/src/recall-tokenization.ts +35 -0
  996. package/src/recall-xray-cli.test.ts +118 -0
  997. package/src/recall-xray-cli.ts +100 -0
  998. package/src/recall-xray-disclosure-telemetry.test.ts +183 -0
  999. package/src/recall-xray-renderer.test.ts +539 -0
  1000. package/src/recall-xray-renderer.ts +487 -0
  1001. package/src/recall-xray.test.ts +503 -0
  1002. package/src/recall-xray.ts +621 -0
  1003. package/src/reconstruct.ts +41 -0
  1004. package/src/release-changelog.ts +35 -0
  1005. package/src/relevance.ts +67 -0
  1006. package/src/replay/normalizers/chatgpt.ts +133 -0
  1007. package/src/replay/normalizers/claude.ts +102 -0
  1008. package/src/replay/normalizers/openclaw.ts +119 -0
  1009. package/src/replay/normalizers/shared.ts +69 -0
  1010. package/src/replay/runner.ts +197 -0
  1011. package/src/replay/types.ts +143 -0
  1012. package/src/rerank.test.ts +48 -0
  1013. package/src/rerank.ts +176 -0
  1014. package/src/resolve-auth-token.test.ts +226 -0
  1015. package/src/resolve-auth-token.ts +151 -0
  1016. package/src/resolve-provider-secret.test.ts +187 -0
  1017. package/src/resolve-provider-secret.ts +410 -0
  1018. package/src/response-guidance-recall.test.ts +3952 -0
  1019. package/src/response-guidance-recall.ts +4431 -0
  1020. package/src/resume-bundles.ts +415 -0
  1021. package/src/retrieval-agents.ts +623 -0
  1022. package/src/retrieval-tiers.ts +25 -0
  1023. package/src/retrieval.ts +104 -0
  1024. package/src/review/index.test.ts +201 -0
  1025. package/src/review/index.ts +536 -0
  1026. package/src/routing/engine.ts +162 -0
  1027. package/src/routing/store.ts +321 -0
  1028. package/src/runtime/better-sqlite.test.ts +32 -0
  1029. package/src/runtime/better-sqlite.ts +76 -0
  1030. package/src/runtime/child-process.ts +67 -0
  1031. package/src/runtime/env.ts +48 -0
  1032. package/src/sanitize.ts +58 -0
  1033. package/src/schemas.ts +449 -0
  1034. package/src/sdk-compat.ts +87 -0
  1035. package/src/search/document-scanner.ts +96 -0
  1036. package/src/search/embed-helper.ts +142 -0
  1037. package/src/search/factory.ts +189 -0
  1038. package/src/search/index.ts +10 -0
  1039. package/src/search/lancedb-backend.ts +342 -0
  1040. package/src/search/meilisearch-backend.ts +232 -0
  1041. package/src/search/noop-backend.ts +57 -0
  1042. package/src/search/orama-backend.ts +358 -0
  1043. package/src/search/port.ts +86 -0
  1044. package/src/search/remote-backend.ts +124 -0
  1045. package/src/secure-store/cipher.ts +271 -0
  1046. package/src/secure-store/cli-handlers.ts +355 -0
  1047. package/src/secure-store/cli-renderer.ts +131 -0
  1048. package/src/secure-store/header.ts +373 -0
  1049. package/src/secure-store/index.ts +137 -0
  1050. package/src/secure-store/kdf.ts +263 -0
  1051. package/src/secure-store/keyring.ts +106 -0
  1052. package/src/secure-store/metadata.ts +394 -0
  1053. package/src/secure-store/passphrase-reader.ts +252 -0
  1054. package/src/secure-store/secure-fs.ts +571 -0
  1055. package/src/secure-store/secure-store.test.ts +755 -0
  1056. package/src/semantic-chunking.ts +545 -0
  1057. package/src/semantic-consolidation.test.ts +182 -0
  1058. package/src/semantic-consolidation.ts +432 -0
  1059. package/src/semantic-rule-promotion.ts +183 -0
  1060. package/src/semantic-rule-verifier.ts +160 -0
  1061. package/src/session-integrity.ts +569 -0
  1062. package/src/session-observer-bands.ts +11 -0
  1063. package/src/session-observer-state.ts +346 -0
  1064. package/src/session-toggles.test.ts +96 -0
  1065. package/src/session-toggles.ts +159 -0
  1066. package/src/shared-context/manager.ts +810 -0
  1067. package/src/signal.ts +84 -0
  1068. package/src/skills-registry.test.ts +277 -0
  1069. package/src/skills-registry.ts +120 -0
  1070. package/src/source-attribution-roundtrip.test.ts +215 -0
  1071. package/src/source-attribution.test.ts +1425 -0
  1072. package/src/source-attribution.ts +639 -0
  1073. package/src/spaces/index.ts +627 -0
  1074. package/src/storage-paths.ts +117 -0
  1075. package/src/storage.ts +6657 -0
  1076. package/src/store-contract.ts +55 -0
  1077. package/src/summarizer.ts +844 -0
  1078. package/src/summary-snapshot.test.ts +681 -0
  1079. package/src/summary-snapshot.ts +238 -0
  1080. package/src/surfaces/dreams.test.ts +394 -0
  1081. package/src/surfaces/dreams.ts +346 -0
  1082. package/src/surfaces/heartbeat.test.ts +415 -0
  1083. package/src/surfaces/heartbeat.ts +325 -0
  1084. package/src/sync/index.ts +308 -0
  1085. package/src/targeted-fact-recall.test.ts +1694 -0
  1086. package/src/targeted-fact-recall.ts +2905 -0
  1087. package/src/taxonomy/default-taxonomy.ts +87 -0
  1088. package/src/taxonomy/index.ts +26 -0
  1089. package/src/taxonomy/resolver-doc-generator.ts +57 -0
  1090. package/src/taxonomy/resolver.ts +184 -0
  1091. package/src/taxonomy/taxonomy-loader.ts +186 -0
  1092. package/src/taxonomy/types.ts +48 -0
  1093. package/src/telemetry-transcript.ts +70 -0
  1094. package/src/temporal-index.ts +890 -0
  1095. package/src/temporal-supersession.test.ts +2703 -0
  1096. package/src/temporal-supersession.ts +493 -0
  1097. package/src/temporal-validity.test.ts +448 -0
  1098. package/src/temporal-validity.ts +123 -0
  1099. package/src/threading.ts +395 -0
  1100. package/src/tier-migration.ts +124 -0
  1101. package/src/tier-routing.ts +102 -0
  1102. package/src/tmt.ts +462 -0
  1103. package/src/tokens.test.ts +178 -0
  1104. package/src/tokens.ts +279 -0
  1105. package/src/topics.ts +147 -0
  1106. package/src/training-export/cli-date-validation.test.ts +258 -0
  1107. package/src/training-export/converter.test.ts +452 -0
  1108. package/src/training-export/converter.ts +319 -0
  1109. package/src/training-export/date-parse.ts +117 -0
  1110. package/src/training-export/index.ts +26 -0
  1111. package/src/training-export/registry.test.ts +85 -0
  1112. package/src/training-export/registry.ts +57 -0
  1113. package/src/training-export/types.ts +31 -0
  1114. package/src/transcript.ts +1179 -0
  1115. package/src/transfer/autodetect.ts +30 -0
  1116. package/src/transfer/backup.ts +138 -0
  1117. package/src/transfer/capsule-crypto.ts +485 -0
  1118. package/src/transfer/capsule-encrypt.test.ts +690 -0
  1119. package/src/transfer/capsule-export.ts +543 -0
  1120. package/src/transfer/capsule-fork.ts +375 -0
  1121. package/src/transfer/capsule-import.ts +564 -0
  1122. package/src/transfer/capsule-merge.ts +433 -0
  1123. package/src/transfer/conflict-policy.ts +16 -0
  1124. package/src/transfer/constants.ts +13 -0
  1125. package/src/transfer/exclusions.ts +37 -0
  1126. package/src/transfer/export-json.ts +65 -0
  1127. package/src/transfer/export-md.ts +59 -0
  1128. package/src/transfer/export-sqlite.ts +52 -0
  1129. package/src/transfer/fs-utils.ts +269 -0
  1130. package/src/transfer/import-json.ts +108 -0
  1131. package/src/transfer/import-md.ts +84 -0
  1132. package/src/transfer/import-sqlite.ts +100 -0
  1133. package/src/transfer/integrity.ts +71 -0
  1134. package/src/transfer/sqlite-schema.ts +16 -0
  1135. package/src/transfer/types.ts +297 -0
  1136. package/src/trust-zones.ts +1186 -0
  1137. package/src/types.ts +3074 -0
  1138. package/src/user-model.test.ts +124 -0
  1139. package/src/user-model.ts +162 -0
  1140. package/src/utility-learner.ts +353 -0
  1141. package/src/utility-runtime.ts +88 -0
  1142. package/src/utility-telemetry.ts +215 -0
  1143. package/src/utils/category-dir.ts +44 -0
  1144. package/src/utils/errno.ts +6 -0
  1145. package/src/utils/iso-timestamp.test.ts +37 -0
  1146. package/src/utils/iso-timestamp.ts +164 -0
  1147. package/src/utils/path.ts +26 -0
  1148. package/src/verified-recall.ts +138 -0
  1149. package/src/version-utils.test.ts +10 -0
  1150. package/src/version-utils.ts +9 -0
  1151. package/src/whitespace.ts +10 -0
  1152. package/src/work/board.ts +359 -0
  1153. package/src/work/boundary.ts +107 -0
  1154. package/src/work/storage.ts +436 -0
  1155. package/src/work/types.ts +82 -0
  1156. package/src/work-product-ledger.ts +265 -0
  1157. package/dist/access-service-DDjzFALq.d.ts +0 -2088
  1158. package/dist/capsule-crypto-SJS5VVAP.js +0 -18
  1159. package/dist/capsule-export-7QNCBZOQ.js +0 -17
  1160. package/dist/capsule-import-EPBHD2EN.js +0 -16
  1161. package/dist/capsule-merge-DI7PNQ2H.js +0 -189
  1162. package/dist/chunk-23ZZK64Y.js +0 -26
  1163. package/dist/chunk-23ZZK64Y.js.map +0 -1
  1164. package/dist/chunk-242S3I2A.js +0 -647
  1165. package/dist/chunk-2LGMW3DJ.js +0 -111
  1166. package/dist/chunk-3B6KIRBH.js +0 -5213
  1167. package/dist/chunk-3B6KIRBH.js.map +0 -1
  1168. package/dist/chunk-457A4P3L.js +0 -119
  1169. package/dist/chunk-457A4P3L.js.map +0 -1
  1170. package/dist/chunk-4IS4SXIQ.js +0 -2040
  1171. package/dist/chunk-4YM32CRU.js +0 -721
  1172. package/dist/chunk-6TBWYBJ3.js +0 -236
  1173. package/dist/chunk-74EMIVE4.js +0 -329
  1174. package/dist/chunk-74EMIVE4.js.map +0 -1
  1175. package/dist/chunk-767ODGE6.js +0 -183
  1176. package/dist/chunk-7V22HTMD.js +0 -623
  1177. package/dist/chunk-7V22HTMD.js.map +0 -1
  1178. package/dist/chunk-7ZM3BFKK.js +0 -9705
  1179. package/dist/chunk-7ZM3BFKK.js.map +0 -1
  1180. package/dist/chunk-AQJNPMOA.js +0 -643
  1181. package/dist/chunk-AQJNPMOA.js.map +0 -1
  1182. package/dist/chunk-ASAITVLA.js +0 -64
  1183. package/dist/chunk-ASAITVLA.js.map +0 -1
  1184. package/dist/chunk-BBE34QBJ.js +0 -275
  1185. package/dist/chunk-BBE34QBJ.js.map +0 -1
  1186. package/dist/chunk-BZSQEPRW.js +0 -14710
  1187. package/dist/chunk-BZSQEPRW.js.map +0 -1
  1188. package/dist/chunk-CPKTBRS2.js +0 -891
  1189. package/dist/chunk-CPKTBRS2.js.map +0 -1
  1190. package/dist/chunk-D4GAOFF6.js +0 -562
  1191. package/dist/chunk-D4GAOFF6.js.map +0 -1
  1192. package/dist/chunk-D54LZC5L.js +0 -147
  1193. package/dist/chunk-DF3RVK3X.js +0 -119
  1194. package/dist/chunk-DF3RVK3X.js.map +0 -1
  1195. package/dist/chunk-DZZPC36E.js +0 -1451
  1196. package/dist/chunk-DZZPC36E.js.map +0 -1
  1197. package/dist/chunk-E2UCDP5S.js +0 -570
  1198. package/dist/chunk-E6K4NIEU.js +0 -747
  1199. package/dist/chunk-E6K4NIEU.js.map +0 -1
  1200. package/dist/chunk-EEQLFRUM.js +0 -89
  1201. package/dist/chunk-ETOW6ACV.js +0 -158
  1202. package/dist/chunk-ETOW6ACV.js.map +0 -1
  1203. package/dist/chunk-FMEBPEAO.js +0 -347
  1204. package/dist/chunk-FMEBPEAO.js.map +0 -1
  1205. package/dist/chunk-FQDPCE3I.js +0 -1837
  1206. package/dist/chunk-FQDPCE3I.js.map +0 -1
  1207. package/dist/chunk-FYIYMQ5N.js +0 -221
  1208. package/dist/chunk-FYIYMQ5N.js.map +0 -1
  1209. package/dist/chunk-G2WADRQ3.js +0 -219
  1210. package/dist/chunk-G4SK7DSQ.js +0 -121
  1211. package/dist/chunk-GVPWB7EY.js +0 -390
  1212. package/dist/chunk-GVPWB7EY.js.map +0 -1
  1213. package/dist/chunk-HELQZFZO.js +0 -1075
  1214. package/dist/chunk-HL5LRPNA.js +0 -1914
  1215. package/dist/chunk-HL5LRPNA.js.map +0 -1
  1216. package/dist/chunk-HQZVVSVB.js +0 -147
  1217. package/dist/chunk-HQZVVSVB.js.map +0 -1
  1218. package/dist/chunk-HY3L4WKC.js +0 -2195
  1219. package/dist/chunk-HY3L4WKC.js.map +0 -1
  1220. package/dist/chunk-IB3BFHGN.js +0 -228
  1221. package/dist/chunk-IXEJRKCZ.js +0 -18
  1222. package/dist/chunk-JBMSGZEQ.js +0 -441
  1223. package/dist/chunk-JBMSGZEQ.js.map +0 -1
  1224. package/dist/chunk-JESOB2HO.js +0 -108
  1225. package/dist/chunk-JKDVIE52.js +0 -272
  1226. package/dist/chunk-JRNQ3RNA.js +0 -284
  1227. package/dist/chunk-JRNQ3RNA.js.map +0 -1
  1228. package/dist/chunk-K6WK37A6.js +0 -865
  1229. package/dist/chunk-K6WK37A6.js.map +0 -1
  1230. package/dist/chunk-MARWOCVP.js +0 -48
  1231. package/dist/chunk-MNU6ZBWT.js +0 -4454
  1232. package/dist/chunk-MNU6ZBWT.js.map +0 -1
  1233. package/dist/chunk-N5AKDXAI.js +0 -74
  1234. package/dist/chunk-OA3L7BFR.js +0 -183
  1235. package/dist/chunk-OA3L7BFR.js.map +0 -1
  1236. package/dist/chunk-OR64ZGRZ.js +0 -23
  1237. package/dist/chunk-P77UEOU2.js +0 -1521
  1238. package/dist/chunk-P77UEOU2.js.map +0 -1
  1239. package/dist/chunk-PH4C2U43.js +0 -239
  1240. package/dist/chunk-PH4C2U43.js.map +0 -1
  1241. package/dist/chunk-RVPLBATS.js +0 -1586
  1242. package/dist/chunk-RVPLBATS.js.map +0 -1
  1243. package/dist/chunk-U5JMRGKX.js +0 -340
  1244. package/dist/chunk-U5JMRGKX.js.map +0 -1
  1245. package/dist/chunk-URB2WSKZ.js +0 -350
  1246. package/dist/chunk-URB2WSKZ.js.map +0 -1
  1247. package/dist/chunk-UVMUAWVT.js +0 -596
  1248. package/dist/chunk-WEJG4TB5.js +0 -118
  1249. package/dist/chunk-X7HPGUVG.js +0 -271
  1250. package/dist/chunk-XAMBKFQS.js +0 -2777
  1251. package/dist/chunk-XAMBKFQS.js.map +0 -1
  1252. package/dist/chunk-XJKFSSDW.js +0 -726
  1253. package/dist/chunk-XJKFSSDW.js.map +0 -1
  1254. package/dist/chunk-XMHBH5H6.js +0 -283
  1255. package/dist/chunk-XMHBH5H6.js.map +0 -1
  1256. package/dist/chunk-XMVFHBHT.js +0 -277
  1257. package/dist/chunk-Y3VMVTYX.js +0 -53
  1258. package/dist/chunk-YNB73F22.js +0 -137
  1259. package/dist/chunk-YNB73F22.js.map +0 -1
  1260. package/dist/chunk-Z2E7VW55.js +0 -335
  1261. package/dist/chunk-Z2E7VW55.js.map +0 -1
  1262. package/dist/chunk-ZG7PTKBK.js +0 -2296
  1263. package/dist/chunk-ZNQN6ZTA.js +0 -135
  1264. package/dist/chunk-ZVTKDVVM.js +0 -827
  1265. package/dist/chunk-ZVTKDVVM.js.map +0 -1
  1266. package/dist/cli-BR8KpIU0.d.ts +0 -1259
  1267. package/dist/codex-materialize-CQlLTzke.d.ts +0 -139
  1268. package/dist/connectors-cli-DFGtY2DB.d.ts +0 -257
  1269. package/dist/contradiction-review-5LTTVDQV.js +0 -22
  1270. package/dist/contradiction-scan-QTXAMBUA.js +0 -414
  1271. package/dist/contradiction-scan-QTXAMBUA.js.map +0 -1
  1272. package/dist/engine-35M5BKQ7.js +0 -28
  1273. package/dist/fs-utils-IRVUFB6G.js +0 -30
  1274. package/dist/graph-edge-decay-PWB63GRE.js +0 -207
  1275. package/dist/memory-governance-IMPQZXFC.js +0 -37
  1276. package/dist/memory-projection-store-CY8TU40w.d.ts +0 -222
  1277. package/dist/orchestrator-DDMPqU6R.d.ts +0 -1792
  1278. package/dist/path-RMTY5Y5A.js +0 -9
  1279. package/dist/port-B6VEDIkC.d.ts +0 -53
  1280. package/dist/resolution-YGIBORXI.js +0 -101
  1281. package/dist/resolution-YGIBORXI.js.map +0 -1
  1282. package/dist/secure-store-4R2GSO7S.js +0 -156
  1283. package/dist/semantic-consolidation-ByBXb-sf.d.ts +0 -180
  1284. package/dist/state-store-3EH7HYIN.js +0 -16
  1285. package/dist/types-V3FJ26TF.js +0 -30
  1286. /package/dist/{capsule-crypto-SJS5VVAP.js.map → adapters/claude-code.js.map} +0 -0
  1287. /package/dist/{capsule-export-7QNCBZOQ.js.map → adapters/codex.js.map} +0 -0
  1288. /package/dist/{capsule-import-EPBHD2EN.js.map → adapters/hermes.js.map} +0 -0
  1289. /package/dist/{contradiction-review-5LTTVDQV.js.map → adapters/index.js.map} +0 -0
  1290. /package/dist/{engine-35M5BKQ7.js.map → adapters/registry.js.map} +0 -0
  1291. /package/dist/{fs-utils-IRVUFB6G.js.map → adapters/replit.js.map} +0 -0
  1292. /package/dist/{memory-governance-IMPQZXFC.js.map → adapters/types.js.map} +0 -0
  1293. /package/dist/{path-RMTY5Y5A.js.map → capsule-crypto-5CYAGVC5.js.map} +0 -0
  1294. /package/dist/{capsule-merge-DI7PNQ2H.js.map → capsule-merge-4MGKE7C5.js.map} +0 -0
  1295. /package/dist/{chunk-G4SK7DSQ.js.map → chunk-2WWLHTZY.js.map} +0 -0
  1296. /package/dist/{chunk-X7HPGUVG.js.map → chunk-4CRG46BG.js.map} +0 -0
  1297. /package/dist/{chunk-UVMUAWVT.js.map → chunk-7IASACLB.js.map} +0 -0
  1298. /package/dist/{chunk-HELQZFZO.js.map → chunk-EDTHC6UD.js.map} +0 -0
  1299. /package/dist/{chunk-4YM32CRU.js.map → chunk-EFJ3MQ4V.js.map} +0 -0
  1300. /package/dist/{chunk-E2UCDP5S.js.map → chunk-FBYESMQ2.js.map} +0 -0
  1301. /package/dist/{chunk-D54LZC5L.js.map → chunk-FDU6HUUL.js.map} +0 -0
  1302. /package/dist/{chunk-IB3BFHGN.js.map → chunk-GGKRUQOO.js.map} +0 -0
  1303. /package/dist/{chunk-242S3I2A.js.map → chunk-GL6I6MEQ.js.map} +0 -0
  1304. /package/dist/{secure-store-4R2GSO7S.js.map → chunk-HHLLAQGZ.js.map} +0 -0
  1305. /package/dist/{chunk-4IS4SXIQ.js.map → chunk-HXXBL2KD.js.map} +0 -0
  1306. /package/dist/{chunk-767ODGE6.js.map → chunk-KNKUID7G.js.map} +0 -0
  1307. /package/dist/{chunk-6TBWYBJ3.js.map → chunk-LPMVBPA3.js.map} +0 -0
  1308. /package/dist/{chunk-WEJG4TB5.js.map → chunk-MC26UJIM.js.map} +0 -0
  1309. /package/dist/{chunk-JKDVIE52.js.map → chunk-MGKYQQYF.js.map} +0 -0
  1310. /package/dist/{chunk-Y3VMVTYX.js.map → chunk-MT4HVDUZ.js.map} +0 -0
  1311. /package/dist/{chunk-G2WADRQ3.js.map → chunk-MY6TPVXW.js.map} +0 -0
  1312. /package/dist/{chunk-OR64ZGRZ.js.map → chunk-NNVTUXEB.js.map} +0 -0
  1313. /package/dist/{chunk-JESOB2HO.js.map → chunk-P4NEIHUT.js.map} +0 -0
  1314. /package/dist/{chunk-IXEJRKCZ.js.map → chunk-QRNI5JBH.js.map} +0 -0
  1315. /package/dist/{chunk-EEQLFRUM.js.map → chunk-RRF5UOBJ.js.map} +0 -0
  1316. /package/dist/{state-store-3EH7HYIN.js.map → chunk-SEDEKFYQ.js.map} +0 -0
  1317. /package/dist/{chunk-2LGMW3DJ.js.map → chunk-U3PN77QT.js.map} +0 -0
  1318. /package/dist/{chunk-XMVFHBHT.js.map → chunk-U3WSW6PZ.js.map} +0 -0
  1319. /package/dist/{chunk-N5AKDXAI.js.map → chunk-UWVJF25J.js.map} +0 -0
  1320. /package/dist/{types-V3FJ26TF.js.map → chunk-V5OCT34X.js.map} +0 -0
  1321. /package/dist/{chunk-ZG7PTKBK.js.map → chunk-W3LR522O.js.map} +0 -0
  1322. /package/dist/{chunk-MARWOCVP.js.map → chunk-XIG5PDM7.js.map} +0 -0
  1323. /package/dist/{chunk-ZNQN6ZTA.js.map → chunk-XVZ7B3HG.js.map} +0 -0
  1324. /package/dist/{graph-edge-decay-PWB63GRE.js.map → graph-edge-decay-5DI5GUNL.js.map} +0 -0
@@ -1,236 +0,0 @@
1
- import {
2
- expandTildePath
3
- } from "./chunk-IXEJRKCZ.js";
4
-
5
- // src/connectors/live/state-store.ts
6
- import { promises as fs } from "fs";
7
- import path from "path";
8
-
9
- // src/connectors/live/framework.ts
10
- var CONNECTOR_ID_PATTERN = /^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/;
11
- function isValidConnectorId(id) {
12
- return typeof id === "string" && CONNECTOR_ID_PATTERN.test(id);
13
- }
14
-
15
- // src/connectors/live/state-store.ts
16
- var STATE_DIR_NAME = "state";
17
- var CONNECTORS_DIR_NAME = "connectors";
18
- var MAX_ERROR_LENGTH = 1024;
19
- var VALID_SYNC_STATUSES = /* @__PURE__ */ new Set([
20
- "success",
21
- "error",
22
- "never"
23
- ]);
24
- var ConnectorStateCorruptionError = class extends Error {
25
- constructor(message) {
26
- super(message);
27
- this.name = "ConnectorStateCorruptionError";
28
- }
29
- };
30
- function resolveConnectorsDir(memoryDir) {
31
- if (typeof memoryDir !== "string" || memoryDir.length === 0) {
32
- throw new TypeError("memoryDir must be a non-empty string");
33
- }
34
- return path.join(expandTildePath(memoryDir), STATE_DIR_NAME, CONNECTORS_DIR_NAME);
35
- }
36
- function resolveConnectorStatePath(memoryDir, id) {
37
- if (!isValidConnectorId(id)) {
38
- throw new TypeError(
39
- `invalid connector id ${JSON.stringify(id)} \u2014 must match /^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/`
40
- );
41
- }
42
- return path.join(resolveConnectorsDir(memoryDir), `${id}.json`);
43
- }
44
- function isConnectorStateShape(value) {
45
- if (typeof value !== "object" || value === null) return false;
46
- const v = value;
47
- if (typeof v.id !== "string") return false;
48
- if (typeof v.lastSyncStatus !== "string") return false;
49
- if (!["success", "error", "never"].includes(v.lastSyncStatus)) return false;
50
- if (typeof v.totalDocsImported !== "number" || !Number.isInteger(v.totalDocsImported)) return false;
51
- if (v.totalDocsImported < 0) return false;
52
- if (typeof v.updatedAt !== "string") return false;
53
- if (v.lastSyncAt !== null && typeof v.lastSyncAt !== "string") return false;
54
- if (v.cursor !== null) {
55
- if (typeof v.cursor !== "object" || v.cursor === null) return false;
56
- const c = v.cursor;
57
- if (typeof c.kind !== "string" || typeof c.value !== "string" || typeof c.updatedAt !== "string") {
58
- return false;
59
- }
60
- }
61
- if (v.lastSyncError !== void 0 && typeof v.lastSyncError !== "string") return false;
62
- return true;
63
- }
64
- async function assertNoSymlinkOnPath(memoryDir, filePath) {
65
- const expandedRoot = expandTildePath(memoryDir);
66
- const root = path.resolve(expandedRoot);
67
- const target = path.resolve(filePath);
68
- const rel = path.relative(root, target);
69
- if (rel.startsWith("..") || path.isAbsolute(rel)) {
70
- throw new Error(
71
- `connector state path ${target} escapes memory root ${root}`
72
- );
73
- }
74
- const segments = rel.length === 0 ? [] : rel.split(path.sep);
75
- let current = root;
76
- const componentsToCheck = [current];
77
- for (const seg of segments) {
78
- current = path.join(current, seg);
79
- componentsToCheck.push(current);
80
- }
81
- for (const component of componentsToCheck) {
82
- let stat;
83
- try {
84
- stat = await fs.lstat(component);
85
- } catch (err) {
86
- if (err.code === "ENOENT") {
87
- continue;
88
- }
89
- throw err;
90
- }
91
- if (stat.isSymbolicLink()) {
92
- throw new Error(
93
- `connector state path component ${component} is a symlink; refusing to follow`
94
- );
95
- }
96
- }
97
- }
98
- async function readConnectorState(memoryDir, id) {
99
- const filePath = resolveConnectorStatePath(memoryDir, id);
100
- await assertNoSymlinkOnPath(memoryDir, filePath);
101
- let raw;
102
- try {
103
- raw = await fs.readFile(filePath, "utf-8");
104
- } catch (err) {
105
- if (err.code === "ENOENT") return null;
106
- throw err;
107
- }
108
- let parsed;
109
- try {
110
- parsed = JSON.parse(raw);
111
- } catch (err) {
112
- throw new ConnectorStateCorruptionError(
113
- `connector state at ${filePath} is not valid JSON: ${err.message}`
114
- );
115
- }
116
- if (!isConnectorStateShape(parsed)) {
117
- throw new ConnectorStateCorruptionError(
118
- `connector state at ${filePath} does not match ConnectorState shape`
119
- );
120
- }
121
- if (parsed.id !== id) {
122
- throw new ConnectorStateCorruptionError(
123
- `connector state at ${filePath} has mismatched id ${JSON.stringify(parsed.id)}; expected ${JSON.stringify(id)}`
124
- );
125
- }
126
- return parsed;
127
- }
128
- async function writeConnectorState(memoryDir, id, state) {
129
- if (!isValidConnectorId(id)) {
130
- throw new TypeError(
131
- `invalid connector id ${JSON.stringify(id)} \u2014 must match /^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/`
132
- );
133
- }
134
- if (state.id !== id) {
135
- throw new Error(
136
- `writeConnectorState(): state.id ${JSON.stringify(state.id)} does not match id argument ${JSON.stringify(id)}`
137
- );
138
- }
139
- if (!VALID_SYNC_STATUSES.has(state.lastSyncStatus)) {
140
- throw new Error(
141
- `writeConnectorState(): lastSyncStatus must be one of ${[...VALID_SYNC_STATUSES].join(", ")}, got ${JSON.stringify(state.lastSyncStatus)}`
142
- );
143
- }
144
- if (state.lastSyncAt !== null && typeof state.lastSyncAt !== "string") {
145
- throw new Error(
146
- `writeConnectorState(): lastSyncAt must be a string or null, got ${typeof state.lastSyncAt}`
147
- );
148
- }
149
- if (state.cursor !== null) {
150
- if (typeof state.cursor !== "object") {
151
- throw new Error(`writeConnectorState(): cursor must be an object or null`);
152
- }
153
- if (typeof state.cursor.kind !== "string" || typeof state.cursor.value !== "string" || typeof state.cursor.updatedAt !== "string") {
154
- throw new Error(
155
- `writeConnectorState(): cursor must have string kind, value, and updatedAt`
156
- );
157
- }
158
- }
159
- if (typeof state.totalDocsImported !== "number" || !Number.isInteger(state.totalDocsImported) || state.totalDocsImported < 0) {
160
- throw new Error(
161
- `writeConnectorState(): totalDocsImported must be a non-negative integer`
162
- );
163
- }
164
- if (state.lastSyncError !== void 0 && typeof state.lastSyncError !== "string") {
165
- throw new Error(`writeConnectorState(): lastSyncError must be a string when provided`);
166
- }
167
- const truncatedError = state.lastSyncError !== void 0 && state.lastSyncError.length > MAX_ERROR_LENGTH ? state.lastSyncError.slice(0, MAX_ERROR_LENGTH) : state.lastSyncError;
168
- const finalState = {
169
- id: state.id,
170
- cursor: state.cursor,
171
- lastSyncAt: state.lastSyncAt,
172
- lastSyncStatus: state.lastSyncStatus,
173
- ...truncatedError !== void 0 ? { lastSyncError: truncatedError } : {},
174
- totalDocsImported: state.totalDocsImported,
175
- updatedAt: (/* @__PURE__ */ new Date()).toISOString()
176
- };
177
- const dir = resolveConnectorsDir(memoryDir);
178
- const targetPath = path.join(dir, `${id}.json`);
179
- await assertNoSymlinkOnPath(memoryDir, targetPath);
180
- await fs.mkdir(dir, { recursive: true });
181
- const tmpPath = `${targetPath}.tmp-${process.pid}-${Date.now()}-${Math.random().toString(36).slice(2, 8)}`;
182
- const body = `${JSON.stringify(finalState, null, 2)}
183
- `;
184
- try {
185
- await fs.writeFile(tmpPath, body, { encoding: "utf-8", mode: 384 });
186
- await fs.rename(tmpPath, targetPath);
187
- } catch (err) {
188
- try {
189
- await fs.unlink(tmpPath);
190
- } catch {
191
- }
192
- throw err;
193
- }
194
- return finalState;
195
- }
196
- async function listConnectorStates(memoryDir) {
197
- const dir = resolveConnectorsDir(memoryDir);
198
- await assertNoSymlinkOnPath(memoryDir, dir);
199
- let entries;
200
- try {
201
- entries = await fs.readdir(dir);
202
- } catch (err) {
203
- if (err.code === "ENOENT") return [];
204
- throw err;
205
- }
206
- const out = [];
207
- for (const entry of entries) {
208
- if (!entry.endsWith(".json")) continue;
209
- const id = entry.slice(0, -".json".length);
210
- if (!isValidConnectorId(id)) continue;
211
- try {
212
- const state = await readConnectorState(memoryDir, id);
213
- if (state !== null) out.push(state);
214
- } catch (err) {
215
- if (err instanceof ConnectorStateCorruptionError) {
216
- continue;
217
- }
218
- throw err;
219
- }
220
- }
221
- out.sort((a, b) => a.id.localeCompare(b.id));
222
- return out;
223
- }
224
- function _connectorStatePathForTest(memoryDir, id) {
225
- return resolveConnectorStatePath(memoryDir, id);
226
- }
227
-
228
- export {
229
- CONNECTOR_ID_PATTERN,
230
- isValidConnectorId,
231
- readConnectorState,
232
- writeConnectorState,
233
- listConnectorStates,
234
- _connectorStatePathForTest
235
- };
236
- //# sourceMappingURL=chunk-6TBWYBJ3.js.map
@@ -1,329 +0,0 @@
1
- // src/capsule-cli.ts
2
- import path from "path";
3
- function parseCapsuleOutputFormat(raw) {
4
- if (raw === void 0 || raw === null) return "text";
5
- if (typeof raw !== "string" || raw.trim() === "") {
6
- throw new Error(
7
- `--format expects one of text, markdown, json; got ${JSON.stringify(raw)}`
8
- );
9
- }
10
- const v = raw.trim();
11
- if (v !== "text" && v !== "markdown" && v !== "json") {
12
- throw new Error(
13
- `--format expects one of text, markdown, json; got ${JSON.stringify(raw)}`
14
- );
15
- }
16
- return v;
17
- }
18
- function parseCapsuleImportMode(raw) {
19
- if (raw === void 0 || raw === null) return "skip";
20
- if (typeof raw !== "string" || raw.trim() === "") {
21
- throw new Error(
22
- `--mode expects one of skip, overwrite, fork; got ${JSON.stringify(raw)}`
23
- );
24
- }
25
- const v = raw.trim();
26
- if (v !== "skip" && v !== "overwrite" && v !== "fork") {
27
- throw new Error(
28
- `--mode expects one of skip, overwrite, fork; got ${JSON.stringify(raw)}`
29
- );
30
- }
31
- return v;
32
- }
33
- function parseCapsuleConflictMode(raw) {
34
- if (raw === void 0 || raw === null) return "skip-conflicts";
35
- if (typeof raw !== "string" || raw.trim() === "") {
36
- throw new Error(
37
- `--conflict-mode expects one of skip-conflicts, prefer-source, prefer-local; got ${JSON.stringify(raw)}`
38
- );
39
- }
40
- const v = raw.trim();
41
- if (v !== "skip-conflicts" && v !== "prefer-source" && v !== "prefer-local") {
42
- throw new Error(
43
- `--conflict-mode expects one of skip-conflicts, prefer-source, prefer-local; got ${JSON.stringify(raw)}`
44
- );
45
- }
46
- return v;
47
- }
48
- var ISO_8601_RE = /^\d{4}-\d{2}-\d{2}(?:[Tt]\d{2}:\d{2}(?::\d{2}(?:\.\d{1,9})?)?(?:[Zz]|[+-]\d{2}:?\d{2}))?$/;
49
- function parseCapsuleSince(raw) {
50
- if (raw === void 0 || raw === null) return void 0;
51
- if (typeof raw !== "string") {
52
- throw new Error(
53
- `--since expects an ISO 8601 timestamp; got ${JSON.stringify(raw)}`
54
- );
55
- }
56
- if (raw.trim() === "") {
57
- throw new Error(`--since expects an ISO 8601 timestamp; received empty string`);
58
- }
59
- if (!ISO_8601_RE.test(raw)) {
60
- throw new Error(
61
- `--since is not a valid ISO 8601 timestamp: ${raw}. Accepted forms: YYYY-MM-DD, YYYY-MM-DDTHH:MM:SSZ, YYYY-MM-DDTHH:MM:SS\xB1HH:MM`
62
- );
63
- }
64
- const ms = Date.parse(raw);
65
- if (!Number.isFinite(ms)) {
66
- throw new Error(`--since is not a valid ISO 8601 timestamp: ${raw}`);
67
- }
68
- const m = /^(\d{4})-(\d{2})-(\d{2})/.exec(raw);
69
- if (m) {
70
- const offsetMatch = /([+-])(\d{2}):?(\d{2})$/.exec(raw);
71
- let displayMs = ms;
72
- if (offsetMatch) {
73
- const sign = offsetMatch[1] === "-" ? -1 : 1;
74
- const offsetMin = sign * (Number(offsetMatch[2]) * 60 + Number(offsetMatch[3]));
75
- displayMs = ms + offsetMin * 6e4;
76
- }
77
- const dd = new Date(displayMs);
78
- if (dd.getUTCFullYear() !== Number(m[1]) || dd.getUTCMonth() + 1 !== Number(m[2]) || dd.getUTCDate() !== Number(m[3])) {
79
- throw new Error(
80
- `--since: calendar overflow \u2014 ${raw} normalises to a different calendar date`
81
- );
82
- }
83
- }
84
- return raw;
85
- }
86
- function parseCapsuleIncludeKinds(raw) {
87
- if (raw === void 0 || raw === null) return void 0;
88
- if (typeof raw !== "string") {
89
- throw new Error(
90
- `--include-kinds expects a comma-separated list of directory names; got ${JSON.stringify(raw)}`
91
- );
92
- }
93
- if (raw.trim() === "") {
94
- throw new Error(
95
- `--include-kinds expects at least one non-empty kind name`
96
- );
97
- }
98
- const parts = raw.split(",").map((s) => s.trim()).filter((s) => s.length > 0);
99
- if (parts.length === 0) {
100
- throw new Error(`--include-kinds expects at least one non-empty kind name`);
101
- }
102
- for (const p of parts) {
103
- if (p.includes("/") || p.includes("\\")) {
104
- throw new Error(
105
- `--include-kinds entries must be top-level directory names (no path separators): ${p}`
106
- );
107
- }
108
- }
109
- return [...new Set(parts)];
110
- }
111
- function parseCapsulePeers(raw) {
112
- if (raw === void 0 || raw === null) return void 0;
113
- if (typeof raw !== "string") {
114
- throw new Error(
115
- `--peers expects a comma-separated list of peer ids; got ${JSON.stringify(raw)}`
116
- );
117
- }
118
- if (raw.trim() === "") {
119
- throw new Error(`--peers expects at least one non-empty peer id`);
120
- }
121
- const parts = raw.split(",").map((s) => s.trim()).filter((s) => s.length > 0);
122
- if (parts.length === 0) {
123
- throw new Error(`--peers expects at least one non-empty peer id`);
124
- }
125
- for (const p of parts) {
126
- if (p.includes("/") || p.includes("\\") || p === "." || p === "..") {
127
- throw new Error(
128
- `--peers entries must be plain id tokens (no path separators): ${p}`
129
- );
130
- }
131
- }
132
- return [...new Set(parts)];
133
- }
134
- function parseCapsuleExportOptions(nameArg, opts) {
135
- if (typeof nameArg !== "string" || nameArg.trim() === "") {
136
- throw new Error(
137
- `capsule export: <name> is required (e.g. "remnic capsule export my-capsule")`
138
- );
139
- }
140
- const name = nameArg.trim();
141
- const out = typeof opts.out === "string" && opts.out.trim() !== "" ? opts.out.trim() : void 0;
142
- const since = parseCapsuleSince(opts.since);
143
- const includeKinds = parseCapsuleIncludeKinds(opts.includeKinds);
144
- const peers = parseCapsulePeers(opts.peers);
145
- return { name, out, since, includeKinds, peers };
146
- }
147
- function parseCapsuleImportOptions(archiveArg, opts) {
148
- if (typeof archiveArg !== "string" || archiveArg.trim() === "") {
149
- throw new Error(
150
- `capsule import: <archive> path is required (e.g. "remnic capsule import /path/to/my-capsule.capsule.json.gz")`
151
- );
152
- }
153
- const archive = archiveArg.trim();
154
- const mode = parseCapsuleImportMode(opts.mode);
155
- return { archive, mode };
156
- }
157
- function parseCapsuleMergeOptions(archiveArg, opts) {
158
- if (typeof archiveArg !== "string" || archiveArg.trim() === "") {
159
- throw new Error(
160
- `capsule merge: <archive> path is required (e.g. "remnic capsule merge /path/to/my-capsule.capsule.json.gz")`
161
- );
162
- }
163
- const archive = archiveArg.trim();
164
- const conflictMode = parseCapsuleConflictMode(opts.conflictMode);
165
- return { archive, conflictMode };
166
- }
167
- function parseCapsuleListOptions(opts, defaultCapsulesDir2) {
168
- const format = parseCapsuleOutputFormat(opts.format);
169
- const rawDir = typeof opts.dir === "string" && opts.dir.trim() !== "" ? opts.dir.trim() : void 0;
170
- const capsulesDir = rawDir ?? defaultCapsulesDir2;
171
- return { format, capsulesDir };
172
- }
173
- function parseCapsuleInspectOptions(archiveArg, opts) {
174
- if (typeof archiveArg !== "string" || archiveArg.trim() === "") {
175
- throw new Error(
176
- `capsule inspect: <archive> path is required (e.g. "remnic capsule inspect my-capsule.capsule.json.gz")`
177
- );
178
- }
179
- const archive = archiveArg.trim();
180
- const format = parseCapsuleOutputFormat(opts.format);
181
- return { archive, format };
182
- }
183
- function defaultCapsulesDir(memoryDir) {
184
- return path.join(memoryDir, ".capsules");
185
- }
186
- function escapeMarkdownCell(v) {
187
- return v.replace(/\\/g, "\\\\").replace(/\|/g, "\\|");
188
- }
189
- function renderCapsuleList(entries, format) {
190
- if (format === "json") {
191
- return JSON.stringify({ capsules: entries }, null, 2);
192
- }
193
- if (entries.length === 0) {
194
- if (format === "markdown") return "_No capsule archives found._\n";
195
- return "No capsule archives found.\n";
196
- }
197
- if (format === "markdown") {
198
- const rows = entries.map((e) => {
199
- const id = escapeMarkdownCell(e.id);
200
- const date = escapeMarkdownCell(e.createdAt?.slice(0, 10) ?? "\u2014");
201
- const ver = escapeMarkdownCell(e.pluginVersion ?? "\u2014");
202
- const files = e.fileCount !== null ? String(e.fileCount) : "\u2014";
203
- const desc = escapeMarkdownCell(
204
- e.description != null && e.description.trim() !== "" ? e.description.trim() : "\u2014"
205
- );
206
- return `| \`${id}\` | ${date} | ${ver} | ${files} | ${desc} |`;
207
- });
208
- return [
209
- "# Capsule archives",
210
- "",
211
- "| ID | Created | Version | Files | Description |",
212
- "| -- | ------- | ------- | ----- | ----------- |",
213
- ...rows,
214
- ""
215
- ].join("\n");
216
- }
217
- const lines = entries.map((e) => {
218
- const date = e.createdAt?.slice(0, 10) ?? "\u2014";
219
- const files = e.fileCount !== null ? `${e.fileCount} file${e.fileCount !== 1 ? "s" : ""}` : "? files";
220
- const desc = e.description != null && e.description.trim() !== "" ? ` ${e.description.trim()}` : "";
221
- return `${e.id} [${date}] [${files}]${desc}`;
222
- });
223
- return lines.join("\n") + "\n";
224
- }
225
- function renderCapsuleInspect(manifest, format) {
226
- if (format === "json") {
227
- return JSON.stringify(manifest, null, 2);
228
- }
229
- const {
230
- capsuleId,
231
- version,
232
- schemaVersion,
233
- createdAt,
234
- pluginVersion,
235
- fileCount,
236
- includesTranscripts,
237
- description,
238
- parentCapsule,
239
- retrievalPolicy,
240
- includes,
241
- topFiles
242
- } = manifest;
243
- if (format === "markdown") {
244
- const policyLines = Object.entries(retrievalPolicy.tierWeights ?? {}).map(
245
- ([k, v]) => ` - ${k}: ${v}`
246
- );
247
- const policyBlock = policyLines.length > 0 ? policyLines.join("\n") : " _(no tier weight overrides)_";
248
- return [
249
- `# Capsule: \`${capsuleId}\``,
250
- "",
251
- `**Version:** ${version} `,
252
- `**Schema version:** ${schemaVersion} `,
253
- `**Created:** ${createdAt ?? "\u2014"} `,
254
- `**Plugin version:** ${pluginVersion ?? "\u2014"} `,
255
- `**Files:** ${fileCount} `,
256
- `**Includes transcripts:** ${includesTranscripts ? "yes" : "no"} `,
257
- `**Parent capsule:** ${parentCapsule ?? "_none_"} `,
258
- `**Description:** ${description && description.trim() !== "" ? description.trim() : "_none_"} `,
259
- "",
260
- "## Includes",
261
- `- taxonomy: ${includes.taxonomy ? "yes" : "no"}`,
262
- `- identityAnchors: ${includes.identityAnchors ? "yes" : "no"}`,
263
- `- peerProfiles: ${includes.peerProfiles ? "yes" : "no"}`,
264
- `- procedural: ${includes.procedural ? "yes" : "no"}`,
265
- "",
266
- "## Retrieval policy",
267
- `- directAnswerEnabled: ${retrievalPolicy.directAnswerEnabled ? "yes" : "no"}`,
268
- `- tierWeights:`,
269
- policyBlock,
270
- "",
271
- ...topFiles.length > 0 ? [
272
- `## Files (${fileCount} total, showing first ${topFiles.length})`,
273
- ...topFiles.map((f) => `- \`${f}\``),
274
- ""
275
- ] : [`## Files (${fileCount} total)`, "_Empty capsule._", ""]
276
- ].join("\n");
277
- }
278
- const lines = [
279
- `Capsule: ${capsuleId}`,
280
- ` version: ${version}`,
281
- ` schema: ${schemaVersion}`,
282
- ` created: ${createdAt ?? "\u2014"}`,
283
- ` plugin: ${pluginVersion ?? "\u2014"}`,
284
- ` files: ${fileCount}`,
285
- ` transcripts: ${includesTranscripts ? "yes" : "no"}`,
286
- ` parent: ${parentCapsule ?? "(none)"}`,
287
- ` description: ${description && description.trim() !== "" ? description.trim() : "(none)"}`,
288
- "",
289
- ` includes.taxonomy: ${includes.taxonomy ? "yes" : "no"}`,
290
- ` includes.identityAnchors: ${includes.identityAnchors ? "yes" : "no"}`,
291
- ` includes.peerProfiles: ${includes.peerProfiles ? "yes" : "no"}`,
292
- ` includes.procedural: ${includes.procedural ? "yes" : "no"}`,
293
- "",
294
- ` policy.directAnswer: ${retrievalPolicy.directAnswerEnabled ? "yes" : "no"}`
295
- ];
296
- const weights = Object.entries(retrievalPolicy.tierWeights ?? {});
297
- if (weights.length > 0) {
298
- for (const [k, v] of weights) {
299
- lines.push(` policy.tierWeight[${k}]: ${v}`);
300
- }
301
- } else {
302
- lines.push(` policy.tierWeights: (none)`);
303
- }
304
- if (topFiles.length > 0) {
305
- lines.push("", ` files (first ${topFiles.length} of ${fileCount}):`);
306
- for (const f of topFiles) {
307
- lines.push(` ${f}`);
308
- }
309
- }
310
- return lines.join("\n") + "\n";
311
- }
312
-
313
- export {
314
- parseCapsuleOutputFormat,
315
- parseCapsuleImportMode,
316
- parseCapsuleConflictMode,
317
- parseCapsuleSince,
318
- parseCapsuleIncludeKinds,
319
- parseCapsulePeers,
320
- parseCapsuleExportOptions,
321
- parseCapsuleImportOptions,
322
- parseCapsuleMergeOptions,
323
- parseCapsuleListOptions,
324
- parseCapsuleInspectOptions,
325
- defaultCapsulesDir,
326
- renderCapsuleList,
327
- renderCapsuleInspect
328
- };
329
- //# sourceMappingURL=chunk-74EMIVE4.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/capsule-cli.ts"],"sourcesContent":["/**\n * Pure-function helpers for the `remnic capsule` CLI surface (issue #676 PR 6/6).\n *\n * All functions here are free of orchestrator / filesystem side-effects so\n * they can be unit-tested without booting the gateway (CLAUDE.md rules 14, 51).\n *\n * Responsibilities:\n * - Input validation + option parsing for every capsule sub-command flag.\n * - Rendering of `capsule list` and `capsule inspect` output in text /\n * markdown / json forms.\n *\n * The actual I/O (export, import, merge, directory listing, manifest read) is\n * wired in `cli.ts` because those operations need the orchestrator's config.\n */\n\nimport path from \"node:path\";\n\n// ---------------------------------------------------------------------------\n// Shared types\n// ---------------------------------------------------------------------------\n\nexport type CapsuleOutputFormat = \"text\" | \"markdown\" | \"json\";\n\n/**\n * Metadata entry returned by `capsule list` for a single archive file found\n * in the capsule store directory.\n */\nexport interface CapsuleListEntry {\n /** Capsule id extracted from the filename (slug before `.capsule.json.gz`). */\n id: string;\n /** Absolute path to the `.capsule.json.gz` archive. */\n archivePath: string;\n /** Absolute path to the sidecar `.manifest.json`, or null if missing. */\n manifestPath: string | null;\n /** `createdAt` ISO string from the sidecar manifest, or null if unreadable. */\n createdAt: string | null;\n /** `pluginVersion` from the sidecar manifest, or null. */\n pluginVersion: string | null;\n /** `files` array length from the sidecar manifest, or null. */\n fileCount: number | null;\n /** `capsule.description` from the sidecar manifest, or null. */\n description: string | null;\n}\n\n// ---------------------------------------------------------------------------\n// Validation helpers\n// ---------------------------------------------------------------------------\n\n/**\n * Validate and coerce the `--format` flag value.\n *\n * Rule 51: invalid values must throw with a listed-options error, not silently\n * fall back to a default.\n */\nexport function parseCapsuleOutputFormat(\n raw: unknown,\n): CapsuleOutputFormat {\n if (raw === undefined || raw === null) return \"text\";\n if (typeof raw !== \"string\" || raw.trim() === \"\") {\n throw new Error(\n `--format expects one of text, markdown, json; got ${JSON.stringify(raw)}`,\n );\n }\n const v = raw.trim() as CapsuleOutputFormat;\n if (v !== \"text\" && v !== \"markdown\" && v !== \"json\") {\n throw new Error(\n `--format expects one of text, markdown, json; got ${JSON.stringify(raw)}`,\n );\n }\n return v;\n}\n\n/**\n * Validate and coerce the `--mode` flag for `capsule import`.\n */\nexport function parseCapsuleImportMode(\n raw: unknown,\n): \"skip\" | \"overwrite\" | \"fork\" {\n if (raw === undefined || raw === null) return \"skip\";\n if (typeof raw !== \"string\" || raw.trim() === \"\") {\n throw new Error(\n `--mode expects one of skip, overwrite, fork; got ${JSON.stringify(raw)}`,\n );\n }\n const v = raw.trim();\n if (v !== \"skip\" && v !== \"overwrite\" && v !== \"fork\") {\n throw new Error(\n `--mode expects one of skip, overwrite, fork; got ${JSON.stringify(raw)}`,\n );\n }\n return v as \"skip\" | \"overwrite\" | \"fork\";\n}\n\n/**\n * Validate and coerce the `--conflict-mode` flag for `capsule merge`.\n */\nexport function parseCapsuleConflictMode(\n raw: unknown,\n): \"skip-conflicts\" | \"prefer-source\" | \"prefer-local\" {\n if (raw === undefined || raw === null) return \"skip-conflicts\";\n if (typeof raw !== \"string\" || raw.trim() === \"\") {\n throw new Error(\n `--conflict-mode expects one of skip-conflicts, prefer-source, prefer-local; got ${JSON.stringify(raw)}`,\n );\n }\n const v = raw.trim();\n if (v !== \"skip-conflicts\" && v !== \"prefer-source\" && v !== \"prefer-local\") {\n throw new Error(\n `--conflict-mode expects one of skip-conflicts, prefer-source, prefer-local; got ${JSON.stringify(raw)}`,\n );\n }\n return v as \"skip-conflicts\" | \"prefer-source\" | \"prefer-local\";\n}\n\n/**\n * Parse and validate the `--since` ISO-8601 string.\n *\n * Accepts date-only (`YYYY-MM-DD`) and date+time with explicit timezone\n * (`YYYY-MM-DDTHH:MM...Z` / `±HH:MM`). Rejects datetime without a timezone\n * designator (host-dependent interpretation, Rule 51).\n */\nconst ISO_8601_RE =\n /^\\d{4}-\\d{2}-\\d{2}(?:[Tt]\\d{2}:\\d{2}(?::\\d{2}(?:\\.\\d{1,9})?)?(?:[Zz]|[+-]\\d{2}:?\\d{2}))?$/;\n\nexport function parseCapsuleSince(raw: unknown): string | undefined {\n if (raw === undefined || raw === null) return undefined;\n if (typeof raw !== \"string\") {\n throw new Error(\n `--since expects an ISO 8601 timestamp; got ${JSON.stringify(raw)}`,\n );\n }\n if (raw.trim() === \"\") {\n throw new Error(`--since expects an ISO 8601 timestamp; received empty string`);\n }\n if (!ISO_8601_RE.test(raw)) {\n throw new Error(\n `--since is not a valid ISO 8601 timestamp: ${raw}. ` +\n `Accepted forms: YYYY-MM-DD, YYYY-MM-DDTHH:MM:SSZ, YYYY-MM-DDTHH:MM:SS±HH:MM`,\n );\n }\n const ms = Date.parse(raw);\n if (!Number.isFinite(ms)) {\n throw new Error(`--since is not a valid ISO 8601 timestamp: ${raw}`);\n }\n // Calendar overflow detection (same logic as capsule-export.ts parseSince).\n const m = /^(\\d{4})-(\\d{2})-(\\d{2})/.exec(raw);\n if (m) {\n const offsetMatch = /([+-])(\\d{2}):?(\\d{2})$/.exec(raw);\n let displayMs = ms;\n if (offsetMatch) {\n const sign = offsetMatch[1] === \"-\" ? -1 : 1;\n const offsetMin = sign * (Number(offsetMatch[2]) * 60 + Number(offsetMatch[3]));\n displayMs = ms + offsetMin * 60_000;\n }\n const dd = new Date(displayMs);\n if (\n dd.getUTCFullYear() !== Number(m[1]) ||\n dd.getUTCMonth() + 1 !== Number(m[2]) ||\n dd.getUTCDate() !== Number(m[3])\n ) {\n throw new Error(\n `--since: calendar overflow — ${raw} normalises to a different calendar date`,\n );\n }\n }\n return raw;\n}\n\n/**\n * Parse a comma-separated `--include-kinds` value into an array of non-empty\n * top-level directory names. Rejects values containing path separators.\n */\nexport function parseCapsuleIncludeKinds(raw: unknown): string[] | undefined {\n if (raw === undefined || raw === null) return undefined;\n if (typeof raw !== \"string\") {\n throw new Error(\n `--include-kinds expects a comma-separated list of directory names; got ${JSON.stringify(raw)}`,\n );\n }\n if (raw.trim() === \"\") {\n throw new Error(\n `--include-kinds expects at least one non-empty kind name`,\n );\n }\n const parts = raw\n .split(\",\")\n .map((s) => s.trim())\n .filter((s) => s.length > 0);\n if (parts.length === 0) {\n throw new Error(`--include-kinds expects at least one non-empty kind name`);\n }\n for (const p of parts) {\n if (p.includes(\"/\") || p.includes(\"\\\\\")) {\n throw new Error(\n `--include-kinds entries must be top-level directory names (no path separators): ${p}`,\n );\n }\n }\n // Deduplicate while preserving order.\n return [...new Set(parts)];\n}\n\n/**\n * Parse a comma-separated `--peers` value into an array of peer ids.\n */\nexport function parseCapsulePeers(raw: unknown): string[] | undefined {\n if (raw === undefined || raw === null) return undefined;\n if (typeof raw !== \"string\") {\n throw new Error(\n `--peers expects a comma-separated list of peer ids; got ${JSON.stringify(raw)}`,\n );\n }\n if (raw.trim() === \"\") {\n throw new Error(`--peers expects at least one non-empty peer id`);\n }\n const parts = raw\n .split(\",\")\n .map((s) => s.trim())\n .filter((s) => s.length > 0);\n if (parts.length === 0) {\n throw new Error(`--peers expects at least one non-empty peer id`);\n }\n for (const p of parts) {\n if (p.includes(\"/\") || p.includes(\"\\\\\") || p === \".\" || p === \"..\") {\n throw new Error(\n `--peers entries must be plain id tokens (no path separators): ${p}`,\n );\n }\n }\n return [...new Set(parts)];\n}\n\n// ---------------------------------------------------------------------------\n// Parsed option bags (returned by the parse helpers below and consumed by\n// cli.ts action handlers).\n// ---------------------------------------------------------------------------\n\nexport interface CapsuleExportOptions {\n name: string;\n out: string | undefined;\n since: string | undefined;\n includeKinds: string[] | undefined;\n peers: string[] | undefined;\n}\n\nexport interface CapsuleImportOptions {\n archive: string;\n mode: \"skip\" | \"overwrite\" | \"fork\";\n}\n\nexport interface CapsuleMergeOptions {\n archive: string;\n conflictMode: \"skip-conflicts\" | \"prefer-source\" | \"prefer-local\";\n}\n\nexport interface CapsuleListOptions {\n format: CapsuleOutputFormat;\n capsulesDir: string;\n}\n\nexport interface CapsuleInspectOptions {\n archive: string;\n format: CapsuleOutputFormat;\n}\n\n// ---------------------------------------------------------------------------\n// Option bag parsers (Rule 51: validate + throw on bad input, never silently\n// default to a value that hides user misconfiguration).\n// ---------------------------------------------------------------------------\n\nexport function parseCapsuleExportOptions(\n nameArg: unknown,\n opts: Record<string, unknown>,\n): CapsuleExportOptions {\n if (typeof nameArg !== \"string\" || nameArg.trim() === \"\") {\n throw new Error(\n `capsule export: <name> is required (e.g. \"remnic capsule export my-capsule\")`,\n );\n }\n const name = nameArg.trim();\n\n const out =\n typeof opts.out === \"string\" && opts.out.trim() !== \"\"\n ? opts.out.trim()\n : undefined;\n\n const since = parseCapsuleSince(opts.since);\n const includeKinds = parseCapsuleIncludeKinds(opts.includeKinds);\n const peers = parseCapsulePeers(opts.peers);\n\n return { name, out, since, includeKinds, peers };\n}\n\nexport function parseCapsuleImportOptions(\n archiveArg: unknown,\n opts: Record<string, unknown>,\n): CapsuleImportOptions {\n if (typeof archiveArg !== \"string\" || archiveArg.trim() === \"\") {\n throw new Error(\n `capsule import: <archive> path is required (e.g. \"remnic capsule import /path/to/my-capsule.capsule.json.gz\")`,\n );\n }\n const archive = archiveArg.trim();\n const mode = parseCapsuleImportMode(opts.mode);\n return { archive, mode };\n}\n\nexport function parseCapsuleMergeOptions(\n archiveArg: unknown,\n opts: Record<string, unknown>,\n): CapsuleMergeOptions {\n if (typeof archiveArg !== \"string\" || archiveArg.trim() === \"\") {\n throw new Error(\n `capsule merge: <archive> path is required (e.g. \"remnic capsule merge /path/to/my-capsule.capsule.json.gz\")`,\n );\n }\n const archive = archiveArg.trim();\n const conflictMode = parseCapsuleConflictMode(opts.conflictMode);\n return { archive, conflictMode };\n}\n\nexport function parseCapsuleListOptions(\n opts: Record<string, unknown>,\n defaultCapsulesDir: string,\n): CapsuleListOptions {\n const format = parseCapsuleOutputFormat(opts.format);\n const rawDir =\n typeof opts.dir === \"string\" && opts.dir.trim() !== \"\"\n ? opts.dir.trim()\n : undefined;\n const capsulesDir = rawDir ?? defaultCapsulesDir;\n return { format, capsulesDir };\n}\n\nexport function parseCapsuleInspectOptions(\n archiveArg: unknown,\n opts: Record<string, unknown>,\n): CapsuleInspectOptions {\n if (typeof archiveArg !== \"string\" || archiveArg.trim() === \"\") {\n throw new Error(\n `capsule inspect: <archive> path is required (e.g. \"remnic capsule inspect my-capsule.capsule.json.gz\")`,\n );\n }\n const archive = archiveArg.trim();\n const format = parseCapsuleOutputFormat(opts.format);\n return { archive, format };\n}\n\n// ---------------------------------------------------------------------------\n// Default capsules directory\n// ---------------------------------------------------------------------------\n\n/**\n * Return the default capsule store directory for a given memory root.\n * This mirrors the `outDir` default in `exportCapsule` (`<root>/.capsules`)\n * so that `capsule list` discovers archives written by `capsule export`\n * without extra configuration.\n *\n * For `capsule list`, the POSIX conventional path is:\n * `<memoryDir>/.capsules`\n *\n * Operators can override it with `--dir <path>` at runtime.\n */\nexport function defaultCapsulesDir(memoryDir: string): string {\n return path.join(memoryDir, \".capsules\");\n}\n\n// ---------------------------------------------------------------------------\n// Renderers\n// ---------------------------------------------------------------------------\n\nfunction escapeMarkdownCell(v: string): string {\n return v.replace(/\\\\/g, \"\\\\\\\\\").replace(/\\|/g, \"\\\\|\");\n}\n\n/**\n * Render the `capsule list` output.\n */\nexport function renderCapsuleList(\n entries: CapsuleListEntry[],\n format: CapsuleOutputFormat,\n): string {\n if (format === \"json\") {\n return JSON.stringify({ capsules: entries }, null, 2);\n }\n\n if (entries.length === 0) {\n if (format === \"markdown\") return \"_No capsule archives found._\\n\";\n return \"No capsule archives found.\\n\";\n }\n\n if (format === \"markdown\") {\n const rows = entries.map((e) => {\n const id = escapeMarkdownCell(e.id);\n const date = escapeMarkdownCell(e.createdAt?.slice(0, 10) ?? \"—\");\n const ver = escapeMarkdownCell(e.pluginVersion ?? \"—\");\n const files = e.fileCount !== null ? String(e.fileCount) : \"—\";\n const desc = escapeMarkdownCell(\n e.description != null && e.description.trim() !== \"\"\n ? e.description.trim()\n : \"—\",\n );\n return `| \\`${id}\\` | ${date} | ${ver} | ${files} | ${desc} |`;\n });\n return [\n \"# Capsule archives\",\n \"\",\n \"| ID | Created | Version | Files | Description |\",\n \"| -- | ------- | ------- | ----- | ----------- |\",\n ...rows,\n \"\",\n ].join(\"\\n\");\n }\n\n // text\n const lines = entries.map((e) => {\n const date = e.createdAt?.slice(0, 10) ?? \"—\";\n const files =\n e.fileCount !== null ? `${e.fileCount} file${e.fileCount !== 1 ? \"s\" : \"\"}` : \"? files\";\n const desc =\n e.description != null && e.description.trim() !== \"\"\n ? ` ${e.description.trim()}`\n : \"\";\n return `${e.id} [${date}] [${files}]${desc}`;\n });\n return lines.join(\"\\n\") + \"\\n\";\n}\n\n/**\n * Render the `capsule inspect` output from a manifest object.\n */\nexport function renderCapsuleInspect(\n manifest: CapsuleInspectData,\n format: CapsuleOutputFormat,\n): string {\n if (format === \"json\") {\n return JSON.stringify(manifest, null, 2);\n }\n\n const {\n capsuleId,\n version,\n schemaVersion,\n createdAt,\n pluginVersion,\n fileCount,\n includesTranscripts,\n description,\n parentCapsule,\n retrievalPolicy,\n includes,\n topFiles,\n } = manifest;\n\n if (format === \"markdown\") {\n const policyLines = Object.entries(retrievalPolicy.tierWeights ?? {}).map(\n ([k, v]) => ` - ${k}: ${v}`,\n );\n const policyBlock =\n policyLines.length > 0\n ? policyLines.join(\"\\n\")\n : \" _(no tier weight overrides)_\";\n\n return [\n `# Capsule: \\`${capsuleId}\\``,\n \"\",\n `**Version:** ${version} `,\n `**Schema version:** ${schemaVersion} `,\n `**Created:** ${createdAt ?? \"—\"} `,\n `**Plugin version:** ${pluginVersion ?? \"—\"} `,\n `**Files:** ${fileCount} `,\n `**Includes transcripts:** ${includesTranscripts ? \"yes\" : \"no\"} `,\n `**Parent capsule:** ${parentCapsule ?? \"_none_\"} `,\n `**Description:** ${description && description.trim() !== \"\" ? description.trim() : \"_none_\"} `,\n \"\",\n \"## Includes\",\n `- taxonomy: ${includes.taxonomy ? \"yes\" : \"no\"}`,\n `- identityAnchors: ${includes.identityAnchors ? \"yes\" : \"no\"}`,\n `- peerProfiles: ${includes.peerProfiles ? \"yes\" : \"no\"}`,\n `- procedural: ${includes.procedural ? \"yes\" : \"no\"}`,\n \"\",\n \"## Retrieval policy\",\n `- directAnswerEnabled: ${retrievalPolicy.directAnswerEnabled ? \"yes\" : \"no\"}`,\n `- tierWeights:`,\n policyBlock,\n \"\",\n ...(topFiles.length > 0\n ? [\n `## Files (${fileCount} total, showing first ${topFiles.length})`,\n ...topFiles.map((f) => `- \\`${f}\\``),\n \"\",\n ]\n : [`## Files (${fileCount} total)`, \"_Empty capsule._\", \"\"]),\n ].join(\"\\n\");\n }\n\n // text\n const lines: string[] = [\n `Capsule: ${capsuleId}`,\n ` version: ${version}`,\n ` schema: ${schemaVersion}`,\n ` created: ${createdAt ?? \"—\"}`,\n ` plugin: ${pluginVersion ?? \"—\"}`,\n ` files: ${fileCount}`,\n ` transcripts: ${includesTranscripts ? \"yes\" : \"no\"}`,\n ` parent: ${parentCapsule ?? \"(none)\"}`,\n ` description: ${description && description.trim() !== \"\" ? description.trim() : \"(none)\"}`,\n \"\",\n ` includes.taxonomy: ${includes.taxonomy ? \"yes\" : \"no\"}`,\n ` includes.identityAnchors: ${includes.identityAnchors ? \"yes\" : \"no\"}`,\n ` includes.peerProfiles: ${includes.peerProfiles ? \"yes\" : \"no\"}`,\n ` includes.procedural: ${includes.procedural ? \"yes\" : \"no\"}`,\n \"\",\n ` policy.directAnswer: ${retrievalPolicy.directAnswerEnabled ? \"yes\" : \"no\"}`,\n ];\n\n const weights = Object.entries(retrievalPolicy.tierWeights ?? {});\n if (weights.length > 0) {\n for (const [k, v] of weights) {\n lines.push(` policy.tierWeight[${k}]: ${v}`);\n }\n } else {\n lines.push(` policy.tierWeights: (none)`);\n }\n\n if (topFiles.length > 0) {\n lines.push(\"\", ` files (first ${topFiles.length} of ${fileCount}):`);\n for (const f of topFiles) {\n lines.push(` ${f}`);\n }\n }\n\n return lines.join(\"\\n\") + \"\\n\";\n}\n\n/**\n * Data shape consumed by {@link renderCapsuleInspect}.\n * Populated by the cli.ts action handler from the parsed manifest.\n */\nexport interface CapsuleInspectData {\n capsuleId: string;\n version: string;\n schemaVersion: string;\n createdAt: string | null;\n pluginVersion: string | null;\n fileCount: number;\n includesTranscripts: boolean;\n description: string;\n parentCapsule: string | null;\n retrievalPolicy: {\n tierWeights: Record<string, number>;\n directAnswerEnabled: boolean;\n };\n includes: {\n taxonomy: boolean;\n identityAnchors: boolean;\n peerProfiles: boolean;\n procedural: boolean;\n };\n /** First N file paths from manifest.files (for preview). */\n topFiles: string[];\n}\n"],"mappings":"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","names":["defaultCapsulesDir"]}