/// 3. Fails closed — sends a 500 response and/or returns `StopIteration` for HTTP filters, closes
/// - Status-returning callbacks panic immediately. This indicates the fail-closed mechanism did not
fn catch_or_skip<R>(&mut self, name: &str, f: impl FnOnce(&mut F) -> R) -> Result<R, CatchError> {