@fluidframework/container-runtime 2.0.0-rc.4.0.6 → 2.0.0-rc.5.0.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 (424) hide show
  1. package/CHANGELOG.md +46 -0
  2. package/api-extractor/api-extractor-lint-bundle.json +5 -0
  3. package/api-extractor/api-extractor-lint-legacy.cjs.json +5 -0
  4. package/api-extractor/api-extractor-lint-legacy.esm.json +5 -0
  5. package/api-extractor/api-extractor-lint-public.cjs.json +5 -0
  6. package/api-extractor/api-extractor-lint-public.esm.json +5 -0
  7. package/api-extractor.json +1 -1
  8. package/api-report/{container-runtime.api.md → container-runtime.alpha.api.md} +33 -516
  9. package/api-report/container-runtime.beta.api.md +73 -0
  10. package/api-report/container-runtime.public.api.md +73 -0
  11. package/biome.jsonc +4 -0
  12. package/container-runtime.test-files.tar +0 -0
  13. package/dist/batchTracker.d.ts.map +1 -1
  14. package/dist/batchTracker.js.map +1 -1
  15. package/dist/blobManager.d.ts +3 -20
  16. package/dist/blobManager.d.ts.map +1 -1
  17. package/dist/blobManager.js +1 -35
  18. package/dist/blobManager.js.map +1 -1
  19. package/dist/channelCollection.d.ts +21 -12
  20. package/dist/channelCollection.d.ts.map +1 -1
  21. package/dist/channelCollection.js +113 -110
  22. package/dist/channelCollection.js.map +1 -1
  23. package/dist/connectionTelemetry.d.ts +1 -1
  24. package/dist/connectionTelemetry.d.ts.map +1 -1
  25. package/dist/connectionTelemetry.js +14 -14
  26. package/dist/connectionTelemetry.js.map +1 -1
  27. package/dist/containerHandleContext.d.ts +2 -1
  28. package/dist/containerHandleContext.d.ts.map +1 -1
  29. package/dist/containerHandleContext.js.map +1 -1
  30. package/dist/containerRuntime.d.ts +17 -34
  31. package/dist/containerRuntime.d.ts.map +1 -1
  32. package/dist/containerRuntime.js +109 -145
  33. package/dist/containerRuntime.js.map +1 -1
  34. package/dist/dataStore.d.ts.map +1 -1
  35. package/dist/dataStore.js.map +1 -1
  36. package/dist/dataStoreContext.d.ts +30 -44
  37. package/dist/dataStoreContext.d.ts.map +1 -1
  38. package/dist/dataStoreContext.js +26 -40
  39. package/dist/dataStoreContext.js.map +1 -1
  40. package/dist/dataStoreContexts.d.ts.map +1 -1
  41. package/dist/dataStoreContexts.js.map +1 -1
  42. package/dist/dataStoreRegistry.js.map +1 -1
  43. package/dist/deltaManagerProxies.d.ts +4 -3
  44. package/dist/deltaManagerProxies.d.ts.map +1 -1
  45. package/dist/deltaManagerProxies.js.map +1 -1
  46. package/dist/deltaScheduler.d.ts +1 -1
  47. package/dist/deltaScheduler.d.ts.map +1 -1
  48. package/dist/deltaScheduler.js +1 -3
  49. package/dist/deltaScheduler.js.map +1 -1
  50. package/dist/gc/garbageCollection.d.ts +5 -5
  51. package/dist/gc/garbageCollection.d.ts.map +1 -1
  52. package/dist/gc/garbageCollection.js +29 -30
  53. package/dist/gc/garbageCollection.js.map +1 -1
  54. package/dist/gc/gcConfigs.d.ts.map +1 -1
  55. package/dist/gc/gcConfigs.js +12 -31
  56. package/dist/gc/gcConfigs.js.map +1 -1
  57. package/dist/gc/gcDefinitions.d.ts +10 -38
  58. package/dist/gc/gcDefinitions.d.ts.map +1 -1
  59. package/dist/gc/gcDefinitions.js +1 -5
  60. package/dist/gc/gcDefinitions.js.map +1 -1
  61. package/dist/gc/gcHelpers.d.ts +2 -3
  62. package/dist/gc/gcHelpers.d.ts.map +1 -1
  63. package/dist/gc/gcHelpers.js.map +1 -1
  64. package/dist/gc/gcReferenceGraphAlgorithm.js.map +1 -1
  65. package/dist/gc/gcSummaryDefinitions.d.ts +1 -1
  66. package/dist/gc/gcSummaryDefinitions.d.ts.map +1 -1
  67. package/dist/gc/gcSummaryDefinitions.js.map +1 -1
  68. package/dist/gc/gcSummaryStateTracker.d.ts +2 -35
  69. package/dist/gc/gcSummaryStateTracker.d.ts.map +1 -1
  70. package/dist/gc/gcSummaryStateTracker.js +9 -62
  71. package/dist/gc/gcSummaryStateTracker.js.map +1 -1
  72. package/dist/gc/gcTelemetry.d.ts +2 -2
  73. package/dist/gc/gcTelemetry.d.ts.map +1 -1
  74. package/dist/gc/gcTelemetry.js +3 -9
  75. package/dist/gc/gcTelemetry.js.map +1 -1
  76. package/dist/gc/gcUnreferencedStateTracker.js.map +1 -1
  77. package/dist/gc/index.d.ts +1 -1
  78. package/dist/gc/index.d.ts.map +1 -1
  79. package/dist/gc/index.js +1 -3
  80. package/dist/gc/index.js.map +1 -1
  81. package/dist/index.d.ts +2 -2
  82. package/dist/index.d.ts.map +1 -1
  83. package/dist/index.js.map +1 -1
  84. package/dist/legacy.d.ts +1 -1
  85. package/dist/messageTypes.d.ts +6 -22
  86. package/dist/messageTypes.d.ts.map +1 -1
  87. package/dist/messageTypes.js.map +1 -1
  88. package/dist/opLifecycle/batchManager.js.map +1 -1
  89. package/dist/opLifecycle/definitions.d.ts +2 -2
  90. package/dist/opLifecycle/definitions.d.ts.map +1 -1
  91. package/dist/opLifecycle/definitions.js.map +1 -1
  92. package/dist/opLifecycle/index.d.ts +1 -1
  93. package/dist/opLifecycle/index.d.ts.map +1 -1
  94. package/dist/opLifecycle/index.js.map +1 -1
  95. package/dist/opLifecycle/opCompressor.d.ts +11 -1
  96. package/dist/opLifecycle/opCompressor.d.ts.map +1 -1
  97. package/dist/opLifecycle/opCompressor.js +13 -2
  98. package/dist/opLifecycle/opCompressor.js.map +1 -1
  99. package/dist/opLifecycle/opDecompressor.d.ts +1 -1
  100. package/dist/opLifecycle/opDecompressor.d.ts.map +1 -1
  101. package/dist/opLifecycle/opDecompressor.js +1 -2
  102. package/dist/opLifecycle/opDecompressor.js.map +1 -1
  103. package/dist/opLifecycle/opGroupingManager.d.ts +10 -3
  104. package/dist/opLifecycle/opGroupingManager.d.ts.map +1 -1
  105. package/dist/opLifecycle/opGroupingManager.js +7 -0
  106. package/dist/opLifecycle/opGroupingManager.js.map +1 -1
  107. package/dist/opLifecycle/opSplitter.d.ts +4 -2
  108. package/dist/opLifecycle/opSplitter.d.ts.map +1 -1
  109. package/dist/opLifecycle/opSplitter.js +13 -8
  110. package/dist/opLifecycle/opSplitter.js.map +1 -1
  111. package/dist/opLifecycle/outbox.d.ts +10 -0
  112. package/dist/opLifecycle/outbox.d.ts.map +1 -1
  113. package/dist/opLifecycle/outbox.js +13 -18
  114. package/dist/opLifecycle/outbox.js.map +1 -1
  115. package/dist/opLifecycle/remoteMessageProcessor.d.ts +1 -1
  116. package/dist/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
  117. package/dist/opLifecycle/remoteMessageProcessor.js +2 -2
  118. package/dist/opLifecycle/remoteMessageProcessor.js.map +1 -1
  119. package/dist/opProperties.d.ts +1 -1
  120. package/dist/opProperties.d.ts.map +1 -1
  121. package/dist/opProperties.js.map +1 -1
  122. package/dist/packageVersion.d.ts +1 -1
  123. package/dist/packageVersion.js +1 -1
  124. package/dist/packageVersion.js.map +1 -1
  125. package/dist/pendingStateManager.d.ts.map +1 -1
  126. package/dist/pendingStateManager.js +15 -5
  127. package/dist/pendingStateManager.js.map +1 -1
  128. package/dist/scheduleManager.d.ts +1 -1
  129. package/dist/scheduleManager.d.ts.map +1 -1
  130. package/dist/scheduleManager.js.map +1 -1
  131. package/dist/storageServiceWithAttachBlobs.js.map +1 -1
  132. package/dist/summary/documentSchema.d.ts.map +1 -1
  133. package/dist/summary/documentSchema.js +2 -3
  134. package/dist/summary/documentSchema.js.map +1 -1
  135. package/dist/summary/index.d.ts +2 -2
  136. package/dist/summary/index.d.ts.map +1 -1
  137. package/dist/summary/index.js.map +1 -1
  138. package/dist/summary/orderedClientElection.d.ts +4 -2
  139. package/dist/summary/orderedClientElection.d.ts.map +1 -1
  140. package/dist/summary/orderedClientElection.js +35 -13
  141. package/dist/summary/orderedClientElection.js.map +1 -1
  142. package/dist/summary/runWhileConnectedCoordinator.js.map +1 -1
  143. package/dist/summary/runningSummarizer.d.ts +1 -6
  144. package/dist/summary/runningSummarizer.d.ts.map +1 -1
  145. package/dist/summary/runningSummarizer.js +23 -110
  146. package/dist/summary/runningSummarizer.js.map +1 -1
  147. package/dist/summary/summarizer.d.ts +1 -1
  148. package/dist/summary/summarizer.d.ts.map +1 -1
  149. package/dist/summary/summarizer.js +4 -1
  150. package/dist/summary/summarizer.js.map +1 -1
  151. package/dist/summary/summarizerClientElection.d.ts +1 -1
  152. package/dist/summary/summarizerClientElection.d.ts.map +1 -1
  153. package/dist/summary/summarizerClientElection.js +2 -2
  154. package/dist/summary/summarizerClientElection.js.map +1 -1
  155. package/dist/summary/summarizerHeuristics.js.map +1 -1
  156. package/dist/summary/summarizerNode/summarizerNode.d.ts +2 -3
  157. package/dist/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  158. package/dist/summary/summarizerNode/summarizerNode.js +16 -16
  159. package/dist/summary/summarizerNode/summarizerNode.js.map +1 -1
  160. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts +2 -1
  161. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  162. package/dist/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  163. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts +2 -3
  164. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  165. package/dist/summary/summarizerNode/summarizerNodeWithGc.js +5 -2
  166. package/dist/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  167. package/dist/summary/summarizerTypes.d.ts +17 -29
  168. package/dist/summary/summarizerTypes.d.ts.map +1 -1
  169. package/dist/summary/summarizerTypes.js.map +1 -1
  170. package/dist/summary/summaryCollection.d.ts +1 -1
  171. package/dist/summary/summaryCollection.d.ts.map +1 -1
  172. package/dist/summary/summaryCollection.js +11 -11
  173. package/dist/summary/summaryCollection.js.map +1 -1
  174. package/dist/summary/summaryFormat.d.ts +2 -3
  175. package/dist/summary/summaryFormat.d.ts.map +1 -1
  176. package/dist/summary/summaryFormat.js +2 -2
  177. package/dist/summary/summaryFormat.js.map +1 -1
  178. package/dist/summary/summaryGenerator.d.ts +7 -8
  179. package/dist/summary/summaryGenerator.d.ts.map +1 -1
  180. package/dist/summary/summaryGenerator.js +27 -24
  181. package/dist/summary/summaryGenerator.js.map +1 -1
  182. package/dist/summary/summaryManager.d.ts.map +1 -1
  183. package/dist/summary/summaryManager.js +1 -2
  184. package/dist/summary/summaryManager.js.map +1 -1
  185. package/dist/throttler.d.ts.map +1 -1
  186. package/dist/throttler.js +3 -1
  187. package/dist/throttler.js.map +1 -1
  188. package/lib/batchTracker.d.ts.map +1 -1
  189. package/lib/batchTracker.js +1 -1
  190. package/lib/batchTracker.js.map +1 -1
  191. package/lib/blobManager.d.ts +3 -20
  192. package/lib/blobManager.d.ts.map +1 -1
  193. package/lib/blobManager.js +2 -36
  194. package/lib/blobManager.js.map +1 -1
  195. package/lib/channelCollection.d.ts +21 -12
  196. package/lib/channelCollection.d.ts.map +1 -1
  197. package/lib/channelCollection.js +114 -112
  198. package/lib/channelCollection.js.map +1 -1
  199. package/lib/connectionTelemetry.d.ts +1 -1
  200. package/lib/connectionTelemetry.d.ts.map +1 -1
  201. package/lib/connectionTelemetry.js +2 -2
  202. package/lib/connectionTelemetry.js.map +1 -1
  203. package/lib/containerHandleContext.d.ts +2 -1
  204. package/lib/containerHandleContext.d.ts.map +1 -1
  205. package/lib/containerHandleContext.js.map +1 -1
  206. package/lib/containerRuntime.d.ts +17 -34
  207. package/lib/containerRuntime.d.ts.map +1 -1
  208. package/lib/containerRuntime.js +106 -142
  209. package/lib/containerRuntime.js.map +1 -1
  210. package/lib/dataStore.d.ts.map +1 -1
  211. package/lib/dataStore.js.map +1 -1
  212. package/lib/dataStoreContext.d.ts +30 -44
  213. package/lib/dataStoreContext.d.ts.map +1 -1
  214. package/lib/dataStoreContext.js +29 -43
  215. package/lib/dataStoreContext.js.map +1 -1
  216. package/lib/dataStoreContexts.d.ts.map +1 -1
  217. package/lib/dataStoreContexts.js +1 -1
  218. package/lib/dataStoreContexts.js.map +1 -1
  219. package/lib/dataStoreRegistry.js.map +1 -1
  220. package/lib/deltaManagerProxies.d.ts +4 -3
  221. package/lib/deltaManagerProxies.d.ts.map +1 -1
  222. package/lib/deltaManagerProxies.js.map +1 -1
  223. package/lib/deltaScheduler.d.ts +1 -1
  224. package/lib/deltaScheduler.d.ts.map +1 -1
  225. package/lib/deltaScheduler.js +1 -3
  226. package/lib/deltaScheduler.js.map +1 -1
  227. package/lib/gc/garbageCollection.d.ts +5 -5
  228. package/lib/gc/garbageCollection.d.ts.map +1 -1
  229. package/lib/gc/garbageCollection.js +30 -31
  230. package/lib/gc/garbageCollection.js.map +1 -1
  231. package/lib/gc/gcConfigs.d.ts.map +1 -1
  232. package/lib/gc/gcConfigs.js +13 -32
  233. package/lib/gc/gcConfigs.js.map +1 -1
  234. package/lib/gc/gcDefinitions.d.ts +10 -38
  235. package/lib/gc/gcDefinitions.d.ts.map +1 -1
  236. package/lib/gc/gcDefinitions.js +0 -4
  237. package/lib/gc/gcDefinitions.js.map +1 -1
  238. package/lib/gc/gcHelpers.d.ts +2 -3
  239. package/lib/gc/gcHelpers.d.ts.map +1 -1
  240. package/lib/gc/gcHelpers.js.map +1 -1
  241. package/lib/gc/gcReferenceGraphAlgorithm.js.map +1 -1
  242. package/lib/gc/gcSummaryDefinitions.d.ts +1 -1
  243. package/lib/gc/gcSummaryDefinitions.d.ts.map +1 -1
  244. package/lib/gc/gcSummaryDefinitions.js.map +1 -1
  245. package/lib/gc/gcSummaryStateTracker.d.ts +2 -35
  246. package/lib/gc/gcSummaryStateTracker.d.ts.map +1 -1
  247. package/lib/gc/gcSummaryStateTracker.js +4 -57
  248. package/lib/gc/gcSummaryStateTracker.js.map +1 -1
  249. package/lib/gc/gcTelemetry.d.ts +2 -2
  250. package/lib/gc/gcTelemetry.d.ts.map +1 -1
  251. package/lib/gc/gcTelemetry.js +3 -9
  252. package/lib/gc/gcTelemetry.js.map +1 -1
  253. package/lib/gc/gcUnreferencedStateTracker.js.map +1 -1
  254. package/lib/gc/index.d.ts +1 -1
  255. package/lib/gc/index.d.ts.map +1 -1
  256. package/lib/gc/index.js +1 -1
  257. package/lib/gc/index.js.map +1 -1
  258. package/lib/index.d.ts +2 -2
  259. package/lib/index.d.ts.map +1 -1
  260. package/lib/index.js.map +1 -1
  261. package/lib/legacy.d.ts +1 -1
  262. package/lib/messageTypes.d.ts +6 -22
  263. package/lib/messageTypes.d.ts.map +1 -1
  264. package/lib/messageTypes.js.map +1 -1
  265. package/lib/opLifecycle/batchManager.js.map +1 -1
  266. package/lib/opLifecycle/definitions.d.ts +2 -2
  267. package/lib/opLifecycle/definitions.d.ts.map +1 -1
  268. package/lib/opLifecycle/definitions.js.map +1 -1
  269. package/lib/opLifecycle/index.d.ts +1 -1
  270. package/lib/opLifecycle/index.d.ts.map +1 -1
  271. package/lib/opLifecycle/index.js +1 -1
  272. package/lib/opLifecycle/index.js.map +1 -1
  273. package/lib/opLifecycle/opCompressor.d.ts +11 -1
  274. package/lib/opLifecycle/opCompressor.d.ts.map +1 -1
  275. package/lib/opLifecycle/opCompressor.js +13 -2
  276. package/lib/opLifecycle/opCompressor.js.map +1 -1
  277. package/lib/opLifecycle/opDecompressor.d.ts +1 -1
  278. package/lib/opLifecycle/opDecompressor.d.ts.map +1 -1
  279. package/lib/opLifecycle/opDecompressor.js +1 -2
  280. package/lib/opLifecycle/opDecompressor.js.map +1 -1
  281. package/lib/opLifecycle/opGroupingManager.d.ts +10 -3
  282. package/lib/opLifecycle/opGroupingManager.d.ts.map +1 -1
  283. package/lib/opLifecycle/opGroupingManager.js +7 -0
  284. package/lib/opLifecycle/opGroupingManager.js.map +1 -1
  285. package/lib/opLifecycle/opSplitter.d.ts +4 -2
  286. package/lib/opLifecycle/opSplitter.d.ts.map +1 -1
  287. package/lib/opLifecycle/opSplitter.js +13 -8
  288. package/lib/opLifecycle/opSplitter.js.map +1 -1
  289. package/lib/opLifecycle/outbox.d.ts +10 -0
  290. package/lib/opLifecycle/outbox.d.ts.map +1 -1
  291. package/lib/opLifecycle/outbox.js +13 -18
  292. package/lib/opLifecycle/outbox.js.map +1 -1
  293. package/lib/opLifecycle/remoteMessageProcessor.d.ts +1 -1
  294. package/lib/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
  295. package/lib/opLifecycle/remoteMessageProcessor.js +1 -1
  296. package/lib/opLifecycle/remoteMessageProcessor.js.map +1 -1
  297. package/lib/opProperties.d.ts +1 -1
  298. package/lib/opProperties.d.ts.map +1 -1
  299. package/lib/opProperties.js.map +1 -1
  300. package/lib/packageVersion.d.ts +1 -1
  301. package/lib/packageVersion.js +1 -1
  302. package/lib/packageVersion.js.map +1 -1
  303. package/lib/pendingStateManager.d.ts.map +1 -1
  304. package/lib/pendingStateManager.js +15 -5
  305. package/lib/pendingStateManager.js.map +1 -1
  306. package/lib/scheduleManager.d.ts +1 -1
  307. package/lib/scheduleManager.d.ts.map +1 -1
  308. package/lib/scheduleManager.js.map +1 -1
  309. package/lib/storageServiceWithAttachBlobs.js.map +1 -1
  310. package/lib/summary/documentSchema.d.ts.map +1 -1
  311. package/lib/summary/documentSchema.js +2 -3
  312. package/lib/summary/documentSchema.js.map +1 -1
  313. package/lib/summary/index.d.ts +2 -2
  314. package/lib/summary/index.d.ts.map +1 -1
  315. package/lib/summary/index.js +1 -1
  316. package/lib/summary/index.js.map +1 -1
  317. package/lib/summary/orderedClientElection.d.ts +4 -2
  318. package/lib/summary/orderedClientElection.d.ts.map +1 -1
  319. package/lib/summary/orderedClientElection.js +35 -13
  320. package/lib/summary/orderedClientElection.js.map +1 -1
  321. package/lib/summary/runWhileConnectedCoordinator.js.map +1 -1
  322. package/lib/summary/runningSummarizer.d.ts +1 -6
  323. package/lib/summary/runningSummarizer.d.ts.map +1 -1
  324. package/lib/summary/runningSummarizer.js +22 -109
  325. package/lib/summary/runningSummarizer.js.map +1 -1
  326. package/lib/summary/summarizer.d.ts +1 -1
  327. package/lib/summary/summarizer.d.ts.map +1 -1
  328. package/lib/summary/summarizer.js +4 -1
  329. package/lib/summary/summarizer.js.map +1 -1
  330. package/lib/summary/summarizerClientElection.d.ts +1 -1
  331. package/lib/summary/summarizerClientElection.d.ts.map +1 -1
  332. package/lib/summary/summarizerClientElection.js +1 -1
  333. package/lib/summary/summarizerClientElection.js.map +1 -1
  334. package/lib/summary/summarizerHeuristics.js.map +1 -1
  335. package/lib/summary/summarizerNode/summarizerNode.d.ts +2 -3
  336. package/lib/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  337. package/lib/summary/summarizerNode/summarizerNode.js +14 -14
  338. package/lib/summary/summarizerNode/summarizerNode.js.map +1 -1
  339. package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts +2 -1
  340. package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  341. package/lib/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  342. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts +2 -3
  343. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  344. package/lib/summary/summarizerNode/summarizerNodeWithGc.js +5 -2
  345. package/lib/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  346. package/lib/summary/summarizerTypes.d.ts +17 -29
  347. package/lib/summary/summarizerTypes.d.ts.map +1 -1
  348. package/lib/summary/summarizerTypes.js.map +1 -1
  349. package/lib/summary/summaryCollection.d.ts +1 -1
  350. package/lib/summary/summaryCollection.d.ts.map +1 -1
  351. package/lib/summary/summaryCollection.js +3 -3
  352. package/lib/summary/summaryCollection.js.map +1 -1
  353. package/lib/summary/summaryFormat.d.ts +2 -3
  354. package/lib/summary/summaryFormat.d.ts.map +1 -1
  355. package/lib/summary/summaryFormat.js +2 -2
  356. package/lib/summary/summaryFormat.js.map +1 -1
  357. package/lib/summary/summaryGenerator.d.ts +7 -8
  358. package/lib/summary/summaryGenerator.d.ts.map +1 -1
  359. package/lib/summary/summaryGenerator.js +26 -23
  360. package/lib/summary/summaryGenerator.js.map +1 -1
  361. package/lib/summary/summaryManager.d.ts.map +1 -1
  362. package/lib/summary/summaryManager.js +1 -2
  363. package/lib/summary/summaryManager.js.map +1 -1
  364. package/lib/throttler.d.ts.map +1 -1
  365. package/lib/throttler.js +3 -1
  366. package/lib/throttler.js.map +1 -1
  367. package/lib/tsdoc-metadata.json +1 -1
  368. package/package.json +92 -28
  369. package/src/batchTracker.ts +5 -2
  370. package/src/blobManager.ts +21 -61
  371. package/src/channelCollection.ts +179 -186
  372. package/src/connectionTelemetry.ts +18 -12
  373. package/src/containerHandleContext.ts +2 -1
  374. package/src/containerRuntime.ts +166 -214
  375. package/src/dataStore.ts +2 -1
  376. package/src/dataStoreContext.ts +79 -98
  377. package/src/dataStoreContexts.ts +7 -2
  378. package/src/deltaManagerProxies.ts +15 -6
  379. package/src/deltaScheduler.ts +5 -4
  380. package/src/gc/garbageCollection.md +0 -8
  381. package/src/gc/garbageCollection.ts +66 -57
  382. package/src/gc/gcConfigs.ts +15 -37
  383. package/src/gc/gcDefinitions.ts +20 -39
  384. package/src/gc/gcHelpers.ts +8 -4
  385. package/src/gc/gcSummaryDefinitions.ts +1 -1
  386. package/src/gc/gcSummaryStateTracker.ts +11 -74
  387. package/src/gc/gcTelemetry.ts +4 -11
  388. package/src/gc/index.ts +0 -2
  389. package/src/index.ts +1 -2
  390. package/src/messageTypes.ts +8 -24
  391. package/src/opLifecycle/README.md +120 -160
  392. package/src/opLifecycle/definitions.ts +2 -2
  393. package/src/opLifecycle/index.ts +5 -1
  394. package/src/opLifecycle/opCompressor.ts +13 -2
  395. package/src/opLifecycle/opDecompressor.ts +3 -7
  396. package/src/opLifecycle/opGroupingManager.ts +12 -8
  397. package/src/opLifecycle/opSplitter.ts +22 -11
  398. package/src/opLifecycle/outbox.ts +14 -32
  399. package/src/opLifecycle/remoteMessageProcessor.ts +4 -1
  400. package/src/opProperties.ts +2 -2
  401. package/src/packageVersion.ts +1 -1
  402. package/src/pendingStateManager.ts +20 -7
  403. package/src/scheduleManager.ts +4 -1
  404. package/src/summary/documentSchema.ts +4 -7
  405. package/src/summary/images/appTree.png +0 -0
  406. package/src/summary/images/protocolAndAppTree.png +0 -0
  407. package/src/summary/images/summaryTree.png +0 -0
  408. package/src/summary/index.ts +5 -2
  409. package/src/summary/orderedClientElection.ts +100 -22
  410. package/src/summary/runningSummarizer.ts +54 -124
  411. package/src/summary/summarizer.ts +5 -2
  412. package/src/summary/summarizerClientElection.ts +4 -2
  413. package/src/summary/summarizerNode/summarizerNode.ts +23 -30
  414. package/src/summary/summarizerNode/summarizerNodeUtils.ts +9 -3
  415. package/src/summary/summarizerNode/summarizerNodeWithGc.ts +11 -11
  416. package/src/summary/summarizerTypes.ts +32 -33
  417. package/src/summary/summaryCollection.ts +6 -3
  418. package/src/summary/summaryFormat.ts +18 -10
  419. package/src/summary/summaryFormats.md +160 -0
  420. package/src/summary/summaryGenerator.ts +47 -30
  421. package/src/summary/summaryManager.ts +6 -9
  422. package/src/throttler.ts +3 -1
  423. package/tsconfig.json +2 -0
  424. package/tsdoc.json +4 -0
@@ -4,7 +4,7 @@
4
4
  * Licensed under the MIT License.
5
5
  */
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
- exports.ChannelCollectionFactory = exports.detectOutboundReferences = exports.getSummaryForDatastores = exports.ChannelCollection = exports.wrapContextForInnerChannel = exports.wrapContext = exports.AllowInactiveRequestHeaderKey = exports.AllowTombstoneRequestHeaderKey = exports.RuntimeHeaders = void 0;
7
+ exports.ChannelCollectionFactory = exports.detectOutboundReferences = exports.getSummaryForDatastores = exports.ChannelCollection = exports.getLocalDataStoreType = exports.wrapContextForInnerChannel = exports.wrapContext = exports.AllowInactiveRequestHeaderKey = exports.AllowTombstoneRequestHeaderKey = exports.RuntimeHeaders = void 0;
8
8
  const container_definitions_1 = require("@fluidframework/container-definitions");
9
9
  const internal_1 = require("@fluidframework/core-utils/internal");
10
10
  const internal_2 = require("@fluidframework/datastore/internal");
@@ -59,7 +59,7 @@ function wrapContext(context) {
59
59
  },
60
60
  deltaManager: context.deltaManager,
61
61
  storage: context.storage,
62
- logger: context.logger,
62
+ baseLogger: context.baseLogger,
63
63
  get clientDetails() {
64
64
  return context.clientDetails;
65
65
  },
@@ -99,8 +99,8 @@ function wrapContext(context) {
99
99
  uploadBlob: async (...args) => {
100
100
  return context.uploadBlob(...args);
101
101
  },
102
- addedGCOutboundReference: (...args) => {
103
- return context.addedGCOutboundReference?.(...args);
102
+ addedGCOutboundRoute: (...args) => {
103
+ return context.addedGCOutboundRoute(...args);
104
104
  },
105
105
  getCreateChildSummarizerNodeFn: (...args) => {
106
106
  return context.getCreateChildSummarizerNodeFn?.(...args);
@@ -145,6 +145,13 @@ function wrapContextForInnerChannel(id, parentContext) {
145
145
  return context;
146
146
  }
147
147
  exports.wrapContextForInnerChannel = wrapContextForInnerChannel;
148
+ /**
149
+ * Returns the type of the given local data store from its package path.
150
+ */
151
+ function getLocalDataStoreType(localDataStore) {
152
+ return localDataStore.packagePath[localDataStore.packagePath.length - 1];
153
+ }
154
+ exports.getLocalDataStoreType = getLocalDataStoreType;
148
155
  /**
149
156
  * This class encapsulates data store handling. Currently it is only used by the container runtime,
150
157
  * but eventually could be hosted on any channel once we formalize the channel api boundary.
@@ -162,16 +169,12 @@ class ChannelCollection {
162
169
  // 0.24 back-compat attachingBeforeSummary
163
170
  this.attachOpFiredForDataStore = new Set();
164
171
  this.disposeOnce = new internal_1.Lazy(() => this.contexts.dispose());
165
- // Stores the ids of new data stores between two GC runs. This is used to notify the garbage collector of new
166
- // root data stores that are added.
167
- this.dataStoresSinceLastGC = [];
168
172
  this.pendingAliasMap = new Map();
169
173
  /** For sampling. Only log once per container */
170
174
  this.shouldSendAttachLog = true;
171
175
  this.dispose = () => this.disposeOnce.value;
172
176
  this.mc = (0, internal_6.createChildMonitoringContext)({ logger: baseLogger });
173
177
  this.contexts = new dataStoreContexts_js_1.DataStoreContexts(baseLogger);
174
- this.containerRuntimeHandle = new internal_2.FluidObjectHandle(this.parentContext, "/", this.parentContext.IFluidHandleContext);
175
178
  this.entryPoint = new internal_2.FluidObjectHandle(new internal_1.LazyPromise(async () => provideEntryPoint(this)), "", this.parentContext.IFluidHandleContext);
176
179
  this.aliasedDataStores = new Set(aliasMap.values());
177
180
  // Extract stores stored inside the snapshot
@@ -259,12 +262,11 @@ class ChannelCollection {
259
262
  }
260
263
  processAttachMessage(message, local) {
261
264
  const attachMessage = message.contents;
262
- this.dataStoresSinceLastGC.push(attachMessage.id);
263
265
  // We need to process the GC Data for both local and remote attach messages
264
266
  const foundGCData = (0, internal_5.processAttachMessageGCData)(attachMessage.snapshot, (nodeId, toPath) => {
265
267
  // nodeId is the relative path under the node being attached. Always starts with "/", but no trailing "/" after an id
266
268
  const fromPath = `/${attachMessage.id}${nodeId === "/" ? "" : nodeId}`;
267
- this.parentContext.addedGCOutboundReference?.({ absolutePath: fromPath }, { absolutePath: toPath });
269
+ this.parentContext.addedGCOutboundRoute(fromPath, toPath, message.timestamp);
268
270
  });
269
271
  // Only log once per container to avoid noise/cost.
270
272
  // Allows longitudinal tracking of various state (e.g. foundGCData), and some sampled details
@@ -336,12 +338,12 @@ class ChannelCollection {
336
338
  });
337
339
  }
338
340
  const resolve = localOpMetadata;
339
- const aliasResult = this.processAliasMessageCore(aliasMessage.internalId, aliasMessage.alias);
341
+ const aliasResult = this.processAliasMessageCore(aliasMessage.internalId, aliasMessage.alias, message.timestamp);
340
342
  if (local) {
341
343
  resolve(aliasResult);
342
344
  }
343
345
  }
344
- processAliasMessageCore(internalId, alias) {
346
+ processAliasMessageCore(internalId, alias, messageTimestampMs) {
345
347
  if (this.alreadyProcessed(alias)) {
346
348
  return false;
347
349
  }
@@ -358,8 +360,11 @@ class ChannelCollection {
358
360
  });
359
361
  return false;
360
362
  }
361
- const handle = new internal_2.FluidObjectHandle(context, internalId, this.parentContext.IFluidHandleContext);
362
- this.parentContext.addedGCOutboundReference?.(this.containerRuntimeHandle, handle);
363
+ // If message timestamp doesn't exist, this is called in a detached container. Don't notify GC in that case
364
+ // because it doesn't run in detached container and doesn't need to know about this route.
365
+ if (messageTimestampMs) {
366
+ this.parentContext.addedGCOutboundRoute("/", `/${internalId}`, messageTimestampMs);
367
+ }
363
368
  this.aliasMap.set(alias, context.id);
364
369
  this.aliasedDataStores.add(context.id);
365
370
  context.setInMemoryRoot();
@@ -370,14 +375,17 @@ class ChannelCollection {
370
375
  }
371
376
  /** Package up the context's attach summary etc into an IAttachMessage */
372
377
  generateAttachMessage(localContext) {
373
- const { attachSummary } = localContext.getAttachData(/* includeGCData: */ true);
374
- const type = localContext.packagePath[localContext.packagePath.length - 1];
378
+ // Get the attach summary.
379
+ const attachSummary = localContext.getAttachSummary();
380
+ // Get the GC data and add it to the attach summary.
381
+ const attachGCData = localContext.getAttachGCData();
382
+ (0, internal_5.addBlobToSummary)(attachSummary, internal_4.gcDataBlobKey, JSON.stringify(attachGCData));
375
383
  // Attach message needs the summary in ITree format. Convert the ISummaryTree into an ITree.
376
384
  const snapshot = (0, internal_5.convertSummaryTreeToITree)(attachSummary.summary);
377
385
  return {
378
386
  id: localContext.id,
379
387
  snapshot,
380
- type,
388
+ type: getLocalDataStoreType(localContext),
381
389
  };
382
390
  }
383
391
  /**
@@ -459,7 +467,7 @@ class ChannelCollection {
459
467
  snapshotTree: undefined,
460
468
  createProps,
461
469
  loadingGroupId,
462
- channelToDataStoreFn: (channel) => (0, dataStore_js_1.channelToDataStore)(channel, id, this, (0, internal_6.createChildLogger)({ logger: this.parentContext.logger })),
470
+ channelToDataStoreFn: (channel) => (0, dataStore_js_1.channelToDataStore)(channel, id, this, (0, internal_6.createChildLogger)({ logger: this.parentContext.baseLogger })),
463
471
  });
464
472
  this.contexts.addUnbound(context);
465
473
  return context;
@@ -571,7 +579,7 @@ class ChannelCollection {
571
579
  this.pendingAttach.set(message.id, message);
572
580
  }
573
581
  }
574
- process(message, local, localMessageMetadata, addedOutboundReference) {
582
+ process(message, local, localMessageMetadata) {
575
583
  switch (message.type) {
576
584
  case messageTypes_js_1.ContainerMessageType.Attach:
577
585
  this.processAttachMessage(message, local);
@@ -588,13 +596,8 @@ class ChannelCollection {
588
596
  contents: innerContents.content,
589
597
  };
590
598
  this.processChannelOp(envelope.address, transformed, local, localMessageMetadata);
591
- // By default, we use the new behavior of detecting outbound routes here.
592
- // If this setting is true, then DataStoreContext would be notifying GC instead.
593
- if (this.mc.config.getBoolean(index_js_1.detectOutboundRoutesViaDDSKey) !== true &&
594
- addedOutboundReference !== undefined) {
595
- // Notify GC of any outbound references that were added by this op.
596
- detectOutboundReferences(envelope.address, transformed.contents, addedOutboundReference);
597
- }
599
+ // Notify GC of any outbound references that were added by this op.
600
+ detectOutboundReferences(envelope.address, transformed.contents, (fromPath, toPath) => this.parentContext.addedGCOutboundRoute(fromPath, toPath, message.timestamp));
598
601
  break;
599
602
  }
600
603
  default:
@@ -675,13 +678,11 @@ class ChannelCollection {
675
678
  if (!this.isDataStoreDeleted(dataStoreNodePath)) {
676
679
  return false;
677
680
  }
678
- const idToLog = originalRequest !== undefined
679
- ? (0, index_js_1.urlToGCNodePath)(originalRequest.url)
680
- : dataStoreNodePath;
681
+ const idToLog = originalRequest !== undefined ? (0, index_js_1.urlToGCNodePath)(originalRequest.url) : dataStoreNodePath;
681
682
  // Log the package details asynchronously since getInitialSnapshotDetails is async
682
- const recentelyDeletedContext = this.contexts.getRecentlyDeletedContext(id);
683
- if (recentelyDeletedContext !== undefined) {
684
- recentelyDeletedContext
683
+ const recentlyDeletedContext = this.contexts.getRecentlyDeletedContext(id);
684
+ if (recentlyDeletedContext !== undefined) {
685
+ recentlyDeletedContext
685
686
  .getInitialSnapshotDetails()
686
687
  .then((details) => {
687
688
  return details.pkg.join("/");
@@ -767,80 +768,94 @@ class ChannelCollection {
767
768
  get size() {
768
769
  return this.contexts.size;
769
770
  }
770
- async summarize(fullTree, trackState, telemetryContext) {
771
- const summaryBuilder = new internal_5.SummaryTreeBuilder();
772
- // Iterate over each store and ask it to snapshot
773
- await Promise.all(Array.from(this.contexts)
774
- .filter(([_, context]) => {
775
- // Summarizer works only with clients with no local changes. A data store in attaching
776
- // state indicates an op was sent to attach a local data store, and the the attach op
777
- // had not yet round tripped back to the client.
778
- if (context.attachState === container_definitions_1.AttachState.Attaching) {
779
- // Formerly assert 0x588
780
- const error = internal_6.DataProcessingError.create("Local data store detected in attaching state during summarize", "summarize");
781
- throw error;
782
- }
783
- return context.attachState === container_definitions_1.AttachState.Attached;
784
- })
785
- .map(async ([contextId, context]) => {
786
- const contextSummary = await context.summarize(fullTree, trackState, telemetryContext);
787
- summaryBuilder.addWithStats(contextId, contextSummary);
788
- }));
789
- return summaryBuilder.getSummaryTree();
790
- }
791
771
  /**
792
772
  * Create a summary. Used when attaching or serializing a detached container.
793
773
  */
794
774
  getAttachSummary(telemetryContext) {
795
775
  const builder = new internal_5.SummaryTreeBuilder();
796
- // Attaching graph of some stores can cause other stores to get bound too.
797
- // So keep taking summary until no new stores get bound.
798
- let notBoundContextsLength;
799
- do {
800
- const builderTree = builder.summary.tree;
776
+ this.visitLocalBoundContextsDuringAttach((contextId, context) => {
777
+ let dataStoreSummary;
778
+ if (context.isLoaded) {
779
+ dataStoreSummary = context.getAttachSummary(telemetryContext);
780
+ }
781
+ else {
782
+ // If this data store is not yet loaded, then there should be no changes in the snapshot from
783
+ // which it was created as it is detached container. So just use the previous snapshot.
784
+ (0, internal_1.assert)(!!this.baseSnapshot, 0x166 /* "BaseSnapshot should be there as detached container loaded from snapshot" */);
785
+ dataStoreSummary = (0, internal_5.convertSnapshotTreeToSummaryTree)((0, internal_3.getSnapshotTree)(this.baseSnapshot).trees[contextId]);
786
+ }
787
+ builder.addWithStats(contextId, dataStoreSummary);
788
+ });
789
+ return builder.getSummaryTree();
790
+ }
791
+ /**
792
+ * Gets the GC data. Used when attaching or serializing a detached container.
793
+ */
794
+ getAttachGCData(telemetryContext) {
795
+ const builder = new internal_5.GCDataBuilder();
796
+ this.visitLocalBoundContextsDuringAttach((contextId, context) => {
797
+ const contextGCData = context.getAttachGCData(telemetryContext);
798
+ // Prefix the child's id to the ids of its GC nodes so they can be identified as belonging to the child.
799
+ // This also gradually builds the id of each node to be a path from the root.
800
+ builder.prefixAndAddNodes(contextId, contextGCData.gcNodes);
801
+ });
802
+ // Get the outbound routes (aliased data stores) and add a GC node for this channel.
803
+ builder.addNode("/", Array.from(this.aliasedDataStores));
804
+ return builder.getGCData();
805
+ }
806
+ /**
807
+ * Helper method for preparing to attach this channel.
808
+ * Runs the callback for each bound context to incorporate its data however the caller specifies
809
+ */
810
+ visitLocalBoundContextsDuringAttach(visitor) {
811
+ const visitedContexts = new Set();
812
+ let visitedLength = -1;
813
+ let notBoundContextsLength = -1;
814
+ while (visitedLength !== visitedContexts.size &&
815
+ notBoundContextsLength !== this.contexts.notBoundLength()) {
816
+ // detect changes in the visitedContexts set, as on visiting a context
817
+ // it could could make contexts available by removing other contexts
818
+ // from the not bound context list, so we need to ensure those get processed as well.
819
+ // only once the loop can run with no new contexts added to the visitedContexts set do we
820
+ // know for sure all possible contexts have been visited.
821
+ visitedLength = visitedContexts.size;
801
822
  notBoundContextsLength = this.contexts.notBoundLength();
802
- // Iterate over each data store and ask it to snapshot
803
- Array.from(this.contexts)
804
- .filter(([key, _]) =>
805
- // Take summary of bounded data stores only, make sure we haven't summarized them already
806
- // and no attach op has been fired for that data store because for loader versions <= 0.24
807
- // we set attach state as "attaching" before taking createNew summary.
808
- !(this.contexts.isNotBound(key) ||
809
- builderTree[key] ||
810
- this.attachOpFiredForDataStore.has(key)))
811
- .map(([key, value]) => {
812
- let dataStoreSummary;
813
- if (value.isLoaded) {
814
- dataStoreSummary = value.getAttachData(
815
- /* includeGCCData: */ false, telemetryContext).attachSummary;
823
+ for (const [contextId, context] of this.contexts) {
824
+ if (!(visitedContexts.has(contextId) ||
825
+ this.contexts.isNotBound(contextId) ||
826
+ this.attachOpFiredForDataStore.has(contextId))) {
827
+ visitor(contextId, context);
828
+ visitedContexts.add(contextId);
816
829
  }
817
- else {
818
- // If this data store is not yet loaded, then there should be no changes in the snapshot from
819
- // which it was created as it is detached container. So just use the previous snapshot.
820
- (0, internal_1.assert)(!!this.baseSnapshot, 0x166 /* "BaseSnapshot should be there as detached container loaded from snapshot" */);
821
- dataStoreSummary = (0, internal_5.convertSnapshotTreeToSummaryTree)((0, internal_3.getSnapshotTree)(this.baseSnapshot).trees[key]);
822
- }
823
- builder.addWithStats(key, dataStoreSummary);
824
- });
825
- } while (notBoundContextsLength !== this.contexts.notBoundLength());
826
- return builder.getSummaryTree();
830
+ }
831
+ }
827
832
  }
828
833
  /**
829
- * Before GC runs, called by the garbage collector to update any pending GC state.
830
- * The garbage collector needs to know all outbound references that are added. Since root data stores are not
831
- * explicitly marked as referenced, notify GC of new root data stores that were added since the last GC run.
834
+ * Helper method for preparing to summarize this channel.
835
+ * Runs the callback for each bound context to incorporate its data however the caller specifies
832
836
  */
833
- async updateStateBeforeGC() {
834
- for (const id of this.dataStoresSinceLastGC) {
835
- const context = this.contexts.get(id);
836
- (0, internal_1.assert)(context !== undefined, 0x2b6 /* Missing data store context */);
837
- if (await context.isRoot()) {
838
- // A root data store is basically a reference from the container runtime to the data store.
839
- const handle = new internal_2.FluidObjectHandle(context, id, this.parentContext.IFluidHandleContext);
840
- this.parentContext.addedGCOutboundReference?.(this.containerRuntimeHandle, handle);
837
+ async visitContextsDuringSummary(visitor) {
838
+ for (const [contextId, context] of this.contexts) {
839
+ // Summarizer client and hence GC works only with clients with no local changes. A data store in
840
+ // attaching state indicates an op was sent to attach a local data store, and the the attach op
841
+ // had not yet round tripped back to the client.
842
+ // Formerly assert 0x589
843
+ if (context.attachState === container_definitions_1.AttachState.Attaching) {
844
+ const error = internal_6.DataProcessingError.create("Local data store detected in attaching state", "summarize/getGCData");
845
+ throw error;
846
+ }
847
+ if (context.attachState === container_definitions_1.AttachState.Attached) {
848
+ await visitor(contextId, context);
841
849
  }
842
850
  }
843
- this.dataStoresSinceLastGC = [];
851
+ }
852
+ async summarize(fullTree, trackState, telemetryContext) {
853
+ const summaryBuilder = new internal_5.SummaryTreeBuilder();
854
+ await this.visitContextsDuringSummary(async (contextId, context) => {
855
+ const contextSummary = await context.summarize(fullTree, trackState, telemetryContext);
856
+ summaryBuilder.addWithStats(contextId, contextSummary);
857
+ });
858
+ return summaryBuilder.getSummaryTree();
844
859
  }
845
860
  /**
846
861
  * Generates data used for garbage collection. It does the following:
@@ -857,25 +872,12 @@ class ChannelCollection {
857
872
  */
858
873
  async getGCData(fullGC = false) {
859
874
  const builder = new internal_5.GCDataBuilder();
860
- // Iterate over each store and get their GC data.
861
- await Promise.all(Array.from(this.contexts)
862
- .filter(([_, context]) => {
863
- // Summarizer client and hence GC works only with clients with no local changes. A data store in
864
- // attaching state indicates an op was sent to attach a local data store, and the the attach op
865
- // had not yet round tripped back to the client.
866
- // Formerly assert 0x589
867
- if (context.attachState === container_definitions_1.AttachState.Attaching) {
868
- const error = internal_6.DataProcessingError.create("Local data store detected in attaching state while running GC", "getGCData");
869
- throw error;
870
- }
871
- return context.attachState === container_definitions_1.AttachState.Attached;
872
- })
873
- .map(async ([contextId, context]) => {
875
+ await this.visitContextsDuringSummary(async (contextId, context) => {
874
876
  const contextGCData = await context.getGCData(fullGC);
875
877
  // Prefix the child's id to the ids of its GC nodes so they can be identified as belonging to the child.
876
878
  // This also gradually builds the id of each node to be a path from the root.
877
879
  builder.prefixAndAddNodes(contextId, contextGCData.gcNodes);
878
- }));
880
+ });
879
881
  // Get the outbound routes and add a GC node for this channel.
880
882
  builder.addNode("/", await this.getOutboundRoutes());
881
883
  return builder.getGCData();
@@ -1052,6 +1054,7 @@ class ChannelCollection {
1052
1054
  packagePath: details.pkg,
1053
1055
  request,
1054
1056
  headerData,
1057
+ timestampMs: undefined, // This will be added by the parent context if needed.
1055
1058
  });
1056
1059
  const dataStore = await dataStoreContext.realize();
1057
1060
  const subRequest = requestParser.createSubRequest(1);
@@ -1134,7 +1137,7 @@ class ChannelCollectionFactory {
1134
1137
  }
1135
1138
  async instantiateDataStore(context, _existing) {
1136
1139
  const runtime = this.ctor(context.baseSnapshot, context, // parentContext
1137
- context.logger, () => { }, // gcNodeUpdated
1140
+ context.baseLogger, () => { }, // gcNodeUpdated
1138
1141
  (_nodePath) => false, // isDataStoreDeleted
1139
1142
  new Map(), // aliasMap
1140
1143
  this.provideEntryPoint);