When does a message become part of the blockchain?

At any given time, there are several chains being built up in parallel. For example, type “lotus chain head” and you will see usually 3 chains.

Let’s say I submit a message to the message pool to send 5 FIL from A to B. When does that become applied and irreversibly transfer the funds? Suppose it is included in one of the chains, but not the other two. Has the transfer occurred at that point?

Also, what if the message is included in all 3 chains, but later on a new chain is created that does not include the message, and that new chain eventually becomes the winning chain. Isn’t it always theoretically possible that this could happen and undo transactions from many epochs ago?