Basically when there is a signal in the closest position of a merge between a curve and a diagonal rail, it works fine when built by hand. However when built by a construction robot about 50% of the time the train signal will flash to indicate that it is in an illegal position even though it is not.. If deconstructed and rebuilt by hand it then works fine.

This is the simplest blueprint I made when I could consistently get flashing signals on one or both of the circled signals.

Attached is a save of a map with 2 problematic blueprints in the hotbar so you to try it out yurselfs!