Thanks for your report, Z9999+
Indeed, the assumption in the original implementation that
the best return route is the reverse of the best forward route no longer holds with more complex connection weights.
Dwachs has been working on a patch to make search_routeS() resumable with route-caching, and performance is good. Hopefully we can solve this problem by re-using Dwachs' much more optimised search_routeS() to calculate the return routes for return pax/mail -- but this is just my proposal to Dwachs, and may or may not be adopted.
For your info, the connection weight criteria has not been finalised yet -- the current 8:1 transfer to intermediate halt ratio is just arbitrary. We want to finalise on the search code first (which hopefully will be complete once Dwachs has finished with his optimisation of search_routeS()), before dealing with the more controversial formula of connection weight.