Point 1 : The (Exchange Server Agent)ESA will run before the Journaling agent.
Point 2 : The Journaling agent uses the OnSubmittedMessage *AND* the OnRoutedMessage events.
When an email sent from User1 to User2 , it generates "OnSubmittedMessage" event which activates the ESA. This original message will be kept in Submission Queue and a warning email will be sent to User1(Status in the submission Queue : "Last Error: Message deferred by categorizer agent").
This warning email reaches User1, so we can infer that it generates "OnSubmittedMessage" *AND* "OnRoutedMessage". As this warning email generated both events that required by Journaling agent, this email will be Journalled.
Now the User1 replies to the warning email, this will be routed to ESA agent from submission queue and deleted by the ESA after it checks the validity. This email won't reach the compliance release mailbox. So, in this case, only the OnSubmittedMessage event is generated. Hence reply to the warning is not journalled.
Once the ESA decides on the next action, it releases the original email(From user1 to user2) from submission queue , which generates "OnSubmittedMessage" *AND* "OnRoutedMessage" events. Hence this message is Journalled.