Thanks for the post. This question has already been answered in an older post (Dec 2nd).
The relevant part of that post is: "The short answer is that a node proposing a block to Paxos does not fill in the hash value at the time when it proposes. So the hash field is practically an empty slice. The node will fill in the hash value only when that block reaches consensus, and the hash value will be the hash of the previous block, if such a block exists, or a byte slice with 32 zeros.".
I hope this helps.