sequence

The materialized sequence of all RgaIds in RGA order, including tombstones. Computed lazily and cached.

Exposed for WindowPolicy (in :kuilt-quilter) implementations that need to inspect the full ordered sequence (e.g. WindowPolicy.byCount).

A mutation that can prove the result without recomputing threads it forward through RgaCache.sequence (#2193), so a chain of appends pays one computeSequence() rather than one per turn. Every other path leaves it null and this recomputes once.

Any order this instance already holds propagates, threaded or merely forced (#2225). removeAt / removeFirst / insertAt force this lazy and thread the result on through RgaCache.sequence; an instance whose sequence a plain read forced carries nothing there, but materializedSequence reads the forced lazy directly, so an append on it threads too. An append-then-read loop therefore pays one computeSequence() in total rather than one per turn. Both supplies are sound for the same reason: the guard's premise is that its base equals computeSequence() of the current state, and a forced lazy satisfies that exactly as a threaded one does.