In fit.workflow(), we can know whether a model fit will fail using parsnip::spec_is_possible(). Calling this before fitting the preprocessor would alleviate the pain of fitting a computationally intensive preprocessor, only for the model fit to then fail.