If there is nothing in front I thought you would get green’s all the way.
The issue at Highett has already been discussed.
In the pm peak trains are timetabled at 3 - 4 minute intervals. An express catches up with the stopper in front and is scheduled at almost the minimum permitted headway right behind it. The chances of everything running exactly on time in the peak are remote meaning that it won't take more than the slightest delay to cause congestion. It doesn't have to be the train right in front either - it could be reaction to something much farther down the line - even a late runner perhaps 15 - 20 minutes in front causing bunching behind.
I experienced the same when I commuted on the line. If the express left right time (or within a minute of it) and managed to also depart Caulfield within a minute or two of right time it got greens to Moorabbin and ran through a stopper round about Bentleigh. It then hit the brakes before Highett. It often caught up the train ahead as well though there were not quite so many trains scheduled in my commuting days as run now. If the express were more than a few minutes late the stopper would be allowed out from Moorabbin in front of it and the delay wold become compounded. That's a factor of railway regulation where it is often considered better to delay one train a little more and keep the rest on time compared with delaying everything by a few minutes. The total "delay minutes" is less though the customer frustration isn't but performance is measured in terms of punctuality not satisfaction.
For good measure we also frequently got delayed on the approach to Frankston (as did all trains) sometimes being held waiting a platform for up to 5 minutes and losing any time advantage the express might have had on paper. That much hasn't changed.