@remnic/core 9.23.2 → 9.23.4

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 (211) hide show
  1. package/dist/access-admin-ops-surface.d.ts +6 -5
  2. package/dist/access-admin-ops-surface.js +36 -33
  3. package/dist/access-boundary.d.ts +6 -5
  4. package/dist/access-boundary.js +36 -33
  5. package/dist/access-cli.js +92 -90
  6. package/dist/access-cli.js.map +1 -1
  7. package/dist/access-http.d.ts +7 -6
  8. package/dist/access-http.js +46 -43
  9. package/dist/access-identity-continuity-surface.d.ts +4 -4
  10. package/dist/access-identity-continuity-surface.js +36 -33
  11. package/dist/access-lcm-surface.d.ts +6 -5
  12. package/dist/access-lcm-surface.js +36 -33
  13. package/dist/access-mcp.d.ts +6 -5
  14. package/dist/access-mcp.js +41 -38
  15. package/dist/access-namespace-preflight.js +36 -33
  16. package/dist/access-observe-write-surface.d.ts +6 -5
  17. package/dist/access-observe-write-surface.js +36 -33
  18. package/dist/access-operations-batch.js +38 -35
  19. package/dist/access-operations.d.ts +6 -5
  20. package/dist/access-operations.js +40 -37
  21. package/dist/access-recall-concurrency.d.ts +6 -5
  22. package/dist/access-recall-concurrency.js +36 -33
  23. package/dist/access-recall-response.d.ts +6 -5
  24. package/dist/access-recall-response.js +36 -33
  25. package/dist/access-recall-surface.d.ts +6 -5
  26. package/dist/access-recall-surface.js +36 -33
  27. package/dist/access-schema.js +4 -4
  28. package/dist/{access-service-CKEROeFP.d.ts → access-service-Pl-h7x4p.d.ts} +6 -3
  29. package/dist/access-service.d.ts +8 -7
  30. package/dist/access-service.js +36 -33
  31. package/dist/access-surface-catalog.d.ts +6 -5
  32. package/dist/access-wearables-meetings-surface.d.ts +2 -2
  33. package/dist/active-recall.js +1 -1
  34. package/dist/adapters/index.js +7 -7
  35. package/dist/adapters/registry.js +3 -3
  36. package/dist/bootstrap.d.ts +4 -4
  37. package/dist/briefing.d.ts +1 -1
  38. package/dist/briefing.js +7 -7
  39. package/dist/buffer.d.ts +1 -1
  40. package/dist/{capsule-crypto-7FJQINUR.js → capsule-crypto-YO5QJ6L3.js} +2 -2
  41. package/dist/causal-behavior.js +2 -2
  42. package/dist/causal-chain.js +2 -2
  43. package/dist/causal-consolidation.js +10 -10
  44. package/dist/causal-retrieval.js +2 -2
  45. package/dist/causal-trajectory-graph.js +2 -2
  46. package/dist/causal-trajectory.js +1 -1
  47. package/dist/{chunk-L2DPF4DF.js → chunk-3SHB4YAW.js} +4 -4
  48. package/dist/{chunk-ATEAL5EI.js → chunk-3UD5ZAUA.js} +2 -2
  49. package/dist/{chunk-ES5IHQ6M.js → chunk-4E3DWNTJ.js} +2 -2
  50. package/dist/{chunk-QCKQEBIY.js → chunk-5XMJ2P62.js} +5 -5
  51. package/dist/{chunk-WZVIB5BK.js → chunk-6MFMTNY4.js} +38 -29
  52. package/dist/chunk-6MFMTNY4.js.map +1 -0
  53. package/dist/{chunk-7CPOZH6Y.js → chunk-AJ7QCSIS.js} +2 -2
  54. package/dist/{chunk-M6LJXJ3J.js → chunk-AT7XL2JJ.js} +3 -3
  55. package/dist/{chunk-2NLLXCJG.js → chunk-BXLOS5AJ.js} +2 -2
  56. package/dist/{chunk-NRV4Y3PM.js → chunk-CAGPP5NB.js} +1 -1
  57. package/dist/{chunk-XGEFGNL5.js → chunk-CNUZ2PN2.js} +13 -9
  58. package/dist/chunk-CNUZ2PN2.js.map +1 -0
  59. package/dist/chunk-D5ILARSD.js +60 -0
  60. package/dist/chunk-D5ILARSD.js.map +1 -0
  61. package/dist/{chunk-X7Y7WX73.js → chunk-DQEMWVMT.js} +1 -1
  62. package/dist/{chunk-P2BLHUL2.js → chunk-EHOTE26K.js} +5 -5
  63. package/dist/{chunk-DLKRXYRL.js → chunk-EXH5AK46.js} +6 -6
  64. package/dist/{chunk-JNIJBXVK.js → chunk-FPJWQZ35.js} +2 -2
  65. package/dist/{chunk-XWPFZX6S.js → chunk-GCQIMJFH.js} +97 -26
  66. package/dist/chunk-GCQIMJFH.js.map +1 -0
  67. package/dist/{chunk-GD3QOBMB.js → chunk-H2M4YA6K.js} +2 -2
  68. package/dist/{chunk-3ZW6ZQO6.js → chunk-HVYOZAQ7.js} +6 -6
  69. package/dist/{chunk-3UOSVTFR.js → chunk-JRQBPN63.js} +8 -8
  70. package/dist/{chunk-3L5O7SMT.js → chunk-JVOA5VDZ.js} +3 -3
  71. package/dist/{chunk-WWZ35GWW.js → chunk-K3C6CJOF.js} +2 -2
  72. package/dist/{chunk-4PQ4KLLK.js → chunk-KYP5FSPG.js} +6 -6
  73. package/dist/{chunk-227UFSEQ.js → chunk-LEPOP46W.js} +4 -4
  74. package/dist/{chunk-V2XVMCP6.js → chunk-M2PG7OTI.js} +2 -2
  75. package/dist/{chunk-HSSIWAZP.js → chunk-NSRTLSBX.js} +114 -98
  76. package/dist/{chunk-HSSIWAZP.js.map → chunk-NSRTLSBX.js.map} +1 -1
  77. package/dist/{chunk-MU7ZHSZE.js → chunk-PO5LSKQO.js} +2 -2
  78. package/dist/{chunk-6TWXQ4E2.js → chunk-POHSSW2T.js} +2 -2
  79. package/dist/{chunk-AU7Q3LSC.js → chunk-RKNJBZ55.js} +7 -7
  80. package/dist/{chunk-QE63OHLB.js → chunk-RPOSRICW.js} +5 -5
  81. package/dist/{chunk-ZN4UZWMT.js → chunk-RSLXMGFP.js} +2 -2
  82. package/dist/{chunk-7I7AYIUQ.js → chunk-SPWOLGXT.js} +5 -5
  83. package/dist/{chunk-E3ZMFFQZ.js → chunk-TMX4MBSK.js} +2 -2
  84. package/dist/{chunk-SVZGA2MK.js → chunk-UZ7HGRHK.js} +2 -2
  85. package/dist/{chunk-JYIFGGEM.js → chunk-UZGJFIIG.js} +2 -2
  86. package/dist/{chunk-IPLYGWQF.js → chunk-VDX2J7OX.js} +6 -6
  87. package/dist/{chunk-CUUY5CC4.js → chunk-W3BKLKG6.js} +2 -2
  88. package/dist/{chunk-HNZKVLAN.js → chunk-W6ROK2KU.js} +2 -2
  89. package/dist/chunk-XJTYLU6J.js +261 -0
  90. package/dist/chunk-XJTYLU6J.js.map +1 -0
  91. package/dist/{chunk-5FZQ74K5.js → chunk-XPLTZEJU.js} +2 -2
  92. package/dist/{chunk-MAXVH44E.js → chunk-Z54EM5YZ.js} +7 -7
  93. package/dist/{chunk-KXGE7L62.js → chunk-ZLDMAGCB.js} +59 -59
  94. package/dist/{cli-BrwT9YMD.d.ts → cli-DuMB83Mw.d.ts} +3 -3
  95. package/dist/cli.d.ts +7 -6
  96. package/dist/cli.js +66 -64
  97. package/dist/compounding/engine.d.ts +1 -1
  98. package/dist/compounding/engine.js +7 -7
  99. package/dist/config.js +1 -1
  100. package/dist/connectors/codex-materialize-runner.js +7 -7
  101. package/dist/connectors/index.js +7 -7
  102. package/dist/consolidation-provenance-check.d.ts +1 -1
  103. package/dist/consolidation-undo.d.ts +1 -1
  104. package/dist/contradiction/index.d.ts +1 -1
  105. package/dist/conversation-index/backend.js +2 -2
  106. package/dist/corpus-watermark.d.ts +227 -0
  107. package/dist/corpus-watermark.js +106 -0
  108. package/dist/entity-retrieval.d.ts +1 -1
  109. package/dist/entity-retrieval.js +7 -7
  110. package/dist/explicit-capture.d.ts +4 -4
  111. package/dist/extraction.js +1 -1
  112. package/dist/{graph-edge-decay-Z6ENALU2.js → graph-edge-decay-GF3ZSGSP.js} +4 -4
  113. package/dist/graph-edge-decay-GF3ZSGSP.js.map +1 -0
  114. package/dist/graph-snapshot.js +3 -3
  115. package/dist/graph.js +2 -2
  116. package/dist/index.d.ts +12 -11
  117. package/dist/index.js +136 -134
  118. package/dist/lcm/engine.js +3 -3
  119. package/dist/lcm/index.js +6 -6
  120. package/dist/maintenance/memory-governance.js +7 -7
  121. package/dist/maintenance/rebuild-memory-lifecycle-ledger.d.ts +1 -1
  122. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +7 -7
  123. package/dist/maintenance/rebuild-memory-projection.d.ts +1 -1
  124. package/dist/maintenance/rebuild-memory-projection.js +8 -8
  125. package/dist/{maintenance-C98njYb8.d.ts → maintenance-DGvDB1xF.d.ts} +1 -1
  126. package/dist/mcp-memory-inspector-app.d.ts +6 -5
  127. package/dist/memory-worth-outcomes.d.ts +1 -1
  128. package/dist/namespaces/migrate.d.ts +1 -1
  129. package/dist/namespaces/migrate.js +14 -14
  130. package/dist/namespaces/search.js +6 -6
  131. package/dist/namespaces/storage.d.ts +1 -1
  132. package/dist/namespaces/storage.js +7 -7
  133. package/dist/operator-doctor-corpus.d.ts +44 -0
  134. package/dist/operator-doctor-corpus.js +91 -0
  135. package/dist/operator-doctor-corpus.js.map +1 -0
  136. package/dist/operator-toolkit.d.ts +1 -1
  137. package/dist/operator-toolkit.js +22 -20
  138. package/dist/orchestration/compression-guideline-coordinator.d.ts +1 -1
  139. package/dist/orchestration/maintenance.d.ts +2 -2
  140. package/dist/orchestration/maintenance.js +12 -12
  141. package/dist/{orchestrator-C9ZVppNh.d.ts → orchestrator-RXHefhAy.d.ts} +3 -3
  142. package/dist/orchestrator.d.ts +4 -4
  143. package/dist/orchestrator.js +91 -89
  144. package/dist/resume-bundles.js +1 -1
  145. package/dist/search/factory.js +5 -5
  146. package/dist/search/index.js +9 -9
  147. package/dist/semantic-consolidation.js +8 -8
  148. package/dist/semantic-rule-promotion.js +7 -7
  149. package/dist/semantic-rule-verifier.js +7 -7
  150. package/dist/{service-DgFWlZ-r.d.ts → service-BrWqlsZ4.d.ts} +1 -1
  151. package/dist/{storage-XGawwqXE.d.ts → storage-DgNVexXm.d.ts} +24 -1
  152. package/dist/storage.d.ts +1 -1
  153. package/dist/storage.js +6 -6
  154. package/dist/temporal-supersession.d.ts +1 -1
  155. package/dist/tier-migration.d.ts +1 -1
  156. package/dist/transfer/autodetect.js +1 -1
  157. package/dist/transfer/backup.js +2 -2
  158. package/dist/transfer/capsule-export.js +3 -3
  159. package/dist/transfer/capsule-import.js +2 -2
  160. package/dist/verified-recall.js +7 -7
  161. package/package.json +12 -2
  162. package/src/access-http.test.ts +4 -2
  163. package/src/access-service.ts +5 -0
  164. package/src/corpus-watermark.test.ts +840 -0
  165. package/src/corpus-watermark.ts +531 -0
  166. package/src/operator-doctor-corpus.test.ts +171 -0
  167. package/src/operator-doctor-corpus.ts +95 -0
  168. package/src/operator-toolkit.ts +3 -3
  169. package/src/recall/archive-scoring.ts +18 -0
  170. package/src/storage/memory-read-store.ts +91 -22
  171. package/src/storage.ts +27 -2
  172. package/dist/chunk-WZVIB5BK.js.map +0 -1
  173. package/dist/chunk-XGEFGNL5.js.map +0 -1
  174. package/dist/chunk-XWPFZX6S.js.map +0 -1
  175. /package/dist/{capsule-crypto-7FJQINUR.js.map → capsule-crypto-YO5QJ6L3.js.map} +0 -0
  176. /package/dist/{chunk-L2DPF4DF.js.map → chunk-3SHB4YAW.js.map} +0 -0
  177. /package/dist/{chunk-ATEAL5EI.js.map → chunk-3UD5ZAUA.js.map} +0 -0
  178. /package/dist/{chunk-ES5IHQ6M.js.map → chunk-4E3DWNTJ.js.map} +0 -0
  179. /package/dist/{chunk-QCKQEBIY.js.map → chunk-5XMJ2P62.js.map} +0 -0
  180. /package/dist/{chunk-7CPOZH6Y.js.map → chunk-AJ7QCSIS.js.map} +0 -0
  181. /package/dist/{chunk-M6LJXJ3J.js.map → chunk-AT7XL2JJ.js.map} +0 -0
  182. /package/dist/{chunk-2NLLXCJG.js.map → chunk-BXLOS5AJ.js.map} +0 -0
  183. /package/dist/{chunk-NRV4Y3PM.js.map → chunk-CAGPP5NB.js.map} +0 -0
  184. /package/dist/{chunk-X7Y7WX73.js.map → chunk-DQEMWVMT.js.map} +0 -0
  185. /package/dist/{chunk-P2BLHUL2.js.map → chunk-EHOTE26K.js.map} +0 -0
  186. /package/dist/{chunk-DLKRXYRL.js.map → chunk-EXH5AK46.js.map} +0 -0
  187. /package/dist/{chunk-JNIJBXVK.js.map → chunk-FPJWQZ35.js.map} +0 -0
  188. /package/dist/{chunk-GD3QOBMB.js.map → chunk-H2M4YA6K.js.map} +0 -0
  189. /package/dist/{chunk-3ZW6ZQO6.js.map → chunk-HVYOZAQ7.js.map} +0 -0
  190. /package/dist/{chunk-3UOSVTFR.js.map → chunk-JRQBPN63.js.map} +0 -0
  191. /package/dist/{chunk-3L5O7SMT.js.map → chunk-JVOA5VDZ.js.map} +0 -0
  192. /package/dist/{chunk-WWZ35GWW.js.map → chunk-K3C6CJOF.js.map} +0 -0
  193. /package/dist/{chunk-4PQ4KLLK.js.map → chunk-KYP5FSPG.js.map} +0 -0
  194. /package/dist/{chunk-227UFSEQ.js.map → chunk-LEPOP46W.js.map} +0 -0
  195. /package/dist/{chunk-V2XVMCP6.js.map → chunk-M2PG7OTI.js.map} +0 -0
  196. /package/dist/{chunk-MU7ZHSZE.js.map → chunk-PO5LSKQO.js.map} +0 -0
  197. /package/dist/{chunk-6TWXQ4E2.js.map → chunk-POHSSW2T.js.map} +0 -0
  198. /package/dist/{chunk-AU7Q3LSC.js.map → chunk-RKNJBZ55.js.map} +0 -0
  199. /package/dist/{chunk-QE63OHLB.js.map → chunk-RPOSRICW.js.map} +0 -0
  200. /package/dist/{chunk-ZN4UZWMT.js.map → chunk-RSLXMGFP.js.map} +0 -0
  201. /package/dist/{chunk-7I7AYIUQ.js.map → chunk-SPWOLGXT.js.map} +0 -0
  202. /package/dist/{chunk-E3ZMFFQZ.js.map → chunk-TMX4MBSK.js.map} +0 -0
  203. /package/dist/{chunk-SVZGA2MK.js.map → chunk-UZ7HGRHK.js.map} +0 -0
  204. /package/dist/{chunk-JYIFGGEM.js.map → chunk-UZGJFIIG.js.map} +0 -0
  205. /package/dist/{chunk-IPLYGWQF.js.map → chunk-VDX2J7OX.js.map} +0 -0
  206. /package/dist/{chunk-CUUY5CC4.js.map → chunk-W3BKLKG6.js.map} +0 -0
  207. /package/dist/{chunk-HNZKVLAN.js.map → chunk-W6ROK2KU.js.map} +0 -0
  208. /package/dist/{chunk-5FZQ74K5.js.map → chunk-XPLTZEJU.js.map} +0 -0
  209. /package/dist/{chunk-MAXVH44E.js.map → chunk-Z54EM5YZ.js.map} +0 -0
  210. /package/dist/{chunk-KXGE7L62.js.map → chunk-ZLDMAGCB.js.map} +0 -0
  211. /package/dist/{graph-edge-decay-Z6ENALU2.js.map → corpus-watermark.js.map} +0 -0
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  runCodexMaterialize,
3
3
  runPostConsolidationMaterialize
4
- } from "../chunk-E3ZMFFQZ.js";
4
+ } from "../chunk-TMX4MBSK.js";
5
5
  import "../chunk-KSXJOC4F.js";
6
6
  import "../chunk-3UXOZBHV.js";
7
- import "../chunk-XWPFZX6S.js";
8
- import "../chunk-2QMKMVHH.js";
7
+ import "../chunk-GCQIMJFH.js";
9
8
  import "../chunk-UHVXE24Y.js";
9
+ import "../chunk-2QMKMVHH.js";
10
10
  import "../chunk-DEBHXHJR.js";
11
11
  import "../chunk-DNHVPZOD.js";
12
12
  import "../chunk-6CIAGZ6X.js";
@@ -21,13 +21,13 @@ import "../chunk-ILGC6JH6.js";
21
21
  import "../chunk-SCU65EZI.js";
22
22
  import "../chunk-3CSX3ETE.js";
23
23
  import "../chunk-RL6NEVXT.js";
24
- import "../chunk-LDXUBPMO.js";
25
24
  import "../chunk-DM2T26WE.js";
26
- import "../chunk-JYIJNNN3.js";
27
- import "../chunk-AAD2ZS6P.js";
25
+ import "../chunk-LDXUBPMO.js";
28
26
  import "../chunk-CGASUJVP.js";
29
27
  import "../chunk-R3DJVOSM.js";
30
28
  import "../chunk-BT7NVCML.js";
29
+ import "../chunk-JYIJNNN3.js";
30
+ import "../chunk-AAD2ZS6P.js";
31
31
  import "../chunk-G7D6GZ5J.js";
32
32
  import "../chunk-5VQJBH2G.js";
33
33
  import "../chunk-AITCS2RC.js";
@@ -45,8 +45,8 @@ import "../chunk-BJMBJZ2Y.js";
45
45
  import "../chunk-UKJAGEXH.js";
46
46
  import "../chunk-FP2373TW.js";
47
47
  import "../chunk-5I4M26Q7.js";
48
- import "../chunk-4DJQYKMN.js";
49
48
  import "../chunk-5GKPFL3S.js";
49
+ import "../chunk-4DJQYKMN.js";
50
50
  import "../chunk-PQVCH2AE.js";
51
51
  import "../chunk-EYIEWJNI.js";
52
52
  import "../chunk-JUC24CTX.js";
@@ -26,7 +26,7 @@ import {
26
26
  import "../chunk-KNB7IBBU.js";
27
27
  import {
28
28
  runCodexMaterialize
29
- } from "../chunk-E3ZMFFQZ.js";
29
+ } from "../chunk-TMX4MBSK.js";
30
30
  import {
31
31
  MATERIALIZE_VERSION,
32
32
  SENTINEL_FILE,
@@ -48,9 +48,9 @@ import {
48
48
  getRegistryPath
49
49
  } from "../chunk-K6MV3TRQ.js";
50
50
  import "../chunk-O75CRYGF.js";
51
- import "../chunk-XWPFZX6S.js";
52
- import "../chunk-2QMKMVHH.js";
51
+ import "../chunk-GCQIMJFH.js";
53
52
  import "../chunk-UHVXE24Y.js";
53
+ import "../chunk-2QMKMVHH.js";
54
54
  import "../chunk-DEBHXHJR.js";
55
55
  import "../chunk-DNHVPZOD.js";
56
56
  import "../chunk-6CIAGZ6X.js";
@@ -65,13 +65,13 @@ import "../chunk-ILGC6JH6.js";
65
65
  import "../chunk-SCU65EZI.js";
66
66
  import "../chunk-3CSX3ETE.js";
67
67
  import "../chunk-RL6NEVXT.js";
68
- import "../chunk-LDXUBPMO.js";
69
68
  import "../chunk-DM2T26WE.js";
70
- import "../chunk-JYIJNNN3.js";
71
- import "../chunk-AAD2ZS6P.js";
69
+ import "../chunk-LDXUBPMO.js";
72
70
  import "../chunk-CGASUJVP.js";
73
71
  import "../chunk-R3DJVOSM.js";
74
72
  import "../chunk-BT7NVCML.js";
73
+ import "../chunk-JYIJNNN3.js";
74
+ import "../chunk-AAD2ZS6P.js";
75
75
  import "../chunk-G7D6GZ5J.js";
76
76
  import "../chunk-5VQJBH2G.js";
77
77
  import "../chunk-AITCS2RC.js";
@@ -90,8 +90,8 @@ import "../chunk-UKJAGEXH.js";
90
90
  import "../chunk-FP2373TW.js";
91
91
  import "../chunk-7AMFUATK.js";
92
92
  import "../chunk-5I4M26Q7.js";
93
- import "../chunk-4DJQYKMN.js";
94
93
  import "../chunk-5GKPFL3S.js";
94
+ import "../chunk-4DJQYKMN.js";
95
95
  import {
96
96
  coerceInstallExtension
97
97
  } from "../chunk-PQVCH2AE.js";
@@ -1,4 +1,4 @@
1
- import { S as StorageManager } from './storage-XGawwqXE.js';
1
+ import { S as StorageManager } from './storage-DgNVexXm.js';
2
2
  import './types-Bbs0qz6b.js';
3
3
  import './message-parts/index.js';
4
4
  import './bounded-jsonl-state.js';
@@ -1,4 +1,4 @@
1
- import { S as StorageManager } from './storage-XGawwqXE.js';
1
+ import { S as StorageManager } from './storage-DgNVexXm.js';
2
2
  import { VersioningConfig } from './page-versioning.js';
3
3
  import './types-Bbs0qz6b.js';
4
4
  import './message-parts/index.js';
@@ -1,4 +1,4 @@
1
- import { S as StorageManager } from '../storage-XGawwqXE.js';
1
+ import { S as StorageManager } from '../storage-DgNVexXm.js';
2
2
  import { x as MemoryStatus, P as PluginConfig, w as MemoryCategory } from '../types-Bbs0qz6b.js';
3
3
  import { S as SemanticDedupLookup } from '../semantic-TddhF0y7.js';
4
4
  import { LocalLlmClient } from '../local-llm.js';
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  createConversationIndexBackend
3
- } from "../chunk-227UFSEQ.js";
4
- import "../chunk-ET356KSB.js";
3
+ } from "../chunk-LEPOP46W.js";
5
4
  import "../chunk-72A4L5JJ.js";
6
5
  import "../chunk-A7Q43EUZ.js";
6
+ import "../chunk-ET356KSB.js";
7
7
  import "../chunk-O75CRYGF.js";
8
8
  import "../chunk-3WCASNQZ.js";
9
9
  import "../chunk-PZ5AY32C.js";
@@ -0,0 +1,227 @@
1
+ import { TokenCapabilities } from './access-token-capabilities.js';
2
+ import { P as PluginConfig } from './types-Bbs0qz6b.js';
3
+ import 'node:async_hooks';
4
+ import './message-parts/index.js';
5
+ import './bounded-jsonl-state.js';
6
+ import './types-continuity.js';
7
+
8
+ /**
9
+ * Corpus watermark (issue #2149) — a cheap, comparable fingerprint of a
10
+ * daemon's active-memory corpus.
11
+ *
12
+ * Deployment shape this addresses: two daemons behind an active/backup VIP,
13
+ * each owning its own memory directory. Nothing compared the two corpora, so a
14
+ * pair could diverge for months (e.g. one holding ~190k files, its backup
15
+ * ~340k with different histories) with no signal until a manual audit. This
16
+ * module ships the WATERMARK primitive and the read surfaces that expose it;
17
+ * peer polling and divergence alerting are a follow-up.
18
+ *
19
+ * The digest is a CENSUS fingerprint (per day-partition file counts), NOT a
20
+ * content hash — two daemons that agree on how many memory FILES live in
21
+ * each `<tier>:<category>/<day>` partition produce the same digest, so a
22
+ * differing digest is a cheap divergence signal without reading or hashing file
23
+ * bodies. Buckets are tier-aware (`hot:` / `cold:`): demoted memories stay
24
+ * reachable via cold recall, so the census counts BOTH tiers and a hot/cold
25
+ * split shows in the digest rather than being silently folded together (issue
26
+ * #2156 finding D). `newestWriteAt` stays scoped to the newest HOT partition
27
+ * only, so the freshness probe stays O(one day's active files) even on a 100k+
28
+ * corpus.
29
+ *
30
+ * Robustness (issue #2156 review rounds):
31
+ * - `/health` and `remnic doctor` resolve their namespace set through the ONE
32
+ * {@link resolveCorpusNamespaceRoots} helper — config-driven enumeration
33
+ * unioned with the PERSISTED namespace catalog read from config — so both
34
+ * surfaces enumerate the same tenants and cannot drift.
35
+ * - The `/health` builder serves through a stale-while-revalidate
36
+ * {@link CorpusWatermarkCache}, so a probe NEVER awaits the recursive corpus
37
+ * scan (it returns the cached/stale value and refreshes in the background).
38
+ * - Each namespace's census brackets its hot+cold walk with a corpus-mutation
39
+ * sentinel and retries when a tier migration races it, so a transient
40
+ * double-count/miss is never cached as a false divergence.
41
+ * - An unreadable corpus root (EACCES) is OMITTED, not published as a false
42
+ * empty; a missing root (ENOENT — a not-yet-created namespace) is a genuine
43
+ * empty corpus.
44
+ */
45
+
46
+ interface CorpusWatermark {
47
+ namespace: string;
48
+ /**
49
+ * Count of memory files under the census scan roots (hot + cold). This is a
50
+ * FILE census, not a status-filtered active count: reading each file's
51
+ * frontmatter status would defeat the cheap-probe design, so an in-place
52
+ * status change (e.g. archived-in-place) is not reflected here.
53
+ */
54
+ memoryFileCount: number;
55
+ /** Newest `YYYY-MM-DD` day-partition seen in the HOT tier, or null when none is dated. */
56
+ newestPartition: string | null;
57
+ /** ISO max mtime within the newest HOT partition, or null when it has no files. */
58
+ newestWriteAt: string | null;
59
+ /** sha256 hex over the deterministic per-partition census. */
60
+ digest: string;
61
+ computedAt: string;
62
+ }
63
+ /** Explicit bucket for paths that do not match the `<category>/<day>` shape. */
64
+ declare const UNPARTITIONED_BUCKET = "unpartitioned";
65
+ /** Storage tier a memory file lives in. */
66
+ type CorpusTier = "hot" | "cold";
67
+ /**
68
+ * Build the per-partition census: bucket key -> file count. Bucket keys are
69
+ * tier-aware (`hot:`/`cold:`). Paths not matching a day-partition land in the
70
+ * explicit tier {@link UNPARTITIONED_BUCKET}; they are never silently dropped.
71
+ * Pure — no filesystem access.
72
+ */
73
+ declare function buildPartitionCensus(paths: readonly string[], baseDir: string): Map<string, number>;
74
+ /**
75
+ * Deterministic census -> digest. Bucket keys are SORTED before serialization
76
+ * (AGENTS.md pattern 26: insertion order must not affect a hash), then emitted
77
+ * as `"<bucket>:<count>"` lines joined by `\n` and hashed with sha256. Pure —
78
+ * separately exported so it can be unit-tested without a filesystem.
79
+ */
80
+ declare function digestPartitionCensus(census: ReadonlyMap<string, number> | Record<string, number>): string;
81
+ /**
82
+ * Compute a watermark for a single namespace from an already-collected path
83
+ * list (both tiers, under `baseDir`) plus its memory base directory. Never
84
+ * throws on an empty list — an empty corpus yields the digest of the empty
85
+ * census and null timestamps. Only the newest HOT partition's files are
86
+ * `stat`-ed, so freshness stays cheap even on a 100k+ corpus.
87
+ */
88
+ declare function computeCorpusWatermark(input: {
89
+ namespace: string;
90
+ paths: readonly string[];
91
+ baseDir: string;
92
+ now?: Date;
93
+ }): Promise<CorpusWatermark>;
94
+ /** Minimal storage surface a watermark needs — satisfied by StorageManager. */
95
+ interface CorpusStorage {
96
+ readonly dir: string;
97
+ /** Hot-tier active memory paths (the recall corpus). */
98
+ collectActiveMemoryPaths(options?: {
99
+ propagateReadErrors?: boolean;
100
+ }): Promise<string[]>;
101
+ /** Cold-tier (demoted-but-reachable) memory paths (issue #2156 finding D). */
102
+ collectColdMemoryPaths(options?: {
103
+ propagateReadErrors?: boolean;
104
+ }): Promise<string[]>;
105
+ /**
106
+ * Optional combined hot+cold corpus-mutation sentinel. When present, the
107
+ * census brackets its scan with it and retries on change so a tier migration
108
+ * racing the walkers is not cached as a false divergence. Absent (test fakes)
109
+ * ⇒ single-pass.
110
+ */
111
+ getCorpusScanVersion?(): string | Promise<string>;
112
+ }
113
+ /**
114
+ * Compute watermarks for a set of namespaces. A namespace whose storage is
115
+ * unavailable (or unreadable) is skipped rather than failing the whole read, so
116
+ * a single bad namespace never blanks the health/doctor payload.
117
+ */
118
+ declare function computeCorpusWatermarks(namespaces: readonly string[], storageFor: (namespace: string) => CorpusStorage | Promise<CorpusStorage>, now?: Date): Promise<CorpusWatermark[]>;
119
+ /** A namespace and the memory root its corpus lives under. */
120
+ interface CorpusNamespaceRoot {
121
+ /** Representative namespace label for this root (default wins on collapse). */
122
+ readonly namespace: string;
123
+ readonly rootDir: string;
124
+ /**
125
+ * Every configured namespace name that resolves to `rootDir` (aliases that
126
+ * collapsed onto one physical root, e.g. `global` + `shared` when namespaces
127
+ * are disabled). `/health` filters visibility against ALL of these so a token
128
+ * scoped to a non-representative alias still sees the shared corpus (issue
129
+ * #2156 round-10). Always includes `namespace`.
130
+ */
131
+ readonly namespaces: readonly string[];
132
+ }
133
+ /**
134
+ * Resolve the namespace set the corpus census covers, shared by the `/health`
135
+ * builder AND the `remnic doctor` corpus check (issue #2156 finding C) so the
136
+ * two surfaces enumerate the SAME tenants — and, critically, resolve each
137
+ * namespace's ROOT the SAME way — and cannot drift. Enumeration is purely
138
+ * config-driven (`listNamespaces({ config })`): it discovers the default,
139
+ * shared, policy, and on-disk `namespaces/<ns>` tenants and resolves every root
140
+ * through the namespace storage router, exactly as the live daemon's
141
+ * `getStorage(namespace)` does. It still works when the namespace catalog is
142
+ * opted out. The catalog is deliberately NOT unioned in: a catalog-registered
143
+ * tenant with no directory has an empty corpus (nothing to fingerprint), and
144
+ * trusting `catalog.storageDir` here could make the doctor scan a different root
145
+ * than `/health` for the same namespace (issue #2156 round-8). Deduped by
146
+ * resolved root so a namespaces-disabled / flat-root deployment reports its
147
+ * single shared corpus once, under the default-namespace label.
148
+ */
149
+ declare function resolveCorpusNamespaceRoots(options: {
150
+ config: PluginConfig;
151
+ }): Promise<CorpusNamespaceRoot[]>;
152
+ /**
153
+ * Divergence detection tolerates a watermark that is stale by up to a minute
154
+ * (peers are compared on a slow cadence); a health/readiness probe does NOT
155
+ * tolerate a full corpus scan (a recursive realpath-per-Markdown-file walk) on
156
+ * every request. This TTL is that trade-off: recompute a namespace's watermark
157
+ * at most once per window; probes in between serve the cached census (whose
158
+ * `computedAt` shows its staleness).
159
+ */
160
+ declare const WATERMARK_CACHE_TTL_MS = 60000;
161
+ /**
162
+ * Instance-scoped (AGENTS.md pattern 5 — never a bare module global)
163
+ * stale-while-revalidate cache in front of the per-namespace corpus scan.
164
+ * {@link get} NEVER awaits the scan: it returns the freshest already-computed
165
+ * watermark (stale allowed, or undefined for a cold namespace) and triggers a
166
+ * single-flight background refresh when the entry is missing or expired. So a
167
+ * `/health` probe is always O(1) — it never blocks on a recursive corpus walk,
168
+ * even on the first request after startup or after a TTL expiry. Owned by the
169
+ * long-lived access service instance.
170
+ */
171
+ declare class CorpusWatermarkCache {
172
+ private readonly entries;
173
+ private readonly inFlight;
174
+ private readonly ttlMs;
175
+ private readonly clock;
176
+ private rootsEntry;
177
+ private rootsInFlight;
178
+ private readonly queued;
179
+ private activeRefreshes;
180
+ private readonly maxConcurrentRefreshes;
181
+ constructor(options?: {
182
+ ttlMs?: number;
183
+ clock?: () => number;
184
+ maxConcurrentRefreshes?: number;
185
+ });
186
+ get(namespace: string, compute: () => Promise<CorpusWatermark>): CorpusWatermark | undefined;
187
+ private refresh;
188
+ private drainQueue;
189
+ /**
190
+ * Stale-while-revalidate the resolved namespace roots (issue #2156 round-7).
191
+ * Namespace enumeration (config scan + persisted-catalog parse) is O(tenants)
192
+ * filesystem work; without this it ran on every probe ahead of the watermark
193
+ * cache. NEVER awaits: returns the cached/stale roots (or undefined when cold)
194
+ * and single-flights a background refresh.
195
+ */
196
+ getResolvedRoots(compute: () => Promise<CorpusNamespaceRoot[]>): CorpusNamespaceRoot[] | undefined;
197
+ /** Await every background refresh — in-flight AND queued (issue #2156 round-9) —
198
+ * plus any roots refresh (shutdown / deterministic tests). */
199
+ whenIdle(): Promise<void>;
200
+ }
201
+ /** Orchestrator surface the service watermark builder reads — satisfied by Orchestrator. */
202
+ interface CorpusWatermarkHost {
203
+ config: PluginConfig;
204
+ getStorage(namespace: string): CorpusStorage | Promise<CorpusStorage>;
205
+ }
206
+ interface ServiceCorpusWatermarkOptions {
207
+ /** Stale-while-revalidate cache so probes never await the corpus scan. */
208
+ cache?: CorpusWatermarkCache;
209
+ /**
210
+ * Presenting token capabilities. When the token is namespace-restricted the
211
+ * fleet view is filtered to the namespaces it may access (issue #2156 finding
212
+ * B); an unrestricted/legacy token keeps the full fleet view.
213
+ */
214
+ caps?: TokenCapabilities | null;
215
+ now?: Date;
216
+ }
217
+ /**
218
+ * Build the per-namespace watermark array served on `/health`. Namespaces are
219
+ * resolved through {@link resolveCorpusNamespaceRoots} (shared with the doctor),
220
+ * filtered to the caller's capabilities, then served through the (optional)
221
+ * stale-while-revalidate cache so a probe never blocks on a scan. Degrades to an
222
+ * empty array — never throws — if enumeration is unavailable; an individual
223
+ * namespace whose scan fails is omitted, not allowed to blank the payload.
224
+ */
225
+ declare function computeServiceCorpusWatermarks(host: CorpusWatermarkHost, options?: ServiceCorpusWatermarkOptions): Promise<CorpusWatermark[]>;
226
+
227
+ export { type CorpusNamespaceRoot, type CorpusStorage, type CorpusTier, type CorpusWatermark, CorpusWatermarkCache, type CorpusWatermarkHost, type ServiceCorpusWatermarkOptions, UNPARTITIONED_BUCKET, WATERMARK_CACHE_TTL_MS, buildPartitionCensus, computeCorpusWatermark, computeCorpusWatermarks, computeServiceCorpusWatermarks, digestPartitionCensus, resolveCorpusNamespaceRoots };
@@ -0,0 +1,106 @@
1
+ import {
2
+ CorpusWatermarkCache,
3
+ UNPARTITIONED_BUCKET,
4
+ WATERMARK_CACHE_TTL_MS,
5
+ buildPartitionCensus,
6
+ computeCorpusWatermark,
7
+ computeCorpusWatermarks,
8
+ computeServiceCorpusWatermarks,
9
+ digestPartitionCensus,
10
+ resolveCorpusNamespaceRoots
11
+ } from "./chunk-XJTYLU6J.js";
12
+ import "./chunk-SPWOLGXT.js";
13
+ import "./chunk-RSLXMGFP.js";
14
+ import "./chunk-JRQBPN63.js";
15
+ import "./chunk-3Y224NYC.js";
16
+ import "./chunk-QH6CS6XJ.js";
17
+ import "./chunk-BLAKS3CP.js";
18
+ import "./chunk-S2BBISHU.js";
19
+ import "./chunk-CYEPCZN5.js";
20
+ import "./chunk-ES36HTSC.js";
21
+ import "./chunk-W7IGLX4G.js";
22
+ import "./chunk-CINZGPSJ.js";
23
+ import "./chunk-H2M4YA6K.js";
24
+ import "./chunk-LEPOP46W.js";
25
+ import "./chunk-72A4L5JJ.js";
26
+ import "./chunk-A7Q43EUZ.js";
27
+ import "./chunk-ET356KSB.js";
28
+ import "./chunk-QJAQNXWI.js";
29
+ import "./chunk-YV32N67O.js";
30
+ import "./chunk-64UDOIMI.js";
31
+ import "./chunk-IUM3VSHI.js";
32
+ import "./chunk-O75CRYGF.js";
33
+ import "./chunk-3ONXXHQO.js";
34
+ import "./chunk-GCQIMJFH.js";
35
+ import "./chunk-UHVXE24Y.js";
36
+ import "./chunk-2QMKMVHH.js";
37
+ import "./chunk-DEBHXHJR.js";
38
+ import "./chunk-DNHVPZOD.js";
39
+ import "./chunk-6CIAGZ6X.js";
40
+ import "./chunk-J6A3CX5N.js";
41
+ import "./chunk-HKF5VASQ.js";
42
+ import "./chunk-SCOT5DTA.js";
43
+ import "./chunk-XKGPIWGI.js";
44
+ import "./chunk-EGGE52UU.js";
45
+ import "./chunk-GCASGYIO.js";
46
+ import "./chunk-WL5EBRDH.js";
47
+ import "./chunk-ILGC6JH6.js";
48
+ import "./chunk-SCU65EZI.js";
49
+ import "./chunk-3CSX3ETE.js";
50
+ import "./chunk-RL6NEVXT.js";
51
+ import "./chunk-DM2T26WE.js";
52
+ import "./chunk-LDXUBPMO.js";
53
+ import "./chunk-CGASUJVP.js";
54
+ import "./chunk-R3DJVOSM.js";
55
+ import "./chunk-BT7NVCML.js";
56
+ import "./chunk-JYIJNNN3.js";
57
+ import "./chunk-AAD2ZS6P.js";
58
+ import "./chunk-G7D6GZ5J.js";
59
+ import "./chunk-5VQJBH2G.js";
60
+ import "./chunk-AITCS2RC.js";
61
+ import "./chunk-XMMESCPD.js";
62
+ import "./chunk-42JKGUFJ.js";
63
+ import "./chunk-PDJTHRAW.js";
64
+ import "./chunk-W5H6ZRPT.js";
65
+ import "./chunk-C23BYTJV.js";
66
+ import "./chunk-QIEUU4UK.js";
67
+ import "./chunk-L2EXJQJP.js";
68
+ import "./chunk-45GF7Y3V.js";
69
+ import "./chunk-RGMVMVMF.js";
70
+ import "./chunk-N7RWREIQ.js";
71
+ import "./chunk-BJMBJZ2Y.js";
72
+ import "./chunk-UKJAGEXH.js";
73
+ import "./chunk-FP2373TW.js";
74
+ import "./chunk-7AMFUATK.js";
75
+ import "./chunk-5I4M26Q7.js";
76
+ import "./chunk-5GKPFL3S.js";
77
+ import "./chunk-4DJQYKMN.js";
78
+ import "./chunk-PQVCH2AE.js";
79
+ import "./chunk-EYIEWJNI.js";
80
+ import "./chunk-JUC24CTX.js";
81
+ import "./chunk-P7FMDTKL.js";
82
+ import "./chunk-6MKAMLQL.js";
83
+ import "./chunk-JAKIDQB2.js";
84
+ import "./chunk-U3PN77QT.js";
85
+ import "./chunk-RDQGLJRR.js";
86
+ import "./chunk-2Z24E5W2.js";
87
+ import "./chunk-PVGDJXVK.js";
88
+ import "./chunk-FF4KLI5W.js";
89
+ import "./chunk-AIK5W3IW.js";
90
+ import "./chunk-A6XUJE5D.js";
91
+ import "./chunk-5UZXUTVO.js";
92
+ import "./chunk-VS2IYZRU.js";
93
+ import "./chunk-3WCASNQZ.js";
94
+ import "./chunk-PZ5AY32C.js";
95
+ export {
96
+ CorpusWatermarkCache,
97
+ UNPARTITIONED_BUCKET,
98
+ WATERMARK_CACHE_TTL_MS,
99
+ buildPartitionCensus,
100
+ computeCorpusWatermark,
101
+ computeCorpusWatermarks,
102
+ computeServiceCorpusWatermarks,
103
+ digestPartitionCensus,
104
+ resolveCorpusNamespaceRoots
105
+ };
106
+ //# sourceMappingURL=corpus-watermark.js.map
@@ -1,4 +1,4 @@
1
- import { S as StorageManager } from './storage-XGawwqXE.js';
1
+ import { S as StorageManager } from './storage-DgNVexXm.js';
2
2
  import { P as PluginConfig, T as TranscriptEntry } from './types-Bbs0qz6b.js';
3
3
  import './page-versioning.js';
4
4
  import './consolidation-operator.js';
@@ -3,11 +3,11 @@ import {
3
3
  entityIndexVersion,
4
4
  entityRecentTranscriptLookbackHours,
5
5
  readRecentEntityTranscriptEntries
6
- } from "./chunk-QE63OHLB.js";
6
+ } from "./chunk-RPOSRICW.js";
7
7
  import "./chunk-2DQ2XREU.js";
8
- import "./chunk-XWPFZX6S.js";
9
- import "./chunk-2QMKMVHH.js";
8
+ import "./chunk-GCQIMJFH.js";
10
9
  import "./chunk-UHVXE24Y.js";
10
+ import "./chunk-2QMKMVHH.js";
11
11
  import "./chunk-DEBHXHJR.js";
12
12
  import "./chunk-DNHVPZOD.js";
13
13
  import "./chunk-6CIAGZ6X.js";
@@ -22,13 +22,13 @@ import "./chunk-ILGC6JH6.js";
22
22
  import "./chunk-SCU65EZI.js";
23
23
  import "./chunk-3CSX3ETE.js";
24
24
  import "./chunk-RL6NEVXT.js";
25
- import "./chunk-LDXUBPMO.js";
26
25
  import "./chunk-DM2T26WE.js";
27
- import "./chunk-JYIJNNN3.js";
28
- import "./chunk-AAD2ZS6P.js";
26
+ import "./chunk-LDXUBPMO.js";
29
27
  import "./chunk-CGASUJVP.js";
30
28
  import "./chunk-R3DJVOSM.js";
31
29
  import "./chunk-BT7NVCML.js";
30
+ import "./chunk-JYIJNNN3.js";
31
+ import "./chunk-AAD2ZS6P.js";
32
32
  import "./chunk-G7D6GZ5J.js";
33
33
  import "./chunk-5VQJBH2G.js";
34
34
  import "./chunk-AITCS2RC.js";
@@ -46,8 +46,8 @@ import "./chunk-BJMBJZ2Y.js";
46
46
  import "./chunk-UKJAGEXH.js";
47
47
  import "./chunk-FP2373TW.js";
48
48
  import "./chunk-5I4M26Q7.js";
49
- import "./chunk-4DJQYKMN.js";
50
49
  import "./chunk-5GKPFL3S.js";
50
+ import "./chunk-4DJQYKMN.js";
51
51
  import "./chunk-PQVCH2AE.js";
52
52
  import "./chunk-EYIEWJNI.js";
53
53
  import "./chunk-JUC24CTX.js";
@@ -1,4 +1,4 @@
1
- import { O as Orchestrator } from './orchestrator-C9ZVppNh.js';
1
+ import { O as Orchestrator } from './orchestrator-RXHefhAy.js';
2
2
  import { w as MemoryCategory, P as PluginConfig } from './types-Bbs0qz6b.js';
3
3
  import './recall-state.js';
4
4
  import './utils/serialize-mutations.js';
@@ -7,7 +7,7 @@ import './message-parts/index.js';
7
7
  import './bounded-jsonl-state.js';
8
8
  import './types-continuity.js';
9
9
  import './briefing.js';
10
- import './storage-XGawwqXE.js';
10
+ import './storage-DgNVexXm.js';
11
11
  import './page-versioning.js';
12
12
  import './consolidation-operator.js';
13
13
  import './memory-projection-store.js';
@@ -25,7 +25,7 @@ import './resolve-provider-secret.js';
25
25
  import './transcript.js';
26
26
  import './session-integrity.js';
27
27
  import './summarizer.js';
28
- import './maintenance-C98njYb8.js';
28
+ import './maintenance-DGvDB1xF.js';
29
29
  import './catalog-BFTVo2Ez.js';
30
30
  import './namespaces/search.js';
31
31
  import './compounding/engine.js';
@@ -74,7 +74,7 @@ import './negative.js';
74
74
  import './session-observer-state.js';
75
75
  import './semantic-TddhF0y7.js';
76
76
  import './replay/types.js';
77
- import './service-DgFWlZ-r.js';
77
+ import './service-BrWqlsZ4.js';
78
78
  import './extraction-judge.js';
79
79
  import './lcm/engine.js';
80
80
  import './lcm/archive.js';
@@ -19,8 +19,8 @@ import "./chunk-C7SRUWBW.js";
19
19
  import "./chunk-JLNBQWZ2.js";
20
20
  import "./chunk-EI6V5UXY.js";
21
21
  import "./chunk-NLE6TSLG.js";
22
- import "./chunk-O75CRYGF.js";
23
22
  import "./chunk-QDW3E4RD.js";
23
+ import "./chunk-O75CRYGF.js";
24
24
  import "./chunk-C23BYTJV.js";
25
25
  import "./chunk-QIEUU4UK.js";
26
26
  import "./chunk-L2EXJQJP.js";
@@ -5,10 +5,10 @@ import {
5
5
  readGraphEdgeDecayStatus,
6
6
  runGraphEdgeDecayMaintenance,
7
7
  runGraphEdgeDecayMaintenanceAcrossNamespaces
8
- } from "./chunk-HNZKVLAN.js";
9
- import "./chunk-L2DPF4DF.js";
10
- import "./chunk-2LSZVONP.js";
8
+ } from "./chunk-W6ROK2KU.js";
9
+ import "./chunk-3SHB4YAW.js";
11
10
  import "./chunk-DEUNUKTD.js";
11
+ import "./chunk-2LSZVONP.js";
12
12
  import "./chunk-U3PN77QT.js";
13
13
  import "./chunk-PZ5AY32C.js";
14
14
  export {
@@ -19,4 +19,4 @@ export {
19
19
  runGraphEdgeDecayMaintenance,
20
20
  runGraphEdgeDecayMaintenanceAcrossNamespaces
21
21
  };
22
- //# sourceMappingURL=graph-edge-decay-Z6ENALU2.js.map
22
+ //# sourceMappingURL=graph-edge-decay-GF3ZSGSP.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -4,10 +4,10 @@ import {
4
4
  buildGraphSnapshot,
5
5
  normalizeGraphSnapshotLimit,
6
6
  parseGraphSnapshotSince
7
- } from "./chunk-JYIFGGEM.js";
8
- import "./chunk-L2DPF4DF.js";
9
- import "./chunk-2LSZVONP.js";
7
+ } from "./chunk-UZGJFIIG.js";
8
+ import "./chunk-3SHB4YAW.js";
10
9
  import "./chunk-DEUNUKTD.js";
10
+ import "./chunk-2LSZVONP.js";
11
11
  import "./chunk-PZ5AY32C.js";
12
12
  export {
13
13
  GRAPH_SNAPSHOT_DEFAULT_LIMIT,
package/dist/graph.js CHANGED
@@ -17,9 +17,9 @@ import {
17
17
  readEdges,
18
18
  readEdgesStrict,
19
19
  withGraphWriteLock
20
- } from "./chunk-L2DPF4DF.js";
21
- import "./chunk-2LSZVONP.js";
20
+ } from "./chunk-3SHB4YAW.js";
22
21
  import "./chunk-DEUNUKTD.js";
22
+ import "./chunk-2LSZVONP.js";
23
23
  import "./chunk-PZ5AY32C.js";
24
24
  export {
25
25
  CAUSAL_PHRASES,