@remnic/core 9.63.6 → 9.63.8

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 (304) hide show
  1. package/dist/access-admin-ops-surface.d.ts +3 -2
  2. package/dist/access-admin-ops-surface.js +31 -27
  3. package/dist/access-authorization-probe.d.ts +3 -2
  4. package/dist/access-authorization-probe.js +32 -28
  5. package/dist/access-boundary.d.ts +3 -2
  6. package/dist/access-boundary.js +31 -27
  7. package/dist/access-cli.js +98 -95
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-extraction-force-flush.d.ts +3 -2
  10. package/dist/access-extraction-force-flush.js +31 -27
  11. package/dist/access-http-lcm-compaction.d.ts +3 -2
  12. package/dist/access-http-lifecycle-flush.d.ts +3 -2
  13. package/dist/access-http-offline-stream.d.ts +3 -2
  14. package/dist/access-http-query.js +33 -29
  15. package/dist/access-http.d.ts +4 -3
  16. package/dist/access-http.js +47 -43
  17. package/dist/access-identity-continuity-surface.d.ts +2 -1
  18. package/dist/access-identity-continuity-surface.js +31 -27
  19. package/dist/access-lcm-surface.d.ts +3 -2
  20. package/dist/access-lcm-surface.js +31 -27
  21. package/dist/access-mcp-output-schemas.js +1 -1
  22. package/dist/access-mcp.d.ts +3 -2
  23. package/dist/access-mcp.js +38 -34
  24. package/dist/access-namespace-preflight.js +31 -27
  25. package/dist/access-observe-write-surface.d.ts +3 -2
  26. package/dist/access-observe-write-surface.js +31 -27
  27. package/dist/access-offline-manifest.d.ts +2 -1
  28. package/dist/access-offline-manifest.js +5 -4
  29. package/dist/access-operations-batch.js +32 -28
  30. package/dist/access-operations.d.ts +3 -2
  31. package/dist/access-operations.js +36 -32
  32. package/dist/access-recall-concurrency.d.ts +3 -2
  33. package/dist/access-recall-concurrency.js +31 -27
  34. package/dist/access-recall-response.d.ts +3 -2
  35. package/dist/access-recall-response.js +31 -27
  36. package/dist/access-recall-surface.d.ts +3 -2
  37. package/dist/access-recall-surface.js +31 -27
  38. package/dist/access-schema.js +6 -5
  39. package/dist/{access-service-cKQrte9Z.d.ts → access-service-BaPa_km6.d.ts} +1 -1
  40. package/dist/access-service-helpers.d.ts +3 -2
  41. package/dist/access-service.d.ts +3 -2
  42. package/dist/access-service.js +31 -27
  43. package/dist/access-surface-catalog.d.ts +3 -2
  44. package/dist/access-surface-catalog.js +33 -29
  45. package/dist/access-surface-catalog.js.map +1 -1
  46. package/dist/active-recall.js +4 -2
  47. package/dist/active-recall.js.map +1 -1
  48. package/dist/adapters/index.js +4 -4
  49. package/dist/adapters/registry.js +2 -2
  50. package/dist/{auto-sync-BKRJDMKX.js → auto-sync-3SHMZVQS.js} +5 -3
  51. package/dist/{auto-sync-BKRJDMKX.js.map → auto-sync-3SHMZVQS.js.map} +1 -1
  52. package/dist/bootstrap.d.ts +2 -1
  53. package/dist/briefing.js +10 -10
  54. package/dist/calibration.d.ts +2 -1
  55. package/dist/calibration.js +7 -0
  56. package/dist/calibration.js.map +1 -1
  57. package/dist/{capsule-crypto-7FJQINUR.js → capsule-crypto-YO5QJ6L3.js} +2 -2
  58. package/dist/causal-consolidation.js +11 -11
  59. package/dist/census-validation.d.ts +19 -0
  60. package/dist/census-validation.js +14 -0
  61. package/dist/census-validation.js.map +1 -0
  62. package/dist/{chunk-LEPOP46W.js → chunk-227UFSEQ.js} +4 -4
  63. package/dist/chunk-2YA5N2BY.js +65 -0
  64. package/dist/chunk-2YA5N2BY.js.map +1 -0
  65. package/dist/{chunk-PB4WVYGC.js → chunk-3IMYRX3W.js} +2 -2
  66. package/dist/{chunk-R6UMNP5C.js → chunk-3T6HIIKA.js} +2 -2
  67. package/dist/{chunk-77QZW2D6.js → chunk-3TDAA7VA.js} +2 -2
  68. package/dist/{chunk-TWTUGCTY.js → chunk-3YTTAGPB.js} +6 -1
  69. package/dist/chunk-3YTTAGPB.js.map +1 -0
  70. package/dist/{chunk-DXDAQZ2K.js → chunk-42TIIO2M.js} +2 -2
  71. package/dist/{chunk-Y7COCXY2.js → chunk-4F67JJPG.js} +2 -2
  72. package/dist/{chunk-OW7NVMGQ.js → chunk-5OOTHWGJ.js} +2 -2
  73. package/dist/{chunk-KYTRF64R.js → chunk-5SCFDQEJ.js} +2 -2
  74. package/dist/{chunk-DYZR3Z6D.js → chunk-5TF5STAV.js} +4 -4
  75. package/dist/{chunk-GG4DN63W.js → chunk-62Y5AGCM.js} +2 -2
  76. package/dist/{chunk-PMVPCZJZ.js → chunk-6433HV72.js} +2 -2
  77. package/dist/{chunk-KHCUVYCY.js → chunk-6UKSOXAO.js} +3 -3
  78. package/dist/{chunk-GF7RQWXC.js → chunk-AJRJDXYR.js} +2 -2
  79. package/dist/{chunk-YEQCMA5L.js → chunk-BOSIHHOH.js} +2 -2
  80. package/dist/{chunk-IVXVLDNT.js → chunk-BPQ7L27U.js} +77 -92
  81. package/dist/chunk-BPQ7L27U.js.map +1 -0
  82. package/dist/{chunk-7LF2OHIJ.js → chunk-BRHKW7GY.js} +2 -2
  83. package/dist/{chunk-2NLLXCJG.js → chunk-BXLOS5AJ.js} +2 -2
  84. package/dist/{chunk-LX4TNSAE.js → chunk-CBY54QYW.js} +4 -4
  85. package/dist/{chunk-CIAI24TQ.js → chunk-DGUVXXAU.js} +3 -3
  86. package/dist/{chunk-X7Y7WX73.js → chunk-DQEMWVMT.js} +1 -1
  87. package/dist/{chunk-QI5RDDEL.js → chunk-EDZNW3HE.js} +3 -3
  88. package/dist/chunk-FEHIOYML.js +168 -0
  89. package/dist/chunk-FEHIOYML.js.map +1 -0
  90. package/dist/{chunk-Z4N7SVVF.js → chunk-FZEEWOI2.js} +9 -4
  91. package/dist/chunk-FZEEWOI2.js.map +1 -0
  92. package/dist/{chunk-6YMEU6OQ.js → chunk-G72IPMR7.js} +2 -2
  93. package/dist/{chunk-7AF243WZ.js → chunk-GBVRVYF4.js} +1 -1
  94. package/dist/{chunk-FPEZ74F7.js → chunk-I2HTKOOP.js} +3 -3
  95. package/dist/{chunk-R7TZ2HCS.js → chunk-JG22O53B.js} +58 -3
  96. package/dist/chunk-JG22O53B.js.map +1 -0
  97. package/dist/{chunk-VPHSMJ2E.js → chunk-JPWSYHLB.js} +2 -2
  98. package/dist/{chunk-X7LEDA74.js → chunk-KFB4YNXM.js} +2 -2
  99. package/dist/{chunk-I5FLIB2J.js → chunk-KXWE62IH.js} +2 -2
  100. package/dist/chunk-LQWOFU6L.js +17 -0
  101. package/dist/chunk-LQWOFU6L.js.map +1 -0
  102. package/dist/{chunk-TSTI6A3A.js → chunk-LTYH2L6E.js} +13 -13
  103. package/dist/{chunk-ZUPKNWRZ.js → chunk-MIUL6AUZ.js} +3 -3
  104. package/dist/{chunk-EJY3HJMT.js → chunk-MYI3RKI6.js} +2 -2
  105. package/dist/{chunk-UCLMKNHA.js → chunk-N7V3P4V5.js} +2 -2
  106. package/dist/{chunk-NA56NSKL.js → chunk-O52TB5SL.js} +2 -2
  107. package/dist/{chunk-7KQB4EBS.js → chunk-OPPBTPUU.js} +4 -4
  108. package/dist/{chunk-ERPBRXVZ.js → chunk-PHKU6BZ2.js} +2 -2
  109. package/dist/{chunk-GTD4Q62X.js → chunk-PQHNZ63P.js} +4 -4
  110. package/dist/{chunk-FHKXVTM5.js → chunk-Q5XKKDFQ.js} +16 -16
  111. package/dist/{chunk-QRWMS6SI.js → chunk-Q6OL23WM.js} +2 -2
  112. package/dist/{chunk-V3KIRICY.js → chunk-QQYHYW2N.js} +3 -3
  113. package/dist/{chunk-YFCEBB5P.js → chunk-QTXNS3HB.js} +2 -2
  114. package/dist/{chunk-2QSZNTDO.js → chunk-RKNJBZ55.js} +4 -4
  115. package/dist/{chunk-E4KMY4KR.js → chunk-SNEUAZ6B.js} +2 -2
  116. package/dist/{chunk-F6JYBVL6.js → chunk-SY5JUJ2X.js} +52 -52
  117. package/dist/{chunk-EFKZT6AY.js → chunk-T42L3S6A.js} +6 -11
  118. package/dist/chunk-T42L3S6A.js.map +1 -0
  119. package/dist/{chunk-YXMHUBN2.js → chunk-TOP3FSDW.js} +25 -102
  120. package/dist/chunk-TOP3FSDW.js.map +1 -0
  121. package/dist/{chunk-PBRCYYO7.js → chunk-ULZFZL7K.js} +2 -2
  122. package/dist/{chunk-YYQAKIDJ.js → chunk-VD2OT77P.js} +2 -2
  123. package/dist/chunk-VD2OT77P.js.map +1 -0
  124. package/dist/{chunk-IPLYGWQF.js → chunk-VDX2J7OX.js} +6 -6
  125. package/dist/{chunk-UGHCZS6K.js → chunk-VFZQXYN5.js} +2 -2
  126. package/dist/{chunk-NKB43PGI.js → chunk-VYMICVRA.js} +2 -2
  127. package/dist/{chunk-OETHJBAL.js → chunk-WBPD6SBZ.js} +109 -116
  128. package/dist/chunk-WBPD6SBZ.js.map +1 -0
  129. package/dist/{chunk-2UM6WHME.js → chunk-XE2QCCT2.js} +2 -2
  130. package/dist/{chunk-SYVGVK4S.js → chunk-XTMYB2HY.js} +2 -2
  131. package/dist/{chunk-AYVCKGA6.js → chunk-YTXNDEUS.js} +2 -2
  132. package/dist/{chunk-3Z5TGRFA.js → chunk-ZOAAY2OE.js} +9 -9
  133. package/dist/{chunk-L3CHRBHE.js → chunk-ZRUEP4IK.js} +17 -11
  134. package/dist/chunk-ZRUEP4IK.js.map +1 -0
  135. package/dist/{chunk-PRDJMOST.js → chunk-ZVZHG7AI.js} +65 -15
  136. package/dist/chunk-ZVZHG7AI.js.map +1 -0
  137. package/dist/{chunk-RYST72N5.js → chunk-ZWYXSF2T.js} +4 -154
  138. package/dist/chunk-ZWYXSF2T.js.map +1 -0
  139. package/dist/{cli-BFBDYV0D.d.ts → cli-D0tV7eeU.d.ts} +2 -2
  140. package/dist/cli.d.ts +4 -3
  141. package/dist/cli.js +69 -65
  142. package/dist/compounding/engine.js +10 -10
  143. package/dist/config.js +4 -2
  144. package/dist/connectors/codex-materialize-runner.js +10 -10
  145. package/dist/connectors/index.js +10 -10
  146. package/dist/consolidation-provenance-check.js +2 -2
  147. package/dist/convergence-refresh.js +12 -12
  148. package/dist/conversation-index/backend.js +2 -2
  149. package/dist/corpus-watermark.js +12 -12
  150. package/dist/entity-retrieval.js +10 -10
  151. package/dist/explicit-capture.d.ts +2 -1
  152. package/dist/external-wiki-access.d.ts +3 -2
  153. package/dist/external-wiki-access.js +32 -28
  154. package/dist/external-wiki-mcp-tools.d.ts +3 -2
  155. package/dist/extraction-judge.d.ts +2 -1
  156. package/dist/extraction-judge.js +6 -1
  157. package/dist/extraction-normalization.js +2 -2
  158. package/dist/extraction-prompt.d.ts +20 -1
  159. package/dist/extraction-prompt.js +11 -1
  160. package/dist/extraction.js +13 -13
  161. package/dist/harmonic-retrieval.js +1 -1
  162. package/dist/included-memories.d.ts +11 -0
  163. package/dist/included-memories.js +14 -0
  164. package/dist/included-memories.js.map +1 -0
  165. package/dist/index.d.ts +6 -5
  166. package/dist/index.js +117 -114
  167. package/dist/lcm/index.js +3 -3
  168. package/dist/maintenance/memory-governance.js +10 -10
  169. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +10 -10
  170. package/dist/maintenance/rebuild-memory-projection.js +11 -11
  171. package/dist/mcp-memory-inspector-app.d.ts +3 -2
  172. package/dist/namespaces/migrate.js +11 -11
  173. package/dist/namespaces/search.js +4 -4
  174. package/dist/namespaces/storage.js +10 -10
  175. package/dist/offline-sync.js +2 -1
  176. package/dist/operator-doctor-corpus.js +13 -13
  177. package/dist/operator-toolkit.js +23 -21
  178. package/dist/orchestration/maintenance.js +16 -16
  179. package/dist/{orchestrator-CSc9GfQv.d.ts → orchestrator-Bay_AofR.d.ts} +2 -3
  180. package/dist/orchestrator.d.ts +2 -1
  181. package/dist/orchestrator.js +100 -97
  182. package/dist/{public-http-8PcrDIYi.d.ts → public-http-BtjiyKah.d.ts} +1 -1
  183. package/dist/recall-explain-renderer.d.ts +1 -0
  184. package/dist/recall-state.d.ts +6 -2
  185. package/dist/recall-state.js +6 -2
  186. package/dist/reconcile/cursor.js +7 -3
  187. package/dist/reconcile/cursor.js.map +1 -1
  188. package/dist/reconcile/manifest.js +3 -7
  189. package/dist/reconcile/plan.d.ts +15 -1
  190. package/dist/reconcile/plan.js +6 -10
  191. package/dist/resume-bundles.js +5 -3
  192. package/dist/search/factory.js +3 -3
  193. package/dist/search/index.js +3 -3
  194. package/dist/semantic-consolidation.js +16 -16
  195. package/dist/semantic-rule-promotion.js +10 -10
  196. package/dist/semantic-rule-verifier.js +10 -10
  197. package/dist/source-agent-qualifier.js +10 -10
  198. package/dist/storage.js +9 -9
  199. package/dist/support-passport/index.d.ts +6 -5
  200. package/dist/support-passport/index.js +34 -30
  201. package/dist/transfer/autodetect.js +1 -1
  202. package/dist/transfer/backup.js +2 -2
  203. package/dist/transfer/capsule-export.js +3 -3
  204. package/dist/transfer/capsule-import.js +2 -2
  205. package/dist/verified-recall.js +10 -10
  206. package/package.json +2 -2
  207. package/src/access-mcp-output-schemas.ts +1 -1
  208. package/src/access-recall-response.ts +4 -2
  209. package/src/access-recall-surface.ts +9 -9
  210. package/src/access-service-namespace.test.ts +9 -9
  211. package/src/access-service-raw-excerpt-read-gate.test.ts +1 -1
  212. package/src/calibration.ts +3 -1
  213. package/src/census-validation.ts +25 -0
  214. package/src/coding/architecture-surfaces.test.ts +9 -10
  215. package/src/coding/architecture-surfaces.ts +2 -35
  216. package/src/coding/codegraph-runtime-loader.test.ts +228 -0
  217. package/src/coding/codegraph-runtime.ts +30 -50
  218. package/src/coding/codegraph-surfaces.ts +2 -2
  219. package/src/coding/coding-knowledge-config.ts +35 -1
  220. package/src/coding/decision-surfaces.test.ts +9 -10
  221. package/src/coding/decision-surfaces.ts +2 -40
  222. package/src/coding/session-delta-surfaces.test.ts +9 -10
  223. package/src/coding/session-delta-surfaces.ts +2 -33
  224. package/src/extraction-judge.ts +3 -1
  225. package/src/extraction-output-language.test.ts +116 -0
  226. package/src/extraction-prompt.ts +70 -1
  227. package/src/extraction.ts +23 -95
  228. package/src/included-memories.ts +88 -0
  229. package/src/offline-sync.ts +4 -4
  230. package/src/orchestration/recall-internal-deps.ts +2 -4
  231. package/src/orchestration/recall-internal.ts +9 -13
  232. package/src/orchestration/recall-result-formatter-display-safe.test.ts +13 -16
  233. package/src/orchestration/recall-result-formatter.ts +32 -45
  234. package/src/orchestration/recall-section-coordinator.ts +20 -26
  235. package/src/orchestrator.ts +2 -4
  236. package/src/recall-explain-renderer.test.ts +4 -0
  237. package/src/recall-state.test.ts +108 -5
  238. package/src/recall-state.ts +85 -23
  239. package/src/recall-token-budget.test.ts +1 -1
  240. package/src/reconcile/census-parity.test.ts +152 -0
  241. package/src/reconcile/cursor.ts +5 -5
  242. package/src/reconcile/manifest.ts +4 -11
  243. package/src/reconcile/plan.ts +18 -15
  244. package/dist/chunk-EFKZT6AY.js.map +0 -1
  245. package/dist/chunk-IVXVLDNT.js.map +0 -1
  246. package/dist/chunk-L3CHRBHE.js.map +0 -1
  247. package/dist/chunk-OETHJBAL.js.map +0 -1
  248. package/dist/chunk-PRDJMOST.js.map +0 -1
  249. package/dist/chunk-R7TZ2HCS.js.map +0 -1
  250. package/dist/chunk-RYST72N5.js.map +0 -1
  251. package/dist/chunk-TWTUGCTY.js.map +0 -1
  252. package/dist/chunk-YXMHUBN2.js.map +0 -1
  253. package/dist/chunk-YYQAKIDJ.js.map +0 -1
  254. package/dist/chunk-Z4N7SVVF.js.map +0 -1
  255. /package/dist/{capsule-crypto-7FJQINUR.js.map → capsule-crypto-YO5QJ6L3.js.map} +0 -0
  256. /package/dist/{chunk-LEPOP46W.js.map → chunk-227UFSEQ.js.map} +0 -0
  257. /package/dist/{chunk-PB4WVYGC.js.map → chunk-3IMYRX3W.js.map} +0 -0
  258. /package/dist/{chunk-R6UMNP5C.js.map → chunk-3T6HIIKA.js.map} +0 -0
  259. /package/dist/{chunk-77QZW2D6.js.map → chunk-3TDAA7VA.js.map} +0 -0
  260. /package/dist/{chunk-DXDAQZ2K.js.map → chunk-42TIIO2M.js.map} +0 -0
  261. /package/dist/{chunk-Y7COCXY2.js.map → chunk-4F67JJPG.js.map} +0 -0
  262. /package/dist/{chunk-OW7NVMGQ.js.map → chunk-5OOTHWGJ.js.map} +0 -0
  263. /package/dist/{chunk-KYTRF64R.js.map → chunk-5SCFDQEJ.js.map} +0 -0
  264. /package/dist/{chunk-DYZR3Z6D.js.map → chunk-5TF5STAV.js.map} +0 -0
  265. /package/dist/{chunk-GG4DN63W.js.map → chunk-62Y5AGCM.js.map} +0 -0
  266. /package/dist/{chunk-PMVPCZJZ.js.map → chunk-6433HV72.js.map} +0 -0
  267. /package/dist/{chunk-KHCUVYCY.js.map → chunk-6UKSOXAO.js.map} +0 -0
  268. /package/dist/{chunk-GF7RQWXC.js.map → chunk-AJRJDXYR.js.map} +0 -0
  269. /package/dist/{chunk-YEQCMA5L.js.map → chunk-BOSIHHOH.js.map} +0 -0
  270. /package/dist/{chunk-7LF2OHIJ.js.map → chunk-BRHKW7GY.js.map} +0 -0
  271. /package/dist/{chunk-2NLLXCJG.js.map → chunk-BXLOS5AJ.js.map} +0 -0
  272. /package/dist/{chunk-LX4TNSAE.js.map → chunk-CBY54QYW.js.map} +0 -0
  273. /package/dist/{chunk-CIAI24TQ.js.map → chunk-DGUVXXAU.js.map} +0 -0
  274. /package/dist/{chunk-X7Y7WX73.js.map → chunk-DQEMWVMT.js.map} +0 -0
  275. /package/dist/{chunk-QI5RDDEL.js.map → chunk-EDZNW3HE.js.map} +0 -0
  276. /package/dist/{chunk-6YMEU6OQ.js.map → chunk-G72IPMR7.js.map} +0 -0
  277. /package/dist/{chunk-7AF243WZ.js.map → chunk-GBVRVYF4.js.map} +0 -0
  278. /package/dist/{chunk-FPEZ74F7.js.map → chunk-I2HTKOOP.js.map} +0 -0
  279. /package/dist/{chunk-VPHSMJ2E.js.map → chunk-JPWSYHLB.js.map} +0 -0
  280. /package/dist/{chunk-X7LEDA74.js.map → chunk-KFB4YNXM.js.map} +0 -0
  281. /package/dist/{chunk-I5FLIB2J.js.map → chunk-KXWE62IH.js.map} +0 -0
  282. /package/dist/{chunk-TSTI6A3A.js.map → chunk-LTYH2L6E.js.map} +0 -0
  283. /package/dist/{chunk-ZUPKNWRZ.js.map → chunk-MIUL6AUZ.js.map} +0 -0
  284. /package/dist/{chunk-EJY3HJMT.js.map → chunk-MYI3RKI6.js.map} +0 -0
  285. /package/dist/{chunk-UCLMKNHA.js.map → chunk-N7V3P4V5.js.map} +0 -0
  286. /package/dist/{chunk-NA56NSKL.js.map → chunk-O52TB5SL.js.map} +0 -0
  287. /package/dist/{chunk-7KQB4EBS.js.map → chunk-OPPBTPUU.js.map} +0 -0
  288. /package/dist/{chunk-ERPBRXVZ.js.map → chunk-PHKU6BZ2.js.map} +0 -0
  289. /package/dist/{chunk-GTD4Q62X.js.map → chunk-PQHNZ63P.js.map} +0 -0
  290. /package/dist/{chunk-FHKXVTM5.js.map → chunk-Q5XKKDFQ.js.map} +0 -0
  291. /package/dist/{chunk-QRWMS6SI.js.map → chunk-Q6OL23WM.js.map} +0 -0
  292. /package/dist/{chunk-V3KIRICY.js.map → chunk-QQYHYW2N.js.map} +0 -0
  293. /package/dist/{chunk-YFCEBB5P.js.map → chunk-QTXNS3HB.js.map} +0 -0
  294. /package/dist/{chunk-2QSZNTDO.js.map → chunk-RKNJBZ55.js.map} +0 -0
  295. /package/dist/{chunk-E4KMY4KR.js.map → chunk-SNEUAZ6B.js.map} +0 -0
  296. /package/dist/{chunk-F6JYBVL6.js.map → chunk-SY5JUJ2X.js.map} +0 -0
  297. /package/dist/{chunk-PBRCYYO7.js.map → chunk-ULZFZL7K.js.map} +0 -0
  298. /package/dist/{chunk-IPLYGWQF.js.map → chunk-VDX2J7OX.js.map} +0 -0
  299. /package/dist/{chunk-UGHCZS6K.js.map → chunk-VFZQXYN5.js.map} +0 -0
  300. /package/dist/{chunk-NKB43PGI.js.map → chunk-VYMICVRA.js.map} +0 -0
  301. /package/dist/{chunk-2UM6WHME.js.map → chunk-XE2QCCT2.js.map} +0 -0
  302. /package/dist/{chunk-SYVGVK4S.js.map → chunk-XTMYB2HY.js.map} +0 -0
  303. /package/dist/{chunk-AYVCKGA6.js.map → chunk-YTXNDEUS.js.map} +0 -0
  304. /package/dist/{chunk-3Z5TGRFA.js.map → chunk-ZOAAY2OE.js.map} +0 -0
@@ -3,69 +3,69 @@ import {
3
3
  blendGraphExpandedRecallScore,
4
4
  graphPathRelativeToStorage,
5
5
  mergeGraphExpandedResults
6
- } from "./chunk-OETHJBAL.js";
7
- import "./chunk-Y7COCXY2.js";
8
- import "./chunk-PB4WVYGC.js";
9
- import "./chunk-LX4TNSAE.js";
10
- import "./chunk-I74SUMNI.js";
11
- import "./chunk-ILNPU5W5.js";
12
- import "./chunk-7HYPN2GC.js";
6
+ } from "./chunk-WBPD6SBZ.js";
7
+ import "./chunk-4F67JJPG.js";
8
+ import "./chunk-3IMYRX3W.js";
13
9
  import {
14
10
  formatCompressionGuidelinesForRecall
15
11
  } from "./chunk-UXREWVW4.js";
12
+ import "./chunk-CBY54QYW.js";
13
+ import "./chunk-I74SUMNI.js";
14
+ import "./chunk-ILNPU5W5.js";
15
+ import "./chunk-7HYPN2GC.js";
16
16
  import "./chunk-666A3MOW.js";
17
- import "./chunk-KBL3JJR6.js";
18
- import "./chunk-FQ7HAWWC.js";
19
17
  import "./chunk-VDC6RZI4.js";
20
- import "./chunk-UWK5OXUJ.js";
21
18
  import "./chunk-M4AHBM72.js";
22
19
  import "./chunk-TPDBFYEG.js";
23
20
  import "./chunk-UXPUUL3G.js";
24
21
  import "./chunk-DDA47TES.js";
25
22
  import "./chunk-ZPUIRTIZ.js";
23
+ import "./chunk-UWK5OXUJ.js";
24
+ import "./chunk-C5JF6EZ7.js";
25
+ import "./chunk-KBL3JJR6.js";
26
+ import "./chunk-FQ7HAWWC.js";
26
27
  import "./chunk-WVP2I6C5.js";
27
28
  import "./chunk-7N4KAIGN.js";
29
+ import "./chunk-SNEUAZ6B.js";
30
+ import "./chunk-VI637ILW.js";
28
31
  import "./chunk-V5OCT34X.js";
29
32
  import "./chunk-TECVW3JP.js";
30
- import "./chunk-C5JF6EZ7.js";
31
33
  import "./chunk-KWIGDKM2.js";
32
- import "./chunk-E4KMY4KR.js";
33
- import "./chunk-VI637ILW.js";
34
- import "./chunk-47DU4SGJ.js";
35
34
  import "./chunk-SEF4IOFE.js";
35
+ import "./chunk-47DU4SGJ.js";
36
+ import "./chunk-YRFAYOFQ.js";
37
+ import "./chunk-EGBDFJ36.js";
36
38
  import "./chunk-ECZU5BJH.js";
37
39
  import "./chunk-UHGBNIOS.js";
38
40
  import "./chunk-2NKY7OC6.js";
39
41
  import "./chunk-4EX5WZ4M.js";
40
- import "./chunk-YRFAYOFQ.js";
41
- import "./chunk-EGBDFJ36.js";
42
42
  import "./chunk-EUYWQ7TS.js";
43
43
  import "./chunk-6DNMUYEE.js";
44
44
  import "./chunk-T67LUYCR.js";
45
45
  import "./chunk-ODZKV2F7.js";
46
+ import "./chunk-QJ622LTI.js";
47
+ import "./chunk-ZOKZIR5K.js";
46
48
  import "./chunk-5IZL4DCV.js";
47
49
  import "./chunk-UYCIS6V5.js";
50
+ import "./chunk-KATEWTQJ.js";
48
51
  import "./chunk-LUDXM7MD.js";
49
52
  import "./chunk-6TCXIRP5.js";
50
- import "./chunk-QJ622LTI.js";
51
- import "./chunk-ZOKZIR5K.js";
52
53
  import "./chunk-X7XN6YU4.js";
53
- import "./chunk-KATEWTQJ.js";
54
- import "./chunk-YDBIWGNI.js";
55
- import "./chunk-PRDJMOST.js";
56
54
  import "./chunk-D3V3UMET.js";
55
+ import "./chunk-YDBIWGNI.js";
57
56
  import "./chunk-ZZTOURJI.js";
58
57
  import "./chunk-ROI7BK7H.js";
59
58
  import "./chunk-23L3IXFD.js";
60
59
  import "./chunk-3GPTTA4J.js";
61
60
  import "./chunk-H63EDPFJ.js";
62
61
  import "./chunk-HTIIXNJQ.js";
62
+ import "./chunk-XXSOVESA.js";
63
63
  import "./chunk-PHRLJFWZ.js";
64
64
  import "./chunk-64NJRYU2.js";
65
65
  import "./chunk-MEW53VQJ.js";
66
66
  import "./chunk-YAZNBMNF.js";
67
- import "./chunk-XXSOVESA.js";
68
- import "./chunk-YXMHUBN2.js";
67
+ import "./chunk-OH7QLI6W.js";
68
+ import "./chunk-TOP3FSDW.js";
69
69
  import "./chunk-4RA3C3EV.js";
70
70
  import "./chunk-RWMSMTQP.js";
71
71
  import "./chunk-4NZHHGVL.js";
@@ -75,13 +75,12 @@ import "./chunk-WLZYGLJ4.js";
75
75
  import "./chunk-SZ4HFZKB.js";
76
76
  import "./chunk-4POAMKV6.js";
77
77
  import "./chunk-WAS4HV46.js";
78
- import "./chunk-OH7QLI6W.js";
79
78
  import "./chunk-BLDBT6HZ.js";
80
79
  import "./chunk-PWFCHOB3.js";
81
- import "./chunk-TWTUGCTY.js";
82
- import "./chunk-6YMEU6OQ.js";
83
- import "./chunk-R7TZ2HCS.js";
80
+ import "./chunk-3YTTAGPB.js";
81
+ import "./chunk-G72IPMR7.js";
84
82
  import "./chunk-VL35ZFSZ.js";
83
+ import "./chunk-T3GIETKV.js";
85
84
  import "./chunk-645WOU5I.js";
86
85
  import "./chunk-BUYVPUEM.js";
87
86
  import "./chunk-IAIPNEHD.js";
@@ -89,85 +88,85 @@ import "./chunk-TVIVY7KU.js";
89
88
  import "./chunk-YVVQUAOO.js";
90
89
  import "./chunk-LUPVCGYK.js";
91
90
  import "./chunk-DGFU5MSX.js";
92
- import "./chunk-PBRCYYO7.js";
91
+ import "./chunk-DFEODULB.js";
92
+ import "./chunk-ULZFZL7K.js";
93
93
  import "./chunk-GKUA4MGB.js";
94
94
  import "./chunk-5AUY5Z5E.js";
95
95
  import "./chunk-SVH57F5Z.js";
96
- import "./chunk-T3GIETKV.js";
97
96
  import "./chunk-J6QIAYNR.js";
98
97
  import "./chunk-VEWZZM3H.js";
99
98
  import "./chunk-6NAPOLRO.js";
100
99
  import "./chunk-PYIR4SSB.js";
101
- import "./chunk-DFEODULB.js";
102
- import "./chunk-SYVGVK4S.js";
100
+ import "./chunk-XTMYB2HY.js";
103
101
  import "./chunk-3I4FUAVJ.js";
104
- import "./chunk-F6JYBVL6.js";
102
+ import "./chunk-SY5JUJ2X.js";
105
103
  import "./chunk-MMACM5G2.js";
106
104
  import "./chunk-54BGIBCR.js";
107
105
  import "./chunk-H4CKS5B2.js";
108
106
  import "./chunk-FXZTL7F7.js";
109
- import "./chunk-UP6MOYCB.js";
110
- import "./chunk-BV2TIZ4F.js";
111
107
  import "./chunk-HDDRVXX4.js";
112
108
  import "./chunk-PYHOAXTI.js";
109
+ import "./chunk-UP6MOYCB.js";
110
+ import "./chunk-BV2TIZ4F.js";
113
111
  import "./chunk-Z734BLO3.js";
114
112
  import "./chunk-OZKVVUJB.js";
115
113
  import "./chunk-2DL3OFLD.js";
116
114
  import "./chunk-G4IAEX6D.js";
117
- import "./chunk-2NLLXCJG.js";
115
+ import "./chunk-BXLOS5AJ.js";
118
116
  import "./chunk-765K3SAT.js";
119
117
  import "./chunk-TBUEE7XF.js";
118
+ import "./chunk-PYIFUBRK.js";
120
119
  import "./chunk-FGDKJJZS.js";
121
120
  import "./chunk-AJVLDJU6.js";
121
+ import "./chunk-DQTCGVFK.js";
122
122
  import "./chunk-EEC4PCG5.js";
123
- import "./chunk-PYIFUBRK.js";
124
123
  import "./chunk-IIFFC3RL.js";
125
- import "./chunk-QRWMS6SI.js";
126
- import "./chunk-DQTCGVFK.js";
127
124
  import "./chunk-AXFWMRKI.js";
125
+ import "./chunk-Q6OL23WM.js";
128
126
  import "./chunk-YLBE6PLR.js";
129
- import "./chunk-CDKHKZL5.js";
130
127
  import "./chunk-HSSERO3E.js";
131
128
  import "./chunk-NOUJNHWG.js";
132
- import "./chunk-2UM6WHME.js";
129
+ import "./chunk-CDKHKZL5.js";
130
+ import "./chunk-XE2QCCT2.js";
133
131
  import "./chunk-HL4DB7TO.js";
134
132
  import "./chunk-HDQUQBPW.js";
135
133
  import "./chunk-6FC3IZ26.js";
136
134
  import "./chunk-OJP3N7UK.js";
137
- import "./chunk-7LF2OHIJ.js";
138
- import "./chunk-R6UMNP5C.js";
139
- import "./chunk-OW7NVMGQ.js";
135
+ import "./chunk-BRHKW7GY.js";
136
+ import "./chunk-3T6HIIKA.js";
137
+ import "./chunk-5OOTHWGJ.js";
140
138
  import "./chunk-NRLELHAY.js";
141
139
  import "./chunk-AM4T6CHX.js";
142
140
  import "./chunk-7DRSWPUV.js";
143
- import "./chunk-3T74IZB3.js";
144
- import "./chunk-2LA3H54D.js";
145
- import "./chunk-3Z5TGRFA.js";
146
- import "./chunk-V3KIRICY.js";
141
+ import "./chunk-ZOAAY2OE.js";
142
+ import "./chunk-QQYHYW2N.js";
147
143
  import "./chunk-KFY3SGN7.js";
144
+ import "./chunk-3T74IZB3.js";
148
145
  import "./chunk-CMTINOFS.js";
149
- import "./chunk-UGHCZS6K.js";
146
+ import "./chunk-2LA3H54D.js";
147
+ import "./chunk-VFZQXYN5.js";
150
148
  import "./chunk-RMMVQQA6.js";
151
149
  import "./chunk-UR6PBX2J.js";
152
150
  import "./chunk-6GUG4YNM.js";
153
151
  import "./chunk-JXS5PDQ7.js";
154
- import "./chunk-7AF243WZ.js";
152
+ import "./chunk-GBVRVYF4.js";
155
153
  import "./chunk-C7SRUWBW.js";
156
154
  import "./chunk-OZKOPQCM.js";
157
155
  import "./chunk-MCA2X4WH.js";
156
+ import "./chunk-ACPCA4NO.js";
158
157
  import "./chunk-YNDLCWXS.js";
159
158
  import "./chunk-AUDJPF4N.js";
160
159
  import "./chunk-44442YCH.js";
161
160
  import "./chunk-Y4Z4I6WK.js";
162
- import "./chunk-KHCUVYCY.js";
161
+ import "./chunk-6UKSOXAO.js";
163
162
  import "./chunk-KJTKLXTH.js";
164
163
  import "./chunk-2DQ2XREU.js";
165
- import "./chunk-ACPCA4NO.js";
166
164
  import "./chunk-OKTXM5H4.js";
167
- import "./chunk-7KQB4EBS.js";
165
+ import "./chunk-OPPBTPUU.js";
168
166
  import "./chunk-NOB2T2FC.js";
169
167
  import "./chunk-CUDSA46O.js";
170
- import "./chunk-DXDAQZ2K.js";
168
+ import "./chunk-JG22O53B.js";
169
+ import "./chunk-42TIIO2M.js";
171
170
  import "./chunk-5JMAGU26.js";
172
171
  import "./chunk-MYVPLJOO.js";
173
172
  import "./chunk-H3FZVNRN.js";
@@ -178,7 +177,7 @@ import "./chunk-2GBFKHBZ.js";
178
177
  import "./chunk-6TBIWIAG.js";
179
178
  import "./chunk-2AD5SXO4.js";
180
179
  import "./chunk-YDPAE2RD.js";
181
- import "./chunk-RYST72N5.js";
180
+ import "./chunk-ZWYXSF2T.js";
182
181
  import "./chunk-ZKOPY4WW.js";
183
182
  import "./chunk-62OKGIJA.js";
184
183
  import "./chunk-7RAJ3GXO.js";
@@ -196,32 +195,32 @@ import "./chunk-KFZY2OFH.js";
196
195
  import "./chunk-QW27DOHG.js";
197
196
  import "./chunk-C6WMSXCJ.js";
198
197
  import "./chunk-KD3QD3A5.js";
199
- import "./chunk-TSTI6A3A.js";
198
+ import "./chunk-LTYH2L6E.js";
200
199
  import "./chunk-V7IZKJI3.js";
200
+ import "./chunk-TB6CBZ5V.js";
201
201
  import "./chunk-SEDEKFYQ.js";
202
- import "./chunk-2QSZNTDO.js";
202
+ import "./chunk-RKNJBZ55.js";
203
+ import "./chunk-J64TK33U.js";
203
204
  import "./chunk-RSUYKGGZ.js";
204
205
  import "./chunk-42NQ7AVG.js";
205
206
  import "./chunk-TMSXWOBZ.js";
206
- import "./chunk-TB6CBZ5V.js";
207
- import "./chunk-J64TK33U.js";
208
207
  import "./chunk-7RXCMVFQ.js";
209
208
  import "./chunk-3HSRWJTC.js";
210
- import "./chunk-NA56NSKL.js";
211
- import "./chunk-UCLMKNHA.js";
212
- import "./chunk-VPHSMJ2E.js";
213
- import "./chunk-X7LEDA74.js";
214
- import "./chunk-GTD4Q62X.js";
209
+ import "./chunk-O52TB5SL.js";
210
+ import "./chunk-N7V3P4V5.js";
211
+ import "./chunk-JPWSYHLB.js";
212
+ import "./chunk-KFB4YNXM.js";
213
+ import "./chunk-PQHNZ63P.js";
215
214
  import "./chunk-HIEWDJ2O.js";
216
215
  import "./chunk-A5KNZSNA.js";
217
216
  import "./chunk-D24OXEPB.js";
218
- import "./chunk-DYZR3Z6D.js";
219
- import "./chunk-NKB43PGI.js";
220
- import "./chunk-I5FLIB2J.js";
217
+ import "./chunk-5TF5STAV.js";
218
+ import "./chunk-VYMICVRA.js";
219
+ import "./chunk-KXWE62IH.js";
221
220
  import "./chunk-7T4TOGMS.js";
222
221
  import "./chunk-7YQ6ESEA.js";
223
- import "./chunk-CIAI24TQ.js";
224
- import "./chunk-QI5RDDEL.js";
222
+ import "./chunk-DGUVXXAU.js";
223
+ import "./chunk-EDZNW3HE.js";
225
224
  import "./chunk-LTBKKSCX.js";
226
225
  import "./chunk-EQWEIIKQ.js";
227
226
  import "./chunk-7BY7V4YX.js";
@@ -230,39 +229,41 @@ import "./chunk-35NN3ZFA.js";
230
229
  import "./chunk-CEN6DW6X.js";
231
230
  import "./chunk-T4WDJPEZ.js";
232
231
  import "./chunk-56BSXSHC.js";
233
- import "./chunk-YYQAKIDJ.js";
232
+ import "./chunk-VD2OT77P.js";
234
233
  import "./chunk-TIDEL77O.js";
235
234
  import "./chunk-GZ3R6XOE.js";
236
235
  import "./chunk-CK5KOVHW.js";
237
236
  import "./chunk-DJUKBGAD.js";
238
237
  import "./chunk-G73MCJKL.js";
239
- import "./chunk-ERPBRXVZ.js";
238
+ import "./chunk-PHKU6BZ2.js";
240
239
  import {
241
240
  filterRecallCandidates,
242
241
  hasIdentityRecoveryIntent,
243
242
  resolveEffectiveIdentityInjectionMode
244
- } from "./chunk-IVXVLDNT.js";
243
+ } from "./chunk-BPQ7L27U.js";
245
244
  import "./chunk-GDASG7NC.js";
246
245
  import "./chunk-GDB4J2H3.js";
247
- import "./chunk-PMVPCZJZ.js";
246
+ import "./chunk-6433HV72.js";
248
247
  import "./chunk-VQ7B2Q6M.js";
249
248
  import "./chunk-PJSK6OJM.js";
250
- import "./chunk-5QZR2RA3.js";
251
249
  import "./chunk-GNVZQ5JN.js";
252
250
  import "./chunk-YN2UN7N3.js";
251
+ import "./chunk-5QZR2RA3.js";
253
252
  import "./chunk-P5FPO2BR.js";
254
253
  import "./chunk-S4DDLTPX.js";
254
+ import "./chunk-ZVZHG7AI.js";
255
255
  import "./chunk-H7XKCNR6.js";
256
256
  import "./chunk-3F3CVVDS.js";
257
257
  import "./chunk-SOBJ6NEY.js";
258
258
  import "./chunk-QICOU4RY.js";
259
- import "./chunk-YFCEBB5P.js";
259
+ import "./chunk-QTXNS3HB.js";
260
260
  import "./chunk-CVILPI77.js";
261
+ import "./chunk-EIR5VLIH.js";
261
262
  import "./chunk-2HIJHXB3.js";
262
263
  import "./chunk-AQEJKOKI.js";
263
264
  import "./chunk-HTP6XRUI.js";
264
- import "./chunk-EIR5VLIH.js";
265
265
  import "./chunk-IISBCCWR.js";
266
+ import "./chunk-2YA5N2BY.js";
266
267
  import "./chunk-PD66CVSD.js";
267
268
  import "./chunk-LTHVM4XN.js";
268
269
  import "./chunk-EI6V5UXY.js";
@@ -277,10 +278,10 @@ import "./chunk-QDW3E4RD.js";
277
278
  import "./chunk-NS5ETDYD.js";
278
279
  import "./chunk-C37ZRXX7.js";
279
280
  import "./chunk-7ZNJN5WZ.js";
280
- import "./chunk-77QZW2D6.js";
281
- import "./chunk-EJY3HJMT.js";
282
- import "./chunk-ZUPKNWRZ.js";
283
- import "./chunk-KYTRF64R.js";
281
+ import "./chunk-3TDAA7VA.js";
282
+ import "./chunk-MYI3RKI6.js";
283
+ import "./chunk-MIUL6AUZ.js";
284
+ import "./chunk-5SCFDQEJ.js";
284
285
  import "./chunk-UFGFMWAD.js";
285
286
  import "./chunk-YMOPYG3K.js";
286
287
  import "./chunk-2LSZVONP.js";
@@ -329,16 +330,16 @@ import "./chunk-CSAKJVXW.js";
329
330
  import "./chunk-K2XUWZBM.js";
330
331
  import "./chunk-OD4FM2U7.js";
331
332
  import "./chunk-ZY2MNJR6.js";
332
- import "./chunk-YEQCMA5L.js";
333
+ import "./chunk-BOSIHHOH.js";
333
334
  import "./chunk-RDFF2NAU.js";
334
335
  import "./chunk-GPFZFCRN.js";
335
- import "./chunk-AYVCKGA6.js";
336
- import "./chunk-FHKXVTM5.js";
337
- import "./chunk-46WM6JX2.js";
336
+ import "./chunk-YTXNDEUS.js";
337
+ import "./chunk-Q5XKKDFQ.js";
338
338
  import "./chunk-UHVXE24Y.js";
339
+ import "./chunk-46WM6JX2.js";
339
340
  import "./chunk-SXIMQLGV.js";
340
- import "./chunk-GF7RQWXC.js";
341
- import "./chunk-GG4DN63W.js";
341
+ import "./chunk-AJRJDXYR.js";
342
+ import "./chunk-62Y5AGCM.js";
342
343
  import "./chunk-OQIRBGUU.js";
343
344
  import "./chunk-VANZKHTN.js";
344
345
  import "./chunk-CYEPCZN5.js";
@@ -347,15 +348,15 @@ import "./chunk-VYISFWVX.js";
347
348
  import "./chunk-W7IGLX4G.js";
348
349
  import "./chunk-6KTXE6A3.js";
349
350
  import "./chunk-GUMZC2BO.js";
350
- import "./chunk-LEPOP46W.js";
351
+ import "./chunk-227UFSEQ.js";
352
+ import "./chunk-ET356KSB.js";
351
353
  import "./chunk-72A4L5JJ.js";
352
354
  import "./chunk-A7Q43EUZ.js";
353
- import "./chunk-ET356KSB.js";
354
355
  import "./chunk-S2V7RUCL.js";
355
356
  import "./chunk-AR253JBM.js";
357
+ import "./chunk-SCU65EZI.js";
356
358
  import "./chunk-PO7NXBG2.js";
357
359
  import "./chunk-S2HLHAZ4.js";
358
- import "./chunk-SCU65EZI.js";
359
360
  import "./chunk-DM2T26WE.js";
360
361
  import "./chunk-LDXUBPMO.js";
361
362
  import "./chunk-UG6VXIOK.js";
@@ -363,16 +364,16 @@ import "./chunk-AAD2ZS6P.js";
363
364
  import "./chunk-MUJ4QFUQ.js";
364
365
  import "./chunk-LCU5R6TQ.js";
365
366
  import "./chunk-BT7NVCML.js";
366
- import "./chunk-YXZG5TVN.js";
367
367
  import "./chunk-3ONXXHQO.js";
368
+ import "./chunk-YXZG5TVN.js";
368
369
  import "./chunk-5GINB5LC.js";
369
- import "./chunk-G7D6GZ5J.js";
370
370
  import "./chunk-UFKPQBXH.js";
371
371
  import "./chunk-XCB6QDL6.js";
372
372
  import "./chunk-RBOJCG4T.js";
373
373
  import "./chunk-ZVPVTPGI.js";
374
374
  import "./chunk-5WITETWU.js";
375
375
  import "./chunk-6CIAGZ6X.js";
376
+ import "./chunk-G7D6GZ5J.js";
376
377
  import "./chunk-VYEPACWY.js";
377
378
  import "./chunk-URS5GSM7.js";
378
379
  import "./chunk-ZLQ37WJX.js";
@@ -387,6 +388,7 @@ import "./chunk-RGMVMVMF.js";
387
388
  import "./chunk-N7RWREIQ.js";
388
389
  import "./chunk-UBCBDJOB.js";
389
390
  import "./chunk-TOTT6S2V.js";
391
+ import "./chunk-FEHIOYML.js";
390
392
  import "./chunk-P32IDSHD.js";
391
393
  import "./chunk-WNIUPHWV.js";
392
394
  import "./chunk-IJ6WHMFB.js";
@@ -403,10 +405,10 @@ import "./chunk-Z7L72ZHL.js";
403
405
  import "./chunk-4O4TKIXQ.js";
404
406
  import "./chunk-TBBDFYXW.js";
405
407
  import "./chunk-YCVB7X56.js";
406
- import "./chunk-IPLYGWQF.js";
407
- import "./chunk-J4EB7DNW.js";
408
+ import "./chunk-VDX2J7OX.js";
408
409
  import "./chunk-WEHSQBFR.js";
409
- import "./chunk-X7Y7WX73.js";
410
+ import "./chunk-DQEMWVMT.js";
411
+ import "./chunk-J4EB7DNW.js";
410
412
  import "./chunk-BJMBJZ2Y.js";
411
413
  import "./chunk-UKJAGEXH.js";
412
414
  import "./chunk-FP2373TW.js";
@@ -417,9 +419,9 @@ import "./chunk-3QL24R5Y.js";
417
419
  import "./chunk-SYOIVK7K.js";
418
420
  import "./chunk-ZN7SMKAK.js";
419
421
  import "./chunk-LNEWDF2A.js";
420
- import "./chunk-FPEZ74F7.js";
421
- import "./chunk-EFKZT6AY.js";
422
- import "./chunk-L3CHRBHE.js";
422
+ import "./chunk-I2HTKOOP.js";
423
+ import "./chunk-T42L3S6A.js";
424
+ import "./chunk-ZRUEP4IK.js";
423
425
  import "./chunk-HZNYJN77.js";
424
426
  import "./chunk-Q57GOHLF.js";
425
427
  import "./chunk-AW4QUFQF.js";
@@ -439,11 +441,12 @@ import "./chunk-JDSVLVCG.js";
439
441
  import "./chunk-HBVPYRDW.js";
440
442
  import "./chunk-5GKPFL3S.js";
441
443
  import "./chunk-JAKIDQB2.js";
442
- import "./chunk-Z4N7SVVF.js";
444
+ import "./chunk-FZEEWOI2.js";
443
445
  import "./chunk-UI3NYK34.js";
444
446
  import "./chunk-GCGJW34D.js";
445
447
  import "./chunk-AREGMX2J.js";
446
448
  import "./chunk-LC2BDILZ.js";
449
+ import "./chunk-LQWOFU6L.js";
447
450
  import "./chunk-P7FMDTKL.js";
448
451
  import "./chunk-MZWSOLMT.js";
449
452
  import "./chunk-MRV7VSQK.js";
@@ -1,5 +1,5 @@
1
1
  import { IncomingMessage, ServerResponse } from 'node:http';
2
- import { f as EngramAccessService } from './access-service-cKQrte9Z.js';
2
+ import { f as EngramAccessService } from './access-service-BaPa_km6.js';
3
3
 
4
4
  declare const SUPPORT_PASSPORT_PUBLIC_HTTP_ROUTES: readonly [{
5
5
  readonly method: "GET";
@@ -10,6 +10,7 @@ import './external-wiki-config.js';
10
10
  import './contradiction-config.js';
11
11
  import './graph-path-scoring-config.js';
12
12
  import './types-continuity.js';
13
+ import './included-memories.js';
13
14
  import './memory-provenance.js';
14
15
  import './user-model.js';
15
16
 
@@ -1,6 +1,8 @@
1
1
  import { HeldFileLockOptions } from './utils/serialize-mutations.js';
2
2
  import { SearchDegradation } from './search/port.js';
3
3
  import { R as RecallPlanMode, I as IdentityInjectionMode, b as RecallTierExplain } from './types-CBEAYU76.js';
4
+ import { IncludedMemory } from './included-memories.js';
5
+ export { coerceIncludedMemories } from './included-memories.js';
4
6
  import './message-parts/index.js';
5
7
  import './bounded-jsonl-state.js';
6
8
  import './operator-doctor-types.js';
@@ -31,6 +33,7 @@ interface LastRecallSnapshot {
31
33
  queryHash: string;
32
34
  queryLen: number;
33
35
  memoryIds: string[];
36
+ includedMemories?: IncludedMemory[];
34
37
  namespace?: string;
35
38
  recallNamespaces?: string[];
36
39
  traceId?: string;
@@ -164,7 +167,8 @@ declare class LastRecallStore {
164
167
  record(opts: {
165
168
  sessionKey: string;
166
169
  query: string;
167
- memoryIds: string[];
170
+ memoryIds?: string[];
171
+ includedMemories?: IncludedMemory[];
168
172
  namespace?: string;
169
173
  recallNamespaces?: string[];
170
174
  traceId?: string;
@@ -387,4 +391,4 @@ declare class RecallHandleHistoryStore {
387
391
  private flush;
388
392
  }
389
393
 
390
- export { type DrainPendingImpressionsResult, type GraphRecallExpandedEntry, type LastRecallBudgetSummary, type LastRecallSnapshot, LastRecallStore, RecallHandleHistoryStore, type TierMigrationCycleSummary, type TierMigrationStatusSnapshot, TierMigrationStatusStore, clampGraphRecallExpandedEntries };
394
+ export { type DrainPendingImpressionsResult, type GraphRecallExpandedEntry, IncludedMemory, type LastRecallBudgetSummary, type LastRecallSnapshot, LastRecallStore, RecallHandleHistoryStore, type TierMigrationCycleSummary, type TierMigrationStatusSnapshot, TierMigrationStatusStore, clampGraphRecallExpandedEntries };
@@ -3,7 +3,10 @@ import {
3
3
  RecallHandleHistoryStore,
4
4
  TierMigrationStatusStore,
5
5
  clampGraphRecallExpandedEntries
6
- } from "./chunk-PRDJMOST.js";
6
+ } from "./chunk-ZVZHG7AI.js";
7
+ import {
8
+ coerceIncludedMemories
9
+ } from "./chunk-2YA5N2BY.js";
7
10
  import "./chunk-AW4QUFQF.js";
8
11
  import "./chunk-GCASGYIO.js";
9
12
  import "./chunk-FFAZ2XFU.js";
@@ -14,6 +17,7 @@ export {
14
17
  LastRecallStore,
15
18
  RecallHandleHistoryStore,
16
19
  TierMigrationStatusStore,
17
- clampGraphRecallExpandedEntries
20
+ clampGraphRecallExpandedEntries,
21
+ coerceIncludedMemories
18
22
  };
19
23
  //# sourceMappingURL=recall-state.js.map
@@ -1,3 +1,10 @@
1
+ import {
2
+ semanticAgreementKey
3
+ } from "../chunk-ZRUEP4IK.js";
4
+ import "../chunk-HBVPYRDW.js";
5
+ import "../chunk-GCGJW34D.js";
6
+ import "../chunk-LQWOFU6L.js";
7
+ import "../chunk-VUFL7X3H.js";
1
8
  import "../chunk-PZ5AY32C.js";
2
9
 
3
10
  // src/reconcile/cursor.ts
@@ -45,9 +52,6 @@ function digestAfterReconcile(entry) {
45
52
  if (entry.localSha256 && entry.peerSha256 && entry.localSha256 !== entry.peerSha256) return void 0;
46
53
  return entry.localSha256 ?? entry.peerSha256;
47
54
  }
48
- function semanticAgreementKey(agreement) {
49
- return `${agreement.local.path}\0${agreement.peer.path}`;
50
- }
51
55
  function deriveConvergeCursorBase(entries, namespace, priorSemanticAgreements = []) {
52
56
  const baseFiles = [];
53
57
  const semanticAgreementsByPathPair = new Map(
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/reconcile/cursor.ts"],"sourcesContent":["import { createHash, randomUUID } from \"node:crypto\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\nimport type { ReconcilePlanEntry, ReconcileSemanticAgreement } from \"./plan.js\";\n\nexport type ConvergeRefreshTarget = \"local\" | \"receiver\";\n\nexport interface ConvergeCursorFileState {\n path: string;\n sha256: string;\n mtimeMs?: number;\n bytes?: number;\n}\n\nexport interface ConvergeCursorState {\n version: 1;\n peerUrl: string;\n namespace: string;\n lastConvergedAt?: string;\n baseFiles: ConvergeCursorFileState[];\n semanticAgreements?: ReconcileSemanticAgreement[];\n completedPaths?: string[];\n pendingRefreshes?: ConvergeRefreshTarget[];\n}\n\nexport function normalizeConvergePeerUrl(peerUrl: string): string {\n const trimmed = peerUrl.trim();\n try {\n const url = new URL(trimmed);\n url.username = \"\";\n url.password = \"\";\n url.search = \"\";\n url.hash = \"\";\n url.pathname = url.pathname.replace(/\\/+$/, \"\");\n return url.toString().replace(/\\/$/, \"\");\n } catch {\n return trimmed.replace(/\\/+$/, \"\");\n }\n}\n\nexport function hashPeerNamespace(peerUrl: string, namespace: string): string {\n const normalizedUrl = normalizeConvergePeerUrl(peerUrl);\n const normalizedNs = namespace.trim().toLowerCase();\n return createHash(\"sha256\")\n .update(`${normalizedUrl}\\0${normalizedNs}`)\n .digest(\"hex\")\n .slice(0, 16);\n}\n\nexport function defaultConvergeCursorPath(\n memoryDir: string,\n peerUrl: string,\n namespace: string,\n): string {\n const key = hashPeerNamespace(peerUrl, namespace);\n return path.join(path.resolve(memoryDir), \".remnic\", \"state\", \"converge-cursors\", `${key}.json`);\n}\n\nfunction normalizeSemanticFileState(input: unknown): { path: string; sha256: string } | undefined {\n if (!input || typeof input !== \"object\" || Array.isArray(input)) return undefined;\n const file = input as Record<string, unknown>;\n if (typeof file.path !== \"string\" || typeof file.sha256 !== \"string\") return undefined;\n return { path: file.path, sha256: file.sha256 };\n}\n\nfunction digestAfterReconcile(entry: ReconcilePlanEntry): string | undefined {\n if (entry.action === \"push\") return entry.localSha256;\n if (entry.action === \"pull\") return entry.peerSha256;\n if (entry.action === \"conflict\") {\n if (entry.resolution === \"local-wins\") return entry.localSha256;\n if (entry.resolution === \"peer-wins\") return entry.peerSha256;\n return undefined;\n }\n if (entry.action !== \"identical\") return undefined;\n if (entry.localSha256 && entry.peerSha256 && entry.localSha256 !== entry.peerSha256) return undefined;\n return entry.localSha256 ?? entry.peerSha256;\n}\n\nfunction semanticAgreementKey(agreement: ReconcileSemanticAgreement): string {\n return `${agreement.local.path}\\0${agreement.peer.path}`;\n}\n\nexport function deriveConvergeCursorBase(\n entries: readonly ReconcilePlanEntry[],\n namespace: string,\n priorSemanticAgreements: readonly ReconcileSemanticAgreement[] = [],\n): Pick<ConvergeCursorState, \"baseFiles\" | \"semanticAgreements\"> {\n const baseFiles: ConvergeCursorFileState[] = [];\n const semanticAgreementsByPathPair = new Map(\n priorSemanticAgreements.map((agreement) => [semanticAgreementKey(agreement), agreement])\n );\n for (const entry of entries) {\n if (entry.namespace !== namespace) continue;\n if (entry.semanticAgreement) {\n semanticAgreementsByPathPair.set(semanticAgreementKey(entry.semanticAgreement), entry.semanticAgreement);\n continue;\n }\n const sha256 = digestAfterReconcile(entry);\n if (sha256) baseFiles.push({ path: entry.path, sha256 });\n }\n baseFiles.sort((left, right) => left.path.localeCompare(right.path));\n const semanticAgreements = [...semanticAgreementsByPathPair.values()];\n semanticAgreements.sort((left, right) =>\n left.local.path.localeCompare(right.local.path) || left.peer.path.localeCompare(right.peer.path)\n );\n return { baseFiles, semanticAgreements };\n}\n\nexport function normalizeConvergeCursor(input: unknown): ConvergeCursorState {\n if (!input || typeof input !== \"object\" || Array.isArray(input)) {\n throw new Error(\"converge cursor must be an object\");\n }\n const obj = input as Record<string, unknown>;\n if (obj.version !== 1) {\n throw new Error(\"converge cursor version must be 1\");\n }\n if (typeof obj.peerUrl !== \"string\" || !obj.peerUrl.trim()) {\n throw new Error(\"converge cursor missing peerUrl\");\n }\n if (typeof obj.namespace !== \"string\" || !obj.namespace.trim()) {\n throw new Error(\"converge cursor missing namespace\");\n }\n const baseFiles: ConvergeCursorFileState[] = [];\n if (Array.isArray(obj.baseFiles)) {\n for (const item of obj.baseFiles) {\n if (item && typeof item === \"object\") {\n const fileItem = item as Record<string, unknown>;\n if (typeof fileItem.path === \"string\" && typeof fileItem.sha256 === \"string\") {\n baseFiles.push({\n path: fileItem.path,\n sha256: fileItem.sha256,\n mtimeMs: typeof fileItem.mtimeMs === \"number\" ? fileItem.mtimeMs : undefined,\n bytes: typeof fileItem.bytes === \"number\" ? fileItem.bytes : undefined,\n });\n }\n }\n }\n }\n const semanticAgreements: ReconcileSemanticAgreement[] = [];\n if (Array.isArray(obj.semanticAgreements)) {\n for (const item of obj.semanticAgreements) {\n if (!item || typeof item !== \"object\" || Array.isArray(item)) continue;\n const agreement = item as Record<string, unknown>;\n const local = normalizeSemanticFileState(agreement.local);\n const peer = normalizeSemanticFileState(agreement.peer);\n if (local && peer) semanticAgreements.push({ local, peer });\n }\n }\n const completedPaths: string[] = [];\n if (Array.isArray(obj.completedPaths)) {\n for (const item of obj.completedPaths) {\n if (typeof item === \"string\") {\n completedPaths.push(item);\n }\n }\n }\n const pendingRefreshes: ConvergeRefreshTarget[] = [];\n if (Array.isArray(obj.pendingRefreshes)) {\n if (obj.pendingRefreshes.includes(\"local\")) pendingRefreshes.push(\"local\");\n if (obj.pendingRefreshes.includes(\"receiver\")) pendingRefreshes.push(\"receiver\");\n }\n return {\n version: 1,\n peerUrl: obj.peerUrl.trim(),\n namespace: obj.namespace.trim(),\n lastConvergedAt: typeof obj.lastConvergedAt === \"string\" ? obj.lastConvergedAt : undefined,\n baseFiles,\n semanticAgreements,\n completedPaths,\n pendingRefreshes,\n };\n}\n\nexport async function readConvergeCursor(\n cursorPath: string,\n): Promise<ConvergeCursorState | null> {\n try {\n const raw = await fs.readFile(path.resolve(cursorPath), \"utf-8\");\n const parsed = JSON.parse(raw);\n return normalizeConvergeCursor(parsed);\n } catch (error) {\n if ((error as NodeJS.ErrnoException).code === \"ENOENT\") return null;\n return null;\n }\n}\n\nexport async function writeConvergeCursor(\n cursorPath: string,\n cursor: ConvergeCursorState,\n): Promise<void> {\n const normalized = normalizeConvergeCursor(cursor);\n const target = path.resolve(cursorPath);\n await fs.mkdir(path.dirname(target), { recursive: true });\n const tmp = path.join(\n path.dirname(target),\n `.converge-cursor.${process.pid}.${randomUUID()}.tmp`,\n );\n await fs.writeFile(tmp, JSON.stringify(normalized, null, 2) + \"\\n\", \"utf-8\");\n try {\n await fs.rename(tmp, target);\n } catch (error) {\n await fs.unlink(tmp).catch(() => {});\n throw error;\n }\n}\n\nexport async function markConvergeRefreshPending(\n cursorPath: string,\n options: {\n peerUrl: string;\n namespace: string;\n target: ConvergeRefreshTarget;\n },\n): Promise<void> {\n const current = await readConvergeCursor(cursorPath);\n const pendingRefreshes = new Set(current?.pendingRefreshes ?? []);\n pendingRefreshes.add(options.target);\n await writeConvergeCursor(cursorPath, {\n version: 1,\n peerUrl: current?.peerUrl ?? options.peerUrl,\n namespace: current?.namespace ?? options.namespace,\n lastConvergedAt: current?.lastConvergedAt,\n baseFiles: current?.baseFiles ?? [],\n semanticAgreements: current?.semanticAgreements ?? [],\n completedPaths: current?.completedPaths ?? [],\n pendingRefreshes: [...pendingRefreshes].sort(),\n });\n}\n\nexport async function clearConvergeRefreshPending(\n cursorPath: string,\n target: ConvergeRefreshTarget,\n): Promise<void> {\n const current = await readConvergeCursor(cursorPath);\n if (!current?.pendingRefreshes?.includes(target)) return;\n await writeConvergeCursor(cursorPath, {\n ...current,\n pendingRefreshes: current.pendingRefreshes.filter((pending) => pending !== target),\n });\n}\n"],"mappings":";;;AAAA,SAAS,YAAY,kBAAkB;AACvC,YAAY,QAAQ;AACpB,YAAY,UAAU;AAuBf,SAAS,yBAAyB,SAAyB;AAChE,QAAM,UAAU,QAAQ,KAAK;AAC7B,MAAI;AACF,UAAM,MAAM,IAAI,IAAI,OAAO;AAC3B,QAAI,WAAW;AACf,QAAI,WAAW;AACf,QAAI,SAAS;AACb,QAAI,OAAO;AACX,QAAI,WAAW,IAAI,SAAS,QAAQ,QAAQ,EAAE;AAC9C,WAAO,IAAI,SAAS,EAAE,QAAQ,OAAO,EAAE;AAAA,EACzC,QAAQ;AACN,WAAO,QAAQ,QAAQ,QAAQ,EAAE;AAAA,EACnC;AACF;AAEO,SAAS,kBAAkB,SAAiB,WAA2B;AAC5E,QAAM,gBAAgB,yBAAyB,OAAO;AACtD,QAAM,eAAe,UAAU,KAAK,EAAE,YAAY;AAClD,SAAO,WAAW,QAAQ,EACvB,OAAO,GAAG,aAAa,KAAK,YAAY,EAAE,EAC1C,OAAO,KAAK,EACZ,MAAM,GAAG,EAAE;AAChB;AAEO,SAAS,0BACd,WACA,SACA,WACQ;AACR,QAAM,MAAM,kBAAkB,SAAS,SAAS;AAChD,SAAY,UAAU,aAAQ,SAAS,GAAG,WAAW,SAAS,oBAAoB,GAAG,GAAG,OAAO;AACjG;AAEA,SAAS,2BAA2B,OAA8D;AAChG,MAAI,CAAC,SAAS,OAAO,UAAU,YAAY,MAAM,QAAQ,KAAK,EAAG,QAAO;AACxE,QAAM,OAAO;AACb,MAAI,OAAO,KAAK,SAAS,YAAY,OAAO,KAAK,WAAW,SAAU,QAAO;AAC7E,SAAO,EAAE,MAAM,KAAK,MAAM,QAAQ,KAAK,OAAO;AAChD;AAEA,SAAS,qBAAqB,OAA+C;AAC3E,MAAI,MAAM,WAAW,OAAQ,QAAO,MAAM;AAC1C,MAAI,MAAM,WAAW,OAAQ,QAAO,MAAM;AAC1C,MAAI,MAAM,WAAW,YAAY;AAC/B,QAAI,MAAM,eAAe,aAAc,QAAO,MAAM;AACpD,QAAI,MAAM,eAAe,YAAa,QAAO,MAAM;AACnD,WAAO;AAAA,EACT;AACA,MAAI,MAAM,WAAW,YAAa,QAAO;AACzC,MAAI,MAAM,eAAe,MAAM,cAAc,MAAM,gBAAgB,MAAM,WAAY,QAAO;AAC5F,SAAO,MAAM,eAAe,MAAM;AACpC;AAEA,SAAS,qBAAqB,WAA+C;AAC3E,SAAO,GAAG,UAAU,MAAM,IAAI,KAAK,UAAU,KAAK,IAAI;AACxD;AAEO,SAAS,yBACd,SACA,WACA,0BAAiE,CAAC,GACH;AAC/D,QAAM,YAAuC,CAAC;AAC9C,QAAM,+BAA+B,IAAI;AAAA,IACvC,wBAAwB,IAAI,CAAC,cAAc,CAAC,qBAAqB,SAAS,GAAG,SAAS,CAAC;AAAA,EACzF;AACA,aAAW,SAAS,SAAS;AAC3B,QAAI,MAAM,cAAc,UAAW;AACnC,QAAI,MAAM,mBAAmB;AAC3B,mCAA6B,IAAI,qBAAqB,MAAM,iBAAiB,GAAG,MAAM,iBAAiB;AACvG;AAAA,IACF;AACA,UAAM,SAAS,qBAAqB,KAAK;AACzC,QAAI,OAAQ,WAAU,KAAK,EAAE,MAAM,MAAM,MAAM,OAAO,CAAC;AAAA,EACzD;AACA,YAAU,KAAK,CAAC,MAAM,UAAU,KAAK,KAAK,cAAc,MAAM,IAAI,CAAC;AACnE,QAAM,qBAAqB,CAAC,GAAG,6BAA6B,OAAO,CAAC;AACpE,qBAAmB;AAAA,IAAK,CAAC,MAAM,UAC7B,KAAK,MAAM,KAAK,cAAc,MAAM,MAAM,IAAI,KAAK,KAAK,KAAK,KAAK,cAAc,MAAM,KAAK,IAAI;AAAA,EACjG;AACA,SAAO,EAAE,WAAW,mBAAmB;AACzC;AAEO,SAAS,wBAAwB,OAAqC;AAC3E,MAAI,CAAC,SAAS,OAAO,UAAU,YAAY,MAAM,QAAQ,KAAK,GAAG;AAC/D,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AACA,QAAM,MAAM;AACZ,MAAI,IAAI,YAAY,GAAG;AACrB,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AACA,MAAI,OAAO,IAAI,YAAY,YAAY,CAAC,IAAI,QAAQ,KAAK,GAAG;AAC1D,UAAM,IAAI,MAAM,iCAAiC;AAAA,EACnD;AACA,MAAI,OAAO,IAAI,cAAc,YAAY,CAAC,IAAI,UAAU,KAAK,GAAG;AAC9D,UAAM,IAAI,MAAM,mCAAmC;AAAA,EACrD;AACA,QAAM,YAAuC,CAAC;AAC9C,MAAI,MAAM,QAAQ,IAAI,SAAS,GAAG;AAChC,eAAW,QAAQ,IAAI,WAAW;AAChC,UAAI,QAAQ,OAAO,SAAS,UAAU;AACpC,cAAM,WAAW;AACjB,YAAI,OAAO,SAAS,SAAS,YAAY,OAAO,SAAS,WAAW,UAAU;AAC5E,oBAAU,KAAK;AAAA,YACb,MAAM,SAAS;AAAA,YACf,QAAQ,SAAS;AAAA,YACjB,SAAS,OAAO,SAAS,YAAY,WAAW,SAAS,UAAU;AAAA,YACnE,OAAO,OAAO,SAAS,UAAU,WAAW,SAAS,QAAQ;AAAA,UAC/D,CAAC;AAAA,QACH;AAAA,MACF;AAAA,IACF;AAAA,EACF;AACA,QAAM,qBAAmD,CAAC;AAC1D,MAAI,MAAM,QAAQ,IAAI,kBAAkB,GAAG;AACzC,eAAW,QAAQ,IAAI,oBAAoB;AACzC,UAAI,CAAC,QAAQ,OAAO,SAAS,YAAY,MAAM,QAAQ,IAAI,EAAG;AAC9D,YAAM,YAAY;AAClB,YAAM,QAAQ,2BAA2B,UAAU,KAAK;AACxD,YAAM,OAAO,2BAA2B,UAAU,IAAI;AACtD,UAAI,SAAS,KAAM,oBAAmB,KAAK,EAAE,OAAO,KAAK,CAAC;AAAA,IAC5D;AAAA,EACF;AACA,QAAM,iBAA2B,CAAC;AAClC,MAAI,MAAM,QAAQ,IAAI,cAAc,GAAG;AACrC,eAAW,QAAQ,IAAI,gBAAgB;AACrC,UAAI,OAAO,SAAS,UAAU;AAC5B,uBAAe,KAAK,IAAI;AAAA,MAC1B;AAAA,IACF;AAAA,EACF;AACA,QAAM,mBAA4C,CAAC;AACnD,MAAI,MAAM,QAAQ,IAAI,gBAAgB,GAAG;AACvC,QAAI,IAAI,iBAAiB,SAAS,OAAO,EAAG,kBAAiB,KAAK,OAAO;AACzE,QAAI,IAAI,iBAAiB,SAAS,UAAU,EAAG,kBAAiB,KAAK,UAAU;AAAA,EACjF;AACA,SAAO;AAAA,IACL,SAAS;AAAA,IACT,SAAS,IAAI,QAAQ,KAAK;AAAA,IAC1B,WAAW,IAAI,UAAU,KAAK;AAAA,IAC9B,iBAAiB,OAAO,IAAI,oBAAoB,WAAW,IAAI,kBAAkB;AAAA,IACjF;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF;AACF;AAEA,eAAsB,mBACpB,YACqC;AACrC,MAAI;AACF,UAAM,MAAM,MAAS,YAAc,aAAQ,UAAU,GAAG,OAAO;AAC/D,UAAM,SAAS,KAAK,MAAM,GAAG;AAC7B,WAAO,wBAAwB,MAAM;AAAA,EACvC,SAAS,OAAO;AACd,QAAK,MAAgC,SAAS,SAAU,QAAO;AAC/D,WAAO;AAAA,EACT;AACF;AAEA,eAAsB,oBACpB,YACA,QACe;AACf,QAAM,aAAa,wBAAwB,MAAM;AACjD,QAAM,SAAc,aAAQ,UAAU;AACtC,QAAS,SAAW,aAAQ,MAAM,GAAG,EAAE,WAAW,KAAK,CAAC;AACxD,QAAM,MAAW;AAAA,IACV,aAAQ,MAAM;AAAA,IACnB,oBAAoB,QAAQ,GAAG,IAAI,WAAW,CAAC;AAAA,EACjD;AACA,QAAS,aAAU,KAAK,KAAK,UAAU,YAAY,MAAM,CAAC,IAAI,MAAM,OAAO;AAC3E,MAAI;AACF,UAAS,UAAO,KAAK,MAAM;AAAA,EAC7B,SAAS,OAAO;AACd,UAAS,UAAO,GAAG,EAAE,MAAM,MAAM;AAAA,IAAC,CAAC;AACnC,UAAM;AAAA,EACR;AACF;AAEA,eAAsB,2BACpB,YACA,SAKe;AACf,QAAM,UAAU,MAAM,mBAAmB,UAAU;AACnD,QAAM,mBAAmB,IAAI,IAAI,SAAS,oBAAoB,CAAC,CAAC;AAChE,mBAAiB,IAAI,QAAQ,MAAM;AACnC,QAAM,oBAAoB,YAAY;AAAA,IACpC,SAAS;AAAA,IACT,SAAS,SAAS,WAAW,QAAQ;AAAA,IACrC,WAAW,SAAS,aAAa,QAAQ;AAAA,IACzC,iBAAiB,SAAS;AAAA,IAC1B,WAAW,SAAS,aAAa,CAAC;AAAA,IAClC,oBAAoB,SAAS,sBAAsB,CAAC;AAAA,IACpD,gBAAgB,SAAS,kBAAkB,CAAC;AAAA,IAC5C,kBAAkB,CAAC,GAAG,gBAAgB,EAAE,KAAK;AAAA,EAC/C,CAAC;AACH;AAEA,eAAsB,4BACpB,YACA,QACe;AACf,QAAM,UAAU,MAAM,mBAAmB,UAAU;AACnD,MAAI,CAAC,SAAS,kBAAkB,SAAS,MAAM,EAAG;AAClD,QAAM,oBAAoB,YAAY;AAAA,IACpC,GAAG;AAAA,IACH,kBAAkB,QAAQ,iBAAiB,OAAO,CAAC,YAAY,YAAY,MAAM;AAAA,EACnF,CAAC;AACH;","names":[]}
1
+ {"version":3,"sources":["../../src/reconcile/cursor.ts"],"sourcesContent":["import { createHash, randomUUID } from \"node:crypto\";\nimport * as fs from \"node:fs/promises\";\nimport * as path from \"node:path\";\nimport {\n type ReconcilePlanEntry,\n type ReconcileSemanticAgreement,\n semanticAgreementKey,\n} from \"./plan.js\";\n\nexport type ConvergeRefreshTarget = \"local\" | \"receiver\";\n\nexport interface ConvergeCursorFileState {\n path: string;\n sha256: string;\n mtimeMs?: number;\n bytes?: number;\n}\n\nexport interface ConvergeCursorState {\n version: 1;\n peerUrl: string;\n namespace: string;\n lastConvergedAt?: string;\n baseFiles: ConvergeCursorFileState[];\n semanticAgreements?: ReconcileSemanticAgreement[];\n completedPaths?: string[];\n pendingRefreshes?: ConvergeRefreshTarget[];\n}\n\nexport function normalizeConvergePeerUrl(peerUrl: string): string {\n const trimmed = peerUrl.trim();\n try {\n const url = new URL(trimmed);\n url.username = \"\";\n url.password = \"\";\n url.search = \"\";\n url.hash = \"\";\n url.pathname = url.pathname.replace(/\\/+$/, \"\");\n return url.toString().replace(/\\/$/, \"\");\n } catch {\n return trimmed.replace(/\\/+$/, \"\");\n }\n}\n\nexport function hashPeerNamespace(peerUrl: string, namespace: string): string {\n const normalizedUrl = normalizeConvergePeerUrl(peerUrl);\n const normalizedNs = namespace.trim().toLowerCase();\n return createHash(\"sha256\")\n .update(`${normalizedUrl}\\0${normalizedNs}`)\n .digest(\"hex\")\n .slice(0, 16);\n}\n\nexport function defaultConvergeCursorPath(\n memoryDir: string,\n peerUrl: string,\n namespace: string,\n): string {\n const key = hashPeerNamespace(peerUrl, namespace);\n return path.join(path.resolve(memoryDir), \".remnic\", \"state\", \"converge-cursors\", `${key}.json`);\n}\n\nfunction normalizeSemanticFileState(input: unknown): { path: string; sha256: string } | undefined {\n if (!input || typeof input !== \"object\" || Array.isArray(input)) return undefined;\n const file = input as Record<string, unknown>;\n if (typeof file.path !== \"string\" || typeof file.sha256 !== \"string\") return undefined;\n return { path: file.path, sha256: file.sha256 };\n}\n\nfunction digestAfterReconcile(entry: ReconcilePlanEntry): string | undefined {\n if (entry.action === \"push\") return entry.localSha256;\n if (entry.action === \"pull\") return entry.peerSha256;\n if (entry.action === \"conflict\") {\n if (entry.resolution === \"local-wins\") return entry.localSha256;\n if (entry.resolution === \"peer-wins\") return entry.peerSha256;\n return undefined;\n }\n if (entry.action !== \"identical\") return undefined;\n if (entry.localSha256 && entry.peerSha256 && entry.localSha256 !== entry.peerSha256) return undefined;\n return entry.localSha256 ?? entry.peerSha256;\n}\n\nexport function deriveConvergeCursorBase(\n entries: readonly ReconcilePlanEntry[],\n namespace: string,\n priorSemanticAgreements: readonly ReconcileSemanticAgreement[] = [],\n): Pick<ConvergeCursorState, \"baseFiles\" | \"semanticAgreements\"> {\n const baseFiles: ConvergeCursorFileState[] = [];\n const semanticAgreementsByPathPair = new Map(\n priorSemanticAgreements.map((agreement) => [semanticAgreementKey(agreement), agreement])\n );\n for (const entry of entries) {\n if (entry.namespace !== namespace) continue;\n if (entry.semanticAgreement) {\n semanticAgreementsByPathPair.set(semanticAgreementKey(entry.semanticAgreement), entry.semanticAgreement);\n continue;\n }\n const sha256 = digestAfterReconcile(entry);\n if (sha256) baseFiles.push({ path: entry.path, sha256 });\n }\n baseFiles.sort((left, right) => left.path.localeCompare(right.path));\n const semanticAgreements = [...semanticAgreementsByPathPair.values()];\n semanticAgreements.sort((left, right) =>\n left.local.path.localeCompare(right.local.path) || left.peer.path.localeCompare(right.peer.path)\n );\n return { baseFiles, semanticAgreements };\n}\n\nexport function normalizeConvergeCursor(input: unknown): ConvergeCursorState {\n if (!input || typeof input !== \"object\" || Array.isArray(input)) {\n throw new Error(\"converge cursor must be an object\");\n }\n const obj = input as Record<string, unknown>;\n if (obj.version !== 1) {\n throw new Error(\"converge cursor version must be 1\");\n }\n if (typeof obj.peerUrl !== \"string\" || !obj.peerUrl.trim()) {\n throw new Error(\"converge cursor missing peerUrl\");\n }\n if (typeof obj.namespace !== \"string\" || !obj.namespace.trim()) {\n throw new Error(\"converge cursor missing namespace\");\n }\n const baseFiles: ConvergeCursorFileState[] = [];\n if (Array.isArray(obj.baseFiles)) {\n for (const item of obj.baseFiles) {\n if (item && typeof item === \"object\") {\n const fileItem = item as Record<string, unknown>;\n if (typeof fileItem.path === \"string\" && typeof fileItem.sha256 === \"string\") {\n baseFiles.push({\n path: fileItem.path,\n sha256: fileItem.sha256,\n mtimeMs: typeof fileItem.mtimeMs === \"number\" ? fileItem.mtimeMs : undefined,\n bytes: typeof fileItem.bytes === \"number\" ? fileItem.bytes : undefined,\n });\n }\n }\n }\n }\n const semanticAgreements: ReconcileSemanticAgreement[] = [];\n if (Array.isArray(obj.semanticAgreements)) {\n for (const item of obj.semanticAgreements) {\n if (!item || typeof item !== \"object\" || Array.isArray(item)) continue;\n const agreement = item as Record<string, unknown>;\n const local = normalizeSemanticFileState(agreement.local);\n const peer = normalizeSemanticFileState(agreement.peer);\n if (local && peer) semanticAgreements.push({ local, peer });\n }\n }\n const completedPaths: string[] = [];\n if (Array.isArray(obj.completedPaths)) {\n for (const item of obj.completedPaths) {\n if (typeof item === \"string\") {\n completedPaths.push(item);\n }\n }\n }\n const pendingRefreshes: ConvergeRefreshTarget[] = [];\n if (Array.isArray(obj.pendingRefreshes)) {\n if (obj.pendingRefreshes.includes(\"local\")) pendingRefreshes.push(\"local\");\n if (obj.pendingRefreshes.includes(\"receiver\")) pendingRefreshes.push(\"receiver\");\n }\n return {\n version: 1,\n peerUrl: obj.peerUrl.trim(),\n namespace: obj.namespace.trim(),\n lastConvergedAt: typeof obj.lastConvergedAt === \"string\" ? obj.lastConvergedAt : undefined,\n baseFiles,\n semanticAgreements,\n completedPaths,\n pendingRefreshes,\n };\n}\n\nexport async function readConvergeCursor(\n cursorPath: string,\n): Promise<ConvergeCursorState | null> {\n try {\n const raw = await fs.readFile(path.resolve(cursorPath), \"utf-8\");\n const parsed = JSON.parse(raw);\n return normalizeConvergeCursor(parsed);\n } catch (error) {\n if ((error as NodeJS.ErrnoException).code === \"ENOENT\") return null;\n return null;\n }\n}\n\nexport async function writeConvergeCursor(\n cursorPath: string,\n cursor: ConvergeCursorState,\n): Promise<void> {\n const normalized = normalizeConvergeCursor(cursor);\n const target = path.resolve(cursorPath);\n await fs.mkdir(path.dirname(target), { recursive: true });\n const tmp = path.join(\n path.dirname(target),\n `.converge-cursor.${process.pid}.${randomUUID()}.tmp`,\n );\n await fs.writeFile(tmp, JSON.stringify(normalized, null, 2) + \"\\n\", \"utf-8\");\n try {\n await fs.rename(tmp, target);\n } catch (error) {\n await fs.unlink(tmp).catch(() => {});\n throw error;\n }\n}\n\nexport async function markConvergeRefreshPending(\n cursorPath: string,\n options: {\n peerUrl: string;\n namespace: string;\n target: ConvergeRefreshTarget;\n },\n): Promise<void> {\n const current = await readConvergeCursor(cursorPath);\n const pendingRefreshes = new Set(current?.pendingRefreshes ?? []);\n pendingRefreshes.add(options.target);\n await writeConvergeCursor(cursorPath, {\n version: 1,\n peerUrl: current?.peerUrl ?? options.peerUrl,\n namespace: current?.namespace ?? options.namespace,\n lastConvergedAt: current?.lastConvergedAt,\n baseFiles: current?.baseFiles ?? [],\n semanticAgreements: current?.semanticAgreements ?? [],\n completedPaths: current?.completedPaths ?? [],\n pendingRefreshes: [...pendingRefreshes].sort(),\n });\n}\n\nexport async function clearConvergeRefreshPending(\n cursorPath: string,\n target: ConvergeRefreshTarget,\n): Promise<void> {\n const current = await readConvergeCursor(cursorPath);\n if (!current?.pendingRefreshes?.includes(target)) return;\n await writeConvergeCursor(cursorPath, {\n ...current,\n pendingRefreshes: current.pendingRefreshes.filter((pending) => pending !== target),\n });\n}\n"],"mappings":"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","names":[]}
@@ -4,8 +4,8 @@ import {
4
4
  buildReconcileManifest,
5
5
  buildReconcileManifestFile,
6
6
  collapseActiveFactDuplicates
7
- } from "../chunk-EFKZT6AY.js";
8
- import "../chunk-L3CHRBHE.js";
7
+ } from "../chunk-T42L3S6A.js";
8
+ import "../chunk-ZRUEP4IK.js";
9
9
  import "../chunk-J6A3CX5N.js";
10
10
  import "../chunk-7RJUVTVF.js";
11
11
  import "../chunk-JOEJG4SD.js";
@@ -15,12 +15,8 @@ import "../chunk-JDSVLVCG.js";
15
15
  import "../chunk-HBVPYRDW.js";
16
16
  import "../chunk-5GKPFL3S.js";
17
17
  import "../chunk-JAKIDQB2.js";
18
- import "../chunk-Z4N7SVVF.js";
19
- import "../chunk-UI3NYK34.js";
20
18
  import "../chunk-GCGJW34D.js";
21
- import "../chunk-AREGMX2J.js";
22
- import "../chunk-LC2BDILZ.js";
23
- import "../chunk-P7FMDTKL.js";
19
+ import "../chunk-LQWOFU6L.js";
24
20
  import "../chunk-VUFL7X3H.js";
25
21
  import "../chunk-XQ3HXAQH.js";
26
22
  import "../chunk-A6XUJE5D.js";