@remnic/core 9.33.0 → 9.34.0

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 (106) hide show
  1. package/dist/access-admin-ops-surface.js +15 -15
  2. package/dist/access-authorization-probe.js +16 -16
  3. package/dist/access-boundary.js +15 -15
  4. package/dist/access-cli.js +35 -34
  5. package/dist/access-cli.js.map +1 -1
  6. package/dist/access-extraction-force-flush.js +15 -15
  7. package/dist/access-http.js +25 -25
  8. package/dist/access-identity-continuity-surface.js +15 -15
  9. package/dist/access-lcm-surface.js +15 -15
  10. package/dist/access-mcp.js +20 -20
  11. package/dist/access-namespace-preflight.js +15 -15
  12. package/dist/access-observe-write-surface.js +15 -15
  13. package/dist/access-operations-batch.js +17 -17
  14. package/dist/access-operations.js +19 -19
  15. package/dist/access-recall-concurrency.js +15 -15
  16. package/dist/access-recall-response.js +15 -15
  17. package/dist/access-recall-surface.js +15 -15
  18. package/dist/access-schema.js +3 -3
  19. package/dist/access-service.js +15 -15
  20. package/dist/adapters/index.js +4 -4
  21. package/dist/adapters/registry.js +2 -2
  22. package/dist/{capsule-crypto-YO5QJ6L3.js → capsule-crypto-GWVG7LGC.js} +2 -2
  23. package/dist/{chunk-VDX2J7OX.js → chunk-5W7CTZ2E.js} +4 -4
  24. package/dist/{chunk-J6BYDVPL.js → chunk-6HXQ2YO5.js} +2 -2
  25. package/dist/{chunk-6NPZ3FP2.js → chunk-7CCVK67W.js} +5 -5
  26. package/dist/{chunk-77CNV7DY.js → chunk-BLAKS3CP.js} +4 -4
  27. package/dist/{chunk-YFQMW2TH.js → chunk-DG2R7M7K.js} +11 -11
  28. package/dist/{chunk-PTN6UAUA.js → chunk-ES36HTSC.js} +4 -4
  29. package/dist/{chunk-ATUURSST.js → chunk-FL3AM5KE.js} +3 -3
  30. package/dist/{chunk-I5DQ6KZK.js → chunk-FYO2GAZJ.js} +2 -2
  31. package/dist/{chunk-MPH263X2.js → chunk-HULSU7PS.js} +2 -2
  32. package/dist/{chunk-N2B56SIS.js → chunk-KJT3PZAR.js} +2 -2
  33. package/dist/chunk-KWMXR7XS.js +138 -0
  34. package/dist/chunk-KWMXR7XS.js.map +1 -0
  35. package/dist/{chunk-7RZJWZ46.js → chunk-LEPOP46W.js} +5 -5
  36. package/dist/{chunk-TITQYVKD.js → chunk-LRYAQGDR.js} +11 -11
  37. package/dist/{chunk-BXLOS5AJ.js → chunk-OWHERGF2.js} +2 -2
  38. package/dist/{chunk-6JE3HGS4.js → chunk-OXBPHIKH.js} +5 -5
  39. package/dist/{chunk-SIKCTPRK.js → chunk-QEPNZBBC.js} +3 -3
  40. package/dist/{chunk-2QSZNTDO.js → chunk-RKNJBZ55.js} +4 -4
  41. package/dist/{chunk-C4PEMCP4.js → chunk-RLOVRJZN.js} +7 -7
  42. package/dist/{chunk-EHNENZHZ.js → chunk-RQBF54FC.js} +3 -3
  43. package/dist/{chunk-SPPL77NI.js → chunk-RSFWAI4D.js} +49 -29
  44. package/dist/chunk-RSFWAI4D.js.map +1 -0
  45. package/dist/{chunk-RYHWZ52A.js → chunk-S2BBISHU.js} +4 -4
  46. package/dist/{chunk-V2MVDDJF.js → chunk-SUZI6BHQ.js} +2 -2
  47. package/dist/{chunk-DQEMWVMT.js → chunk-UVYI6VIX.js} +1 -1
  48. package/dist/{chunk-YJ7PWEWI.js → chunk-WFYWGDM6.js} +2 -2
  49. package/dist/{chunk-SFW2NABJ.js → chunk-Y6XRTQMV.js} +5 -5
  50. package/dist/{chunk-6NNNURLK.js → chunk-Z54EM5YZ.js} +4 -4
  51. package/dist/cli.js +29 -29
  52. package/dist/contradiction/index.js +4 -4
  53. package/dist/conversation-index/backend.js +2 -2
  54. package/dist/corpus-watermark.js +10 -10
  55. package/dist/index.d.ts +1 -1
  56. package/dist/index.js +51 -50
  57. package/dist/lcm/engine.js +2 -2
  58. package/dist/lcm/index.js +2 -2
  59. package/dist/namespaces/migrate.js +9 -9
  60. package/dist/namespaces/search.js +8 -8
  61. package/dist/operator-doctor-corpus.js +11 -11
  62. package/dist/operator-toolkit.js +12 -12
  63. package/dist/orchestrator.js +35 -34
  64. package/dist/search/factory.js +7 -7
  65. package/dist/search/index.js +7 -7
  66. package/dist/search/lancedb-backend.js +2 -2
  67. package/dist/search/meilisearch-backend.js +2 -2
  68. package/dist/search/orama-backend.js +2 -2
  69. package/dist/tool-scoped-memory.d.ts +47 -0
  70. package/dist/tool-scoped-memory.js +12 -0
  71. package/dist/tool-scoped-memory.js.map +1 -0
  72. package/dist/transfer/backup.js +2 -2
  73. package/dist/transfer/capsule-export.js +2 -2
  74. package/dist/transfer/capsule-import.js +2 -2
  75. package/package.json +2 -2
  76. package/src/extraction-redaction-rules.test.ts +53 -0
  77. package/src/index.ts +1 -1
  78. package/src/orchestration/extraction-persist.ts +31 -32
  79. package/src/tool-scoped-memory.test.ts +199 -0
  80. package/src/tool-scoped-memory.ts +190 -0
  81. package/dist/chunk-SPPL77NI.js.map +0 -1
  82. /package/dist/{capsule-crypto-YO5QJ6L3.js.map → capsule-crypto-GWVG7LGC.js.map} +0 -0
  83. /package/dist/{chunk-VDX2J7OX.js.map → chunk-5W7CTZ2E.js.map} +0 -0
  84. /package/dist/{chunk-J6BYDVPL.js.map → chunk-6HXQ2YO5.js.map} +0 -0
  85. /package/dist/{chunk-6NPZ3FP2.js.map → chunk-7CCVK67W.js.map} +0 -0
  86. /package/dist/{chunk-77CNV7DY.js.map → chunk-BLAKS3CP.js.map} +0 -0
  87. /package/dist/{chunk-YFQMW2TH.js.map → chunk-DG2R7M7K.js.map} +0 -0
  88. /package/dist/{chunk-PTN6UAUA.js.map → chunk-ES36HTSC.js.map} +0 -0
  89. /package/dist/{chunk-ATUURSST.js.map → chunk-FL3AM5KE.js.map} +0 -0
  90. /package/dist/{chunk-I5DQ6KZK.js.map → chunk-FYO2GAZJ.js.map} +0 -0
  91. /package/dist/{chunk-MPH263X2.js.map → chunk-HULSU7PS.js.map} +0 -0
  92. /package/dist/{chunk-N2B56SIS.js.map → chunk-KJT3PZAR.js.map} +0 -0
  93. /package/dist/{chunk-7RZJWZ46.js.map → chunk-LEPOP46W.js.map} +0 -0
  94. /package/dist/{chunk-TITQYVKD.js.map → chunk-LRYAQGDR.js.map} +0 -0
  95. /package/dist/{chunk-BXLOS5AJ.js.map → chunk-OWHERGF2.js.map} +0 -0
  96. /package/dist/{chunk-6JE3HGS4.js.map → chunk-OXBPHIKH.js.map} +0 -0
  97. /package/dist/{chunk-SIKCTPRK.js.map → chunk-QEPNZBBC.js.map} +0 -0
  98. /package/dist/{chunk-2QSZNTDO.js.map → chunk-RKNJBZ55.js.map} +0 -0
  99. /package/dist/{chunk-C4PEMCP4.js.map → chunk-RLOVRJZN.js.map} +0 -0
  100. /package/dist/{chunk-EHNENZHZ.js.map → chunk-RQBF54FC.js.map} +0 -0
  101. /package/dist/{chunk-RYHWZ52A.js.map → chunk-S2BBISHU.js.map} +0 -0
  102. /package/dist/{chunk-V2MVDDJF.js.map → chunk-SUZI6BHQ.js.map} +0 -0
  103. /package/dist/{chunk-DQEMWVMT.js.map → chunk-UVYI6VIX.js.map} +0 -0
  104. /package/dist/{chunk-YJ7PWEWI.js.map → chunk-WFYWGDM6.js.map} +0 -0
  105. /package/dist/{chunk-SFW2NABJ.js.map → chunk-Y6XRTQMV.js.map} +0 -0
  106. /package/dist/{chunk-6NNNURLK.js.map → chunk-Z54EM5YZ.js.map} +0 -0
@@ -2,20 +2,20 @@ import {
2
2
  NamespaceSearchRouter,
3
3
  namespaceCollectionName,
4
4
  normalizeQmdResultPath
5
- } from "../chunk-V2MVDDJF.js";
6
- import "../chunk-SFW2NABJ.js";
5
+ } from "../chunk-SUZI6BHQ.js";
6
+ import "../chunk-Y6XRTQMV.js";
7
7
  import "../chunk-3Y224NYC.js";
8
8
  import "../chunk-H24WNPA2.js";
9
- import "../chunk-77CNV7DY.js";
10
- import "../chunk-RYHWZ52A.js";
9
+ import "../chunk-BLAKS3CP.js";
10
+ import "../chunk-S2BBISHU.js";
11
11
  import "../chunk-CYEPCZN5.js";
12
- import "../chunk-PTN6UAUA.js";
13
- import "../chunk-CINZGPSJ.js";
12
+ import "../chunk-ES36HTSC.js";
14
13
  import "../chunk-W7IGLX4G.js";
15
- import "../chunk-7RZJWZ46.js";
14
+ import "../chunk-CINZGPSJ.js";
15
+ import "../chunk-LEPOP46W.js";
16
+ import "../chunk-72A4L5JJ.js";
16
17
  import "../chunk-A7Q43EUZ.js";
17
18
  import "../chunk-ET356KSB.js";
18
- import "../chunk-72A4L5JJ.js";
19
19
  import "../chunk-3ONXXHQO.js";
20
20
  import "../chunk-ONHRRJZM.js";
21
21
  import "../chunk-YV32N67O.js";
@@ -2,26 +2,26 @@ import {
2
2
  corpusWatermarksFromCheck,
3
3
  summarizeCorpusAndReplica,
4
4
  summarizeCorpusWatermark
5
- } from "./chunk-MPH263X2.js";
5
+ } from "./chunk-HULSU7PS.js";
6
6
  import "./chunk-WDISJRMG.js";
7
7
  import "./chunk-XOQSEF7X.js";
8
- import "./chunk-YJ7PWEWI.js";
9
- import "./chunk-N2B56SIS.js";
10
- import "./chunk-V2MVDDJF.js";
11
- import "./chunk-SFW2NABJ.js";
8
+ import "./chunk-WFYWGDM6.js";
9
+ import "./chunk-KJT3PZAR.js";
10
+ import "./chunk-SUZI6BHQ.js";
11
+ import "./chunk-Y6XRTQMV.js";
12
12
  import "./chunk-3Y224NYC.js";
13
13
  import "./chunk-H24WNPA2.js";
14
- import "./chunk-77CNV7DY.js";
15
- import "./chunk-RYHWZ52A.js";
14
+ import "./chunk-BLAKS3CP.js";
15
+ import "./chunk-S2BBISHU.js";
16
16
  import "./chunk-CYEPCZN5.js";
17
- import "./chunk-PTN6UAUA.js";
18
- import "./chunk-CINZGPSJ.js";
17
+ import "./chunk-ES36HTSC.js";
19
18
  import "./chunk-W7IGLX4G.js";
19
+ import "./chunk-CINZGPSJ.js";
20
20
  import "./chunk-Y2ZD2RVG.js";
21
- import "./chunk-7RZJWZ46.js";
21
+ import "./chunk-LEPOP46W.js";
22
+ import "./chunk-72A4L5JJ.js";
22
23
  import "./chunk-A7Q43EUZ.js";
23
24
  import "./chunk-ET356KSB.js";
24
- import "./chunk-72A4L5JJ.js";
25
25
  import "./chunk-3ONXXHQO.js";
26
26
  import "./chunk-ONHRRJZM.js";
27
27
  import "./chunk-YV32N67O.js";
@@ -14,11 +14,11 @@ import {
14
14
  summarizeProvenanceCoverage,
15
15
  summarizeTierDistribution,
16
16
  summarizeTombstoneStatus
17
- } from "./chunk-EHNENZHZ.js";
17
+ } from "./chunk-RQBF54FC.js";
18
18
  import "./chunk-TCIWHK3N.js";
19
19
  import "./chunk-KFY3SGN7.js";
20
20
  import "./chunk-CMTINOFS.js";
21
- import "./chunk-MPH263X2.js";
21
+ import "./chunk-HULSU7PS.js";
22
22
  import "./chunk-WDISJRMG.js";
23
23
  import "./chunk-OZKOPQCM.js";
24
24
  import "./chunk-2DQ2XREU.js";
@@ -37,23 +37,23 @@ import "./chunk-KFZY2OFH.js";
37
37
  import "./chunk-J6SLNQRO.js";
38
38
  import "./chunk-ULARSG5Z.js";
39
39
  import "./chunk-XOQSEF7X.js";
40
- import "./chunk-YJ7PWEWI.js";
41
- import "./chunk-N2B56SIS.js";
42
- import "./chunk-V2MVDDJF.js";
43
- import "./chunk-SFW2NABJ.js";
40
+ import "./chunk-WFYWGDM6.js";
41
+ import "./chunk-KJT3PZAR.js";
42
+ import "./chunk-SUZI6BHQ.js";
43
+ import "./chunk-Y6XRTQMV.js";
44
44
  import "./chunk-3Y224NYC.js";
45
45
  import "./chunk-H24WNPA2.js";
46
- import "./chunk-77CNV7DY.js";
47
- import "./chunk-RYHWZ52A.js";
46
+ import "./chunk-BLAKS3CP.js";
47
+ import "./chunk-S2BBISHU.js";
48
48
  import "./chunk-CYEPCZN5.js";
49
- import "./chunk-PTN6UAUA.js";
50
- import "./chunk-CINZGPSJ.js";
49
+ import "./chunk-ES36HTSC.js";
51
50
  import "./chunk-W7IGLX4G.js";
51
+ import "./chunk-CINZGPSJ.js";
52
52
  import "./chunk-Y2ZD2RVG.js";
53
- import "./chunk-7RZJWZ46.js";
53
+ import "./chunk-LEPOP46W.js";
54
+ import "./chunk-72A4L5JJ.js";
54
55
  import "./chunk-A7Q43EUZ.js";
55
56
  import "./chunk-ET356KSB.js";
56
- import "./chunk-72A4L5JJ.js";
57
57
  import "./chunk-3ONXXHQO.js";
58
58
  import "./chunk-L2DPF4DF.js";
59
59
  import "./chunk-2LSZVONP.js";
@@ -4,27 +4,27 @@ import {
4
4
  filterRecallCandidates,
5
5
  graphPathRelativeToStorage,
6
6
  mergeGraphExpandedResults
7
- } from "./chunk-SPPL77NI.js";
7
+ } from "./chunk-RSFWAI4D.js";
8
8
  import "./chunk-UV72DEZD.js";
9
+ import "./chunk-I74SUMNI.js";
10
+ import "./chunk-ILNPU5W5.js";
9
11
  import {
10
12
  formatCompressionGuidelinesForRecall
11
13
  } from "./chunk-6LKEUCEM.js";
12
14
  import "./chunk-IZXTZ7BF.js";
13
- import "./chunk-I74SUMNI.js";
14
- import "./chunk-ILNPU5W5.js";
15
15
  import "./chunk-7HYPN2GC.js";
16
16
  import "./chunk-666A3MOW.js";
17
17
  import "./chunk-KBL3JJR6.js";
18
18
  import "./chunk-FQ7HAWWC.js";
19
19
  import "./chunk-VDC6RZI4.js";
20
20
  import "./chunk-UWK5OXUJ.js";
21
- import "./chunk-6NNNURLK.js";
21
+ import "./chunk-Z54EM5YZ.js";
22
+ import "./chunk-TPDBFYEG.js";
22
23
  import "./chunk-UXPUUL3G.js";
23
24
  import "./chunk-DDA47TES.js";
24
25
  import "./chunk-PBGWYM3H.js";
25
26
  import "./chunk-LTAVSOZW.js";
26
27
  import "./chunk-7N4KAIGN.js";
27
- import "./chunk-TPDBFYEG.js";
28
28
  import "./chunk-V5OCT34X.js";
29
29
  import "./chunk-TECVW3JP.js";
30
30
  import "./chunk-C5JF6EZ7.js";
@@ -34,6 +34,7 @@ import "./chunk-LXOM6IQU.js";
34
34
  import "./chunk-VOUOLGIP.js";
35
35
  import "./chunk-S75M5ZRK.js";
36
36
  import "./chunk-ECZU5BJH.js";
37
+ import "./chunk-KWMXR7XS.js";
37
38
  import "./chunk-UHGBNIOS.js";
38
39
  import "./chunk-I6WYQSX4.js";
39
40
  import "./chunk-4EX5WZ4M.js";
@@ -94,20 +95,20 @@ import "./chunk-VEWZZM3H.js";
94
95
  import "./chunk-Q6IP2ARR.js";
95
96
  import "./chunk-6HEM6HTQ.js";
96
97
  import "./chunk-3I4FUAVJ.js";
97
- import "./chunk-TITQYVKD.js";
98
+ import "./chunk-LRYAQGDR.js";
98
99
  import "./chunk-MMACM5G2.js";
99
100
  import "./chunk-54BGIBCR.js";
100
101
  import "./chunk-H4CKS5B2.js";
101
102
  import "./chunk-FXZTL7F7.js";
102
103
  import "./chunk-HDDRVXX4.js";
103
104
  import "./chunk-PYHOAXTI.js";
105
+ import "./chunk-OWHERGF2.js";
104
106
  import "./chunk-UP6MOYCB.js";
105
107
  import "./chunk-BV2TIZ4F.js";
106
108
  import "./chunk-Z734BLO3.js";
107
109
  import "./chunk-OZKVVUJB.js";
108
110
  import "./chunk-2DL3OFLD.js";
109
111
  import "./chunk-G4IAEX6D.js";
110
- import "./chunk-BXLOS5AJ.js";
111
112
  import "./chunk-765K3SAT.js";
112
113
  import "./chunk-FGDKJJZS.js";
113
114
  import "./chunk-AJVLDJU6.js";
@@ -135,12 +136,12 @@ import "./chunk-ZRWB5D4H.js";
135
136
  import "./chunk-HYQJQGD3.js";
136
137
  import "./chunk-DMT2RGAZ.js";
137
138
  import "./chunk-33JBK2XP.js";
138
- import "./chunk-EHNENZHZ.js";
139
+ import "./chunk-RQBF54FC.js";
139
140
  import "./chunk-TCIWHK3N.js";
140
141
  import "./chunk-KFY3SGN7.js";
141
142
  import "./chunk-3T74IZB3.js";
142
143
  import "./chunk-CMTINOFS.js";
143
- import "./chunk-MPH263X2.js";
144
+ import "./chunk-HULSU7PS.js";
144
145
  import "./chunk-WDISJRMG.js";
145
146
  import "./chunk-UR6PBX2J.js";
146
147
  import "./chunk-6GUG4YNM.js";
@@ -182,47 +183,47 @@ import "./chunk-OO42R444.js";
182
183
  import "./chunk-PIG4WJFQ.js";
183
184
  import "./chunk-KFZY2OFH.js";
184
185
  import "./chunk-LBJBNWS2.js";
185
- import "./chunk-C4PEMCP4.js";
186
+ import "./chunk-RLOVRJZN.js";
186
187
  import "./chunk-V7IZKJI3.js";
187
188
  import "./chunk-SEDEKFYQ.js";
188
- import "./chunk-2QSZNTDO.js";
189
+ import "./chunk-RKNJBZ55.js";
190
+ import "./chunk-J64TK33U.js";
189
191
  import "./chunk-RSUYKGGZ.js";
190
192
  import "./chunk-42NQ7AVG.js";
191
193
  import "./chunk-TMSXWOBZ.js";
192
- import "./chunk-MKQBXQKU.js";
193
- import "./chunk-J64TK33U.js";
194
194
  import "./chunk-7RXCMVFQ.js";
195
- import "./chunk-ATUURSST.js";
195
+ import "./chunk-MKQBXQKU.js";
196
+ import "./chunk-FL3AM5KE.js";
196
197
  import "./chunk-57QKLRBV.js";
197
198
  import "./chunk-D24OXEPB.js";
198
- import "./chunk-SIKCTPRK.js";
199
- import "./chunk-6JE3HGS4.js";
199
+ import "./chunk-QEPNZBBC.js";
200
+ import "./chunk-OXBPHIKH.js";
200
201
  import "./chunk-HNZKVLAN.js";
201
202
  import "./chunk-EQWEIIKQ.js";
202
- import "./chunk-UTRO5UJU.js";
203
203
  import "./chunk-WG5HSQ4P.js";
204
+ import "./chunk-UTRO5UJU.js";
204
205
  import "./chunk-35NN3ZFA.js";
205
206
  import "./chunk-CEN6DW6X.js";
206
207
  import "./chunk-T4WDJPEZ.js";
207
- import "./chunk-I5DQ6KZK.js";
208
+ import "./chunk-FYO2GAZJ.js";
208
209
  import "./chunk-56BSXSHC.js";
209
210
  import "./chunk-WWUVONGW.js";
210
211
  import "./chunk-5IVLTFOV.js";
211
212
  import "./chunk-VCD4PSK2.js";
212
213
  import "./chunk-OADWQ5CR.js";
213
- import "./chunk-J6BYDVPL.js";
214
+ import "./chunk-6HXQ2YO5.js";
214
215
  import {
215
216
  hasIdentityRecoveryIntent,
216
217
  resolveEffectiveIdentityInjectionMode
217
- } from "./chunk-YFQMW2TH.js";
218
+ } from "./chunk-DG2R7M7K.js";
218
219
  import "./chunk-GDASG7NC.js";
219
220
  import "./chunk-GDB4J2H3.js";
220
- import "./chunk-6NPZ3FP2.js";
221
+ import "./chunk-7CCVK67W.js";
221
222
  import "./chunk-VQ7B2Q6M.js";
222
223
  import "./chunk-PJSK6OJM.js";
223
- import "./chunk-JGSKJHF7.js";
224
224
  import "./chunk-GNVZQ5JN.js";
225
225
  import "./chunk-YN2UN7N3.js";
226
+ import "./chunk-JGSKJHF7.js";
226
227
  import "./chunk-P5FPO2BR.js";
227
228
  import "./chunk-S4DDLTPX.js";
228
229
  import "./chunk-H7XKCNR6.js";
@@ -249,23 +250,23 @@ import "./chunk-NLE6TSLG.js";
249
250
  import "./chunk-QDW3E4RD.js";
250
251
  import "./chunk-PH3ZWL3W.js";
251
252
  import "./chunk-C37ZRXX7.js";
252
- import "./chunk-YJ7PWEWI.js";
253
- import "./chunk-N2B56SIS.js";
254
- import "./chunk-V2MVDDJF.js";
255
- import "./chunk-SFW2NABJ.js";
253
+ import "./chunk-WFYWGDM6.js";
254
+ import "./chunk-KJT3PZAR.js";
255
+ import "./chunk-SUZI6BHQ.js";
256
+ import "./chunk-Y6XRTQMV.js";
256
257
  import "./chunk-3Y224NYC.js";
257
258
  import "./chunk-H24WNPA2.js";
258
- import "./chunk-77CNV7DY.js";
259
- import "./chunk-RYHWZ52A.js";
259
+ import "./chunk-BLAKS3CP.js";
260
+ import "./chunk-S2BBISHU.js";
260
261
  import "./chunk-CYEPCZN5.js";
261
- import "./chunk-PTN6UAUA.js";
262
- import "./chunk-CINZGPSJ.js";
262
+ import "./chunk-ES36HTSC.js";
263
263
  import "./chunk-W7IGLX4G.js";
264
+ import "./chunk-CINZGPSJ.js";
264
265
  import "./chunk-Y2ZD2RVG.js";
265
- import "./chunk-7RZJWZ46.js";
266
+ import "./chunk-LEPOP46W.js";
267
+ import "./chunk-72A4L5JJ.js";
266
268
  import "./chunk-A7Q43EUZ.js";
267
269
  import "./chunk-ET356KSB.js";
268
- import "./chunk-72A4L5JJ.js";
269
270
  import "./chunk-3ONXXHQO.js";
270
271
  import "./chunk-UFGFMWAD.js";
271
272
  import "./chunk-L2DPF4DF.js";
@@ -380,9 +381,9 @@ import "./chunk-6MKAMLQL.js";
380
381
  import "./chunk-JAKIDQB2.js";
381
382
  import "./chunk-TBBDFYXW.js";
382
383
  import "./chunk-ZBJMUXZH.js";
383
- import "./chunk-VDX2J7OX.js";
384
+ import "./chunk-5W7CTZ2E.js";
385
+ import "./chunk-UVYI6VIX.js";
384
386
  import "./chunk-WEHSQBFR.js";
385
- import "./chunk-DQEMWVMT.js";
386
387
  import "./chunk-J4EB7DNW.js";
387
388
  import "./chunk-BJMBJZ2Y.js";
388
389
  import "./chunk-UKJAGEXH.js";
@@ -2,19 +2,19 @@ import {
2
2
  createConversationIndexRuntime,
3
3
  createConversationSearchBackend,
4
4
  createSearchBackend
5
- } from "../chunk-SFW2NABJ.js";
5
+ } from "../chunk-Y6XRTQMV.js";
6
6
  import "../chunk-3Y224NYC.js";
7
7
  import "../chunk-H24WNPA2.js";
8
- import "../chunk-77CNV7DY.js";
9
- import "../chunk-RYHWZ52A.js";
8
+ import "../chunk-BLAKS3CP.js";
9
+ import "../chunk-S2BBISHU.js";
10
10
  import "../chunk-CYEPCZN5.js";
11
- import "../chunk-PTN6UAUA.js";
12
- import "../chunk-CINZGPSJ.js";
11
+ import "../chunk-ES36HTSC.js";
13
12
  import "../chunk-W7IGLX4G.js";
14
- import "../chunk-7RZJWZ46.js";
13
+ import "../chunk-CINZGPSJ.js";
14
+ import "../chunk-LEPOP46W.js";
15
+ import "../chunk-72A4L5JJ.js";
15
16
  import "../chunk-A7Q43EUZ.js";
16
17
  import "../chunk-ET356KSB.js";
17
- import "../chunk-72A4L5JJ.js";
18
18
  import "../chunk-3ONXXHQO.js";
19
19
  import "../chunk-ONHRRJZM.js";
20
20
  import "../chunk-YV32N67O.js";
@@ -2,7 +2,7 @@ import {
2
2
  createConversationIndexRuntime,
3
3
  createConversationSearchBackend,
4
4
  createSearchBackend
5
- } from "../chunk-SFW2NABJ.js";
5
+ } from "../chunk-Y6XRTQMV.js";
6
6
  import {
7
7
  RemoteSearchBackend
8
8
  } from "../chunk-3Y224NYC.js";
@@ -11,24 +11,24 @@ import {
11
11
  } from "../chunk-H24WNPA2.js";
12
12
  import {
13
13
  LanceDbBackend
14
- } from "../chunk-77CNV7DY.js";
14
+ } from "../chunk-BLAKS3CP.js";
15
15
  import {
16
16
  MeilisearchBackend
17
- } from "../chunk-RYHWZ52A.js";
17
+ } from "../chunk-S2BBISHU.js";
18
18
  import {
19
19
  NoopSearchBackend
20
20
  } from "../chunk-CYEPCZN5.js";
21
21
  import {
22
22
  OramaBackend
23
- } from "../chunk-PTN6UAUA.js";
24
- import "../chunk-CINZGPSJ.js";
23
+ } from "../chunk-ES36HTSC.js";
25
24
  import {
26
25
  scanMemoryDir
27
26
  } from "../chunk-W7IGLX4G.js";
28
- import "../chunk-7RZJWZ46.js";
27
+ import "../chunk-CINZGPSJ.js";
28
+ import "../chunk-LEPOP46W.js";
29
+ import "../chunk-72A4L5JJ.js";
29
30
  import "../chunk-A7Q43EUZ.js";
30
31
  import "../chunk-ET356KSB.js";
31
- import "../chunk-72A4L5JJ.js";
32
32
  import "../chunk-3ONXXHQO.js";
33
33
  import "../chunk-ONHRRJZM.js";
34
34
  import "../chunk-YV32N67O.js";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  LanceDbBackend
3
- } from "../chunk-77CNV7DY.js";
4
- import "../chunk-CINZGPSJ.js";
3
+ } from "../chunk-BLAKS3CP.js";
5
4
  import "../chunk-W7IGLX4G.js";
5
+ import "../chunk-CINZGPSJ.js";
6
6
  import "../chunk-YV32N67O.js";
7
7
  import "../chunk-GCASGYIO.js";
8
8
  import "../chunk-PVGDJXVK.js";
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  MeilisearchBackend
3
- } from "../chunk-RYHWZ52A.js";
4
- import "../chunk-CINZGPSJ.js";
3
+ } from "../chunk-S2BBISHU.js";
5
4
  import "../chunk-W7IGLX4G.js";
5
+ import "../chunk-CINZGPSJ.js";
6
6
  import "../chunk-YV32N67O.js";
7
7
  import "../chunk-GCASGYIO.js";
8
8
  import "../chunk-PVGDJXVK.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  OramaBackend,
3
3
  resolveOramaCollectionDbFilePath
4
- } from "../chunk-PTN6UAUA.js";
5
- import "../chunk-CINZGPSJ.js";
4
+ } from "../chunk-ES36HTSC.js";
6
5
  import "../chunk-W7IGLX4G.js";
6
+ import "../chunk-CINZGPSJ.js";
7
7
  import "../chunk-YV32N67O.js";
8
8
  import "../chunk-GCASGYIO.js";
9
9
  import "../chunk-PVGDJXVK.js";
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Tool-scoped memory guard (issue #2183).
3
+ *
4
+ * A tool-related fact extracted from a specific agent integration carries an
5
+ * UNQUALIFIED tool name — "use the search tool" — with no agent identity
6
+ * attached (the conversation handed to the extraction LLM is rendered as
7
+ * `[role] content` only). Promoting such a fact to the shared namespace lets a
8
+ * DIFFERENT integration that exposes a same-named but incompatible tool (Pi
9
+ * `search` = repo code search vs OpenClaw `search` = web search) consume it.
10
+ *
11
+ * `referencesAgentSpecificTool` flags fact text that references a specific
12
+ * tool/command invocation rather than portable knowledge. The promotion guard
13
+ * in `orchestration/extraction-persist.ts` uses it — when the producing
14
+ * integration is known (`sourceConnector`) — to keep such a fact in that
15
+ * integration's own namespace.
16
+ *
17
+ * Tuning bias: a FALSE POSITIVE is cheap — the fact stays in the narrower
18
+ * namespace, the documented safe default. A FALSE NEGATIVE is the actual
19
+ * cross-integration collision bug, so detection leans permissive — but it must
20
+ * not fire on ordinary prose.
21
+ */
22
+ declare function referencesAgentSpecificTool(content: string): boolean;
23
+ interface ToolScopeWithholdInputs {
24
+ content: string;
25
+ sourceConnector?: string;
26
+ procedureSteps?: ReadonlyArray<{
27
+ intent?: string;
28
+ expectedOutcome?: string;
29
+ toolCall?: {
30
+ kind?: string;
31
+ };
32
+ }>;
33
+ }
34
+ declare function withholdToolScopedFromSharedNamespace({ content, sourceConnector, procedureSteps, }: ToolScopeWithholdInputs): boolean;
35
+ interface GlobalFactPromotionInputs {
36
+ scope: string | null | undefined;
37
+ content: string;
38
+ sourceConnector?: string;
39
+ procedureSteps?: ReadonlyArray<{
40
+ toolCall?: {
41
+ kind?: string;
42
+ };
43
+ }>;
44
+ }
45
+ declare function shouldPromoteGlobalFactToShared(inputs: GlobalFactPromotionInputs): boolean;
46
+
47
+ export { type GlobalFactPromotionInputs, type ToolScopeWithholdInputs, referencesAgentSpecificTool, shouldPromoteGlobalFactToShared, withholdToolScopedFromSharedNamespace };
@@ -0,0 +1,12 @@
1
+ import {
2
+ referencesAgentSpecificTool,
3
+ shouldPromoteGlobalFactToShared,
4
+ withholdToolScopedFromSharedNamespace
5
+ } from "./chunk-KWMXR7XS.js";
6
+ import "./chunk-PZ5AY32C.js";
7
+ export {
8
+ referencesAgentSpecificTool,
9
+ shouldPromoteGlobalFactToShared,
10
+ withholdToolScopedFromSharedNamespace
11
+ };
12
+ //# sourceMappingURL=tool-scoped-memory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"sourcesContent":[],"mappings":"","names":[]}
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  backupMemoryDir
3
- } from "../chunk-BXLOS5AJ.js";
3
+ } from "../chunk-OWHERGF2.js";
4
4
  import "../chunk-765K3SAT.js";
5
- import "../chunk-DQEMWVMT.js";
5
+ import "../chunk-UVYI6VIX.js";
6
6
  import "../chunk-J4EB7DNW.js";
7
7
  import "../chunk-BJMBJZ2Y.js";
8
8
  import "../chunk-UKJAGEXH.js";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  exportCapsule,
3
3
  isValidCapsuleSince
4
- } from "../chunk-VDX2J7OX.js";
4
+ } from "../chunk-5W7CTZ2E.js";
5
+ import "../chunk-UVYI6VIX.js";
5
6
  import "../chunk-WEHSQBFR.js";
6
- import "../chunk-DQEMWVMT.js";
7
7
  import "../chunk-J4EB7DNW.js";
8
8
  import "../chunk-BJMBJZ2Y.js";
9
9
  import "../chunk-UKJAGEXH.js";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  importCapsule
3
- } from "../chunk-6NPZ3FP2.js";
3
+ } from "../chunk-7CCVK67W.js";
4
4
  import "../chunk-6TAUHL33.js";
5
5
  import "../chunk-IJ7HK452.js";
6
6
  import "../chunk-PDJTHRAW.js";
7
7
  import "../chunk-XMMESCPD.js";
8
8
  import "../chunk-42JKGUFJ.js";
9
+ import "../chunk-UVYI6VIX.js";
9
10
  import "../chunk-WEHSQBFR.js";
10
- import "../chunk-DQEMWVMT.js";
11
11
  import "../chunk-BJMBJZ2Y.js";
12
12
  import "../chunk-UKJAGEXH.js";
13
13
  import "../chunk-FP2373TW.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@remnic/core",
3
- "version": "9.33.0",
3
+ "version": "9.34.0",
4
4
  "description": "Framework-agnostic Remnic memory engine — orchestrator, storage, extraction, search, trust zones",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -3076,7 +3076,7 @@
3076
3076
  "core"
3077
3077
  ],
3078
3078
  "peerDependencies": {
3079
- "@remnic/coding-graph": "^9.33.0"
3079
+ "@remnic/coding-graph": "^9.34.0"
3080
3080
  },
3081
3081
  "peerDependenciesMeta": {
3082
3082
  "@remnic/coding-graph": {
@@ -20,6 +20,7 @@ import {
20
20
  type CompiledRedactionRule,
21
21
  } from "./extraction-redaction-rules.js";
22
22
  import { validateRedactionPattern } from "./correction/correction-contract.js";
23
+ import { shouldPromoteGlobalFactToShared } from "./tool-scoped-memory.js";
23
24
 
24
25
  const withTempDir = <T>(fn: (dir: string) => Promise<T>): Promise<T> =>
25
26
  managedWithTempDir(fn, "remnic-redact-");
@@ -378,3 +379,55 @@ test("#1713 (codex): non-global fact is NOT scope-routed to shared", async () =>
378
379
  });
379
380
  });
380
381
  });
382
+ test("#2183: pre-judge consults the SESSION namespace rules for a tool-scoped global fact (not shared)", async () => {
383
+ // The pre-judge namespace prediction and the write-loop scope-routing block
384
+ // share shouldPromoteGlobalFactToShared, so a tool-scoped global fact from a
385
+ // known integration is predicted to stay in the session namespace: its
386
+ // redaction is evaluated against the SESSION rules, not the shared ones. A
387
+ // portable global fact is still predicted shared and consults shared rules.
388
+ // This is the read/write namespace-invariant coupling the guard preserves.
389
+ await withTempDir(async (sourceDir) => {
390
+ await withTempDir(async (sharedDir) => {
391
+ await writeRule(sourceDir, "session-only-secret");
392
+ await writeRule(sharedDir, "shared-only-secret");
393
+
394
+ const sourceNamespace: string = "default";
395
+ const sharedNamespace: string = "shared";
396
+ const sourceConnector = "pi";
397
+
398
+ // Mirror the pre-judge pass: predicted target namespace = shared ONLY
399
+ // when shouldPromoteGlobalFactToShared says so; load that namespace's
400
+ // rules and combine with the base (source) rules.
401
+ async function consultedRulesFor(fact: { scope: string; content: string }): Promise<CompiledRedactionRule[]> {
402
+ const baseRules = await loadRedactionRules(sourceDir);
403
+ const promote = shouldPromoteGlobalFactToShared({
404
+ scope: fact.scope,
405
+ content: fact.content,
406
+ sourceConnector,
407
+ });
408
+ const factNs = promote ? sharedNamespace : undefined;
409
+ const targetRules =
410
+ factNs && factNs !== sourceNamespace ? await loadRedactionRules(sharedDir) : [];
411
+ return [...baseRules, ...targetRules];
412
+ }
413
+
414
+ // (a) tool-scoped global fact + sourceConnector -> predicted SESSION.
415
+ const toolRules = await consultedRulesFor({ scope: "global", content: "Prefer the search tool when locating code." });
416
+ assert.ok(
417
+ contentMatchesRedactionRules("session-only-secret here", toolRules),
418
+ "session rules are consulted for a tool-scoped global fact",
419
+ );
420
+ assert.ok(
421
+ !contentMatchesRedactionRules("shared-only-secret here", toolRules),
422
+ "shared rules are NOT consulted for a tool-scoped global fact (the #2183 fix)",
423
+ );
424
+
425
+ // (b) portable global fact + sourceConnector -> predicted SHARED.
426
+ const portableRules = await consultedRulesFor({ scope: "global", content: "User prefers dark mode in all editors" });
427
+ assert.ok(
428
+ contentMatchesRedactionRules("shared-only-secret here", portableRules),
429
+ "shared rules ARE consulted for a portable global fact (no regression)",
430
+ );
431
+ });
432
+ });
433
+ });
package/src/index.ts CHANGED
@@ -1439,7 +1439,6 @@ export {
1439
1439
  type ForkLineage,
1440
1440
  } from "./transfer/capsule-fork.js";
1441
1441
 
1442
-
1443
1442
  // ---------------------------------------------------------------------------
1444
1443
  // Coding-graph engine contract (#1551 PR1) — types owned by core,
1445
1444
  // implemented by @remnic/coding-graph (à-la-carte optional).
@@ -1460,3 +1459,4 @@ export type {
1460
1459
  ParseResult,
1461
1460
  SymbolIR,
1462
1461
  } from "./coding/coding-graph-types.js";
1462
+ export type { ResolvedScopeProfilePlan } from "./namespaces/scope-profiles.js";