fix: prevent initial double query
Currently, on initial load the query is actually send twice: once because the queryHash is set, and once because the current savestate is set. Strangely, the current savestate already exists in the queryHash callback, so we can't check for that existing. Instead, this code only re-runs the query if the query has actually been tested, which is way later in the pipeline. This effectively prevents double queries on initial load. A risk is that, if the save state somehow is not tested, no hash is sent. I don't think thats currently possible, because the testedSaveState is immediately populated with "untested" or "testing" later on, and this would run.