Good question!  (Talked through in person) Though this scenario would not result in an inconsistent state(a message that said the wrong thing), because the message will always be reloaded after the peer assessment is loaded, we changed the code so that we only call to render the message once per cycle, with the knowledge that we will always be calling render on our peer Xblock handler, regardless of whether or not there is a peer component.  This prevents double calls to the Render Message block.