According to English Page.com,
We use the present perfect to say that an action happened at an unspecified time before now. The exact time is not important. You CANNOT use the present perfect with specific time expressions such as: yesterday, one year ago, last week, when I was a child, when I lived in Japan, at that moment, that day, one day, etc.
and it also says
Use the simple past to express the idea that an action started and finished at a specific time in the past.
So, you entered the living room and see your child standing next to a pool of water.
Now, we don't know the specific time that the child spilled the water.
In that situation, which one would you say?
"Have you spilled the water?" or "Did you spill the water?"?