I think the delay in response is due almost entirely to the fact that Hamas took hostages. Israel was not able to determine a status for how many were taken and where, which demanded a plan of action be developed in the face of that uncertainty.
Certainly, the reason for the breach should be made known. It could be genuine carelessness on the part of the Israelis, successful guile on part of Hamas, or a false flag. We don't know.
Beyond that, though, Israel had a choice to make: Allow Hamas to continue to exist as they hide behind women and children, or hold their nose and root Hamas out, doing what they can to minimize the innocent carnage. It's pretty obvious that the latter choice has been made, and is total war.
The strike on Iran's people was an attempt to take the head of the snake, IMHO. There was a risk of retaliation from Iran against Israel, and that risk has materialized. None of this is good, and normal people don't like it. I know I certainly don't.