Parameter preconditions were always getting the empty service provider, even when a custom one was provided in ExecuteAsync, which means that preconditions which use services cannot work properly.