Skip to main content

somatize_worker/
lib.rs

1// The crate is fully documented and clippy runs with -D warnings in CI,
2// so this makes "public API without docs" a build error from here on.
3#![warn(missing_docs)]
4
5//! Remote worker for distributed pipeline execution.
6//!
7//! Receives execution plans from a coordinator, runs them locally,
8//! and reports results. Each worker manages isolated Python environments
9//! ([`EnvManager`]) and communicates via WebSocket ([`protocol`]).
10//!
11//! Python filters execute in a **child subprocess** — the GIL is completely
12//! isolated from Rust/Tokio threads. No PyO3, no segfaults.
13
14pub mod detect;
15pub mod env_manager;
16pub mod error;
17pub mod protocol;
18pub mod python_process;
19pub mod server;
20pub mod worker;
21pub mod ws_transport;
22
23pub use detect::ResourceLimits;
24pub use env_manager::EnvManager;
25pub use error::WorkerError;
26pub use protocol::*;
27pub use python_process::{PythonProcess, SubprocessFilter};
28pub use server::{
29    ShutdownSignal, serve_worker, serve_worker_authenticated, worker_router,
30    worker_router_authenticated, worker_router_with_shutdown,
31};
32pub use worker::Worker;
33pub use ws_transport::WsTransport;