#![recursion_limit = "512"]
pub mod a2a;
pub mod admission;
pub mod approval_core;
pub mod channel;
pub mod coder;
pub mod fanout;
pub mod handler;
pub mod host;
pub mod mcp;
pub mod meeting;
pub mod messaging_config;
pub mod messaging_orchestrator;
pub mod slack_adapter;
pub mod parslee_auth;
pub mod parslee_capabilities;
pub mod parslee_m365;
pub mod parslee_tools;
pub mod run_store;
pub mod run_trace;
pub mod session;
pub mod ui_agent_loop;
pub mod voice_turn;
pub use admission::{InferenceAdmission, ENV_MAX_CONCURRENT};
pub use handler::{
handle_connection, reconcile_os_schedules_at_boot, recover_workflow_checkpoints,
run_concierge_check, run_dispatch, run_idle_backend_eviction, run_upgrade_nudge_check,
JsonRpcError, JsonRpcMessage, JsonRpcResponse,
};
#[cfg(unix)]
pub use handler::handle_connection_unix;
pub use approval_core::{ApprovalCore, ResolveOutcome};
pub use channel::{ChannelConfig, ChannelId, InboundChannel, InboundSink, SlackTokenRef};
pub use fanout::FanoutCoordinator;
pub use messaging_orchestrator::{
spawn_channel_pollers, MessageSender, MessagingOrchestrator, RealMessageSender,
};
pub use slack_adapter::{
build_ack_frame, parse_events_api, parse_interactive, parse_socket_frame,
parse_socket_url_response, SlackAdapter, SlackInboundEvent, SlackTransport,
};
pub use run_store::{
RetentionConfig, RunStatus, RunStore, RunSummary, DEFAULT_MAX_AGE_DAYS,
DEFAULT_MAX_RUNS_PER_AGENT,
};
pub use run_trace::record_turns;
pub use session::{
ApprovalGate, ClientSession, RecordRunTurnsOutcome, RunMeta, ServerState, ServerStateConfig,
WsChannel, WsMemgineIngestSink, WsSink, WsToolExecutor, WsVoiceEventSink,
RECORD_TURNS_RUN_CEILING, RUN_COMPLETE_GRACE,
};