@remnic/core 9.3.689 → 9.3.691

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 (322) hide show
  1. package/dist/access-boundary.d.ts +7 -6
  2. package/dist/access-boundary.js +19 -18
  3. package/dist/access-cli.js +111 -47
  4. package/dist/access-cli.js.map +1 -1
  5. package/dist/access-http.d.ts +6 -5
  6. package/dist/access-http.js +25 -24
  7. package/dist/access-mcp.d.ts +13 -5
  8. package/dist/access-mcp.js +22 -21
  9. package/dist/access-operations.d.ts +13 -7
  10. package/dist/access-operations.js +23 -20
  11. package/dist/access-schema.js +3 -3
  12. package/dist/{access-service-DmCHJ4cH.d.ts → access-service-CKnFdxH-.d.ts} +63 -3
  13. package/dist/access-service.d.ts +6 -5
  14. package/dist/access-service.js +18 -17
  15. package/dist/access-surface-catalog.d.ts +6 -5
  16. package/dist/access-surface-catalog.js +2 -0
  17. package/dist/access-surface-catalog.js.map +1 -1
  18. package/dist/action-confidence.d.ts +1 -1
  19. package/dist/active-memory-bridge.d.ts +1 -1
  20. package/dist/active-recall.d.ts +1 -1
  21. package/dist/active-recall.js +1 -1
  22. package/dist/adapters/index.js +4 -4
  23. package/dist/adapters/registry.js +2 -2
  24. package/dist/{auto-sync-NUQWSFQD.js → auto-sync-RWXT6P5M.js} +5 -5
  25. package/dist/behavior-learner.d.ts +1 -1
  26. package/dist/behavior-signals.d.ts +1 -1
  27. package/dist/bootstrap.d.ts +5 -4
  28. package/dist/briefing.d.ts +2 -1
  29. package/dist/briefing.js +6 -5
  30. package/dist/buffer-surprise-report.d.ts +1 -1
  31. package/dist/buffer.d.ts +2 -1
  32. package/dist/calibration.d.ts +1 -1
  33. package/dist/calibration.js +2 -2
  34. package/dist/capabilities.d.ts +1 -1
  35. package/dist/{catalog-COqWZlZ6.d.ts → catalog-BEWLjdOr.d.ts} +2 -2
  36. package/dist/causal-behavior.d.ts +1 -1
  37. package/dist/causal-consolidation.d.ts +1 -1
  38. package/dist/causal-consolidation.js +9 -8
  39. package/dist/causal-consolidation.js.map +1 -1
  40. package/dist/{chunk-GTDH3IUH.js → chunk-2D27ODNX.js} +2 -2
  41. package/dist/{chunk-3K37VPM3.js → chunk-3BRA3N5A.js} +2 -2
  42. package/dist/{chunk-4FE2K57M.js → chunk-3VVH6ZQW.js} +2 -2
  43. package/dist/{chunk-FIVDN2SM.js → chunk-4RGWCRIJ.js} +4 -4
  44. package/dist/{chunk-AGJH5ISO.js → chunk-5KBNNUXS.js} +2 -2
  45. package/dist/{chunk-OV4D5T7V.js → chunk-66HROLW5.js} +2 -2
  46. package/dist/{chunk-Z2M6YTAJ.js → chunk-7UVDIWLL.js} +34 -5
  47. package/dist/chunk-7UVDIWLL.js.map +1 -0
  48. package/dist/{chunk-QANVLERJ.js → chunk-ADUAF5EV.js} +2 -2
  49. package/dist/{chunk-LLONI6PY.js → chunk-AFWEUTMS.js} +2 -2
  50. package/dist/{chunk-W63OY3J7.js → chunk-D3DNGQNQ.js} +3 -3
  51. package/dist/{chunk-T422SYM6.js → chunk-DCWIQFNA.js} +5 -5
  52. package/dist/{chunk-NGFEWFNK.js → chunk-DQHZA7Y3.js} +1 -1
  53. package/dist/chunk-DQHZA7Y3.js.map +1 -0
  54. package/dist/{chunk-OBXTMFZQ.js → chunk-ECZPWSB5.js} +2 -2
  55. package/dist/{chunk-BFVPIKDY.js → chunk-GCOSQBQ2.js} +3 -3
  56. package/dist/{chunk-SAEZIIID.js → chunk-IPJD7WJH.js} +2 -2
  57. package/dist/{chunk-KQAFEZQX.js → chunk-IPLYGWQF.js} +5 -5
  58. package/dist/{chunk-MDYG7VI7.js → chunk-IREVVFTM.js} +10 -1
  59. package/dist/{chunk-MDYG7VI7.js.map → chunk-IREVVFTM.js.map} +1 -1
  60. package/dist/{chunk-RKNJBZ55.js → chunk-JBPKEARU.js} +4 -4
  61. package/dist/{chunk-RHXFYIHA.js → chunk-K7I24ZO2.js} +42 -27
  62. package/dist/chunk-K7I24ZO2.js.map +1 -0
  63. package/dist/{chunk-XU7363OX.js → chunk-KO6OL4I7.js} +617 -23
  64. package/dist/chunk-KO6OL4I7.js.map +1 -0
  65. package/dist/{chunk-UTYBJR7M.js → chunk-MCV2DD6F.js} +2 -2
  66. package/dist/{chunk-3FC6LW6T.js → chunk-MRFVMSTR.js} +2 -2
  67. package/dist/{chunk-WDXCNJSF.js → chunk-MXZWKOOR.js} +2 -2
  68. package/dist/{chunk-QSQW54U5.js → chunk-NCRDCTEJ.js} +33 -10
  69. package/dist/chunk-NCRDCTEJ.js.map +1 -0
  70. package/dist/{chunk-6O6A6YUO.js → chunk-NUZ3N445.js} +7 -7
  71. package/dist/{chunk-UHUZXWDX.js → chunk-OOO7ZKOD.js} +16 -5
  72. package/dist/chunk-OOO7ZKOD.js.map +1 -0
  73. package/dist/{chunk-GS55WYRL.js → chunk-QFG23CRE.js} +2 -2
  74. package/dist/{chunk-UDJLF3BO.js → chunk-QLRYXOAD.js} +2 -2
  75. package/dist/chunk-QNG35H27.js +2190 -0
  76. package/dist/chunk-QNG35H27.js.map +1 -0
  77. package/dist/{chunk-A4HH2EWA.js → chunk-QVG4LAQO.js} +2 -2
  78. package/dist/{chunk-4N3TFFPH.js → chunk-SAC5V6JT.js} +2 -2
  79. package/dist/chunk-SVOZFLIQ.js +16 -0
  80. package/dist/chunk-SVOZFLIQ.js.map +1 -0
  81. package/dist/{chunk-JZBFL7RI.js → chunk-TJ5IIQIR.js} +468 -2265
  82. package/dist/chunk-TJ5IIQIR.js.map +1 -0
  83. package/dist/{chunk-UXLZOVCN.js → chunk-TSGREOYY.js} +38 -6
  84. package/dist/chunk-TSGREOYY.js.map +1 -0
  85. package/dist/{chunk-B4XVLHJA.js → chunk-U2OBZSGG.js} +2 -2
  86. package/dist/{chunk-STOEE37X.js → chunk-UOCLRM74.js} +2 -2
  87. package/dist/{chunk-A7UZR6RA.js → chunk-UTUYAPLY.js} +14 -1
  88. package/dist/chunk-UTUYAPLY.js.map +1 -0
  89. package/dist/{chunk-JPETDXED.js → chunk-UUMYB3FR.js} +2 -2
  90. package/dist/{chunk-BLIWOONZ.js → chunk-VFVG4NS2.js} +33 -20
  91. package/dist/chunk-VFVG4NS2.js.map +1 -0
  92. package/dist/{chunk-OWFY6NGQ.js → chunk-VH2DHBHG.js} +2 -2
  93. package/dist/chunk-VH2DHBHG.js.map +1 -0
  94. package/dist/{chunk-WIHPNY65.js → chunk-W4ELOUNX.js} +2 -2
  95. package/dist/{chunk-VX6OBUDW.js → chunk-WIKNVFBS.js} +2 -2
  96. package/dist/{chunk-2SNKUSQC.js → chunk-X5J3JZR3.js} +4 -4
  97. package/dist/{chunk-PH3HOKYW.js → chunk-ZLXGFAML.js} +2 -2
  98. package/dist/{cli-D8nZ2MPH.d.ts → cli-CrSW_KRq.d.ts} +3 -3
  99. package/dist/cli.d.ts +7 -6
  100. package/dist/cli.js +40 -38
  101. package/dist/compounding/engine.d.ts +2 -1
  102. package/dist/compounding/engine.js +6 -5
  103. package/dist/compounding/preference-consolidator.d.ts +1 -1
  104. package/dist/compression-optimizer.d.ts +1 -1
  105. package/dist/config.d.ts +1 -1
  106. package/dist/config.js +1 -1
  107. package/dist/connectors/codex-materialize-runner.d.ts +1 -1
  108. package/dist/connectors/codex-materialize-runner.js +6 -5
  109. package/dist/connectors/codex-materialize.d.ts +1 -1
  110. package/dist/connectors/index.d.ts +1 -1
  111. package/dist/connectors/index.js +6 -5
  112. package/dist/consolidation-provenance-check.d.ts +2 -1
  113. package/dist/consolidation-undo.d.ts +2 -1
  114. package/dist/contradiction/index.d.ts +2 -1
  115. package/dist/contradiction/index.js +4 -4
  116. package/dist/conversation-index/backend.d.ts +1 -1
  117. package/dist/conversation-index/backend.js +2 -2
  118. package/dist/conversation-index/chunker.d.ts +1 -1
  119. package/dist/conversation-index/faiss-adapter.d.ts +1 -1
  120. package/dist/conversation-index/indexer.d.ts +1 -1
  121. package/dist/conversation-index/search.d.ts +1 -1
  122. package/dist/day-summary.d.ts +1 -1
  123. package/dist/delinearize.d.ts +1 -1
  124. package/dist/direct-answer-wiring.d.ts +1 -1
  125. package/dist/direct-answer.d.ts +1 -1
  126. package/dist/embedding-fallback.d.ts +1 -1
  127. package/dist/enrichment/index.d.ts +1 -1
  128. package/dist/entity-retrieval.d.ts +2 -1
  129. package/dist/entity-retrieval.js +6 -5
  130. package/dist/entity-schema.d.ts +1 -1
  131. package/dist/event-time.d.ts +35 -0
  132. package/dist/event-time.js +325 -0
  133. package/dist/event-time.js.map +1 -0
  134. package/dist/explicit-capture.d.ts +5 -4
  135. package/dist/extraction-judge-telemetry.d.ts +1 -1
  136. package/dist/extraction-judge-training.d.ts +1 -1
  137. package/dist/extraction-judge.d.ts +1 -1
  138. package/dist/extraction-judge.js +3 -3
  139. package/dist/extraction.d.ts +1 -1
  140. package/dist/extraction.js +3 -3
  141. package/dist/fallback-llm.d.ts +1 -1
  142. package/dist/fallback-llm.js +2 -2
  143. package/dist/identity-continuity.d.ts +1 -1
  144. package/dist/importance.d.ts +1 -1
  145. package/dist/index.d.ts +10 -9
  146. package/dist/index.js +78 -75
  147. package/dist/index.js.map +1 -1
  148. package/dist/intent.d.ts +1 -1
  149. package/dist/lcm/engine.d.ts +1 -1
  150. package/dist/lcm/engine.js +2 -2
  151. package/dist/lcm/index.d.ts +1 -1
  152. package/dist/lcm/index.js +2 -2
  153. package/dist/lcm/tools.d.ts +1 -1
  154. package/dist/lifecycle.d.ts +1 -1
  155. package/dist/live-connectors-runner.d.ts +1 -1
  156. package/dist/local-llm.d.ts +1 -1
  157. package/dist/maintenance/memory-governance.d.ts +1 -1
  158. package/dist/maintenance/memory-governance.js +6 -5
  159. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +6 -5
  160. package/dist/maintenance/rebuild-memory-projection.js +7 -6
  161. package/dist/mcp-memory-inspector-app.d.ts +6 -5
  162. package/dist/memory-action-policy.d.ts +1 -1
  163. package/dist/memory-cache.d.ts +1 -1
  164. package/dist/memory-lifecycle-ledger-utils.d.ts +1 -1
  165. package/dist/memory-projection-store.d.ts +1 -1
  166. package/dist/memory-provenance.d.ts +1 -1
  167. package/dist/memory-worth-outcomes.d.ts +2 -1
  168. package/dist/models-json.d.ts +1 -1
  169. package/dist/namespaces/migrate.d.ts +3 -2
  170. package/dist/namespaces/migrate.js +11 -10
  171. package/dist/namespaces/principal.d.ts +1 -1
  172. package/dist/namespaces/search.d.ts +1 -1
  173. package/dist/namespaces/search.js +4 -4
  174. package/dist/namespaces/storage.d.ts +3 -2
  175. package/dist/namespaces/storage.js +6 -5
  176. package/dist/native-knowledge.d.ts +1 -1
  177. package/dist/operator-toolkit.d.ts +2 -1
  178. package/dist/operator-toolkit.js +15 -13
  179. package/dist/{orchestrator-CA6ouzBn.d.ts → orchestrator-DvswGK76.d.ts} +147 -3
  180. package/dist/orchestrator.d.ts +5 -4
  181. package/dist/orchestrator.js +37 -35
  182. package/dist/patterns-cli.d.ts +1 -1
  183. package/dist/policy-runtime.d.ts +1 -1
  184. package/dist/provenance.d.ts +1 -1
  185. package/dist/qmd-recall-cache.d.ts +1 -1
  186. package/dist/qmd.d.ts +1 -1
  187. package/dist/recall-disclosure-escalation.d.ts +1 -1
  188. package/dist/recall-explain-renderer.d.ts +1 -1
  189. package/dist/recall-explain-renderer.js +3 -3
  190. package/dist/recall-planner-llm.d.ts +1 -1
  191. package/dist/recall-planner-llm.js +2 -2
  192. package/dist/recall-state.d.ts +1 -1
  193. package/dist/recall-tag-filter.d.ts +1 -1
  194. package/dist/recall-xray-cli.d.ts +1 -1
  195. package/dist/recall-xray-cli.js +4 -4
  196. package/dist/recall-xray-renderer.d.ts +1 -1
  197. package/dist/recall-xray-renderer.js +3 -3
  198. package/dist/recall-xray.d.ts +1 -1
  199. package/dist/recall-xray.js +2 -2
  200. package/dist/resolve-auth-token.d.ts +1 -1
  201. package/dist/resume-bundles.js +2 -2
  202. package/dist/retrieval-agents.d.ts +1 -1
  203. package/dist/retrieval-tiers.d.ts +1 -1
  204. package/dist/routing/engine.d.ts +1 -1
  205. package/dist/routing/store.d.ts +1 -1
  206. package/dist/schemas.d.ts +10 -10
  207. package/dist/search/embed-helper.d.ts +1 -1
  208. package/dist/search/factory.d.ts +1 -1
  209. package/dist/search/factory.js +3 -3
  210. package/dist/search/index.d.ts +1 -1
  211. package/dist/search/index.js +3 -3
  212. package/dist/search/lancedb-backend.d.ts +1 -1
  213. package/dist/search/meilisearch-backend.d.ts +1 -1
  214. package/dist/search/noop-backend.d.ts +1 -1
  215. package/dist/search/orama-backend.d.ts +1 -1
  216. package/dist/search/port.d.ts +1 -1
  217. package/dist/search/remote-backend.d.ts +1 -1
  218. package/dist/{semantic-consolidation-CWch5uM7.d.ts → semantic-consolidation-D5U0Mrdb.d.ts} +1 -1
  219. package/dist/semantic-consolidation.d.ts +2 -2
  220. package/dist/semantic-consolidation.js +7 -6
  221. package/dist/semantic-rule-promotion.js +6 -5
  222. package/dist/semantic-rule-verifier.d.ts +1 -1
  223. package/dist/semantic-rule-verifier.js +6 -5
  224. package/dist/session-observer-bands.d.ts +1 -1
  225. package/dist/session-observer-state.d.ts +1 -1
  226. package/dist/shared-context/manager.d.ts +1 -1
  227. package/dist/signal.d.ts +1 -1
  228. package/dist/storage.d.ts +6 -28
  229. package/dist/storage.js +8 -6
  230. package/dist/structured-attributes.d.ts +29 -0
  231. package/dist/structured-attributes.js +8 -0
  232. package/dist/structured-attributes.js.map +1 -0
  233. package/dist/summarizer.d.ts +1 -1
  234. package/dist/summarizer.js +3 -3
  235. package/dist/summary-snapshot.d.ts +1 -1
  236. package/dist/temporal-supersession.d.ts +2 -1
  237. package/dist/temporal-supersession.js +2 -2
  238. package/dist/temporal-validity.d.ts +22 -2
  239. package/dist/temporal-validity.js +3 -1
  240. package/dist/threading.d.ts +1 -1
  241. package/dist/tier-migration.d.ts +2 -1
  242. package/dist/tier-routing.d.ts +1 -1
  243. package/dist/topics.d.ts +1 -1
  244. package/dist/transcript.d.ts +1 -1
  245. package/dist/transfer/autodetect.js +1 -1
  246. package/dist/transfer/backup.js +1 -1
  247. package/dist/transfer/capsule-export.js +2 -2
  248. package/dist/{types-Dm5xxVrr.d.ts → types-2NoBoRBM.d.ts} +38 -0
  249. package/dist/types.d.ts +1 -1
  250. package/dist/types.js +1 -1
  251. package/dist/utility-runtime.d.ts +1 -1
  252. package/dist/verified-recall.js +6 -5
  253. package/package.json +2 -2
  254. package/src/access-boundary.ts +2 -1
  255. package/src/access-cli.test.ts +40 -0
  256. package/src/access-cli.ts +90 -2
  257. package/src/access-http.ts +35 -6
  258. package/src/access-mcp.ts +34 -0
  259. package/src/access-operations.ts +45 -0
  260. package/src/access-service.ts +60 -0
  261. package/src/access-surface-catalog.test.ts +1 -1
  262. package/src/access-surface-catalog.ts +2 -0
  263. package/src/bitemporal-frontmatter.test.ts +177 -0
  264. package/src/cli.ts +18 -0
  265. package/src/coding/architecture-card.test.ts +544 -0
  266. package/src/coding/architecture-card.ts +687 -0
  267. package/src/coding/architecture-surfaces.test.ts +579 -0
  268. package/src/coding/architecture-surfaces.ts +457 -0
  269. package/src/config.ts +13 -0
  270. package/src/event-time.test.ts +514 -0
  271. package/src/event-time.ts +548 -0
  272. package/src/maintenance/namespace-maintenance-fanout.test.ts +595 -0
  273. package/src/maintenance/namespace-maintenance-fanout.ts +318 -0
  274. package/src/maintenance/namespace-planner.ts +74 -16
  275. package/src/operator-toolkit.ts +25 -0
  276. package/src/orchestrator.ts +171 -1
  277. package/src/storage.ts +40 -20
  278. package/src/structured-attributes.ts +39 -0
  279. package/src/temporal-validity.ts +34 -0
  280. package/src/types.ts +38 -0
  281. package/dist/chunk-A7UZR6RA.js.map +0 -1
  282. package/dist/chunk-BLIWOONZ.js.map +0 -1
  283. package/dist/chunk-JZBFL7RI.js.map +0 -1
  284. package/dist/chunk-NGFEWFNK.js.map +0 -1
  285. package/dist/chunk-OWFY6NGQ.js.map +0 -1
  286. package/dist/chunk-QSQW54U5.js.map +0 -1
  287. package/dist/chunk-RHXFYIHA.js.map +0 -1
  288. package/dist/chunk-UHUZXWDX.js.map +0 -1
  289. package/dist/chunk-UXLZOVCN.js.map +0 -1
  290. package/dist/chunk-XU7363OX.js.map +0 -1
  291. package/dist/chunk-Z2M6YTAJ.js.map +0 -1
  292. /package/dist/{auto-sync-NUQWSFQD.js.map → auto-sync-RWXT6P5M.js.map} +0 -0
  293. /package/dist/{chunk-GTDH3IUH.js.map → chunk-2D27ODNX.js.map} +0 -0
  294. /package/dist/{chunk-3K37VPM3.js.map → chunk-3BRA3N5A.js.map} +0 -0
  295. /package/dist/{chunk-4FE2K57M.js.map → chunk-3VVH6ZQW.js.map} +0 -0
  296. /package/dist/{chunk-FIVDN2SM.js.map → chunk-4RGWCRIJ.js.map} +0 -0
  297. /package/dist/{chunk-AGJH5ISO.js.map → chunk-5KBNNUXS.js.map} +0 -0
  298. /package/dist/{chunk-OV4D5T7V.js.map → chunk-66HROLW5.js.map} +0 -0
  299. /package/dist/{chunk-QANVLERJ.js.map → chunk-ADUAF5EV.js.map} +0 -0
  300. /package/dist/{chunk-LLONI6PY.js.map → chunk-AFWEUTMS.js.map} +0 -0
  301. /package/dist/{chunk-W63OY3J7.js.map → chunk-D3DNGQNQ.js.map} +0 -0
  302. /package/dist/{chunk-T422SYM6.js.map → chunk-DCWIQFNA.js.map} +0 -0
  303. /package/dist/{chunk-OBXTMFZQ.js.map → chunk-ECZPWSB5.js.map} +0 -0
  304. /package/dist/{chunk-BFVPIKDY.js.map → chunk-GCOSQBQ2.js.map} +0 -0
  305. /package/dist/{chunk-SAEZIIID.js.map → chunk-IPJD7WJH.js.map} +0 -0
  306. /package/dist/{chunk-KQAFEZQX.js.map → chunk-IPLYGWQF.js.map} +0 -0
  307. /package/dist/{chunk-RKNJBZ55.js.map → chunk-JBPKEARU.js.map} +0 -0
  308. /package/dist/{chunk-UTYBJR7M.js.map → chunk-MCV2DD6F.js.map} +0 -0
  309. /package/dist/{chunk-3FC6LW6T.js.map → chunk-MRFVMSTR.js.map} +0 -0
  310. /package/dist/{chunk-WDXCNJSF.js.map → chunk-MXZWKOOR.js.map} +0 -0
  311. /package/dist/{chunk-6O6A6YUO.js.map → chunk-NUZ3N445.js.map} +0 -0
  312. /package/dist/{chunk-GS55WYRL.js.map → chunk-QFG23CRE.js.map} +0 -0
  313. /package/dist/{chunk-UDJLF3BO.js.map → chunk-QLRYXOAD.js.map} +0 -0
  314. /package/dist/{chunk-A4HH2EWA.js.map → chunk-QVG4LAQO.js.map} +0 -0
  315. /package/dist/{chunk-4N3TFFPH.js.map → chunk-SAC5V6JT.js.map} +0 -0
  316. /package/dist/{chunk-B4XVLHJA.js.map → chunk-U2OBZSGG.js.map} +0 -0
  317. /package/dist/{chunk-STOEE37X.js.map → chunk-UOCLRM74.js.map} +0 -0
  318. /package/dist/{chunk-JPETDXED.js.map → chunk-UUMYB3FR.js.map} +0 -0
  319. /package/dist/{chunk-WIHPNY65.js.map → chunk-W4ELOUNX.js.map} +0 -0
  320. /package/dist/{chunk-VX6OBUDW.js.map → chunk-WIKNVFBS.js.map} +0 -0
  321. /package/dist/{chunk-2SNKUSQC.js.map → chunk-X5J3JZR3.js.map} +0 -0
  322. /package/dist/{chunk-PH3HOKYW.js.map → chunk-ZLXGFAML.js.map} +0 -0
package/dist/schemas.d.ts CHANGED
@@ -351,13 +351,13 @@ declare const ExtractedRelationshipSchema: z.ZodObject<{
351
351
  promptedByQuestion: z.ZodNullable<z.ZodOptional<z.ZodString>>;
352
352
  }, "strip", z.ZodTypeAny, {
353
353
  source: string;
354
- label: string;
355
354
  target: string;
355
+ label: string;
356
356
  promptedByQuestion?: string | null | undefined;
357
357
  }, {
358
358
  source: string;
359
- label: string;
360
359
  target: string;
360
+ label: string;
361
361
  promptedByQuestion?: string | null | undefined;
362
362
  }>;
363
363
  declare const ProactiveExtractionResultSchema: z.ZodObject<{
@@ -620,13 +620,13 @@ declare const ProactiveExtractionResultSchema: z.ZodObject<{
620
620
  promptedByQuestion: z.ZodNullable<z.ZodOptional<z.ZodString>>;
621
621
  }, "strip", z.ZodTypeAny, {
622
622
  source: string;
623
- label: string;
624
623
  target: string;
624
+ label: string;
625
625
  promptedByQuestion?: string | null | undefined;
626
626
  }, {
627
627
  source: string;
628
- label: string;
629
628
  target: string;
629
+ label: string;
630
630
  promptedByQuestion?: string | null | undefined;
631
631
  }>, "many">>>;
632
632
  }, "strip", z.ZodTypeAny, {
@@ -674,8 +674,8 @@ declare const ProactiveExtractionResultSchema: z.ZodObject<{
674
674
  profileUpdates: string[];
675
675
  relationships?: {
676
676
  source: string;
677
- label: string;
678
677
  target: string;
678
+ label: string;
679
679
  promptedByQuestion?: string | null | undefined;
680
680
  }[] | null | undefined;
681
681
  }, {
@@ -723,8 +723,8 @@ declare const ProactiveExtractionResultSchema: z.ZodObject<{
723
723
  profileUpdates: string[];
724
724
  relationships?: {
725
725
  source: string;
726
- label: string;
727
726
  target: string;
727
+ label: string;
728
728
  promptedByQuestion?: string | null | undefined;
729
729
  }[] | null | undefined;
730
730
  }>;
@@ -1002,13 +1002,13 @@ declare const ExtractionResultSchema: z.ZodObject<{
1002
1002
  promptedByQuestion: z.ZodNullable<z.ZodOptional<z.ZodString>>;
1003
1003
  }, "strip", z.ZodTypeAny, {
1004
1004
  source: string;
1005
- label: string;
1006
1005
  target: string;
1006
+ label: string;
1007
1007
  promptedByQuestion?: string | null | undefined;
1008
1008
  }, {
1009
1009
  source: string;
1010
- label: string;
1011
1010
  target: string;
1011
+ label: string;
1012
1012
  promptedByQuestion?: string | null | undefined;
1013
1013
  }>, "many">>>;
1014
1014
  }, "strip", z.ZodTypeAny, {
@@ -1061,8 +1061,8 @@ declare const ExtractionResultSchema: z.ZodObject<{
1061
1061
  profileUpdates: string[];
1062
1062
  relationships?: {
1063
1063
  source: string;
1064
- label: string;
1065
1064
  target: string;
1065
+ label: string;
1066
1066
  promptedByQuestion?: string | null | undefined;
1067
1067
  }[] | null | undefined;
1068
1068
  identityReflection?: string | null | undefined;
@@ -1116,8 +1116,8 @@ declare const ExtractionResultSchema: z.ZodObject<{
1116
1116
  profileUpdates: string[];
1117
1117
  relationships?: {
1118
1118
  source: string;
1119
- label: string;
1120
1119
  target: string;
1120
+ label: string;
1121
1121
  promptedByQuestion?: string | null | undefined;
1122
1122
  }[] | null | undefined;
1123
1123
  identityReflection?: string | null | undefined;
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig } from '../types-Dm5xxVrr.js';
1
+ import { P as PluginConfig } from '../types-2NoBoRBM.js';
2
2
  import { HostEmbeddingProvider } from '../host-embedding-provider.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig } from '../types-Dm5xxVrr.js';
1
+ import { P as PluginConfig } from '../types-2NoBoRBM.js';
2
2
  import { SearchBackend } from './port.js';
3
3
  import { F as FaissConversationIndexAdapter } from '../faiss-adapter-BHecI1fF.js';
4
4
  import { ConversationQmdRuntime, ConversationIndexBackend } from '../conversation-index/backend.js';
@@ -2,7 +2,7 @@ import {
2
2
  createConversationIndexRuntime,
3
3
  createConversationSearchBackend,
4
4
  createSearchBackend
5
- } from "../chunk-JPETDXED.js";
5
+ } from "../chunk-UUMYB3FR.js";
6
6
  import "../chunk-5CEJH5ZN.js";
7
7
  import "../chunk-WRFKZEO6.js";
8
8
  import "../chunk-CYEPCZN5.js";
@@ -11,10 +11,10 @@ import "../chunk-SANZHXY2.js";
11
11
  import "../chunk-AER6MT24.js";
12
12
  import "../chunk-EHISUJFN.js";
13
13
  import "../chunk-CINZGPSJ.js";
14
- import "../chunk-T422SYM6.js";
15
- import "../chunk-SJHM6I4J.js";
14
+ import "../chunk-DCWIQFNA.js";
16
15
  import "../chunk-XBZQRZ6G.js";
17
16
  import "../chunk-KCQA46NR.js";
17
+ import "../chunk-SJHM6I4J.js";
18
18
  import "../chunk-K43PI6DQ.js";
19
19
  import "../chunk-YNQ6DFSV.js";
20
20
  import "../chunk-O75CRYGF.js";
@@ -7,7 +7,7 @@ export { OramaBackend } from './orama-backend.js';
7
7
  export { EmbedHelper } from './embed-helper.js';
8
8
  export { IndexableDocument, scanMemoryDir } from './document-scanner.js';
9
9
  export { createConversationIndexRuntime, createConversationSearchBackend, createSearchBackend } from './factory.js';
10
- import '../types-Dm5xxVrr.js';
10
+ import '../types-2NoBoRBM.js';
11
11
  import '../types-ByK7T3L6.js';
12
12
  import '../index-DJ9QWMw-.js';
13
13
  import '../host-embedding-provider.js';
@@ -2,7 +2,7 @@ import {
2
2
  createConversationIndexRuntime,
3
3
  createConversationSearchBackend,
4
4
  createSearchBackend
5
- } from "../chunk-JPETDXED.js";
5
+ } from "../chunk-UUMYB3FR.js";
6
6
  import {
7
7
  LanceDbBackend
8
8
  } from "../chunk-5CEJH5ZN.js";
@@ -25,10 +25,10 @@ import {
25
25
  EmbedHelper
26
26
  } from "../chunk-EHISUJFN.js";
27
27
  import "../chunk-CINZGPSJ.js";
28
- import "../chunk-T422SYM6.js";
29
- import "../chunk-SJHM6I4J.js";
28
+ import "../chunk-DCWIQFNA.js";
30
29
  import "../chunk-XBZQRZ6G.js";
31
30
  import "../chunk-KCQA46NR.js";
31
+ import "../chunk-SJHM6I4J.js";
32
32
  import "../chunk-K43PI6DQ.js";
33
33
  import "../chunk-YNQ6DFSV.js";
34
34
  import "../chunk-O75CRYGF.js";
@@ -1,6 +1,6 @@
1
1
  import { SearchBackend, SearchQueryOptions, SearchExecutionOptions, SearchResult } from './port.js';
2
2
  import { EmbedHelper } from './embed-helper.js';
3
- import '../types-Dm5xxVrr.js';
3
+ import '../types-2NoBoRBM.js';
4
4
  import '../types-ByK7T3L6.js';
5
5
  import '../index-DJ9QWMw-.js';
6
6
  import '../host-embedding-provider.js';
@@ -1,5 +1,5 @@
1
1
  import { SearchBackend, SearchQueryOptions, SearchExecutionOptions, SearchResult } from './port.js';
2
- import '../types-Dm5xxVrr.js';
2
+ import '../types-2NoBoRBM.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
5
5
 
@@ -1,5 +1,5 @@
1
1
  import { SearchBackend, SearchQueryOptions, SearchExecutionOptions, SearchResult } from './port.js';
2
- import '../types-Dm5xxVrr.js';
2
+ import '../types-2NoBoRBM.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
5
5
 
@@ -1,6 +1,6 @@
1
1
  import { SearchBackend, SearchQueryOptions, SearchExecutionOptions, SearchResult } from './port.js';
2
2
  import { EmbedHelper } from './embed-helper.js';
3
- import '../types-Dm5xxVrr.js';
3
+ import '../types-2NoBoRBM.js';
4
4
  import '../types-ByK7T3L6.js';
5
5
  import '../index-DJ9QWMw-.js';
6
6
  import '../host-embedding-provider.js';
@@ -1,4 +1,4 @@
1
- import { Q as QmdSearchResult } from '../types-Dm5xxVrr.js';
1
+ import { Q as QmdSearchResult } from '../types-2NoBoRBM.js';
2
2
  import '../types-ByK7T3L6.js';
3
3
  import '../index-DJ9QWMw-.js';
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { SearchBackend, SearchQueryOptions, SearchExecutionOptions, SearchResult } from './port.js';
2
- import '../types-Dm5xxVrr.js';
2
+ import '../types-2NoBoRBM.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
5
5
 
@@ -1,4 +1,4 @@
1
- import { P as PluginConfig, g as MemoryFile } from './types-Dm5xxVrr.js';
1
+ import { P as PluginConfig, g as MemoryFile } from './types-2NoBoRBM.js';
2
2
  import { RolloutSummaryInput, MaterializeResult } from './connectors/codex-materialize.js';
3
3
  import { LoggerBackend } from './logger.js';
4
4
  import { SemanticConsolidationLlmOperator } from './consolidation-operator.js';
@@ -1,6 +1,6 @@
1
- import './types-Dm5xxVrr.js';
1
+ import './types-2NoBoRBM.js';
2
2
  import './connectors/codex-materialize.js';
3
- export { C as ConsolidationCluster, O as OperatorAwareConsolidationResult, S as SemanticConsolidationResult, a as buildConsolidationPrompt, b as buildExtensionsBlockForConsolidation, c as buildOperatorAwareConsolidationPrompt, e as chooseConsolidationOperator, f as findSimilarClusters, m as materializeAfterSemanticConsolidation, p as parseConsolidationResponse, g as parseOperatorAwareConsolidationResponse, r as resolveExtensionsRoot } from './semantic-consolidation-CWch5uM7.js';
3
+ export { C as ConsolidationCluster, O as OperatorAwareConsolidationResult, S as SemanticConsolidationResult, a as buildConsolidationPrompt, b as buildExtensionsBlockForConsolidation, c as buildOperatorAwareConsolidationPrompt, e as chooseConsolidationOperator, f as findSimilarClusters, m as materializeAfterSemanticConsolidation, p as parseConsolidationResponse, g as parseOperatorAwareConsolidationResponse, r as resolveExtensionsRoot } from './semantic-consolidation-D5U0Mrdb.js';
4
4
  export { CONSOLIDATION_OPERATORS, ConsolidationOperator, SemanticConsolidationLlmOperator, isConsolidationOperator, isSemanticConsolidationLlmOperator, isValidDerivedFromEntry } from './consolidation-operator.js';
5
5
  import './types-ByK7T3L6.js';
6
6
  import './index-DJ9QWMw-.js';
@@ -7,27 +7,28 @@ import {
7
7
  materializeAfterSemanticConsolidation,
8
8
  parseConsolidationResponse,
9
9
  parseOperatorAwareConsolidationResponse
10
- } from "./chunk-GS55WYRL.js";
11
- import "./chunk-QANVLERJ.js";
10
+ } from "./chunk-QFG23CRE.js";
11
+ import "./chunk-ADUAF5EV.js";
12
12
  import "./chunk-UUH4YQOF.js";
13
13
  import {
14
14
  resolveExtensionsRoot
15
15
  } from "./chunk-JLNBQWZ2.js";
16
16
  import "./chunk-3UXOZBHV.js";
17
- import "./chunk-BLIWOONZ.js";
17
+ import "./chunk-VFVG4NS2.js";
18
18
  import "./chunk-M7XQSUBB.js";
19
19
  import "./chunk-5UZXUTVO.js";
20
20
  import "./chunk-5GPPACXK.js";
21
+ import "./chunk-SVOZFLIQ.js";
21
22
  import "./chunk-J6A3CX5N.js";
22
- import "./chunk-NGFEWFNK.js";
23
+ import "./chunk-DQHZA7Y3.js";
24
+ import "./chunk-SCU65EZI.js";
23
25
  import "./chunk-MB5RSUW6.js";
24
26
  import "./chunk-6KYMPV2O.js";
25
27
  import "./chunk-AWJ2FHCF.js";
26
28
  import "./chunk-42JKGUFJ.js";
27
29
  import "./chunk-RULE4VG5.js";
28
- import "./chunk-SCU65EZI.js";
29
- import "./chunk-DM2T26WE.js";
30
30
  import "./chunk-LDXUBPMO.js";
31
+ import "./chunk-DM2T26WE.js";
31
32
  import "./chunk-FVQJYWH7.js";
32
33
  import {
33
34
  CONSOLIDATION_OPERATORS,
@@ -1,21 +1,22 @@
1
1
  import {
2
2
  promoteSemanticRuleFromMemory,
3
3
  setSemanticRulePromotionTestHooks
4
- } from "./chunk-UTYBJR7M.js";
5
- import "./chunk-BLIWOONZ.js";
4
+ } from "./chunk-MCV2DD6F.js";
5
+ import "./chunk-VFVG4NS2.js";
6
6
  import "./chunk-M7XQSUBB.js";
7
7
  import "./chunk-5UZXUTVO.js";
8
8
  import "./chunk-5GPPACXK.js";
9
+ import "./chunk-SVOZFLIQ.js";
9
10
  import "./chunk-J6A3CX5N.js";
10
- import "./chunk-NGFEWFNK.js";
11
+ import "./chunk-DQHZA7Y3.js";
12
+ import "./chunk-SCU65EZI.js";
11
13
  import "./chunk-MB5RSUW6.js";
12
14
  import "./chunk-6KYMPV2O.js";
13
15
  import "./chunk-AWJ2FHCF.js";
14
16
  import "./chunk-42JKGUFJ.js";
15
17
  import "./chunk-RULE4VG5.js";
16
- import "./chunk-SCU65EZI.js";
17
- import "./chunk-DM2T26WE.js";
18
18
  import "./chunk-LDXUBPMO.js";
19
+ import "./chunk-DM2T26WE.js";
19
20
  import "./chunk-FVQJYWH7.js";
20
21
  import "./chunk-G7D6GZ5J.js";
21
22
  import "./chunk-VF4XKTX3.js";
@@ -1,4 +1,4 @@
1
- import { g as MemoryFile } from './types-Dm5xxVrr.js';
1
+ import { g as MemoryFile } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,21 +1,22 @@
1
1
  import {
2
2
  compareVerifiedSemanticRuleResults,
3
3
  searchVerifiedSemanticRules
4
- } from "./chunk-PH3HOKYW.js";
5
- import "./chunk-BLIWOONZ.js";
4
+ } from "./chunk-ZLXGFAML.js";
5
+ import "./chunk-VFVG4NS2.js";
6
6
  import "./chunk-M7XQSUBB.js";
7
7
  import "./chunk-5UZXUTVO.js";
8
8
  import "./chunk-5GPPACXK.js";
9
+ import "./chunk-SVOZFLIQ.js";
9
10
  import "./chunk-J6A3CX5N.js";
10
- import "./chunk-NGFEWFNK.js";
11
+ import "./chunk-DQHZA7Y3.js";
12
+ import "./chunk-SCU65EZI.js";
11
13
  import "./chunk-MB5RSUW6.js";
12
14
  import "./chunk-6KYMPV2O.js";
13
15
  import "./chunk-AWJ2FHCF.js";
14
16
  import "./chunk-42JKGUFJ.js";
15
17
  import "./chunk-RULE4VG5.js";
16
- import "./chunk-SCU65EZI.js";
17
- import "./chunk-DM2T26WE.js";
18
18
  import "./chunk-LDXUBPMO.js";
19
+ import "./chunk-DM2T26WE.js";
19
20
  import "./chunk-FVQJYWH7.js";
20
21
  import "./chunk-G7D6GZ5J.js";
21
22
  import "./chunk-VF4XKTX3.js";
@@ -1,4 +1,4 @@
1
- import { a1 as SessionObserverBandConfig } from './types-Dm5xxVrr.js';
1
+ import { a1 as SessionObserverBandConfig } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { a1 as SessionObserverBandConfig } from './types-Dm5xxVrr.js';
1
+ import { a1 as SessionObserverBandConfig } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,5 +1,5 @@
1
1
  import { z } from 'zod';
2
- import { P as PluginConfig } from '../types-Dm5xxVrr.js';
2
+ import { P as PluginConfig } from '../types-2NoBoRBM.js';
3
3
  import '../types-ByK7T3L6.js';
4
4
  import '../index-DJ9QWMw-.js';
5
5
 
package/dist/signal.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { at as SignalScanResult } from './types-Dm5xxVrr.js';
1
+ import { at as SignalScanResult } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
package/dist/storage.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import { VersioningConfig } from './page-versioning.js';
2
2
  import { ConsolidationOperator } from './consolidation-operator.js';
3
- import { P as PluginConfig, h as MemoryStatus, M as MemoryCategory, I as ImportanceScore, i as MemoryLink, j as MemoryFrontmatter, g as MemoryFile, E as EntityStructuredSection, k as BufferState, l as MetaState, m as MemoryActionEvent, n as MemoryLifecycleEvent, o as BufferSurpriseEvent, B as BehaviorSignalEvent, C as CompressionGuidelineOptimizerState, p as ContinuityIncidentOpenInput, q as ContinuityIncidentRecord, r as ContinuityIncidentCloseInput, s as ContinuityImprovementLoop, t as ContinuityLoopUpsertInput, u as ContinuityLoopReviewInput, F as FileHygieneConfig, v as EntityRelationship, w as EntityActivityEntry, x as EntityFile, y as AccessTrackingEntry, z as MemoryProjectionCurrentState, D as MemorySummary, T as TopicScore } from './types-Dm5xxVrr.js';
3
+ import { P as PluginConfig, h as MemoryStatus, M as MemoryCategory, I as ImportanceScore, i as MemoryLink, j as MemoryFrontmatter, g as MemoryFile, E as EntityStructuredSection, k as BufferState, l as MetaState, m as MemoryActionEvent, n as MemoryLifecycleEvent, o as BufferSurpriseEvent, B as BehaviorSignalEvent, C as CompressionGuidelineOptimizerState, p as ContinuityIncidentOpenInput, q as ContinuityIncidentRecord, r as ContinuityIncidentCloseInput, s as ContinuityImprovementLoop, t as ContinuityLoopUpsertInput, u as ContinuityLoopReviewInput, F as FileHygieneConfig, v as EntityRelationship, w as EntityActivityEntry, x as EntityFile, y as AccessTrackingEntry, z as MemoryProjectionCurrentState, D as MemorySummary, T as TopicScore } from './types-2NoBoRBM.js';
4
4
  import { ProjectedMemoryBrowseOptions, ProjectedMemoryBrowsePage, readProjectedGovernanceRecord } from './memory-projection-store.js';
5
+ export { stripAttributesSuffix } from './structured-attributes.js';
5
6
  import './types-ByK7T3L6.js';
6
7
  import './index-DJ9QWMw-.js';
7
8
  import './maintenance/memory-governance.js';
@@ -84,32 +85,7 @@ declare class ContentHashIndex {
84
85
  /** Normalize content and compute SHA-256 hash. */
85
86
  static computeHash(content: string): string;
86
87
  }
87
- /**
88
- * Render a structured-attributes map into a stable, canonical string fragment
89
- * suitable for appending to enriched memory content before hashing.
90
- *
91
- * Normalization rules:
92
- * - Keys are trimmed and lowercased (values are trimmed but preserve case)
93
- * - Key-value pairs are sorted alphabetically by normalized key
94
- * - Pairs are joined with "; " and rendered as "key: value"
95
- *
96
- * Using this helper at BOTH the write path (enrichedContent) and the
97
- * dedup-lookup path (dedupContent) guarantees identical output regardless of
98
- * the insertion order or casing used by the caller.
99
- *
100
- * @example
101
- * normalizeAttributePairs({ foo: "bar", BAZ: "qux" })
102
- * // → "baz: qux; foo: bar"
103
- */
104
- /**
105
- * Remove the "[Attributes: ...]" suffix `writeMemory` appends to the
106
- * stored body when structuredAttributes are present, yielding the raw
107
- * fact text for content comparison. Inverse companion of
108
- * `normalizeAttributePairs` enrichment. String operations, not regex —
109
- * CodeQL js/polynomial-redos on a suffix-anchored pattern over
110
- * library-supplied content.
111
- */
112
- declare function stripAttributesSuffix(content: string): string;
88
+
113
89
  declare function normalizeAttributePairs(pairs: Record<string, string>): string;
114
90
  declare function compareEntityTimestamps(left?: string, right?: string): number;
115
91
  declare function fingerprintEntityStructuredFacts(entity: Pick<EntityFile, "structuredSections">): string | undefined;
@@ -411,6 +387,8 @@ declare class StorageManager {
411
387
  memoryKind?: MemoryFrontmatter["memoryKind"];
412
388
  expiresAt?: string;
413
389
  validAt?: string;
390
+ observedAt?: string;
391
+ eventTimeSource?: "extracted" | "assumed";
414
392
  structuredAttributes?: Record<string, string>;
415
393
  /**
416
394
  * When provided, this string is used as the source for the fact-content
@@ -893,4 +871,4 @@ declare class StorageManager {
893
871
  private appendGeneratedMemoryLifecycleEventFailOpen;
894
872
  }
895
873
 
896
- export { ContentHashIndex, type MemoryLifecycleEventWriteOptions, type ReextractJobRequest, StorageManager, compareEntityTimestamps, fingerprintEntityStructuredFacts, isEntitySynthesisStale, normalizeAttributePairs, normalizeEntityName, parseEntityFile, serializeEntityFile, stripAttributesSuffix };
874
+ export { ContentHashIndex, type MemoryLifecycleEventWriteOptions, type ReextractJobRequest, StorageManager, compareEntityTimestamps, fingerprintEntityStructuredFacts, isEntitySynthesisStale, normalizeAttributePairs, normalizeEntityName, parseEntityFile, serializeEntityFile };
package/dist/storage.js CHANGED
@@ -7,22 +7,24 @@ import {
7
7
  normalizeAttributePairs,
8
8
  normalizeEntityName,
9
9
  parseEntityFile,
10
- serializeEntityFile,
11
- stripAttributesSuffix
12
- } from "./chunk-BLIWOONZ.js";
10
+ serializeEntityFile
11
+ } from "./chunk-VFVG4NS2.js";
13
12
  import "./chunk-M7XQSUBB.js";
14
13
  import "./chunk-5UZXUTVO.js";
15
14
  import "./chunk-5GPPACXK.js";
15
+ import {
16
+ stripAttributesSuffix
17
+ } from "./chunk-SVOZFLIQ.js";
16
18
  import "./chunk-J6A3CX5N.js";
17
- import "./chunk-NGFEWFNK.js";
19
+ import "./chunk-DQHZA7Y3.js";
20
+ import "./chunk-SCU65EZI.js";
18
21
  import "./chunk-MB5RSUW6.js";
19
22
  import "./chunk-6KYMPV2O.js";
20
23
  import "./chunk-AWJ2FHCF.js";
21
24
  import "./chunk-42JKGUFJ.js";
22
25
  import "./chunk-RULE4VG5.js";
23
- import "./chunk-SCU65EZI.js";
24
- import "./chunk-DM2T26WE.js";
25
26
  import "./chunk-LDXUBPMO.js";
27
+ import "./chunk-DM2T26WE.js";
26
28
  import "./chunk-FVQJYWH7.js";
27
29
  import "./chunk-G7D6GZ5J.js";
28
30
  import "./chunk-VF4XKTX3.js";
@@ -0,0 +1,29 @@
1
+ /**
2
+ * Shared helpers for the `\n[Attributes: …]` enrichment suffix that
3
+ * `writeMemory` appends to a stored body when `structuredAttributes` are
4
+ * present.
5
+ *
6
+ * Extracted here (out of `storage.ts`) so every reader — the storage
7
+ * manager, the wearable service, and the coding surfaces — strips the suffix
8
+ * with ONE definition. Previously `coding/architecture-surfaces.ts` carried a
9
+ * weaker local copy that only checked the trailing `]`, which could truncate
10
+ * card markdown that legitimately ends in a `[Attributes: …]` line (cursor
11
+ * review: duplicate attribute suffix stripper).
12
+ *
13
+ * String operations, not regex — CodeQL `js/polynomial-redos` flags
14
+ * suffix-anchored patterns over library-supplied content.
15
+ */
16
+ /**
17
+ * Remove the `[Attributes: …]` suffix `writeMemory` appends to the stored
18
+ * body when structuredAttributes are present, yielding the raw fact/card text
19
+ * for content comparison or client display. Inverse companion of
20
+ * `normalizeAttributePairs` enrichment in `storage.ts`.
21
+ *
22
+ * Returns the stripped (trimmed) body when the marker opens the final
23
+ * non-empty line and its inner payload contains no premature `]` or newline
24
+ * (mirrors the exact shape `normalizeAttributePairs` emits). Otherwise
25
+ * returns the trimmed input unchanged — never truncates legitimate content.
26
+ */
27
+ declare function stripAttributesSuffix(content: string): string;
28
+
29
+ export { stripAttributesSuffix };
@@ -0,0 +1,8 @@
1
+ import {
2
+ stripAttributesSuffix
3
+ } from "./chunk-SVOZFLIQ.js";
4
+ import "./chunk-PZ5AY32C.js";
5
+ export {
6
+ stripAttributesSuffix
7
+ };
8
+ //# sourceMappingURL=structured-attributes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,5 +1,5 @@
1
1
  import { ModelRegistry } from './model-registry.js';
2
- import { P as PluginConfig, G as GatewayConfig, _ as TranscriptEntry, a0 as HourlySummary } from './types-Dm5xxVrr.js';
2
+ import { P as PluginConfig, G as GatewayConfig, _ as TranscriptEntry, a0 as HourlySummary } from './types-2NoBoRBM.js';
3
3
  import { TranscriptManager } from './transcript.js';
4
4
  import './types-ByK7T3L6.js';
5
5
  import './index-DJ9QWMw-.js';
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  HourlySummarizer
3
- } from "./chunk-A4HH2EWA.js";
3
+ } from "./chunk-QVG4LAQO.js";
4
4
  import "./chunk-XJNBEDFE.js";
5
5
  import "./chunk-PWFWCGOO.js";
6
6
  import "./chunk-UPTZYUYJ.js";
7
7
  import "./chunk-S4DDLTPX.js";
8
- import "./chunk-FIVDN2SM.js";
8
+ import "./chunk-4RGWCRIJ.js";
9
9
  import "./chunk-IQVQJJL7.js";
10
- import "./chunk-L2EXJQJP.js";
11
10
  import "./chunk-VL7DP3OW.js";
11
+ import "./chunk-L2EXJQJP.js";
12
12
  import "./chunk-RK6F44Y6.js";
13
13
  import "./chunk-FF4KLI5W.js";
14
14
  import "./chunk-O75CRYGF.js";
@@ -1,4 +1,4 @@
1
- import { a0 as HourlySummary } from './types-Dm5xxVrr.js';
1
+ import { a0 as HourlySummary } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { j as MemoryFrontmatter } from './types-Dm5xxVrr.js';
1
+ import { j as MemoryFrontmatter } from './types-2NoBoRBM.js';
2
2
  import { StorageManager } from './storage.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';
@@ -8,6 +8,7 @@ import './memory-projection-store.js';
8
8
  import './maintenance/memory-governance.js';
9
9
  import './runtime/better-sqlite.js';
10
10
  import 'better-sqlite3';
11
+ import './structured-attributes.js';
11
12
 
12
13
  /**
13
14
  * Temporal Supersession (issue #375)
@@ -6,8 +6,8 @@ import {
6
6
  shouldFilterSupersededFromRecall,
7
7
  shouldSupersedeExisting,
8
8
  supersessionKeysForFact
9
- } from "./chunk-3FC6LW6T.js";
10
- import "./chunk-MDYG7VI7.js";
9
+ } from "./chunk-MRFVMSTR.js";
10
+ import "./chunk-IREVVFTM.js";
11
11
  import "./chunk-NU3CSQ4H.js";
12
12
  import "./chunk-PZ5AY32C.js";
13
13
  export {
@@ -1,4 +1,4 @@
1
- import { j as MemoryFrontmatter } from './types-Dm5xxVrr.js';
1
+ import { j as MemoryFrontmatter } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -43,6 +43,26 @@ declare function effectiveInvalidAt(fm: Pick<MemoryFrontmatter, "invalid_at" | "
43
43
  * malformed).
44
44
  */
45
45
  declare function isValidAsOf(fm: Pick<MemoryFrontmatter, "valid_at" | "invalid_at" | "created" | "supersededAt" | "status">, asOfMs: number): boolean;
46
+ /**
47
+ * Bi-temporal injection filter (issue #1578).
48
+ *
49
+ * Returns `true` when the fact's event-time interval has already ended before
50
+ * `nowMs` — i.e. it is no longer *true in the world* and should leave the
51
+ * default injection candidate set (it remains findable by explicit search
52
+ * and `as_of` queries, mirroring the lifecycle-filter escape-hatch principle
53
+ * in AGENTS.md §16). Gated by `temporalBiTemporal`; the escape hatch
54
+ * `temporalExpiredInInjection` re-admits expired facts when a deployment
55
+ * prefers the older always-inject behavior.
56
+ *
57
+ * Semantics: a fact is expired-now when `invalid_at` is present and
58
+ * `invalid_at <= nowMs` (the exclusive upper bound has passed). Absent
59
+ * `invalid_at` means "still valid" — never expired. This is the
60
+ * status-orthogonal complement of `isValidAsOf` for the wall-clock instant:
61
+ * an `active` memory can be validity-expired, and a `superseded` one can
62
+ * still be validity-valid within its historical window (issue pitfall: the
63
+ * filter is status-orthogonal).
64
+ */
65
+ declare function isValidityExpiredNow(fm: Pick<MemoryFrontmatter, "invalid_at">, nowMs: number): boolean;
46
66
  /**
47
67
  * Parse and validate an `as_of` value supplied at an input boundary
48
68
  * (CLI flag, HTTP query param, MCP field). Returns parsed milliseconds
@@ -51,4 +71,4 @@ declare function isValidAsOf(fm: Pick<MemoryFrontmatter, "valid_at" | "invalid_a
51
71
  */
52
72
  declare function parseAsOfTimestamp(raw: unknown): number;
53
73
 
54
- export { effectiveInvalidAt, effectiveValidAt, isValidAsOf, parseAsOfTimestamp };
74
+ export { effectiveInvalidAt, effectiveValidAt, isValidAsOf, isValidityExpiredNow, parseAsOfTimestamp };
@@ -2,13 +2,15 @@ import {
2
2
  effectiveInvalidAt,
3
3
  effectiveValidAt,
4
4
  isValidAsOf,
5
+ isValidityExpiredNow,
5
6
  parseAsOfTimestamp
6
- } from "./chunk-MDYG7VI7.js";
7
+ } from "./chunk-IREVVFTM.js";
7
8
  import "./chunk-PZ5AY32C.js";
8
9
  export {
9
10
  effectiveInvalidAt,
10
11
  effectiveValidAt,
11
12
  isValidAsOf,
13
+ isValidityExpiredNow,
12
14
  parseAsOfTimestamp
13
15
  };
14
16
  //# sourceMappingURL=temporal-validity.js.map
@@ -1,4 +1,4 @@
1
- import { Z as BufferTurn, au as ConversationThread } from './types-Dm5xxVrr.js';
1
+ import { Z as BufferTurn, au as ConversationThread } from './types-2NoBoRBM.js';
2
2
  import './types-ByK7T3L6.js';
3
3
  import './index-DJ9QWMw-.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { g as MemoryFile } from './types-Dm5xxVrr.js';
1
+ import { g as MemoryFile } from './types-2NoBoRBM.js';
2
2
  import { StorageManager } from './storage.js';
3
3
  import { MemoryTier } from './tier-routing.js';
4
4
  import { SearchBackend } from './search/port.js';
@@ -10,6 +10,7 @@ import './memory-projection-store.js';
10
10
  import './maintenance/memory-governance.js';
11
11
  import './runtime/better-sqlite.js';
12
12
  import 'better-sqlite3';
13
+ import './structured-attributes.js';
13
14
  import './lifecycle.js';
14
15
 
15
16
  interface TierMigrationRequest {
@@ -1,4 +1,4 @@
1
- import { g as MemoryFile } from './types-Dm5xxVrr.js';
1
+ import { g as MemoryFile } from './types-2NoBoRBM.js';
2
2
  import { LifecycleSignals } from './lifecycle.js';
3
3
  import './types-ByK7T3L6.js';
4
4
  import './index-DJ9QWMw-.js';