@remnic/core 9.3.757 → 9.3.759

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 (174) hide show
  1. package/dist/access-admin-ops-surface.d.ts +2 -2
  2. package/dist/access-admin-ops-surface.js +20 -20
  3. package/dist/access-audit.js +2 -2
  4. package/dist/access-boundary.d.ts +2 -2
  5. package/dist/access-boundary.js +21 -21
  6. package/dist/access-cli.js +68 -68
  7. package/dist/access-http.d.ts +2 -2
  8. package/dist/access-http.js +28 -28
  9. package/dist/access-identity-continuity-surface.d.ts +166 -0
  10. package/dist/access-identity-continuity-surface.js +128 -0
  11. package/dist/access-lcm-surface.d.ts +2 -2
  12. package/dist/access-lcm-surface.js +20 -20
  13. package/dist/access-mcp.d.ts +2 -2
  14. package/dist/access-mcp.js +27 -27
  15. package/dist/access-observe-write-surface.d.ts +2 -2
  16. package/dist/access-observe-write-surface.js +20 -20
  17. package/dist/access-operations-batch.js +24 -24
  18. package/dist/access-operations.d.ts +2 -2
  19. package/dist/access-operations.js +26 -26
  20. package/dist/access-recall-surface.d.ts +2 -2
  21. package/dist/access-recall-surface.js +20 -20
  22. package/dist/access-schema.js +5 -5
  23. package/dist/{access-service-CJwcDoQp.d.ts → access-service-BW-gb3DL.d.ts} +4 -3
  24. package/dist/access-service.d.ts +2 -2
  25. package/dist/access-service.js +20 -20
  26. package/dist/access-surface-catalog.d.ts +2 -2
  27. package/dist/bootstrap.d.ts +1 -1
  28. package/dist/briefing.js +3 -3
  29. package/dist/{capsule-crypto-RAARDY3M.js → capsule-crypto-CZJSLEFG.js} +2 -2
  30. package/dist/causal-behavior.js +2 -2
  31. package/dist/causal-chain.js +2 -2
  32. package/dist/causal-consolidation.js +8 -8
  33. package/dist/causal-retrieval.js +2 -2
  34. package/dist/causal-trajectory-graph.js +2 -2
  35. package/dist/causal-trajectory.js +1 -1
  36. package/dist/{chunk-EEIROWEG.js → chunk-2BFLDH5F.js} +2 -2
  37. package/dist/{chunk-UPSAT4PY.js → chunk-2MR3MFQB.js} +2 -2
  38. package/dist/{chunk-MQQO56LN.js → chunk-2XE4F3VZ.js} +30 -30
  39. package/dist/{chunk-6A76LSX6.js → chunk-3JBW3GHN.js} +2 -2
  40. package/dist/{chunk-IZP62CEF.js → chunk-3QLPBCFG.js} +4 -4
  41. package/dist/{chunk-LNQUAJNC.js → chunk-437S3G37.js} +1 -1
  42. package/dist/{chunk-GI7PRVMV.js → chunk-6CUUFFU7.js} +2 -2
  43. package/dist/{chunk-6FYRCQ7K.js → chunk-7HWOEYHW.js} +2 -2
  44. package/dist/{chunk-AGNBY3VG.js → chunk-APJQ6UEA.js} +4 -4
  45. package/dist/{chunk-PXHY2E3S.js → chunk-AZSSKOG6.js} +4 -4
  46. package/dist/{chunk-XKUYMM34.js → chunk-DTSOB2YF.js} +2 -2
  47. package/dist/{chunk-6DMTYBNY.js → chunk-EGQ3AVZV.js} +2 -2
  48. package/dist/{chunk-XROP4ZHB.js → chunk-EHQ5HO5T.js} +4 -4
  49. package/dist/{chunk-KTULX4YO.js → chunk-FLVL4L3L.js} +4 -4
  50. package/dist/{chunk-2NTWULEQ.js → chunk-FYJWEGYP.js} +2 -2
  51. package/dist/{chunk-7HJ3XBMD.js → chunk-ILVF6TIY.js} +2 -2
  52. package/dist/{chunk-L5DU7THE.js → chunk-IOZZG75J.js} +2 -2
  53. package/dist/{chunk-4L2KHKLY.js → chunk-IZLGHKWA.js} +271 -197
  54. package/dist/chunk-IZLGHKWA.js.map +1 -0
  55. package/dist/{chunk-AINK3KDE.js → chunk-LLVKDFNU.js} +2 -2
  56. package/dist/{chunk-GIJDW2YO.js → chunk-M2AAYJVI.js} +3 -3
  57. package/dist/{chunk-CYWCKFCL.js → chunk-M5QKGHCR.js} +5 -5
  58. package/dist/{chunk-ZL3Y3ZTQ.js → chunk-OLEBPUZ7.js} +5 -5
  59. package/dist/{chunk-ZG2WP425.js → chunk-ORAK3LNZ.js} +2 -2
  60. package/dist/{chunk-SUN6XVNI.js → chunk-P26O6R3Q.js} +3 -3
  61. package/dist/{chunk-FFPH47IX.js → chunk-PKRRBRY2.js} +2 -2
  62. package/dist/{chunk-PHWBKQHK.js → chunk-QOM3F6YW.js} +8 -8
  63. package/dist/{chunk-FBS6V6LJ.js → chunk-QQJMVF6P.js} +4 -4
  64. package/dist/{chunk-T3UW6NRQ.js → chunk-QUGPXPFJ.js} +7 -7
  65. package/dist/{chunk-LVMVYLNB.js → chunk-SLAZZXBU.js} +2 -2
  66. package/dist/{chunk-RQXVVENY.js → chunk-SMLMH7S5.js} +174 -135
  67. package/dist/chunk-SMLMH7S5.js.map +1 -0
  68. package/dist/{chunk-IR6ATBUI.js → chunk-SN2EWIAI.js} +2 -2
  69. package/dist/{chunk-ZE7GJ76H.js → chunk-SQNED75R.js} +1 -1
  70. package/dist/{chunk-PMBWVQ7D.js → chunk-TQT3USCG.js} +2 -2
  71. package/dist/{chunk-7K5Q6COX.js → chunk-TVVEYCNW.js} +4 -4
  72. package/dist/{chunk-I65IQD7Y.js → chunk-WIXQ3F5P.js} +2 -2
  73. package/dist/{chunk-IF6BTZCB.js → chunk-XQT5GSWU.js} +2 -2
  74. package/dist/{chunk-5PHPNUZN.js → chunk-YP23FQPT.js} +288 -233
  75. package/dist/chunk-YP23FQPT.js.map +1 -0
  76. package/dist/{chunk-QVQG7W2H.js → chunk-ZEQVS6AZ.js} +2 -2
  77. package/dist/{chunk-CTGK5VK3.js → chunk-ZQNCHPTZ.js} +2 -2
  78. package/dist/{cli-cZyANcmY.d.ts → cli-D551dnva.d.ts} +2 -2
  79. package/dist/cli.d.ts +3 -3
  80. package/dist/cli.js +46 -46
  81. package/dist/compounding/engine.js +3 -3
  82. package/dist/connectors/codex-materialize-runner.js +3 -3
  83. package/dist/connectors/index.js +3 -3
  84. package/dist/contradiction/index.js +4 -4
  85. package/dist/entity-retrieval.js +3 -3
  86. package/dist/explicit-capture.d.ts +1 -1
  87. package/dist/{first-start-migration-RYY7PPGF.js → first-start-migration-DY6YCRC2.js} +4 -4
  88. package/dist/{graph-edge-decay-U2GKDAVM.js → graph-edge-decay-RXUCJIN4.js} +4 -4
  89. package/dist/graph-edge-decay-RXUCJIN4.js.map +1 -0
  90. package/dist/graph-snapshot.js +3 -3
  91. package/dist/graph.js +2 -2
  92. package/dist/index.d.ts +4 -4
  93. package/dist/index.js +85 -85
  94. package/dist/lcm/index.js +3 -3
  95. package/dist/maintenance/memory-governance.js +3 -3
  96. package/dist/maintenance/rebuild-memory-lifecycle-ledger.js +3 -3
  97. package/dist/maintenance/rebuild-memory-projection.js +4 -4
  98. package/dist/mcp-memory-inspector-app.d.ts +2 -2
  99. package/dist/namespaces/migrate.js +7 -7
  100. package/dist/namespaces/search.js +3 -3
  101. package/dist/namespaces/storage.js +3 -3
  102. package/dist/operator-toolkit.js +12 -12
  103. package/dist/orchestration/maintenance.js +5 -5
  104. package/dist/{orchestrator-Xm6sK5jw.d.ts → orchestrator-BnM187cb.d.ts} +2 -1
  105. package/dist/orchestrator.d.ts +1 -1
  106. package/dist/orchestrator.js +70 -70
  107. package/dist/search/factory.js +2 -2
  108. package/dist/search/index.js +4 -4
  109. package/dist/semantic-consolidation.js +4 -4
  110. package/dist/semantic-rule-promotion.js +3 -3
  111. package/dist/semantic-rule-verifier.js +3 -3
  112. package/dist/storage.d.ts +3 -4
  113. package/dist/storage.js +2 -2
  114. package/dist/transfer/backup.js +3 -3
  115. package/dist/transfer/capsule-export.js +4 -4
  116. package/dist/transfer/capsule-import.js +3 -3
  117. package/dist/transfer/import-sqlite.js +2 -2
  118. package/dist/verified-recall.js +3 -3
  119. package/package.json +2 -2
  120. package/src/access-identity-continuity-surface.test.ts +374 -0
  121. package/src/access-identity-continuity-surface.ts +322 -0
  122. package/src/access-service.ts +23 -171
  123. package/src/orchestration/recall-background-writes.ts +24 -0
  124. package/src/orchestration/recall-entry.ts +5 -0
  125. package/src/orchestration/recall-internal.ts +15 -11
  126. package/src/orchestration/recall-introspection.ts +5 -0
  127. package/src/orchestrator-background-writes.test.ts +101 -0
  128. package/src/orchestrator.ts +13 -13
  129. package/src/storage/identity-continuity-store.ts +223 -0
  130. package/src/storage-contract/round-trip.test.ts +5 -0
  131. package/src/storage.ts +27 -145
  132. package/src/trust-score-recall-paths.test.ts +2 -0
  133. package/dist/chunk-4L2KHKLY.js.map +0 -1
  134. package/dist/chunk-5PHPNUZN.js.map +0 -1
  135. package/dist/chunk-RQXVVENY.js.map +0 -1
  136. /package/dist/{capsule-crypto-RAARDY3M.js.map → access-identity-continuity-surface.js.map} +0 -0
  137. /package/dist/{graph-edge-decay-U2GKDAVM.js.map → capsule-crypto-CZJSLEFG.js.map} +0 -0
  138. /package/dist/{chunk-EEIROWEG.js.map → chunk-2BFLDH5F.js.map} +0 -0
  139. /package/dist/{chunk-UPSAT4PY.js.map → chunk-2MR3MFQB.js.map} +0 -0
  140. /package/dist/{chunk-MQQO56LN.js.map → chunk-2XE4F3VZ.js.map} +0 -0
  141. /package/dist/{chunk-6A76LSX6.js.map → chunk-3JBW3GHN.js.map} +0 -0
  142. /package/dist/{chunk-IZP62CEF.js.map → chunk-3QLPBCFG.js.map} +0 -0
  143. /package/dist/{chunk-LNQUAJNC.js.map → chunk-437S3G37.js.map} +0 -0
  144. /package/dist/{chunk-GI7PRVMV.js.map → chunk-6CUUFFU7.js.map} +0 -0
  145. /package/dist/{chunk-6FYRCQ7K.js.map → chunk-7HWOEYHW.js.map} +0 -0
  146. /package/dist/{chunk-AGNBY3VG.js.map → chunk-APJQ6UEA.js.map} +0 -0
  147. /package/dist/{chunk-PXHY2E3S.js.map → chunk-AZSSKOG6.js.map} +0 -0
  148. /package/dist/{chunk-XKUYMM34.js.map → chunk-DTSOB2YF.js.map} +0 -0
  149. /package/dist/{chunk-6DMTYBNY.js.map → chunk-EGQ3AVZV.js.map} +0 -0
  150. /package/dist/{chunk-XROP4ZHB.js.map → chunk-EHQ5HO5T.js.map} +0 -0
  151. /package/dist/{chunk-KTULX4YO.js.map → chunk-FLVL4L3L.js.map} +0 -0
  152. /package/dist/{chunk-2NTWULEQ.js.map → chunk-FYJWEGYP.js.map} +0 -0
  153. /package/dist/{chunk-7HJ3XBMD.js.map → chunk-ILVF6TIY.js.map} +0 -0
  154. /package/dist/{chunk-L5DU7THE.js.map → chunk-IOZZG75J.js.map} +0 -0
  155. /package/dist/{chunk-AINK3KDE.js.map → chunk-LLVKDFNU.js.map} +0 -0
  156. /package/dist/{chunk-GIJDW2YO.js.map → chunk-M2AAYJVI.js.map} +0 -0
  157. /package/dist/{chunk-CYWCKFCL.js.map → chunk-M5QKGHCR.js.map} +0 -0
  158. /package/dist/{chunk-ZL3Y3ZTQ.js.map → chunk-OLEBPUZ7.js.map} +0 -0
  159. /package/dist/{chunk-ZG2WP425.js.map → chunk-ORAK3LNZ.js.map} +0 -0
  160. /package/dist/{chunk-SUN6XVNI.js.map → chunk-P26O6R3Q.js.map} +0 -0
  161. /package/dist/{chunk-FFPH47IX.js.map → chunk-PKRRBRY2.js.map} +0 -0
  162. /package/dist/{chunk-PHWBKQHK.js.map → chunk-QOM3F6YW.js.map} +0 -0
  163. /package/dist/{chunk-FBS6V6LJ.js.map → chunk-QQJMVF6P.js.map} +0 -0
  164. /package/dist/{chunk-T3UW6NRQ.js.map → chunk-QUGPXPFJ.js.map} +0 -0
  165. /package/dist/{chunk-LVMVYLNB.js.map → chunk-SLAZZXBU.js.map} +0 -0
  166. /package/dist/{chunk-IR6ATBUI.js.map → chunk-SN2EWIAI.js.map} +0 -0
  167. /package/dist/{chunk-ZE7GJ76H.js.map → chunk-SQNED75R.js.map} +0 -0
  168. /package/dist/{chunk-PMBWVQ7D.js.map → chunk-TQT3USCG.js.map} +0 -0
  169. /package/dist/{chunk-7K5Q6COX.js.map → chunk-TVVEYCNW.js.map} +0 -0
  170. /package/dist/{chunk-I65IQD7Y.js.map → chunk-WIXQ3F5P.js.map} +0 -0
  171. /package/dist/{chunk-IF6BTZCB.js.map → chunk-XQT5GSWU.js.map} +0 -0
  172. /package/dist/{chunk-QVQG7W2H.js.map → chunk-ZEQVS6AZ.js.map} +0 -0
  173. /package/dist/{chunk-CTGK5VK3.js.map → chunk-ZQNCHPTZ.js.map} +0 -0
  174. /package/dist/{first-start-migration-RYY7PPGF.js.map → first-start-migration-DY6YCRC2.js.map} +0 -0
@@ -5,39 +5,42 @@ import {
5
5
  syncWearableSource,
6
6
  wearableSourceLabel
7
7
  } from "./chunk-IBAU2RZN.js";
8
+ import {
9
+ CompressionGuidelineCoordinator
10
+ } from "./chunk-5QANTTY2.js";
8
11
  import {
9
12
  MaintenanceScheduler
10
- } from "./chunk-6FYRCQ7K.js";
13
+ } from "./chunk-7HWOEYHW.js";
11
14
  import {
12
15
  runPeerProfileReasoner
13
16
  } from "./chunk-I74SUMNI.js";
14
17
  import {
15
18
  migrateFromEngram
16
19
  } from "./chunk-7HYPN2GC.js";
17
- import {
18
- CompressionGuidelineCoordinator
19
- } from "./chunk-5QANTTY2.js";
20
20
  import {
21
21
  LcmEngine
22
22
  } from "./chunk-CXW6Y7SI.js";
23
- import {
24
- chunkTranscriptEntries
25
- } from "./chunk-TECVW3JP.js";
26
23
  import {
27
24
  cleanupConversationChunks
28
25
  } from "./chunk-O7GOFAM3.js";
29
26
  import {
30
27
  CompoundingEngine,
31
28
  defaultTierMigrationCycleBudget
32
- } from "./chunk-QVQG7W2H.js";
29
+ } from "./chunk-ZEQVS6AZ.js";
33
30
  import {
34
31
  SharedContextManager
35
32
  } from "./chunk-JRZV3767.js";
33
+ import {
34
+ chunkTranscriptEntries
35
+ } from "./chunk-TECVW3JP.js";
36
36
  import {
37
37
  applyUtilityPromotionRuntimePolicy,
38
38
  applyUtilityRankingRuntimeDelta,
39
39
  loadUtilityRuntimeValues
40
40
  } from "./chunk-LXOM6IQU.js";
41
+ import {
42
+ TierMigrationExecutor
43
+ } from "./chunk-VOUOLGIP.js";
41
44
  import {
42
45
  decideTierTransition
43
46
  } from "./chunk-S75M5ZRK.js";
@@ -62,29 +65,12 @@ import {
62
65
  import {
63
66
  CODEX_THREAD_KEY_PREFIX
64
67
  } from "./chunk-4EX5WZ4M.js";
65
- import {
66
- TierMigrationExecutor
67
- } from "./chunk-VOUOLGIP.js";
68
68
  import {
69
69
  HourlySummarizer
70
70
  } from "./chunk-NNL4LJAD.js";
71
71
  import {
72
72
  SessionObserverState
73
73
  } from "./chunk-DKTSR7EK.js";
74
- import {
75
- applyRuntimeRetrievalPolicy
76
- } from "./chunk-5IZL4DCV.js";
77
- import {
78
- RelevanceStore
79
- } from "./chunk-GG6AJN7A.js";
80
- import {
81
- RerankCache,
82
- rerankLocalOrNoop
83
- } from "./chunk-E3VODCC3.js";
84
- import {
85
- buildResponseGuidanceRecallSection,
86
- shouldRecallResponseGuidance
87
- } from "./chunk-L6W77GWW.js";
88
74
  import {
89
75
  mergeWithAgentResults,
90
76
  runDirectAgent,
@@ -103,27 +89,44 @@ import {
103
89
  recencyWindowFromPrompt,
104
90
  resolvePromptTagPrefilterAsync
105
91
  } from "./chunk-MGN7VHWQ.js";
92
+ import {
93
+ applyRuntimeRetrievalPolicy
94
+ } from "./chunk-5IZL4DCV.js";
95
+ import {
96
+ findUnresolvedEntityRefs
97
+ } from "./chunk-X7XN6YU4.js";
98
+ import {
99
+ RelevanceStore
100
+ } from "./chunk-GG6AJN7A.js";
101
+ import {
102
+ RerankCache,
103
+ rerankLocalOrNoop
104
+ } from "./chunk-E3VODCC3.js";
105
+ import {
106
+ buildResponseGuidanceRecallSection,
107
+ shouldRecallResponseGuidance
108
+ } from "./chunk-L6W77GWW.js";
109
+ import {
110
+ createRecallSectionMetricRecorder
111
+ } from "./chunk-VQ34TERH.js";
106
112
  import {
107
113
  LastRecallStore,
108
114
  RecallHandleHistoryStore,
109
115
  TierMigrationStatusStore,
110
116
  clampGraphRecallExpandedEntries
111
117
  } from "./chunk-UC4YOAC2.js";
112
- import {
113
- findUnresolvedEntityRefs
114
- } from "./chunk-X7XN6YU4.js";
115
118
  import {
116
119
  reorderRecallResultsWithMmr
117
120
  } from "./chunk-YDBIWGNI.js";
118
- import {
119
- createRecallSectionMetricRecorder
120
- } from "./chunk-VQ34TERH.js";
121
121
  import {
122
122
  applyReasoningTraceBoost
123
123
  } from "./chunk-ZZTOURJI.js";
124
124
  import {
125
125
  NegativeExampleStore
126
126
  } from "./chunk-EXM3CQTZ.js";
127
+ import {
128
+ evaluateMemoryActionPolicy
129
+ } from "./chunk-H63EDPFJ.js";
127
130
  import {
128
131
  applyMemoryWorthFilter,
129
132
  buildMemoryWorthCounterMap
@@ -131,9 +134,6 @@ import {
131
134
  import {
132
135
  runLiveConnectorsOnce
133
136
  } from "./chunk-VU3SVYMA.js";
134
- import {
135
- evaluateMemoryActionPolicy
136
- } from "./chunk-H63EDPFJ.js";
137
137
  import {
138
138
  hasBroadGraphIntent,
139
139
  inferIntentFromText,
@@ -144,6 +144,10 @@ import {
144
144
  import {
145
145
  classifyMemoryKind
146
146
  } from "./chunk-YAZNBMNF.js";
147
+ import {
148
+ contentMatchesRedactionRules,
149
+ loadRedactionRules
150
+ } from "./chunk-LTHVM4XN.js";
147
151
  import {
148
152
  ExtractionEngine
149
153
  } from "./chunk-QOGXUNWL.js";
@@ -160,6 +164,10 @@ import {
160
164
  buildFocusedListRecallSection,
161
165
  shouldRecallFocusedListEvidence
162
166
  } from "./chunk-LZTFCAKE.js";
167
+ import {
168
+ pickFactEventTimeAnchor,
169
+ resolveFactEventTime
170
+ } from "./chunk-IAIPNEHD.js";
163
171
  import {
164
172
  buildExplicitCueRecallSection
165
173
  } from "./chunk-4463LUIE.js";
@@ -174,9 +182,8 @@ import {
174
182
  validateProcedureExtraction
175
183
  } from "./chunk-3NN73CM7.js";
176
184
  import {
177
- contentMatchesRedactionRules,
178
- loadRedactionRules
179
- } from "./chunk-LTHVM4XN.js";
185
+ tryDirectAnswer
186
+ } from "./chunk-Q6IP2ARR.js";
180
187
  import {
181
188
  EmbeddingFallback
182
189
  } from "./chunk-OSMBC3JU.js";
@@ -184,21 +191,14 @@ import {
184
191
  buildEntityRecallSection,
185
192
  entityRecentTranscriptLookbackHours,
186
193
  readRecentEntityTranscriptEntries
187
- } from "./chunk-FFPH47IX.js";
194
+ } from "./chunk-PKRRBRY2.js";
188
195
  import {
189
196
  buildEventOrderRecallSection,
190
197
  shouldRecallEventOrderEvidence
191
198
  } from "./chunk-FIOYURII.js";
192
- import {
193
- pickFactEventTimeAnchor,
194
- resolveFactEventTime
195
- } from "./chunk-IAIPNEHD.js";
196
199
  import {
197
200
  formatDaySummaryMemories
198
201
  } from "./chunk-LOPZ2DWR.js";
199
- import {
200
- tryDirectAnswer
201
- } from "./chunk-Q6IP2ARR.js";
202
202
  import {
203
203
  normalizeReplaySessionKey
204
204
  } from "./chunk-2PRQG7PV.js";
@@ -208,14 +208,14 @@ import {
208
208
  import {
209
209
  compareVerifiedEpisodeResults,
210
210
  searchVerifiedEpisodes
211
- } from "./chunk-2NTWULEQ.js";
211
+ } from "./chunk-FYJWEGYP.js";
212
212
  import {
213
213
  ThreadingManager
214
214
  } from "./chunk-QRDOSYOR.js";
215
215
  import {
216
216
  compareVerifiedSemanticRuleResults,
217
217
  searchVerifiedSemanticRules
218
- } from "./chunk-L5DU7THE.js";
218
+ } from "./chunk-IOZZG75J.js";
219
219
  import {
220
220
  searchWorkProductLedgerEntries
221
221
  } from "./chunk-ZRWB5D4H.js";
@@ -228,14 +228,14 @@ import {
228
228
  import {
229
229
  runNamespaceMaintenanceFanout,
230
230
  summarizeNamespaceMaintenanceHealth
231
- } from "./chunk-T3UW6NRQ.js";
231
+ } from "./chunk-QUGPXPFJ.js";
232
232
  import {
233
233
  NamespaceCatalog,
234
234
  planNamespaceMaintenance
235
- } from "./chunk-GI7PRVMV.js";
235
+ } from "./chunk-6CUUFFU7.js";
236
236
  import {
237
237
  NamespaceStorageRouter
238
- } from "./chunk-6DMTYBNY.js";
238
+ } from "./chunk-EGQ3AVZV.js";
239
239
  import {
240
240
  isAboveImportanceThreshold,
241
241
  scoreImportance
@@ -270,7 +270,10 @@ import {
270
270
  materializeAfterSemanticConsolidation,
271
271
  parseConsolidationResponse,
272
272
  parseOperatorAwareConsolidationResponse
273
- } from "./chunk-7HJ3XBMD.js";
273
+ } from "./chunk-ILVF6TIY.js";
274
+ import {
275
+ BoxBuilder
276
+ } from "./chunk-7FL4CNPV.js";
274
277
  import {
275
278
  semanticChunkContent
276
279
  } from "./chunk-P4BC54KI.js";
@@ -299,9 +302,6 @@ import {
299
302
  import {
300
303
  isDisagreementPrompt
301
304
  } from "./chunk-H3FZVNRN.js";
302
- import {
303
- BoxBuilder
304
- } from "./chunk-7FL4CNPV.js";
305
305
  import {
306
306
  WearablesInputError,
307
307
  describeErrorForOperator
@@ -316,10 +316,10 @@ import {
316
316
  createCorrectionService,
317
317
  detectPassiveCorrections,
318
318
  qmdCollectionPathParts
319
- } from "./chunk-4L2KHKLY.js";
319
+ } from "./chunk-IZLGHKWA.js";
320
320
  import {
321
321
  importCapsule
322
- } from "./chunk-CYWCKFCL.js";
322
+ } from "./chunk-M5QKGHCR.js";
323
323
  import {
324
324
  isCodingGraphInstalled
325
325
  } from "./chunk-VQ7B2Q6M.js";
@@ -343,11 +343,11 @@ import {
343
343
  } from "./chunk-W3M34XT4.js";
344
344
  import {
345
345
  NamespaceSearchRouter
346
- } from "./chunk-IF6BTZCB.js";
346
+ } from "./chunk-XQT5GSWU.js";
347
347
  import {
348
348
  createConversationIndexRuntime,
349
349
  createSearchBackend
350
- } from "./chunk-IZP62CEF.js";
350
+ } from "./chunk-3QLPBCFG.js";
351
351
  import {
352
352
  NoopSearchBackend
353
353
  } from "./chunk-CYEPCZN5.js";
@@ -377,10 +377,13 @@ import {
377
377
  } from "./chunk-QDW3E4RD.js";
378
378
  import {
379
379
  GraphIndex
380
- } from "./chunk-XROP4ZHB.js";
380
+ } from "./chunk-EHQ5HO5T.js";
381
+ import {
382
+ searchCausalTrajectories
383
+ } from "./chunk-SQNED75R.js";
381
384
  import {
382
385
  buildChainFollowupGenerator
383
- } from "./chunk-XKUYMM34.js";
386
+ } from "./chunk-DTSOB2YF.js";
384
387
  import {
385
388
  ContentHashIndex,
386
389
  StorageManager,
@@ -389,7 +392,7 @@ import {
389
392
  normalizeAttributePairs,
390
393
  parseEntityFile,
391
394
  selfDeps
392
- } from "./chunk-5PHPNUZN.js";
395
+ } from "./chunk-YP23FQPT.js";
393
396
  import {
394
397
  isValidTranscriptDate,
395
398
  loadSpeakerRegistry,
@@ -447,9 +450,6 @@ import {
447
450
  fallbackLlmRuntimeContextFromConfig,
448
451
  gatewayTaskChainOptions
449
452
  } from "./chunk-VUA4S7P6.js";
450
- import {
451
- searchCausalTrajectories
452
- } from "./chunk-ZE7GJ76H.js";
453
453
  import {
454
454
  canReadNamespace,
455
455
  canWriteNamespace,
@@ -507,13 +507,13 @@ import {
507
507
  import {
508
508
  log
509
509
  } from "./chunk-NU3CSQ4H.js";
510
+ import {
511
+ CAPSULE_ID_PATTERN
512
+ } from "./chunk-WEHSQBFR.js";
510
513
  import {
511
514
  keyring_exports,
512
515
  secureStoreDir
513
516
  } from "./chunk-GWTFLF2P.js";
514
- import {
515
- CAPSULE_ID_PATTERN
516
- } from "./chunk-WEHSQBFR.js";
517
517
  import {
518
518
  buildRetrievedMemoryProvenance
519
519
  } from "./chunk-I4WBNM3M.js";
@@ -6366,33 +6366,36 @@ var RecallInternalCoordinator = class {
6366
6366
  }
6367
6367
  }
6368
6368
  if (sessionKey) {
6369
- this.deps.lastRecall.record({
6370
- sessionKey,
6371
- query: retrievalQuery,
6372
- memoryIds: [],
6373
- namespace: selfNamespace,
6374
- traceId,
6375
- plannerMode: recallMode,
6376
- requestedMode,
6377
- source: recallSource,
6378
- fallbackUsed: false,
6379
- sourcesUsed: [],
6380
- budgetsApplied: this.deps.buildLastRecallBudgetSummary({
6381
- requestedTopK,
6382
- recallResultLimit,
6383
- qmdFetchLimit,
6384
- qmdHybridFetchLimit
6369
+ this.deps.trackRecallBackgroundWrite(
6370
+ this.deps.lastRecall.record({
6371
+ sessionKey,
6372
+ query: retrievalQuery,
6373
+ memoryIds: [],
6374
+ namespace: selfNamespace,
6375
+ traceId,
6376
+ plannerMode: recallMode,
6377
+ requestedMode,
6378
+ source: recallSource,
6379
+ fallbackUsed: false,
6380
+ sourcesUsed: [],
6381
+ budgetsApplied: this.deps.buildLastRecallBudgetSummary({
6382
+ requestedTopK,
6383
+ recallResultLimit,
6384
+ qmdFetchLimit,
6385
+ qmdHybridFetchLimit
6386
+ }),
6387
+ latencyMs: Date.now() - recallStart,
6388
+ resultPaths: [],
6389
+ policyVersion,
6390
+ appendImpression: this.deps.config.recordEmptyRecallImpressions,
6391
+ identityInjection: {
6392
+ mode: identityInjectionModeUsed,
6393
+ injectedChars: identityInjectedChars,
6394
+ truncated: identityInjectionTruncated
6395
+ }
6385
6396
  }),
6386
- latencyMs: Date.now() - recallStart,
6387
- resultPaths: [],
6388
- policyVersion,
6389
- appendImpression: this.deps.config.recordEmptyRecallImpressions,
6390
- identityInjection: {
6391
- mode: identityInjectionModeUsed,
6392
- injectedChars: identityInjectedChars,
6393
- truncated: identityInjectionTruncated
6394
- }
6395
- }).catch((err) => log.debug(`last recall record failed: ${err}`));
6397
+ "last recall record"
6398
+ );
6396
6399
  }
6397
6400
  if (sessionKey) {
6398
6401
  this.deps.queueEvalShadowRecall({
@@ -9848,41 +9851,47 @@ _Context: ${topQuestion.context}_`
9848
9851
  }
9849
9852
  if (sessionKey) {
9850
9853
  throwIfRecallAborted(options.abortSignal);
9851
- this.deps.lastRecall.record({
9852
- sessionKey,
9853
- query: retrievalQuery,
9854
- memoryIds: recalledMemoryIds,
9855
- namespace: selfNamespace,
9856
- recallNamespaces,
9857
- traceId,
9858
- plannerMode: recallMode,
9859
- requestedMode,
9860
- source: recallSource,
9861
- fallbackUsed: recallSource !== "none" && recallSource !== "hot_qmd",
9862
- sourcesUsed,
9863
- budgetsApplied,
9864
- latencyMs: Date.now() - recallStart,
9865
- resultPaths: recalledMemoryPaths,
9866
- policyVersion,
9867
- appendImpression: impressionRecorded || recalledMemoryIds.length > 0 || this.deps.config.recordEmptyRecallImpressions,
9868
- identityInjection: {
9869
- mode: identityInjectionModeUsed,
9870
- injectedChars: identityInjectedChars,
9871
- truncated: identityInjectionTruncated
9872
- },
9873
- // Included at record time so the published snapshot is born
9874
- // annotated a post-record annotation leaves a window where
9875
- // readers see the snapshot without degradations, and a concurrent
9876
- // same-session recall could drop them entirely (codex + cursor
9877
- // reviews on #1544).
9878
- backendDegradations: backendDegradations.length > 0 ? backendDegradations : void 0
9879
- }).catch((err) => log.debug(`last recall record failed: ${err}`));
9854
+ this.deps.trackRecallBackgroundWrite(
9855
+ this.deps.lastRecall.record({
9856
+ sessionKey,
9857
+ query: retrievalQuery,
9858
+ memoryIds: recalledMemoryIds,
9859
+ namespace: selfNamespace,
9860
+ recallNamespaces,
9861
+ traceId,
9862
+ plannerMode: recallMode,
9863
+ requestedMode,
9864
+ source: recallSource,
9865
+ fallbackUsed: recallSource !== "none" && recallSource !== "hot_qmd",
9866
+ sourcesUsed,
9867
+ budgetsApplied,
9868
+ latencyMs: Date.now() - recallStart,
9869
+ resultPaths: recalledMemoryPaths,
9870
+ policyVersion,
9871
+ appendImpression: impressionRecorded || recalledMemoryIds.length > 0 || this.deps.config.recordEmptyRecallImpressions,
9872
+ identityInjection: {
9873
+ mode: identityInjectionModeUsed,
9874
+ injectedChars: identityInjectedChars,
9875
+ truncated: identityInjectionTruncated
9876
+ },
9877
+ // Included at record time so the published snapshot is born
9878
+ // annotated a post-record annotation leaves a window where
9879
+ // readers see the snapshot without degradations, and a concurrent
9880
+ // same-session recall could drop them entirely (codex + cursor
9881
+ // reviews on #1544).
9882
+ backendDegradations: backendDegradations.length > 0 ? backendDegradations : void 0
9883
+ }),
9884
+ "last recall record"
9885
+ );
9880
9886
  if (this.deps.config.recallMemoryHandles && recalledMemoryIds.length > 0) {
9881
9887
  const handleEligibleIds = recalledMemoryIds.filter(
9882
9888
  (id) => MEMORY_ID_PATTERN.test(id)
9883
9889
  );
9884
9890
  if (handleEligibleIds.length > 0) {
9885
- this.deps.handleHistory.record(sessionKey, handleEligibleIds).catch((err) => log.debug(`handle history record failed: ${err}`));
9891
+ this.deps.trackRecallBackgroundWrite(
9892
+ this.deps.handleHistory.record(sessionKey, handleEligibleIds),
9893
+ "handle history record"
9894
+ );
9886
9895
  }
9887
9896
  }
9888
9897
  }
@@ -12359,6 +12368,10 @@ var RecallIntrospectionCoordinator = class {
12359
12368
  log.debug(`direct-answer observation chain error: ${err}`);
12360
12369
  }
12361
12370
  });
12371
+ this.deps.trackRecallBackgroundWrite(
12372
+ this.deps.directAnswerObservationChain,
12373
+ "direct-answer observation"
12374
+ );
12362
12375
  }
12363
12376
  async annotateDirectAnswerTier(prompt, sessionKey, namespaces, expectedIdentity, caps, _parentAbortSignal) {
12364
12377
  const tierStart = Date.now();
@@ -12792,7 +12805,7 @@ var OrchestratorInitCoordinator = class {
12792
12805
  if (signal.aborted) return;
12793
12806
  if (lifecycleCaps.lifecyclePolicy && resolveQmdCapabilities(this.deps.config).qmdTierMigration) {
12794
12807
  try {
12795
- const { runFirstStartMigration } = await import("./first-start-migration-RYY7PPGF.js");
12808
+ const { runFirstStartMigration } = await import("./first-start-migration-DY6YCRC2.js");
12796
12809
  const result = await runFirstStartMigration({
12797
12810
  storage: this.deps.storage,
12798
12811
  config: this.deps.config,
@@ -14868,6 +14881,10 @@ var RecallEntryCoordinator = class {
14868
14881
  log.debug(`eval shadow recall write failed: ${err}`);
14869
14882
  }
14870
14883
  });
14884
+ this.deps.trackRecallBackgroundWrite(
14885
+ this.deps.evalShadowWriteChain,
14886
+ "eval shadow recall write"
14887
+ );
14871
14888
  }
14872
14889
  publishRecallResults(options) {
14873
14890
  const sectionId = "memories";
@@ -15143,6 +15160,28 @@ var SessionContextCoordinator = class {
15143
15160
  }
15144
15161
  };
15145
15162
 
15163
+ // src/orchestration/recall-background-writes.ts
15164
+ var pendingWritesByOwner = /* @__PURE__ */ new WeakMap();
15165
+ function trackRecallWrite(owner, promise, label) {
15166
+ const observed = promise.catch((err) => {
15167
+ log.debug(`${label} failed: ${err}`);
15168
+ });
15169
+ const pendingWrites = pendingWritesByOwner.get(owner) ?? /* @__PURE__ */ new Set();
15170
+ pendingWritesByOwner.set(owner, pendingWrites);
15171
+ pendingWrites.add(observed);
15172
+ void observed.finally(() => {
15173
+ pendingWrites.delete(observed);
15174
+ if (pendingWrites.size === 0) pendingWritesByOwner.delete(owner);
15175
+ });
15176
+ }
15177
+ async function drainRecallWrites(owner) {
15178
+ while (true) {
15179
+ const pendingWrites = pendingWritesByOwner.get(owner);
15180
+ if (!pendingWrites || pendingWrites.size === 0) return;
15181
+ await Promise.all(pendingWrites);
15182
+ }
15183
+ }
15184
+
15146
15185
  // src/orchestrator.ts
15147
15186
  var Orchestrator = class {
15148
15187
  storage;
@@ -15281,8 +15320,7 @@ var Orchestrator = class {
15281
15320
  artifactSourceStatusCache = /* @__PURE__ */ new WeakMap();
15282
15321
  /** Read by NamespaceReadFanoutCoordinator (seam 26), hence not `private`. */
15283
15322
  static ARTIFACT_STATUS_CACHE_TTL_MS = 6e4;
15284
- // Access tracking buffer (Phase 1A)
15285
- // Maps memoryId -> {count, lastAccessed} for batched updates
15323
+ // Batched access-tracking counts and timestamps (Phase 1A).
15286
15324
  accessTrackingBuffer = /* @__PURE__ */ new Map();
15287
15325
  // Passive correction capture (issue #1581) — dedup state + lazy service.
15288
15326
  passiveCorrectionDedup = /* @__PURE__ */ new Set();
@@ -15445,9 +15483,7 @@ var Orchestrator = class {
15445
15483
  runtimePolicyValues = null;
15446
15484
  utilityRuntimeValues = null;
15447
15485
  evalShadowWriteChain = Promise.resolve();
15448
- // Pending background observation-mode direct-answer annotations (#518).
15449
- // Tracks fire-and-forget `annotateDirectAnswerTier` calls so callers (tests,
15450
- // waitForDirectAnswerObservationIdle) can await settlement.
15486
+ // Pending fire-and-forget direct-answer tier annotations (#518).
15451
15487
  directAnswerObservationChain = Promise.resolve();
15452
15488
  // Initialization gate: recall() awaits this before proceeding
15453
15489
  initPromise = null;
@@ -15487,8 +15523,9 @@ var Orchestrator = class {
15487
15523
  this.deferredInitAbort = null;
15488
15524
  }
15489
15525
  }
15490
- async disposeSearchBackendIfNeeded() {
15491
- await this.qmd.dispose?.();
15526
+ /** Track a recall-side write so destroy() can wait for it before teardown. @internal */
15527
+ trackRecallBackgroundWrite(promise, label) {
15528
+ trackRecallWrite(this, promise, label);
15492
15529
  }
15493
15530
  /**
15494
15531
  * Stop background initialization and release runtime-owned handles.
@@ -15502,8 +15539,9 @@ var Orchestrator = class {
15502
15539
  this.wearablesAutoSyncHandle = null;
15503
15540
  }
15504
15541
  this.maintenanceScheduler.dispose();
15542
+ await drainRecallWrites(this);
15505
15543
  await this.namespaceSearchRouter.dispose();
15506
- await this.disposeSearchBackendIfNeeded();
15544
+ await this.qmd.dispose?.();
15507
15545
  if (this.conversationQmd && this.conversationQmd !== this.qmd) {
15508
15546
  await this.conversationQmd.dispose?.();
15509
15547
  }
@@ -17212,8 +17250,9 @@ ${doc.content}` : doc.content,
17212
17250
  });
17213
17251
  }
17214
17252
  if (this.accessTrackingBuffer.size >= this.config.accessTrackingBufferMaxSize) {
17215
- this.flushAccessTracking().catch(
17216
- (err) => log.debug(`background access tracking flush failed: ${err}`)
17253
+ this.trackRecallBackgroundWrite(
17254
+ this.flushAccessTracking(),
17255
+ "background access tracking flush"
17217
17256
  );
17218
17257
  }
17219
17258
  }
@@ -22684,4 +22723,4 @@ export {
22684
22723
  blendGraphExpandedRecallScore,
22685
22724
  Orchestrator
22686
22725
  };
22687
- //# sourceMappingURL=chunk-RQXVVENY.js.map
22726
+ //# sourceMappingURL=chunk-SMLMH7S5.js.map