Skip to main content

synth_ai_core/streaming/
mod.rs

1//! Streaming framework for job events.
2//!
3//! This module provides a framework for streaming events from running jobs:
4//! - Stream types and messages
5//! - Configurable filtering and deduplication
6//! - Endpoint configuration for different job types
7//! - Handlers for processing stream messages
8//! - Job streamer for polling and dispatching
9
10pub mod config;
11pub mod endpoints;
12pub mod handler;
13pub mod streamer;
14pub mod types;
15
16pub use config::StreamConfig;
17pub use endpoints::StreamEndpoints;
18pub use handler::{
19    BufferedHandler, CallbackHandler, FilteredHandler, JsonHandler, MultiHandler, StreamHandler,
20};
21pub use streamer::JobStreamer;
22pub use types::{StreamMessage, StreamType};
23
24#[cfg(test)]
25mod tests {
26    use super::*;
27
28    #[test]
29    fn test_module_exports() {
30        // Verify all types are accessible
31        let _ = StreamType::Events;
32        let _ = StreamConfig::default();
33        let _ = StreamEndpoints::learning("test");
34        let _ = BufferedHandler::new();
35    }
36}