@remnic/core 9.69.87 → 9.69.89

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 (416) hide show
  1. package/dist/access-admin-ops-surface.js +56 -49
  2. package/dist/access-authorization-probe.js +57 -50
  3. package/dist/access-boundary.js +56 -49
  4. package/dist/access-citation-namespace.js +2 -2
  5. package/dist/access-cli.js +129 -122
  6. package/dist/access-cli.js.map +1 -1
  7. package/dist/access-extraction-force-flush.js +56 -49
  8. package/dist/access-http-briefing.js +57 -50
  9. package/dist/access-http-offline-stream.d.ts.map +1 -1
  10. package/dist/access-http-offline-stream.js +1 -1
  11. package/dist/access-http-query.js +58 -51
  12. package/dist/access-http.js +78 -71
  13. package/dist/access-identity-continuity-surface.js +56 -49
  14. package/dist/access-lcm-surface.js +56 -49
  15. package/dist/access-mcp-output-schemas.d.ts.map +1 -1
  16. package/dist/access-mcp-output-schemas.js +1 -1
  17. package/dist/access-mcp.js +69 -62
  18. package/dist/access-namespace-preflight.js +56 -49
  19. package/dist/access-observe-write-category.js +20 -13
  20. package/dist/access-observe-write-surface.js +56 -49
  21. package/dist/access-offline-manifest.js +16 -10
  22. package/dist/access-operations-batch.js +60 -53
  23. package/dist/access-operations.js +67 -60
  24. package/dist/access-recall-concurrency.js +56 -49
  25. package/dist/access-recall-response.js +56 -49
  26. package/dist/access-recall-surface.js +56 -49
  27. package/dist/access-schema.js +16 -7
  28. package/dist/access-service.d.ts.map +1 -1
  29. package/dist/access-service.js +56 -49
  30. package/dist/access-surface-catalog.js +58 -51
  31. package/dist/access-surface-catalog.js.map +1 -1
  32. package/dist/active-recall.js +24 -18
  33. package/dist/active-recall.js.map +1 -1
  34. package/dist/{auto-sync-6IPX2BAC.js → auto-sync-U5N3CB5Y.js} +7 -7
  35. package/dist/briefing.js +11 -11
  36. package/dist/buffer.js +7 -7
  37. package/dist/{capsule-crypto-7FJQINUR.js → capsule-crypto-GWVG7LGC.js} +2 -2
  38. package/dist/{capsule-merge-3MNURAQ3.js → capsule-merge-ZCXUPLNJ.js} +2 -2
  39. package/dist/causal-behavior.js +2 -2
  40. package/dist/causal-chain.js +2 -2
  41. package/dist/causal-consolidation.js +14 -14
  42. package/dist/causal-retrieval.js +2 -2
  43. package/dist/causal-trajectory-graph.js +2 -2
  44. package/dist/causal-trajectory.js +1 -1
  45. package/dist/{chunk-JE334SIA.js → chunk-22DYJLFN.js} +2 -2
  46. package/dist/{chunk-YTQGGO3K.js → chunk-22LMCQ5B.js} +85 -82
  47. package/dist/{chunk-YTQGGO3K.js.map → chunk-22LMCQ5B.js.map} +1 -1
  48. package/dist/{chunk-JGSQ6P4D.js → chunk-2FX374UI.js} +2 -2
  49. package/dist/{chunk-SY5KDWGU.js → chunk-2WLMWP2T.js} +2 -2
  50. package/dist/{chunk-6TT6HRE4.js → chunk-3AGHSQPM.js} +2 -2
  51. package/dist/{chunk-P6WFK4ZJ.js → chunk-3O5BB45T.js} +4 -4
  52. package/dist/{chunk-3C3J243X.js → chunk-3QKO4QN7.js} +3 -3
  53. package/dist/{chunk-KFCMMDHH.js → chunk-3YD44CH2.js} +2 -2
  54. package/dist/{chunk-FRCESVV6.js → chunk-4HUCP4R4.js} +18 -18
  55. package/dist/chunk-4HUCP4R4.js.map +1 -0
  56. package/dist/chunk-4NSLQ7EU.js +137 -0
  57. package/dist/chunk-4NSLQ7EU.js.map +1 -0
  58. package/dist/{chunk-7DE2NOON.js → chunk-4O4XCBOS.js} +3 -3
  59. package/dist/{chunk-GDYU6VF4.js → chunk-5AYUHSAU.js} +2 -2
  60. package/dist/{chunk-ICZQG4XE.js → chunk-5FAGCOZD.js} +4 -4
  61. package/dist/{chunk-VKQI47DJ.js → chunk-5FNZ3G6X.js} +4 -4
  62. package/dist/{chunk-CK5KOVHW.js → chunk-5R627MYY.js} +3 -2
  63. package/dist/{chunk-CK5KOVHW.js.map → chunk-5R627MYY.js.map} +1 -1
  64. package/dist/{chunk-VQNONC4E.js → chunk-5STPRPE7.js} +2 -2
  65. package/dist/{chunk-52II7PB6.js → chunk-645WOU5I.js} +4 -4
  66. package/dist/{chunk-SRZW7FNU.js → chunk-64ZUALXK.js} +2 -2
  67. package/dist/{chunk-4BZP2B4U.js → chunk-6MNKDTDI.js} +2 -2
  68. package/dist/{chunk-DUJYRVUD.js → chunk-6O2VUWV6.js} +3 -3
  69. package/dist/chunk-75PT4N7Q.js +75 -0
  70. package/dist/chunk-75PT4N7Q.js.map +1 -0
  71. package/dist/{chunk-HESDNYRB.js → chunk-76M5OK7V.js} +2 -2
  72. package/dist/{chunk-FAN73COB.js → chunk-7D7OUO5W.js} +2 -2
  73. package/dist/{chunk-DZ525SNQ.js → chunk-7QE46QXI.js} +1 -1
  74. package/dist/{chunk-VX6GCKBS.js → chunk-7WBSMXGC.js} +4 -4
  75. package/dist/{chunk-VVDWZRZG.js → chunk-A6RVIHHK.js} +3 -3
  76. package/dist/{chunk-M536WNTQ.js → chunk-AEJ3TE5H.js} +2 -2
  77. package/dist/{chunk-72JNNJJJ.js → chunk-AXC4WSF3.js} +3 -3
  78. package/dist/chunk-AXGJMDBS.js +684 -0
  79. package/dist/chunk-AXGJMDBS.js.map +1 -0
  80. package/dist/{chunk-UA5DX5C3.js → chunk-AZIOEOK4.js} +2 -2
  81. package/dist/{chunk-N4S4NUX5.js → chunk-B3O3IRZN.js} +1 -1
  82. package/dist/{chunk-XTYX6V52.js → chunk-BJVO4H5C.js} +2 -2
  83. package/dist/{chunk-7LCGFUMB.js → chunk-BUKK5SWA.js} +4 -4
  84. package/dist/{chunk-TM3RXL4G.js → chunk-BUQKSQXL.js} +2 -2
  85. package/dist/chunk-C6HPNPNK.js +64 -0
  86. package/dist/chunk-C6HPNPNK.js.map +1 -0
  87. package/dist/{chunk-RB776UH3.js → chunk-C7V3KPKJ.js} +235 -93
  88. package/dist/chunk-C7V3KPKJ.js.map +1 -0
  89. package/dist/{chunk-FOH7AMMI.js → chunk-CALBQ2NG.js} +71 -72
  90. package/dist/chunk-CALBQ2NG.js.map +1 -0
  91. package/dist/{chunk-37S3IMYB.js → chunk-DGS34QSY.js} +2 -2
  92. package/dist/{chunk-4IEOGIPB.js → chunk-DO4C4AXD.js} +2 -2
  93. package/dist/{chunk-SPSRGEDQ.js → chunk-EAQQ2FD3.js} +9 -9
  94. package/dist/{chunk-3BTFBQLO.js → chunk-EFHNFTWB.js} +49 -3
  95. package/dist/chunk-EFHNFTWB.js.map +1 -0
  96. package/dist/{chunk-C3QXITIP.js → chunk-EQUD7FP4.js} +2 -2
  97. package/dist/chunk-ETUZFFPU.js +218 -0
  98. package/dist/chunk-ETUZFFPU.js.map +1 -0
  99. package/dist/{chunk-YNDLCWXS.js → chunk-EZ25VE3G.js} +4 -4
  100. package/dist/{chunk-YITN5WXI.js → chunk-FC52YWAO.js} +2 -2
  101. package/dist/{chunk-ZI7QA4MK.js → chunk-FEIXG5FA.js} +2 -2
  102. package/dist/{chunk-CLXTDOKV.js → chunk-FUNBJQYR.js} +2 -2
  103. package/dist/{chunk-CLSYE5OZ.js → chunk-G2STTRYB.js} +2 -2
  104. package/dist/{chunk-TDYAIXHK.js → chunk-H36X4NRH.js} +5 -5
  105. package/dist/{chunk-3GQC3NMB.js → chunk-H56VY4BY.js} +5 -5
  106. package/dist/{chunk-PUKTBULQ.js → chunk-HWLIMQE2.js} +2 -2
  107. package/dist/{chunk-V2ES4WCZ.js → chunk-IIARQTZ2.js} +2 -2
  108. package/dist/{chunk-QEV26L2F.js → chunk-IKDRGVVJ.js} +2 -2
  109. package/dist/{chunk-WQZZDN5M.js → chunk-IVEHY2VT.js} +254 -377
  110. package/dist/chunk-IVEHY2VT.js.map +1 -0
  111. package/dist/{chunk-LS3XH3UE.js → chunk-IYIBGSHJ.js} +2 -2
  112. package/dist/{chunk-YSJTCOHR.js → chunk-J27JML5O.js} +2 -2
  113. package/dist/{chunk-AQK54Q7O.js → chunk-JB56XYHP.js} +2 -2
  114. package/dist/{chunk-NE6PHPLG.js → chunk-JBH26P62.js} +10 -10
  115. package/dist/{chunk-CWHV574S.js → chunk-JUT3OR2L.js} +6 -6
  116. package/dist/{chunk-6ET2VII7.js → chunk-JYG2334B.js} +2 -2
  117. package/dist/{chunk-LF5IGOOD.js → chunk-JYM4Y6SO.js} +16 -16
  118. package/dist/{chunk-FB64XE3R.js → chunk-JZ4TJHR2.js} +2 -2
  119. package/dist/{chunk-EHS5MJEF.js → chunk-KTKHO3UI.js} +3 -3
  120. package/dist/{chunk-WIKO4SCR.js → chunk-LHRQBMJN.js} +2 -2
  121. package/dist/{chunk-K4J4E7WV.js → chunk-LO4UKPKX.js} +2 -2
  122. package/dist/{chunk-JN72EPOE.js → chunk-MAAL6OZV.js} +7 -7
  123. package/dist/chunk-MAAL6OZV.js.map +1 -0
  124. package/dist/{chunk-MY2PLXSM.js → chunk-MCTM4YPL.js} +2 -1
  125. package/dist/{chunk-MY2PLXSM.js.map → chunk-MCTM4YPL.js.map} +1 -1
  126. package/dist/{chunk-6NQ4LSMS.js → chunk-MGZMC6WN.js} +47 -47
  127. package/dist/chunk-MSAI3Q7D.js +372 -0
  128. package/dist/chunk-MSAI3Q7D.js.map +1 -0
  129. package/dist/{chunk-BMYZTZ5D.js → chunk-MY7B3HYC.js} +2 -2
  130. package/dist/{chunk-NB3LRY4T.js → chunk-N4PYB235.js} +2 -2
  131. package/dist/{chunk-S3YM4SZQ.js → chunk-N7QV3CMX.js} +2 -2
  132. package/dist/{chunk-L6UZEAID.js → chunk-NJVR724O.js} +4 -4
  133. package/dist/{chunk-VLLD4TOB.js → chunk-NMZVDRVP.js} +2 -2
  134. package/dist/{chunk-P2WZHLUF.js → chunk-NOL7SEWN.js} +2 -2
  135. package/dist/{chunk-2NLLXCJG.js → chunk-OWHERGF2.js} +2 -2
  136. package/dist/{chunk-6L3PBSAR.js → chunk-PMNLL2TL.js} +2 -2
  137. package/dist/{chunk-VYCOJKSX.js → chunk-PO7NXNGC.js} +2 -2
  138. package/dist/{chunk-4IIMMZZK.js → chunk-PULDSMCJ.js} +10 -10
  139. package/dist/{chunk-G6SVZWPB.js → chunk-PZX3AQLF.js} +44 -1
  140. package/dist/chunk-PZX3AQLF.js.map +1 -0
  141. package/dist/{chunk-HBBHL4YF.js → chunk-QOXNTKXB.js} +2 -2
  142. package/dist/{chunk-CUCWX3MO.js → chunk-QZLCVO2V.js} +2 -2
  143. package/dist/{chunk-NE7I2RCT.js → chunk-R3X2T2LP.js} +2 -2
  144. package/dist/{chunk-S7GCT7NU.js → chunk-RBITPCMK.js} +8 -8
  145. package/dist/{chunk-EVBI7S4J.js → chunk-RMDGAAZF.js} +4 -4
  146. package/dist/{chunk-BJRAELDH.js → chunk-SCXURCVT.js} +3 -3
  147. package/dist/{chunk-EQ6YOIKO.js → chunk-ST2RQUXC.js} +3 -3
  148. package/dist/{chunk-CS52MFDV.js → chunk-SZG4WFAG.js} +2 -2
  149. package/dist/{chunk-BFO3IR56.js → chunk-TPEZ2SHV.js} +2 -2
  150. package/dist/chunk-TYT4TEQV.js +45 -0
  151. package/dist/chunk-TYT4TEQV.js.map +1 -0
  152. package/dist/{chunk-YRLHEEQT.js → chunk-U6VC6RP3.js} +2 -2
  153. package/dist/chunk-UCPGOUDZ.js +726 -0
  154. package/dist/chunk-UCPGOUDZ.js.map +1 -0
  155. package/dist/{chunk-MOQPEFLN.js → chunk-UP75KL3L.js} +2 -2
  156. package/dist/{chunk-W4AOR52H.js → chunk-UQDC3W77.js} +2 -2
  157. package/dist/{chunk-X7Y7WX73.js → chunk-UVYI6VIX.js} +1 -1
  158. package/dist/{chunk-D5F7TKMH.js → chunk-V4JZCTMK.js} +2 -2
  159. package/dist/{chunk-MQJL6CDZ.js → chunk-VA4O3U7U.js} +4 -4
  160. package/dist/{chunk-4CDYONWO.js → chunk-VDO32NLK.js} +3 -3
  161. package/dist/{chunk-SOZUJCME.js → chunk-VHDKPGMG.js} +6 -6
  162. package/dist/{chunk-QWW2JDDX.js → chunk-WNRTXEWW.js} +6 -6
  163. package/dist/{chunk-NR2ASHBL.js → chunk-XOV7NRY5.js} +2 -2
  164. package/dist/{chunk-KP7SANCF.js → chunk-YPI4RQWV.js} +2 -2
  165. package/dist/{chunk-JKMHZF3Q.js → chunk-YSWJXOOL.js} +2 -2
  166. package/dist/{chunk-LQG5O5EP.js → chunk-Z3O53WZR.js} +2 -2
  167. package/dist/{chunk-QVS22WTO.js → chunk-ZG5DWWKK.js} +2 -2
  168. package/dist/cli.js +99 -92
  169. package/dist/coding/export-okf-codegraph.js +12 -12
  170. package/dist/coding/pre-action-gate.js +2 -2
  171. package/dist/compounding/engine.js +12 -12
  172. package/dist/config.js +24 -18
  173. package/dist/connectors/codex-materialize-runner.js +11 -11
  174. package/dist/connectors/index.js +11 -11
  175. package/dist/console/state.d.ts +30 -0
  176. package/dist/console/state.d.ts.map +1 -1
  177. package/dist/contradiction/index.js +5 -5
  178. package/dist/convergence-refresh.js +13 -13
  179. package/dist/corpus-watermark.js +13 -13
  180. package/dist/dashboard-runtime.js +2 -2
  181. package/dist/deep-recall-http-glue.js +16 -8
  182. package/dist/embedding-fallback.d.ts +41 -31
  183. package/dist/embedding-fallback.d.ts.map +1 -1
  184. package/dist/embedding-fallback.js +9 -1
  185. package/dist/embedding-generation-lock.d.ts +49 -0
  186. package/dist/embedding-generation-lock.d.ts.map +1 -0
  187. package/dist/embedding-generation-lock.js +19 -0
  188. package/dist/embedding-index-storage.d.ts +276 -0
  189. package/dist/embedding-index-storage.d.ts.map +1 -0
  190. package/dist/embedding-index-storage.js +28 -0
  191. package/dist/entity-retrieval.js +12 -12
  192. package/dist/event-order-recall.js +3 -3
  193. package/dist/explicit-capture.js +6 -6
  194. package/dist/external-wiki-access.js +57 -50
  195. package/dist/extraction.js +17 -17
  196. package/dist/{first-start-migration-7OATHJKB.js → first-start-migration-GAT7G733.js} +4 -4
  197. package/dist/{graph-edge-decay-KQGS3L3B.js → graph-edge-decay-MKIRZ762.js} +5 -5
  198. package/dist/graph-jsonl.js +3 -3
  199. package/dist/graph-snapshot.js +3 -3
  200. package/dist/graph.js +2 -2
  201. package/dist/harmonic-retrieval.js +1 -1
  202. package/dist/index.d.ts +2 -0
  203. package/dist/index.d.ts.map +1 -1
  204. package/dist/index.js +195 -164
  205. package/dist/lcm/engine.js +2 -2
  206. package/dist/lcm/index.js +5 -5
  207. package/dist/local-llm.js +2 -2
  208. package/dist/location/index.js +14 -14
  209. package/dist/maintenance/memory-governance.js +11 -11
  210. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +11 -11
  211. package/dist/maintenance/rebuild-memory-projection.js +12 -12
  212. package/dist/memory-browse-operations.js +57 -50
  213. package/dist/memory-subject.js +3 -3
  214. package/dist/namespaces/migrate.js +12 -12
  215. package/dist/namespaces/storage.js +11 -11
  216. package/dist/offline-sync-changeset-generations.d.ts +82 -0
  217. package/dist/offline-sync-changeset-generations.d.ts.map +1 -0
  218. package/dist/offline-sync-changeset-generations.js +21 -0
  219. package/dist/offline-sync-embedding-generation.d.ts +257 -0
  220. package/dist/offline-sync-embedding-generation.d.ts.map +1 -0
  221. package/dist/offline-sync-embedding-generation.js +44 -0
  222. package/dist/offline-sync-embedding-generation.js.map +1 -0
  223. package/dist/offline-sync-exclude-globs.d.ts +15 -0
  224. package/dist/offline-sync-exclude-globs.d.ts.map +1 -1
  225. package/dist/offline-sync-exclude-globs.js +11 -3
  226. package/dist/offline-sync-file-io.d.ts +7 -0
  227. package/dist/offline-sync-file-io.d.ts.map +1 -1
  228. package/dist/offline-sync-file-io.js +14 -2
  229. package/dist/offline-sync-impression-drain.js +3 -3
  230. package/dist/offline-sync-runtime-state.d.ts +5 -0
  231. package/dist/offline-sync-runtime-state.d.ts.map +1 -0
  232. package/dist/offline-sync-runtime-state.js +14 -0
  233. package/dist/offline-sync-runtime-state.js.map +1 -0
  234. package/dist/offline-sync-snapshot-stream.d.ts +26 -0
  235. package/dist/offline-sync-snapshot-stream.d.ts.map +1 -0
  236. package/dist/offline-sync-snapshot-stream.js +29 -0
  237. package/dist/offline-sync-snapshot-stream.js.map +1 -0
  238. package/dist/offline-sync-upload-staging.d.ts +34 -0
  239. package/dist/offline-sync-upload-staging.d.ts.map +1 -0
  240. package/dist/offline-sync-upload-staging.js +26 -0
  241. package/dist/offline-sync-upload-staging.js.map +1 -0
  242. package/dist/offline-sync.d.ts +58 -28
  243. package/dist/offline-sync.d.ts.map +1 -1
  244. package/dist/offline-sync.js +22 -8
  245. package/dist/operator-doctor-corpus.js +14 -14
  246. package/dist/operator-toolkit.js +35 -29
  247. package/dist/orchestration/maintenance.js +22 -22
  248. package/dist/orchestrator.d.ts.map +1 -1
  249. package/dist/orchestrator.js +129 -122
  250. package/dist/recall-navigation-operations.js +57 -50
  251. package/dist/recall-navigation.js +56 -49
  252. package/dist/reconcile/manifest.js +4 -4
  253. package/dist/{resolution-DNX7FO7A.js → resolution-K4A3VPKZ.js} +6 -6
  254. package/dist/resolution-K4A3VPKZ.js.map +1 -0
  255. package/dist/resume-bundles.js +25 -19
  256. package/dist/salvage-envelope.js +5 -5
  257. package/dist/secure-store/index.js +2 -2
  258. package/dist/secure-store/secure-fs.d.ts +14 -1
  259. package/dist/secure-store/secure-fs.d.ts.map +1 -1
  260. package/dist/semantic-consolidation.js +12 -12
  261. package/dist/semantic-rule-promotion.js +11 -11
  262. package/dist/semantic-rule-verifier.js +11 -11
  263. package/dist/source-agent-qualifier.js +14 -14
  264. package/dist/standup/build.js +11 -11
  265. package/dist/{state-ITXJKXRE.js → state-JB47KHYV.js} +2 -2
  266. package/dist/state-JB47KHYV.js.map +1 -0
  267. package/dist/storage.d.ts +9 -3
  268. package/dist/storage.d.ts.map +1 -1
  269. package/dist/storage.js +10 -10
  270. package/dist/subject-config.js +4 -4
  271. package/dist/summarizer.js +3 -3
  272. package/dist/support-passport/index.js +59 -52
  273. package/dist/support-passport/offline-sync-guard.d.ts +6 -2
  274. package/dist/support-passport/offline-sync-guard.d.ts.map +1 -1
  275. package/dist/{trace-ZFVRH4GO.js → trace-LXXCMZJA.js} +3 -3
  276. package/dist/transfer/backup.js +2 -2
  277. package/dist/transfer/capsule-export.js +2 -2
  278. package/dist/transfer/capsule-import.js +3 -3
  279. package/dist/transfer/export-okf.js +12 -12
  280. package/dist/{tui-55UJMJX7.js → tui-2Z5WOV7L.js} +3 -3
  281. package/dist/tui-2Z5WOV7L.js.map +1 -0
  282. package/dist/verified-recall.js +11 -11
  283. package/dist/who-knows-cli.js +12 -12
  284. package/dist/who-knows.js +11 -11
  285. package/dist/write-envelope.js +4 -4
  286. package/package.json +2 -2
  287. package/src/access-http-offline-stream.ts +3 -0
  288. package/src/access-mcp-output-schemas.ts +1 -0
  289. package/src/access-service.ts +7 -18
  290. package/src/console/state.test.ts +56 -0
  291. package/src/console/state.ts +83 -0
  292. package/src/embedding-fallback.ts +325 -141
  293. package/src/embedding-generation-lock.ts +141 -0
  294. package/src/embedding-index-storage.test.ts +245 -0
  295. package/src/embedding-index-storage.ts +1068 -0
  296. package/src/index.ts +3 -3
  297. package/src/offline-sync-changeset-generations.test.ts +962 -0
  298. package/src/offline-sync-changeset-generations.ts +549 -0
  299. package/src/offline-sync-embedding-generation.test.ts +2173 -0
  300. package/src/offline-sync-embedding-generation.ts +1153 -0
  301. package/src/offline-sync-exclude-globs.ts +112 -0
  302. package/src/offline-sync-file-io.ts +48 -0
  303. package/src/offline-sync-runtime-state.ts +48 -0
  304. package/src/offline-sync-snapshot-stream.ts +99 -0
  305. package/src/offline-sync-upload-staging.ts +291 -0
  306. package/src/offline-sync.test.ts +164 -1
  307. package/src/offline-sync.ts +372 -454
  308. package/src/orchestrator.ts +2 -1
  309. package/src/secure-store/secure-fs.ts +26 -6
  310. package/src/storage.ts +11 -6
  311. package/src/support-passport/offline-sync-guard.ts +16 -2
  312. package/dist/chunk-3BTFBQLO.js.map +0 -1
  313. package/dist/chunk-AREGMX2J.js +0 -50
  314. package/dist/chunk-AREGMX2J.js.map +0 -1
  315. package/dist/chunk-FOH7AMMI.js.map +0 -1
  316. package/dist/chunk-FRCESVV6.js.map +0 -1
  317. package/dist/chunk-G6SVZWPB.js.map +0 -1
  318. package/dist/chunk-JN72EPOE.js.map +0 -1
  319. package/dist/chunk-RB776UH3.js.map +0 -1
  320. package/dist/chunk-WQZZDN5M.js.map +0 -1
  321. /package/dist/{auto-sync-6IPX2BAC.js.map → auto-sync-U5N3CB5Y.js.map} +0 -0
  322. /package/dist/{capsule-crypto-7FJQINUR.js.map → capsule-crypto-GWVG7LGC.js.map} +0 -0
  323. /package/dist/{capsule-merge-3MNURAQ3.js.map → capsule-merge-ZCXUPLNJ.js.map} +0 -0
  324. /package/dist/{chunk-JE334SIA.js.map → chunk-22DYJLFN.js.map} +0 -0
  325. /package/dist/{chunk-JGSQ6P4D.js.map → chunk-2FX374UI.js.map} +0 -0
  326. /package/dist/{chunk-SY5KDWGU.js.map → chunk-2WLMWP2T.js.map} +0 -0
  327. /package/dist/{chunk-6TT6HRE4.js.map → chunk-3AGHSQPM.js.map} +0 -0
  328. /package/dist/{chunk-P6WFK4ZJ.js.map → chunk-3O5BB45T.js.map} +0 -0
  329. /package/dist/{chunk-3C3J243X.js.map → chunk-3QKO4QN7.js.map} +0 -0
  330. /package/dist/{chunk-KFCMMDHH.js.map → chunk-3YD44CH2.js.map} +0 -0
  331. /package/dist/{chunk-7DE2NOON.js.map → chunk-4O4XCBOS.js.map} +0 -0
  332. /package/dist/{chunk-GDYU6VF4.js.map → chunk-5AYUHSAU.js.map} +0 -0
  333. /package/dist/{chunk-ICZQG4XE.js.map → chunk-5FAGCOZD.js.map} +0 -0
  334. /package/dist/{chunk-VKQI47DJ.js.map → chunk-5FNZ3G6X.js.map} +0 -0
  335. /package/dist/{chunk-VQNONC4E.js.map → chunk-5STPRPE7.js.map} +0 -0
  336. /package/dist/{chunk-52II7PB6.js.map → chunk-645WOU5I.js.map} +0 -0
  337. /package/dist/{chunk-SRZW7FNU.js.map → chunk-64ZUALXK.js.map} +0 -0
  338. /package/dist/{chunk-4BZP2B4U.js.map → chunk-6MNKDTDI.js.map} +0 -0
  339. /package/dist/{chunk-DUJYRVUD.js.map → chunk-6O2VUWV6.js.map} +0 -0
  340. /package/dist/{chunk-HESDNYRB.js.map → chunk-76M5OK7V.js.map} +0 -0
  341. /package/dist/{chunk-FAN73COB.js.map → chunk-7D7OUO5W.js.map} +0 -0
  342. /package/dist/{chunk-DZ525SNQ.js.map → chunk-7QE46QXI.js.map} +0 -0
  343. /package/dist/{chunk-VX6GCKBS.js.map → chunk-7WBSMXGC.js.map} +0 -0
  344. /package/dist/{chunk-VVDWZRZG.js.map → chunk-A6RVIHHK.js.map} +0 -0
  345. /package/dist/{chunk-M536WNTQ.js.map → chunk-AEJ3TE5H.js.map} +0 -0
  346. /package/dist/{chunk-72JNNJJJ.js.map → chunk-AXC4WSF3.js.map} +0 -0
  347. /package/dist/{chunk-UA5DX5C3.js.map → chunk-AZIOEOK4.js.map} +0 -0
  348. /package/dist/{chunk-N4S4NUX5.js.map → chunk-B3O3IRZN.js.map} +0 -0
  349. /package/dist/{chunk-XTYX6V52.js.map → chunk-BJVO4H5C.js.map} +0 -0
  350. /package/dist/{chunk-7LCGFUMB.js.map → chunk-BUKK5SWA.js.map} +0 -0
  351. /package/dist/{chunk-TM3RXL4G.js.map → chunk-BUQKSQXL.js.map} +0 -0
  352. /package/dist/{chunk-37S3IMYB.js.map → chunk-DGS34QSY.js.map} +0 -0
  353. /package/dist/{chunk-4IEOGIPB.js.map → chunk-DO4C4AXD.js.map} +0 -0
  354. /package/dist/{chunk-SPSRGEDQ.js.map → chunk-EAQQ2FD3.js.map} +0 -0
  355. /package/dist/{chunk-C3QXITIP.js.map → chunk-EQUD7FP4.js.map} +0 -0
  356. /package/dist/{chunk-YNDLCWXS.js.map → chunk-EZ25VE3G.js.map} +0 -0
  357. /package/dist/{chunk-YITN5WXI.js.map → chunk-FC52YWAO.js.map} +0 -0
  358. /package/dist/{chunk-ZI7QA4MK.js.map → chunk-FEIXG5FA.js.map} +0 -0
  359. /package/dist/{chunk-CLXTDOKV.js.map → chunk-FUNBJQYR.js.map} +0 -0
  360. /package/dist/{chunk-CLSYE5OZ.js.map → chunk-G2STTRYB.js.map} +0 -0
  361. /package/dist/{chunk-TDYAIXHK.js.map → chunk-H36X4NRH.js.map} +0 -0
  362. /package/dist/{chunk-3GQC3NMB.js.map → chunk-H56VY4BY.js.map} +0 -0
  363. /package/dist/{chunk-PUKTBULQ.js.map → chunk-HWLIMQE2.js.map} +0 -0
  364. /package/dist/{chunk-V2ES4WCZ.js.map → chunk-IIARQTZ2.js.map} +0 -0
  365. /package/dist/{chunk-QEV26L2F.js.map → chunk-IKDRGVVJ.js.map} +0 -0
  366. /package/dist/{chunk-LS3XH3UE.js.map → chunk-IYIBGSHJ.js.map} +0 -0
  367. /package/dist/{chunk-YSJTCOHR.js.map → chunk-J27JML5O.js.map} +0 -0
  368. /package/dist/{chunk-AQK54Q7O.js.map → chunk-JB56XYHP.js.map} +0 -0
  369. /package/dist/{chunk-NE6PHPLG.js.map → chunk-JBH26P62.js.map} +0 -0
  370. /package/dist/{chunk-CWHV574S.js.map → chunk-JUT3OR2L.js.map} +0 -0
  371. /package/dist/{chunk-6ET2VII7.js.map → chunk-JYG2334B.js.map} +0 -0
  372. /package/dist/{chunk-LF5IGOOD.js.map → chunk-JYM4Y6SO.js.map} +0 -0
  373. /package/dist/{chunk-FB64XE3R.js.map → chunk-JZ4TJHR2.js.map} +0 -0
  374. /package/dist/{chunk-EHS5MJEF.js.map → chunk-KTKHO3UI.js.map} +0 -0
  375. /package/dist/{chunk-WIKO4SCR.js.map → chunk-LHRQBMJN.js.map} +0 -0
  376. /package/dist/{chunk-K4J4E7WV.js.map → chunk-LO4UKPKX.js.map} +0 -0
  377. /package/dist/{chunk-6NQ4LSMS.js.map → chunk-MGZMC6WN.js.map} +0 -0
  378. /package/dist/{chunk-BMYZTZ5D.js.map → chunk-MY7B3HYC.js.map} +0 -0
  379. /package/dist/{chunk-NB3LRY4T.js.map → chunk-N4PYB235.js.map} +0 -0
  380. /package/dist/{chunk-S3YM4SZQ.js.map → chunk-N7QV3CMX.js.map} +0 -0
  381. /package/dist/{chunk-L6UZEAID.js.map → chunk-NJVR724O.js.map} +0 -0
  382. /package/dist/{chunk-VLLD4TOB.js.map → chunk-NMZVDRVP.js.map} +0 -0
  383. /package/dist/{chunk-P2WZHLUF.js.map → chunk-NOL7SEWN.js.map} +0 -0
  384. /package/dist/{chunk-2NLLXCJG.js.map → chunk-OWHERGF2.js.map} +0 -0
  385. /package/dist/{chunk-6L3PBSAR.js.map → chunk-PMNLL2TL.js.map} +0 -0
  386. /package/dist/{chunk-VYCOJKSX.js.map → chunk-PO7NXNGC.js.map} +0 -0
  387. /package/dist/{chunk-4IIMMZZK.js.map → chunk-PULDSMCJ.js.map} +0 -0
  388. /package/dist/{chunk-HBBHL4YF.js.map → chunk-QOXNTKXB.js.map} +0 -0
  389. /package/dist/{chunk-CUCWX3MO.js.map → chunk-QZLCVO2V.js.map} +0 -0
  390. /package/dist/{chunk-NE7I2RCT.js.map → chunk-R3X2T2LP.js.map} +0 -0
  391. /package/dist/{chunk-S7GCT7NU.js.map → chunk-RBITPCMK.js.map} +0 -0
  392. /package/dist/{chunk-EVBI7S4J.js.map → chunk-RMDGAAZF.js.map} +0 -0
  393. /package/dist/{chunk-BJRAELDH.js.map → chunk-SCXURCVT.js.map} +0 -0
  394. /package/dist/{chunk-EQ6YOIKO.js.map → chunk-ST2RQUXC.js.map} +0 -0
  395. /package/dist/{chunk-CS52MFDV.js.map → chunk-SZG4WFAG.js.map} +0 -0
  396. /package/dist/{chunk-BFO3IR56.js.map → chunk-TPEZ2SHV.js.map} +0 -0
  397. /package/dist/{chunk-YRLHEEQT.js.map → chunk-U6VC6RP3.js.map} +0 -0
  398. /package/dist/{chunk-MOQPEFLN.js.map → chunk-UP75KL3L.js.map} +0 -0
  399. /package/dist/{chunk-W4AOR52H.js.map → chunk-UQDC3W77.js.map} +0 -0
  400. /package/dist/{chunk-X7Y7WX73.js.map → chunk-UVYI6VIX.js.map} +0 -0
  401. /package/dist/{chunk-D5F7TKMH.js.map → chunk-V4JZCTMK.js.map} +0 -0
  402. /package/dist/{chunk-MQJL6CDZ.js.map → chunk-VA4O3U7U.js.map} +0 -0
  403. /package/dist/{chunk-4CDYONWO.js.map → chunk-VDO32NLK.js.map} +0 -0
  404. /package/dist/{chunk-SOZUJCME.js.map → chunk-VHDKPGMG.js.map} +0 -0
  405. /package/dist/{chunk-QWW2JDDX.js.map → chunk-WNRTXEWW.js.map} +0 -0
  406. /package/dist/{chunk-NR2ASHBL.js.map → chunk-XOV7NRY5.js.map} +0 -0
  407. /package/dist/{chunk-KP7SANCF.js.map → chunk-YPI4RQWV.js.map} +0 -0
  408. /package/dist/{chunk-JKMHZF3Q.js.map → chunk-YSWJXOOL.js.map} +0 -0
  409. /package/dist/{chunk-LQG5O5EP.js.map → chunk-Z3O53WZR.js.map} +0 -0
  410. /package/dist/{chunk-QVS22WTO.js.map → chunk-ZG5DWWKK.js.map} +0 -0
  411. /package/dist/{graph-edge-decay-KQGS3L3B.js.map → embedding-generation-lock.js.map} +0 -0
  412. /package/dist/{resolution-DNX7FO7A.js.map → embedding-index-storage.js.map} +0 -0
  413. /package/dist/{first-start-migration-7OATHJKB.js.map → first-start-migration-GAT7G733.js.map} +0 -0
  414. /package/dist/{state-ITXJKXRE.js.map → graph-edge-decay-MKIRZ762.js.map} +0 -0
  415. /package/dist/{tui-55UJMJX7.js.map → offline-sync-changeset-generations.js.map} +0 -0
  416. /package/dist/{trace-ZFVRH4GO.js.map → trace-LXXCMZJA.js.map} +0 -0
@@ -13,16 +13,13 @@ import {
13
13
  import {
14
14
  importSqlite
15
15
  } from "./chunk-PYHOAXTI.js";
16
- import {
17
- backupMemoryDir
18
- } from "./chunk-2NLLXCJG.js";
19
16
  import {
20
17
  exportJsonBundle
21
18
  } from "./chunk-UP6MOYCB.js";
22
19
  import {
23
20
  exportOkfBundle,
24
21
  parseIncludeStatus
25
- } from "./chunk-EHS5MJEF.js";
22
+ } from "./chunk-KTKHO3UI.js";
26
23
  import {
27
24
  exportSqlite
28
25
  } from "./chunk-BV2TIZ4F.js";
@@ -32,12 +29,12 @@ import {
32
29
  import {
33
30
  importJsonBundle
34
31
  } from "./chunk-2DL3OFLD.js";
32
+ import {
33
+ backupMemoryDir
34
+ } from "./chunk-OWHERGF2.js";
35
35
  import {
36
36
  exportMarkdownBundle
37
37
  } from "./chunk-765K3SAT.js";
38
- import {
39
- RoutingRulesStore
40
- } from "./chunk-TBUEE7XF.js";
41
38
  import {
42
39
  buildReplayNormalizerRegistry,
43
40
  clampBatchSize,
@@ -47,6 +44,9 @@ import {
47
44
  isReplaySource,
48
45
  normalizeReplaySessionKey
49
46
  } from "./chunk-AJVLDJU6.js";
47
+ import {
48
+ RoutingRulesStore
49
+ } from "./chunk-TBUEE7XF.js";
50
50
  import {
51
51
  TailscaleHelper
52
52
  } from "./chunk-SZDLX763.js";
@@ -58,16 +58,13 @@ import {
58
58
  } from "./chunk-IIFFC3RL.js";
59
59
  import {
60
60
  rebuildMemoryLifecycleLedger
61
- } from "./chunk-L6UZEAID.js";
61
+ } from "./chunk-NJVR724O.js";
62
62
  import {
63
63
  rebuildObservations
64
64
  } from "./chunk-DQTCGVFK.js";
65
65
  import {
66
66
  archiveObservations
67
67
  } from "./chunk-YLBE6PLR.js";
68
- import {
69
- runCompatChecks
70
- } from "./chunk-2524MOWK.js";
71
68
  import {
72
69
  getBulkImportSource,
73
70
  listBulkImportSources,
@@ -76,10 +73,13 @@ import {
76
73
  } from "./chunk-HSSERO3E.js";
77
74
  import {
78
75
  lintOkfDir
79
- } from "./chunk-CLSYE5OZ.js";
76
+ } from "./chunk-G2STTRYB.js";
77
+ import {
78
+ runCompatChecks
79
+ } from "./chunk-2524MOWK.js";
80
80
  import {
81
81
  searchVerifiedEpisodes
82
- } from "./chunk-JKMHZF3Q.js";
82
+ } from "./chunk-YSWJXOOL.js";
83
83
  import {
84
84
  getUtilityLearningStatus,
85
85
  learnUtilityPromotionWeights
@@ -93,15 +93,15 @@ import {
93
93
  } from "./chunk-OJP3N7UK.js";
94
94
  import {
95
95
  promoteSemanticRuleFromMemory
96
- } from "./chunk-EQ6YOIKO.js";
96
+ } from "./chunk-ST2RQUXC.js";
97
97
  import {
98
98
  searchVerifiedSemanticRules
99
- } from "./chunk-LS3XH3UE.js";
99
+ } from "./chunk-IYIBGSHJ.js";
100
100
  import {
101
101
  buildResumeBundleFromState,
102
102
  getResumeBundleStatus,
103
103
  recordResumeBundle
104
- } from "./chunk-SY5KDWGU.js";
104
+ } from "./chunk-2WLMWP2T.js";
105
105
  import {
106
106
  getWorkProductLedgerStatus,
107
107
  recordWorkProductLedgerEntry,
@@ -113,10 +113,6 @@ import {
113
113
  import {
114
114
  parseXrayCliOptions
115
115
  } from "./chunk-DBYAY6UW.js";
116
- import {
117
- readRuntimePolicySnapshot,
118
- sanitizeRuntimePolicyValues
119
- } from "./chunk-2LA3H54D.js";
120
116
  import {
121
117
  formatNamespaceMaintenanceHealthText,
122
118
  runBenchmarkRecall,
@@ -125,7 +121,7 @@ import {
125
121
  runOperatorInventory,
126
122
  runOperatorRepair,
127
123
  runOperatorSetup
128
- } from "./chunk-4IIMMZZK.js";
124
+ } from "./chunk-PULDSMCJ.js";
129
125
  import {
130
126
  analyzeSessionIntegrity,
131
127
  applySessionRepair,
@@ -140,6 +136,10 @@ import {
140
136
  renderPatternExplain,
141
137
  renderPatternsList
142
138
  } from "./chunk-3T74IZB3.js";
139
+ import {
140
+ readRuntimePolicySnapshot,
141
+ sanitizeRuntimePolicyValues
142
+ } from "./chunk-2LA3H54D.js";
143
143
  import {
144
144
  GITHUB_CONNECTOR_ID,
145
145
  GMAIL_CONNECTOR_ID,
@@ -171,12 +171,12 @@ import {
171
171
  } from "./chunk-4IHBN6WU.js";
172
172
  import {
173
173
  GraphDashboardServer
174
- } from "./chunk-YNDLCWXS.js";
174
+ } from "./chunk-EZ25VE3G.js";
175
175
  import {
176
176
  rebuildMemoryProjection,
177
177
  repairMemoryProjection,
178
178
  verifyMemoryProjection
179
- } from "./chunk-VX6GCKBS.js";
179
+ } from "./chunk-7WBSMXGC.js";
180
180
  import {
181
181
  buildConnectorRowsFromDefinitions,
182
182
  parseConnectorsListOptions,
@@ -197,7 +197,7 @@ import {
197
197
  } from "./chunk-6TBIWIAG.js";
198
198
  import {
199
199
  parseConfig
200
- } from "./chunk-3GQC3NMB.js";
200
+ } from "./chunk-H56VY4BY.js";
201
201
  import {
202
202
  applyManagedRegion,
203
203
  expandVaultTemplateTokens,
@@ -210,7 +210,7 @@ import {
210
210
  import {
211
211
  EngramAccessHttpServer,
212
212
  MeetingsInputError
213
- } from "./chunk-LF5IGOOD.js";
213
+ } from "./chunk-JYM4Y6SO.js";
214
214
  import {
215
215
  WearablesInputError
216
216
  } from "./chunk-V7IZKJI3.js";
@@ -220,10 +220,10 @@ import {
220
220
  loadChatSession,
221
221
  processChatMessage,
222
222
  sessionBelongsToPrincipal
223
- } from "./chunk-CWHV574S.js";
223
+ } from "./chunk-JUT3OR2L.js";
224
224
  import {
225
225
  EngramAccessService
226
- } from "./chunk-FOH7AMMI.js";
226
+ } from "./chunk-CALBQ2NG.js";
227
227
  import {
228
228
  WorkStorage
229
229
  } from "./chunk-MPC7TYTZ.js";
@@ -243,7 +243,7 @@ import {
243
243
  } from "./chunk-KN6CIN7I.js";
244
244
  import {
245
245
  readAggregateExtractionWatermark
246
- } from "./chunk-UA5DX5C3.js";
246
+ } from "./chunk-AZIOEOK4.js";
247
247
  import {
248
248
  getObjectiveStateStoreStatus
249
249
  } from "./chunk-HM7RHKS4.js";
@@ -252,7 +252,7 @@ import {
252
252
  } from "./chunk-66DKTOBY.js";
253
253
  import {
254
254
  searchHarmonicRetrieval
255
- } from "./chunk-DZ525SNQ.js";
255
+ } from "./chunk-7QE46QXI.js";
256
256
  import {
257
257
  getCueAnchorStoreStatus
258
258
  } from "./chunk-BMWN7B3Y.js";
@@ -261,18 +261,18 @@ import {
261
261
  readMemoryGovernanceRunArtifact,
262
262
  restoreMemoryGovernanceRun,
263
263
  runMemoryGovernance
264
- } from "./chunk-VLLD4TOB.js";
264
+ } from "./chunk-NMZVDRVP.js";
265
265
  import {
266
266
  listNamespaces,
267
267
  runNamespaceMigration,
268
268
  verifyNamespaces
269
- } from "./chunk-JGSQ6P4D.js";
269
+ } from "./chunk-2FX374UI.js";
270
270
  import {
271
271
  resolveNamespaceChildRoot
272
272
  } from "./chunk-3UXOZBHV.js";
273
273
  import {
274
274
  analyzeGraphHealth
275
- } from "./chunk-ICZQG4XE.js";
275
+ } from "./chunk-5FAGCOZD.js";
276
276
  import {
277
277
  hostSecretRefResolver,
278
278
  loadHostSecretRefResolver,
@@ -300,10 +300,10 @@ import {
300
300
  } from "./chunk-QDW3E4RD.js";
301
301
  import {
302
302
  getCausalTrajectoryStoreStatus
303
- } from "./chunk-N4S4NUX5.js";
303
+ } from "./chunk-B3O3IRZN.js";
304
304
  import {
305
305
  meetingIdDate
306
- } from "./chunk-FRCESVV6.js";
306
+ } from "./chunk-4HUCP4R4.js";
307
307
  import {
308
308
  isValidTranscriptDate
309
309
  } from "./chunk-UHVXE24Y.js";
@@ -330,7 +330,7 @@ import {
330
330
  } from "./chunk-353C5UNV.js";
331
331
  import {
332
332
  composeMemoryEnvelope
333
- } from "./chunk-GDYU6VF4.js";
333
+ } from "./chunk-5AYUHSAU.js";
334
334
  import {
335
335
  buildActionConfidenceInputFromOptions,
336
336
  evaluateActionConfidence,
@@ -338,7 +338,7 @@ import {
338
338
  } from "./chunk-Z2YFLXHU.js";
339
339
  import {
340
340
  STATE_FILE_MAX_DECRYPT_BYTES
341
- } from "./chunk-JE334SIA.js";
341
+ } from "./chunk-22DYJLFN.js";
342
342
  import {
343
343
  inferMemoryStatus,
344
344
  isArchivedMemoryPath,
@@ -391,7 +391,7 @@ import {
391
391
  import {
392
392
  SECURE_STORE_ENVELOPE_OVERHEAD_BYTES,
393
393
  probeEncryptedRegularFileHeader
394
- } from "./chunk-JN72EPOE.js";
394
+ } from "./chunk-MAAL6OZV.js";
395
395
  import {
396
396
  RECALL_FALLBACK_DIRS
397
397
  } from "./chunk-VS2IYZRU.js";
@@ -6698,7 +6698,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
6698
6698
  }
6699
6699
  }
6700
6700
  if (sourceArchive.endsWith(".enc")) {
6701
- const { isEncryptedCapsuleFile } = await import("./capsule-crypto-7FJQINUR.js");
6701
+ const { isEncryptedCapsuleFile } = await import("./capsule-crypto-GWVG7LGC.js");
6702
6702
  const encDetected = await isEncryptedCapsuleFile(sourceArchive).catch(() => true);
6703
6703
  if (encDetected) {
6704
6704
  throw new Error(
@@ -6706,7 +6706,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
6706
6706
  );
6707
6707
  }
6708
6708
  }
6709
- const { mergeCapsule } = await import("./capsule-merge-3MNURAQ3.js");
6709
+ const { mergeCapsule } = await import("./capsule-merge-ZCXUPLNJ.js");
6710
6710
  const result = await mergeCapsule({
6711
6711
  sourceArchive,
6712
6712
  targetRoot: memoryDir,
@@ -6861,7 +6861,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
6861
6861
  const { parseExportBundle } = await import("./transfer/types.js");
6862
6862
  let decryptedBuf;
6863
6863
  try {
6864
- const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-7FJQINUR.js");
6864
+ const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-GWVG7LGC.js");
6865
6865
  decryptedBuf = await decryptCapsuleFileInMemory(archivePath, memoryDir);
6866
6866
  } catch (decErr) {
6867
6867
  const msg = decErr instanceof Error ? decErr.message : String(decErr);
@@ -9351,7 +9351,7 @@ Semantic consolidation complete. clusters=${result.clustersFound}, consolidated=
9351
9351
  console.error("--verb is required. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context");
9352
9352
  process.exit(1);
9353
9353
  }
9354
- const { isValidResolutionVerb, executeResolution } = await import("./resolution-DNX7FO7A.js");
9354
+ const { isValidResolutionVerb, executeResolution } = await import("./resolution-K4A3VPKZ.js");
9355
9355
  if (!isValidResolutionVerb(verb)) {
9356
9356
  console.error(`Invalid verb: ${verb}. Must be one of: keep-a, keep-b, merge, both-valid, needs-more-context`);
9357
9357
  process.exit(1);
@@ -9903,13 +9903,13 @@ Legacy identity-anchor files are untouched. Verify the migration result`);
9903
9903
  ).action(async (...args) => {
9904
9904
  const options = args[0] ?? {};
9905
9905
  if (options.stateOnly === true) {
9906
- const { gatherConsoleState } = await import("./state-ITXJKXRE.js");
9906
+ const { gatherConsoleState } = await import("./state-JB47KHYV.js");
9907
9907
  const snapshot = await gatherConsoleState(orchestrator);
9908
9908
  console.log(JSON.stringify(snapshot, null, 2));
9909
9909
  return;
9910
9910
  }
9911
9911
  if (typeof options.trace === "string" && options.trace.length > 0) {
9912
- const { replayTrace, parseSpeedFlag } = await import("./trace-ZFVRH4GO.js");
9912
+ const { replayTrace, parseSpeedFlag } = await import("./trace-LXXCMZJA.js");
9913
9913
  const { expandTildePath: expandTildePath2 } = await import("./utils/path.js");
9914
9914
  const tracePath = expandTildePath2(options.trace);
9915
9915
  let speed;
@@ -9937,10 +9937,10 @@ Legacy identity-anchor files are untouched. Verify the migration result`);
9937
9937
  }
9938
9938
  return;
9939
9939
  }
9940
- const { runConsoleTui } = await import("./tui-55UJMJX7.js");
9940
+ const { runConsoleTui } = await import("./tui-2Z5WOV7L.js");
9941
9941
  let recorder = null;
9942
9942
  if (typeof options.recordTrace === "string" && options.recordTrace.length > 0) {
9943
- const { openTraceRecorder } = await import("./trace-ZFVRH4GO.js");
9943
+ const { openTraceRecorder } = await import("./trace-LXXCMZJA.js");
9944
9944
  const { expandTildePath: expandTildePath2 } = await import("./utils/path.js");
9945
9945
  recorder = await openTraceRecorder(
9946
9946
  expandTildePath2(options.recordTrace)
@@ -9954,7 +9954,7 @@ Legacy identity-anchor files are untouched. Verify the migration result`);
9954
9954
  } finally {
9955
9955
  if (recorder) {
9956
9956
  const CLOSE_TIMEOUT_MS = 2e3;
9957
- const { flushWithTimeout } = await import("./trace-ZFVRH4GO.js");
9957
+ const { flushWithTimeout } = await import("./trace-LXXCMZJA.js");
9958
9958
  const flushResult = await flushWithTimeout(
9959
9959
  (signal) => recorder.close(signal),
9960
9960
  CLOSE_TIMEOUT_MS
@@ -10136,4 +10136,4 @@ export {
10136
10136
  listMemoryMarkdownFilePaths,
10137
10137
  registerCli
10138
10138
  };
10139
- //# sourceMappingURL=chunk-6NQ4LSMS.js.map
10139
+ //# sourceMappingURL=chunk-MGZMC6WN.js.map
@@ -0,0 +1,372 @@
1
+ import {
2
+ EMBEDDING_SHARD_DIR_BASENAME,
3
+ applyEmbeddingGenerationRemoval,
4
+ applyEmbeddingGenerationTransaction,
5
+ embeddingGenerationMembership,
6
+ embeddingShardDirOf,
7
+ isEmbeddingGenerationDirPath
8
+ } from "./chunk-AXGJMDBS.js";
9
+ import {
10
+ EMBEDDING_SHARD_FILE_PATTERN
11
+ } from "./chunk-TYT4TEQV.js";
12
+ import {
13
+ resolveSafeArchiveTarget
14
+ } from "./chunk-GCGJW34D.js";
15
+ import {
16
+ EmbeddingIndexStorageError
17
+ } from "./chunk-UCPGOUDZ.js";
18
+
19
+ // src/offline-sync-changeset-generations.ts
20
+ import { lstat, readdir } from "fs/promises";
21
+ var EMBEDDING_MARKER_BASENAME = "embeddings.json";
22
+ async function pathExists(absPath) {
23
+ try {
24
+ await lstat(absPath);
25
+ return true;
26
+ } catch (err) {
27
+ if (err.code === "ENOENT") return false;
28
+ throw err;
29
+ }
30
+ }
31
+ var SHA256_PATTERN = /^[0-9a-f]{64}$/;
32
+ function normalizeChangesetGenerations(raw, changes) {
33
+ if (raw === void 0) return void 0;
34
+ if (!Array.isArray(raw)) {
35
+ throw new Error("offline sync changeset embeddingGenerations must be an array");
36
+ }
37
+ const dirs = /* @__PURE__ */ new Set();
38
+ const generations = [];
39
+ for (const entry of raw) {
40
+ if (!entry || typeof entry !== "object" || Array.isArray(entry)) {
41
+ throw new Error("offline sync changeset embeddingGenerations entries must be objects");
42
+ }
43
+ const record = entry;
44
+ const shardDir = typeof record.shardDir === "string" ? record.shardDir : "";
45
+ if (!isEmbeddingGenerationDirPath(shardDir)) {
46
+ throw new Error(`offline sync changeset embeddingGenerations shardDir must be a canonical embeddings generation dir: ${shardDir}`);
47
+ }
48
+ if (dirs.has(shardDir)) {
49
+ throw new Error(`offline sync changeset embeddingGenerations has a duplicate shardDir: ${shardDir}`);
50
+ }
51
+ if (!Array.isArray(record.members) || record.members.length === 0) {
52
+ throw new Error(`offline sync changeset embeddingGenerations ${shardDir} must list its complete member set`);
53
+ }
54
+ const memberPaths = /* @__PURE__ */ new Set();
55
+ const members = [];
56
+ for (const rawMember of record.members) {
57
+ if (!rawMember || typeof rawMember !== "object" || Array.isArray(rawMember)) {
58
+ throw new Error(`offline sync changeset embeddingGenerations ${shardDir} members must be objects`);
59
+ }
60
+ const member = rawMember;
61
+ const memberPath = typeof member.path === "string" ? member.path : "";
62
+ if (embeddingShardDirOf(memberPath) !== shardDir) {
63
+ throw new Error(`offline sync changeset embeddingGenerations member ${memberPath} does not belong to generation ${shardDir}`);
64
+ }
65
+ if (memberPaths.has(memberPath)) {
66
+ throw new Error(`offline sync changeset embeddingGenerations ${shardDir} has a duplicate member: ${memberPath}`);
67
+ }
68
+ if (typeof member.sha256 !== "string" || !SHA256_PATTERN.test(member.sha256)) {
69
+ throw new Error(`offline sync changeset embeddingGenerations member ${memberPath} sha256 must be a lowercase sha256 hex digest`);
70
+ }
71
+ if (typeof member.bytes !== "number" || !Number.isInteger(member.bytes) || member.bytes < 0) {
72
+ throw new Error(`offline sync changeset embeddingGenerations member ${memberPath} bytes must be a non-negative integer`);
73
+ }
74
+ memberPaths.add(memberPath);
75
+ members.push({ path: memberPath, sha256: member.sha256, bytes: member.bytes });
76
+ }
77
+ dirs.add(shardDir);
78
+ generations.push({ shardDir, members });
79
+ }
80
+ const memberByPath = /* @__PURE__ */ new Map();
81
+ for (const generation of generations) {
82
+ for (const member of generation.members) memberByPath.set(member.path, member);
83
+ }
84
+ for (const change of changes) {
85
+ const membership = embeddingGenerationMembership(change.path);
86
+ if (!membership) continue;
87
+ const manifested = memberByPath.get(change.path);
88
+ if (change.type === "upsert") {
89
+ if (membership.kind !== "shard") continue;
90
+ if (!manifested) {
91
+ throw new Error(`offline sync changeset upserts of embedding shards require a manifest entry: ${change.path}`);
92
+ }
93
+ if (manifested.sha256 !== change.file.sha256 || manifested.bytes !== change.file.bytes) {
94
+ throw new Error(`offline sync changeset manifest member ${change.path} does not match the upserted record`);
95
+ }
96
+ continue;
97
+ }
98
+ if (manifested) {
99
+ throw new Error(`offline sync changeset delete of ${change.path} contradicts its manifest membership`);
100
+ }
101
+ }
102
+ return generations;
103
+ }
104
+ function deferGenerationConflicts(dirChanges, currentMap, reason) {
105
+ const conflicts = [];
106
+ const conflictedPaths = /* @__PURE__ */ new Set();
107
+ for (const change of dirChanges) {
108
+ conflictedPaths.add(change.path);
109
+ conflicts.push({
110
+ path: change.path,
111
+ reason,
112
+ ...change.type === "upsert" ? { incomingSha256: change.file.sha256 } : {},
113
+ ...change.baseSha256 !== void 0 ? { baseSha256: change.baseSha256 } : {},
114
+ localSha256: currentMap.get(change.path)?.sha256
115
+ });
116
+ }
117
+ return { conflicts, conflictedPaths };
118
+ }
119
+ async function applyChangesetEmbeddingGenerations(options) {
120
+ const result = {
121
+ transactionHandled: /* @__PURE__ */ new Set(),
122
+ conflicts: [],
123
+ conflictedPaths: /* @__PURE__ */ new Set(),
124
+ appliedUpserts: 0,
125
+ appliedDeletes: 0,
126
+ writtenStates: /* @__PURE__ */ new Map(),
127
+ removedPaths: /* @__PURE__ */ new Set()
128
+ };
129
+ const manifest = new Map(
130
+ (options.changeset.embeddingGenerations ?? []).map((generation) => [generation.shardDir, generation])
131
+ );
132
+ const shardUpsertChanges = /* @__PURE__ */ new Map();
133
+ const markerUpsertChanges = /* @__PURE__ */ new Map();
134
+ const deleteChangesByDir = /* @__PURE__ */ new Map();
135
+ const dirChanges = /* @__PURE__ */ new Map();
136
+ for (const change of options.changeset.changes) {
137
+ const membership = embeddingGenerationMembership(change.path);
138
+ if (!membership) continue;
139
+ const dir = membership.shardDir;
140
+ if (!dirChanges.has(dir)) dirChanges.set(dir, []);
141
+ dirChanges.get(dir).push(change);
142
+ if (change.type === "upsert") {
143
+ if (membership.kind === "shard") {
144
+ if (!shardUpsertChanges.has(dir)) shardUpsertChanges.set(dir, []);
145
+ shardUpsertChanges.get(dir).push(change);
146
+ } else {
147
+ if (!markerUpsertChanges.has(dir)) markerUpsertChanges.set(dir, []);
148
+ markerUpsertChanges.get(dir).push(change);
149
+ }
150
+ } else {
151
+ if (!deleteChangesByDir.has(dir)) deleteChangesByDir.set(dir, []);
152
+ deleteChangesByDir.get(dir).push(change);
153
+ }
154
+ }
155
+ if ((shardUpsertChanges.size > 0 || markerUpsertChanges.size > 0) && options.customIoPresent && !(options.io.writeStagingFile && options.io.readStagingFile)) {
156
+ throw new EmbeddingIndexStorageError(
157
+ "refusing to replace embedding generation: custom storage IO requires both writeStagingFile and readStagingFile hooks; unencrypted raw staging would plaintext-downgrade the index"
158
+ );
159
+ }
160
+ const runTransaction = async (shardDirRel, input) => {
161
+ const transaction = await applyEmbeddingGenerationTransaction({
162
+ ...input,
163
+ root: options.root,
164
+ io: options.io,
165
+ now: options.now
166
+ });
167
+ if (transaction.deferredLocalDivergence) {
168
+ const deferred = deferGenerationConflicts(
169
+ dirChanges.get(shardDirRel) ?? [],
170
+ options.currentMap,
171
+ "embedding_generation_diverged"
172
+ );
173
+ result.conflicts.push(...deferred.conflicts);
174
+ for (const conflicted of deferred.conflictedPaths) result.conflictedPaths.add(conflicted);
175
+ return transaction;
176
+ }
177
+ result.appliedUpserts += transaction.upserted;
178
+ result.appliedDeletes += transaction.deleted;
179
+ for (const [relPath, state] of transaction.writtenStates) {
180
+ result.writtenStates.set(relPath, state);
181
+ result.transactionHandled.add(relPath);
182
+ }
183
+ for (const relPath of transaction.removedPaths) {
184
+ result.removedPaths.add(relPath);
185
+ result.transactionHandled.add(relPath);
186
+ }
187
+ return transaction;
188
+ };
189
+ const manifestedInput = (shardDirRel, generation) => {
190
+ const upsertByPath = new Map(
191
+ (shardUpsertChanges.get(shardDirRel) ?? []).map((change) => [change.path, change])
192
+ );
193
+ const memberByPath = new Map(generation.members.map((member) => [member.path, member]));
194
+ const incomingShardPaths = generation.members.map((member) => member.path).sort();
195
+ const tombstones = (deleteChangesByDir.get(shardDirRel) ?? []).filter((change) => change.type === "delete");
196
+ const baseStates = /* @__PURE__ */ new Map();
197
+ for (const member of generation.members) {
198
+ const change = upsertByPath.get(member.path);
199
+ if (change) {
200
+ if (change.baseSha256 !== void 0) baseStates.set(member.path, { sha256: change.baseSha256 });
201
+ continue;
202
+ }
203
+ baseStates.set(member.path, { sha256: member.sha256 });
204
+ }
205
+ for (const change of tombstones) {
206
+ baseStates.set(change.path, { sha256: change.baseSha256 });
207
+ }
208
+ return {
209
+ shardDirRel,
210
+ incomingShardPaths,
211
+ incomingMarker: null,
212
+ incomingMarkerPresent: markerUpsertChanges.has(shardDirRel),
213
+ incomingShardStates: new Map(
214
+ incomingShardPaths.map((relPath) => [relPath, {
215
+ path: relPath,
216
+ sha256: upsertByPath.get(relPath)?.file.sha256 ?? memberByPath.get(relPath).sha256,
217
+ bytes: memberByPath.get(relPath).bytes,
218
+ mtimeMs: options.now
219
+ }])
220
+ ),
221
+ incomingBuffers: options.incomingBuffers,
222
+ baseStates,
223
+ // Manifested deletes are pre-authorized removals: the retry after a
224
+ // response loss must re-apply idempotently instead of diverging
225
+ // (#3150 review), and the swept members need their deletion revisions
226
+ // recorded after the swap (the per-file loop never sees them). The
227
+ // map is present whenever tombstones exist — even when none carries
228
+ // mtimeMs — so the recording pass runs and defaults to `now`.
229
+ justifiedRemovals: new Set(tombstones.map((change) => change.path)),
230
+ deletionMtimeByPath: tombstones.length === 0 ? void 0 : new Map(
231
+ tombstones.filter((change) => change.mtimeMs !== void 0).map((change) => [change.path, change.mtimeMs])
232
+ ),
233
+ // All-manifested members base-less = the sender claims a fresh
234
+ // creation; an existing local generation must match exactly or defer.
235
+ freshCreateClaim: baseStates.size === 0
236
+ };
237
+ };
238
+ const stateDirSuffix = `/${EMBEDDING_SHARD_DIR_BASENAME}`;
239
+ const allDirs = /* @__PURE__ */ new Set([
240
+ ...shardUpsertChanges.keys(),
241
+ ...markerUpsertChanges.keys(),
242
+ ...deleteChangesByDir.keys()
243
+ ]);
244
+ for (const shardDirRel of [...allDirs].sort()) {
245
+ const generation = manifest.get(shardDirRel);
246
+ if (shardUpsertChanges.has(shardDirRel) || generation && deleteChangesByDir.has(shardDirRel)) {
247
+ if (!generation) {
248
+ const deferred = deferGenerationConflicts(
249
+ dirChanges.get(shardDirRel) ?? [],
250
+ options.currentMap,
251
+ "embedding_generation_manifest_required"
252
+ );
253
+ result.conflicts.push(...deferred.conflicts);
254
+ for (const conflicted of deferred.conflictedPaths) result.conflictedPaths.add(conflicted);
255
+ continue;
256
+ }
257
+ await runTransaction(shardDirRel, manifestedInput(shardDirRel, generation));
258
+ continue;
259
+ }
260
+ if (markerUpsertChanges.has(shardDirRel)) {
261
+ const markerChange = (markerUpsertChanges.get(shardDirRel) ?? [])[0];
262
+ if (!markerChange) continue;
263
+ const stateDirRel2 = shardDirRel.slice(0, -stateDirSuffix.length);
264
+ const markerRel2 = `${stateDirRel2}/${EMBEDDING_MARKER_BASENAME}`;
265
+ const transaction = await runTransaction(shardDirRel, {
266
+ shardDirRel,
267
+ incomingShardPaths: [],
268
+ incomingMarker: {
269
+ path: markerRel2,
270
+ sha256: markerChange.file.sha256,
271
+ buffer: options.incomingBuffers.get(markerRel2) ?? null
272
+ },
273
+ incomingMarkerPresent: false,
274
+ incomingShardStates: /* @__PURE__ */ new Map(),
275
+ incomingBuffers: options.incomingBuffers,
276
+ baseStates: markerChange.baseSha256 === void 0 ? void 0 : /* @__PURE__ */ new Map([[markerRel2, { sha256: markerChange.baseSha256 }]])
277
+ });
278
+ if (!transaction.deferredLocalDivergence) result.transactionHandled.add(markerRel2);
279
+ continue;
280
+ }
281
+ const deletes = deleteChangesByDir.get(shardDirRel) ?? [];
282
+ const deletePaths = new Set(deletes.map((change) => change.path));
283
+ const stateDirRel = shardDirRel.slice(0, -stateDirSuffix.length);
284
+ const markerRel = `${stateDirRel}/${EMBEDDING_MARKER_BASENAME}`;
285
+ const localMembers = [];
286
+ if (await pathExists(await resolveSafeArchiveTarget(options.root, markerRel))) localMembers.push(markerRel);
287
+ let localShardNames = [];
288
+ try {
289
+ localShardNames = (await readdir(await resolveSafeArchiveTarget(options.root, shardDirRel))).filter((name) => EMBEDDING_SHARD_FILE_PATTERN.test(name));
290
+ } catch (err) {
291
+ if (err.code !== "ENOENT") throw err;
292
+ }
293
+ for (const name of localShardNames) localMembers.push(`${shardDirRel}/${name}`);
294
+ if (localMembers.length === 0) continue;
295
+ if (!localMembers.every((relPath) => deletePaths.has(relPath))) {
296
+ const deferred = deferGenerationConflicts(deletes, options.currentMap, "embedding_generation_manifest_required");
297
+ result.conflicts.push(...deferred.conflicts);
298
+ for (const conflicted of deferred.conflictedPaths) result.conflictedPaths.add(conflicted);
299
+ continue;
300
+ }
301
+ const tombstones = deletes.filter((change) => change.type === "delete");
302
+ const removal = await applyEmbeddingGenerationRemoval({
303
+ root: options.root,
304
+ shardDirRel,
305
+ io: { deleteFile: options.io.deleteFile, readFile: options.io.readFile },
306
+ deletionMtimeByPath: new Map(
307
+ tombstones.filter((change) => change.mtimeMs !== void 0).map((change) => [change.path, change.mtimeMs])
308
+ ),
309
+ baseStates: new Map(tombstones.map((change) => [change.path, { sha256: change.baseSha256 }])),
310
+ now: options.now
311
+ });
312
+ if (removal.deferredLocalDivergence) {
313
+ const deferred = deferGenerationConflicts(deletes, options.currentMap, "embedding_generation_diverged");
314
+ result.conflicts.push(...deferred.conflicts);
315
+ for (const conflicted of deferred.conflictedPaths) result.conflictedPaths.add(conflicted);
316
+ continue;
317
+ }
318
+ result.appliedDeletes += removal.deleted;
319
+ for (const relPath of removal.removedPaths) {
320
+ result.removedPaths.add(relPath);
321
+ result.transactionHandled.add(relPath);
322
+ }
323
+ }
324
+ return result;
325
+ }
326
+ function buildChangesetGenerationManifest(options) {
327
+ const currentByPath = new Map(options.currentFiles.map((state) => [state.path, state]));
328
+ const baseByPath = new Map(options.baseFiles.map((state) => [state.path, state]));
329
+ const touchedDirs = /* @__PURE__ */ new Map();
330
+ for (const change of options.changes) {
331
+ const membership = embeddingGenerationMembership(change.path);
332
+ if (membership) {
333
+ if (!touchedDirs.has(membership.shardDir)) touchedDirs.set(membership.shardDir, []);
334
+ touchedDirs.get(membership.shardDir).push(change);
335
+ }
336
+ }
337
+ const generations = [];
338
+ for (const [shardDirRel, changes] of [...touchedDirs].sort(([left], [right]) => left.localeCompare(right))) {
339
+ const memberPaths = /* @__PURE__ */ new Set();
340
+ for (const relPath of currentByPath.keys()) {
341
+ const membership = embeddingGenerationMembership(relPath);
342
+ if (membership?.shardDir === shardDirRel) memberPaths.add(relPath);
343
+ }
344
+ for (const relPath of baseByPath.keys()) {
345
+ const membership = embeddingGenerationMembership(relPath);
346
+ if (membership?.shardDir === shardDirRel) memberPaths.add(relPath);
347
+ }
348
+ for (const change of changes) memberPaths.add(change.path);
349
+ let omitted = false;
350
+ for (const relPath of memberPaths) {
351
+ if (options.isExcluded(relPath)) {
352
+ omitted = true;
353
+ break;
354
+ }
355
+ }
356
+ if (omitted) continue;
357
+ const members = [...memberPaths].filter((relPath) => currentByPath.has(relPath)).sort().map((relPath) => {
358
+ const state = currentByPath.get(relPath);
359
+ return { path: state.path, sha256: state.sha256, bytes: state.bytes };
360
+ });
361
+ if (members.length === 0) continue;
362
+ generations.push({ shardDir: shardDirRel, members });
363
+ }
364
+ return generations;
365
+ }
366
+
367
+ export {
368
+ normalizeChangesetGenerations,
369
+ applyChangesetEmbeddingGenerations,
370
+ buildChangesetGenerationManifest
371
+ };
372
+ //# sourceMappingURL=chunk-MSAI3Q7D.js.map