//! Auto-assign submodules: wires focused sub-files and re-exports public items. #[allow(clippy::module_inception)] mod auto_assign; mod backlog; mod merge; /// TransitionFired subscriber that auto-spawns mergemaster on ConflictDetected merge failures. pub(crate) mod merge_failure_subscriber; mod pipeline; mod scan; mod story_checks; pub(crate) mod watchdog; // Re-export items that were pub(super) in the original monolithic auto_assign.rs // so that pool::lifecycle and pool::pipeline continue to access them unchanged. pub(super) use scan::{find_free_agent_for_stage, is_agent_free}; /// Re-export for `startup::tick_loop`. pub(crate) use merge_failure_subscriber::spawn_merge_failure_subscriber;