@fluidframework/container-runtime 2.12.0 → 2.20.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 (440) hide show
  1. package/.eslintrc.cjs +36 -0
  2. package/CHANGELOG.md +50 -0
  3. package/api-report/container-runtime.legacy.alpha.api.md +9 -203
  4. package/container-runtime.test-files.tar +0 -0
  5. package/dist/batchTracker.d.ts.map +1 -1
  6. package/dist/batchTracker.js.map +1 -1
  7. package/dist/blobManager/blobManager.d.ts +5 -1
  8. package/dist/blobManager/blobManager.d.ts.map +1 -1
  9. package/dist/blobManager/blobManager.js +16 -2
  10. package/dist/blobManager/blobManager.js.map +1 -1
  11. package/dist/blobManager/blobManagerSnapSum.d.ts.map +1 -1
  12. package/dist/blobManager/blobManagerSnapSum.js.map +1 -1
  13. package/dist/channelCollection.d.ts +23 -12
  14. package/dist/channelCollection.d.ts.map +1 -1
  15. package/dist/channelCollection.js +22 -12
  16. package/dist/channelCollection.js.map +1 -1
  17. package/dist/connectionTelemetry.d.ts.map +1 -1
  18. package/dist/connectionTelemetry.js +6 -2
  19. package/dist/connectionTelemetry.js.map +1 -1
  20. package/dist/containerHandleContext.d.ts +1 -1
  21. package/dist/containerHandleContext.d.ts.map +1 -1
  22. package/dist/containerHandleContext.js.map +1 -1
  23. package/dist/containerRuntime.d.ts +74 -65
  24. package/dist/containerRuntime.d.ts.map +1 -1
  25. package/dist/containerRuntime.js +53 -37
  26. package/dist/containerRuntime.js.map +1 -1
  27. package/dist/dataStore.d.ts +7 -3
  28. package/dist/dataStore.d.ts.map +1 -1
  29. package/dist/dataStore.js +2 -1
  30. package/dist/dataStore.js.map +1 -1
  31. package/dist/dataStoreContext.d.ts +41 -25
  32. package/dist/dataStoreContext.d.ts.map +1 -1
  33. package/dist/dataStoreContext.js +31 -18
  34. package/dist/dataStoreContext.js.map +1 -1
  35. package/dist/dataStoreContexts.d.ts +6 -2
  36. package/dist/dataStoreContexts.d.ts.map +1 -1
  37. package/dist/dataStoreContexts.js +6 -2
  38. package/dist/dataStoreContexts.js.map +1 -1
  39. package/dist/dataStoreRegistry.d.ts +1 -1
  40. package/dist/dataStoreRegistry.d.ts.map +1 -1
  41. package/dist/dataStoreRegistry.js.map +1 -1
  42. package/dist/deltaManagerProxies.d.ts +1 -17
  43. package/dist/deltaManagerProxies.d.ts.map +1 -1
  44. package/dist/deltaManagerProxies.js.map +1 -1
  45. package/dist/deltaScheduler.d.ts +9 -6
  46. package/dist/deltaScheduler.d.ts.map +1 -1
  47. package/dist/deltaScheduler.js +95 -89
  48. package/dist/deltaScheduler.js.map +1 -1
  49. package/dist/gc/garbageCollection.d.ts +21 -7
  50. package/dist/gc/garbageCollection.d.ts.map +1 -1
  51. package/dist/gc/garbageCollection.js +12 -5
  52. package/dist/gc/garbageCollection.js.map +1 -1
  53. package/dist/gc/gcConfigs.d.ts +11 -0
  54. package/dist/gc/gcConfigs.d.ts.map +1 -1
  55. package/dist/gc/gcConfigs.js +2 -1
  56. package/dist/gc/gcConfigs.js.map +1 -1
  57. package/dist/gc/gcDefinitions.d.ts +210 -70
  58. package/dist/gc/gcDefinitions.d.ts.map +1 -1
  59. package/dist/gc/gcDefinitions.js +39 -13
  60. package/dist/gc/gcDefinitions.js.map +1 -1
  61. package/dist/gc/gcHelpers.d.ts +6 -2
  62. package/dist/gc/gcHelpers.d.ts.map +1 -1
  63. package/dist/gc/gcHelpers.js +6 -2
  64. package/dist/gc/gcHelpers.js.map +1 -1
  65. package/dist/gc/gcSummaryDefinitions.d.ts +18 -6
  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.map +1 -1
  69. package/dist/gc/gcSummaryStateTracker.js.map +1 -1
  70. package/dist/gc/gcTelemetry.d.ts +33 -11
  71. package/dist/gc/gcTelemetry.d.ts.map +1 -1
  72. package/dist/gc/gcTelemetry.js +6 -2
  73. package/dist/gc/gcTelemetry.js.map +1 -1
  74. package/dist/gc/gcUnreferencedStateTracker.d.ts +42 -13
  75. package/dist/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
  76. package/dist/gc/gcUnreferencedStateTracker.js +27 -9
  77. package/dist/gc/gcUnreferencedStateTracker.js.map +1 -1
  78. package/dist/gc/index.d.ts +1 -0
  79. package/dist/gc/index.d.ts.map +1 -1
  80. package/dist/gc/index.js +3 -1
  81. package/dist/gc/index.js.map +1 -1
  82. package/dist/inboundBatchAggregator.d.ts +34 -0
  83. package/dist/inboundBatchAggregator.d.ts.map +1 -0
  84. package/dist/inboundBatchAggregator.js +185 -0
  85. package/dist/inboundBatchAggregator.js.map +1 -0
  86. package/dist/index.d.ts +1 -1
  87. package/dist/index.d.ts.map +1 -1
  88. package/dist/index.js.map +1 -1
  89. package/dist/legacy.d.ts +0 -4
  90. package/dist/messageTypes.d.ts +14 -5
  91. package/dist/messageTypes.d.ts.map +1 -1
  92. package/dist/messageTypes.js.map +1 -1
  93. package/dist/metadata.d.ts +12 -4
  94. package/dist/metadata.d.ts.map +1 -1
  95. package/dist/metadata.js +6 -2
  96. package/dist/metadata.js.map +1 -1
  97. package/dist/opLifecycle/batchManager.d.ts +9 -3
  98. package/dist/opLifecycle/batchManager.d.ts.map +1 -1
  99. package/dist/opLifecycle/batchManager.js +3 -1
  100. package/dist/opLifecycle/batchManager.js.map +1 -1
  101. package/dist/opLifecycle/duplicateBatchDetector.d.ts +9 -3
  102. package/dist/opLifecycle/duplicateBatchDetector.d.ts.map +1 -1
  103. package/dist/opLifecycle/duplicateBatchDetector.js +9 -3
  104. package/dist/opLifecycle/duplicateBatchDetector.js.map +1 -1
  105. package/dist/opLifecycle/opCompressor.d.ts.map +1 -1
  106. package/dist/opLifecycle/opCompressor.js.map +1 -1
  107. package/dist/opLifecycle/opDecompressor.d.ts +3 -1
  108. package/dist/opLifecycle/opDecompressor.d.ts.map +1 -1
  109. package/dist/opLifecycle/opDecompressor.js +12 -8
  110. package/dist/opLifecycle/opDecompressor.js.map +1 -1
  111. package/dist/opLifecycle/opGroupingManager.d.ts +0 -1
  112. package/dist/opLifecycle/opGroupingManager.d.ts.map +1 -1
  113. package/dist/opLifecycle/opGroupingManager.js +5 -4
  114. package/dist/opLifecycle/opGroupingManager.js.map +1 -1
  115. package/dist/opLifecycle/opSplitter.d.ts.map +1 -1
  116. package/dist/opLifecycle/opSplitter.js +2 -1
  117. package/dist/opLifecycle/opSplitter.js.map +1 -1
  118. package/dist/opLifecycle/outbox.d.ts +1 -1
  119. package/dist/opLifecycle/outbox.d.ts.map +1 -1
  120. package/dist/opLifecycle/outbox.js +6 -1
  121. package/dist/opLifecycle/outbox.js.map +1 -1
  122. package/dist/opLifecycle/remoteMessageProcessor.d.ts +9 -3
  123. package/dist/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
  124. package/dist/opLifecycle/remoteMessageProcessor.js.map +1 -1
  125. package/dist/package.json +2 -1
  126. package/dist/packageVersion.d.ts +1 -1
  127. package/dist/packageVersion.js +1 -1
  128. package/dist/packageVersion.js.map +1 -1
  129. package/dist/pendingStateManager.d.ts +22 -6
  130. package/dist/pendingStateManager.d.ts.map +1 -1
  131. package/dist/pendingStateManager.js +43 -5
  132. package/dist/pendingStateManager.js.map +1 -1
  133. package/dist/summary/documentSchema.d.ts.map +1 -1
  134. package/dist/summary/documentSchema.js +2 -0
  135. package/dist/summary/documentSchema.js.map +1 -1
  136. package/dist/summary/index.d.ts +1 -1
  137. package/dist/summary/index.d.ts.map +1 -1
  138. package/dist/summary/index.js.map +1 -1
  139. package/dist/summary/orderedClientElection.d.ts +93 -31
  140. package/dist/summary/orderedClientElection.d.ts.map +1 -1
  141. package/dist/summary/orderedClientElection.js +15 -5
  142. package/dist/summary/orderedClientElection.js.map +1 -1
  143. package/dist/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
  144. package/dist/summary/runWhileConnectedCoordinator.js.map +1 -1
  145. package/dist/summary/runningSummarizer.d.ts +17 -6
  146. package/dist/summary/runningSummarizer.d.ts.map +1 -1
  147. package/dist/summary/runningSummarizer.js +12 -4
  148. package/dist/summary/runningSummarizer.js.map +1 -1
  149. package/dist/summary/summarizer.d.ts +9 -5
  150. package/dist/summary/summarizer.d.ts.map +1 -1
  151. package/dist/summary/summarizer.js +9 -3
  152. package/dist/summary/summarizer.js.map +1 -1
  153. package/dist/summary/summarizerClientElection.d.ts.map +1 -1
  154. package/dist/summary/summarizerClientElection.js.map +1 -1
  155. package/dist/summary/summarizerHeuristics.d.ts +6 -2
  156. package/dist/summary/summarizerHeuristics.d.ts.map +1 -1
  157. package/dist/summary/summarizerHeuristics.js +12 -4
  158. package/dist/summary/summarizerHeuristics.js.map +1 -1
  159. package/dist/summary/summarizerNode/summarizerNode.d.ts +24 -8
  160. package/dist/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  161. package/dist/summary/summarizerNode/summarizerNode.js +15 -5
  162. package/dist/summary/summarizerNode/summarizerNode.js.map +1 -1
  163. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts +48 -16
  164. package/dist/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  165. package/dist/summary/summarizerNode/summarizerNodeUtils.js +3 -1
  166. package/dist/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  167. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts +12 -4
  168. package/dist/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  169. package/dist/summary/summarizerNode/summarizerNodeWithGc.js +12 -4
  170. package/dist/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  171. package/dist/summary/summarizerTypes.d.ts +246 -135
  172. package/dist/summary/summarizerTypes.d.ts.map +1 -1
  173. package/dist/summary/summarizerTypes.js.map +1 -1
  174. package/dist/summary/summaryCollection.d.ts.map +1 -1
  175. package/dist/summary/summaryCollection.js +1 -4
  176. package/dist/summary/summaryCollection.js.map +1 -1
  177. package/dist/summary/summaryFormat.d.ts +24 -8
  178. package/dist/summary/summaryFormat.d.ts.map +1 -1
  179. package/dist/summary/summaryFormat.js.map +1 -1
  180. package/dist/summary/summaryGenerator.d.ts +9 -3
  181. package/dist/summary/summaryGenerator.d.ts.map +1 -1
  182. package/dist/summary/summaryGenerator.js +3 -1
  183. package/dist/summary/summaryGenerator.js.map +1 -1
  184. package/dist/summary/summaryManager.d.ts +8 -4
  185. package/dist/summary/summaryManager.d.ts.map +1 -1
  186. package/dist/summary/summaryManager.js +12 -4
  187. package/dist/summary/summaryManager.js.map +1 -1
  188. package/dist/throttler.d.ts +26 -10
  189. package/dist/throttler.d.ts.map +1 -1
  190. package/dist/throttler.js +12 -4
  191. package/dist/throttler.js.map +1 -1
  192. package/lib/batchTracker.d.ts.map +1 -1
  193. package/lib/batchTracker.js.map +1 -1
  194. package/lib/blobManager/blobManager.d.ts +5 -1
  195. package/lib/blobManager/blobManager.d.ts.map +1 -1
  196. package/lib/blobManager/blobManager.js +16 -2
  197. package/lib/blobManager/blobManager.js.map +1 -1
  198. package/lib/blobManager/blobManagerSnapSum.d.ts.map +1 -1
  199. package/lib/blobManager/blobManagerSnapSum.js.map +1 -1
  200. package/lib/channelCollection.d.ts +23 -12
  201. package/lib/channelCollection.d.ts.map +1 -1
  202. package/lib/channelCollection.js +22 -12
  203. package/lib/channelCollection.js.map +1 -1
  204. package/lib/connectionTelemetry.d.ts.map +1 -1
  205. package/lib/connectionTelemetry.js +6 -2
  206. package/lib/connectionTelemetry.js.map +1 -1
  207. package/lib/containerHandleContext.d.ts +1 -1
  208. package/lib/containerHandleContext.d.ts.map +1 -1
  209. package/lib/containerHandleContext.js.map +1 -1
  210. package/lib/containerRuntime.d.ts +74 -65
  211. package/lib/containerRuntime.d.ts.map +1 -1
  212. package/lib/containerRuntime.js +53 -37
  213. package/lib/containerRuntime.js.map +1 -1
  214. package/lib/dataStore.d.ts +7 -3
  215. package/lib/dataStore.d.ts.map +1 -1
  216. package/lib/dataStore.js +2 -1
  217. package/lib/dataStore.js.map +1 -1
  218. package/lib/dataStoreContext.d.ts +41 -25
  219. package/lib/dataStoreContext.d.ts.map +1 -1
  220. package/lib/dataStoreContext.js +31 -18
  221. package/lib/dataStoreContext.js.map +1 -1
  222. package/lib/dataStoreContexts.d.ts +6 -2
  223. package/lib/dataStoreContexts.d.ts.map +1 -1
  224. package/lib/dataStoreContexts.js +6 -2
  225. package/lib/dataStoreContexts.js.map +1 -1
  226. package/lib/dataStoreRegistry.d.ts +1 -1
  227. package/lib/dataStoreRegistry.d.ts.map +1 -1
  228. package/lib/dataStoreRegistry.js.map +1 -1
  229. package/lib/deltaManagerProxies.d.ts +1 -17
  230. package/lib/deltaManagerProxies.d.ts.map +1 -1
  231. package/lib/deltaManagerProxies.js.map +1 -1
  232. package/lib/deltaScheduler.d.ts +9 -6
  233. package/lib/deltaScheduler.d.ts.map +1 -1
  234. package/lib/deltaScheduler.js +95 -89
  235. package/lib/deltaScheduler.js.map +1 -1
  236. package/lib/gc/garbageCollection.d.ts +21 -7
  237. package/lib/gc/garbageCollection.d.ts.map +1 -1
  238. package/lib/gc/garbageCollection.js +12 -5
  239. package/lib/gc/garbageCollection.js.map +1 -1
  240. package/lib/gc/gcConfigs.d.ts +11 -0
  241. package/lib/gc/gcConfigs.d.ts.map +1 -1
  242. package/lib/gc/gcConfigs.js +1 -1
  243. package/lib/gc/gcConfigs.js.map +1 -1
  244. package/lib/gc/gcDefinitions.d.ts +210 -70
  245. package/lib/gc/gcDefinitions.d.ts.map +1 -1
  246. package/lib/gc/gcDefinitions.js +39 -13
  247. package/lib/gc/gcDefinitions.js.map +1 -1
  248. package/lib/gc/gcHelpers.d.ts +6 -2
  249. package/lib/gc/gcHelpers.d.ts.map +1 -1
  250. package/lib/gc/gcHelpers.js +6 -2
  251. package/lib/gc/gcHelpers.js.map +1 -1
  252. package/lib/gc/gcSummaryDefinitions.d.ts +18 -6
  253. package/lib/gc/gcSummaryDefinitions.d.ts.map +1 -1
  254. package/lib/gc/gcSummaryDefinitions.js.map +1 -1
  255. package/lib/gc/gcSummaryStateTracker.d.ts.map +1 -1
  256. package/lib/gc/gcSummaryStateTracker.js.map +1 -1
  257. package/lib/gc/gcTelemetry.d.ts +33 -11
  258. package/lib/gc/gcTelemetry.d.ts.map +1 -1
  259. package/lib/gc/gcTelemetry.js +6 -2
  260. package/lib/gc/gcTelemetry.js.map +1 -1
  261. package/lib/gc/gcUnreferencedStateTracker.d.ts +42 -13
  262. package/lib/gc/gcUnreferencedStateTracker.d.ts.map +1 -1
  263. package/lib/gc/gcUnreferencedStateTracker.js +27 -9
  264. package/lib/gc/gcUnreferencedStateTracker.js.map +1 -1
  265. package/lib/gc/index.d.ts +1 -0
  266. package/lib/gc/index.d.ts.map +1 -1
  267. package/lib/gc/index.js +1 -0
  268. package/lib/gc/index.js.map +1 -1
  269. package/lib/inboundBatchAggregator.d.ts +34 -0
  270. package/lib/inboundBatchAggregator.d.ts.map +1 -0
  271. package/lib/inboundBatchAggregator.js +181 -0
  272. package/lib/inboundBatchAggregator.js.map +1 -0
  273. package/lib/index.d.ts +1 -1
  274. package/lib/index.d.ts.map +1 -1
  275. package/lib/index.js.map +1 -1
  276. package/lib/legacy.d.ts +0 -4
  277. package/lib/messageTypes.d.ts +14 -5
  278. package/lib/messageTypes.d.ts.map +1 -1
  279. package/lib/messageTypes.js.map +1 -1
  280. package/lib/metadata.d.ts +12 -4
  281. package/lib/metadata.d.ts.map +1 -1
  282. package/lib/metadata.js +6 -2
  283. package/lib/metadata.js.map +1 -1
  284. package/lib/opLifecycle/batchManager.d.ts +9 -3
  285. package/lib/opLifecycle/batchManager.d.ts.map +1 -1
  286. package/lib/opLifecycle/batchManager.js +3 -1
  287. package/lib/opLifecycle/batchManager.js.map +1 -1
  288. package/lib/opLifecycle/duplicateBatchDetector.d.ts +9 -3
  289. package/lib/opLifecycle/duplicateBatchDetector.d.ts.map +1 -1
  290. package/lib/opLifecycle/duplicateBatchDetector.js +9 -3
  291. package/lib/opLifecycle/duplicateBatchDetector.js.map +1 -1
  292. package/lib/opLifecycle/opCompressor.d.ts.map +1 -1
  293. package/lib/opLifecycle/opCompressor.js +1 -1
  294. package/lib/opLifecycle/opCompressor.js.map +1 -1
  295. package/lib/opLifecycle/opDecompressor.d.ts +3 -1
  296. package/lib/opLifecycle/opDecompressor.d.ts.map +1 -1
  297. package/lib/opLifecycle/opDecompressor.js +13 -9
  298. package/lib/opLifecycle/opDecompressor.js.map +1 -1
  299. package/lib/opLifecycle/opGroupingManager.d.ts +0 -1
  300. package/lib/opLifecycle/opGroupingManager.d.ts.map +1 -1
  301. package/lib/opLifecycle/opGroupingManager.js +6 -5
  302. package/lib/opLifecycle/opGroupingManager.js.map +1 -1
  303. package/lib/opLifecycle/opSplitter.d.ts.map +1 -1
  304. package/lib/opLifecycle/opSplitter.js +2 -1
  305. package/lib/opLifecycle/opSplitter.js.map +1 -1
  306. package/lib/opLifecycle/outbox.d.ts +1 -1
  307. package/lib/opLifecycle/outbox.d.ts.map +1 -1
  308. package/lib/opLifecycle/outbox.js +6 -1
  309. package/lib/opLifecycle/outbox.js.map +1 -1
  310. package/lib/opLifecycle/remoteMessageProcessor.d.ts +9 -3
  311. package/lib/opLifecycle/remoteMessageProcessor.d.ts.map +1 -1
  312. package/lib/opLifecycle/remoteMessageProcessor.js.map +1 -1
  313. package/lib/packageVersion.d.ts +1 -1
  314. package/lib/packageVersion.js +1 -1
  315. package/lib/packageVersion.js.map +1 -1
  316. package/lib/pendingStateManager.d.ts +22 -6
  317. package/lib/pendingStateManager.d.ts.map +1 -1
  318. package/lib/pendingStateManager.js +41 -4
  319. package/lib/pendingStateManager.js.map +1 -1
  320. package/lib/summary/documentSchema.d.ts.map +1 -1
  321. package/lib/summary/documentSchema.js +2 -0
  322. package/lib/summary/documentSchema.js.map +1 -1
  323. package/lib/summary/index.d.ts +1 -1
  324. package/lib/summary/index.d.ts.map +1 -1
  325. package/lib/summary/index.js.map +1 -1
  326. package/lib/summary/orderedClientElection.d.ts +93 -31
  327. package/lib/summary/orderedClientElection.d.ts.map +1 -1
  328. package/lib/summary/orderedClientElection.js +15 -5
  329. package/lib/summary/orderedClientElection.js.map +1 -1
  330. package/lib/summary/runWhileConnectedCoordinator.d.ts.map +1 -1
  331. package/lib/summary/runWhileConnectedCoordinator.js.map +1 -1
  332. package/lib/summary/runningSummarizer.d.ts +17 -6
  333. package/lib/summary/runningSummarizer.d.ts.map +1 -1
  334. package/lib/summary/runningSummarizer.js +12 -4
  335. package/lib/summary/runningSummarizer.js.map +1 -1
  336. package/lib/summary/summarizer.d.ts +9 -5
  337. package/lib/summary/summarizer.d.ts.map +1 -1
  338. package/lib/summary/summarizer.js +9 -3
  339. package/lib/summary/summarizer.js.map +1 -1
  340. package/lib/summary/summarizerClientElection.d.ts.map +1 -1
  341. package/lib/summary/summarizerClientElection.js.map +1 -1
  342. package/lib/summary/summarizerHeuristics.d.ts +6 -2
  343. package/lib/summary/summarizerHeuristics.d.ts.map +1 -1
  344. package/lib/summary/summarizerHeuristics.js +12 -4
  345. package/lib/summary/summarizerHeuristics.js.map +1 -1
  346. package/lib/summary/summarizerNode/summarizerNode.d.ts +24 -8
  347. package/lib/summary/summarizerNode/summarizerNode.d.ts.map +1 -1
  348. package/lib/summary/summarizerNode/summarizerNode.js +15 -5
  349. package/lib/summary/summarizerNode/summarizerNode.js.map +1 -1
  350. package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts +48 -16
  351. package/lib/summary/summarizerNode/summarizerNodeUtils.d.ts.map +1 -1
  352. package/lib/summary/summarizerNode/summarizerNodeUtils.js +3 -1
  353. package/lib/summary/summarizerNode/summarizerNodeUtils.js.map +1 -1
  354. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts +12 -4
  355. package/lib/summary/summarizerNode/summarizerNodeWithGc.d.ts.map +1 -1
  356. package/lib/summary/summarizerNode/summarizerNodeWithGc.js +12 -4
  357. package/lib/summary/summarizerNode/summarizerNodeWithGc.js.map +1 -1
  358. package/lib/summary/summarizerTypes.d.ts +246 -135
  359. package/lib/summary/summarizerTypes.d.ts.map +1 -1
  360. package/lib/summary/summarizerTypes.js.map +1 -1
  361. package/lib/summary/summaryCollection.d.ts.map +1 -1
  362. package/lib/summary/summaryCollection.js +1 -4
  363. package/lib/summary/summaryCollection.js.map +1 -1
  364. package/lib/summary/summaryFormat.d.ts +24 -8
  365. package/lib/summary/summaryFormat.d.ts.map +1 -1
  366. package/lib/summary/summaryFormat.js.map +1 -1
  367. package/lib/summary/summaryGenerator.d.ts +9 -3
  368. package/lib/summary/summaryGenerator.d.ts.map +1 -1
  369. package/lib/summary/summaryGenerator.js +3 -1
  370. package/lib/summary/summaryGenerator.js.map +1 -1
  371. package/lib/summary/summaryManager.d.ts +8 -4
  372. package/lib/summary/summaryManager.d.ts.map +1 -1
  373. package/lib/summary/summaryManager.js +12 -4
  374. package/lib/summary/summaryManager.js.map +1 -1
  375. package/lib/throttler.d.ts +26 -10
  376. package/lib/throttler.d.ts.map +1 -1
  377. package/lib/throttler.js +12 -4
  378. package/lib/throttler.js.map +1 -1
  379. package/package.json +44 -31
  380. package/src/batchTracker.ts +31 -33
  381. package/src/blobManager/blobManager.ts +38 -19
  382. package/src/blobManager/blobManagerSnapSum.ts +1 -1
  383. package/src/channelCollection.ts +44 -37
  384. package/src/connectionTelemetry.ts +31 -13
  385. package/src/containerHandleContext.ts +2 -2
  386. package/src/containerRuntime.ts +198 -140
  387. package/src/dataStore.ts +11 -6
  388. package/src/dataStoreContext.ts +80 -59
  389. package/src/dataStoreContexts.ts +16 -12
  390. package/src/dataStoreRegistry.ts +1 -1
  391. package/src/deltaManagerProxies.ts +5 -5
  392. package/src/deltaScheduler.ts +19 -13
  393. package/src/gc/garbageCollection.ts +41 -18
  394. package/src/gc/gcConfigs.ts +4 -4
  395. package/src/gc/gcDefinitions.ts +212 -70
  396. package/src/gc/gcHelpers.ts +11 -5
  397. package/src/gc/gcSummaryDefinitions.ts +18 -6
  398. package/src/gc/gcSummaryStateTracker.ts +4 -2
  399. package/src/gc/gcTelemetry.ts +47 -19
  400. package/src/gc/gcUnreferencedStateTracker.ts +40 -16
  401. package/src/gc/index.ts +1 -0
  402. package/src/{scheduleManager.ts → inboundBatchAggregator.ts} +54 -121
  403. package/src/index.ts +0 -3
  404. package/src/messageTypes.ts +14 -5
  405. package/src/metadata.ts +12 -4
  406. package/src/opLifecycle/batchManager.ts +12 -6
  407. package/src/opLifecycle/duplicateBatchDetector.ts +10 -4
  408. package/src/opLifecycle/opCompressor.ts +8 -4
  409. package/src/opLifecycle/opDecompressor.ts +20 -11
  410. package/src/opLifecycle/opGroupingManager.ts +12 -8
  411. package/src/opLifecycle/opSplitter.ts +11 -8
  412. package/src/opLifecycle/outbox.ts +22 -13
  413. package/src/opLifecycle/remoteMessageProcessor.ts +10 -4
  414. package/src/packageVersion.ts +1 -1
  415. package/src/pendingStateManager.ts +71 -15
  416. package/src/summary/documentSchema.ts +30 -18
  417. package/src/summary/index.ts +0 -3
  418. package/src/summary/orderedClientElection.ts +100 -38
  419. package/src/summary/runWhileConnectedCoordinator.ts +6 -3
  420. package/src/summary/runningSummarizer.ts +38 -19
  421. package/src/summary/summarizer.ts +29 -16
  422. package/src/summary/summarizerClientElection.ts +2 -2
  423. package/src/summary/summarizerHeuristics.ts +22 -11
  424. package/src/summary/summarizerNode/summarizerNode.ts +22 -12
  425. package/src/summary/summarizerNode/summarizerNodeUtils.ts +48 -16
  426. package/src/summary/summarizerNode/summarizerNodeWithGc.ts +21 -11
  427. package/src/summary/summarizerTypes.ts +246 -139
  428. package/src/summary/summaryCollection.ts +24 -25
  429. package/src/summary/summaryFormat.ts +24 -8
  430. package/src/summary/summaryGenerator.ts +14 -8
  431. package/src/summary/summaryManager.ts +28 -18
  432. package/src/throttler.ts +23 -11
  433. package/dist/scheduleManager.d.ts +0 -28
  434. package/dist/scheduleManager.d.ts.map +0 -1
  435. package/dist/scheduleManager.js +0 -235
  436. package/dist/scheduleManager.js.map +0 -1
  437. package/lib/scheduleManager.d.ts +0 -28
  438. package/lib/scheduleManager.d.ts.map +0 -1
  439. package/lib/scheduleManager.js +0 -231
  440. package/lib/scheduleManager.js.map +0 -1
@@ -24,12 +24,13 @@ const containerHandleContext_js_1 = require("./containerHandleContext.js");
24
24
  const dataStore_js_1 = require("./dataStore.js");
25
25
  const dataStoreRegistry_js_1 = require("./dataStoreRegistry.js");
26
26
  const deltaManagerProxies_js_1 = require("./deltaManagerProxies.js");
27
+ const deltaScheduler_js_1 = require("./deltaScheduler.js");
27
28
  const index_js_2 = require("./gc/index.js");
29
+ const inboundBatchAggregator_js_1 = require("./inboundBatchAggregator.js");
28
30
  const messageTypes_js_1 = require("./messageTypes.js");
29
31
  const index_js_3 = require("./opLifecycle/index.js");
30
32
  const packageVersion_js_1 = require("./packageVersion.js");
31
33
  const pendingStateManager_js_1 = require("./pendingStateManager.js");
32
- const scheduleManager_js_1 = require("./scheduleManager.js");
33
34
  const index_js_4 = require("./summary/index.js");
34
35
  const throttler_js_1 = require("./throttler.js");
35
36
  /**
@@ -90,7 +91,9 @@ exports.TombstoneResponseHeaderKey = "isTombstoned";
90
91
  * to this was experimental and is no longer supported.
91
92
  */
92
93
  exports.InactiveResponseHeaderKey = "isInactive";
93
- /** Default values for Runtime Headers */
94
+ /**
95
+ * Default values for Runtime Headers
96
+ */
94
97
  exports.defaultRuntimeHeaderData = {
95
98
  wait: true,
96
99
  viaHandle: false,
@@ -126,9 +129,13 @@ const defaultCompressionConfig = {
126
129
  compressionAlgorithm: CompressionAlgorithms.lz4,
127
130
  };
128
131
  const defaultChunkSizeInBytes = 204800;
129
- /** The default time to wait for pending ops to be processed during summarization */
132
+ /**
133
+ * The default time to wait for pending ops to be processed during summarization
134
+ */
130
135
  exports.defaultPendingOpsWaitTimeoutMs = 1000;
131
- /** The default time to delay a summarization retry attempt when there are pending ops */
136
+ /**
137
+ * The default time to delay a summarization retry attempt when there are pending ops
138
+ */
132
139
  exports.defaultPendingOpsRetryDelayMs = 1000;
133
140
  /**
134
141
  * Instead of refreshing from latest because we do not have 100% confidence in the state
@@ -155,6 +162,7 @@ function getDeviceSpec() {
155
162
  try {
156
163
  if (typeof navigator === "object" && navigator !== null) {
157
164
  return {
165
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-assignment
158
166
  deviceMemory: navigator.deviceMemory,
159
167
  hardwareConcurrency: navigator.hardwareConcurrency,
160
168
  };
@@ -207,12 +215,15 @@ async function createSummarizer(loader, url) {
207
215
  fluidObject = await resolvedContainer.getEntryPoint();
208
216
  }
209
217
  else {
218
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-assignment
210
219
  const response = await resolvedContainer.request({
211
220
  url: `/${summarizerRequestUrl}`,
212
221
  });
222
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access
213
223
  if (response.status !== 200 || response.mimeType !== "fluid/object") {
214
224
  throw (0, internal_6.responseToException)(response, request);
215
225
  }
226
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-unsafe-assignment
216
227
  fluidObject = response.value;
217
228
  }
218
229
  if (fluidObject?.ISummarizer === undefined) {
@@ -262,11 +273,7 @@ exports.loadContainerRuntime = loadContainerRuntime;
262
273
  * Represents the runtime of the container. Contains helper functions/state of the container.
263
274
  * It will define the store level mappings.
264
275
  *
265
- * @deprecated To be removed from the Legacy-Alpha API in version 2.20.0.
266
- * Use the loadContainerRuntime function and interfaces IContainerRuntime / IRuntime instead.
267
- *
268
- * @legacy
269
- * @alpha
276
+ * @internal
270
277
  */
271
278
  class ContainerRuntime extends client_utils_1.TypedEventEmitter {
272
279
  /**
@@ -301,7 +308,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
301
308
  },
302
309
  });
303
310
  const mc = (0, internal_7.loggerToMonitoringContext)(logger);
304
- const { summaryOptions = {}, gcOptions = {}, loadSequenceNumberVerification = "close", flushMode = defaultFlushMode, compressionOptions = defaultCompressionConfig, maxBatchSizeInBytes = defaultMaxBatchSizeInBytes, enableRuntimeIdCompressor, chunkSizeInBytes = defaultChunkSizeInBytes, enableGroupedBatching = true, explicitSchemaControl = false, } = runtimeOptions;
311
+ const { summaryOptions = {}, gcOptions = {}, loadSequenceNumberVerification = "close", flushMode = defaultFlushMode, compressionOptions = runtimeOptions.enableGroupedBatching === false
312
+ ? exports.disabledCompressionConfig // Compression must be disabled if Grouping is disabled
313
+ : defaultCompressionConfig, maxBatchSizeInBytes = defaultMaxBatchSizeInBytes, enableRuntimeIdCompressor, chunkSizeInBytes = defaultChunkSizeInBytes, enableGroupedBatching = true, explicitSchemaControl = false, } = runtimeOptions;
305
314
  const registry = new dataStoreRegistry_js_1.FluidDataStoreRegistry(registryEntries);
306
315
  const tryFetchBlob = async (blobName) => {
307
316
  const blobId = context.baseSnapshot?.blobs[blobName];
@@ -430,6 +439,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
430
439
  }, (schema) => {
431
440
  runtime.onSchemaChange(schema);
432
441
  });
442
+ if (compressionLz4 && !enableGroupedBatching) {
443
+ throw new internal_7.UsageError("If compression is enabled, op grouping must be enabled too");
444
+ }
433
445
  const featureGatesForTelemetry = {};
434
446
  // Make sure we've got all the options including internal ones
435
447
  const internalRuntimeOptions = {
@@ -490,7 +502,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
490
502
  * has to deal with compressed ops as other clients might send them.
491
503
  * And in reverse, session schema can have compression Off, but feature gates / runtime options want it On.
492
504
  * In such case it will be off in session schema, however this client will propose change to schema, and once / if
493
- * this op rountrips, compression will be On. Client can't send compressed ops until it's change in schema.
505
+ * this op roundtrips, compression will be On. Client can't send compressed ops until it's change in schema.
494
506
  */
495
507
  get sessionSchema() {
496
508
  return this.documentsSchemaController.sessionSchema.runtime;
@@ -499,7 +511,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
499
511
  return this.sessionSchema.idCompressorMode;
500
512
  }
501
513
  /**
502
- * See IContainerRuntimeBase.idCompressor() for details.
514
+ * {@inheritDoc @fluidframework/runtime-definitions#IContainerRuntimeBase.idCompressor}
503
515
  */
504
516
  get idCompressor() {
505
517
  // Expose ID Compressor only if it's On from the start.
@@ -512,7 +524,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
512
524
  }
513
525
  }
514
526
  /**
515
- * See IContainerRuntimeBase.generateDocumentUniqueId() for details.
527
+ * {@inheritDoc @fluidframework/runtime-definitions#IContainerRuntimeBase.generateDocumentUniqueId}
516
528
  */
517
529
  generateDocumentUniqueId() {
518
530
  return this._idCompressor?.generateDocumentUniqueId() ?? (0, uuid_1.v4)();
@@ -548,7 +560,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
548
560
  get connected() {
549
561
  return this._connected;
550
562
  }
551
- /** clientId of parent (non-summarizing) container that owns summarizer container */
563
+ /**
564
+ * clientId of parent (non-summarizing) container that owns summarizer container
565
+ */
552
566
  get summarizerClientId() {
553
567
  return this.summarizerClientElection?.electedClientId;
554
568
  }
@@ -646,7 +660,6 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
646
660
  // Backfill in defaults for the internal runtimeOptions, since they may not be present on the provided runtimeOptions object
647
661
  this.runtimeOptions = {
648
662
  flushMode: defaultFlushMode,
649
- enableGroupedBatching: true,
650
663
  ...runtimeOptions,
651
664
  };
652
665
  this.logger = (0, internal_7.createChildLogger)({ logger: this.baseLogger });
@@ -725,6 +738,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
725
738
  eventName: "GCFeatureMatrix",
726
739
  metadataValue: JSON.stringify(metadata?.gcFeatureMatrix),
727
740
  inputs: JSON.stringify({
741
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
728
742
  gcOptions_gcGeneration: this.runtimeOptions.gcOptions[index_js_2.gcGenerationOptionName],
729
743
  }),
730
744
  });
@@ -733,8 +747,6 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
733
747
  const opGroupingManager = new index_js_3.OpGroupingManager({
734
748
  groupedBatchingEnabled: this.groupedBatchingEnabled,
735
749
  opCountThreshold: this.mc.config.getNumber("Fluid.ContainerRuntime.GroupedBatchingOpCount") ?? 2,
736
- reentrantBatchGroupingEnabled: this.mc.config.getBoolean("Fluid.ContainerRuntime.GroupedBatchingReentrancy") ??
737
- true,
738
750
  }, this.mc.logger);
739
751
  const opSplitter = new index_js_3.OpSplitter(chunks, this.submitBatchFn, runtimeOptions.chunkSizeInBytes, runtimeOptions.maxBatchSizeInBytes, this.mc.logger);
740
752
  this.remoteMessageProcessor = new index_js_3.RemoteMessageProcessor(opSplitter, new index_js_3.OpDecompressor(this.mc.logger), opGroupingManager);
@@ -885,7 +897,8 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
885
897
  stashedBlobs: pendingRuntimeState?.pendingAttachmentBlobs,
886
898
  closeContainer: (error) => this.closeFn(error),
887
899
  });
888
- this.scheduleManager = new scheduleManager_js_1.ScheduleManager(this.innerDeltaManager, this, () => this.clientId, (0, internal_7.createChildLogger)({ logger: this.logger, namespace: "ScheduleManager" }));
900
+ this.deltaScheduler = new deltaScheduler_js_1.DeltaScheduler(this.innerDeltaManager, this, (0, internal_7.createChildLogger)({ logger: this.logger, namespace: "DeltaScheduler" }));
901
+ this.inboundBatchAggregator = new inboundBatchAggregator_js_1.InboundBatchAggregator(this.innerDeltaManager, () => this.clientId, (0, internal_7.createChildLogger)({ logger: this.logger, namespace: "InboundBatchAggregator" }));
889
902
  const disablePartialFlush = this.mc.config.getBoolean("Fluid.ContainerRuntime.DisablePartialFlush");
890
903
  const legacySendBatchFn = (0, exports.makeLegacySendBatchFn)(this.submitFn, this.innerDeltaManager);
891
904
  this.outbox = new index_js_3.Outbox({
@@ -1067,13 +1080,14 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1067
1080
  deleteChildSummarizerNode(id) {
1068
1081
  return this.summarizerNode.deleteChild(id);
1069
1082
  }
1070
- /* IFluidParentContext APIs that should not be called on Root */
1083
+ // #region `IFluidParentContext` APIs that should not be called on Root
1071
1084
  makeLocallyVisible() {
1072
1085
  (0, internal_2.assert)(false, 0x8eb /* should not be called */);
1073
1086
  }
1074
1087
  setChannelDirty(address) {
1075
1088
  (0, internal_2.assert)(false, 0x909 /* should not be called */);
1076
1089
  }
1090
+ // #endregion
1077
1091
  /**
1078
1092
  * Initializes the state from the base snapshot this container runtime loaded from.
1079
1093
  */
@@ -1104,6 +1118,8 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1104
1118
  this._summarizer?.dispose();
1105
1119
  this.channelCollection.dispose();
1106
1120
  this.pendingStateManager.dispose();
1121
+ this.inboundBatchAggregator.dispose();
1122
+ this.deltaScheduler.dispose();
1107
1123
  this.emit("dispose");
1108
1124
  this.removeAllListeners();
1109
1125
  }
@@ -1276,7 +1292,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1276
1292
  internalId(maybeAlias) {
1277
1293
  return this.channelCollection.internalId(maybeAlias);
1278
1294
  }
1279
- /** Adds the container's metadata to the given summary tree. */
1295
+ /**
1296
+ * Adds the container's metadata to the given summary tree.
1297
+ */
1280
1298
  addMetadataToSummary(summaryTree) {
1281
1299
  // The last message processed at the time of summary. If there are no new messages, use the message from the
1282
1300
  // last summary.
@@ -1645,7 +1663,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1645
1663
  }
1646
1664
  }
1647
1665
  /**
1648
- * Processes inbound message(s). It calls schedule manager according to the messages' location in the batch.
1666
+ * Processes inbound message(s). It calls delta scheduler according to the messages' location in the batch.
1649
1667
  * @param messagesWithMetadata - messages to process along with their metadata.
1650
1668
  * @param locationInBatch - Are we processing the start and/or end of a batch?
1651
1669
  * @param local - true if the messages were originally generated by the client receiving it.
@@ -1657,7 +1675,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1657
1675
  if (locationInBatch.batchStart) {
1658
1676
  const firstMessage = messagesWithMetadata[0]?.message;
1659
1677
  (0, internal_2.assert)(firstMessage !== undefined, 0xa31 /* Batch must have at least one message */);
1660
- this.scheduleManager.batchBegin(firstMessage);
1678
+ this.emit("batchBegin", firstMessage);
1661
1679
  }
1662
1680
  let error;
1663
1681
  try {
@@ -1669,7 +1687,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1669
1687
  });
1670
1688
  return;
1671
1689
  }
1672
- // Helper that updates a message's minimum sequence number to the minimum sequence number that container
1690
+ // Updates a message's minimum sequence number to the minimum sequence number that container
1673
1691
  // runtime is tracking and sets _processedClientSequenceNumber. It returns the updated message.
1674
1692
  const updateSequenceNumbers = (message) => {
1675
1693
  // Set the minimum sequence number to the containerRuntime's understanding of minimum sequence number.
@@ -1700,7 +1718,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1700
1718
  }
1701
1719
  let bunchedMessagesContent = [];
1702
1720
  let previousMessage;
1703
- // Helper that processes the previous bunch of messages.
1721
+ // Process the previous bunch of messages.
1704
1722
  const sendBunchedMessages = () => {
1705
1723
  (0, internal_2.assert)(previousMessage !== undefined, 0xa67 /* previous message must exist */);
1706
1724
  this.ensureNoDataModelChanges(() => {
@@ -1742,7 +1760,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
1742
1760
  if (locationInBatch.batchEnd) {
1743
1761
  const lastMessage = messagesWithMetadata[messagesWithMetadata.length - 1]?.message;
1744
1762
  (0, internal_2.assert)(lastMessage !== undefined, 0xa32 /* Batch must have at least one message */);
1745
- this.scheduleManager.batchEnd(error, lastMessage);
1763
+ this.emit("batchEnd", error, lastMessage);
1746
1764
  }
1747
1765
  }
1748
1766
  }
@@ -2049,15 +2067,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2049
2067
  return this.channelCollection.createDetachedDataStore(pkg, loadingGroupId);
2050
2068
  }
2051
2069
  async createDataStore(pkg, loadingGroupId) {
2052
- const context = this.channelCollection.createDataStoreContext(Array.isArray(pkg) ? pkg : [pkg], undefined, // props
2053
- loadingGroupId);
2054
- return (0, dataStore_js_1.channelToDataStore)(await context.realize(), context.id, this.channelCollection, this.mc.logger);
2055
- }
2056
- /**
2057
- * @deprecated 0.16 Issue #1537, #3631
2058
- */
2059
- async _createDataStoreWithProps(pkg, props) {
2060
- const context = this.channelCollection.createDataStoreContext(Array.isArray(pkg) ? pkg : [pkg], props);
2070
+ const context = this.channelCollection.createDataStoreContext(Array.isArray(pkg) ? pkg : [pkg], loadingGroupId);
2061
2071
  return (0, dataStore_js_1.channelToDataStore)(await context.realize(), context.id, this.channelCollection, this.mc.logger);
2062
2072
  }
2063
2073
  canSendOps() {
@@ -2084,7 +2094,7 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2084
2094
  get isDirty() {
2085
2095
  return this.dirtyContainer;
2086
2096
  }
2087
- isContainerMessageDirtyable({ type, contents }) {
2097
+ isContainerMessageDirtyable({ type, contents, }) {
2088
2098
  // Certain container runtime messages should not mark the container dirty such as the old built-in
2089
2099
  // AgentScheduler and Garbage collector messages.
2090
2100
  switch (type) {
@@ -2750,7 +2760,11 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2750
2760
  this.emit(dirty ? "dirty" : "saved");
2751
2761
  }
2752
2762
  }
2753
- submitMessage(type, contents, localOpMetadata = undefined) {
2763
+ submitMessage(type,
2764
+ // TODO: better typing
2765
+ // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types, @typescript-eslint/no-explicit-any
2766
+ contents, localOpMetadata = undefined) {
2767
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment
2754
2768
  this.submit({ type, contents }, localOpMetadata);
2755
2769
  }
2756
2770
  async uploadBlob(blob, signal) {
@@ -2980,7 +2994,9 @@ class ContainerRuntime extends client_utils_1.TypedEventEmitter {
2980
2994
  throw new Error(`Can't rollback ${type}`);
2981
2995
  }
2982
2996
  }
2983
- /** Implementation of ISummarizerInternalsProvider.refreshLatestSummaryAck */
2997
+ /**
2998
+ * Implementation of ISummarizerInternalsProvider.refreshLatestSummaryAck
2999
+ */
2984
3000
  async refreshLatestSummaryAck(options) {
2985
3001
  const { proposalHandle, ackHandle, summaryRefSeq, summaryLogger } = options;
2986
3002
  // proposalHandle is always passed from RunningSummarizer.