MovableTreeGcCoordinator

constructor(state: StateFlow<MovableTree<V>>, cutFrontier: StateFlow<CutFrontier>, delivered: StateFlow<VersionVector>, applyCompaction: (Patch<MovableTree<V>>) -> Unit, scope: CoroutineScope)

Parameters

state

live MovableTree state (updated by Quilter on every incoming delta).

cutFrontier

the atomically-published causal-stability cut + frontier from Quilter.cutFrontier.

delivered

this replica's contiguous delivered VV from Quilter.deliveredLocal.

applyCompaction

called with each compaction Patch; wire this to Quilter.apply so the delta propagates to all peers.

scope

the CoroutineScope for background coroutines.