@remnic/core 9.63.8 → 9.63.10

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 (454) hide show
  1. package/dist/access-admin-ops-surface.d.ts +11 -11
  2. package/dist/access-admin-ops-surface.js +23 -23
  3. package/dist/access-authorization-probe.d.ts +11 -11
  4. package/dist/access-authorization-probe.js +24 -24
  5. package/dist/access-boundary.d.ts +11 -11
  6. package/dist/access-boundary.js +23 -23
  7. package/dist/access-cli.js +84 -82
  8. package/dist/access-cli.js.map +1 -1
  9. package/dist/access-coding-context-resolution.d.ts +1 -1
  10. package/dist/access-extraction-force-flush.d.ts +11 -11
  11. package/dist/access-extraction-force-flush.js +23 -23
  12. package/dist/access-health-types.d.ts +1 -1
  13. package/dist/access-http-lcm-compaction.d.ts +11 -11
  14. package/dist/access-http-lifecycle-flush.d.ts +11 -11
  15. package/dist/access-http-offline-stream.d.ts +11 -11
  16. package/dist/access-http-query.d.ts +2 -2
  17. package/dist/access-http-query.js +25 -25
  18. package/dist/access-http.d.ts +12 -12
  19. package/dist/access-http.js +36 -36
  20. package/dist/access-identity-continuity-surface.d.ts +9 -9
  21. package/dist/access-identity-continuity-surface.js +23 -23
  22. package/dist/access-lcm-surface.d.ts +11 -11
  23. package/dist/access-lcm-surface.js +23 -23
  24. package/dist/access-mcp.d.ts +11 -11
  25. package/dist/access-mcp.js +30 -30
  26. package/dist/access-memory-search-fanout.d.ts +2 -2
  27. package/dist/{access-namespace-preflight-DB0zXFek.d.ts → access-namespace-preflight-CrF0FKaz.d.ts} +1 -1
  28. package/dist/access-namespace-preflight.d.ts +3 -3
  29. package/dist/access-namespace-preflight.js +23 -23
  30. package/dist/access-observe-write-surface.d.ts +11 -11
  31. package/dist/access-observe-write-surface.js +23 -23
  32. package/dist/access-offline-manifest.d.ts +9 -9
  33. package/dist/access-operations-batch.js +25 -25
  34. package/dist/access-operations.d.ts +14 -14
  35. package/dist/access-operations.js +29 -29
  36. package/dist/access-recall-concurrency.d.ts +11 -11
  37. package/dist/access-recall-concurrency.js +23 -23
  38. package/dist/access-recall-response.d.ts +11 -11
  39. package/dist/access-recall-response.js +23 -23
  40. package/dist/access-recall-surface.d.ts +11 -11
  41. package/dist/access-recall-surface.js +23 -23
  42. package/dist/access-schema.d.ts +88 -88
  43. package/dist/access-schema.js +3 -3
  44. package/dist/{access-service-BaPa_km6.d.ts → access-service-C0AE0jLs.d.ts} +71 -71
  45. package/dist/access-service-helpers.d.ts +11 -11
  46. package/dist/access-service.d.ts +11 -11
  47. package/dist/access-service.js +23 -23
  48. package/dist/access-surface-catalog.d.ts +11 -11
  49. package/dist/access-surface-catalog.js +25 -25
  50. package/dist/access-wearables-meetings-surface.d.ts +3 -3
  51. package/dist/action-confidence.d.ts +1 -1
  52. package/dist/active-memory-bridge.d.ts +1 -1
  53. package/dist/active-recall.d.ts +1 -1
  54. package/dist/ambient-provenance.d.ts +1 -1
  55. package/dist/artifact-search.d.ts +1 -1
  56. package/dist/{auto-sync-3SHMZVQS.js → auto-sync-5L7EUZ27.js} +4 -3
  57. package/dist/{auto-sync-3SHMZVQS.js.map → auto-sync-5L7EUZ27.js.map} +1 -1
  58. package/dist/behavior-learner.d.ts +1 -1
  59. package/dist/behavior-signals.d.ts +1 -1
  60. package/dist/bootstrap.d.ts +9 -9
  61. package/dist/briefing-window.d.ts +2 -2
  62. package/dist/briefing.d.ts +5 -3
  63. package/dist/briefing.js +11 -9
  64. package/dist/buffer-surprise-report.d.ts +1 -1
  65. package/dist/buffer-turn-helpers.d.ts +1 -1
  66. package/dist/buffer.d.ts +2 -2
  67. package/dist/bulk-import/index.d.ts +3 -3
  68. package/dist/calibration.d.ts +1 -1
  69. package/dist/capabilities.d.ts +1 -1
  70. package/dist/{capsule-crypto-YO5QJ6L3.js → capsule-crypto-GWVG7LGC.js} +2 -2
  71. package/dist/{catalog-CCzmf8IH.d.ts → catalog-C0KIwZqR.d.ts} +1 -1
  72. package/dist/causal-behavior.d.ts +1 -1
  73. package/dist/causal-consolidation.d.ts +1 -1
  74. package/dist/causal-consolidation.js +10 -10
  75. package/dist/causal-trajectory-graph.d.ts +1 -1
  76. package/dist/{chunk-4POAMKV6.js → chunk-27IOSH2W.js} +5 -2
  77. package/dist/chunk-27IOSH2W.js.map +1 -0
  78. package/dist/{chunk-OQIRBGUU.js → chunk-2Q4UAPLD.js} +4 -4
  79. package/dist/{chunk-3IMYRX3W.js → chunk-34E5NBQI.js} +2 -2
  80. package/dist/{chunk-BRHKW7GY.js → chunk-4IIDTPSK.js} +2 -2
  81. package/dist/{chunk-Q5XKKDFQ.js → chunk-5SZ6CLGJ.js} +2 -2
  82. package/dist/{chunk-VDX2J7OX.js → chunk-5W7CTZ2E.js} +4 -4
  83. package/dist/{chunk-EUYWQ7TS.js → chunk-652S5A5D.js} +2 -2
  84. package/dist/{chunk-ULZFZL7K.js → chunk-6IKXAAJI.js} +17 -28
  85. package/dist/chunk-6IKXAAJI.js.map +1 -0
  86. package/dist/{chunk-3TDAA7VA.js → chunk-6NMZXEJ7.js} +2 -2
  87. package/dist/{chunk-ZOAAY2OE.js → chunk-77E7LLMV.js} +7 -7
  88. package/dist/{chunk-MIUL6AUZ.js → chunk-7ML7STOD.js} +3 -3
  89. package/dist/{chunk-5SCFDQEJ.js → chunk-BPLPGOUJ.js} +2 -2
  90. package/dist/{chunk-RWMSMTQP.js → chunk-BS75WJBH.js} +2 -2
  91. package/dist/{chunk-XE2QCCT2.js → chunk-BTBAHTQ5.js} +2 -2
  92. package/dist/{chunk-42TIIO2M.js → chunk-BTUIHRRR.js} +2 -2
  93. package/dist/chunk-CIO7GCWE.js +29 -0
  94. package/dist/chunk-CIO7GCWE.js.map +1 -0
  95. package/dist/{chunk-SNEUAZ6B.js → chunk-CK3DZ6OE.js} +2 -2
  96. package/dist/{chunk-AJRJDXYR.js → chunk-E7MYSCSL.js} +2 -2
  97. package/dist/{chunk-3T6HIIKA.js → chunk-EHC3FIJ4.js} +2 -2
  98. package/dist/{chunk-EDZNW3HE.js → chunk-EPRBTGLM.js} +6 -6
  99. package/dist/{chunk-YTXNDEUS.js → chunk-FEP45MYY.js} +4 -3
  100. package/dist/{chunk-YTXNDEUS.js.map → chunk-FEP45MYY.js.map} +1 -1
  101. package/dist/{chunk-KFB4YNXM.js → chunk-G5F4MXXC.js} +2 -2
  102. package/dist/{chunk-VANZKHTN.js → chunk-G5OB4XZX.js} +4 -4
  103. package/dist/{chunk-N7V3P4V5.js → chunk-H5VDBZLZ.js} +2 -2
  104. package/dist/{chunk-645WOU5I.js → chunk-H7BZBSP6.js} +4 -4
  105. package/dist/{chunk-SZ4HFZKB.js → chunk-HMKPFW7R.js} +2 -2
  106. package/dist/{chunk-VFZQXYN5.js → chunk-HZXO2CJ6.js} +2 -2
  107. package/dist/{chunk-KXWE62IH.js → chunk-IOE75NA4.js} +2 -2
  108. package/dist/{chunk-PQHNZ63P.js → chunk-JJ45UTNT.js} +18 -5
  109. package/dist/chunk-JJ45UTNT.js.map +1 -0
  110. package/dist/{chunk-5TF5STAV.js → chunk-K477BTF4.js} +4 -4
  111. package/dist/{chunk-ML3U4KPR.js → chunk-K547KS3X.js} +4 -4
  112. package/dist/{chunk-UHGBNIOS.js → chunk-KVDUKH5E.js} +7 -2
  113. package/dist/chunk-KVDUKH5E.js.map +1 -0
  114. package/dist/{chunk-XTMYB2HY.js → chunk-LJQGQUNS.js} +2 -2
  115. package/dist/{chunk-WAS4HV46.js → chunk-LNH76ZJX.js} +87 -3
  116. package/dist/chunk-LNH76ZJX.js.map +1 -0
  117. package/dist/{chunk-VYMICVRA.js → chunk-LQNBQEMC.js} +2 -2
  118. package/dist/{chunk-J6QIAYNR.js → chunk-LVXBC6YB.js} +7 -2
  119. package/dist/{chunk-J6QIAYNR.js.map → chunk-LVXBC6YB.js.map} +1 -1
  120. package/dist/{chunk-IVKIODHO.js → chunk-MB6GLPRY.js} +4 -4
  121. package/dist/{chunk-BPQ7L27U.js → chunk-MIM7QT6H.js} +16 -16
  122. package/dist/chunk-MKYRCCSN.js +145 -0
  123. package/dist/chunk-MKYRCCSN.js.map +1 -0
  124. package/dist/{chunk-WBPD6SBZ.js → chunk-MNI7KB4Q.js} +54 -54
  125. package/dist/{chunk-6433HV72.js → chunk-MVIYRRVJ.js} +5 -5
  126. package/dist/{chunk-BXLOS5AJ.js → chunk-OWHERGF2.js} +2 -2
  127. package/dist/{chunk-QQYHYW2N.js → chunk-PQODT53H.js} +3 -3
  128. package/dist/{chunk-PHKU6BZ2.js → chunk-R7FQQQ23.js} +2 -2
  129. package/dist/{chunk-TOP3FSDW.js → chunk-RFFCBYBD.js} +11 -11
  130. package/dist/{chunk-O52TB5SL.js → chunk-SAWGVTCE.js} +2 -2
  131. package/dist/{chunk-LTYH2L6E.js → chunk-SILX74CP.js} +9 -9
  132. package/dist/{chunk-MYI3RKI6.js → chunk-SYU5JOBQ.js} +2 -2
  133. package/dist/{chunk-SY5JUJ2X.js → chunk-U5XC6DIS.js} +39 -39
  134. package/dist/{chunk-JXS5PDQ7.js → chunk-UOBPK2OS.js} +25 -7
  135. package/dist/chunk-UOBPK2OS.js.map +1 -0
  136. package/dist/{chunk-BOSIHHOH.js → chunk-UUYQWKHO.js} +2 -2
  137. package/dist/{chunk-DQEMWVMT.js → chunk-UVYI6VIX.js} +1 -1
  138. package/dist/{chunk-M4AHBM72.js → chunk-VCBG52MM.js} +4 -4
  139. package/dist/{chunk-62Y5AGCM.js → chunk-VENMDW4U.js} +10 -10
  140. package/dist/{chunk-6NAPOLRO.js → chunk-VY47VI2T.js} +6 -4
  141. package/dist/chunk-VY47VI2T.js.map +1 -0
  142. package/dist/{chunk-QTXNS3HB.js → chunk-WCWIV2JH.js} +2 -2
  143. package/dist/{chunk-6UKSOXAO.js → chunk-WQ6TRWAE.js} +3 -3
  144. package/dist/{chunk-CBY54QYW.js → chunk-X6HNXVXS.js} +4 -4
  145. package/dist/{chunk-DGUVXXAU.js → chunk-XFJUPJD7.js} +2 -2
  146. package/dist/{chunk-JPWSYHLB.js → chunk-YGSDWO3U.js} +2 -2
  147. package/dist/{chunk-GBVRVYF4.js → chunk-YINSSARY.js} +1 -1
  148. package/dist/{chunk-Q6OL23WM.js → chunk-Z4UPRZR6.js} +2 -2
  149. package/dist/{chunk-4F67JJPG.js → chunk-ZPN7W3OP.js} +2 -2
  150. package/dist/{cli-D0tV7eeU.d.ts → cli-xoJTOdMQ.d.ts} +5 -5
  151. package/dist/cli.d.ts +13 -13
  152. package/dist/cli.js +55 -54
  153. package/dist/coding/pre-action-gate.d.ts +1 -1
  154. package/dist/compounding/engine.d.ts +2 -2
  155. package/dist/compounding/engine.js +9 -9
  156. package/dist/compounding/preference-consolidator.d.ts +1 -1
  157. package/dist/compression-optimizer.d.ts +1 -1
  158. package/dist/config.d.ts +1 -1
  159. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  160. package/dist/connectors/codex-materialize-runner.js +9 -9
  161. package/dist/connectors/codex-materialize.d.ts +1 -1
  162. package/dist/connectors/index.d.ts +1 -1
  163. package/dist/connectors/index.js +9 -9
  164. package/dist/consolidation-provenance-check.d.ts +2 -2
  165. package/dist/consolidation-undo.d.ts +2 -2
  166. package/dist/contradiction/index.d.ts +2 -2
  167. package/dist/contradiction/index.js +4 -4
  168. package/dist/converge-config.d.ts +1 -1
  169. package/dist/convergence-refresh.d.ts +2 -2
  170. package/dist/convergence-refresh.js +11 -11
  171. package/dist/conversation-index/backend.d.ts +1 -1
  172. package/dist/conversation-index/chunker.d.ts +1 -1
  173. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  174. package/dist/conversation-index/indexer.d.ts +1 -1
  175. package/dist/conversation-index/search.d.ts +1 -1
  176. package/dist/corpus-watermark.d.ts +1 -1
  177. package/dist/corpus-watermark.js +11 -11
  178. package/dist/day-summary.d.ts +1 -1
  179. package/dist/day-summary.js +1 -1
  180. package/dist/delinearize.d.ts +1 -1
  181. package/dist/dependency-propagation-config.d.ts +1 -1
  182. package/dist/{dependency-propagation-delivery-DiY5T63p.d.ts → dependency-propagation-delivery-Cph4PnBe.d.ts} +1 -1
  183. package/dist/direct-answer-wiring.d.ts +1 -1
  184. package/dist/direct-answer-wiring.js +2 -1
  185. package/dist/direct-answer.d.ts +1 -1
  186. package/dist/embedding-fallback.d.ts +1 -1
  187. package/dist/enrichment/index.d.ts +1 -1
  188. package/dist/entity-origin-fields.d.ts +1 -1
  189. package/dist/entity-retrieval-i18n.d.ts +34 -0
  190. package/dist/entity-retrieval-i18n.js +13 -0
  191. package/dist/entity-retrieval-i18n.js.map +1 -0
  192. package/dist/entity-retrieval.d.ts +2 -2
  193. package/dist/entity-retrieval.js +10 -9
  194. package/dist/entity-schema.d.ts +1 -1
  195. package/dist/episodic-context.d.ts +1 -1
  196. package/dist/event-order-recall.js +2 -2
  197. package/dist/explicit-capture.d.ts +9 -9
  198. package/dist/external-wiki-access.d.ts +11 -11
  199. package/dist/external-wiki-access.js +24 -24
  200. package/dist/external-wiki-collection-registration.d.ts +1 -1
  201. package/dist/external-wiki-collection.d.ts +1 -1
  202. package/dist/external-wiki-mcp-tools.d.ts +11 -11
  203. package/dist/extraction-error-classification.d.ts +1 -1
  204. package/dist/extraction-faithfulness.d.ts +1 -1
  205. package/dist/extraction-judge-telemetry.d.ts +1 -1
  206. package/dist/extraction-judge-training.d.ts +1 -1
  207. package/dist/extraction-judge.d.ts +1 -1
  208. package/dist/extraction-liveness.d.ts +1 -1
  209. package/dist/extraction-normalization.d.ts +1 -1
  210. package/dist/extraction-prompt.d.ts +1 -1
  211. package/dist/extraction-source-grounding-helpers.d.ts +10 -1
  212. package/dist/extraction-source-grounding-helpers.js +3 -1
  213. package/dist/extraction-source-grounding-rules.d.ts +1 -1
  214. package/dist/extraction-source-grounding-rules.js +2 -2
  215. package/dist/extraction-source-grounding.d.ts +1 -1
  216. package/dist/extraction-source-grounding.js +3 -3
  217. package/dist/extraction.d.ts +1 -1
  218. package/dist/extraction.js +18 -18
  219. package/dist/fallback-llm.d.ts +1 -1
  220. package/dist/graph-dashboard-diff.d.ts +1 -1
  221. package/dist/graph-dashboard-key.d.ts +1 -1
  222. package/dist/graph-dashboard-parser.d.ts +1 -1
  223. package/dist/graph-edge-reinforcement.d.ts +1 -1
  224. package/dist/graph-path-reconstruction.d.ts +1 -1
  225. package/dist/graph-path-scoring.d.ts +1 -1
  226. package/dist/graph-snapshot.d.ts +1 -1
  227. package/dist/graph.d.ts +1 -1
  228. package/dist/harmonic-retrieval.js +1 -1
  229. package/dist/importance.d.ts +1 -1
  230. package/dist/importance.js +2 -1
  231. package/dist/importers/index.d.ts +1 -1
  232. package/dist/in-flight-reads.d.ts +1 -1
  233. package/dist/index.d.ts +697 -697
  234. package/dist/index.js +98 -96
  235. package/dist/intent.d.ts +1 -1
  236. package/dist/lcm/engine.d.ts +1 -1
  237. package/dist/lcm/engine.js +2 -2
  238. package/dist/lcm/index.d.ts +1 -1
  239. package/dist/lcm/index.js +4 -4
  240. package/dist/lcm/tools.d.ts +1 -1
  241. package/dist/lifecycle.d.ts +1 -1
  242. package/dist/live-connectors-runner.d.ts +1 -1
  243. package/dist/local-llm.d.ts +1 -1
  244. package/dist/local-llm.js +2 -2
  245. package/dist/local-model-endpoint.d.ts +1 -1
  246. package/dist/maintenance/memory-governance.d.ts +1 -1
  247. package/dist/maintenance/memory-governance.js +9 -9
  248. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
  249. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +9 -9
  250. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
  251. package/dist/maintenance/rebuild-memory-projection.js +10 -10
  252. package/dist/{maintenance-CaqA4z7V.d.ts → maintenance-BNq31xpo.d.ts} +3 -3
  253. package/dist/mcp-memory-inspector-app.d.ts +11 -11
  254. package/dist/memory-action-policy.d.ts +1 -1
  255. package/dist/memory-cache.d.ts +1 -1
  256. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  257. package/dist/memory-projection-store.d.ts +1 -1
  258. package/dist/memory-provenance.d.ts +1 -1
  259. package/dist/memory-snapshot.d.ts +1 -1
  260. package/dist/memory-worth-outcomes.d.ts +2 -2
  261. package/dist/models-json.d.ts +1 -1
  262. package/dist/namespaces/migrate.d.ts +3 -3
  263. package/dist/namespaces/migrate.js +10 -10
  264. package/dist/namespaces/principal.d.ts +1 -1
  265. package/dist/namespaces/search.d.ts +1 -1
  266. package/dist/namespaces/search.js +7 -7
  267. package/dist/namespaces/storage.d.ts +3 -3
  268. package/dist/namespaces/storage.js +9 -9
  269. package/dist/native-knowledge.d.ts +1 -1
  270. package/dist/offline-sync-impression-drain.d.ts +1 -1
  271. package/dist/operator-doctor-corpus.d.ts +1 -1
  272. package/dist/operator-doctor-corpus.js +12 -12
  273. package/dist/operator-doctor-replica.d.ts +1 -1
  274. package/dist/operator-toolkit.d.ts +3 -3
  275. package/dist/operator-toolkit.js +17 -17
  276. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
  277. package/dist/orchestration/maintenance.d.ts +4 -4
  278. package/dist/orchestration/maintenance.js +15 -15
  279. package/dist/{orchestrator-Bay_AofR.d.ts → orchestrator-CBuUOP2J.d.ts} +8 -8
  280. package/dist/orchestrator.d.ts +9 -9
  281. package/dist/orchestrator.js +84 -82
  282. package/dist/patterns-cli.d.ts +1 -1
  283. package/dist/{pipeline-X606GdRJ.d.ts → pipeline-CW_Q4WvX.d.ts} +1 -1
  284. package/dist/policy-runtime.d.ts +1 -1
  285. package/dist/proactive-contention.d.ts +1 -1
  286. package/dist/provenance.d.ts +1 -1
  287. package/dist/{public-http-BtjiyKah.d.ts → public-http-DR3sHfwk.d.ts} +1 -1
  288. package/dist/qmd-preflight.d.ts +2 -2
  289. package/dist/{qmd-DCKeR-GX.d.ts → qmd-q-cAzYuC.d.ts} +1 -1
  290. package/dist/qmd-recall-cache.d.ts +1 -1
  291. package/dist/qmd.d.ts +2 -2
  292. package/dist/recall-concurrency-config.d.ts +1 -1
  293. package/dist/recall-disclosure-escalation.d.ts +1 -1
  294. package/dist/recall-explain-renderer.d.ts +1 -1
  295. package/dist/recall-memory-map.d.ts +1 -1
  296. package/dist/recall-planner-llm.d.ts +1 -1
  297. package/dist/recall-state.d.ts +1 -1
  298. package/dist/recall-tag-filter.d.ts +1 -1
  299. package/dist/recall-timings.d.ts +1 -1
  300. package/dist/recall-xray-cli.d.ts +1 -1
  301. package/dist/recall-xray-renderer.d.ts +1 -1
  302. package/dist/recall-xray.d.ts +1 -1
  303. package/dist/reconcile/cursor.d.ts +1 -1
  304. package/dist/reconcile/manifest.d.ts +1 -1
  305. package/dist/reconcile/plan.d.ts +1 -1
  306. package/dist/replay/normalizers/chatgpt.d.ts +1 -1
  307. package/dist/replay/normalizers/claude.d.ts +1 -1
  308. package/dist/replay/normalizers/openclaw.d.ts +1 -1
  309. package/dist/replay/normalizers/shared.d.ts +1 -1
  310. package/dist/replay/runner.d.ts +1 -1
  311. package/dist/replay/types.d.ts +1 -1
  312. package/dist/replica-divergence.d.ts +1 -1
  313. package/dist/replica-peers-config.d.ts +1 -1
  314. package/dist/resolve-auth-token.d.ts +1 -1
  315. package/dist/retrieval-agents.d.ts +2 -2
  316. package/dist/retrieval-tiers.d.ts +1 -1
  317. package/dist/routing/engine.d.ts +1 -1
  318. package/dist/routing/store.d.ts +1 -1
  319. package/dist/salvage-envelope.d.ts +1 -1
  320. package/dist/schemas.d.ts +108 -108
  321. package/dist/{scope-profiles-_Y_RHCeE.d.ts → scope-profiles-CIr4mXgp.d.ts} +1 -1
  322. package/dist/search/embed-helper.d.ts +1 -1
  323. package/dist/search/factory.d.ts +1 -1
  324. package/dist/search/factory.js +6 -6
  325. package/dist/search/index.d.ts +1 -1
  326. package/dist/search/index.js +11 -11
  327. package/dist/search/lancedb-backend.d.ts +1 -1
  328. package/dist/search/lancedb-backend.js +2 -2
  329. package/dist/search/meilisearch-backend.d.ts +1 -1
  330. package/dist/search/meilisearch-backend.js +2 -2
  331. package/dist/search/noop-backend.d.ts +1 -1
  332. package/dist/search/orama-backend.d.ts +1 -1
  333. package/dist/search/orama-backend.js +2 -2
  334. package/dist/search/port.d.ts +1 -1
  335. package/dist/search/remote-backend.d.ts +1 -1
  336. package/dist/{semantic-consolidation-DT2VSrU0.d.ts → semantic-consolidation-BZ6J46j-.d.ts} +1 -1
  337. package/dist/semantic-consolidation.d.ts +2 -2
  338. package/dist/semantic-consolidation.js +10 -10
  339. package/dist/semantic-rule-promotion.js +9 -9
  340. package/dist/semantic-rule-verifier.d.ts +1 -1
  341. package/dist/semantic-rule-verifier.js +9 -9
  342. package/dist/{service-BMo-gwDE.d.ts → service-CCl4iyyY.d.ts} +2 -2
  343. package/dist/session-observer-bands.d.ts +1 -1
  344. package/dist/session-observer-state.d.ts +1 -1
  345. package/dist/shared-context/manager.d.ts +9 -9
  346. package/dist/signal.d.ts +1 -1
  347. package/dist/source-agent-qualifier.d.ts +1 -1
  348. package/dist/source-agent-qualifier.js +13 -13
  349. package/dist/{storage-CGzJGUUu.d.ts → storage-BPXmJKIt.d.ts} +1 -1
  350. package/dist/storage.d.ts +2 -2
  351. package/dist/storage.js +8 -8
  352. package/dist/summarizer.d.ts +1 -1
  353. package/dist/summarizer.js +3 -3
  354. package/dist/summary-snapshot.d.ts +1 -1
  355. package/dist/support-passport/index.d.ts +14 -14
  356. package/dist/support-passport/index.js +26 -26
  357. package/dist/temporal-supersession.d.ts +2 -2
  358. package/dist/temporal-timeline-recall.d.ts +1 -1
  359. package/dist/temporal-validity.d.ts +1 -1
  360. package/dist/threading.d.ts +1 -1
  361. package/dist/tier-migration.d.ts +2 -2
  362. package/dist/tier-routing.d.ts +1 -1
  363. package/dist/topics.d.ts +1 -1
  364. package/dist/topics.js +2 -1
  365. package/dist/transcript.d.ts +1 -1
  366. package/dist/transfer/backup.js +2 -2
  367. package/dist/transfer/capsule-export.js +2 -2
  368. package/dist/transfer/capsule-import.js +2 -2
  369. package/dist/transfer/types.d.ts +66 -66
  370. package/dist/trust-score-stage.d.ts +1 -1
  371. package/dist/trust-score.d.ts +1 -1
  372. package/dist/{types-CBEAYU76.d.ts → types-CltSWcND.d.ts} +1 -1
  373. package/dist/types.d.ts +1 -1
  374. package/dist/utility-runtime.d.ts +1 -1
  375. package/dist/verified-recall.js +9 -9
  376. package/dist/write-envelope.d.ts +1 -1
  377. package/package.json +2 -2
  378. package/src/briefing.test.ts +50 -0
  379. package/src/briefing.ts +3 -2
  380. package/src/chat/chat-engine.test.ts +15 -0
  381. package/src/chat/chat-engine.ts +13 -2
  382. package/src/day-summary.test.ts +63 -0
  383. package/src/day-summary.ts +13 -1
  384. package/src/entity-retrieval-i18n.test.ts +115 -0
  385. package/src/entity-retrieval-i18n.ts +161 -0
  386. package/src/entity-retrieval.ts +34 -34
  387. package/src/extraction-source-grounding-helpers.ts +112 -2
  388. package/src/extraction-source-grounding-rules.ts +3 -1
  389. package/src/extraction-source-grounding.test.ts +52 -0
  390. package/src/importance.ts +32 -22
  391. package/src/taxonomy/resolver.ts +7 -7
  392. package/src/topics.ts +5 -2
  393. package/src/utils/script-aware-text.ts +52 -0
  394. package/src/write-classifiers-cjk.test.ts +115 -0
  395. package/dist/chunk-4POAMKV6.js.map +0 -1
  396. package/dist/chunk-6NAPOLRO.js.map +0 -1
  397. package/dist/chunk-JXS5PDQ7.js.map +0 -1
  398. package/dist/chunk-PQHNZ63P.js.map +0 -1
  399. package/dist/chunk-UHGBNIOS.js.map +0 -1
  400. package/dist/chunk-ULZFZL7K.js.map +0 -1
  401. package/dist/chunk-WAS4HV46.js.map +0 -1
  402. /package/dist/{capsule-crypto-YO5QJ6L3.js.map → capsule-crypto-GWVG7LGC.js.map} +0 -0
  403. /package/dist/{chunk-OQIRBGUU.js.map → chunk-2Q4UAPLD.js.map} +0 -0
  404. /package/dist/{chunk-3IMYRX3W.js.map → chunk-34E5NBQI.js.map} +0 -0
  405. /package/dist/{chunk-BRHKW7GY.js.map → chunk-4IIDTPSK.js.map} +0 -0
  406. /package/dist/{chunk-Q5XKKDFQ.js.map → chunk-5SZ6CLGJ.js.map} +0 -0
  407. /package/dist/{chunk-VDX2J7OX.js.map → chunk-5W7CTZ2E.js.map} +0 -0
  408. /package/dist/{chunk-EUYWQ7TS.js.map → chunk-652S5A5D.js.map} +0 -0
  409. /package/dist/{chunk-3TDAA7VA.js.map → chunk-6NMZXEJ7.js.map} +0 -0
  410. /package/dist/{chunk-ZOAAY2OE.js.map → chunk-77E7LLMV.js.map} +0 -0
  411. /package/dist/{chunk-MIUL6AUZ.js.map → chunk-7ML7STOD.js.map} +0 -0
  412. /package/dist/{chunk-5SCFDQEJ.js.map → chunk-BPLPGOUJ.js.map} +0 -0
  413. /package/dist/{chunk-RWMSMTQP.js.map → chunk-BS75WJBH.js.map} +0 -0
  414. /package/dist/{chunk-XE2QCCT2.js.map → chunk-BTBAHTQ5.js.map} +0 -0
  415. /package/dist/{chunk-42TIIO2M.js.map → chunk-BTUIHRRR.js.map} +0 -0
  416. /package/dist/{chunk-SNEUAZ6B.js.map → chunk-CK3DZ6OE.js.map} +0 -0
  417. /package/dist/{chunk-AJRJDXYR.js.map → chunk-E7MYSCSL.js.map} +0 -0
  418. /package/dist/{chunk-3T6HIIKA.js.map → chunk-EHC3FIJ4.js.map} +0 -0
  419. /package/dist/{chunk-EDZNW3HE.js.map → chunk-EPRBTGLM.js.map} +0 -0
  420. /package/dist/{chunk-KFB4YNXM.js.map → chunk-G5F4MXXC.js.map} +0 -0
  421. /package/dist/{chunk-VANZKHTN.js.map → chunk-G5OB4XZX.js.map} +0 -0
  422. /package/dist/{chunk-N7V3P4V5.js.map → chunk-H5VDBZLZ.js.map} +0 -0
  423. /package/dist/{chunk-645WOU5I.js.map → chunk-H7BZBSP6.js.map} +0 -0
  424. /package/dist/{chunk-SZ4HFZKB.js.map → chunk-HMKPFW7R.js.map} +0 -0
  425. /package/dist/{chunk-VFZQXYN5.js.map → chunk-HZXO2CJ6.js.map} +0 -0
  426. /package/dist/{chunk-KXWE62IH.js.map → chunk-IOE75NA4.js.map} +0 -0
  427. /package/dist/{chunk-5TF5STAV.js.map → chunk-K477BTF4.js.map} +0 -0
  428. /package/dist/{chunk-ML3U4KPR.js.map → chunk-K547KS3X.js.map} +0 -0
  429. /package/dist/{chunk-XTMYB2HY.js.map → chunk-LJQGQUNS.js.map} +0 -0
  430. /package/dist/{chunk-VYMICVRA.js.map → chunk-LQNBQEMC.js.map} +0 -0
  431. /package/dist/{chunk-IVKIODHO.js.map → chunk-MB6GLPRY.js.map} +0 -0
  432. /package/dist/{chunk-BPQ7L27U.js.map → chunk-MIM7QT6H.js.map} +0 -0
  433. /package/dist/{chunk-WBPD6SBZ.js.map → chunk-MNI7KB4Q.js.map} +0 -0
  434. /package/dist/{chunk-6433HV72.js.map → chunk-MVIYRRVJ.js.map} +0 -0
  435. /package/dist/{chunk-BXLOS5AJ.js.map → chunk-OWHERGF2.js.map} +0 -0
  436. /package/dist/{chunk-QQYHYW2N.js.map → chunk-PQODT53H.js.map} +0 -0
  437. /package/dist/{chunk-PHKU6BZ2.js.map → chunk-R7FQQQ23.js.map} +0 -0
  438. /package/dist/{chunk-TOP3FSDW.js.map → chunk-RFFCBYBD.js.map} +0 -0
  439. /package/dist/{chunk-O52TB5SL.js.map → chunk-SAWGVTCE.js.map} +0 -0
  440. /package/dist/{chunk-LTYH2L6E.js.map → chunk-SILX74CP.js.map} +0 -0
  441. /package/dist/{chunk-MYI3RKI6.js.map → chunk-SYU5JOBQ.js.map} +0 -0
  442. /package/dist/{chunk-SY5JUJ2X.js.map → chunk-U5XC6DIS.js.map} +0 -0
  443. /package/dist/{chunk-BOSIHHOH.js.map → chunk-UUYQWKHO.js.map} +0 -0
  444. /package/dist/{chunk-DQEMWVMT.js.map → chunk-UVYI6VIX.js.map} +0 -0
  445. /package/dist/{chunk-M4AHBM72.js.map → chunk-VCBG52MM.js.map} +0 -0
  446. /package/dist/{chunk-62Y5AGCM.js.map → chunk-VENMDW4U.js.map} +0 -0
  447. /package/dist/{chunk-QTXNS3HB.js.map → chunk-WCWIV2JH.js.map} +0 -0
  448. /package/dist/{chunk-6UKSOXAO.js.map → chunk-WQ6TRWAE.js.map} +0 -0
  449. /package/dist/{chunk-CBY54QYW.js.map → chunk-X6HNXVXS.js.map} +0 -0
  450. /package/dist/{chunk-DGUVXXAU.js.map → chunk-XFJUPJD7.js.map} +0 -0
  451. /package/dist/{chunk-JPWSYHLB.js.map → chunk-YGSDWO3U.js.map} +0 -0
  452. /package/dist/{chunk-GBVRVYF4.js.map → chunk-YINSSARY.js.map} +0 -0
  453. /package/dist/{chunk-Q6OL23WM.js.map → chunk-Z4UPRZR6.js.map} +0 -0
  454. /package/dist/{chunk-4F67JJPG.js.map → chunk-ZPN7W3OP.js.map} +0 -0
@@ -12,16 +12,16 @@ import {
12
12
  } from "./chunk-3HSRWJTC.js";
13
13
  import {
14
14
  handleSupportPassportOwnerHttp
15
- } from "./chunk-O52TB5SL.js";
15
+ } from "./chunk-SAWGVTCE.js";
16
16
  import {
17
17
  buildSupportPassportPublicRequestHandler
18
- } from "./chunk-N7V3P4V5.js";
18
+ } from "./chunk-H5VDBZLZ.js";
19
19
  import {
20
20
  nonEmptyQueryParam,
21
21
  optionalNamespaceKindQueryParam,
22
22
  optionalQueryString,
23
23
  positiveIntQueryParam
24
- } from "./chunk-JPWSYHLB.js";
24
+ } from "./chunk-YGSDWO3U.js";
25
25
  import {
26
26
  EngramMcpServer,
27
27
  MCP_SUPPORTED_PROTOCOL_VERSIONS,
@@ -31,13 +31,13 @@ import {
31
31
  processChatMessage,
32
32
  sessionBelongsToPrincipal,
33
33
  subscribeChatTranscript
34
- } from "./chunk-PQHNZ63P.js";
34
+ } from "./chunk-JJ45UTNT.js";
35
35
  import {
36
36
  RelayMissionStoreError
37
- } from "./chunk-5TF5STAV.js";
37
+ } from "./chunk-K477BTF4.js";
38
38
  import {
39
39
  validateRequest
40
- } from "./chunk-DGUVXXAU.js";
40
+ } from "./chunk-XFJUPJD7.js";
41
41
  import {
42
42
  executeResolution,
43
43
  isValidResolutionVerb
@@ -61,12 +61,12 @@ import {
61
61
  authorizationProbeNamespaces,
62
62
  authorizationProbeRequiresPrincipalNamespace,
63
63
  probeOperationAuthorization
64
- } from "./chunk-PHKU6BZ2.js";
64
+ } from "./chunk-R7FQQQ23.js";
65
65
  import {
66
66
  CorrectionContractError,
67
67
  getOperation,
68
68
  resolveQueryNamespaceWritablePreflight
69
- } from "./chunk-BPQ7L27U.js";
69
+ } from "./chunk-MIM7QT6H.js";
70
70
  import {
71
71
  isTrustZoneName
72
72
  } from "./chunk-5QZR2RA3.js";
@@ -3394,4 +3394,4 @@ export {
3394
3394
  resolveDefaultAdminConsolePublicDir,
3395
3395
  EngramAccessHttpServer
3396
3396
  };
3397
- //# sourceMappingURL=chunk-LTYH2L6E.js.map
3397
+ //# sourceMappingURL=chunk-SILX74CP.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  listNamespaces
3
- } from "./chunk-MIUL6AUZ.js";
3
+ } from "./chunk-7ML7STOD.js";
4
4
  import {
5
5
  capabilityAllowsNamespace
6
6
  } from "./chunk-MZWSOLMT.js";
@@ -282,4 +282,4 @@ export {
282
282
  computeServiceCorpusWatermarks,
283
283
  computeServiceCorpusCensus
284
284
  };
285
- //# sourceMappingURL=chunk-MYI3RKI6.js.map
285
+ //# sourceMappingURL=chunk-SYU5JOBQ.js.map
@@ -13,6 +13,9 @@ import {
13
13
  import {
14
14
  importSqlite
15
15
  } from "./chunk-PYHOAXTI.js";
16
+ import {
17
+ backupMemoryDir
18
+ } from "./chunk-OWHERGF2.js";
16
19
  import {
17
20
  exportJsonBundle
18
21
  } from "./chunk-UP6MOYCB.js";
@@ -25,18 +28,9 @@ import {
25
28
  import {
26
29
  importJsonBundle
27
30
  } from "./chunk-2DL3OFLD.js";
28
- import {
29
- backupMemoryDir
30
- } from "./chunk-BXLOS5AJ.js";
31
31
  import {
32
32
  exportMarkdownBundle
33
33
  } from "./chunk-765K3SAT.js";
34
- import {
35
- RoutingRulesStore
36
- } from "./chunk-TBUEE7XF.js";
37
- import {
38
- WebDavServer
39
- } from "./chunk-PYIFUBRK.js";
40
34
  import {
41
35
  buildReplayNormalizerRegistry,
42
36
  clampBatchSize,
@@ -47,20 +41,26 @@ import {
47
41
  normalizeReplaySessionKey
48
42
  } from "./chunk-AJVLDJU6.js";
49
43
  import {
50
- rebuildObservations
51
- } from "./chunk-DQTCGVFK.js";
44
+ RoutingRulesStore
45
+ } from "./chunk-TBUEE7XF.js";
52
46
  import {
53
47
  TailscaleHelper
54
48
  } from "./chunk-EEC4PCG5.js";
55
49
  import {
56
- migrateObservations
57
- } from "./chunk-IIFFC3RL.js";
50
+ WebDavServer
51
+ } from "./chunk-PYIFUBRK.js";
58
52
  import {
59
- rebuildMemoryLifecycleLedger
60
- } from "./chunk-Q6OL23WM.js";
53
+ rebuildObservations
54
+ } from "./chunk-DQTCGVFK.js";
61
55
  import {
62
56
  archiveObservations
63
57
  } from "./chunk-YLBE6PLR.js";
58
+ import {
59
+ migrateObservations
60
+ } from "./chunk-IIFFC3RL.js";
61
+ import {
62
+ rebuildMemoryLifecycleLedger
63
+ } from "./chunk-Z4UPRZR6.js";
64
64
  import {
65
65
  getBulkImportSource,
66
66
  listBulkImportSources,
@@ -70,9 +70,6 @@ import {
70
70
  import {
71
71
  runCompatChecks
72
72
  } from "./chunk-CDKHKZL5.js";
73
- import {
74
- searchVerifiedEpisodes
75
- } from "./chunk-XE2QCCT2.js";
76
73
  import {
77
74
  getUtilityLearningStatus,
78
75
  learnUtilityPromotionWeights
@@ -81,15 +78,18 @@ import {
81
78
  getUtilityTelemetryStatus,
82
79
  recordUtilityTelemetryEvent
83
80
  } from "./chunk-6FC3IZ26.js";
81
+ import {
82
+ searchVerifiedEpisodes
83
+ } from "./chunk-BTBAHTQ5.js";
84
84
  import {
85
85
  ThreadingManager
86
86
  } from "./chunk-OJP3N7UK.js";
87
87
  import {
88
88
  promoteSemanticRuleFromMemory
89
- } from "./chunk-BRHKW7GY.js";
89
+ } from "./chunk-4IIDTPSK.js";
90
90
  import {
91
91
  searchVerifiedSemanticRules
92
- } from "./chunk-3T6HIIKA.js";
92
+ } from "./chunk-EHC3FIJ4.js";
93
93
  import {
94
94
  buildResumeBundleFromState,
95
95
  getResumeBundleStatus,
@@ -106,6 +106,10 @@ import {
106
106
  import {
107
107
  parseXrayCliOptions
108
108
  } from "./chunk-7DRSWPUV.js";
109
+ import {
110
+ readRuntimePolicySnapshot,
111
+ sanitizeRuntimePolicyValues
112
+ } from "./chunk-2LA3H54D.js";
109
113
  import {
110
114
  formatNamespaceMaintenanceHealthText,
111
115
  runBenchmarkRecall,
@@ -114,7 +118,7 @@ import {
114
118
  runOperatorInventory,
115
119
  runOperatorRepair,
116
120
  runOperatorSetup
117
- } from "./chunk-ZOAAY2OE.js";
121
+ } from "./chunk-77E7LLMV.js";
118
122
  import {
119
123
  analyzeSessionIntegrity,
120
124
  applySessionRepair,
@@ -129,10 +133,6 @@ import {
129
133
  renderPatternExplain,
130
134
  renderPatternsList
131
135
  } from "./chunk-3T74IZB3.js";
132
- import {
133
- readRuntimePolicySnapshot,
134
- sanitizeRuntimePolicyValues
135
- } from "./chunk-2LA3H54D.js";
136
136
  import {
137
137
  GITHUB_CONNECTOR_ID,
138
138
  GMAIL_CONNECTOR_ID,
@@ -152,10 +152,10 @@ import {
152
152
  } from "./chunk-6GUG4YNM.js";
153
153
  import {
154
154
  rescoreMemoryImportance
155
- } from "./chunk-JXS5PDQ7.js";
155
+ } from "./chunk-UOBPK2OS.js";
156
156
  import {
157
157
  searchHarmonicRetrieval
158
- } from "./chunk-GBVRVYF4.js";
158
+ } from "./chunk-YINSSARY.js";
159
159
  import {
160
160
  createEvalBaselineSnapshot,
161
161
  getEvalHarnessStatus,
@@ -175,7 +175,7 @@ import {
175
175
  rebuildMemoryProjection,
176
176
  repairMemoryProjection,
177
177
  verifyMemoryProjection
178
- } from "./chunk-6UKSOXAO.js";
178
+ } from "./chunk-WQ6TRWAE.js";
179
179
  import {
180
180
  buildConnectorRowsFromDefinitions,
181
181
  parseConnectorsListOptions,
@@ -200,7 +200,7 @@ import {
200
200
  import {
201
201
  EngramAccessHttpServer,
202
202
  MeetingsInputError
203
- } from "./chunk-LTYH2L6E.js";
203
+ } from "./chunk-SILX74CP.js";
204
204
  import {
205
205
  WearablesInputError
206
206
  } from "./chunk-V7IZKJI3.js";
@@ -210,13 +210,13 @@ import {
210
210
  loadChatSession,
211
211
  processChatMessage,
212
212
  sessionBelongsToPrincipal
213
- } from "./chunk-PQHNZ63P.js";
213
+ } from "./chunk-JJ45UTNT.js";
214
214
  import {
215
215
  getAbstractionNodeStoreStatus
216
216
  } from "./chunk-DJUKBGAD.js";
217
217
  import {
218
218
  EngramAccessService
219
- } from "./chunk-BPQ7L27U.js";
219
+ } from "./chunk-MIM7QT6H.js";
220
220
  import {
221
221
  WorkStorage
222
222
  } from "./chunk-GDB4J2H3.js";
@@ -236,7 +236,7 @@ import {
236
236
  } from "./chunk-3F3CVVDS.js";
237
237
  import {
238
238
  readAggregateExtractionWatermark
239
- } from "./chunk-QTXNS3HB.js";
239
+ } from "./chunk-WCWIV2JH.js";
240
240
  import {
241
241
  getObjectiveStateStoreStatus
242
242
  } from "./chunk-HTP6XRUI.js";
@@ -245,24 +245,24 @@ import {
245
245
  readMemoryGovernanceRunArtifact,
246
246
  restoreMemoryGovernanceRun,
247
247
  runMemoryGovernance
248
- } from "./chunk-3TDAA7VA.js";
248
+ } from "./chunk-6NMZXEJ7.js";
249
249
  import {
250
250
  listNamespaces,
251
251
  runNamespaceMigration,
252
252
  verifyNamespaces
253
- } from "./chunk-MIUL6AUZ.js";
253
+ } from "./chunk-7ML7STOD.js";
254
254
  import {
255
255
  analyzeGraphHealth
256
256
  } from "./chunk-YMOPYG3K.js";
257
257
  import {
258
258
  resolveNamespaceChildRoot
259
- } from "./chunk-BOSIHHOH.js";
259
+ } from "./chunk-UUYQWKHO.js";
260
260
  import {
261
261
  getCausalTrajectoryStoreStatus
262
262
  } from "./chunk-GPFZFCRN.js";
263
263
  import {
264
264
  meetingIdDate
265
- } from "./chunk-Q5XKKDFQ.js";
265
+ } from "./chunk-5SZ6CLGJ.js";
266
266
  import {
267
267
  isValidTranscriptDate
268
268
  } from "./chunk-UHVXE24Y.js";
@@ -4932,7 +4932,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
4932
4932
  }
4933
4933
  }
4934
4934
  if (sourceArchive.endsWith(".enc")) {
4935
- const { isEncryptedCapsuleFile } = await import("./capsule-crypto-YO5QJ6L3.js");
4935
+ const { isEncryptedCapsuleFile } = await import("./capsule-crypto-GWVG7LGC.js");
4936
4936
  const encDetected = await isEncryptedCapsuleFile(sourceArchive).catch(() => true);
4937
4937
  if (encDetected) {
4938
4938
  throw new Error(
@@ -5095,7 +5095,7 @@ function registerCli(api, orchestrator, registerOptions = {}) {
5095
5095
  const { parseExportBundle } = await import("./transfer/types.js");
5096
5096
  let decryptedBuf;
5097
5097
  try {
5098
- const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-YO5QJ6L3.js");
5098
+ const { decryptCapsuleFileInMemory } = await import("./capsule-crypto-GWVG7LGC.js");
5099
5099
  decryptedBuf = await decryptCapsuleFileInMemory(archivePath, memoryDir);
5100
5100
  } catch (decErr) {
5101
5101
  const msg = decErr instanceof Error ? decErr.message : String(decErr);
@@ -8344,4 +8344,4 @@ export {
8344
8344
  listMemoryMarkdownFilePaths,
8345
8345
  registerCli
8346
8346
  };
8347
- //# sourceMappingURL=chunk-SY5JUJ2X.js.map
8347
+ //# sourceMappingURL=chunk-U5XC6DIS.js.map
@@ -1,3 +1,9 @@
1
+ import {
2
+ cjkBigrams,
3
+ hasLatinWord,
4
+ informationalLength
5
+ } from "./chunk-CIO7GCWE.js";
6
+
1
7
  // src/importance.ts
2
8
  var CRITICAL_PATTERNS = [
3
9
  // Explicit importance
@@ -48,9 +54,7 @@ var TRIVIAL_PATTERNS = [
48
54
  /^(got it|understood|roger|copy|noted)[.!]?\s*$/i,
49
55
  /^(bye|goodbye|later|see ya|ttyl)[.!]?\s*$/i,
50
56
  /^(lol|haha|hehe|lmao|rofl)[.!]?\s*$/i,
51
- /^(hmm+|uhh*|ahh*|err*|umm*)[.!]?\s*$/i,
52
- // Very short content
53
- /^.{1,10}$/
57
+ /^(hmm+|uhh*|ahh*|err*|umm*)[.!]?\s*$/i
54
58
  ];
55
59
  var CATEGORY_BOOSTS = {
56
60
  correction: 0.15,
@@ -210,9 +214,12 @@ var STOP_WORDS = /* @__PURE__ */ new Set([
210
214
  "against"
211
215
  ]);
212
216
  function extractKeywords(content, maxKeywords = 5) {
213
- const words = content.toLowerCase().replace(/[^a-z0-9\s-]/g, " ").split(/\s+/).filter((w) => w.length >= 3 && !STOP_WORDS.has(w));
217
+ const candidates = [
218
+ ...content.toLowerCase().replace(/[^a-z0-9\s-]/g, " ").split(/\s+/).filter((w) => w.length >= 3 && !STOP_WORDS.has(w)),
219
+ ...cjkBigrams(content)
220
+ ];
214
221
  const freq = /* @__PURE__ */ new Map();
215
- for (const word of words) {
222
+ for (const word of candidates) {
216
223
  freq.set(word, (freq.get(word) ?? 0) + 1);
217
224
  }
218
225
  return [...freq.entries()].sort((a, b) => b[1] - a[1]).slice(0, maxKeywords).map(([word]) => word);
@@ -220,7 +227,6 @@ function extractKeywords(content, maxKeywords = 5) {
220
227
  function scoreImportance(content, category, tags = []) {
221
228
  const reasons = [];
222
229
  let score = 0.5;
223
- const lowerContent = content.toLowerCase();
224
230
  const contentLength = content.length;
225
231
  for (const pattern of TRIVIAL_PATTERNS) {
226
232
  if (pattern.test(content)) {
@@ -232,6 +238,18 @@ function scoreImportance(content, category, tags = []) {
232
238
  };
233
239
  }
234
240
  }
241
+ const weightedLength = informationalLength(content);
242
+ if (weightedLength >= 1 && weightedLength <= 10) {
243
+ return {
244
+ score: 0.1,
245
+ level: "trivial",
246
+ reasons: ["Trivial content (greeting, filler, or very short)"],
247
+ keywords: []
248
+ };
249
+ }
250
+ if (!hasLatinWord(content)) {
251
+ reasons.push("Non-Latin script: keyword tiers not applicable; script-agnostic signals only");
252
+ }
235
253
  for (const pattern of CRITICAL_PATTERNS) {
236
254
  if (pattern.test(content)) {
237
255
  score += 0.2;
@@ -330,4 +348,4 @@ export {
330
348
  importanceLevel,
331
349
  isAboveImportanceThreshold
332
350
  };
333
- //# sourceMappingURL=chunk-JXS5PDQ7.js.map
351
+ //# sourceMappingURL=chunk-UOBPK2OS.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/importance.ts"],"sourcesContent":["/**\n * Local Importance Scoring (Phase 1B)\n *\n * Zero-LLM heuristic system that evaluates each memory's significance.\n * Analyzes content for markers like explicit importance statements,\n * personal information, instructions, emotional content, and factual density.\n */\n\nimport type { ImportanceLevel, ImportanceScore, MemoryCategory, MemoryFile } from \"./types.js\";\nimport { cjkBigrams, hasLatinWord, informationalLength } from \"./utils/script-aware-text.js\";\n\n// ---------------------------------------------------------------------------\n// Marker patterns for each tier\n// ---------------------------------------------------------------------------\n\n/** Critical importance markers (0.9-1.0) */\nconst CRITICAL_PATTERNS = [\n // Explicit importance\n /\\b(critical|crucial|essential|must|always|never)\\b/i,\n /\\b(important|remember this|don't forget)\\b/i,\n // Personal identity\n /\\b(my name is|i am|i'm called)\\b/i,\n /\\b(my (birthday|phone|email|address|ssn|password))\\b/i,\n // Strong preferences\n /\\b(i (hate|love|despise|adore))\\b/i,\n /\\b(absolutely|definitely|certainly) (not|must|should)\\b/i,\n // Corrections (high weight)\n /\\b(actually|no,? that's wrong|correction:?|let me correct)\\b/i,\n /\\b(i said|i meant|i was wrong)\\b/i,\n];\n\n/** High importance markers (0.7-0.9) */\nconst HIGH_PATTERNS = [\n // Decisions\n /\\b(decided|decision|chose|choosing|picked|selected)\\b/i,\n /\\b(we('ll| will) (go with|use|implement))\\b/i,\n // Instructions\n /\\b(make sure|ensure|always|don't|do not|never|avoid)\\b/i,\n /\\b(you (should|must|need to))\\b/i,\n // Temporal references (deadlines, schedules)\n /\\b(by (monday|tuesday|wednesday|thursday|friday|saturday|sunday))\\b/i,\n /\\b(deadline|due (date|by)|by (end of|next))\\b/i,\n /\\b(tomorrow|next week|this week|today)\\b/i,\n // Preferences\n /\\b(i (prefer|like|want|need|dislike))\\b/i,\n /\\b(my (preference|style|approach|way))\\b/i,\n // Commitments\n /\\b(i('ll| will)|promise|commit|guarantee)\\b/i,\n /\\b(scheduled|appointment|meeting|call)\\b/i,\n];\n\n\n/** Low importance markers (0.2-0.4) */\nconst LOW_PATTERNS = [\n // Uncertainty\n /\\b(maybe|perhaps|possibly|might|could be)\\b/i,\n /\\b(i think|i guess|not sure|uncertain)\\b/i,\n /\\b(probably|likely|seems like)\\b/i,\n // Hedging\n /\\b(kind of|sort of|somewhat|a bit)\\b/i,\n /\\b(in a way|to some extent)\\b/i,\n];\n\n/** Trivial content markers (0.0-0.2) */\nconst TRIVIAL_PATTERNS = [\n // Greetings and filler\n /^(hi|hello|hey|yo|sup|greetings)[.!,]?\\s*$/i,\n /^(ok|okay|k|sure|yes|no|yep|nope|yeah|nah)[.!]?\\s*$/i,\n /^(thanks|thank you|thx|ty|cheers)[.!]?\\s*$/i,\n /^(got it|understood|roger|copy|noted)[.!]?\\s*$/i,\n /^(bye|goodbye|later|see ya|ttyl)[.!]?\\s*$/i,\n /^(lol|haha|hehe|lmao|rofl)[.!]?\\s*$/i,\n /^(hmm+|uhh*|ahh*|err*|umm*)[.!]?\\s*$/i,\n];\n\n// ---------------------------------------------------------------------------\n// Category-based importance boosts\n// ---------------------------------------------------------------------------\n\nconst CATEGORY_BOOSTS: Record<MemoryCategory, number> = {\n correction: 0.15, // Corrections are always important\n principle: 0.12, // Durable rules/values\n rule: 0.11, // Causal IF→THEN rules\n procedure: 0.10, // Repeatable workflows (issue #519)\n preference: 0.10, // User preferences matter\n commitment: 0.10, // Promises/obligations\n reasoning_trace: 0.09, // Stored reasoning chains (issue #564)\n decision: 0.08, // Decisions with rationale\n relationship: 0.05, // Entity relationships\n skill: 0.05, // Capabilities\n moment: 0.03, // Emotional milestones\n entity: 0.02, // Entity facts\n fact: 0.00, // Base facts, no boost\n};\n\n// ---------------------------------------------------------------------------\n// Keyword extraction\n// ---------------------------------------------------------------------------\n\n/** Common stop words to filter out */\nconst STOP_WORDS = new Set([\n \"a\", \"an\", \"the\", \"is\", \"are\", \"was\", \"were\", \"be\", \"been\", \"being\",\n \"have\", \"has\", \"had\", \"do\", \"does\", \"did\", \"will\", \"would\", \"could\",\n \"should\", \"may\", \"might\", \"must\", \"shall\", \"can\", \"need\", \"dare\",\n \"ought\", \"used\", \"to\", \"of\", \"in\", \"for\", \"on\", \"with\", \"at\", \"by\",\n \"from\", \"as\", \"into\", \"through\", \"during\", \"before\", \"after\", \"above\",\n \"below\", \"between\", \"under\", \"again\", \"further\", \"then\", \"once\",\n \"here\", \"there\", \"when\", \"where\", \"why\", \"how\", \"all\", \"each\", \"few\",\n \"more\", \"most\", \"other\", \"some\", \"such\", \"no\", \"nor\", \"not\", \"only\",\n \"own\", \"same\", \"so\", \"than\", \"too\", \"very\", \"just\", \"and\", \"but\",\n \"or\", \"if\", \"because\", \"until\", \"while\", \"this\", \"that\", \"these\",\n \"those\", \"i\", \"me\", \"my\", \"myself\", \"we\", \"our\", \"ours\", \"ourselves\",\n \"you\", \"your\", \"yours\", \"yourself\", \"yourselves\", \"he\", \"him\", \"his\",\n \"himself\", \"she\", \"her\", \"hers\", \"herself\", \"it\", \"its\", \"itself\",\n \"they\", \"them\", \"their\", \"theirs\", \"themselves\", \"what\", \"which\",\n \"who\", \"whom\", \"whose\", \"am\", \"been\", \"being\", \"about\", \"against\",\n]);\n\n/**\n * Extract salient keywords from content.\n * Returns top N keywords sorted by relevance.\n */\nfunction extractKeywords(content: string, maxKeywords: number = 5): string[] {\n // Latin words plus CJK bigrams, so non-Latin content still yields\n // keywords (pure-CJK prose returned none before #2192).\n const candidates = [\n ...content\n .toLowerCase()\n .replace(/[^a-z0-9\\s-]/g, \" \")\n .split(/\\s+/)\n .filter((w) => w.length >= 3 && !STOP_WORDS.has(w)),\n ...cjkBigrams(content),\n ];\n\n // Count frequencies\n const freq = new Map<string, number>();\n for (const word of candidates) {\n freq.set(word, (freq.get(word) ?? 0) + 1);\n }\n\n // Sort by frequency, take top N\n return [...freq.entries()]\n .sort((a, b) => b[1] - a[1])\n .slice(0, maxKeywords)\n .map(([word]) => word);\n}\n\n// ---------------------------------------------------------------------------\n// Main scoring function\n// ---------------------------------------------------------------------------\n\n/**\n * Calculate importance score for a memory.\n * Pure local heuristics, zero LLM calls.\n */\nexport function scoreImportance(\n content: string,\n category: MemoryCategory,\n tags: string[] = [],\n): ImportanceScore {\n const reasons: string[] = [];\n let score = 0.5; // Start at normal baseline\n\n const contentLength = content.length;\n\n // Check for trivial content first (short-circuit)\n for (const pattern of TRIVIAL_PATTERNS) {\n if (pattern.test(content)) {\n return {\n score: 0.1,\n level: \"trivial\",\n reasons: [\"Trivial content (greeting, filler, or very short)\"],\n keywords: [],\n };\n }\n }\n\n // Very short content. informationalLength weights CJK/Hangul 3:1, so a\n // dense non-Latin sentence (\"予約しました\") is not trivial for being\n // under 10 raw characters while its English equivalent is not (#2192).\n const weightedLength = informationalLength(content);\n if (weightedLength >= 1 && weightedLength <= 10) {\n return {\n score: 0.1,\n level: \"trivial\",\n reasons: [\"Trivial content (greeting, filler, or very short)\"],\n keywords: [],\n };\n }\n\n // Documented non-Latin fallback (#2192): the English keyword tiers below\n // cannot fire without Latin words, so the score rests on the 0.5 baseline\n // plus script-agnostic signals (category boost, length, digits, tags).\n if (!hasLatinWord(content)) {\n reasons.push(\"Non-Latin script: keyword tiers not applicable; script-agnostic signals only\");\n }\n\n // Check critical patterns\n for (const pattern of CRITICAL_PATTERNS) {\n if (pattern.test(content)) {\n score += 0.20;\n reasons.push(`Critical marker: ${pattern.source.slice(0, 30)}`);\n break; // Only count once per tier\n }\n }\n\n // Check high patterns\n for (const pattern of HIGH_PATTERNS) {\n if (pattern.test(content)) {\n score += 0.12;\n reasons.push(`High importance marker detected`);\n break;\n }\n }\n\n // Check low patterns (reduces score)\n for (const pattern of LOW_PATTERNS) {\n if (pattern.test(content)) {\n score -= 0.15;\n reasons.push(`Uncertainty/hedging detected`);\n break;\n }\n }\n\n // Category boost\n const categoryBoost = CATEGORY_BOOSTS[category] ?? 0;\n if (categoryBoost > 0) {\n score += categoryBoost;\n reasons.push(`Category boost: ${category}`);\n }\n\n // Length bonus (longer = more substance, capped)\n if (contentLength > 200) {\n const lengthBonus = Math.min((contentLength - 200) / 1000, 0.1);\n score += lengthBonus;\n if (lengthBonus > 0.05) {\n reasons.push(\"Substantial content length\");\n }\n }\n\n // Check for personal pronouns (signals personal relevance)\n if (/\\b(my|mine|i|i'm|i've|i'd|i'll)\\b/i.test(content)) {\n score += 0.05;\n reasons.push(\"Personal reference\");\n }\n\n // Check for numbers/specifics (concrete details)\n if (/\\b\\d{2,}\\b/.test(content) || /\\b(version|v\\d|api|config)\\b/i.test(content)) {\n score += 0.03;\n reasons.push(\"Contains specific details\");\n }\n\n // Tag-based boosts\n const importantTags = tags.filter((t) =>\n [\"important\", \"critical\", \"preference\", \"decision\", \"rule\", \"principle\"].includes(t.toLowerCase())\n );\n if (importantTags.length > 0) {\n score += 0.05 * importantTags.length;\n reasons.push(`Important tags: ${importantTags.join(\", \")}`);\n }\n\n // Clamp score to 0-1 range\n score = Math.max(0, Math.min(1, score));\n\n // Determine level from score\n let level: ImportanceLevel;\n if (score >= 0.9) {\n level = \"critical\";\n } else if (score >= 0.7) {\n level = \"high\";\n } else if (score >= 0.4) {\n level = \"normal\";\n } else if (score >= 0.2) {\n level = \"low\";\n } else {\n level = \"trivial\";\n }\n\n // Extract keywords\n const keywords = extractKeywords(content);\n\n return {\n score: Math.round(score * 100) / 100, // Round to 2 decimal places\n level,\n reasons: reasons.slice(0, 5), // Cap at 5 reasons\n keywords,\n };\n}\n\n/**\n * Recompute importance for an existing memory file using current local heuristics.\n */\nexport function rescoreMemoryImportance(memory: MemoryFile): ImportanceScore {\n return scoreImportance(memory.content, memory.frontmatter.category, memory.frontmatter.tags ?? []);\n}\n\n/**\n * Get importance level from numeric score.\n */\nexport function importanceLevel(score: number): ImportanceLevel {\n if (score >= 0.9) return \"critical\";\n if (score >= 0.7) return \"high\";\n if (score >= 0.4) return \"normal\";\n if (score >= 0.2) return \"low\";\n return \"trivial\";\n}\n\n// ---------------------------------------------------------------------------\n// Importance threshold helper (issue #372)\n// ---------------------------------------------------------------------------\n\n/**\n * Ordering for importance levels used by the extraction write gate.\n * Higher indices mean more important.\n */\nconst IMPORTANCE_LEVEL_RANK: Record<ImportanceLevel, number> = {\n trivial: 0,\n low: 1,\n normal: 2,\n high: 3,\n critical: 4,\n};\n\n/**\n * Return true if `candidate` meets or exceeds `threshold`. Used by the\n * extraction write gate in orchestrator.persistExtraction() to drop trivial\n * content before it is written to the memory store.\n *\n * Note: callers should pass the ALREADY-BOOSTED level returned by\n * scoreImportance(), because category boosts (e.g. corrections) are applied\n * inside scoreImportance() before the level is derived.\n */\nexport function isAboveImportanceThreshold(\n candidate: ImportanceLevel,\n threshold: ImportanceLevel,\n): boolean {\n return IMPORTANCE_LEVEL_RANK[candidate] >= IMPORTANCE_LEVEL_RANK[threshold];\n}\n"],"mappings":"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","names":[]}
@@ -4,7 +4,7 @@ import {
4
4
  } from "./chunk-RDFF2NAU.js";
5
5
  import {
6
6
  StorageManager
7
- } from "./chunk-Q5XKKDFQ.js";
7
+ } from "./chunk-5SZ6CLGJ.js";
8
8
  import {
9
9
  excludeSupportPassportPrivateMemories
10
10
  } from "./chunk-XDL5CYZN.js";
@@ -138,4 +138,4 @@ export {
138
138
  runCodexMaterialize,
139
139
  runPostConsolidationMaterialize
140
140
  };
141
- //# sourceMappingURL=chunk-BOSIHHOH.js.map
141
+ //# sourceMappingURL=chunk-UUYQWKHO.js.map
@@ -246,4 +246,4 @@ export {
246
246
  decryptCapsuleFile,
247
247
  decryptCapsuleFileInMemory
248
248
  };
249
- //# sourceMappingURL=chunk-DQEMWVMT.js.map
249
+ //# sourceMappingURL=chunk-UVYI6VIX.js.map
@@ -1,3 +1,6 @@
1
+ import {
2
+ LcmDag
3
+ } from "./chunk-7N4KAIGN.js";
1
4
  import {
2
5
  LcmWorkQueue
3
6
  } from "./chunk-TPDBFYEG.js";
@@ -14,9 +17,6 @@ import {
14
17
  import {
15
18
  LcmArchive
16
19
  } from "./chunk-WVP2I6C5.js";
17
- import {
18
- LcmDag
19
- } from "./chunk-7N4KAIGN.js";
20
20
  import {
21
21
  estimateTokenCount
22
22
  } from "./chunk-TOTT6S2V.js";
@@ -568,4 +568,4 @@ export {
568
568
  extractLcmConfig,
569
569
  LcmEngine
570
570
  };
571
- //# sourceMappingURL=chunk-M4AHBM72.js.map
571
+ //# sourceMappingURL=chunk-VCBG52MM.js.map
@@ -1,21 +1,21 @@
1
+ import {
2
+ RemoteSearchBackend
3
+ } from "./chunk-VYISFWVX.js";
4
+ import {
5
+ EmbedHelper
6
+ } from "./chunk-6KTXE6A3.js";
1
7
  import {
2
8
  LanceDbBackend
3
- } from "./chunk-OQIRBGUU.js";
9
+ } from "./chunk-2Q4UAPLD.js";
4
10
  import {
5
11
  MeilisearchBackend
6
- } from "./chunk-VANZKHTN.js";
12
+ } from "./chunk-G5OB4XZX.js";
7
13
  import {
8
14
  NoopSearchBackend
9
15
  } from "./chunk-CYEPCZN5.js";
10
16
  import {
11
17
  OramaBackend
12
- } from "./chunk-ML3U4KPR.js";
13
- import {
14
- RemoteSearchBackend
15
- } from "./chunk-VYISFWVX.js";
16
- import {
17
- EmbedHelper
18
- } from "./chunk-6KTXE6A3.js";
18
+ } from "./chunk-K547KS3X.js";
19
19
  import {
20
20
  createConversationIndexBackend
21
21
  } from "./chunk-227UFSEQ.js";
@@ -179,4 +179,4 @@ export {
179
179
  createConversationSearchBackend,
180
180
  createConversationIndexRuntime
181
181
  };
182
- //# sourceMappingURL=chunk-62Y5AGCM.js.map
182
+ //# sourceMappingURL=chunk-VENMDW4U.js.map
@@ -1,6 +1,9 @@
1
1
  import {
2
2
  isDirectAnswerEligible
3
3
  } from "./chunk-PYIR4SSB.js";
4
+ import {
5
+ cjkBigrams
6
+ } from "./chunk-CIO7GCWE.js";
4
7
  import {
5
8
  normalizeRecallTokens
6
9
  } from "./chunk-YCVB7X56.js";
@@ -88,9 +91,8 @@ function computeKeywordScoreForTokens(contentTokens, cat) {
88
91
  return score;
89
92
  }
90
93
  function tokenizeKeywordText(value) {
91
- return new Set(
92
- value.toLowerCase().split(/[^a-z0-9]+/).map((word) => word.trim()).filter((word) => word.length >= 3 && !TAXONOMY_KEYWORD_STOPWORDS.has(word))
93
- );
94
+ const latin = (value.toLowerCase().match(/[a-z0-9]+/g) ?? []).filter((word) => word.length >= 3 && !TAXONOMY_KEYWORD_STOPWORDS.has(word));
95
+ return /* @__PURE__ */ new Set([...latin, ...cjkBigrams(value)]);
94
96
  }
95
97
  function selectFallbackCategory(categories) {
96
98
  return categories.find((cat) => cat.id === DEFAULT_CATEGORY_ID) ?? categories.find((cat) => {
@@ -177,4 +179,4 @@ export {
177
179
  resolveCategory,
178
180
  tryDirectAnswer
179
181
  };
180
- //# sourceMappingURL=chunk-6NAPOLRO.js.map
182
+ //# sourceMappingURL=chunk-VY47VI2T.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/taxonomy/resolver.ts","../src/direct-answer-wiring.ts"],"sourcesContent":["/**\n * Resolver decision tree for the MECE taxonomy.\n *\n * Given extracted content and its MemoryCategory, determines which\n * taxonomy category the knowledge should be filed under.\n */\n\nimport type { MemoryCategory } from \"../types.js\";\nimport type { ResolverDecision, Taxonomy, TaxonomyCategory } from \"./types.js\";\nimport { cjkBigrams } from \"../utils/script-aware-text.js\";\n\nconst DEFAULT_CATEGORY_ID = \"facts\";\n\n/**\n * Resolve a piece of content to a taxonomy category.\n *\n * Algorithm:\n * 1. Find all taxonomy categories whose `memoryCategories` include\n * the given `memoryCategory`.\n * 2. If exactly one match, return it with confidence 1.0.\n * 3. If multiple matches, prefer the strongest exact-token keyword\n * overlap from filing rules. Use priority only as a tie-breaker.\n * If no filing rules match, choose the explicit/default fallback\n * category instead of letting low-priority generic terms win.\n * 4. If no match, fall back to the \"facts\" category (or first\n * category if \"facts\" is absent) with low confidence.\n * 5. Always populate `alternatives` with other plausible categories.\n */\nexport function resolveCategory(\n content: string,\n memoryCategory: MemoryCategory,\n taxonomy: Taxonomy,\n): ResolverDecision {\n const contentTokens = tokenizeKeywordText(content);\n\n // Step 1: find matching categories\n const matches = taxonomy.categories.filter((cat) =>\n cat.memoryCategories.includes(memoryCategory),\n );\n\n if (matches.length === 0) {\n // No taxonomy category accepts this MemoryCategory — fall back\n const fallback =\n taxonomy.categories.find((c) => c.id === DEFAULT_CATEGORY_ID) ??\n taxonomy.categories[0];\n if (!fallback) {\n return {\n categoryId: DEFAULT_CATEGORY_ID,\n confidence: 0,\n reason: \"Taxonomy is empty; using default category\",\n alternatives: [],\n };\n }\n const alternatives = taxonomy.categories\n .filter((c) => c.id !== fallback.id)\n .map((c) => ({\n categoryId: c.id,\n reason: c.description,\n }));\n return {\n categoryId: fallback.id,\n confidence: 0.3,\n reason: `No taxonomy category maps to MemoryCategory \"${memoryCategory}\"; falling back to \"${fallback.name}\"`,\n alternatives,\n };\n }\n\n if (matches.length === 1) {\n const match = matches[0]!;\n const alternatives = taxonomy.categories\n .filter((c) => c.id !== match.id)\n .map((c) => ({\n categoryId: c.id,\n reason: c.description,\n }));\n return {\n categoryId: match.id,\n confidence: 1.0,\n reason: `Unique match: MemoryCategory \"${memoryCategory}\" maps to \"${match.name}\"`,\n alternatives,\n };\n }\n\n // Multiple matches — use filing rule keyword heuristics + priority\n const scored = matches.map((cat) => ({\n cat,\n keywordScore: computeKeywordScoreForTokens(contentTokens, cat),\n }));\n\n // Sort by keyword score descending, then priority ascending (lower wins)\n scored.sort((a, b) => {\n if (b.keywordScore !== a.keywordScore) return b.keywordScore - a.keywordScore;\n return a.cat.priority - b.cat.priority;\n });\n\n const topScored = scored[0]!;\n const best = topScored.keywordScore > 0\n ? topScored\n : {\n cat: selectFallbackCategory(matches) ?? topScored.cat,\n keywordScore: 0,\n };\n const runnerUp = scored[1];\n\n // Confidence is higher when keyword match clearly differentiates\n const confidence =\n best.keywordScore > 0 && (!runnerUp || best.keywordScore > runnerUp.keywordScore)\n ? 0.9\n : 0.7;\n\n const alternatives = taxonomy.categories\n .filter((c) => c.id !== best.cat.id)\n .map((c) => ({\n categoryId: c.id,\n reason: c.description,\n }));\n\n const reason =\n best.keywordScore > 0\n ? `Filing rules for \"${best.cat.name}\" matched content keywords (priority ${best.cat.priority})`\n : `No filing rules matched content keywords; using fallback category \"${best.cat.name}\"`;\n\n return {\n categoryId: best.cat.id,\n confidence,\n reason,\n alternatives,\n };\n}\n\n/**\n * Compute a simple keyword overlap score between content and\n * a category's filing rules + description.\n */\nfunction computeKeywordScoreForTokens(contentTokens: Set<string>, cat: TaxonomyCategory): number {\n let score = 0;\n const ruleText = [...cat.filingRules, cat.description]\n .join(\" \")\n .toLowerCase();\n\n const keywords = tokenizeKeywordText(ruleText);\n\n for (const kw of keywords) {\n if (contentTokens.has(kw)) {\n score += 1;\n }\n }\n return score;\n}\n\nfunction tokenizeKeywordText(value: string): Set<string> {\n // CJK bigrams tokenize BOTH sides (content and filing rules), so a\n // taxonomy written in a CJK language matches CJK content; Latin-only\n // taxonomies see no change (issue #2192).\n const latin = (value.toLowerCase().match(/[a-z0-9]+/g) ?? [])\n .filter((word) => word.length >= 3 && !TAXONOMY_KEYWORD_STOPWORDS.has(word));\n return new Set([...latin, ...cjkBigrams(value)]);\n}\n\nfunction selectFallbackCategory(\n categories: readonly TaxonomyCategory[],\n): TaxonomyCategory | undefined {\n return categories.find((cat) => cat.id === DEFAULT_CATEGORY_ID) ??\n categories.find((cat) => {\n const text = `${cat.id} ${cat.name} ${cat.description} ${cat.filingRules.join(\" \")}`.toLowerCase();\n return /\\b(general|fallback)\\b/.test(text);\n });\n}\n\nconst TAXONOMY_KEYWORD_STOPWORDS = new Set([\n \"about\",\n \"all\",\n \"and\",\n \"are\",\n \"for\",\n \"from\",\n \"has\",\n \"into\",\n \"not\",\n \"the\",\n \"this\",\n \"was\",\n \"with\",\n]);\n","/**\n * Direct-answer wiring (issue #518 slice 3).\n *\n * Binds the pure eligibility decision (`direct-answer.ts`) to the data\n * sources needed to build candidates: storage, trust-zones, taxonomy,\n * and importance scoring. Kept as a separate module so that:\n *\n * - The eligibility layer stays pure and unit-testable without stores.\n * - Each caller injects its own source accessors. The orchestrator\n * binding is a follow-on slice; tests here use mock sources.\n * - The wiring is safe to ship alone — nothing calls `tryDirectAnswer`\n * yet, so enabling this module's presence does not change recall\n * behavior. The next slice adds exactly one call site before QMD.\n *\n * Short-circuit contract:\n *\n * - When the resolved gate (`input.enabled`, projected from\n * `caps.recallDirectAnswer` at the recall-operation entry) is `false`, the\n * function returns the\n * eligibility verdict with reason `\"disabled\"` without touching any source\n * accessor. This is the documented default.\n * - When enabled, the wiring cheaply drops non-trusted-zone memories\n * and ineligible taxonomy buckets before computing importance, so\n * the eligibility module sees a pre-filtered candidate set. The\n * eligibility module still performs the same checks itself — this\n * module is purely an I/O and prefiltering layer.\n */\n\nimport type { MemoryFile, PluginConfig } from \"./types.js\";\nimport type { TrustZoneName } from \"./trust-zones.js\";\nimport type { Taxonomy } from \"./taxonomy/types.js\";\nimport { resolveCategory } from \"./taxonomy/resolver.js\";\nimport { normalizeRecallTokens } from \"./recall-tokenization.js\";\nimport { throwIfAborted } from \"./abort-error.js\";\nimport {\n isDirectAnswerEligible,\n type DirectAnswerCandidate,\n type DirectAnswerConfig,\n type DirectAnswerResult,\n} from \"./direct-answer.js\";\n\n/**\n * Caller-provided accessors for candidate sourcing. Decouples the\n * wiring from any specific storage / trust-zone / importance backend.\n */\nexport interface DirectAnswerSources {\n /**\n * List memories eligible to be considered for direct-answer.\n * Callers are expected to return only active, non-superseded memories\n * in the requested namespace; the wiring will cheaply re-filter on\n * trust zone and taxonomy bucket and hand the rest to the eligibility\n * module, which applies the full gate ladder.\n */\n listCandidateMemories(options: {\n namespace: string;\n abortSignal?: AbortSignal;\n }): Promise<MemoryFile[]>;\n /**\n * Resolve the trust-zone record for a memory. Returns `null` when\n * the memory has no trust-zone record (treated as not trusted).\n */\n trustZoneFor(memoryId: string): Promise<TrustZoneName | null>;\n /**\n * Resolve a calibrated importance score in [0, 1] for a memory.\n */\n importanceFor(memory: MemoryFile): number;\n /**\n * Taxonomy used to classify memories into direct-answer buckets.\n */\n taxonomy: Taxonomy;\n}\n\nexport interface DirectAnswerWiringInput {\n query: string;\n namespace: string;\n config: Pick<\n PluginConfig,\n | \"recallDirectAnswerTokenOverlapFloor\"\n | \"recallDirectAnswerImportanceFloor\"\n | \"recallDirectAnswerAmbiguityMargin\"\n | \"recallDirectAnswerEligibleTaxonomyBuckets\"\n >;\n /**\n * Direct-answer capability gate, resolved once at the recall-operation entry\n * via `resolveCapabilities(config).recallDirectAnswer` (issue #1523). This\n * is the sole gate — the function no longer reads the config flag directly.\n * Callers MUST pass the resolved capability so the whole operation agrees on\n * a single gate value.\n */\n enabled: boolean;\n sources: DirectAnswerSources;\n queryEntityRefs?: string[];\n abortSignal?: AbortSignal;\n}\n\n/**\n * Attempt direct-answer resolution. Returns the eligibility verdict\n * produced by `isDirectAnswerEligible` with candidates materialized\n * from the caller-supplied sources.\n */\nexport async function tryDirectAnswer(\n input: DirectAnswerWiringInput,\n): Promise<DirectAnswerResult> {\n const { query, namespace, config, enabled, sources, queryEntityRefs, abortSignal } = input;\n\n const eligibilityConfig: DirectAnswerConfig = {\n enabled,\n tokenOverlapFloor: config.recallDirectAnswerTokenOverlapFloor,\n importanceFloor: config.recallDirectAnswerImportanceFloor,\n ambiguityMargin: config.recallDirectAnswerAmbiguityMargin,\n eligibleTaxonomyBuckets: config.recallDirectAnswerEligibleTaxonomyBuckets,\n };\n\n // Short-circuit disabled case before touching any I/O.\n if (!eligibilityConfig.enabled) {\n return isDirectAnswerEligible({\n query,\n candidates: [],\n config: eligibilityConfig,\n queryEntityRefs,\n });\n }\n\n // Short-circuit empty-query case before any I/O. isDirectAnswerEligible\n // deterministically returns reason \"empty-query\" when the query\n // normalizes to zero searchable tokens; there's no point materializing\n // candidates just to reach the same verdict, and doing so would\n // surface avoidable upstream errors for requests that should exit\n // immediately.\n if (normalizeRecallTokens(query).length === 0) {\n return isDirectAnswerEligible({\n query,\n candidates: [],\n config: eligibilityConfig,\n queryEntityRefs,\n });\n }\n\n throwIfAborted(abortSignal, \"direct-answer wiring aborted\");\n const memories = await sources.listCandidateMemories({ namespace, abortSignal });\n throwIfAborted(abortSignal, \"direct-answer wiring aborted\");\n const candidates: DirectAnswerCandidate[] = [];\n\n for (const memory of memories) {\n // Throw rather than returning a partial verdict — a mid-loop abort\n // that left competing candidates unprocessed could otherwise surface\n // a spurious \"eligible\" result that the ambiguity gate never got a\n // chance to reject. The check repeats after every await so an\n // abort that lands during the in-flight I/O on the final memory\n // (after which no further iteration would exist) still stops us.\n throwIfAborted(abortSignal, \"direct-answer wiring aborted\");\n\n const trustZone = await sources.trustZoneFor(memory.frontmatter.id);\n throwIfAborted(abortSignal, \"direct-answer wiring aborted\");\n\n // Cheap pre-filter: non-trusted memories can't qualify, so skip\n // taxonomy and importance resolution for them.\n if (trustZone !== \"trusted\") continue;\n\n const decision = resolveCategory(\n memory.content,\n memory.frontmatter.category,\n sources.taxonomy,\n );\n const taxonomyBucket = decision.categoryId;\n if (!eligibilityConfig.eligibleTaxonomyBuckets.includes(taxonomyBucket)) continue;\n\n const importanceScore = sources.importanceFor(memory);\n\n candidates.push({\n memory,\n trustZone,\n taxonomyBucket,\n importanceScore,\n });\n }\n\n // Final check — if abort landed during the trust-zone await for the\n // last memory, the loop condition no longer fires. Guard before we\n // hand candidates to the eligibility gate.\n throwIfAborted(abortSignal, \"direct-answer wiring aborted\");\n\n return isDirectAnswerEligible({\n query,\n candidates,\n config: eligibilityConfig,\n queryEntityRefs,\n });\n}\n"],"mappings":"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","names":["alternatives"]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveCorpusNamespaceRoots
3
- } from "./chunk-MYI3RKI6.js";
3
+ } from "./chunk-SYU5JOBQ.js";
4
4
  import {
5
5
  capabilityAllowsNamespace
6
6
  } from "./chunk-MZWSOLMT.js";
@@ -200,4 +200,4 @@ async function readAggregateExtractionWatermark(options) {
200
200
  export {
201
201
  readAggregateExtractionWatermark
202
202
  };
203
- //# sourceMappingURL=chunk-QTXNS3HB.js.map
203
+ //# sourceMappingURL=chunk-WCWIV2JH.js.map
@@ -7,10 +7,10 @@ import {
7
7
  import {
8
8
  listMemoryGovernanceRuns,
9
9
  readMemoryGovernanceRunArtifact
10
- } from "./chunk-3TDAA7VA.js";
10
+ } from "./chunk-6NMZXEJ7.js";
11
11
  import {
12
12
  StorageManager
13
- } from "./chunk-Q5XKKDFQ.js";
13
+ } from "./chunk-5SZ6CLGJ.js";
14
14
  import {
15
15
  normalizeProjectionPreview,
16
16
  normalizeProjectionTags
@@ -1005,4 +1005,4 @@ export {
1005
1005
  verifyMemoryProjection,
1006
1006
  repairMemoryProjection
1007
1007
  };
1008
- //# sourceMappingURL=chunk-6UKSOXAO.js.map
1008
+ //# sourceMappingURL=chunk-WQ6TRWAE.js.map
@@ -9,14 +9,14 @@ import {
9
9
  } from "./chunk-666A3MOW.js";
10
10
  import {
11
11
  rebuildMemoryLifecycleLedger
12
- } from "./chunk-Q6OL23WM.js";
12
+ } from "./chunk-Z4UPRZR6.js";
13
13
  import {
14
14
  planNamespaceMaintenance,
15
15
  runNamespaceMaintenanceBatchPlan
16
- } from "./chunk-QQYHYW2N.js";
16
+ } from "./chunk-PQODT53H.js";
17
17
  import {
18
18
  rebuildMemoryProjection
19
- } from "./chunk-6UKSOXAO.js";
19
+ } from "./chunk-WQ6TRWAE.js";
20
20
  import {
21
21
  activityDayWindow,
22
22
  activityDigestPath,
@@ -1719,4 +1719,4 @@ export {
1719
1719
  ActivitySyncScheduler,
1720
1720
  MaintenanceScheduler
1721
1721
  };
1722
- //# sourceMappingURL=chunk-CBY54QYW.js.map
1722
+ //# sourceMappingURL=chunk-X6HNXVXS.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isValidCapsuleSince
3
- } from "./chunk-VDX2J7OX.js";
3
+ } from "./chunk-5W7CTZ2E.js";
4
4
  import {
5
5
  CAPSULE_ID_PATTERN
6
6
  } from "./chunk-WEHSQBFR.js";
@@ -475,4 +475,4 @@ export {
475
475
  actionConfidenceRequestSchema,
476
476
  validateRequest
477
477
  };
478
- //# sourceMappingURL=chunk-DGUVXXAU.js.map
478
+ //# sourceMappingURL=chunk-XFJUPJD7.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isNamespaceKind
3
- } from "./chunk-KFB4YNXM.js";
3
+ } from "./chunk-G5F4MXXC.js";
4
4
  import {
5
5
  EngramAccessInputError
6
6
  } from "./chunk-2Z24E5W2.js";
@@ -40,4 +40,4 @@ export {
40
40
  positiveIntQueryParam,
41
41
  optionalNamespaceKindQueryParam
42
42
  };
43
- //# sourceMappingURL=chunk-JPWSYHLB.js.map
43
+ //# sourceMappingURL=chunk-YGSDWO3U.js.map
@@ -296,4 +296,4 @@ async function searchHarmonicRetrieval(options) {
296
296
  export {
297
297
  searchHarmonicRetrieval
298
298
  };
299
- //# sourceMappingURL=chunk-GBVRVYF4.js.map
299
+ //# sourceMappingURL=chunk-YINSSARY.js.map