@remnic/core 9.69.88 → 9.69.90

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 (431) hide show
  1. package/dist/access-admin-ops-surface.js +74 -72
  2. package/dist/access-authorization-probe.js +75 -73
  3. package/dist/access-boundary.js +74 -72
  4. package/dist/access-cli.js +168 -165
  5. package/dist/access-cli.js.map +1 -1
  6. package/dist/access-extraction-force-flush.js +74 -72
  7. package/dist/access-http-briefing.js +75 -73
  8. package/dist/access-http-query.js +76 -74
  9. package/dist/access-http.js +98 -96
  10. package/dist/access-identity-continuity-surface.js +74 -72
  11. package/dist/access-lcm-surface.js +74 -72
  12. package/dist/access-mcp-output-schemas.d.ts.map +1 -1
  13. package/dist/access-mcp-output-schemas.js +1 -1
  14. package/dist/access-mcp.js +86 -84
  15. package/dist/access-memory-search-fanout.js +3 -3
  16. package/dist/access-namespace-preflight.js +74 -72
  17. package/dist/access-observe-write-category.js +11 -10
  18. package/dist/access-observe-write-surface.js +74 -72
  19. package/dist/access-offline-manifest.js +10 -9
  20. package/dist/access-operations-batch.js +76 -74
  21. package/dist/access-operations.js +83 -81
  22. package/dist/access-recall-concurrency.js +74 -72
  23. package/dist/access-recall-corpus-versions.d.ts +12 -0
  24. package/dist/access-recall-corpus-versions.d.ts.map +1 -0
  25. package/dist/access-recall-corpus-versions.js +10 -0
  26. package/dist/access-recall-diagnostics.js +5 -5
  27. package/dist/access-recall-response.d.ts +4 -0
  28. package/dist/access-recall-response.d.ts.map +1 -1
  29. package/dist/access-recall-response.js +74 -72
  30. package/dist/access-recall-surface.d.ts +8 -0
  31. package/dist/access-recall-surface.d.ts.map +1 -1
  32. package/dist/access-recall-surface.js +74 -72
  33. package/dist/access-schema.js +10 -9
  34. package/dist/access-service.d.ts +5 -0
  35. package/dist/access-service.d.ts.map +1 -1
  36. package/dist/access-service.js +74 -72
  37. package/dist/access-surface-catalog.js +76 -74
  38. package/dist/access-surface-catalog.js.map +1 -1
  39. package/dist/active-memory-bridge.js +3 -3
  40. package/dist/active-recall.js +27 -24
  41. package/dist/active-recall.js.map +1 -1
  42. package/dist/adapters/index.js +7 -7
  43. package/dist/adapters/registry.js +3 -3
  44. package/dist/{auto-sync-U5N3CB5Y.js → auto-sync-PAWBFQWL.js} +5 -5
  45. package/dist/briefing.js +19 -19
  46. package/dist/buffer.js +8 -8
  47. package/dist/calibration.js +2 -2
  48. package/dist/capabilities.d.ts +2 -1
  49. package/dist/capabilities.d.ts.map +1 -1
  50. package/dist/capabilities.js +1 -1
  51. package/dist/{capsule-crypto-YO5QJ6L3.js → capsule-crypto-7FJQINUR.js} +2 -2
  52. package/dist/causal-consolidation.js +19 -19
  53. package/dist/{chunk-BMXEBWBT.js → chunk-2EMROIXS.js} +2 -1
  54. package/dist/{chunk-BMXEBWBT.js.map → chunk-2EMROIXS.js.map} +1 -1
  55. package/dist/{chunk-MCTM4YPL.js → chunk-2FLFJTCI.js} +4 -2
  56. package/dist/chunk-2FLFJTCI.js.map +1 -0
  57. package/dist/{chunk-RDJ6C7NZ.js → chunk-2IWBHZ3H.js} +5 -5
  58. package/dist/{chunk-UP75KL3L.js → chunk-2JRB3Z5N.js} +2 -2
  59. package/dist/{chunk-BXLOS5AJ.js → chunk-2NLLXCJG.js} +2 -2
  60. package/dist/{chunk-KN6CIN7I.js → chunk-32HO62I4.js} +2 -2
  61. package/dist/{chunk-JLPNONPH.js → chunk-35A7GCHG.js} +2 -2
  62. package/dist/{chunk-MXCAJKMA.js → chunk-37ZQYFX4.js} +6 -6
  63. package/dist/{chunk-LW3HKRL7.js → chunk-3BTHXB7Z.js} +3 -3
  64. package/dist/{chunk-C7V3KPKJ.js → chunk-47LTKAGL.js} +2 -2
  65. package/dist/{chunk-3O5BB45T.js → chunk-4DXNOVNW.js} +10 -10
  66. package/dist/{chunk-65I2LZEK.js → chunk-4G2YCKLT.js} +2 -2
  67. package/dist/{chunk-OK52IY3W.js → chunk-4GEBLO7S.js} +10 -10
  68. package/dist/{chunk-M6C7SOR6.js → chunk-4I6PEEFA.js} +3 -3
  69. package/dist/{chunk-Z4TXB4K7.js → chunk-5BUCKFRE.js} +2 -2
  70. package/dist/{chunk-BGI4NUAO.js → chunk-5S7SNRSJ.js} +2 -2
  71. package/dist/{chunk-JVPWRNHA.js → chunk-5YR4UGF2.js} +5 -5
  72. package/dist/{chunk-YJ7MW627.js → chunk-6BG364RN.js} +2 -2
  73. package/dist/{chunk-D5BSQR63.js → chunk-76LNUSS5.js} +2 -2
  74. package/dist/{chunk-7CRUDH7G.js → chunk-77HNHT6S.js} +2 -2
  75. package/dist/{chunk-OWYHHW67.js → chunk-7XI2UJHL.js} +4 -4
  76. package/dist/{chunk-BJVO4H5C.js → chunk-7Z2UKRNJ.js} +4 -4
  77. package/dist/{chunk-2WLMWP2T.js → chunk-A3K2KKSG.js} +2 -2
  78. package/dist/chunk-A5ZYP4K5.js +130 -0
  79. package/dist/chunk-A5ZYP4K5.js.map +1 -0
  80. package/dist/{chunk-AWG3TIAY.js → chunk-ACCOC6UM.js} +2 -2
  81. package/dist/{chunk-3JDA3XF5.js → chunk-AEGNDL24.js} +2 -2
  82. package/dist/{chunk-2NAD4YCI.js → chunk-AEUMONCD.js} +2 -2
  83. package/dist/{chunk-C6U57KG4.js → chunk-AF5PW35O.js} +3 -3
  84. package/dist/{chunk-IOSZHHJC.js → chunk-ANGZWYL2.js} +6 -6
  85. package/dist/{chunk-K6T33R4Q.js → chunk-AXGJMDBS.js} +156 -7
  86. package/dist/chunk-AXGJMDBS.js.map +1 -0
  87. package/dist/{chunk-6LYAEM54.js → chunk-AXHU56C3.js} +2 -2
  88. package/dist/{chunk-GWM6T5EQ.js → chunk-BCGMG2RD.js} +2 -2
  89. package/dist/{chunk-HXCJF4XU.js → chunk-BFIZXFUG.js} +2 -2
  90. package/dist/{chunk-DBYAY6UW.js → chunk-BTOHGPHC.js} +3 -3
  91. package/dist/{chunk-5X4MXNEU.js → chunk-C6HPNPNK.js} +3 -3
  92. package/dist/{chunk-4MP7XR5J.js → chunk-CAKHZAXH.js} +2 -2
  93. package/dist/{chunk-YSBL7VPO.js → chunk-CDWFWOSZ.js} +2 -2
  94. package/dist/{chunk-QAW55ZHJ.js → chunk-CZ44FH45.js} +4 -4
  95. package/dist/{chunk-T3FMRLWQ.js → chunk-D5HQ3VEX.js} +4 -4
  96. package/dist/{chunk-S7LWX2PQ.js → chunk-DPG5HQLE.js} +4 -4
  97. package/dist/{chunk-C7ZDKWPS.js → chunk-DVSAMW5T.js} +3 -3
  98. package/dist/{chunk-WBYQA3VN.js → chunk-E5H4TM4Y.js} +3 -3
  99. package/dist/{chunk-4RL3JOB3.js → chunk-EEDI3OXB.js} +2 -2
  100. package/dist/{chunk-3TB2XQ3C.js → chunk-EUL3S3LE.js} +4 -4
  101. package/dist/{chunk-Q4AUIFUA.js → chunk-F23U5YE7.js} +7 -7
  102. package/dist/{chunk-ZZZ4I455.js → chunk-GDVORIFM.js} +2 -2
  103. package/dist/{chunk-QB57WIS6.js → chunk-GXETU7AE.js} +98 -73
  104. package/dist/chunk-GXETU7AE.js.map +1 -0
  105. package/dist/{chunk-SWBC3UER.js → chunk-HCPUVB7S.js} +3 -3
  106. package/dist/{chunk-R3X2T2LP.js → chunk-HFOY2SBG.js} +2 -2
  107. package/dist/{chunk-LU7E2MXE.js → chunk-HQCUUVG2.js} +20 -20
  108. package/dist/{chunk-FJLQXMTU.js → chunk-I6B3S62A.js} +2 -2
  109. package/dist/{chunk-RBITPCMK.js → chunk-IDSSDL4W.js} +9 -9
  110. package/dist/{chunk-OCFXVDBZ.js → chunk-IVEHY2VT.js} +54 -123
  111. package/dist/chunk-IVEHY2VT.js.map +1 -0
  112. package/dist/{chunk-B3OFQP5Y.js → chunk-IY47KPML.js} +6 -6
  113. package/dist/{chunk-AXC4WSF3.js → chunk-JDOBIFBK.js} +2 -2
  114. package/dist/{chunk-P2ODTYOF.js → chunk-JGXHQV5N.js} +3 -3
  115. package/dist/{chunk-7LNHRQKR.js → chunk-JLIGUFPF.js} +2 -2
  116. package/dist/{chunk-EDIH6X2P.js → chunk-JZ66PN72.js} +2 -2
  117. package/dist/{chunk-BLVR4WYU.js → chunk-KICEAGKM.js} +2 -2
  118. package/dist/{chunk-S2GE2K36.js → chunk-KNI4SGQE.js} +109 -96
  119. package/dist/chunk-KNI4SGQE.js.map +1 -0
  120. package/dist/{chunk-VDX2J7OX.js → chunk-KQAFEZQX.js} +2 -2
  121. package/dist/{chunk-PEBHPCX2.js → chunk-KTG23JDX.js} +2 -2
  122. package/dist/{chunk-BOZJD5PK.js → chunk-KYOZ5E6V.js} +2 -2
  123. package/dist/{chunk-2DLWLNO4.js → chunk-L3TZXELN.js} +4 -4
  124. package/dist/{chunk-VALKBYBN.js → chunk-M3N2TUZ7.js} +2 -2
  125. package/dist/{chunk-76M5OK7V.js → chunk-M7T2NKET.js} +5 -5
  126. package/dist/chunk-MSAI3Q7D.js +372 -0
  127. package/dist/chunk-MSAI3Q7D.js.map +1 -0
  128. package/dist/{chunk-Z5LP6ILP.js → chunk-MZAH3CBT.js} +2 -2
  129. package/dist/{chunk-QI7K7BZ5.js → chunk-NJW2ZG64.js} +2 -2
  130. package/dist/{chunk-CZJA2EQE.js → chunk-NSKXRTVZ.js} +2 -2
  131. package/dist/{chunk-4O4XCBOS.js → chunk-NUSQ3YEL.js} +2 -2
  132. package/dist/{chunk-4OQET73E.js → chunk-O57FCN42.js} +15 -15
  133. package/dist/{chunk-WKY7N3L7.js → chunk-OEBUAC3O.js} +10 -10
  134. package/dist/{chunk-Y23L4YJV.js → chunk-OEIA4IHU.js} +2 -2
  135. package/dist/{chunk-66DKTOBY.js → chunk-OGZC2WUX.js} +2 -2
  136. package/dist/{chunk-3SGTV7RD.js → chunk-P62DSJUK.js} +6 -6
  137. package/dist/{chunk-FKD656D2.js → chunk-PH2V7EXZ.js} +2 -2
  138. package/dist/{chunk-KKNZ7PUZ.js → chunk-QAIKLICT.js} +2 -2
  139. package/dist/{chunk-SSUDD72S.js → chunk-QPWUG2S3.js} +2 -2
  140. package/dist/{chunk-QI2E6ISQ.js → chunk-R2TVWQLR.js} +2 -2
  141. package/dist/chunk-R2TVWQLR.js.map +1 -0
  142. package/dist/{chunk-GZDTVYK2.js → chunk-R36IBI2M.js} +3 -3
  143. package/dist/{chunk-W3XXFPRI.js → chunk-R5B3OWI4.js} +64 -64
  144. package/dist/{chunk-VL4X7ZHC.js → chunk-RFIJRZ4K.js} +2 -2
  145. package/dist/{chunk-PWF4JXKD.js → chunk-RKDSELA3.js} +1 -1
  146. package/dist/chunk-RKDSELA3.js.map +1 -0
  147. package/dist/{chunk-AEHVZY3X.js → chunk-RPVHRZ5C.js} +2 -2
  148. package/dist/{chunk-X5SHE2O3.js → chunk-RVBLCU5C.js} +4 -4
  149. package/dist/{chunk-BUQKSQXL.js → chunk-S533KGX6.js} +5 -5
  150. package/dist/{chunk-STEOT4DI.js → chunk-SCPHU3RW.js} +7 -7
  151. package/dist/{chunk-LV5H6FTN.js → chunk-SFSD5Q6O.js} +3 -3
  152. package/dist/{chunk-AE5U5NMS.js → chunk-SMLKHXPF.js} +2 -2
  153. package/dist/{chunk-AEU4EQGV.js → chunk-T7R5HI6A.js} +1 -1
  154. package/dist/{chunk-H5BJWPUI.js → chunk-TVQZAQPE.js} +2 -2
  155. package/dist/{chunk-H56VY4BY.js → chunk-U36GYZ2P.js} +10 -5
  156. package/dist/chunk-U36GYZ2P.js.map +1 -0
  157. package/dist/{chunk-XOV7NRY5.js → chunk-U46P4UAR.js} +3 -3
  158. package/dist/{chunk-DZ42MDZE.js → chunk-UCJINCZT.js} +2 -2
  159. package/dist/{chunk-5E6RYRYW.js → chunk-UG5V3Z3R.js} +7 -7
  160. package/dist/{chunk-IW3RMBPB.js → chunk-VAOC6GHN.js} +2 -2
  161. package/dist/{chunk-6UQFJULG.js → chunk-VBNA2JEN.js} +2 -2
  162. package/dist/{chunk-HLB7GKGG.js → chunk-VOZNBQNL.js} +2 -2
  163. package/dist/{chunk-NYKIUQL6.js → chunk-WHIGRW7T.js} +2 -2
  164. package/dist/{chunk-AZSGSRIM.js → chunk-WHTMVTU4.js} +3 -3
  165. package/dist/{chunk-AERXJCOG.js → chunk-WL7N5VGG.js} +5 -5
  166. package/dist/{chunk-TFA6HPOA.js → chunk-WQUGCOKF.js} +4 -4
  167. package/dist/{chunk-A4VSOUCB.js → chunk-WTZQM74L.js} +5 -5
  168. package/dist/{chunk-DQEMWVMT.js → chunk-X7Y7WX73.js} +1 -1
  169. package/dist/{chunk-T2YX56QI.js → chunk-XWSUK5GL.js} +4 -4
  170. package/dist/{chunk-ACX55QDO.js → chunk-XYOT5GQU.js} +3 -3
  171. package/dist/{chunk-Z6EZCN6Z.js → chunk-Y7427SL7.js} +10 -10
  172. package/dist/{chunk-4KN2JLQV.js → chunk-YHZWVDP7.js} +2 -2
  173. package/dist/chunk-YVRQ5JRA.js +49 -0
  174. package/dist/chunk-YVRQ5JRA.js.map +1 -0
  175. package/dist/{chunk-5MNUBT7T.js → chunk-ZFTODDTX.js} +2 -2
  176. package/dist/{chunk-VVX5PZFS.js → chunk-ZHXSOMYH.js} +2 -2
  177. package/dist/{chunk-CRXRZA3G.js → chunk-ZQTYWSO3.js} +2 -2
  178. package/dist/cli.js +126 -122
  179. package/dist/coding/export-okf-codegraph.js +17 -17
  180. package/dist/compounding/engine.js +19 -19
  181. package/dist/config.d.ts.map +1 -1
  182. package/dist/config.js +27 -24
  183. package/dist/connectors/codex-materialize-runner.js +18 -18
  184. package/dist/connectors/index.js +20 -20
  185. package/dist/contradiction/index.js +3 -3
  186. package/dist/{contradiction-scan-TAGMOUQ2.js → contradiction-scan-GGRTVB7C.js} +3 -3
  187. package/dist/convergence-refresh.js +20 -20
  188. package/dist/conversation-index/backend.js +2 -2
  189. package/dist/corpus-watermark.js +20 -20
  190. package/dist/day-summary.js +2 -2
  191. package/dist/deep-recall-http-glue.js +11 -10
  192. package/dist/embedding-fallback.js +2 -2
  193. package/dist/entity-retrieval.js +19 -19
  194. package/dist/explicit-capture.js +2 -2
  195. package/dist/external-wiki-access.js +75 -73
  196. package/dist/extraction-judge.js +3 -3
  197. package/dist/extraction-normalization.js +3 -3
  198. package/dist/extraction-prompt.js +2 -2
  199. package/dist/extraction.js +32 -32
  200. package/dist/{first-start-migration-7OATHJKB.js → first-start-migration-OM3PHMZO.js} +2 -2
  201. package/dist/harmonic-retrieval.js +1 -1
  202. package/dist/index.d.ts +1 -1
  203. package/dist/index.d.ts.map +1 -1
  204. package/dist/index.js +198 -195
  205. package/dist/lcm/engine.js +4 -4
  206. package/dist/lcm/index.js +10 -10
  207. package/dist/local-llm-config.js +1 -1
  208. package/dist/local-llm.js +3 -3
  209. package/dist/location/index.js +20 -20
  210. package/dist/maintenance/memory-governance.js +18 -18
  211. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +18 -18
  212. package/dist/maintenance/rebuild-memory-projection.js +19 -19
  213. package/dist/memory-browse-operations.js +75 -73
  214. package/dist/memory-browse.js +5 -5
  215. package/dist/namespaces/migrate.js +19 -19
  216. package/dist/namespaces/principal.js +2 -2
  217. package/dist/namespaces/search.js +13 -13
  218. package/dist/namespaces/storage.js +18 -18
  219. package/dist/offline-sync-changeset-generations.d.ts +82 -0
  220. package/dist/offline-sync-changeset-generations.d.ts.map +1 -0
  221. package/dist/offline-sync-changeset-generations.js +21 -0
  222. package/dist/offline-sync-changeset-generations.js.map +1 -0
  223. package/dist/offline-sync-embedding-generation.d.ts +50 -0
  224. package/dist/offline-sync-embedding-generation.d.ts.map +1 -1
  225. package/dist/offline-sync-embedding-generation.js +4 -2
  226. package/dist/offline-sync-impression-drain.js +5 -5
  227. package/dist/offline-sync-snapshot-stream.js +5 -4
  228. package/dist/offline-sync.d.ts +12 -1
  229. package/dist/offline-sync.d.ts.map +1 -1
  230. package/dist/offline-sync.js +6 -5
  231. package/dist/operator-doctor-corpus.js +21 -21
  232. package/dist/operator-toolkit.js +39 -36
  233. package/dist/orchestration/compression-guideline-coordinator.js +2 -2
  234. package/dist/orchestration/maintenance.js +33 -33
  235. package/dist/orchestration/orchestrator-helpers.d.ts +1 -0
  236. package/dist/orchestration/orchestrator-helpers.d.ts.map +1 -1
  237. package/dist/orchestration/recall-entry.d.ts.map +1 -1
  238. package/dist/orchestration/recall-search-pipeline.d.ts.map +1 -1
  239. package/dist/orchestrator.js +168 -165
  240. package/dist/outcome-boost-config.d.ts +17 -0
  241. package/dist/outcome-boost-config.d.ts.map +1 -0
  242. package/dist/outcome-boost-config.js +1 -0
  243. package/dist/outcome-boost-config.js.map +1 -0
  244. package/dist/qmd.js +4 -4
  245. package/dist/recall-explain-renderer.js +3 -3
  246. package/dist/recall-navigate-access.js +2 -2
  247. package/dist/recall-navigate-disclosure.js +2 -2
  248. package/dist/recall-navigate.js +2 -2
  249. package/dist/recall-navigation-operations.js +75 -73
  250. package/dist/recall-navigation.js +74 -72
  251. package/dist/recall-state-view-admission.js +5 -5
  252. package/dist/recall-why-service.js +9 -9
  253. package/dist/recall-why.js +3 -3
  254. package/dist/recall-xray-cli.js +4 -4
  255. package/dist/recall-xray-renderer.js +3 -3
  256. package/dist/recall-xray.js +2 -2
  257. package/dist/rerank-outcome.d.ts +73 -0
  258. package/dist/rerank-outcome.d.ts.map +1 -0
  259. package/dist/rerank-outcome.js +28 -0
  260. package/dist/rerank-outcome.js.map +1 -0
  261. package/dist/{resolution-K4A3VPKZ.js → resolution-BROE3TRO.js} +4 -4
  262. package/dist/resolution-BROE3TRO.js.map +1 -0
  263. package/dist/resume-bundles.js +28 -25
  264. package/dist/search/embed-helper.js +2 -2
  265. package/dist/search/factory.js +12 -12
  266. package/dist/search/index.js +18 -18
  267. package/dist/search/lancedb-backend.js +2 -2
  268. package/dist/search/meilisearch-backend.js +2 -2
  269. package/dist/search/orama-backend.js +2 -2
  270. package/dist/semantic-consolidation.js +19 -19
  271. package/dist/semantic-rule-promotion.js +18 -18
  272. package/dist/semantic-rule-verifier.js +18 -18
  273. package/dist/shared-context/manager.js +2 -2
  274. package/dist/source-agent-qualifier.js +26 -26
  275. package/dist/standup/build.js +18 -18
  276. package/dist/storage.js +17 -17
  277. package/dist/summarizer.js +4 -4
  278. package/dist/support-passport/index.js +77 -75
  279. package/dist/support-passport/offline-sync-guard.d.ts +6 -2
  280. package/dist/support-passport/offline-sync-guard.d.ts.map +1 -1
  281. package/dist/{tier-stats-VF6DS52E.js → tier-stats-M2FMMD2N.js} +2 -2
  282. package/dist/transfer/backup.js +2 -2
  283. package/dist/transfer/capsule-export.js +2 -2
  284. package/dist/transfer/capsule-import.js +2 -2
  285. package/dist/transfer/export-okf.js +18 -18
  286. package/dist/types.d.ts +4 -2
  287. package/dist/types.d.ts.map +1 -1
  288. package/dist/types.js +1 -1
  289. package/dist/verified-recall.js +18 -18
  290. package/dist/who-knows-cli.js +19 -19
  291. package/dist/who-knows.js +18 -18
  292. package/package.json +13 -3
  293. package/src/access-mcp-output-schemas.ts +2 -0
  294. package/src/access-recall-corpus-versions.ts +59 -0
  295. package/src/access-recall-response.ts +3 -0
  296. package/src/access-recall-surface.ts +22 -23
  297. package/src/access-service-raw-excerpt-read-gate.test.ts +1 -1
  298. package/src/access-service.ts +3 -0
  299. package/src/capabilities.test.ts +1 -0
  300. package/src/capabilities.ts +6 -8
  301. package/src/config.ts +3 -0
  302. package/src/index.ts +1 -1
  303. package/src/offline-sync-changeset-generations.test.ts +962 -0
  304. package/src/offline-sync-changeset-generations.ts +549 -0
  305. package/src/offline-sync-embedding-generation.ts +272 -4
  306. package/src/offline-sync.ts +75 -162
  307. package/src/orchestration/orchestrator-helpers.ts +1 -1
  308. package/src/orchestration/recall-entry.ts +32 -16
  309. package/src/orchestration/recall-internal.ts +2 -2
  310. package/src/orchestration/recall-search-pipeline.ts +3 -0
  311. package/src/outcome-boost-config.ts +16 -0
  312. package/src/recall-retrieval-failure.test.ts +456 -4
  313. package/src/rerank-outcome.test.ts +218 -0
  314. package/src/rerank-outcome.ts +219 -0
  315. package/src/support-passport/offline-sync-guard.ts +16 -2
  316. package/src/types.ts +3 -3
  317. package/dist/chunk-H56VY4BY.js.map +0 -1
  318. package/dist/chunk-K6T33R4Q.js.map +0 -1
  319. package/dist/chunk-MCTM4YPL.js.map +0 -1
  320. package/dist/chunk-OCFXVDBZ.js.map +0 -1
  321. package/dist/chunk-PWF4JXKD.js.map +0 -1
  322. package/dist/chunk-QB57WIS6.js.map +0 -1
  323. package/dist/chunk-QI2E6ISQ.js.map +0 -1
  324. package/dist/chunk-S2GE2K36.js.map +0 -1
  325. /package/dist/{capsule-crypto-YO5QJ6L3.js.map → access-recall-corpus-versions.js.map} +0 -0
  326. /package/dist/{auto-sync-U5N3CB5Y.js.map → auto-sync-PAWBFQWL.js.map} +0 -0
  327. /package/dist/{contradiction-scan-TAGMOUQ2.js.map → capsule-crypto-7FJQINUR.js.map} +0 -0
  328. /package/dist/{chunk-RDJ6C7NZ.js.map → chunk-2IWBHZ3H.js.map} +0 -0
  329. /package/dist/{chunk-UP75KL3L.js.map → chunk-2JRB3Z5N.js.map} +0 -0
  330. /package/dist/{chunk-BXLOS5AJ.js.map → chunk-2NLLXCJG.js.map} +0 -0
  331. /package/dist/{chunk-KN6CIN7I.js.map → chunk-32HO62I4.js.map} +0 -0
  332. /package/dist/{chunk-JLPNONPH.js.map → chunk-35A7GCHG.js.map} +0 -0
  333. /package/dist/{chunk-MXCAJKMA.js.map → chunk-37ZQYFX4.js.map} +0 -0
  334. /package/dist/{chunk-LW3HKRL7.js.map → chunk-3BTHXB7Z.js.map} +0 -0
  335. /package/dist/{chunk-C7V3KPKJ.js.map → chunk-47LTKAGL.js.map} +0 -0
  336. /package/dist/{chunk-3O5BB45T.js.map → chunk-4DXNOVNW.js.map} +0 -0
  337. /package/dist/{chunk-65I2LZEK.js.map → chunk-4G2YCKLT.js.map} +0 -0
  338. /package/dist/{chunk-OK52IY3W.js.map → chunk-4GEBLO7S.js.map} +0 -0
  339. /package/dist/{chunk-M6C7SOR6.js.map → chunk-4I6PEEFA.js.map} +0 -0
  340. /package/dist/{chunk-Z4TXB4K7.js.map → chunk-5BUCKFRE.js.map} +0 -0
  341. /package/dist/{chunk-BGI4NUAO.js.map → chunk-5S7SNRSJ.js.map} +0 -0
  342. /package/dist/{chunk-JVPWRNHA.js.map → chunk-5YR4UGF2.js.map} +0 -0
  343. /package/dist/{chunk-YJ7MW627.js.map → chunk-6BG364RN.js.map} +0 -0
  344. /package/dist/{chunk-D5BSQR63.js.map → chunk-76LNUSS5.js.map} +0 -0
  345. /package/dist/{chunk-7CRUDH7G.js.map → chunk-77HNHT6S.js.map} +0 -0
  346. /package/dist/{chunk-OWYHHW67.js.map → chunk-7XI2UJHL.js.map} +0 -0
  347. /package/dist/{chunk-BJVO4H5C.js.map → chunk-7Z2UKRNJ.js.map} +0 -0
  348. /package/dist/{chunk-2WLMWP2T.js.map → chunk-A3K2KKSG.js.map} +0 -0
  349. /package/dist/{chunk-AWG3TIAY.js.map → chunk-ACCOC6UM.js.map} +0 -0
  350. /package/dist/{chunk-3JDA3XF5.js.map → chunk-AEGNDL24.js.map} +0 -0
  351. /package/dist/{chunk-2NAD4YCI.js.map → chunk-AEUMONCD.js.map} +0 -0
  352. /package/dist/{chunk-C6U57KG4.js.map → chunk-AF5PW35O.js.map} +0 -0
  353. /package/dist/{chunk-IOSZHHJC.js.map → chunk-ANGZWYL2.js.map} +0 -0
  354. /package/dist/{chunk-6LYAEM54.js.map → chunk-AXHU56C3.js.map} +0 -0
  355. /package/dist/{chunk-GWM6T5EQ.js.map → chunk-BCGMG2RD.js.map} +0 -0
  356. /package/dist/{chunk-HXCJF4XU.js.map → chunk-BFIZXFUG.js.map} +0 -0
  357. /package/dist/{chunk-DBYAY6UW.js.map → chunk-BTOHGPHC.js.map} +0 -0
  358. /package/dist/{chunk-5X4MXNEU.js.map → chunk-C6HPNPNK.js.map} +0 -0
  359. /package/dist/{chunk-4MP7XR5J.js.map → chunk-CAKHZAXH.js.map} +0 -0
  360. /package/dist/{chunk-YSBL7VPO.js.map → chunk-CDWFWOSZ.js.map} +0 -0
  361. /package/dist/{chunk-QAW55ZHJ.js.map → chunk-CZ44FH45.js.map} +0 -0
  362. /package/dist/{chunk-T3FMRLWQ.js.map → chunk-D5HQ3VEX.js.map} +0 -0
  363. /package/dist/{chunk-S7LWX2PQ.js.map → chunk-DPG5HQLE.js.map} +0 -0
  364. /package/dist/{chunk-C7ZDKWPS.js.map → chunk-DVSAMW5T.js.map} +0 -0
  365. /package/dist/{chunk-WBYQA3VN.js.map → chunk-E5H4TM4Y.js.map} +0 -0
  366. /package/dist/{chunk-4RL3JOB3.js.map → chunk-EEDI3OXB.js.map} +0 -0
  367. /package/dist/{chunk-3TB2XQ3C.js.map → chunk-EUL3S3LE.js.map} +0 -0
  368. /package/dist/{chunk-Q4AUIFUA.js.map → chunk-F23U5YE7.js.map} +0 -0
  369. /package/dist/{chunk-ZZZ4I455.js.map → chunk-GDVORIFM.js.map} +0 -0
  370. /package/dist/{chunk-SWBC3UER.js.map → chunk-HCPUVB7S.js.map} +0 -0
  371. /package/dist/{chunk-R3X2T2LP.js.map → chunk-HFOY2SBG.js.map} +0 -0
  372. /package/dist/{chunk-LU7E2MXE.js.map → chunk-HQCUUVG2.js.map} +0 -0
  373. /package/dist/{chunk-FJLQXMTU.js.map → chunk-I6B3S62A.js.map} +0 -0
  374. /package/dist/{chunk-RBITPCMK.js.map → chunk-IDSSDL4W.js.map} +0 -0
  375. /package/dist/{chunk-B3OFQP5Y.js.map → chunk-IY47KPML.js.map} +0 -0
  376. /package/dist/{chunk-AXC4WSF3.js.map → chunk-JDOBIFBK.js.map} +0 -0
  377. /package/dist/{chunk-P2ODTYOF.js.map → chunk-JGXHQV5N.js.map} +0 -0
  378. /package/dist/{chunk-7LNHRQKR.js.map → chunk-JLIGUFPF.js.map} +0 -0
  379. /package/dist/{chunk-EDIH6X2P.js.map → chunk-JZ66PN72.js.map} +0 -0
  380. /package/dist/{chunk-BLVR4WYU.js.map → chunk-KICEAGKM.js.map} +0 -0
  381. /package/dist/{chunk-VDX2J7OX.js.map → chunk-KQAFEZQX.js.map} +0 -0
  382. /package/dist/{chunk-PEBHPCX2.js.map → chunk-KTG23JDX.js.map} +0 -0
  383. /package/dist/{chunk-BOZJD5PK.js.map → chunk-KYOZ5E6V.js.map} +0 -0
  384. /package/dist/{chunk-2DLWLNO4.js.map → chunk-L3TZXELN.js.map} +0 -0
  385. /package/dist/{chunk-VALKBYBN.js.map → chunk-M3N2TUZ7.js.map} +0 -0
  386. /package/dist/{chunk-76M5OK7V.js.map → chunk-M7T2NKET.js.map} +0 -0
  387. /package/dist/{chunk-Z5LP6ILP.js.map → chunk-MZAH3CBT.js.map} +0 -0
  388. /package/dist/{chunk-QI7K7BZ5.js.map → chunk-NJW2ZG64.js.map} +0 -0
  389. /package/dist/{chunk-CZJA2EQE.js.map → chunk-NSKXRTVZ.js.map} +0 -0
  390. /package/dist/{chunk-4O4XCBOS.js.map → chunk-NUSQ3YEL.js.map} +0 -0
  391. /package/dist/{chunk-4OQET73E.js.map → chunk-O57FCN42.js.map} +0 -0
  392. /package/dist/{chunk-WKY7N3L7.js.map → chunk-OEBUAC3O.js.map} +0 -0
  393. /package/dist/{chunk-Y23L4YJV.js.map → chunk-OEIA4IHU.js.map} +0 -0
  394. /package/dist/{chunk-66DKTOBY.js.map → chunk-OGZC2WUX.js.map} +0 -0
  395. /package/dist/{chunk-3SGTV7RD.js.map → chunk-P62DSJUK.js.map} +0 -0
  396. /package/dist/{chunk-FKD656D2.js.map → chunk-PH2V7EXZ.js.map} +0 -0
  397. /package/dist/{chunk-KKNZ7PUZ.js.map → chunk-QAIKLICT.js.map} +0 -0
  398. /package/dist/{chunk-SSUDD72S.js.map → chunk-QPWUG2S3.js.map} +0 -0
  399. /package/dist/{chunk-GZDTVYK2.js.map → chunk-R36IBI2M.js.map} +0 -0
  400. /package/dist/{chunk-W3XXFPRI.js.map → chunk-R5B3OWI4.js.map} +0 -0
  401. /package/dist/{chunk-VL4X7ZHC.js.map → chunk-RFIJRZ4K.js.map} +0 -0
  402. /package/dist/{chunk-AEHVZY3X.js.map → chunk-RPVHRZ5C.js.map} +0 -0
  403. /package/dist/{chunk-X5SHE2O3.js.map → chunk-RVBLCU5C.js.map} +0 -0
  404. /package/dist/{chunk-BUQKSQXL.js.map → chunk-S533KGX6.js.map} +0 -0
  405. /package/dist/{chunk-STEOT4DI.js.map → chunk-SCPHU3RW.js.map} +0 -0
  406. /package/dist/{chunk-LV5H6FTN.js.map → chunk-SFSD5Q6O.js.map} +0 -0
  407. /package/dist/{chunk-AE5U5NMS.js.map → chunk-SMLKHXPF.js.map} +0 -0
  408. /package/dist/{chunk-AEU4EQGV.js.map → chunk-T7R5HI6A.js.map} +0 -0
  409. /package/dist/{chunk-H5BJWPUI.js.map → chunk-TVQZAQPE.js.map} +0 -0
  410. /package/dist/{chunk-XOV7NRY5.js.map → chunk-U46P4UAR.js.map} +0 -0
  411. /package/dist/{chunk-DZ42MDZE.js.map → chunk-UCJINCZT.js.map} +0 -0
  412. /package/dist/{chunk-5E6RYRYW.js.map → chunk-UG5V3Z3R.js.map} +0 -0
  413. /package/dist/{chunk-IW3RMBPB.js.map → chunk-VAOC6GHN.js.map} +0 -0
  414. /package/dist/{chunk-6UQFJULG.js.map → chunk-VBNA2JEN.js.map} +0 -0
  415. /package/dist/{chunk-HLB7GKGG.js.map → chunk-VOZNBQNL.js.map} +0 -0
  416. /package/dist/{chunk-NYKIUQL6.js.map → chunk-WHIGRW7T.js.map} +0 -0
  417. /package/dist/{chunk-AZSGSRIM.js.map → chunk-WHTMVTU4.js.map} +0 -0
  418. /package/dist/{chunk-AERXJCOG.js.map → chunk-WL7N5VGG.js.map} +0 -0
  419. /package/dist/{chunk-TFA6HPOA.js.map → chunk-WQUGCOKF.js.map} +0 -0
  420. /package/dist/{chunk-A4VSOUCB.js.map → chunk-WTZQM74L.js.map} +0 -0
  421. /package/dist/{chunk-DQEMWVMT.js.map → chunk-X7Y7WX73.js.map} +0 -0
  422. /package/dist/{chunk-T2YX56QI.js.map → chunk-XWSUK5GL.js.map} +0 -0
  423. /package/dist/{chunk-ACX55QDO.js.map → chunk-XYOT5GQU.js.map} +0 -0
  424. /package/dist/{chunk-Z6EZCN6Z.js.map → chunk-Y7427SL7.js.map} +0 -0
  425. /package/dist/{chunk-4KN2JLQV.js.map → chunk-YHZWVDP7.js.map} +0 -0
  426. /package/dist/{chunk-5MNUBT7T.js.map → chunk-ZFTODDTX.js.map} +0 -0
  427. /package/dist/{chunk-VVX5PZFS.js.map → chunk-ZHXSOMYH.js.map} +0 -0
  428. /package/dist/{chunk-CRXRZA3G.js.map → chunk-ZQTYWSO3.js.map} +0 -0
  429. /package/dist/{resolution-K4A3VPKZ.js.map → contradiction-scan-GGRTVB7C.js.map} +0 -0
  430. /package/dist/{first-start-migration-7OATHJKB.js.map → first-start-migration-OM3PHMZO.js.map} +0 -0
  431. /package/dist/{tier-stats-VF6DS52E.js.map → tier-stats-M2FMMD2N.js.map} +0 -0
@@ -4,26 +4,26 @@ import {
4
4
  renderWhoKnows,
5
5
  renderWhoKnowsJson,
6
6
  renderWhoKnowsText
7
- } from "./chunk-PEBHPCX2.js";
8
- import "./chunk-6UQFJULG.js";
9
- import "./chunk-STEOT4DI.js";
7
+ } from "./chunk-KTG23JDX.js";
8
+ import "./chunk-VBNA2JEN.js";
9
+ import "./chunk-SCPHU3RW.js";
10
10
  import "./chunk-UHVXE24Y.js";
11
11
  import "./chunk-46WM6JX2.js";
12
12
  import "./chunk-V4JZCTMK.js";
13
- import "./chunk-LV5H6FTN.js";
14
- import "./chunk-4OQET73E.js";
15
- import "./chunk-T2YX56QI.js";
16
- import "./chunk-CYEPCZN5.js";
17
- import "./chunk-T3FMRLWQ.js";
13
+ import "./chunk-SFSD5Q6O.js";
14
+ import "./chunk-O57FCN42.js";
18
15
  import "./chunk-7VO6E5UD.js";
19
- import "./chunk-Z4TXB4K7.js";
20
- import "./chunk-S7LWX2PQ.js";
21
- import "./chunk-4O6WRBGE.js";
16
+ import "./chunk-5BUCKFRE.js";
17
+ import "./chunk-DPG5HQLE.js";
18
+ import "./chunk-XWSUK5GL.js";
19
+ import "./chunk-CYEPCZN5.js";
20
+ import "./chunk-D5HQ3VEX.js";
22
21
  import "./chunk-GUMZC2BO.js";
23
- import "./chunk-TFA6HPOA.js";
24
- import "./chunk-F4TWWUMP.js";
22
+ import "./chunk-4O6WRBGE.js";
23
+ import "./chunk-WQUGCOKF.js";
25
24
  import "./chunk-72A4L5JJ.js";
26
25
  import "./chunk-A7Q43EUZ.js";
26
+ import "./chunk-F4TWWUMP.js";
27
27
  import "./chunk-S2V7RUCL.js";
28
28
  import "./chunk-MRPOZBJC.js";
29
29
  import "./chunk-S2HLHAZ4.js";
@@ -34,10 +34,10 @@ import "./chunk-2DT7PIDZ.js";
34
34
  import "./chunk-AAD2ZS6P.js";
35
35
  import "./chunk-6O2VUWV6.js";
36
36
  import "./chunk-ZIKENA2C.js";
37
- import "./chunk-3ONXXHQO.js";
38
- import "./chunk-YXZG5TVN.js";
39
37
  import "./chunk-345MEMRU.js";
40
38
  import "./chunk-SCU65EZI.js";
39
+ import "./chunk-3ONXXHQO.js";
40
+ import "./chunk-YXZG5TVN.js";
41
41
  import "./chunk-5GINB5LC.js";
42
42
  import "./chunk-3WU7XOFN.js";
43
43
  import "./chunk-G7D6GZ5J.js";
@@ -47,10 +47,10 @@ import "./chunk-RBOJCG4T.js";
47
47
  import "./chunk-R7QY5ZVB.js";
48
48
  import "./chunk-5WITETWU.js";
49
49
  import "./chunk-6CIAGZ6X.js";
50
- import "./chunk-B3OFQP5Y.js";
50
+ import "./chunk-IY47KPML.js";
51
+ import "./chunk-IUM3VSHI.js";
51
52
  import "./chunk-G26YNEOC.js";
52
53
  import "./chunk-ZLQ37WJX.js";
53
- import "./chunk-IUM3VSHI.js";
54
54
  import "./chunk-23G5P7TA.js";
55
55
  import "./chunk-C64XATK7.js";
56
56
  import "./chunk-42JKGUFJ.js";
@@ -83,7 +83,7 @@ import "./chunk-N4PYB235.js";
83
83
  import "./chunk-AW4QUFQF.js";
84
84
  import "./chunk-5FVVY2EB.js";
85
85
  import "./chunk-FFAZ2XFU.js";
86
- import "./chunk-PWF4JXKD.js";
86
+ import "./chunk-RKDSELA3.js";
87
87
  import "./chunk-YBA52OKG.js";
88
88
  import "./chunk-PWPIERBM.js";
89
89
  import "./chunk-JDSVLVCG.js";
@@ -91,7 +91,7 @@ import "./chunk-5GKPFL3S.js";
91
91
  import "./chunk-JAKIDQB2.js";
92
92
  import "./chunk-P7FMDTKL.js";
93
93
  import "./chunk-VUFL7X3H.js";
94
- import "./chunk-BMXEBWBT.js";
94
+ import "./chunk-2EMROIXS.js";
95
95
  import "./chunk-ZEFVK7XC.js";
96
96
  import "./chunk-6KH5NLQS.js";
97
97
  import "./chunk-P2QRMMVQ.js";
package/dist/who-knows.js CHANGED
@@ -9,25 +9,25 @@ import {
9
9
  loadWhoKnowsEntities,
10
10
  tokenizeTopic,
11
11
  validateWhoKnowsInput
12
- } from "./chunk-6UQFJULG.js";
13
- import "./chunk-STEOT4DI.js";
12
+ } from "./chunk-VBNA2JEN.js";
13
+ import "./chunk-SCPHU3RW.js";
14
14
  import "./chunk-UHVXE24Y.js";
15
15
  import "./chunk-46WM6JX2.js";
16
16
  import "./chunk-V4JZCTMK.js";
17
- import "./chunk-LV5H6FTN.js";
18
- import "./chunk-4OQET73E.js";
19
- import "./chunk-T2YX56QI.js";
20
- import "./chunk-CYEPCZN5.js";
21
- import "./chunk-T3FMRLWQ.js";
17
+ import "./chunk-SFSD5Q6O.js";
18
+ import "./chunk-O57FCN42.js";
22
19
  import "./chunk-7VO6E5UD.js";
23
- import "./chunk-Z4TXB4K7.js";
24
- import "./chunk-S7LWX2PQ.js";
25
- import "./chunk-4O6WRBGE.js";
20
+ import "./chunk-5BUCKFRE.js";
21
+ import "./chunk-DPG5HQLE.js";
22
+ import "./chunk-XWSUK5GL.js";
23
+ import "./chunk-CYEPCZN5.js";
24
+ import "./chunk-D5HQ3VEX.js";
26
25
  import "./chunk-GUMZC2BO.js";
27
- import "./chunk-TFA6HPOA.js";
28
- import "./chunk-F4TWWUMP.js";
26
+ import "./chunk-4O6WRBGE.js";
27
+ import "./chunk-WQUGCOKF.js";
29
28
  import "./chunk-72A4L5JJ.js";
30
29
  import "./chunk-A7Q43EUZ.js";
30
+ import "./chunk-F4TWWUMP.js";
31
31
  import "./chunk-S2V7RUCL.js";
32
32
  import "./chunk-MRPOZBJC.js";
33
33
  import "./chunk-S2HLHAZ4.js";
@@ -38,10 +38,10 @@ import "./chunk-2DT7PIDZ.js";
38
38
  import "./chunk-AAD2ZS6P.js";
39
39
  import "./chunk-6O2VUWV6.js";
40
40
  import "./chunk-ZIKENA2C.js";
41
- import "./chunk-3ONXXHQO.js";
42
- import "./chunk-YXZG5TVN.js";
43
41
  import "./chunk-345MEMRU.js";
44
42
  import "./chunk-SCU65EZI.js";
43
+ import "./chunk-3ONXXHQO.js";
44
+ import "./chunk-YXZG5TVN.js";
45
45
  import "./chunk-5GINB5LC.js";
46
46
  import "./chunk-3WU7XOFN.js";
47
47
  import "./chunk-G7D6GZ5J.js";
@@ -51,10 +51,10 @@ import "./chunk-RBOJCG4T.js";
51
51
  import "./chunk-R7QY5ZVB.js";
52
52
  import "./chunk-5WITETWU.js";
53
53
  import "./chunk-6CIAGZ6X.js";
54
- import "./chunk-B3OFQP5Y.js";
54
+ import "./chunk-IY47KPML.js";
55
+ import "./chunk-IUM3VSHI.js";
55
56
  import "./chunk-G26YNEOC.js";
56
57
  import "./chunk-ZLQ37WJX.js";
57
- import "./chunk-IUM3VSHI.js";
58
58
  import "./chunk-23G5P7TA.js";
59
59
  import "./chunk-C64XATK7.js";
60
60
  import "./chunk-42JKGUFJ.js";
@@ -87,7 +87,7 @@ import "./chunk-N4PYB235.js";
87
87
  import "./chunk-AW4QUFQF.js";
88
88
  import "./chunk-5FVVY2EB.js";
89
89
  import "./chunk-FFAZ2XFU.js";
90
- import "./chunk-PWF4JXKD.js";
90
+ import "./chunk-RKDSELA3.js";
91
91
  import "./chunk-YBA52OKG.js";
92
92
  import "./chunk-PWPIERBM.js";
93
93
  import "./chunk-JDSVLVCG.js";
@@ -95,7 +95,7 @@ import "./chunk-5GKPFL3S.js";
95
95
  import "./chunk-JAKIDQB2.js";
96
96
  import "./chunk-P7FMDTKL.js";
97
97
  import "./chunk-VUFL7X3H.js";
98
- import "./chunk-BMXEBWBT.js";
98
+ import "./chunk-2EMROIXS.js";
99
99
  import "./chunk-ZEFVK7XC.js";
100
100
  import "./chunk-6KH5NLQS.js";
101
101
  import "./chunk-P2QRMMVQ.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remnic/core",
3
- "version": "9.69.88",
3
+ "version": "9.69.90",
4
4
  "description": "Framework-agnostic Remnic memory engine — orchestrator, storage, extraction, search, trust zones",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -36,6 +36,16 @@
36
36
  "remnic-source": "./src/abort-error.ts",
37
37
  "import": "./dist/abort-error.js"
38
38
  },
39
+ "./rerank-outcome": {
40
+ "types": "./dist/rerank-outcome.d.ts",
41
+ "remnic-source": "./src/rerank-outcome.ts",
42
+ "import": "./dist/rerank-outcome.js"
43
+ },
44
+ "./rerank-outcome.js": {
45
+ "types": "./dist/rerank-outcome.d.ts",
46
+ "remnic-source": "./src/rerank-outcome.ts",
47
+ "import": "./dist/rerank-outcome.js"
48
+ },
39
49
  "./salvage-envelope": {
40
50
  "types": "./dist/salvage-envelope.d.ts",
41
51
  "remnic-source": "./src/salvage-envelope.ts",
@@ -3287,7 +3297,7 @@
3287
3297
  "meilisearch": "^0.46.0",
3288
3298
  "node-gyp": "^12.3.0",
3289
3299
  "openai": "^6.0.0",
3290
- "undici": "^6.28.0",
3300
+ "undici": "^6.28.1",
3291
3301
  "zod": "^3.25.28",
3292
3302
  "zod-to-json-schema": "^3.25.2"
3293
3303
  },
@@ -3317,7 +3327,7 @@
3317
3327
  "core"
3318
3328
  ],
3319
3329
  "peerDependencies": {
3320
- "@remnic/coding-graph": "^9.69.88"
3330
+ "@remnic/coding-graph": "^9.69.90"
3321
3331
  },
3322
3332
  "peerDependenciesMeta": {
3323
3333
  "@remnic/coding-graph": {
@@ -14,6 +14,7 @@ const T_ARRAY = { type: "array" } as const;
14
14
  const T_OBJECT = { type: "object" } as const;
15
15
  const T_NULLABLE_OBJECT = { type: ["object", "null"] } as const;
16
16
  const T_NULLABLE_STRING = { type: ["string", "null"] } as const;
17
+ const T_NULLABLE_NUMBER = { type: ["number", "null"] } as const;
17
18
 
18
19
  /** Build a JSON Schema object type with the given properties. */
19
20
  function objectSchema(
@@ -106,6 +107,7 @@ const TOOL_OUTPUT_SCHEMAS: Readonly<Record<string, Record<string, unknown>>> = {
106
107
  reason: T_STRING,
107
108
  detail: T_STRING,
108
109
  }),
110
+ storageCorpusVersionsAtRecallStart: { type: "array", items: objectSchema({ namespace: T_STRING, version: T_NULLABLE_NUMBER }) },
109
111
  }),
110
112
  recall_explain: objectSchema({
111
113
  found: T_BOOLEAN,
@@ -0,0 +1,59 @@
1
+ import type { RecallInvocationOptions } from "./orchestration/orchestrator-helpers.js";
2
+
3
+ export type RecallCorpusVersion = { namespace: string; version: number | null };
4
+
5
+ const DEFAULT_CAPTURE_TIMEOUT_MS = 250;
6
+
7
+ export function mergeRecallCorpusVersions(
8
+ current: RecallCorpusVersion[],
9
+ captured: RecallCorpusVersion[],
10
+ ): RecallCorpusVersion[] {
11
+ const versions = new Map(current.map((entry) => [entry.namespace, entry]));
12
+ for (const entry of captured) {
13
+ if (!versions.has(entry.namespace)) versions.set(entry.namespace, entry);
14
+ }
15
+ return [...versions.values()];
16
+ }
17
+
18
+ export function createRecallCorpusVersionCapture(
19
+ orchestrator: { getStorage(namespace: string): Promise<{ getMemoryCorpusVersion(): number }> },
20
+ signal: AbortSignal | undefined,
21
+ setVersions: (versions: RecallCorpusVersion[]) => void,
22
+ includeNoRecall = false,
23
+ timeoutMs = DEFAULT_CAPTURE_TIMEOUT_MS,
24
+ ): NonNullable<RecallInvocationOptions["onRecallPlanResolved"]> {
25
+ return async (mode, namespaces) => {
26
+ if ((mode === "no_recall" && !includeNoRecall) || signal?.aborted) return;
27
+ const captured = await Promise.all(namespaces.map(async (namespace) => {
28
+ let timer: ReturnType<typeof setTimeout> | undefined;
29
+ let abortCapture: (() => void) | undefined;
30
+ try {
31
+ const timeout = new Promise<null>((resolve) => {
32
+ timer = setTimeout(() => resolve(null), timeoutMs);
33
+ });
34
+ const aborted = signal
35
+ ? new Promise<null>((resolve) => {
36
+ if (signal.aborted) {
37
+ resolve(null);
38
+ } else {
39
+ abortCapture = () => resolve(null);
40
+ signal.addEventListener("abort", abortCapture, { once: true });
41
+ }
42
+ })
43
+ : undefined;
44
+ const version = await Promise.race([
45
+ orchestrator.getStorage(namespace).then((storage) => storage.getMemoryCorpusVersion()),
46
+ timeout,
47
+ ...(aborted ? [aborted] : []),
48
+ ]);
49
+ return { namespace, version };
50
+ } catch {
51
+ return { namespace, version: null };
52
+ } finally {
53
+ if (timer !== undefined) clearTimeout(timer);
54
+ if (abortCapture) signal?.removeEventListener("abort", abortCapture);
55
+ }
56
+ }));
57
+ if (!signal?.aborted) setVersions(captured);
58
+ };
59
+ }
@@ -36,6 +36,7 @@ export async function assembleRecallResponse(
36
36
  request: EngramAccessRecallRequest;
37
37
  context: string;
38
38
  contextComposition?: RecallContextComposition;
39
+ storageCorpusVersionsAtRecallStart: Array<{ namespace: string; version: number | null }>;
39
40
  query: string;
40
41
  mode: RecallPlanMode | undefined;
41
42
  namespace: string;
@@ -55,6 +56,7 @@ export async function assembleRecallResponse(
55
56
  request,
56
57
  context,
57
58
  contextComposition,
59
+ storageCorpusVersionsAtRecallStart,
58
60
  query,
59
61
  mode,
60
62
  namespace,
@@ -321,6 +323,7 @@ export async function assembleRecallResponse(
321
323
  namespace: effectiveNamespace,
322
324
  context: effectiveContext,
323
325
  contextComposition: effectiveComposition,
326
+ storageCorpusVersionsAtRecallStart,
324
327
  ...(retrievalFailure ? { retrievalFailure } : {}),
325
328
  count: filterTags && filterTags.length > 0
326
329
  ? results.length
@@ -21,9 +21,11 @@ import { type BudgetDecision, type BudgetReservation, CrossNamespaceBudget, toBu
21
21
  import { lcmEvidenceIdentity } from "./lcm/evidence-identity.js";
22
22
  import { normalizeProjectionTags } from "./memory-projection-format.js";
23
23
  import { namespaceIdentityFromToken } from "./namespaces/identity.js";
24
- import { canReadNamespace, defaultNamespaceForPrincipal, recallNamespacesForPrincipal, resolvePrincipal } from "./namespaces/principal.js";
25
- import { expandScopeProfileReadNamespaces, resolveScopeProfilePlan } from "./namespaces/scope-profiles.js";
24
+ import { canReadNamespace, defaultNamespaceForPrincipal, resolvePrincipal } from "./namespaces/principal.js";
25
+ import { resolveScopeProfilePlan } from "./namespaces/scope-profiles.js";
26
+ import { resolveScopePlan } from "./scopes/scope-plan.js";
26
27
  import type { Orchestrator, RecallInvocationOptions } from "./orchestrator.js";
28
+ import { createRecallCorpusVersionCapture, mergeRecallCorpusVersions } from "./access-recall-corpus-versions.js";
27
29
  import { decideDisclosureEscalation } from "./recall-disclosure-escalation.js";
28
30
  import { assembleRecallResponse } from "./access-recall-response.js";
29
31
  import { coerceIncludedMemories, type LastRecallSnapshot } from "./recall-state.js";
@@ -57,6 +59,7 @@ export interface AccessRecallSurfaceDeps {
57
59
  query: string;
58
60
  sessionKey?: string;
59
61
  snapshot: RecallXraySnapshot;
62
+ storageCorpusVersionsAtRecallStart: Array<{ namespace: string; version: number | null }>;
60
63
  disclosure: RecallDisclosure;
61
64
  startedAt: number;
62
65
  requestedMode?: RecallPlanMode | "auto";
@@ -187,6 +190,7 @@ export class AccessRecallSurface {
187
190
  query: string;
188
191
  sessionKey?: string;
189
192
  snapshot: RecallXraySnapshot;
193
+ storageCorpusVersionsAtRecallStart: Array<{ namespace: string; version: number | null }>;
190
194
  disclosure: RecallDisclosure;
191
195
  startedAt: number;
192
196
  requestedMode?: RecallPlanMode | "auto";
@@ -290,6 +294,7 @@ export class AccessRecallSurface {
290
294
  sourcesUsed,
291
295
  disclosure: options.disclosure,
292
296
  budgetsApplied: snapshotForSerialization.budgetsApplied,
297
+ storageCorpusVersionsAtRecallStart: options.storageCorpusVersionsAtRecallStart,
293
298
  latencyMs: snapshotForSerialization.latencyMs,
294
299
  };
295
300
  }
@@ -732,29 +737,17 @@ export class AccessRecallSurface {
732
737
  codingContext: profileCodingContext,
733
738
  codingOverlay: profileCodingOverlay,
734
739
  });
740
+ const recallScopePlan = resolveScopePlan({
741
+ config: this.deps.orchestrator.config,
742
+ sessionKey: request.sessionKey,
743
+ namespace: namespaceOverride,
744
+ principalOverride: authenticatedPrincipal,
745
+ codingContext: profileCodingContext,
746
+ namespacesEnabled: resolveNamespaceCapabilities(this.deps.orchestrator.config).namespaces,
747
+ });
735
748
  // Skip budget checks for modes that never perform a cross-namespace read.
736
749
  const modeSkipsBudget = mode === "no_recall";
737
- // Derive the full set of namespaces the orchestrator will actually search.
738
- // When no explicit override is provided, `recallNamespacesForPrincipal()` may
739
- // expand to shared / policy-default namespaces. Budget must be checked
740
- // against every cross-namespace entry in the effective set so that omitting
741
- // `namespace` cannot bypass the limiter (Cursor/Codex review feedback).
742
- //
743
- const legacyRecallNamespaces = Array.isArray(this.deps.orchestrator.config.defaultRecallNamespaces)
744
- ? recallNamespacesForPrincipal(principal, this.deps.orchestrator.config)
745
- : [];
746
- const effectiveNamespaces = namespaceOverride
747
- ? [namespaceOverride]
748
- : profilePlan
749
- ? expandScopeProfileReadNamespaces({
750
- profilePlan,
751
- principalSelfNamespace: profilePlan.baseNamespace,
752
- config: this.deps.orchestrator.config,
753
- principal,
754
- codingOverlay: profileCodingOverlay,
755
- legacyRecallNamespaces,
756
- })
757
- : legacyRecallNamespaces;
750
+ const effectiveNamespaces = recallScopePlan.readNamespaces;
758
751
  const budgetPrincipalNamespace = profilePlan?.baseNamespace ?? principalNamespace;
759
752
  let budgetDecision: BudgetDecision;
760
753
  let willReserveBudget = false;
@@ -860,6 +853,7 @@ export class AccessRecallSurface {
860
853
  onContextComposition: (composition) => {
861
854
  contextComposition = composition;
862
855
  },
856
+ onRecallPlanResolved: createRecallCorpusVersionCapture(this.deps.orchestrator, request.abortSignal, (versions) => { storageCorpusVersionsAtRecallStart = mergeRecallCorpusVersions(storageCorpusVersionsAtRecallStart, versions); }, true),
863
857
  ...(authenticatedPrincipal ? { principalOverride: authenticatedPrincipal } : {}),
864
858
  ...(request.sourceConnector ? { sourceConnector: request.sourceConnector } : {}),
865
859
  ...(request.stateView !== undefined ? { stateView: request.stateView } : {}),
@@ -897,6 +891,7 @@ export class AccessRecallSurface {
897
891
  // operation — orchestrator.recall AND serialization / debug / response
898
892
  // construction — so ANY failure after the reserve releases the exact
899
893
  // budget entry (by token, review #4) instead of leaking it.
894
+ let storageCorpusVersionsAtRecallStart: Array<{ namespace: string; version: number | null }> = [];
900
895
  try {
901
896
  const context = await this.deps.orchestrator.recall(
902
897
  query,
@@ -907,6 +902,7 @@ export class AccessRecallSurface {
907
902
  request,
908
903
  context,
909
904
  contextComposition,
905
+ storageCorpusVersionsAtRecallStart,
910
906
  query,
911
907
  mode,
912
908
  namespace,
@@ -1063,6 +1059,7 @@ export class AccessRecallSurface {
1063
1059
  let recallStartedAt = Date.now();
1064
1060
 
1065
1061
  const recallSessionKey = request.sessionKey?.trim() || undefined;
1062
+ let storageCorpusVersionsAtRecallStart: Array<{ namespace: string; version: number | null }> = [];
1066
1063
  let xrayResponse: {
1067
1064
  snapshotFound: boolean;
1068
1065
  snapshot?: RecallXraySnapshot;
@@ -1084,6 +1081,7 @@ export class AccessRecallSurface {
1084
1081
  ? { budgetCharsOverride: budgetOverride }
1085
1082
  : {}),
1086
1083
  ...(mode !== undefined ? { mode } : {}),
1084
+ onRecallPlanResolved: createRecallCorpusVersionCapture(this.deps.orchestrator, request.abortSignal, (versions) => { storageCorpusVersionsAtRecallStart = mergeRecallCorpusVersions(storageCorpusVersionsAtRecallStart, versions); }, true),
1087
1085
  // When the caller supplies an authenticated principal, forward
1088
1086
  // it via the dedicated override channel so orchestrator-side
1089
1087
  // ACL decisions use the SAME principal the access-surface
@@ -1395,6 +1393,7 @@ export class AccessRecallSurface {
1395
1393
  startedAt: recallStartedAt,
1396
1394
  requestedMode: request.mode,
1397
1395
  normalizedMode: mode,
1396
+ storageCorpusVersionsAtRecallStart,
1398
1397
  ...(xrayRawExcerptNamespace
1399
1398
  ? { rawExcerptNamespace: xrayRawExcerptNamespace }
1400
1399
  : {}),
@@ -124,7 +124,7 @@ function makeRawExcerptProbe(options: {
124
124
  resolveSelfNamespace: (sk?: string) =>
125
125
  Orchestrator.prototype.resolveSelfNamespace.call(orch, sk),
126
126
  async getStorage() {
127
- return storage;
127
+ return { ...storage, getMemoryCorpusVersion: () => 0 };
128
128
  },
129
129
  lastRecall: new Map<string, LastRecallSnapshot>([
130
130
  [options.sessionKey, snapshot],
@@ -446,6 +446,8 @@ export interface EngramAccessRecallResponse {
446
446
  /** Request-local split used by adapters that must re-render a tighter prompt budget. */
447
447
  contextComposition?: RecallContextComposition;
448
448
  retrievalFailure?: { reason: "backend_unavailable"; detail: string };
449
+ /** Storage corpus sentinel values read immediately before retrieval; they do not attest to QMD index application. */
450
+ storageCorpusVersionsAtRecallStart?: Array<{ namespace: string; version: number | null }>;
449
451
  count: number;
450
452
  memoryIds: string[];
451
453
  results: EngramAccessMemorySummary[];
@@ -2034,6 +2036,7 @@ export class EngramAccessService extends SupportPassportAccessServiceBase {
2034
2036
  private async buildRecallResponseFromXraySnapshot(options: {
2035
2037
  query: string;
2036
2038
  sessionKey?: string;
2039
+ storageCorpusVersionsAtRecallStart: Array<{ namespace: string; version: number | null }>;
2037
2040
  snapshot: RecallXraySnapshot;
2038
2041
  disclosure: RecallDisclosure;
2039
2042
  startedAt: number;
@@ -1184,6 +1184,7 @@ const RECALL_ENH_FIELD_TO_FLAG: Record<keyof RecallEnhancementCapabilitySet, str
1184
1184
  responseGuidanceRecall: "responseGuidanceRecallEnabled",
1185
1185
  eventOrderRecall: "eventOrderRecallEnabled",
1186
1186
  reinforcementRecallBoost: "reinforcementRecallBoostEnabled",
1187
+ outcomeBoost: "outcomeBoostEnabled",
1187
1188
  recallPlannerTelemetry: "recallPlannerTelemetryEnabled",
1188
1189
  peerProfileRecall: "peerProfileRecallEnabled",
1189
1190
  graphAssistShadowEval: "graphAssistShadowEvalEnabled",
@@ -1031,14 +1031,9 @@ export function resolveRecallAuxiliaryCapabilities(config: RecallAuxiliaryConfig
1031
1031
  }
1032
1032
 
1033
1033
  // ---------------------------------------------------------------------------
1034
- // RecallEnhancement capability set (issue #1523 batch 9).
1035
- //
1036
- // These 24 flags gate recall enrichment, memory reconstruction, entity
1037
- // relationships, causal trajectory recall, CMC retrieval, and related
1038
- // enhancement paths. Read sites span orchestrator, access-service, graph-recall,
1039
- // and CLI research-status commands. All flags are non-optional booleans on
1040
- // PluginConfig (defaults resolved at the parse boundary), so the projection
1041
- // is a pure pass-through.
1034
+ // RecallEnhancement capability set (issue #1523 batch 9, outcome prior #1958).
1035
+ // Gates recall enrichment and related paths. Flags are booleans on PluginConfig
1036
+ // (defaults resolved at parse), so the projection is a pure pass-through.
1042
1037
  // ---------------------------------------------------------------------------
1043
1038
 
1044
1039
  /**
@@ -1051,6 +1046,7 @@ export interface RecallEnhancementCapabilitySet {
1051
1046
  readonly responseGuidanceRecall: boolean;
1052
1047
  readonly eventOrderRecall: boolean;
1053
1048
  readonly reinforcementRecallBoost: boolean;
1049
+ readonly outcomeBoost: boolean;
1054
1050
  readonly recallPlannerTelemetry: boolean;
1055
1051
  readonly peerProfileRecall: boolean;
1056
1052
  readonly graphAssistShadowEval: boolean;
@@ -1081,6 +1077,7 @@ export type RecallEnhancementConfigProjection = Pick<
1081
1077
  | "responseGuidanceRecallEnabled"
1082
1078
  | "eventOrderRecallEnabled"
1083
1079
  | "reinforcementRecallBoostEnabled"
1080
+ | "outcomeBoostEnabled"
1084
1081
  | "recallPlannerTelemetryEnabled"
1085
1082
  | "peerProfileRecallEnabled"
1086
1083
  | "graphAssistShadowEvalEnabled"
@@ -1111,6 +1108,7 @@ export function resolveRecallEnhancementCapabilities(config: RecallEnhancementCo
1111
1108
  responseGuidanceRecall: config.responseGuidanceRecallEnabled,
1112
1109
  eventOrderRecall: config.eventOrderRecallEnabled,
1113
1110
  reinforcementRecallBoost: config.reinforcementRecallBoostEnabled,
1111
+ outcomeBoost: config.outcomeBoostEnabled,
1114
1112
  recallPlannerTelemetry: config.recallPlannerTelemetryEnabled,
1115
1113
  peerProfileRecall: config.peerProfileRecallEnabled,
1116
1114
  graphAssistShadowEval: config.graphAssistShadowEvalEnabled === true,
package/src/config.ts CHANGED
@@ -44,6 +44,7 @@ import {
44
44
  parseStandingBlockMaxChars,
45
45
  } from "./standing-memory-block.js";
46
46
  import { parseDirectorySidecarsEnabled } from "./directory-sidecars.js";
47
+ import { parseOutcomeBoostWeight } from "./rerank-outcome.js";
47
48
  import { parseRecognitionIndexMaxEntries, parseRecallRecognitionTier } from "./recall-recognition-tier.js";
48
49
  import { parseRecallConcurrencyConfig } from "./recall-concurrency-config.js";
49
50
  import { parseExtractionFields } from "./extraction-span-config.js";
@@ -2622,6 +2623,8 @@ export function parseConfig(
2622
2623
  }
2623
2624
  return n;
2624
2625
  })(),
2626
+ outcomeBoostEnabled: coerceBool(cfg.outcomeBoostEnabled) ?? false,
2627
+ outcomeBoostWeight: parseOutcomeBoostWeight(cfg.outcomeBoostWeight),
2625
2628
  // Async peer profile reasoner (issue #679 PR 2/5). Defaults to
2626
2629
  // `false` (opt-in) per Gotchas #30/#48 — least-privileged default.
2627
2630
  // `coerceBool` handles "true"/"1"/"yes"/"on" CLI strings (Gotcha
package/src/index.ts CHANGED
@@ -393,7 +393,7 @@ export { auditMemoryStore, auditScreenProfile, formatAuditMemoryReport, type Aud
393
393
  // Access layer (HTTP + MCP + schema validation)
394
394
  // ---------------------------------------------------------------------------
395
395
 
396
- export { EngramAccessService, EngramAccessInputError } from "./access-service.js";
396
+ export { EngramAccessService, EngramAccessInputError, type EngramAccessRecallResponse } from "./access-service.js";
397
397
  export {
398
398
  EngramAccessHttpServer,
399
399
  type RemnicAdminConfigPatch,