# Worker threads must route through worker_runtime's panic-isolated seals # (spawn_worker / spawn_job / spawn_detached), never a bare thread::spawn. A bare # spawn is how the "stuck flag on panic" failure recurred across three ultra-fuzz # runs (loose_files, cleanup, streaming preview decode): each fix migrated the one # known site and the next run found another. Denying the primitive makes a new # bare worker spawn a build error; the legitimate spawn points carry an explicit # #[allow(clippy::disallowed_methods)] so they stay visible in review. disallowed-methods = [ { path = "std::thread::spawn", reason = "route worker threads through worker_runtime::{spawn_worker, spawn_job, spawn_detached} for panic isolation" }, { path = "std::thread::Builder::spawn", reason = "route worker threads through worker_runtime::{spawn_worker, spawn_job, spawn_detached} for panic isolation" }, ]