kora_cdc/lib.rs
1//! # kora-cdc
2//!
3//! Change Data Capture (CDC) for Kōra.
4//!
5//! Every write operation in a Kōra shard is recorded as a [`ring::CdcEvent`] in
6//! a fixed-size, per-shard ring buffer. Downstream consumers read these events
7//! through cursor-tracked subscriptions or through consumer groups that provide
8//! at-least-once delivery with acknowledgement tracking.
9//!
10//! ## Modules
11//!
12//! - [`ring`] — Per-shard circular buffer that stores mutation events with
13//! monotonic sequence numbers and automatic eviction of the oldest entries.
14//! - [`subscription`] — Lightweight cursor-based consumers with optional
15//! glob-pattern key filtering.
16//! - [`consumer`] — Consumer groups with independent per-consumer cursors,
17//! pending-entry tracking, acknowledgement, and idle-timeout redelivery.
18
19#![warn(clippy::all)]
20#![warn(missing_docs)]
21
22pub mod consumer;
23pub mod ring;
24pub mod subscription;