@remnic/core 9.63.12 → 9.64.1

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 (403) hide show
  1. package/dist/access-admin-ops-surface.d.ts +11 -11
  2. package/dist/access-admin-ops-surface.js +15 -15
  3. package/dist/access-authorization-probe.d.ts +11 -11
  4. package/dist/access-authorization-probe.js +16 -16
  5. package/dist/access-boundary.d.ts +11 -11
  6. package/dist/access-boundary.js +15 -15
  7. package/dist/access-cli.js +49 -49
  8. package/dist/access-coding-context-resolution.d.ts +1 -1
  9. package/dist/access-extraction-force-flush.d.ts +11 -11
  10. package/dist/access-extraction-force-flush.js +15 -15
  11. package/dist/access-health-types.d.ts +1 -1
  12. package/dist/access-http-lcm-compaction.d.ts +11 -11
  13. package/dist/access-http-lifecycle-flush.d.ts +11 -11
  14. package/dist/access-http-offline-stream.d.ts +11 -11
  15. package/dist/access-http-query.d.ts +2 -2
  16. package/dist/access-http-query.js +17 -17
  17. package/dist/access-http.d.ts +12 -12
  18. package/dist/access-http.js +26 -26
  19. package/dist/access-identity-continuity-surface.d.ts +9 -9
  20. package/dist/access-identity-continuity-surface.js +15 -15
  21. package/dist/access-lcm-surface.d.ts +11 -11
  22. package/dist/access-lcm-surface.js +15 -15
  23. package/dist/access-mcp.d.ts +11 -11
  24. package/dist/access-mcp.js +20 -20
  25. package/dist/access-memory-search-fanout.d.ts +2 -2
  26. package/dist/{access-namespace-preflight-CrF0FKaz.d.ts → access-namespace-preflight-Dj9uR4Cq.d.ts} +1 -1
  27. package/dist/access-namespace-preflight.d.ts +3 -3
  28. package/dist/access-namespace-preflight.js +15 -15
  29. package/dist/access-observe-write-surface.d.ts +11 -11
  30. package/dist/access-observe-write-surface.js +15 -15
  31. package/dist/access-offline-manifest.d.ts +9 -9
  32. package/dist/access-operations-batch.js +16 -16
  33. package/dist/access-operations.d.ts +11 -11
  34. package/dist/access-operations.js +19 -19
  35. package/dist/access-recall-concurrency.d.ts +11 -11
  36. package/dist/access-recall-concurrency.js +15 -15
  37. package/dist/access-recall-response.d.ts +11 -11
  38. package/dist/access-recall-response.js +15 -15
  39. package/dist/access-recall-surface.d.ts +11 -11
  40. package/dist/access-recall-surface.js +15 -15
  41. package/dist/{access-service-U6jiERic.d.ts → access-service-Bd0lzaHp.d.ts} +7 -7
  42. package/dist/access-service-helpers.d.ts +11 -11
  43. package/dist/access-service.d.ts +11 -11
  44. package/dist/access-service.js +15 -15
  45. package/dist/access-surface-catalog.d.ts +11 -11
  46. package/dist/access-surface-catalog.js +17 -17
  47. package/dist/access-wearables-meetings-surface.d.ts +3 -3
  48. package/dist/action-confidence.d.ts +1 -1
  49. package/dist/active-memory-bridge.d.ts +1 -1
  50. package/dist/active-recall.d.ts +1 -1
  51. package/dist/active-recall.js +1 -1
  52. package/dist/ambient-provenance.d.ts +1 -1
  53. package/dist/artifact-search.d.ts +1 -1
  54. package/dist/behavior-learner.d.ts +1 -1
  55. package/dist/behavior-signals.d.ts +1 -1
  56. package/dist/bootstrap.d.ts +9 -9
  57. package/dist/briefing-window.d.ts +2 -2
  58. package/dist/briefing.d.ts +2 -2
  59. package/dist/briefing.js +3 -3
  60. package/dist/buffer-surprise-report.d.ts +1 -1
  61. package/dist/buffer-turn-helpers.d.ts +1 -1
  62. package/dist/buffer.d.ts +2 -2
  63. package/dist/buffer.js +2 -2
  64. package/dist/bulk-import/index.d.ts +3 -3
  65. package/dist/calibration.d.ts +1 -1
  66. package/dist/capabilities.d.ts +1 -1
  67. package/dist/{catalog-C0KIwZqR.d.ts → catalog-rKYbN7zF.d.ts} +1 -1
  68. package/dist/causal-behavior.d.ts +1 -1
  69. package/dist/causal-consolidation.d.ts +1 -1
  70. package/dist/causal-consolidation.js +4 -4
  71. package/dist/causal-trajectory-graph.d.ts +1 -1
  72. package/dist/{chunk-5SZ6CLGJ.js → chunk-2RZCOG63.js} +3 -2
  73. package/dist/{chunk-5SZ6CLGJ.js.map → chunk-2RZCOG63.js.map} +1 -1
  74. package/dist/{chunk-7DRSWPUV.js → chunk-3CYVTO6A.js} +3 -3
  75. package/dist/{chunk-LJQGQUNS.js → chunk-4FSCGYTQ.js} +2 -2
  76. package/dist/{chunk-HP6B732E.js → chunk-4KKVDOCD.js} +24 -24
  77. package/dist/{chunk-36XS2ASP.js → chunk-5Q5BEWJ3.js} +2 -2
  78. package/dist/{chunk-4XN35YQD.js → chunk-5TBO7CDR.js} +29 -1
  79. package/dist/chunk-5TBO7CDR.js.map +1 -0
  80. package/dist/{chunk-BYFKJXIR.js → chunk-6I6IOMKS.js} +2 -2
  81. package/dist/{chunk-YI25J2JD.js → chunk-7D3TTGHY.js} +22 -13
  82. package/dist/chunk-7D3TTGHY.js.map +1 -0
  83. package/dist/{chunk-4IIDTPSK.js → chunk-7X35RPN3.js} +2 -2
  84. package/dist/{chunk-FEP45MYY.js → chunk-AGC3Q53R.js} +2 -2
  85. package/dist/{chunk-ZWYXSF2T.js → chunk-AL43367I.js} +96 -4
  86. package/dist/chunk-AL43367I.js.map +1 -0
  87. package/dist/{chunk-WCWIV2JH.js → chunk-B2GICNOJ.js} +2 -2
  88. package/dist/{chunk-BTBAHTQ5.js → chunk-CI6YIT5S.js} +2 -2
  89. package/dist/{chunk-CUDSA46O.js → chunk-CUIAHZPZ.js} +2 -2
  90. package/dist/{chunk-BTUIHRRR.js → chunk-D267K4V5.js} +2 -2
  91. package/dist/{chunk-QICOU4RY.js → chunk-DLZBOEJY.js} +2 -2
  92. package/dist/{chunk-AR253JBM.js → chunk-DPPTG6VJ.js} +1 -1
  93. package/dist/chunk-DPPTG6VJ.js.map +1 -0
  94. package/dist/{chunk-BPLPGOUJ.js → chunk-DRS3OX77.js} +2 -2
  95. package/dist/{chunk-3F3CVVDS.js → chunk-DTQ3OB7O.js} +2 -2
  96. package/dist/{chunk-Z4UPRZR6.js → chunk-DZ2AVS2H.js} +2 -2
  97. package/dist/{chunk-YINSSARY.js → chunk-EAWJSY2Z.js} +1 -1
  98. package/dist/{chunk-NWHKHBL4.js → chunk-FMGTFMT3.js} +9 -9
  99. package/dist/{chunk-57WMVU4D.js → chunk-GSQDPL45.js} +3 -3
  100. package/dist/{chunk-UUYQWKHO.js → chunk-IHPYTG6F.js} +2 -2
  101. package/dist/{chunk-XREXYQ5U.js → chunk-IPUUMLSM.js} +21 -21
  102. package/dist/{chunk-SQ3EGGII.js → chunk-J3JEW5CT.js} +2 -2
  103. package/dist/{chunk-VCEE4YNA.js → chunk-JE3AKPOO.js} +2 -2
  104. package/dist/{chunk-IUSV4XJC.js → chunk-KOE3RLNN.js} +2 -2
  105. package/dist/{chunk-WQ6TRWAE.js → chunk-NMQXUGTU.js} +3 -3
  106. package/dist/{chunk-V2YH7T6T.js → chunk-OTVHRZZD.js} +2 -2
  107. package/dist/{chunk-77E7LLMV.js → chunk-OWAYQK5V.js} +8 -8
  108. package/dist/{chunk-YGSDWO3U.js → chunk-P4SD7BSA.js} +2 -2
  109. package/dist/{chunk-G5F4MXXC.js → chunk-Q3IRE6E4.js} +2 -2
  110. package/dist/{chunk-HZXO2CJ6.js → chunk-QHNO6AND.js} +2 -2
  111. package/dist/{chunk-5OOTHWGJ.js → chunk-RMB22Q3R.js} +2 -2
  112. package/dist/{chunk-BB2LH5JM.js → chunk-RNORDDD6.js} +11 -1
  113. package/dist/chunk-RNORDDD6.js.map +1 -0
  114. package/dist/{chunk-BS75WJBH.js → chunk-UIYYS2YI.js} +4 -4
  115. package/dist/{chunk-SYU5JOBQ.js → chunk-UWSETW6O.js} +2 -2
  116. package/dist/{chunk-CK3DZ6OE.js → chunk-VCNGVU62.js} +2 -2
  117. package/dist/{chunk-DIJCMHUE.js → chunk-VSKA2ATE.js} +2 -2
  118. package/dist/{chunk-PQODT53H.js → chunk-WDFXRHOZ.js} +3 -3
  119. package/dist/{chunk-6NMZXEJ7.js → chunk-WNO5W2TP.js} +2 -2
  120. package/dist/{chunk-RFFCBYBD.js → chunk-XBRGJJK7.js} +2 -2
  121. package/dist/{chunk-R5AWIILH.js → chunk-XFAWGUNX.js} +2 -2
  122. package/dist/{chunk-JASFZQ76.js → chunk-XSPRZZEX.js} +3 -3
  123. package/dist/{chunk-EHC3FIJ4.js → chunk-Y5ZIQFWH.js} +2 -2
  124. package/dist/{chunk-6IKXAAJI.js → chunk-YY63AMGP.js} +2 -2
  125. package/dist/{chunk-7ML7STOD.js → chunk-ZGGTIBWN.js} +2 -2
  126. package/dist/{chunk-X6HNXVXS.js → chunk-ZUIVJ3BB.js} +4 -4
  127. package/dist/{cli-BsaYHAH9.d.ts → cli-0dDmOsJ8.d.ts} +5 -5
  128. package/dist/cli.d.ts +13 -13
  129. package/dist/cli.js +39 -39
  130. package/dist/coding/pre-action-gate.d.ts +1 -1
  131. package/dist/compounding/engine.d.ts +2 -2
  132. package/dist/compounding/engine.js +3 -3
  133. package/dist/compounding/preference-consolidator.d.ts +1 -1
  134. package/dist/compression-optimizer.d.ts +1 -1
  135. package/dist/config.d.ts +1 -1
  136. package/dist/config.js +1 -1
  137. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  138. package/dist/connectors/codex-materialize-runner.js +3 -3
  139. package/dist/connectors/codex-materialize.d.ts +1 -1
  140. package/dist/connectors/index.d.ts +1 -1
  141. package/dist/connectors/index.js +4 -4
  142. package/dist/consolidation-provenance-check.d.ts +2 -2
  143. package/dist/consolidation-undo.d.ts +2 -2
  144. package/dist/contradiction/index.d.ts +2 -2
  145. package/dist/converge-config.d.ts +1 -1
  146. package/dist/convergence-refresh.d.ts +2 -2
  147. package/dist/convergence-refresh.js +5 -5
  148. package/dist/conversation-index/backend.d.ts +1 -1
  149. package/dist/conversation-index/chunker.d.ts +1 -1
  150. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  151. package/dist/conversation-index/indexer.d.ts +1 -1
  152. package/dist/conversation-index/search.d.ts +1 -1
  153. package/dist/corpus-watermark.d.ts +1 -1
  154. package/dist/corpus-watermark.js +5 -5
  155. package/dist/day-summary.d.ts +1 -1
  156. package/dist/delinearize.d.ts +1 -1
  157. package/dist/dependency-propagation-config.d.ts +1 -1
  158. package/dist/{dependency-propagation-delivery-Cph4PnBe.d.ts → dependency-propagation-delivery-Cr8u-XwC.d.ts} +1 -1
  159. package/dist/direct-answer-wiring.d.ts +1 -1
  160. package/dist/direct-answer.d.ts +1 -1
  161. package/dist/embedding-fallback.d.ts +1 -1
  162. package/dist/enrichment/index.d.ts +1 -1
  163. package/dist/entity-origin-fields.d.ts +1 -1
  164. package/dist/entity-retrieval.d.ts +2 -2
  165. package/dist/entity-retrieval.js +3 -3
  166. package/dist/entity-schema.d.ts +1 -1
  167. package/dist/episodic-context.d.ts +1 -1
  168. package/dist/explicit-capture.d.ts +9 -9
  169. package/dist/external-wiki-access.d.ts +11 -11
  170. package/dist/external-wiki-access.js +16 -16
  171. package/dist/external-wiki-collection-registration.d.ts +1 -1
  172. package/dist/external-wiki-collection.d.ts +1 -1
  173. package/dist/external-wiki-mcp-tools.d.ts +11 -11
  174. package/dist/extraction-error-classification.d.ts +1 -1
  175. package/dist/extraction-faithfulness.d.ts +1 -1
  176. package/dist/extraction-judge-telemetry.d.ts +1 -1
  177. package/dist/extraction-judge-training.d.ts +1 -1
  178. package/dist/extraction-judge.d.ts +1 -1
  179. package/dist/extraction-liveness.d.ts +1 -1
  180. package/dist/extraction-normalization.d.ts +1 -1
  181. package/dist/extraction-prompt.d.ts +1 -1
  182. package/dist/extraction-source-grounding-rules.d.ts +1 -1
  183. package/dist/extraction-source-grounding.d.ts +1 -1
  184. package/dist/extraction.d.ts +1 -1
  185. package/dist/extraction.js +8 -8
  186. package/dist/fallback-llm.d.ts +1 -1
  187. package/dist/graph-dashboard-diff.d.ts +1 -1
  188. package/dist/graph-dashboard-key.d.ts +1 -1
  189. package/dist/graph-dashboard-parser.d.ts +1 -1
  190. package/dist/graph-edge-reinforcement.d.ts +1 -1
  191. package/dist/graph-path-reconstruction.d.ts +1 -1
  192. package/dist/graph-path-scoring.d.ts +1 -1
  193. package/dist/graph-snapshot.d.ts +1 -1
  194. package/dist/graph.d.ts +1 -1
  195. package/dist/harmonic-retrieval.js +1 -1
  196. package/dist/importance.d.ts +1 -1
  197. package/dist/importers/index.d.ts +1 -1
  198. package/dist/in-flight-reads.d.ts +1 -1
  199. package/dist/index.d.ts +21 -21
  200. package/dist/index.js +49 -49
  201. package/dist/intent.d.ts +1 -1
  202. package/dist/lcm/engine.d.ts +1 -1
  203. package/dist/lcm/index.d.ts +1 -1
  204. package/dist/lcm/tools.d.ts +1 -1
  205. package/dist/lifecycle.d.ts +1 -1
  206. package/dist/live-connectors-runner.d.ts +1 -1
  207. package/dist/local-llm.d.ts +1 -1
  208. package/dist/local-model-endpoint.d.ts +1 -1
  209. package/dist/maintenance/memory-governance.d.ts +1 -1
  210. package/dist/maintenance/memory-governance.js +3 -3
  211. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +2 -2
  212. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +3 -3
  213. package/dist/maintenance/rebuild-memory-projection.d.ts +2 -2
  214. package/dist/maintenance/rebuild-memory-projection.js +4 -4
  215. package/dist/{maintenance-BNq31xpo.d.ts → maintenance-BpNjuZk4.d.ts} +3 -3
  216. package/dist/mcp-memory-inspector-app.d.ts +11 -11
  217. package/dist/memory-action-policy.d.ts +1 -1
  218. package/dist/memory-cache.d.ts +1 -1
  219. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  220. package/dist/memory-projection-store.d.ts +1 -1
  221. package/dist/memory-provenance.d.ts +1 -1
  222. package/dist/memory-snapshot.d.ts +1 -1
  223. package/dist/memory-worth-outcomes.d.ts +2 -2
  224. package/dist/models-json.d.ts +1 -1
  225. package/dist/namespaces/migrate.d.ts +3 -3
  226. package/dist/namespaces/migrate.js +4 -4
  227. package/dist/namespaces/principal.d.ts +1 -1
  228. package/dist/namespaces/search.d.ts +1 -1
  229. package/dist/namespaces/storage.d.ts +3 -3
  230. package/dist/namespaces/storage.js +3 -3
  231. package/dist/native-knowledge.d.ts +1 -1
  232. package/dist/offline-sync-impression-drain.d.ts +1 -1
  233. package/dist/operator-doctor-corpus.d.ts +1 -1
  234. package/dist/operator-doctor-corpus.js +6 -6
  235. package/dist/operator-doctor-replica.d.ts +1 -1
  236. package/dist/operator-toolkit.d.ts +3 -3
  237. package/dist/operator-toolkit.js +12 -12
  238. package/dist/orchestration/compression-guideline-coordinator.d.ts +2 -2
  239. package/dist/orchestration/maintenance.d.ts +4 -4
  240. package/dist/orchestration/maintenance.js +9 -9
  241. package/dist/{orchestrator-CBuUOP2J.d.ts → orchestrator-B3ZQ8CTJ.d.ts} +8 -8
  242. package/dist/orchestrator.d.ts +9 -9
  243. package/dist/orchestrator.js +49 -49
  244. package/dist/patterns-cli.d.ts +1 -1
  245. package/dist/{pipeline-CW_Q4WvX.d.ts → pipeline-q5emoXD6.d.ts} +1 -1
  246. package/dist/policy-runtime.d.ts +1 -1
  247. package/dist/proactive-contention.d.ts +1 -1
  248. package/dist/provenance.d.ts +1 -1
  249. package/dist/{public-http-jMlmLny4.d.ts → public-http-CQN-i7Ai.d.ts} +1 -1
  250. package/dist/{qmd-q-cAzYuC.d.ts → qmd-YC6YGphs.d.ts} +1 -1
  251. package/dist/qmd-preflight.d.ts +2 -2
  252. package/dist/qmd-recall-cache.d.ts +1 -1
  253. package/dist/qmd.d.ts +2 -2
  254. package/dist/recall-concurrency-config.d.ts +1 -1
  255. package/dist/recall-disclosure-escalation.d.ts +1 -1
  256. package/dist/recall-explain-renderer.d.ts +1 -1
  257. package/dist/recall-explain-renderer.js +3 -3
  258. package/dist/recall-memory-map.d.ts +1 -1
  259. package/dist/recall-planner-llm.d.ts +1 -1
  260. package/dist/recall-state.d.ts +1 -1
  261. package/dist/recall-tag-filter.d.ts +1 -1
  262. package/dist/recall-timings.d.ts +1 -1
  263. package/dist/recall-xray-cli.d.ts +1 -1
  264. package/dist/recall-xray-cli.js +4 -4
  265. package/dist/recall-xray-renderer.d.ts +1 -1
  266. package/dist/recall-xray-renderer.js +3 -3
  267. package/dist/recall-xray.d.ts +1 -1
  268. package/dist/recall-xray.js +2 -2
  269. package/dist/reconcile/cursor.d.ts +1 -1
  270. package/dist/reconcile/manifest.d.ts +1 -1
  271. package/dist/reconcile/plan.d.ts +1 -1
  272. package/dist/replay/normalizers/chatgpt.d.ts +1 -1
  273. package/dist/replay/normalizers/claude.d.ts +1 -1
  274. package/dist/replay/normalizers/openclaw.d.ts +1 -1
  275. package/dist/replay/normalizers/shared.d.ts +1 -1
  276. package/dist/replay/runner.d.ts +1 -1
  277. package/dist/replay/types.d.ts +1 -1
  278. package/dist/replica-divergence.d.ts +1 -1
  279. package/dist/replica-peers-config.d.ts +1 -1
  280. package/dist/resolve-auth-token.d.ts +1 -1
  281. package/dist/resume-bundles.js +2 -2
  282. package/dist/retrieval-agents.d.ts +2 -2
  283. package/dist/retrieval-tiers.d.ts +1 -1
  284. package/dist/routing/engine.d.ts +1 -1
  285. package/dist/routing/store.d.ts +1 -1
  286. package/dist/salvage-envelope.d.ts +1 -1
  287. package/dist/{scope-profiles-CIr4mXgp.d.ts → scope-profiles-De8F7YQ6.d.ts} +1 -1
  288. package/dist/search/embed-helper.d.ts +1 -1
  289. package/dist/search/factory.d.ts +1 -1
  290. package/dist/search/index.d.ts +1 -1
  291. package/dist/search/lancedb-backend.d.ts +1 -1
  292. package/dist/search/meilisearch-backend.d.ts +1 -1
  293. package/dist/search/noop-backend.d.ts +1 -1
  294. package/dist/search/orama-backend.d.ts +1 -1
  295. package/dist/search/port.d.ts +1 -1
  296. package/dist/search/remote-backend.d.ts +1 -1
  297. package/dist/{semantic-consolidation-BZ6J46j-.d.ts → semantic-consolidation-Bf-hm2LQ.d.ts} +1 -1
  298. package/dist/semantic-consolidation.d.ts +2 -2
  299. package/dist/semantic-consolidation.js +4 -4
  300. package/dist/semantic-rule-promotion.js +3 -3
  301. package/dist/semantic-rule-verifier.d.ts +1 -1
  302. package/dist/semantic-rule-verifier.js +3 -3
  303. package/dist/{service-CCl4iyyY.d.ts → service-D83osSRn.d.ts} +2 -2
  304. package/dist/session-observer-bands.d.ts +1 -1
  305. package/dist/session-observer-state.d.ts +1 -1
  306. package/dist/shared-context/manager.d.ts +1 -1
  307. package/dist/signal.d.ts +1 -1
  308. package/dist/source-agent-qualifier.d.ts +1 -1
  309. package/dist/source-agent-qualifier.js +7 -7
  310. package/dist/{storage-BPXmJKIt.d.ts → storage-BHWbpbhj.d.ts} +1 -1
  311. package/dist/storage.d.ts +2 -2
  312. package/dist/storage.js +2 -2
  313. package/dist/summarizer.d.ts +1 -1
  314. package/dist/summary-snapshot.d.ts +1 -1
  315. package/dist/support-passport/index.d.ts +14 -14
  316. package/dist/support-passport/index.js +18 -18
  317. package/dist/temporal-supersession.d.ts +2 -2
  318. package/dist/temporal-timeline-recall.d.ts +1 -1
  319. package/dist/temporal-validity.d.ts +1 -1
  320. package/dist/threading.d.ts +1 -1
  321. package/dist/tier-migration.d.ts +2 -2
  322. package/dist/tier-routing.d.ts +1 -1
  323. package/dist/topics.d.ts +1 -1
  324. package/dist/transcript.d.ts +1 -1
  325. package/dist/trust-score-stage.d.ts +1 -1
  326. package/dist/trust-score.d.ts +1 -1
  327. package/dist/{types-CltSWcND.d.ts → types-CpgsN-Gb.d.ts} +24 -3
  328. package/dist/types.d.ts +1 -1
  329. package/dist/types.js +1 -1
  330. package/dist/utility-runtime.d.ts +1 -1
  331. package/dist/verified-recall.js +3 -3
  332. package/dist/write-envelope.d.ts +1 -1
  333. package/package.json +2 -2
  334. package/src/config.ts +5 -6
  335. package/src/connectors/index.test.ts +24 -0
  336. package/src/connectors/index.ts +2 -0
  337. package/src/connectors/prime-agent.ts +38 -0
  338. package/src/location/cli.ts +163 -0
  339. package/src/location/config.test.ts +75 -0
  340. package/src/location/config.ts +105 -0
  341. package/src/location/intervals.test.ts +202 -0
  342. package/src/location/intervals.ts +221 -0
  343. package/src/location/parse-companions.ts +12 -0
  344. package/src/location/pipeline.test.ts +324 -0
  345. package/src/location/pipeline.ts +245 -0
  346. package/src/location/recall-exclusion.test.ts +36 -0
  347. package/src/location/registry.test.ts +74 -0
  348. package/src/location/registry.ts +54 -0
  349. package/src/location/store.test.ts +170 -0
  350. package/src/location/store.ts +478 -0
  351. package/src/location/types.ts +95 -0
  352. package/src/orchestration/generic-recall-paths.ts +17 -0
  353. package/src/orchestration/orchestrator-helpers.ts +22 -0
  354. package/src/orchestration/qmd-result-resolver.ts +1 -0
  355. package/src/types.ts +2 -3
  356. package/dist/chunk-4XN35YQD.js.map +0 -1
  357. package/dist/chunk-AR253JBM.js.map +0 -1
  358. package/dist/chunk-BB2LH5JM.js.map +0 -1
  359. package/dist/chunk-YI25J2JD.js.map +0 -1
  360. package/dist/chunk-ZWYXSF2T.js.map +0 -1
  361. /package/dist/{chunk-7DRSWPUV.js.map → chunk-3CYVTO6A.js.map} +0 -0
  362. /package/dist/{chunk-LJQGQUNS.js.map → chunk-4FSCGYTQ.js.map} +0 -0
  363. /package/dist/{chunk-HP6B732E.js.map → chunk-4KKVDOCD.js.map} +0 -0
  364. /package/dist/{chunk-36XS2ASP.js.map → chunk-5Q5BEWJ3.js.map} +0 -0
  365. /package/dist/{chunk-BYFKJXIR.js.map → chunk-6I6IOMKS.js.map} +0 -0
  366. /package/dist/{chunk-4IIDTPSK.js.map → chunk-7X35RPN3.js.map} +0 -0
  367. /package/dist/{chunk-FEP45MYY.js.map → chunk-AGC3Q53R.js.map} +0 -0
  368. /package/dist/{chunk-WCWIV2JH.js.map → chunk-B2GICNOJ.js.map} +0 -0
  369. /package/dist/{chunk-BTBAHTQ5.js.map → chunk-CI6YIT5S.js.map} +0 -0
  370. /package/dist/{chunk-CUDSA46O.js.map → chunk-CUIAHZPZ.js.map} +0 -0
  371. /package/dist/{chunk-BTUIHRRR.js.map → chunk-D267K4V5.js.map} +0 -0
  372. /package/dist/{chunk-QICOU4RY.js.map → chunk-DLZBOEJY.js.map} +0 -0
  373. /package/dist/{chunk-BPLPGOUJ.js.map → chunk-DRS3OX77.js.map} +0 -0
  374. /package/dist/{chunk-3F3CVVDS.js.map → chunk-DTQ3OB7O.js.map} +0 -0
  375. /package/dist/{chunk-Z4UPRZR6.js.map → chunk-DZ2AVS2H.js.map} +0 -0
  376. /package/dist/{chunk-YINSSARY.js.map → chunk-EAWJSY2Z.js.map} +0 -0
  377. /package/dist/{chunk-NWHKHBL4.js.map → chunk-FMGTFMT3.js.map} +0 -0
  378. /package/dist/{chunk-57WMVU4D.js.map → chunk-GSQDPL45.js.map} +0 -0
  379. /package/dist/{chunk-UUYQWKHO.js.map → chunk-IHPYTG6F.js.map} +0 -0
  380. /package/dist/{chunk-XREXYQ5U.js.map → chunk-IPUUMLSM.js.map} +0 -0
  381. /package/dist/{chunk-SQ3EGGII.js.map → chunk-J3JEW5CT.js.map} +0 -0
  382. /package/dist/{chunk-VCEE4YNA.js.map → chunk-JE3AKPOO.js.map} +0 -0
  383. /package/dist/{chunk-IUSV4XJC.js.map → chunk-KOE3RLNN.js.map} +0 -0
  384. /package/dist/{chunk-WQ6TRWAE.js.map → chunk-NMQXUGTU.js.map} +0 -0
  385. /package/dist/{chunk-V2YH7T6T.js.map → chunk-OTVHRZZD.js.map} +0 -0
  386. /package/dist/{chunk-77E7LLMV.js.map → chunk-OWAYQK5V.js.map} +0 -0
  387. /package/dist/{chunk-YGSDWO3U.js.map → chunk-P4SD7BSA.js.map} +0 -0
  388. /package/dist/{chunk-G5F4MXXC.js.map → chunk-Q3IRE6E4.js.map} +0 -0
  389. /package/dist/{chunk-HZXO2CJ6.js.map → chunk-QHNO6AND.js.map} +0 -0
  390. /package/dist/{chunk-5OOTHWGJ.js.map → chunk-RMB22Q3R.js.map} +0 -0
  391. /package/dist/{chunk-BS75WJBH.js.map → chunk-UIYYS2YI.js.map} +0 -0
  392. /package/dist/{chunk-SYU5JOBQ.js.map → chunk-UWSETW6O.js.map} +0 -0
  393. /package/dist/{chunk-CK3DZ6OE.js.map → chunk-VCNGVU62.js.map} +0 -0
  394. /package/dist/{chunk-DIJCMHUE.js.map → chunk-VSKA2ATE.js.map} +0 -0
  395. /package/dist/{chunk-PQODT53H.js.map → chunk-WDFXRHOZ.js.map} +0 -0
  396. /package/dist/{chunk-6NMZXEJ7.js.map → chunk-WNO5W2TP.js.map} +0 -0
  397. /package/dist/{chunk-RFFCBYBD.js.map → chunk-XBRGJJK7.js.map} +0 -0
  398. /package/dist/{chunk-R5AWIILH.js.map → chunk-XFAWGUNX.js.map} +0 -0
  399. /package/dist/{chunk-JASFZQ76.js.map → chunk-XSPRZZEX.js.map} +0 -0
  400. /package/dist/{chunk-EHC3FIJ4.js.map → chunk-Y5ZIQFWH.js.map} +0 -0
  401. /package/dist/{chunk-6IKXAAJI.js.map → chunk-YY63AMGP.js.map} +0 -0
  402. /package/dist/{chunk-7ML7STOD.js.map → chunk-ZGGTIBWN.js.map} +0 -0
  403. /package/dist/{chunk-X6HNXVXS.js.map → chunk-ZUIVJ3BB.js.map} +0 -0
@@ -0,0 +1,95 @@
1
+ /**
2
+ * Location context subsystem — shared types (issue #2044).
3
+ *
4
+ * A host-agnostic foundation: the provider contract, the observation/day
5
+ * shapes, and health-check results. No HTTP client lives here — providers are
6
+ * registered from host adapters (a future provider package is one such
7
+ * adapter), keeping `@remnic/core` free of host SDKs and network specifics.
8
+ *
9
+ * All timestamps are UTC ISO-8601; day bucketing is half-open [start, end).
10
+ */
11
+
12
+ /** A named place the user was observed at. */
13
+ export interface LocationPlace {
14
+ /** Provider-stable place identifier. */
15
+ id: string;
16
+ /** Human-readable label, already redacted by the provider. */
17
+ label: string;
18
+ kind?: "home" | "work" | "poi" | "transit" | "other";
19
+ /** Present only when coordinate retention is enabled. */
20
+ latitude?: number;
21
+ longitude?: number;
22
+ }
23
+
24
+ /** One place observation at a single instant, from a single provider. */
25
+ export interface LocationObservation {
26
+ /** UTC ISO-8601 observation instant. */
27
+ observedAtUtc: string;
28
+ place: LocationPlace;
29
+ /** Provider confidence in [0,1], when reported. */
30
+ confidence?: number;
31
+ }
32
+
33
+ /** One page of observations from a provider fetch. */
34
+ export interface LocationObservationPage {
35
+ observations: LocationObservation[];
36
+ nextCursor: string | null;
37
+ }
38
+
39
+ /** Result of a provider auth/health probe. */
40
+ export interface LocationProviderCheck {
41
+ ok: boolean;
42
+ detail?: string;
43
+ }
44
+
45
+ /**
46
+ * Provider contract for a location source. Implemented by host adapters and
47
+ * registered in `registry.ts`; core never statically imports a provider
48
+ * package, so à-la-carte installs stay partial (a source whose provider is
49
+ * not registered is skipped, not an error).
50
+ */
51
+ export interface LocationProvider {
52
+ /** Stable provider id (registry key; matches a config source id). */
53
+ id: string;
54
+ displayName: string;
55
+ /** Probe connectivity/auth without mutating anything. */
56
+ verify(signal?: AbortSignal): Promise<LocationProviderCheck>;
57
+ /** Fetch every observation in the half-open [startUtc, endUtc) window. */
58
+ fetchObservations(opts: {
59
+ startUtc: string;
60
+ endUtc: string;
61
+ cursor?: string | null;
62
+ signal?: AbortSignal;
63
+ }): Promise<LocationObservationPage>;
64
+ }
65
+
66
+ /** One configured location source: a registered provider plus its toggle. */
67
+ export interface LocationSourceConfig {
68
+ /** Must match a registered provider id. */
69
+ id: string;
70
+ /** `false` short-circuits this source only. */
71
+ enabled: boolean;
72
+ }
73
+
74
+ /** Opt-in location synchronization settings. */
75
+ export interface LocationConfig {
76
+ /** Master gate: `false` short-circuits every location path. */
77
+ enabled: boolean;
78
+ /** IANA timezone used to bucket observations into local days. */
79
+ timezone: string;
80
+ /** Number of local days to synchronize per run; integer 1..90. */
81
+ syncDays: number;
82
+ /**
83
+ * When `false` (the default), place coordinates are dropped before any
84
+ * persistence, rendering, or error reporting — only place labels remain.
85
+ */
86
+ retainCoordinates: boolean;
87
+ sources: LocationSourceConfig[];
88
+ }
89
+
90
+ /** A time-resolved place visit derived from consecutive observations. */
91
+ export interface LocationSegment {
92
+ startUtc: string;
93
+ endUtc: string;
94
+ place: LocationPlace;
95
+ }
@@ -6,6 +6,7 @@ import { ALL_CATEGORY_DIRS } from "../utils/category-dir.js";
6
6
  import {
7
7
  isActivityDigestPath,
8
8
  isArtifactMemoryPath,
9
+ isLocationDayPath,
9
10
  isMeetingRecordPath,
10
11
  } from "./orchestrator-helpers.js";
11
12
 
@@ -133,6 +134,7 @@ export function isSearchExcludedPath(
133
134
  if (
134
135
  isArtifactMemoryPath(candidate) ||
135
136
  isNamespacedActivityDigestPath(candidate, policy.memoryDir) ||
137
+ isNamespacedLocationDayPath(candidate, policy.memoryDir) ||
136
138
  isMeetingRecordPath(candidate)
137
139
  ) {
138
140
  return true;
@@ -160,6 +162,21 @@ function isNamespacedActivityDigestPath(candidate: string, memoryDir?: string):
160
162
  return isActivityDigestPath(namespaced[2] ?? "", memoryDir);
161
163
  }
162
164
 
165
+ /**
166
+ * The location day-file check, applied against the NAMESPACE root a hit came
167
+ * from — same rationale as `isNamespacedActivityDigestPath`: a namespaced
168
+ * search rewrites hits to absolute paths beneath `…/namespaces/<ns>/`, so the
169
+ * root-aware predicate is re-measured against the namespace's own root.
170
+ */
171
+ function isNamespacedLocationDayPath(candidate: string, memoryDir?: string): boolean {
172
+ if (isLocationDayPath(candidate, memoryDir)) return true;
173
+ if (memoryDir === undefined || memoryDir.length === 0) return false;
174
+ const relative = path.relative(memoryDir, path.resolve(memoryDir, candidate));
175
+ const namespaced = /^namespaces[\\/]([^\\/]+)[\\/](.*)$/.exec(relative);
176
+ if (namespaced === null) return false;
177
+ return isLocationDayPath(namespaced[2] ?? "", memoryDir);
178
+ }
179
+
163
180
  /** A path as given, plus its form with a leading COLLECTION segment removed. */
164
181
  function collectionSpellings(
165
182
  filePath: string,
@@ -643,6 +643,28 @@ export function isActivityDigestPath(filePath: string, memoryRoot?: string): boo
643
643
  return ACTIVITY_DIGEST_ANYWHERE.test(filePath);
644
644
  }
645
645
 
646
+ /** Exactly `locations/<YYYY-MM-DD>.md`, at the top level of a memory root. */
647
+ const LOCATION_DAY_TOPLEVEL = /^locations[\\/]\d{4}-\d{2}-\d{2}\.md$/i;
648
+ /** The day-file shape anywhere in a path (root-unaware best-effort). */
649
+ const LOCATION_DAY_ANYWHERE = /(?:^|[\\/])locations[\\/]\d{4}-\d{2}-\d{2}\.md$/i;
650
+
651
+ /**
652
+ * Location day documents (issue #2044) live at
653
+ * `<memoryRoot>/locations/<YYYY-MM-DD>.md` — a dedicated searchable surface,
654
+ * never generic recall (place history must not auto-inject into ordinary
655
+ * prompts). Root-aware exactly like `isActivityDigestPath`: with a root, only
656
+ * the top-level `locations/<date>.md` matches, so an ordinary memory nested
657
+ * under a category (e.g. `facts/locations-note.md`) stays recallable; without
658
+ * a root, falls back to the day-file shape anywhere (best-effort).
659
+ */
660
+ export function isLocationDayPath(filePath: string, memoryRoot?: string): boolean {
661
+ if (memoryRoot !== undefined && memoryRoot.length > 0) {
662
+ const relative = path.relative(memoryRoot, path.resolve(memoryRoot, filePath));
663
+ return LOCATION_DAY_TOPLEVEL.test(relative);
664
+ }
665
+ return LOCATION_DAY_ANYWHERE.test(filePath);
666
+ }
667
+
646
668
  export function buildCompressionGuidelinesMarkdown(
647
669
  events: MemoryActionEvent[],
648
670
  generatedAtIso: string = new Date().toISOString(),
@@ -47,6 +47,7 @@ const INTERNAL_QMD_ROOTS = new Set([
47
47
  "config",
48
48
  "entities",
49
49
  "identity",
50
+ "locations",
50
51
  "meetings",
51
52
  "namespaces",
52
53
  "state",
package/src/types.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import type { BoundedJsonlStateConfig } from "./bounded-jsonl-state.js";
2
2
  import type { MeetingsConfig } from "./meetings/types.js";
3
+ import type { LocationConfig } from "./location/types.js";
3
4
  import type { ActivityConfig } from "./activity/types.js";
4
5
  import type { WearablesConfig } from "./wearables/types.js";
5
6
  import type { ExtractionLivenessConfig } from "./extraction-liveness.js";
@@ -1232,10 +1233,8 @@ export interface PluginConfig extends BoundedJsonlStateConfig, SecurityConfig {
1232
1233
  */
1233
1234
  wearables: WearablesConfig;
1234
1235
  activity: ActivityConfig;
1235
- /** Retrospective meeting intelligence (issue #1900): detect + fuse meetings
1236
- * from already-ingested audio + screen activity. Disabled by default.
1237
- */
1238
1236
  meetings: MeetingsConfig;
1237
+ location: LocationConfig;
1239
1238
  /**
1240
1239
  * At-rest encryption configuration (issue #690 PR 3/4).
1241
1240
  *