WindowPolicy
Policy that decides which element ids to truncate from an us.tractat.kuilt.crdt.Rga sequence.
RgaGcCoordinator calls idsToTruncate on every compaction pass (i.e. each time the causal-stability watermark advances). The returned ids are added to the GC set and broadcast as part of the us.tractat.kuilt.crdt.RgaOp.Compact delta.
Convergence. Different replicas may run different WindowPolicy configurations. After set-union merge the more-aggressive window dominates: each replica compacts the union of what either dropped. This "most-aggressive-window-wins" behaviour is expected and convergent.
Built-in factories
WindowPolicy.never — GC-only, no windowing (the default). Always returns an empty set.
WindowPolicy.byCount — keep the last n visible elements; drop the leading prefix.