@remnic/core 9.69.28 → 9.69.30

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 (372) hide show
  1. package/dist/access-admin-ops-surface.d.ts +1 -1
  2. package/dist/access-admin-ops-surface.js +58 -58
  3. package/dist/access-audit.js +2 -2
  4. package/dist/access-authorization-probe.d.ts +1 -1
  5. package/dist/access-authorization-probe.js +59 -59
  6. package/dist/access-boundary.d.ts +1 -1
  7. package/dist/access-boundary.js +58 -58
  8. package/dist/access-cli.js +133 -132
  9. package/dist/access-cli.js.map +1 -1
  10. package/dist/access-coding-context-resolution.js +4 -4
  11. package/dist/access-extraction-force-flush.d.ts +1 -1
  12. package/dist/access-extraction-force-flush.js +58 -58
  13. package/dist/access-http-briefing.d.ts +1 -1
  14. package/dist/access-http-briefing.js +59 -59
  15. package/dist/access-http-lcm-compaction.d.ts +1 -1
  16. package/dist/access-http-lifecycle-flush.d.ts +1 -1
  17. package/dist/access-http-offline-stream.d.ts +1 -1
  18. package/dist/access-http-query.js +60 -60
  19. package/dist/access-http.d.ts +2 -2
  20. package/dist/access-http.js +76 -76
  21. package/dist/access-identity-continuity-surface.js +58 -58
  22. package/dist/access-lcm-surface.d.ts +1 -1
  23. package/dist/access-lcm-surface.js +58 -58
  24. package/dist/access-mcp.d.ts +1 -1
  25. package/dist/access-mcp.js +66 -66
  26. package/dist/access-namespace-preflight.js +58 -58
  27. package/dist/access-observe-transcript.js +4 -4
  28. package/dist/access-observe-write-surface.d.ts +1 -1
  29. package/dist/access-observe-write-surface.js +58 -58
  30. package/dist/access-offline-manifest.js +8 -8
  31. package/dist/access-operations-batch.js +60 -60
  32. package/dist/access-operations.d.ts +6 -6
  33. package/dist/access-operations.js +65 -65
  34. package/dist/access-recall-concurrency.d.ts +1 -1
  35. package/dist/access-recall-concurrency.js +58 -58
  36. package/dist/access-recall-response.d.ts +1 -1
  37. package/dist/access-recall-response.js +58 -58
  38. package/dist/access-recall-surface.d.ts +1 -1
  39. package/dist/access-recall-surface.js +58 -58
  40. package/dist/access-schema.d.ts +91 -91
  41. package/dist/access-schema.js +3 -3
  42. package/dist/access-service-helpers.d.ts +1 -1
  43. package/dist/access-service.d.ts +1 -1
  44. package/dist/access-service.js +58 -58
  45. package/dist/access-surface-catalog.d.ts +1 -1
  46. package/dist/access-surface-catalog.js +60 -60
  47. package/dist/active-recall.js +11 -11
  48. package/dist/adapters/index.js +4 -4
  49. package/dist/adapters/registry.js +2 -2
  50. package/dist/{auto-sync-WNGG2GC2.js → auto-sync-NSHLUAQI.js} +7 -7
  51. package/dist/briefing.js +19 -19
  52. package/dist/buffer.js +9 -9
  53. package/dist/calibration.js +4 -4
  54. package/dist/causal-consolidation.js +21 -21
  55. package/dist/{chunk-OO42R444.js → chunk-2MFH376S.js} +3 -3
  56. package/dist/{chunk-NXH34IPL.js → chunk-353KGBKY.js} +2 -2
  57. package/dist/{chunk-DZD3WGCD.js → chunk-3JVLGJCY.js} +2 -2
  58. package/dist/{chunk-NOPN47AL.js → chunk-47DEYNMR.js} +2 -2
  59. package/dist/chunk-4NZQ7IID.js +63 -0
  60. package/dist/chunk-4NZQ7IID.js.map +1 -0
  61. package/dist/{chunk-2OO6TPQG.js → chunk-4UDQUPT5.js} +2 -2
  62. package/dist/{chunk-IE57QQSZ.js → chunk-565C6ZFO.js} +2 -2
  63. package/dist/{chunk-C6XEXTSJ.js → chunk-5ABN4WVL.js} +44 -44
  64. package/dist/{chunk-W7OU4I3Y.js → chunk-666OOKB7.js} +2 -2
  65. package/dist/{chunk-EYIEWJNI.js → chunk-6KH5NLQS.js} +2 -2
  66. package/dist/{chunk-R55WAWS3.js → chunk-7DUFJAOE.js} +40 -40
  67. package/dist/{chunk-EMDLM3LW.js → chunk-7IRZK6MM.js} +2 -2
  68. package/dist/{chunk-TVVEYCNW.js → chunk-7K5Q6COX.js} +4 -4
  69. package/dist/{chunk-RFWEDCRC.js → chunk-7VJXIDOC.js} +12 -12
  70. package/dist/{chunk-IVKIODHO.js → chunk-A7XEPMQ6.js} +5 -5
  71. package/dist/{chunk-K6MV3TRQ.js → chunk-ADXCCZL2.js} +2 -2
  72. package/dist/{chunk-GC65K6DI.js → chunk-AOCP6JA7.js} +4 -4
  73. package/dist/{chunk-JBPKEARU.js → chunk-AU7Q3LSC.js} +4 -4
  74. package/dist/{chunk-ND6IQGSZ.js → chunk-BA6WOZOT.js} +2 -2
  75. package/dist/{chunk-JI7U6AS3.js → chunk-C6FQJ52H.js} +2 -2
  76. package/dist/{chunk-IN673LEP.js → chunk-CARRTDKC.js} +2 -2
  77. package/dist/{chunk-HLTAZTN7.js → chunk-CBCNKKZD.js} +2 -2
  78. package/dist/{chunk-DXFG2VGN.js → chunk-CGC5UQCF.js} +2 -2
  79. package/dist/{chunk-YSSAGB2O.js → chunk-CLLPJ6QT.js} +5 -5
  80. package/dist/{chunk-U6S754L6.js → chunk-D5LORF7A.js} +3 -3
  81. package/dist/{chunk-C24UZSFW.js → chunk-DBQWVT2H.js} +2 -2
  82. package/dist/{chunk-XSTNGNJP.js → chunk-DCJ3YFIC.js} +2 -2
  83. package/dist/{chunk-2YDWI2LO.js → chunk-DITMGZOL.js} +2 -2
  84. package/dist/{chunk-LVE64P5Y.js → chunk-E2ZHGBAK.js} +2 -2
  85. package/dist/{chunk-WW3MR6T3.js → chunk-ENMTJRXA.js} +7 -7
  86. package/dist/{chunk-COUYFFID.js → chunk-EYMOJ3J6.js} +2 -2
  87. package/dist/{chunk-INBOGQ3E.js → chunk-EZZV7OQL.js} +2 -2
  88. package/dist/{chunk-MT47LH5L.js → chunk-FBMYGNOC.js} +2 -2
  89. package/dist/{chunk-N3SS45OW.js → chunk-FCSZ4K2X.js} +3 -3
  90. package/dist/{chunk-TWF35IC6.js → chunk-FDLDOEO6.js} +28 -23
  91. package/dist/chunk-FDLDOEO6.js.map +1 -0
  92. package/dist/{chunk-PKS56ZRR.js → chunk-FGGYSN4P.js} +2 -2
  93. package/dist/{chunk-ZMNT26KV.js → chunk-FHQSPTPZ.js} +2 -2
  94. package/dist/{chunk-6GUG4YNM.js → chunk-GGRRF4PZ.js} +2 -2
  95. package/dist/{chunk-YIHKAUS4.js → chunk-GTWHVXPA.js} +3 -3
  96. package/dist/{chunk-UY2RORVF.js → chunk-GVG3JYBI.js} +4 -4
  97. package/dist/{chunk-I3OQBP23.js → chunk-GY5WZBA6.js} +2 -2
  98. package/dist/{chunk-3GCK6ONU.js → chunk-HK32G473.js} +2 -2
  99. package/dist/{chunk-OVAJKCN3.js → chunk-HY55QQD7.js} +2 -2
  100. package/dist/{chunk-YJETZFLJ.js → chunk-I27RSQRR.js} +2 -2
  101. package/dist/{chunk-QIEUU4UK.js → chunk-I55KAVET.js} +2 -2
  102. package/dist/{chunk-UY7VPC6Q.js → chunk-IA2YSHTX.js} +15 -15
  103. package/dist/{chunk-UEEN7GXR.js → chunk-IY2FVXM6.js} +3 -3
  104. package/dist/{chunk-NVOFMARR.js → chunk-JDDXXZWW.js} +2 -2
  105. package/dist/{chunk-2AMEUKCG.js → chunk-JEIXTYVG.js} +2 -2
  106. package/dist/{chunk-ODW5GDFE.js → chunk-JT3EB7ZL.js} +2 -2
  107. package/dist/{chunk-XR67IAXP.js → chunk-KLMESRPV.js} +5 -5
  108. package/dist/{chunk-7LCGFUMB.js → chunk-KQAFEZQX.js} +4 -4
  109. package/dist/{chunk-3K7V3HE6.js → chunk-KXRX7YC2.js} +2 -2
  110. package/dist/{chunk-7RZJWZ46.js → chunk-LEPOP46W.js} +5 -5
  111. package/dist/{chunk-54WHLA65.js → chunk-LRICZIGN.js} +3 -3
  112. package/dist/{chunk-EWCNCQOU.js → chunk-LWA7MDVO.js} +2 -2
  113. package/dist/{chunk-EZKSOM5K.js → chunk-MFJBANPX.js} +2 -2
  114. package/dist/{chunk-OB3XMWX5.js → chunk-MKWKYHXJ.js} +4 -4
  115. package/dist/{chunk-HMKPFW7R.js → chunk-MPAJFFP3.js} +2 -2
  116. package/dist/{chunk-4P43SE4H.js → chunk-MPYD657E.js} +2 -2
  117. package/dist/{chunk-NLDVVWCL.js → chunk-NDNTNE3S.js} +2 -2
  118. package/dist/{chunk-5ISVONB7.js → chunk-NWWXSJX5.js} +2 -2
  119. package/dist/{chunk-QBC33MPY.js → chunk-NZXEK3UF.js} +2 -2
  120. package/dist/{chunk-MYB6DWE5.js → chunk-OGELWNYC.js} +6 -6
  121. package/dist/{chunk-IES4QHLM.js → chunk-OXNU333D.js} +5 -5
  122. package/dist/{chunk-JUC24CTX.js → chunk-P2QRMMVQ.js} +6 -1
  123. package/dist/chunk-P2QRMMVQ.js.map +1 -0
  124. package/dist/{chunk-MSSJSC2V.js → chunk-PEOTOFH5.js} +2 -2
  125. package/dist/{chunk-OYHGTHVX.js → chunk-PHNAB54Q.js} +2 -2
  126. package/dist/{chunk-R5T5FB2R.js → chunk-PLBW64UM.js} +62 -62
  127. package/dist/{chunk-BD7JTBYP.js → chunk-PSPABFN2.js} +4 -4
  128. package/dist/{chunk-WOOTZ6DH.js → chunk-PV36INNL.js} +3 -3
  129. package/dist/{chunk-QW3FMKT2.js → chunk-QDY6KYTN.js} +3 -3
  130. package/dist/{chunk-6TZWGQTT.js → chunk-RAVRDTP7.js} +5 -5
  131. package/dist/{chunk-BIVJCVT2.js → chunk-RBGREYVJ.js} +2 -2
  132. package/dist/{chunk-GGRD3JEH.js → chunk-ROGRI25A.js} +2 -2
  133. package/dist/{chunk-HTPQJ32S.js → chunk-ROKKIMON.js} +2 -2
  134. package/dist/{chunk-5KND6CSX.js → chunk-RSVEP77Y.js} +2 -2
  135. package/dist/{chunk-SV4Z2S67.js → chunk-S5G2LAL7.js} +4 -4
  136. package/dist/{chunk-5PTRLTK2.js → chunk-S65WXHNK.js} +2 -2
  137. package/dist/{chunk-XPFC6D45.js → chunk-S7DPKM5W.js} +41 -31
  138. package/dist/chunk-S7DPKM5W.js.map +1 -0
  139. package/dist/{chunk-3FEH4C4V.js → chunk-SB6PSOP7.js} +1 -1
  140. package/dist/{chunk-S2DU3UBN.js → chunk-SH2ZWEWB.js} +6 -6
  141. package/dist/{chunk-Z5XE7AMC.js → chunk-SMOFBBPU.js} +2 -2
  142. package/dist/{chunk-GRCREL6Q.js → chunk-SQJ3SDIW.js} +11 -11
  143. package/dist/{chunk-YFDJVB2K.js → chunk-T7CJQVRZ.js} +2 -2
  144. package/dist/{chunk-EIJR4PZL.js → chunk-TEYN7ZYF.js} +5 -5
  145. package/dist/{chunk-JALOAKSZ.js → chunk-TLPZ6MKZ.js} +4 -4
  146. package/dist/{chunk-BHHONFSK.js → chunk-U34EHBPL.js} +2 -2
  147. package/dist/{chunk-DFEODULB.js → chunk-V2HHAAPI.js} +2 -2
  148. package/dist/{chunk-KEF46KL2.js → chunk-V6EGNVUT.js} +3 -3
  149. package/dist/{chunk-ESNFSSO4.js → chunk-VGXM5B4H.js} +2 -2
  150. package/dist/{chunk-MJUCDM3C.js → chunk-VLXBE57O.js} +2 -2
  151. package/dist/{chunk-YGTSOVCR.js → chunk-VP67GZ7T.js} +2 -2
  152. package/dist/{chunk-ALBYEXFX.js → chunk-VZWXFXLX.js} +2 -2
  153. package/dist/{chunk-NC7RM2XS.js → chunk-W64HKJJM.js} +3 -3
  154. package/dist/{chunk-OMLGLMWL.js → chunk-WHBVXTUI.js} +9 -9
  155. package/dist/{chunk-4KMGFWQY.js → chunk-WJBZMNNS.js} +8 -8
  156. package/dist/{chunk-WFZBRS6N.js → chunk-X74UAWSI.js} +2 -2
  157. package/dist/{chunk-EGALNSZ4.js → chunk-XU6OEECT.js} +3 -3
  158. package/dist/{chunk-4FIH6MPS.js → chunk-YHLWPYHT.js} +3 -3
  159. package/dist/{chunk-PAZY2ZKP.js → chunk-YQAXP5AC.js} +2 -2
  160. package/dist/{chunk-ZNR5SVUI.js → chunk-YUMDFDUA.js} +3 -3
  161. package/dist/{chunk-7HYPN2GC.js → chunk-ZG74PWRW.js} +2 -2
  162. package/dist/{chunk-TDYAIXHK.js → chunk-ZHXSOMYH.js} +4 -4
  163. package/dist/{chunk-TNSCIPBQ.js → chunk-ZNJSBIP4.js} +4 -4
  164. package/dist/{cli-BqMNkQn5.d.ts → cli-DD0P-lu8.d.ts} +1 -1
  165. package/dist/cli.d.ts +2 -2
  166. package/dist/cli.js +101 -101
  167. package/dist/coding/export-okf-codegraph.js +21 -21
  168. package/dist/compounding/engine.js +20 -20
  169. package/dist/config-discovery.d.ts +26 -0
  170. package/dist/config-discovery.js +11 -0
  171. package/dist/config-security.js +2 -2
  172. package/dist/config.js +11 -11
  173. package/dist/connectors/codex-materialize-runner.js +20 -20
  174. package/dist/connectors/codex-materialize.js +3 -3
  175. package/dist/connectors/index.js +23 -23
  176. package/dist/convergence-refresh.js +21 -21
  177. package/dist/conversation-index/backend.js +2 -2
  178. package/dist/corpus-watermark.js +21 -21
  179. package/dist/deep-recall-http-glue.d.ts +1 -1
  180. package/dist/deep-recall-http-glue.js +4 -4
  181. package/dist/deep-recall-mcp-tools.d.ts +1 -1
  182. package/dist/deep-recall-policy-llm.js +5 -5
  183. package/dist/deep-recall.js +2 -2
  184. package/dist/embedding-fallback.js +2 -2
  185. package/dist/emit-legacy-tools.js +3 -3
  186. package/dist/entity-retrieval.js +19 -19
  187. package/dist/external-wiki-access.d.ts +1 -1
  188. package/dist/external-wiki-access.js +59 -59
  189. package/dist/external-wiki-config.js +3 -3
  190. package/dist/external-wiki-mcp-tools.d.ts +1 -1
  191. package/dist/extraction-faithfulness.js +5 -5
  192. package/dist/extraction-judge.js +5 -5
  193. package/dist/extraction-source-grounding.js +3 -3
  194. package/dist/extraction.js +34 -34
  195. package/dist/fallback-llm.js +4 -4
  196. package/dist/harmonic-retrieval.js +1 -1
  197. package/dist/index.d.ts +680 -678
  198. package/dist/index.js +151 -142
  199. package/dist/live-connectors-runner.js +5 -5
  200. package/dist/local-llm.js +3 -3
  201. package/dist/location/index.js +24 -24
  202. package/dist/maintenance/memory-governance.js +19 -19
  203. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +19 -19
  204. package/dist/maintenance/rebuild-memory-projection.js +20 -20
  205. package/dist/mcp-memory-inspector-app.d.ts +1 -1
  206. package/dist/memory-subject-cli.d.ts +1 -1
  207. package/dist/memory-subject.d.ts +1 -1
  208. package/dist/migrate/from-engram.js +2 -2
  209. package/dist/namespaces/migrate.js +20 -20
  210. package/dist/namespaces/search.js +11 -11
  211. package/dist/namespaces/storage.js +19 -19
  212. package/dist/offline-sync-impression-drain.js +6 -6
  213. package/dist/operator-doctor-corpus.js +22 -22
  214. package/dist/operator-toolkit.js +38 -38
  215. package/dist/opik-exporter.js +1 -1
  216. package/dist/orchestration/maintenance.js +33 -33
  217. package/dist/orchestrator.js +133 -132
  218. package/dist/provenance.js +2 -2
  219. package/dist/{public-http-ByX2eTla.d.ts → public-http-C4i8Opxc.d.ts} +1 -1
  220. package/dist/qmd.js +2 -2
  221. package/dist/recall-planner-llm.js +4 -4
  222. package/dist/reconcile/manifest.js +1 -1
  223. package/dist/resolve-provider-secret.js +2 -2
  224. package/dist/resume-bundles.js +12 -12
  225. package/dist/runtime/env.d.ts +9 -1
  226. package/dist/runtime/env.js +3 -1
  227. package/dist/schemas.d.ts +152 -152
  228. package/dist/sdk-compat.js +1 -1
  229. package/dist/search/factory.js +10 -10
  230. package/dist/search/index.js +15 -15
  231. package/dist/search/lancedb-backend.js +2 -2
  232. package/dist/search/meilisearch-backend.js +2 -2
  233. package/dist/search/orama-backend.js +2 -2
  234. package/dist/semantic-consolidation.js +21 -21
  235. package/dist/semantic-rule-promotion.js +19 -19
  236. package/dist/semantic-rule-verifier.js +19 -19
  237. package/dist/shared-context/manager.d.ts +6 -6
  238. package/dist/shared-context/manager.js +3 -3
  239. package/dist/source-agent-qualifier.js +31 -31
  240. package/dist/standup/build.js +20 -20
  241. package/dist/{state-store-Z3EN56O5.js → state-store-I5HLZTZT.js} +4 -4
  242. package/dist/state-store-I5HLZTZT.js.map +1 -0
  243. package/dist/storage.js +18 -18
  244. package/dist/summarizer.js +7 -7
  245. package/dist/support-passport/index.d.ts +4 -4
  246. package/dist/support-passport/index.js +61 -61
  247. package/dist/tokens.js +2 -2
  248. package/dist/transfer/capsule-export.js +2 -2
  249. package/dist/transfer/capsule-import.js +2 -2
  250. package/dist/transfer/export-okf.js +20 -20
  251. package/dist/transfer/types.d.ts +78 -78
  252. package/dist/utils/path.js +2 -2
  253. package/dist/verified-recall.js +19 -19
  254. package/dist/who-knows-cli.d.ts +1 -1
  255. package/dist/who-knows-cli.js +20 -20
  256. package/dist/who-knows.d.ts +1 -1
  257. package/dist/who-knows.js +19 -19
  258. package/package.json +2 -2
  259. package/src/activity/digest.test.ts +107 -1
  260. package/src/activity/digest.ts +76 -51
  261. package/src/config-discovery.test.ts +63 -0
  262. package/src/config-discovery.ts +90 -0
  263. package/src/index.ts +2 -0
  264. package/src/reconcile/manifest.ts +59 -50
  265. package/src/runtime/env.ts +11 -0
  266. package/dist/chunk-JUC24CTX.js.map +0 -1
  267. package/dist/chunk-TWF35IC6.js.map +0 -1
  268. package/dist/chunk-XPFC6D45.js.map +0 -1
  269. package/dist/{access-service-GrdVg_-Z.d.ts → access-service-DWdY9Mlk.d.ts} +58 -58
  270. /package/dist/{auto-sync-WNGG2GC2.js.map → auto-sync-NSHLUAQI.js.map} +0 -0
  271. /package/dist/{chunk-OO42R444.js.map → chunk-2MFH376S.js.map} +0 -0
  272. /package/dist/{chunk-NXH34IPL.js.map → chunk-353KGBKY.js.map} +0 -0
  273. /package/dist/{chunk-DZD3WGCD.js.map → chunk-3JVLGJCY.js.map} +0 -0
  274. /package/dist/{chunk-NOPN47AL.js.map → chunk-47DEYNMR.js.map} +0 -0
  275. /package/dist/{chunk-2OO6TPQG.js.map → chunk-4UDQUPT5.js.map} +0 -0
  276. /package/dist/{chunk-IE57QQSZ.js.map → chunk-565C6ZFO.js.map} +0 -0
  277. /package/dist/{chunk-C6XEXTSJ.js.map → chunk-5ABN4WVL.js.map} +0 -0
  278. /package/dist/{chunk-W7OU4I3Y.js.map → chunk-666OOKB7.js.map} +0 -0
  279. /package/dist/{chunk-EYIEWJNI.js.map → chunk-6KH5NLQS.js.map} +0 -0
  280. /package/dist/{chunk-R55WAWS3.js.map → chunk-7DUFJAOE.js.map} +0 -0
  281. /package/dist/{chunk-EMDLM3LW.js.map → chunk-7IRZK6MM.js.map} +0 -0
  282. /package/dist/{chunk-TVVEYCNW.js.map → chunk-7K5Q6COX.js.map} +0 -0
  283. /package/dist/{chunk-RFWEDCRC.js.map → chunk-7VJXIDOC.js.map} +0 -0
  284. /package/dist/{chunk-IVKIODHO.js.map → chunk-A7XEPMQ6.js.map} +0 -0
  285. /package/dist/{chunk-K6MV3TRQ.js.map → chunk-ADXCCZL2.js.map} +0 -0
  286. /package/dist/{chunk-GC65K6DI.js.map → chunk-AOCP6JA7.js.map} +0 -0
  287. /package/dist/{chunk-JBPKEARU.js.map → chunk-AU7Q3LSC.js.map} +0 -0
  288. /package/dist/{chunk-ND6IQGSZ.js.map → chunk-BA6WOZOT.js.map} +0 -0
  289. /package/dist/{chunk-JI7U6AS3.js.map → chunk-C6FQJ52H.js.map} +0 -0
  290. /package/dist/{chunk-IN673LEP.js.map → chunk-CARRTDKC.js.map} +0 -0
  291. /package/dist/{chunk-HLTAZTN7.js.map → chunk-CBCNKKZD.js.map} +0 -0
  292. /package/dist/{chunk-DXFG2VGN.js.map → chunk-CGC5UQCF.js.map} +0 -0
  293. /package/dist/{chunk-YSSAGB2O.js.map → chunk-CLLPJ6QT.js.map} +0 -0
  294. /package/dist/{chunk-U6S754L6.js.map → chunk-D5LORF7A.js.map} +0 -0
  295. /package/dist/{chunk-C24UZSFW.js.map → chunk-DBQWVT2H.js.map} +0 -0
  296. /package/dist/{chunk-XSTNGNJP.js.map → chunk-DCJ3YFIC.js.map} +0 -0
  297. /package/dist/{chunk-2YDWI2LO.js.map → chunk-DITMGZOL.js.map} +0 -0
  298. /package/dist/{chunk-LVE64P5Y.js.map → chunk-E2ZHGBAK.js.map} +0 -0
  299. /package/dist/{chunk-WW3MR6T3.js.map → chunk-ENMTJRXA.js.map} +0 -0
  300. /package/dist/{chunk-COUYFFID.js.map → chunk-EYMOJ3J6.js.map} +0 -0
  301. /package/dist/{chunk-INBOGQ3E.js.map → chunk-EZZV7OQL.js.map} +0 -0
  302. /package/dist/{chunk-MT47LH5L.js.map → chunk-FBMYGNOC.js.map} +0 -0
  303. /package/dist/{chunk-N3SS45OW.js.map → chunk-FCSZ4K2X.js.map} +0 -0
  304. /package/dist/{chunk-PKS56ZRR.js.map → chunk-FGGYSN4P.js.map} +0 -0
  305. /package/dist/{chunk-ZMNT26KV.js.map → chunk-FHQSPTPZ.js.map} +0 -0
  306. /package/dist/{chunk-6GUG4YNM.js.map → chunk-GGRRF4PZ.js.map} +0 -0
  307. /package/dist/{chunk-YIHKAUS4.js.map → chunk-GTWHVXPA.js.map} +0 -0
  308. /package/dist/{chunk-UY2RORVF.js.map → chunk-GVG3JYBI.js.map} +0 -0
  309. /package/dist/{chunk-I3OQBP23.js.map → chunk-GY5WZBA6.js.map} +0 -0
  310. /package/dist/{chunk-3GCK6ONU.js.map → chunk-HK32G473.js.map} +0 -0
  311. /package/dist/{chunk-OVAJKCN3.js.map → chunk-HY55QQD7.js.map} +0 -0
  312. /package/dist/{chunk-YJETZFLJ.js.map → chunk-I27RSQRR.js.map} +0 -0
  313. /package/dist/{chunk-QIEUU4UK.js.map → chunk-I55KAVET.js.map} +0 -0
  314. /package/dist/{chunk-UY7VPC6Q.js.map → chunk-IA2YSHTX.js.map} +0 -0
  315. /package/dist/{chunk-UEEN7GXR.js.map → chunk-IY2FVXM6.js.map} +0 -0
  316. /package/dist/{chunk-NVOFMARR.js.map → chunk-JDDXXZWW.js.map} +0 -0
  317. /package/dist/{chunk-2AMEUKCG.js.map → chunk-JEIXTYVG.js.map} +0 -0
  318. /package/dist/{chunk-ODW5GDFE.js.map → chunk-JT3EB7ZL.js.map} +0 -0
  319. /package/dist/{chunk-XR67IAXP.js.map → chunk-KLMESRPV.js.map} +0 -0
  320. /package/dist/{chunk-7LCGFUMB.js.map → chunk-KQAFEZQX.js.map} +0 -0
  321. /package/dist/{chunk-3K7V3HE6.js.map → chunk-KXRX7YC2.js.map} +0 -0
  322. /package/dist/{chunk-7RZJWZ46.js.map → chunk-LEPOP46W.js.map} +0 -0
  323. /package/dist/{chunk-54WHLA65.js.map → chunk-LRICZIGN.js.map} +0 -0
  324. /package/dist/{chunk-EWCNCQOU.js.map → chunk-LWA7MDVO.js.map} +0 -0
  325. /package/dist/{chunk-EZKSOM5K.js.map → chunk-MFJBANPX.js.map} +0 -0
  326. /package/dist/{chunk-OB3XMWX5.js.map → chunk-MKWKYHXJ.js.map} +0 -0
  327. /package/dist/{chunk-HMKPFW7R.js.map → chunk-MPAJFFP3.js.map} +0 -0
  328. /package/dist/{chunk-4P43SE4H.js.map → chunk-MPYD657E.js.map} +0 -0
  329. /package/dist/{chunk-NLDVVWCL.js.map → chunk-NDNTNE3S.js.map} +0 -0
  330. /package/dist/{chunk-5ISVONB7.js.map → chunk-NWWXSJX5.js.map} +0 -0
  331. /package/dist/{chunk-QBC33MPY.js.map → chunk-NZXEK3UF.js.map} +0 -0
  332. /package/dist/{chunk-MYB6DWE5.js.map → chunk-OGELWNYC.js.map} +0 -0
  333. /package/dist/{chunk-IES4QHLM.js.map → chunk-OXNU333D.js.map} +0 -0
  334. /package/dist/{chunk-MSSJSC2V.js.map → chunk-PEOTOFH5.js.map} +0 -0
  335. /package/dist/{chunk-OYHGTHVX.js.map → chunk-PHNAB54Q.js.map} +0 -0
  336. /package/dist/{chunk-R5T5FB2R.js.map → chunk-PLBW64UM.js.map} +0 -0
  337. /package/dist/{chunk-BD7JTBYP.js.map → chunk-PSPABFN2.js.map} +0 -0
  338. /package/dist/{chunk-WOOTZ6DH.js.map → chunk-PV36INNL.js.map} +0 -0
  339. /package/dist/{chunk-QW3FMKT2.js.map → chunk-QDY6KYTN.js.map} +0 -0
  340. /package/dist/{chunk-6TZWGQTT.js.map → chunk-RAVRDTP7.js.map} +0 -0
  341. /package/dist/{chunk-BIVJCVT2.js.map → chunk-RBGREYVJ.js.map} +0 -0
  342. /package/dist/{chunk-GGRD3JEH.js.map → chunk-ROGRI25A.js.map} +0 -0
  343. /package/dist/{chunk-HTPQJ32S.js.map → chunk-ROKKIMON.js.map} +0 -0
  344. /package/dist/{chunk-5KND6CSX.js.map → chunk-RSVEP77Y.js.map} +0 -0
  345. /package/dist/{chunk-SV4Z2S67.js.map → chunk-S5G2LAL7.js.map} +0 -0
  346. /package/dist/{chunk-5PTRLTK2.js.map → chunk-S65WXHNK.js.map} +0 -0
  347. /package/dist/{chunk-3FEH4C4V.js.map → chunk-SB6PSOP7.js.map} +0 -0
  348. /package/dist/{chunk-S2DU3UBN.js.map → chunk-SH2ZWEWB.js.map} +0 -0
  349. /package/dist/{chunk-Z5XE7AMC.js.map → chunk-SMOFBBPU.js.map} +0 -0
  350. /package/dist/{chunk-GRCREL6Q.js.map → chunk-SQJ3SDIW.js.map} +0 -0
  351. /package/dist/{chunk-YFDJVB2K.js.map → chunk-T7CJQVRZ.js.map} +0 -0
  352. /package/dist/{chunk-EIJR4PZL.js.map → chunk-TEYN7ZYF.js.map} +0 -0
  353. /package/dist/{chunk-JALOAKSZ.js.map → chunk-TLPZ6MKZ.js.map} +0 -0
  354. /package/dist/{chunk-BHHONFSK.js.map → chunk-U34EHBPL.js.map} +0 -0
  355. /package/dist/{chunk-DFEODULB.js.map → chunk-V2HHAAPI.js.map} +0 -0
  356. /package/dist/{chunk-KEF46KL2.js.map → chunk-V6EGNVUT.js.map} +0 -0
  357. /package/dist/{chunk-ESNFSSO4.js.map → chunk-VGXM5B4H.js.map} +0 -0
  358. /package/dist/{chunk-MJUCDM3C.js.map → chunk-VLXBE57O.js.map} +0 -0
  359. /package/dist/{chunk-YGTSOVCR.js.map → chunk-VP67GZ7T.js.map} +0 -0
  360. /package/dist/{chunk-ALBYEXFX.js.map → chunk-VZWXFXLX.js.map} +0 -0
  361. /package/dist/{chunk-NC7RM2XS.js.map → chunk-W64HKJJM.js.map} +0 -0
  362. /package/dist/{chunk-OMLGLMWL.js.map → chunk-WHBVXTUI.js.map} +0 -0
  363. /package/dist/{chunk-4KMGFWQY.js.map → chunk-WJBZMNNS.js.map} +0 -0
  364. /package/dist/{chunk-WFZBRS6N.js.map → chunk-X74UAWSI.js.map} +0 -0
  365. /package/dist/{chunk-EGALNSZ4.js.map → chunk-XU6OEECT.js.map} +0 -0
  366. /package/dist/{chunk-4FIH6MPS.js.map → chunk-YHLWPYHT.js.map} +0 -0
  367. /package/dist/{chunk-PAZY2ZKP.js.map → chunk-YQAXP5AC.js.map} +0 -0
  368. /package/dist/{chunk-ZNR5SVUI.js.map → chunk-YUMDFDUA.js.map} +0 -0
  369. /package/dist/{chunk-7HYPN2GC.js.map → chunk-ZG74PWRW.js.map} +0 -0
  370. /package/dist/{chunk-TDYAIXHK.js.map → chunk-ZHXSOMYH.js.map} +0 -0
  371. /package/dist/{chunk-TNSCIPBQ.js.map → chunk-ZNJSBIP4.js.map} +0 -0
  372. /package/dist/{state-store-Z3EN56O5.js.map → config-discovery.js.map} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  headerConnector,
4
4
  renderExtractionConversation,
5
5
  resolveSourceConnector
6
- } from "./chunk-XR67IAXP.js";
6
+ } from "./chunk-KLMESRPV.js";
7
7
  import {
8
8
  ConsolidationResultSchema,
9
9
  DaySummaryResultSchema,
@@ -20,6 +20,9 @@ import {
20
20
  import {
21
21
  shouldRunProactivePass
22
22
  } from "./chunk-2CGLBUW3.js";
23
+ import {
24
+ attachExtractionProvenance
25
+ } from "./chunk-MPAJFFP3.js";
23
26
  import {
24
27
  containsExtractionPlaceholder,
25
28
  extractionAttributes,
@@ -27,9 +30,6 @@ import {
27
30
  extractionText,
28
31
  isPlainRecord
29
32
  } from "./chunk-R4OCGPSH.js";
30
- import {
31
- attachExtractionProvenance
32
- } from "./chunk-HMKPFW7R.js";
33
33
  import {
34
34
  classifyExtractionThrownError,
35
35
  classifyFallbackParseFailure
@@ -71,7 +71,7 @@ import {
71
71
  } from "./chunk-WLZYGLJ4.js";
72
72
  import {
73
73
  LocalLlmClient
74
- } from "./chunk-IVKIODHO.js";
74
+ } from "./chunk-A7XEPMQ6.js";
75
75
  import {
76
76
  isMemoryCategory
77
77
  } from "./chunk-3QQTXYZ6.js";
@@ -79,7 +79,7 @@ import {
79
79
  FallbackLlmClient,
80
80
  fallbackLlmRuntimeContextFromConfig,
81
81
  gatewayTaskChainOptions
82
- } from "./chunk-JALOAKSZ.js";
82
+ } from "./chunk-TLPZ6MKZ.js";
83
83
  import {
84
84
  buildChatCompletionTokenLimit,
85
85
  shouldAssumeOpenAiChatCompletions
@@ -2387,4 +2387,4 @@ export {
2387
2387
  shouldEnableLocalExtractionThinking,
2388
2388
  ExtractionEngine
2389
2389
  };
2390
- //# sourceMappingURL=chunk-WW3MR6T3.js.map
2390
+ //# sourceMappingURL=chunk-ENMTJRXA.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  SUPPORT_PASSPORT_DRAFT_MAX_CONTENT_CHARACTERS,
3
3
  SUPPORT_PASSPORT_DRAFT_MAX_MEMORIES
4
- } from "./chunk-R55WAWS3.js";
4
+ } from "./chunk-7DUFJAOE.js";
5
5
  import {
6
6
  SUPPORT_PASSPORT_SOURCE_MEMORY_ID_MAX_LENGTH
7
7
  } from "./chunk-EEOUMG3J.js";
@@ -343,4 +343,4 @@ export {
343
343
  parseSupportPassportModelJob,
344
344
  SupportPassportModelBridge
345
345
  };
346
- //# sourceMappingURL=chunk-COUYFFID.js.map
346
+ //# sourceMappingURL=chunk-EYMOJ3J6.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  parseEntityFile
3
- } from "./chunk-UY2RORVF.js";
3
+ } from "./chunk-GVG3JYBI.js";
4
4
  import {
5
5
  inferMemoryStatus
6
6
  } from "./chunk-7RJUVTVF.js";
@@ -253,4 +253,4 @@ export {
253
253
  WHO_KNOWS_MCP_TOOLS,
254
254
  handleWhoKnowsHttpQuery
255
255
  };
256
- //# sourceMappingURL=chunk-INBOGQ3E.js.map
256
+ //# sourceMappingURL=chunk-EZZV7OQL.js.map
@@ -5,7 +5,7 @@ import {
5
5
  import {
6
6
  activityDayWindow,
7
7
  isValidActivityDate
8
- } from "./chunk-XPFC6D45.js";
8
+ } from "./chunk-S7DPKM5W.js";
9
9
  import {
10
10
  writeFileAtomically
11
11
  } from "./chunk-AW4QUFQF.js";
@@ -863,4 +863,4 @@ export {
863
863
  fillWearableConversationLocations,
864
864
  renderDayLocationContext
865
865
  };
866
- //# sourceMappingURL=chunk-MT47LH5L.js.map
866
+ //# sourceMappingURL=chunk-FBMYGNOC.js.map
@@ -11,12 +11,12 @@ import {
11
11
  } from "./chunk-WLZYGLJ4.js";
12
12
  import {
13
13
  LocalLlmClient
14
- } from "./chunk-IVKIODHO.js";
14
+ } from "./chunk-A7XEPMQ6.js";
15
15
  import {
16
16
  FallbackLlmClient,
17
17
  fallbackLlmRuntimeContextFromConfig,
18
18
  gatewayTaskChainOptions
19
- } from "./chunk-JALOAKSZ.js";
19
+ } from "./chunk-TLPZ6MKZ.js";
20
20
  import {
21
21
  extractJsonCandidates
22
22
  } from "./chunk-RGMVMVMF.js";
@@ -750,4 +750,4 @@ export {
750
750
  summarizeHourlyStatus,
751
751
  HourlySummarizer
752
752
  };
753
- //# sourceMappingURL=chunk-N3SS45OW.js.map
753
+ //# sourceMappingURL=chunk-FCSZ4K2X.js.map
@@ -49,12 +49,8 @@ function parsedMemoryIdentity(filePath, raw, parseMemory, citationTemplate) {
49
49
  (content) => stripCitationForTemplate(content, citationTemplate)
50
50
  );
51
51
  const bodyHash = ContentHashIndex.computeHash(candidates[0] ?? "");
52
- const currentMatch = candidates.find(
53
- (content) => ContentHashIndex.computeHash(content) === storedHash
54
- );
55
- const legacyMatch = [...candidates].reverse().find(
56
- (content) => computeLegacyContentHash(content) === storedHash
57
- );
52
+ const currentMatch = candidates.find((content) => ContentHashIndex.computeHash(content) === storedHash);
53
+ const legacyMatch = [...candidates].reverse().find((content) => computeLegacyContentHash(content) === storedHash);
58
54
  let contentHash;
59
55
  let contentHashAliases;
60
56
  if (currentMatch) {
@@ -91,24 +87,34 @@ async function buildReconcileManifestFile(file, readFile, parseMemory, citationT
91
87
  const memory = raw === null ? void 0 : parsedMemoryIdentity(file.path, raw, parseMemory, citationTemplate);
92
88
  return { ...file, ...memory ? { memory } : {} };
93
89
  }
90
+ var MANIFEST_BUILD_BATCH_SIZE = 50;
94
91
  async function buildReconcileManifest(options) {
95
92
  const cachedByPath = /* @__PURE__ */ new Map();
96
93
  for (const cached of options.cachedFiles ?? []) {
97
94
  cachedByPath.set(cached.path, cached);
98
95
  }
99
96
  const files = [];
100
- for (const file of options.files) {
97
+ const uncached = [];
98
+ const allFiles = [...options.files];
99
+ for (let i = 0; i < allFiles.length; i += 1) {
100
+ const file = allFiles[i];
101
101
  const cached = cachedByPath.get(file.path);
102
- if (cached?.sha256.toLowerCase() === file.sha256.toLowerCase() && (cached.memory === void 0 || cached.memory.normalizerVersion === CONTENT_HASH_NORMALIZER_VERSION && cached.memory.identityResolutionVersion === IDENTITY_RESOLUTION_VERSION)) {
102
+ if (cached !== void 0 && cached.sha256.toLowerCase() === file.sha256.toLowerCase() && (cached.memory === void 0 || cached.memory.normalizerVersion === CONTENT_HASH_NORMALIZER_VERSION && cached.memory.identityResolutionVersion === IDENTITY_RESOLUTION_VERSION)) {
103
103
  files.push({ ...file, ...cached.memory ? { memory: cached.memory } : {} });
104
- continue;
104
+ } else {
105
+ uncached.push({ index: i, file });
106
+ }
107
+ }
108
+ for (let i = 0; i < uncached.length; i += MANIFEST_BUILD_BATCH_SIZE) {
109
+ const batch = uncached.slice(i, i + MANIFEST_BUILD_BATCH_SIZE);
110
+ const results = await Promise.all(
111
+ batch.map(
112
+ ({ file }) => buildReconcileManifestFile(file, options.readFile, options.parseMemory, options.citationTemplate)
113
+ )
114
+ );
115
+ for (let j = 0; j < batch.length; j += 1) {
116
+ files[batch[j].index] = results[j];
105
117
  }
106
- files.push(await buildReconcileManifestFile(
107
- file,
108
- options.readFile,
109
- options.parseMemory,
110
- options.citationTemplate
111
- ));
112
118
  }
113
119
  files.sort((left, right) => left.path < right.path ? -1 : left.path > right.path ? 1 : 0);
114
120
  return {
@@ -162,10 +168,7 @@ function collapseActiveFactDuplicates(plan, localManifests, peerManifests, prior
162
168
  const localFilesByPath = new Map((localManifest?.files ?? []).map((file) => [file.path, file]));
163
169
  const peerFilesByPath = new Map((peerManifest?.files ?? []).map((file) => [file.path, file]));
164
170
  const priorSemanticByPathPair = new Map(
165
- (priorSemanticAgreements?.get(namespace) ?? []).map((agreement) => [
166
- semanticAgreementKey(agreement),
167
- agreement
168
- ])
171
+ (priorSemanticAgreements?.get(namespace) ?? []).map((agreement) => [semanticAgreementKey(agreement), agreement])
169
172
  );
170
173
  const localByHash = /* @__PURE__ */ new Map();
171
174
  const peerByHash = /* @__PURE__ */ new Map();
@@ -210,9 +213,11 @@ function collapseActiveFactDuplicates(plan, localManifests, peerManifests, prior
210
213
  ...localCandidates.map((file) => file.path),
211
214
  ...peerCandidates.map((file) => file.path)
212
215
  ]);
213
- const authoritativeSamePathEntries = new Set(entries2.filter(
214
- (entry) => duplicatePaths.has(entry.path) && localFilesByPath.has(entry.path) && peerFilesByPath.has(entry.path) && entry.action !== "identical"
215
- ));
216
+ const authoritativeSamePathEntries = new Set(
217
+ entries2.filter(
218
+ (entry) => duplicatePaths.has(entry.path) && localFilesByPath.has(entry.path) && peerFilesByPath.has(entry.path) && entry.action !== "identical"
219
+ )
220
+ );
216
221
  if (authoritativeSamePathEntries.size > 0) {
217
222
  for (const entry of entries2) {
218
223
  if (duplicatePaths.has(entry.path) && !authoritativeSamePathEntries.has(entry) && (entry.action === "pull" || entry.action === "push" || entry.action === "identical")) {
@@ -293,4 +298,4 @@ export {
293
298
  buildReconcileManifest,
294
299
  collapseActiveFactDuplicates
295
300
  };
296
- //# sourceMappingURL=chunk-TWF35IC6.js.map
301
+ //# sourceMappingURL=chunk-FDLDOEO6.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/reconcile/manifest.ts"],"sourcesContent":["import { createHash } from \"node:crypto\";\nimport { computeLegacyContentHash, normalizeLegacyContent } from \"../content-hash.js\";\nimport { inferMemoryStatus } from \"../memory-lifecycle-ledger-utils.js\";\nimport { ContentHashIndex, type ContentHashPathEntry } from \"../storage/content-hash-index.js\";\nimport { DEFAULT_CITATION_FORMAT, stripCitationForTemplate } from \"../source-attribution.js\";\nimport { storedContentIdentityCandidates } from \"../structured-attributes.js\";\nimport type { MemoryFrontmatter, MemoryStatus } from \"../types.js\";\nimport { RECALL_FALLBACK_DIRS } from \"../utils/category-dir.js\";\nimport {\n type ReconcileFileState,\n type ReconcilePlan,\n type ReconcilePlanEntry,\n type ReconcileSemanticAgreement,\n type ReconcileSemanticChange,\n compareReconcilePlanEntries,\n semanticAgreementKey,\n summarizeReconcilePlan,\n} from \"./plan.js\";\n\nexport const RECONCILE_MANIFEST_FORMAT = \"remnic-reconcile-manifest\";\nexport const RECONCILE_MANIFEST_SCHEMA_VERSION = 1;\nconst CONTENT_HASH_NORMALIZER_VERSION = 4;\n/**\n * Version of the identity-resolution LOGIC (alias recovery, candidate\n * ordering), independent of the content normalizer: a cached manifest entry\n * written before an identity-resolution change carries an older value and is\n * reparsed even when its normalizerVersion still matches (issue #2367\n * review round 2). Bump when parsedMemoryIdentity's output shape or\n * semantics change.\n */\nconst IDENTITY_RESOLUTION_VERSION = 2;\n\nexport interface ReconcileMemoryIdentity {\n id: string;\n category: string;\n contentHash: string;\n /**\n * Recovered current-normalizer identities for a record whose persisted hash\n * is ambiguous under the legacy normalizer (issue #2367). The persisted\n * hash stays primary; these participate in duplicate bucketing so a\n * replica carrying the current form of the same fact still collapses.\n */\n contentHashAliases?: readonly string[];\n /** See IDENTITY_RESOLUTION_VERSION; absent on pre-versioning cache entries. */\n normalizerVersion?: number;\n identityResolutionVersion?: number;\n status: MemoryStatus;\n}\n\nexport interface ReconcileManifestFile extends ReconcileFileState {\n memory?: ReconcileMemoryIdentity;\n}\n\ntype ActiveFactManifestFile = ReconcileManifestFile & { memory: ReconcileMemoryIdentity };\n\nexport interface ReconcileManifest {\n format: typeof RECONCILE_MANIFEST_FORMAT;\n schemaVersion: typeof RECONCILE_MANIFEST_SCHEMA_VERSION;\n files: ReconcileManifestFile[];\n}\n\nexport type ReconcileMemoryParser = (raw: string) => { frontmatter: MemoryFrontmatter; content: string } | null;\n\nexport interface BuildReconcileManifestOptions {\n files: Iterable<ReconcileFileState>;\n readFile: (file: ReconcileFileState) => Promise<Buffer | string | null>;\n parseMemory: ReconcileMemoryParser;\n cachedFiles?: Iterable<ReconcileManifestFile>;\n citationTemplate?: string;\n}\n\nconst SHA256_PATTERN = /^[a-f0-9]{64}$/i;\nconst MEMORY_DIRS = new Set(RECALL_FALLBACK_DIRS);\n\nfunction isMemoryPath(filePath: string): boolean {\n if (!filePath.endsWith(\".md\")) return false;\n const segments = filePath.split(\"/\");\n let index = 0;\n if (segments[index] === \"cold\" || segments[index] === \"archive\") index += 1;\n return MEMORY_DIRS.has(segments[index] ?? \"\");\n}\n\nfunction parsedMemoryIdentity(\n filePath: string,\n raw: Buffer | string,\n parseMemory: ReconcileMemoryParser,\n citationTemplate: string\n): ReconcileMemoryIdentity | undefined {\n if (!isMemoryPath(filePath)) return undefined;\n const parsed = parseMemory(Buffer.isBuffer(raw) ? raw.toString(\"utf8\") : raw);\n if (!parsed?.frontmatter.id) return undefined;\n\n const storedHash =\n parsed.frontmatter.contentHash && SHA256_PATTERN.test(parsed.frontmatter.contentHash)\n ? parsed.frontmatter.contentHash.toLowerCase()\n : undefined;\n const candidates = storedContentIdentityCandidates(parsed.content, (content) =>\n stripCitationForTemplate(content, citationTemplate)\n );\n const bodyHash = ContentHashIndex.computeHash(candidates[0] ?? \"\");\n const currentMatch = candidates.find((content) => ContentHashIndex.computeHash(content) === storedHash);\n const legacyMatch = [...candidates].reverse().find((content) => computeLegacyContentHash(content) === storedHash);\n let contentHash: string;\n let contentHashAliases: string[] | undefined;\n if (currentMatch) {\n contentHash = ContentHashIndex.computeHash(currentMatch);\n } else if (legacyMatch && normalizeLegacyContent(legacyMatch).length > 0) {\n // A non-empty legacy equality is ambiguous (issue #2367): the persisted\n // hash may be an explicit contentHashSource identity that merely collides\n // with the body's ASCII skeleton under the lossy legacy normalizer, and\n // nothing in the record proves which it is. Keep the persisted hash as\n // the primary identity and expose the recovered current identity as an\n // alias so replicas carrying either form still collapse.\n contentHash = storedHash ?? bodyHash;\n const recovered = ContentHashIndex.computeHash(legacyMatch);\n if (recovered !== contentHash) contentHashAliases = [recovered];\n } else {\n // An EMPTY legacy skeleton identifies nothing (every non-ASCII body maps\n // to it), so preserving it would collapse unrelated records. Recovering\n // the current identity here is repair, not replacement.\n contentHash = legacyMatch ? ContentHashIndex.computeHash(legacyMatch) : (storedHash ?? bodyHash);\n }\n\n return {\n id: parsed.frontmatter.id,\n category: parsed.frontmatter.category,\n contentHash,\n ...(contentHashAliases ? { contentHashAliases } : {}),\n normalizerVersion: CONTENT_HASH_NORMALIZER_VERSION,\n identityResolutionVersion: IDENTITY_RESOLUTION_VERSION,\n status: inferMemoryStatus(parsed.frontmatter, filePath),\n };\n}\n\nexport async function buildReconcileManifestFile(\n file: ReconcileFileState,\n readFile: (file: ReconcileFileState) => Promise<Buffer | string | null>,\n parseMemory: ReconcileMemoryParser,\n citationTemplate = DEFAULT_CITATION_FORMAT\n): Promise<ReconcileManifestFile> {\n let raw: Buffer | string | null = null;\n if (isMemoryPath(file.path)) {\n try {\n raw = await readFile(file);\n } catch {\n raw = null;\n }\n }\n if (raw !== null && createHash(\"sha256\").update(raw).digest(\"hex\") !== file.sha256.toLowerCase()) {\n raw = null;\n }\n const memory = raw === null ? undefined : parsedMemoryIdentity(file.path, raw, parseMemory, citationTemplate);\n return { ...file, ...(memory ? { memory } : {}) };\n}\n\n/** Read-batch size for manifest builds. Uncached files are independent (a\n * per-file read + sha256 + frontmatter parse); processing them in bounded\n * batches amortizes the per-file promise/async-hook overhead that dominates\n * boot-scale corpus builds (measured: ~66% of CPU in async_hooks._propagate +\n * GC at ~100k files) and overlaps IO waits, while the bound keeps memory flat.\n * Order is preserved: results land in input order regardless of completion\n * order, so the manifest output is byte-identical to the sequential form. */\nconst MANIFEST_BUILD_BATCH_SIZE = 50;\n\nexport async function buildReconcileManifest(options: BuildReconcileManifestOptions): Promise<ReconcileManifest> {\n const cachedByPath = new Map<string, ReconcileManifestFile>();\n for (const cached of options.cachedFiles ?? []) {\n cachedByPath.set(cached.path, cached);\n }\n\n const files: ReconcileManifestFile[] = [];\n // Cache hits stay on a synchronous fast path (no promise allocation, no\n // Promise.all — a fully-cached rebuild must not regress); only the uncached\n // entries ride the bounded batches. Order is preserved by index.\n const uncached: Array<{ index: number; file: ReconcileFileState }> = [];\n const allFiles = [...options.files];\n for (let i = 0; i < allFiles.length; i += 1) {\n const file = allFiles[i]!;\n const cached = cachedByPath.get(file.path);\n if (\n cached !== undefined &&\n cached.sha256.toLowerCase() === file.sha256.toLowerCase() &&\n (cached.memory === undefined ||\n (cached.memory.normalizerVersion === CONTENT_HASH_NORMALIZER_VERSION &&\n cached.memory.identityResolutionVersion === IDENTITY_RESOLUTION_VERSION))\n ) {\n files.push({ ...file, ...(cached.memory ? { memory: cached.memory } : {}) });\n } else {\n uncached.push({ index: i, file });\n }\n }\n for (let i = 0; i < uncached.length; i += MANIFEST_BUILD_BATCH_SIZE) {\n const batch = uncached.slice(i, i + MANIFEST_BUILD_BATCH_SIZE);\n const results = await Promise.all(\n batch.map(({ file }) =>\n buildReconcileManifestFile(file, options.readFile, options.parseMemory, options.citationTemplate)\n )\n );\n for (let j = 0; j < batch.length; j += 1) {\n files[batch[j]!.index] = results[j]!;\n }\n }\n files.sort((left, right) => (left.path < right.path ? -1 : left.path > right.path ? 1 : 0));\n return {\n format: RECONCILE_MANIFEST_FORMAT,\n schemaVersion: RECONCILE_MANIFEST_SCHEMA_VERSION,\n files,\n };\n}\n\nfunction activeFactByPath(manifest: ReconcileManifest | undefined): Map<string, ActiveFactManifestFile> {\n const result = new Map<string, ActiveFactManifestFile>();\n for (const file of manifest?.files ?? []) {\n if (file.memory?.category === \"fact\" && file.memory.status === \"active\") {\n result.set(file.path, file as ActiveFactManifestFile);\n }\n }\n return result;\n}\n\nfunction memoryIdentityHashes(memory: ReconcileMemoryIdentity): string[] {\n return [memory.contentHash, ...(memory.contentHashAliases ?? [])];\n}\n\nfunction contentHashRows(files: Iterable<ActiveFactManifestFile>, contentHash: string): ContentHashPathEntry[] {\n const rows: ContentHashPathEntry[] = [];\n for (const file of files) {\n rows.push({ path: file.path, contentHash });\n }\n return rows;\n}\n\nfunction classifySemanticChange(\n current: ReconcileSemanticAgreement,\n prior: ReconcileSemanticAgreement | undefined\n): ReconcileSemanticChange {\n if (!prior) return \"unchanged\";\n const localChanged = current.local.sha256 !== prior.local.sha256;\n const peerChanged = current.peer.sha256 !== prior.peer.sha256;\n if (localChanged && peerChanged) return \"both_modified\";\n if (localChanged) return \"local_changed\";\n if (peerChanged) return \"peer_changed\";\n return \"unchanged\";\n}\n\nexport function collapseActiveFactDuplicates(\n plan: ReconcilePlan,\n localManifests: ReadonlyMap<string, ReconcileManifest>,\n peerManifests: ReadonlyMap<string, ReconcileManifest>,\n priorSemanticAgreements?: ReadonlyMap<string, readonly ReconcileSemanticAgreement[]>\n): ReconcilePlan {\n const entriesByNamespace = new Map<string, ReconcilePlanEntry[]>();\n for (const entry of plan.entries) {\n const entries = entriesByNamespace.get(entry.namespace) ?? [];\n entries.push({ ...entry });\n entriesByNamespace.set(entry.namespace, entries);\n }\n\n let changed = false;\n for (const namespace of new Set([...localManifests.keys(), ...peerManifests.keys()])) {\n const entries = entriesByNamespace.get(namespace) ?? [];\n const localManifest = localManifests.get(namespace);\n const peerManifest = peerManifests.get(namespace);\n const localByPath = activeFactByPath(localManifest);\n const peerByPath = activeFactByPath(peerManifest);\n const localFilesByPath = new Map((localManifest?.files ?? []).map((file) => [file.path, file]));\n const peerFilesByPath = new Map((peerManifest?.files ?? []).map((file) => [file.path, file]));\n const priorSemanticByPathPair = new Map(\n (priorSemanticAgreements?.get(namespace) ?? []).map((agreement) => [semanticAgreementKey(agreement), agreement])\n );\n const localByHash = new Map<string, ActiveFactManifestFile[]>();\n const peerByHash = new Map<string, ActiveFactManifestFile[]>();\n\n for (const file of localByPath.values()) {\n for (const hash of memoryIdentityHashes(file.memory)) {\n const bucket = localByHash.get(hash) ?? [];\n bucket.push(file);\n localByHash.set(hash, bucket);\n }\n }\n for (const file of peerByPath.values()) {\n for (const hash of memoryIdentityHashes(file.memory)) {\n const bucket = peerByHash.get(hash) ?? [];\n bucket.push(file);\n peerByHash.set(hash, bucket);\n }\n }\n\n const removed = new Set<ReconcilePlanEntry>();\n const replacements: ReconcilePlanEntry[] = [];\n const processedPathPairs = new Set<string>();\n for (const hash of new Set([...localByHash.keys(), ...peerByHash.keys()])) {\n const localCandidates = (localByHash.get(hash) ?? []).filter((file) => {\n const opposite = peerFilesByPath.get(file.path);\n const activeOpposite = peerByPath.get(file.path);\n return (\n opposite === undefined ||\n (activeOpposite !== undefined && memoryIdentityHashes(activeOpposite.memory).includes(hash))\n );\n });\n const peerCandidates = (peerByHash.get(hash) ?? []).filter((file) => {\n const opposite = localFilesByPath.get(file.path);\n const activeOpposite = localByPath.get(file.path);\n return (\n opposite === undefined ||\n (activeOpposite !== undefined && memoryIdentityHashes(activeOpposite.memory).includes(hash))\n );\n });\n const localPath = ContentHashIndex.resolvePathByHash(hash, contentHashRows(localCandidates, hash));\n const peerPath = ContentHashIndex.resolvePathByHash(hash, contentHashRows(peerCandidates, hash));\n\n if (localPath && peerPath && localPath !== peerPath) {\n const pathPair = `${localPath}\\0${peerPath}`;\n if (processedPathPairs.has(pathPair)) continue;\n processedPathPairs.add(pathPair);\n const localFile = localByPath.get(localPath);\n const peerFile = peerByPath.get(peerPath);\n if (!localFile || !peerFile) continue;\n const duplicatePaths = new Set([\n ...localCandidates.map((file) => file.path),\n ...peerCandidates.map((file) => file.path),\n ]);\n const authoritativeSamePathEntries = new Set(\n entries.filter(\n (entry) =>\n duplicatePaths.has(entry.path) &&\n localFilesByPath.has(entry.path) &&\n peerFilesByPath.has(entry.path) &&\n entry.action !== \"identical\"\n )\n );\n if (authoritativeSamePathEntries.size > 0) {\n for (const entry of entries) {\n if (\n duplicatePaths.has(entry.path) &&\n !authoritativeSamePathEntries.has(entry) &&\n (entry.action === \"pull\" || entry.action === \"push\" || entry.action === \"identical\")\n ) {\n removed.add(entry);\n changed = true;\n }\n }\n continue;\n }\n const unsafeEntry = entries.some(\n (entry) => duplicatePaths.has(entry.path) && (entry.action === \"suppress\" || entry.action === \"conflict\")\n );\n if (unsafeEntry) continue;\n for (const entry of entries) {\n if (\n duplicatePaths.has(entry.path) &&\n (entry.action === \"pull\" || entry.action === \"push\" || entry.action === \"identical\")\n ) {\n removed.add(entry);\n }\n }\n const semanticAgreement: ReconcileSemanticAgreement = {\n local: { path: localPath, sha256: localFile.sha256 },\n peer: { path: peerPath, sha256: peerFile.sha256 },\n };\n replacements.push({\n path: localPath < peerPath ? localPath : peerPath,\n namespace,\n action: \"identical\",\n reason: \"semantic_duplicate\",\n semanticAgreement,\n semanticChange: classifySemanticChange(\n semanticAgreement,\n priorSemanticByPathPair.get(semanticAgreementKey(semanticAgreement))\n ),\n });\n changed = true;\n continue;\n }\n\n const sameSideEntries = entries.filter((entry) => {\n if (localPath && entry.reason === \"local_only\") {\n return localCandidates.some((file) => file.path === entry.path);\n }\n if (peerPath && entry.reason === \"peer_only\") {\n return peerCandidates.some((file) => file.path === entry.path);\n }\n return false;\n });\n const canonicalPath = localPath ?? peerPath;\n const hasSharedCanonical = localPath !== undefined && localPath === peerPath;\n if (!canonicalPath || sameSideEntries.length === 0 || (!hasSharedCanonical && sameSideEntries.length < 2)) {\n continue;\n }\n for (const entry of sameSideEntries) {\n if (entry.path !== canonicalPath) {\n removed.add(entry);\n changed = true;\n }\n }\n }\n\n if (removed.size > 0 || replacements.length > 0) {\n entriesByNamespace.set(\n namespace,\n [...entries.filter((entry) => !removed.has(entry)), ...replacements].sort(compareReconcilePlanEntries)\n );\n }\n }\n\n if (!changed) return plan;\n const entries = [...entriesByNamespace.values()].flat().sort(compareReconcilePlanEntries);\n return {\n entries,\n byNamespace: summarizeReconcilePlan(entries),\n converged: entries.every((entry) => entry.action === \"identical\"),\n };\n}\n"],"mappings":"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","names":["entries"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  StorageManager
3
- } from "./chunk-UY2RORVF.js";
3
+ } from "./chunk-GVG3JYBI.js";
4
4
  import {
5
5
  getCachedRuleMemories,
6
6
  setCachedRuleMemories
@@ -119,4 +119,4 @@ export {
119
119
  compareVerifiedSemanticRuleResults,
120
120
  searchVerifiedSemanticRules
121
121
  };
122
- //# sourceMappingURL=chunk-PKS56ZRR.js.map
122
+ //# sourceMappingURL=chunk-FGGYSN4P.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createSearchBackend
3
- } from "./chunk-RFWEDCRC.js";
3
+ } from "./chunk-7VJXIDOC.js";
4
4
  import {
5
5
  namespaceIdentityToken,
6
6
  normalizeNamespaceIdentity
@@ -470,4 +470,4 @@ export {
470
470
  NamespaceSearchRouter,
471
471
  normalizeQmdResultPath
472
472
  };
473
- //# sourceMappingURL=chunk-ZMNT26KV.js.map
473
+ //# sourceMappingURL=chunk-FHQSPTPZ.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  expandTildePath
3
- } from "./chunk-EYIEWJNI.js";
3
+ } from "./chunk-6KH5NLQS.js";
4
4
 
5
5
  // src/connectors/live/state-store.ts
6
6
  import { randomUUID } from "crypto";
@@ -606,4 +606,4 @@ export {
606
606
  _refreshConnectorLockForTest,
607
607
  _releaseConnectorLockForTest
608
608
  };
609
- //# sourceMappingURL=chunk-6GUG4YNM.js.map
609
+ //# sourceMappingURL=chunk-GGRRF4PZ.js.map
@@ -5,7 +5,7 @@ import {
5
5
  rejectSymlinkPath,
6
6
  renderFrontmatter,
7
7
  writeBundleFile
8
- } from "./chunk-OVAJKCN3.js";
8
+ } from "./chunk-HY55QQD7.js";
9
9
  import {
10
10
  parseOaiMemCitation
11
11
  } from "./chunk-D24OXEPB.js";
@@ -16,7 +16,7 @@ import {
16
16
  OKF_PROFILE_TYPE,
17
17
  StorageManager,
18
18
  okfTypeForMemory
19
- } from "./chunk-UY2RORVF.js";
19
+ } from "./chunk-GVG3JYBI.js";
20
20
  import {
21
21
  normalizeProjectionPreview
22
22
  } from "./chunk-SCU65EZI.js";
@@ -270,4 +270,4 @@ export {
270
270
  exportOkfBundle,
271
271
  firstHeading
272
272
  };
273
- //# sourceMappingURL=chunk-YIHKAUS4.js.map
273
+ //# sourceMappingURL=chunk-GTWHVXPA.js.map
@@ -17,7 +17,7 @@ import {
17
17
  } from "./chunk-46WM6JX2.js";
18
18
  import {
19
19
  normalizeQmdResultPath
20
- } from "./chunk-ZMNT26KV.js";
20
+ } from "./chunk-FHQSPTPZ.js";
21
21
  import {
22
22
  withholdToolScopedFromSharedNamespace
23
23
  } from "./chunk-S2V7RUCL.js";
@@ -51,7 +51,7 @@ import {
51
51
  import {
52
52
  parseFaithfulnessField,
53
53
  serializeFaithfulnessFields
54
- } from "./chunk-XSTNGNJP.js";
54
+ } from "./chunk-DCJ3YFIC.js";
55
55
  import {
56
56
  DeletionRevisionStore,
57
57
  TombstoneBlockedCaptureIndexHost,
@@ -128,7 +128,7 @@ import {
128
128
  parseProvenanceTag,
129
129
  reconcileProvenanceRead,
130
130
  serializeProvenanceFields
131
- } from "./chunk-NXH34IPL.js";
131
+ } from "./chunk-353KGBKY.js";
132
132
  import {
133
133
  matchEntitySchemaSection,
134
134
  normalizeEntityStructuredSection,
@@ -11386,4 +11386,4 @@ export {
11386
11386
  isValidBufferSurpriseEvent,
11387
11387
  StorageManager3 as StorageManager
11388
11388
  };
11389
- //# sourceMappingURL=chunk-UY2RORVF.js.map
11389
+ //# sourceMappingURL=chunk-GVG3JYBI.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  StorageManager
3
- } from "./chunk-UY2RORVF.js";
3
+ } from "./chunk-GVG3JYBI.js";
4
4
  import {
5
5
  bumpMemoryCorpusVersionForDir
6
6
  } from "./chunk-XCB6QDL6.js";
@@ -765,4 +765,4 @@ export {
765
765
  listMemoryGovernanceRuns,
766
766
  readMemoryGovernanceRunArtifact
767
767
  };
768
- //# sourceMappingURL=chunk-I3OQBP23.js.map
768
+ //# sourceMappingURL=chunk-GY5WZBA6.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  BUILTIN_CONNECTORS,
3
3
  loadRegistry
4
- } from "./chunk-YSSAGB2O.js";
4
+ } from "./chunk-CLLPJ6QT.js";
5
5
 
6
6
  // src/connectors/label.ts
7
7
  var CONNECTOR_LABEL_MAX_LENGTH = 64;
@@ -25,4 +25,4 @@ export {
25
25
  CONNECTOR_LABEL_MAX_LENGTH,
26
26
  knownConnectorIds
27
27
  };
28
- //# sourceMappingURL=chunk-3GCK6ONU.js.map
28
+ //# sourceMappingURL=chunk-HK32G473.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  OKF_RESERVED_BASENAMES
3
- } from "./chunk-UY2RORVF.js";
3
+ } from "./chunk-GVG3JYBI.js";
4
4
  import {
5
5
  MAGIC_BYTES
6
6
  } from "./chunk-JN72EPOE.js";
@@ -202,4 +202,4 @@ export {
202
202
  publishBundle,
203
203
  rejectSymlinkPath
204
204
  };
205
- //# sourceMappingURL=chunk-OVAJKCN3.js.map
205
+ //# sourceMappingURL=chunk-HY55QQD7.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-KJTKLXTH.js";
4
4
  import {
5
5
  StorageManager
6
- } from "./chunk-UY2RORVF.js";
6
+ } from "./chunk-GVG3JYBI.js";
7
7
  import {
8
8
  assertInjectedStorageRooted
9
9
  } from "./chunk-TBXAY2SS.js";
@@ -260,4 +260,4 @@ export {
260
260
  backupExistingLedger,
261
261
  rebuildMemoryLifecycleLedger
262
262
  };
263
- //# sourceMappingURL=chunk-YJETZFLJ.js.map
263
+ //# sourceMappingURL=chunk-I27RSQRR.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  readEnvVar
3
- } from "./chunk-JUC24CTX.js";
3
+ } from "./chunk-P2QRMMVQ.js";
4
4
  import {
5
5
  log
6
6
  } from "./chunk-3WCASNQZ.js";
@@ -142,4 +142,4 @@ export {
142
142
  __setGatewayResolverForTest,
143
143
  __setGatewayRuntimeAuthForModelForTest
144
144
  };
145
- //# sourceMappingURL=chunk-QIEUU4UK.js.map
145
+ //# sourceMappingURL=chunk-I55KAVET.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-V7IZKJI3.js";
4
4
  import {
5
5
  AdapterRegistry
6
- } from "./chunk-JBPKEARU.js";
6
+ } from "./chunk-AU7Q3LSC.js";
7
7
  import {
8
8
  WriteRateLimiter
9
9
  } from "./chunk-TB6CBZ5V.js";
@@ -12,13 +12,13 @@ import {
12
12
  } from "./chunk-3HSRWJTC.js";
13
13
  import {
14
14
  respondDeepRecall
15
- } from "./chunk-ALBYEXFX.js";
15
+ } from "./chunk-VZWXFXLX.js";
16
16
  import {
17
17
  handleSupportPassportOwnerHttp
18
- } from "./chunk-MSSJSC2V.js";
18
+ } from "./chunk-PEOTOFH5.js";
19
19
  import {
20
20
  buildSupportPassportPublicRequestHandler
21
- } from "./chunk-YFDJVB2K.js";
21
+ } from "./chunk-T7CJQVRZ.js";
22
22
  import {
23
23
  handleMcpGetSse
24
24
  } from "./chunk-SRT6SHVZ.js";
@@ -31,10 +31,10 @@ import {
31
31
  processChatMessage,
32
32
  sessionBelongsToPrincipal,
33
33
  subscribeChatTranscript
34
- } from "./chunk-IES4QHLM.js";
34
+ } from "./chunk-OXNU333D.js";
35
35
  import {
36
36
  RelayMissionStoreError
37
- } from "./chunk-MYB6DWE5.js";
37
+ } from "./chunk-OGELWNYC.js";
38
38
  import {
39
39
  executeResolution,
40
40
  isValidResolutionVerb
@@ -46,7 +46,7 @@ import {
46
46
  } from "./chunk-CTVWELNK.js";
47
47
  import {
48
48
  validateRequest
49
- } from "./chunk-2AMEUKCG.js";
49
+ } from "./chunk-JEIXTYVG.js";
50
50
  import {
51
51
  toDottedRemnicName
52
52
  } from "./chunk-ZQUVBZI4.js";
@@ -59,10 +59,10 @@ import {
59
59
  optionalNamespaceKindQueryParam,
60
60
  optionalQueryString,
61
61
  positiveIntQueryParam
62
- } from "./chunk-EZKSOM5K.js";
62
+ } from "./chunk-MFJBANPX.js";
63
63
  import {
64
64
  respondBriefingHttp
65
- } from "./chunk-Z5XE7AMC.js";
65
+ } from "./chunk-SMOFBBPU.js";
66
66
  import {
67
67
  maybeHandleLifecycleFlush
68
68
  } from "./chunk-TIDEL77O.js";
@@ -73,14 +73,14 @@ import {
73
73
  authorizationProbeNamespaces,
74
74
  authorizationProbeRequiresPrincipalNamespace,
75
75
  probeOperationAuthorization
76
- } from "./chunk-W7OU4I3Y.js";
76
+ } from "./chunk-666OOKB7.js";
77
77
  import {
78
78
  getOperation,
79
79
  resolveQueryNamespaceWritablePreflight
80
- } from "./chunk-R55WAWS3.js";
80
+ } from "./chunk-7DUFJAOE.js";
81
81
  import {
82
82
  handleWhoKnowsHttpQuery
83
- } from "./chunk-INBOGQ3E.js";
83
+ } from "./chunk-EZZV7OQL.js";
84
84
  import {
85
85
  isTrustZoneName
86
86
  } from "./chunk-ROBHL3GL.js";
@@ -107,10 +107,10 @@ import {
107
107
  } from "./chunk-WQZZDN5M.js";
108
108
  import {
109
109
  projectTagProjectId
110
- } from "./chunk-QBC33MPY.js";
110
+ } from "./chunk-NZXEK3UF.js";
111
111
  import {
112
112
  expandTildePath
113
- } from "./chunk-EYIEWJNI.js";
113
+ } from "./chunk-6KH5NLQS.js";
114
114
  import {
115
115
  EngramAccessForbiddenError,
116
116
  EngramAccessInputError
@@ -3585,4 +3585,4 @@ export {
3585
3585
  resolveDefaultAdminConsolePublicDir,
3586
3586
  EngramAccessHttpServer
3587
3587
  };
3588
- //# sourceMappingURL=chunk-UY7VPC6Q.js.map
3588
+ //# sourceMappingURL=chunk-IA2YSHTX.js.map
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  SharedFeedbackEntrySchema,
3
3
  resolveSharedContextDir
4
- } from "./chunk-IN673LEP.js";
4
+ } from "./chunk-CARRTDKC.js";
5
5
  import {
6
6
  composeSalvagedEnvelope
7
7
  } from "./chunk-RC5DXXWC.js";
8
8
  import {
9
9
  StorageManager
10
- } from "./chunk-UY2RORVF.js";
10
+ } from "./chunk-GVG3JYBI.js";
11
11
  import {
12
12
  parseContinuityImprovementLoops
13
13
  } from "./chunk-LDXUBPMO.js";
@@ -1283,4 +1283,4 @@ export {
1283
1283
  defaultTierMigrationCycleBudget,
1284
1284
  CompoundingEngine
1285
1285
  };
1286
- //# sourceMappingURL=chunk-UEEN7GXR.js.map
1286
+ //# sourceMappingURL=chunk-IY2FVXM6.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-7T4TOGMS.js";
4
4
  import {
5
5
  defineOperation
6
- } from "./chunk-R55WAWS3.js";
6
+ } from "./chunk-7DUFJAOE.js";
7
7
 
8
8
  // src/external-wiki-access.ts
9
9
  import { z } from "zod";
@@ -26,4 +26,4 @@ var externalWikiSearchOperation = defineOperation({
26
26
  export {
27
27
  externalWikiSearchOperation
28
28
  };
29
- //# sourceMappingURL=chunk-NVOFMARR.js.map
29
+ //# sourceMappingURL=chunk-JDDXXZWW.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isValidCapsuleSince
3
- } from "./chunk-7LCGFUMB.js";
3
+ } from "./chunk-KQAFEZQX.js";
4
4
  import {
5
5
  CAPSULE_ID_PATTERN
6
6
  } from "./chunk-WEHSQBFR.js";
@@ -492,4 +492,4 @@ export {
492
492
  actionConfidenceRequestSchema,
493
493
  validateRequest
494
494
  };
495
- //# sourceMappingURL=chunk-2AMEUKCG.js.map
495
+ //# sourceMappingURL=chunk-JEIXTYVG.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-7CBKAQIG.js";
4
4
  import {
5
5
  gatewayTaskChainOptions
6
- } from "./chunk-JALOAKSZ.js";
6
+ } from "./chunk-TLPZ6MKZ.js";
7
7
  import {
8
8
  extractJsonCandidates
9
9
  } from "./chunk-RGMVMVMF.js";
@@ -491,4 +491,4 @@ export {
491
491
  createVerdictCache,
492
492
  createDeferCountMap
493
493
  };
494
- //# sourceMappingURL=chunk-ODW5GDFE.js.map
494
+ //# sourceMappingURL=chunk-JT3EB7ZL.js.map
@@ -1,16 +1,16 @@
1
1
  import {
2
2
  applyExtractionSourceGrounding
3
- } from "./chunk-HMKPFW7R.js";
3
+ } from "./chunk-MPAJFFP3.js";
4
4
  import {
5
5
  CONNECTOR_LABEL_MAX_LENGTH,
6
6
  knownConnectorIds
7
- } from "./chunk-3GCK6ONU.js";
7
+ } from "./chunk-HK32G473.js";
8
8
  import {
9
9
  isValidConnectorId
10
- } from "./chunk-YSSAGB2O.js";
10
+ } from "./chunk-CLLPJ6QT.js";
11
11
  import {
12
12
  deriveSourceConnector
13
- } from "./chunk-6TZWGQTT.js";
13
+ } from "./chunk-RAVRDTP7.js";
14
14
  import {
15
15
  resolvePipelineProcessingCapabilities
16
16
  } from "./chunk-JUOZ62Y7.js";
@@ -108,4 +108,4 @@ export {
108
108
  renderExtractionConversation,
109
109
  applyGroundingWithConnector
110
110
  };
111
- //# sourceMappingURL=chunk-XR67IAXP.js.map
111
+ //# sourceMappingURL=chunk-KLMESRPV.js.map
@@ -1,12 +1,12 @@
1
- import {
2
- encryptCapsuleFile
3
- } from "./chunk-X7Y7WX73.js";
4
1
  import {
5
2
  CAPSULE_ID_PATTERN,
6
3
  CapsuleBlockSchema,
7
4
  ExportBundleV2Schema,
8
5
  ExportManifestV2Schema
9
6
  } from "./chunk-WEHSQBFR.js";
7
+ import {
8
+ encryptCapsuleFile
9
+ } from "./chunk-X7Y7WX73.js";
10
10
  import {
11
11
  CAPSULE_SCHEMA_VERSION,
12
12
  EXPORT_FORMAT
@@ -261,4 +261,4 @@ export {
261
261
  exportCapsule,
262
262
  isValidCapsuleSince
263
263
  };
264
- //# sourceMappingURL=chunk-7LCGFUMB.js.map
264
+ //# sourceMappingURL=chunk-KQAFEZQX.js.map