I don't know why the train was late arriving from the maintenance centre. Maybe Via screwed up, or maybe Metrolinx failed to give them a slot to exit the yard. Both have happened before.
What I do know is that 19 minutes of delay was actively caused by Metrolinx. Eastbound Via trains are scheduled to depart Union at :02, :17, :32, and :47 past the hour because those are the times that are optimal to fit between Lakeshore East local trains (which depart at :05, :20, :35 and :50 past the hour). The Via train in question departed Union at :02 past the hour and the surrounding GO trains were on time, so allowing the train to depart when it was ready would have incurred little or no impact on GO trains while minimizing delay for the Via train.
Being late is not a reason to delay a train, on the contrary it's a reason to prioritize a train so that the delay can be minimized.
No, the Via train to Toronto was running late, which makes it especially important to prioritize it over trains that are on time and have schedule padding available to make up delays. Especially in cases such as this one where the delay to the on-time train would be negligible if any. The Via train was already in front of the GO train and going over 130 km/h, so the worst case scenario is literally less than a minute of delay while the GO train waits for the switch to change, after which it would have an unobstructed shot to Union because the Via train would be long gone. A Via train to Windsor was holding in Union Station waiting for the Via train to arrive, and because of the additional 10 minutes of delay that Metrolinx created in addition to the original delay, that train to Windsor departed 10 minutes late, allowing delays to continue propagating across the Ontario rail network.
From what I've observed from Metrolinx dispatching, the decision between letting the GO train go first or the Via train has nothing to do with the delay to either train. If the Via train is late, the GO train goes first. And if the GO train is late, the GO train goes first.
View attachment 568904
View attachment 568906
If Metrolinx were a for-profit company then it would be understandable that they prioritize their own trains regardless of how much delay that will cause to other train operators relative to how much delay their trains would save. But they are not a private company. They are a government agency so their duty is to the citizens of Ontario, including those in Via trains. As such they should be dispatching their railways in the way that minimizes delay to train passengers, including those in Via trains. In effect, Metrolinx should be operating as a rail infrastructure manager, for whom Via and GO are simply two Train Operating Companies that are their customers. The train that gets prioritized should be the one that will minimize the overall impact on the Ontario rail network, not simply the one that's green.