It is a funny error, but this line panics in case no samples are None:
https://github.com/sifraitech/rust-kzg/blob/78802fa9b61797242643142492984ebaa4a7620c/blst/src/recovery.rs#L106
Not only it should forward errors up, I think in that case recovery should return input in recover_poly_from_samples and do a simple transformation in recover_poly_coeffs_from_samples.