At the moment, a kernel adapter's extra_validity_checks() method only returns a boolean; but - it is not afforded a logger to print any error messages, so, essentially, the cause of failure remains opaque.
Assuming we continue to deny the adapter access to the logger, we should instead let it return something other than a boolean, e.g. an optional<std::string> or similar object, which, when empty, means success, otherwise is an error message to print. Alternatively we could not return anything from that method, and instead let it throw.