I mistakenly wrote "who is the cat" when it should've been "who has the cat", but how does it also give "who's the cat" as a correct solution? It's the same as "who is the cat", it shouldn't be given as correct.
No, actually it can't. We can contract has to 's when has is an auxiliary but not when it's a normal verb.
Lucy's lost her bag. = Lucy has lost her bag. --- OKAY
Lycy's a cat. = Lucy is a cat. NOT Lucy has a cat.