The fact than any loco coupling a train gets the train loco type is quite heavy to manage when doing shunting operations. You do not know anymore that you are using a shunting loc. unless the specific loco on contact is used as a precondition (using loco address).
The original loco type should be always available.
I would suggest than in future releases the “loco type on contac” becomes the “train type on contact”.
Then adding a new condition “Original loco type” on contact would allow depending on requirements to use either the train loco type or the true original loco type of the leading loc.
This would highly simplify the preconditions while in shunting mode.
Thanks in advance for your comments.