Нашёл косяки в работе светофоров, см. подписи на картинке
Использование отдалённого сигнала в свойствах блока неправильное, отдалённый сигнал устанавливается перед основным сигналом и является как бы предупредительным. Поэтому sig3 например не может быть предупредительным для sig2. Отсюда скорее всего и вышеозвученные косяки.
Ещё что заметил, лок стоит на блоке stage1, маршрут задан на блок loop, а на него(на маршрут), реагирует светофор sig1, который к этому маршруту отношения не имеет. Пути решения проблемы: перенести светофор и поставить его перед стрелкой sw4 (по мне так самый правильный вариант); привязать показание светофора к положению стрелки sw4 через экшены, либо привязать светофор к маршрутам движения(см. объяснение ниже), может быть для этого будет необходимо отвязать его от блока stage1.
Ещё вот какую вещь хотел бы выделить. В свойсвах маршрута есть такая вкладка Стрелки. В ней изначально указывались стрелки, входящие в маршрут и их положение. При задании маршрута программа выдавала соответствующие команды. Позднее появилась возможность прописывать там ещё и показания светофоров входящих в маршрут и команды другим объектам.