What’s the problem? It makes perfect sense to me that a const object cannot be moved from, since it violates the constness. Since constness goes hand in hand with thread safety you really don’t want that violation.
That would force the programmer to remove the std::move, making it clear that its a copy.
But having std::move silently fall back to a copy constructor is not a good solution.