use async_trait;
/// Trait for handling messages from a Redis Stream.
///
/// Services implement this trait with their domain-specific processing logic.
/// The consumer framework handles XREADGROUP, XACK, XCLAIM, and dead-letter
/// automatically based on the return value:
///
/// - `Ok(())` — message is ACKed and removed from pending.
/// - `Err(_)` — message stays pending for retry via XCLAIM.