Nodes A, M1, ..., Mk-1 will assume that the transaction is completed. And the nodes Mk+1,...Mn,B will remain in uncertainty.
They don't, because nodes don't blindly trust that LN internal transactions (with HTLC and millisatoshis) are final. They are final only when closing channel transactions are updated for each node.
Closing channel transactions are not updated simultaneously, but sequentially, node by node.
Let A be the last node that has a closing channel transaction updated. How does node B know that everything ended well and all nodes were updated.