liminal/durability/
channel.rs1mod batch;
2mod codec;
3mod pending;
4mod presence;
5mod storage;
6pub use pending::{AppendResolution, UnresolvedAppend};
7pub use presence::KeyLookup;
8
9pub use storage::{DurableChannel, EphemeralChannel, PartitionKey};
10
11#[derive(Clone, Debug, PartialEq, Eq)]
13pub struct CausalContext {
14 pub parent_id: Option<String>,
16 pub vector_clock_entry: Option<u64>,
18}
19
20#[derive(Clone, Debug, PartialEq, Eq)]
22pub struct MessageEnvelope {
23 pub payload: Vec<u8>,
25 pub causal_context: Option<CausalContext>,
27 pub timestamp: u64,
29 pub publisher_id: String,
31 pub idempotency_key: Option<String>,
33}