tailStamped

Like tail, but each streamed record carries its ordering StampedLogRecord.rgaId — the producer identity and cross-device total-order key needed to merge several devices' logs into one timeline. Emits each record once, in order, replaying everything already known on collection and continuing with newly captured records until the collector is cancelled.

The streaming sibling of pullStamped: a live per-device drain gets stamps directly, without re-snapshotting the whole buffer via pullStamped on every change (which would be O(n) per tick, O(n²) over a session).

Samples

val loom = InMemoryLoom()
// Stream a device's logs live, each carrying its ordering RgaId. A live per-device
// drain collects this flow and writes each record straight into the cross-device
// merge — no re-snapshotting the whole buffer on every change to recover the stamps.
val client = LogTapClient(loom.join(InMemoryTag("tailer")), seamScope)
return client.tailStamped()