I suspect Dumbledore had Snape make an unbreakable vow.
Snape had made an unbreakable vow to help Malfoy on his mission, at the moment of truth it was obvious that Malfoy was having second thoughts and wasn't going to kill Dumbledore, so Snape did it. Now the question becomes why did all that go down. Dumbledore obviously knew a lot more about what was happening that Harry figured out, Dumbledore is also big on choices and redemption, I think he wanted to give Malfoy every chance he could to not follow in his father's footsteps and thus put Snape on the path to killing him. This ends any questions in Voldemort's camp about Snape's loyalty, keep Malfoy from having problems at home, gives Malfoy a chance to change his path, and opens the door for Dumbledore to take whatever post death (I think he's really dead, and JKR has said that in her universe dead is dead you don't get better from it) path of assistance he can take.