Why does the client send a hash for Automatic Persisted Queries

When a GQL server doesn’t recognize a hash, the client then sends the query along with the hash. As I understand it, the server verifies the hash is correct for the query and then stores the mapping. Why would the client send the hash if the server is going to compute it anyway and reject the request if there’s a mismatch?