feat(optimization): circuit integration waypoints, TripAlgo preview settings, driver chaining caps
Avant
- La recherche de circuits PROD pour intégration ne reflétait pas correctement l’impact réel des nouveaux élèves sur la tournée : les plafonds distance / durée pouvaient s’appuyer sur des données « circuit seul », donc des intégrations apparemment valides pouvaient ensuite dépasser les limites fixées en paramétrage.
- La prévisualisation des trajets n’envoyait pas les mêmes règles de plafond à TripAlgo que l’optimisation, ce qui pouvait donner un aperçu incohérent avec le résultat final ou avec les règles métier.
- Pour le chaînage des chauffeurs, les mêmes paramètres « distance / durée max d’optimisation » étaient réutilisés comme écart max entre deux trajets, ce qui mélangeait deux logiques métier différentes et rendait le chaînage trop strict ou trop large selon les réglages.
Après
- Lorsqu’un plafond distance ou durée est actif, la recherche d’intégration envoie les points candidats des élèves à intégrer pour que le circuit-service puisse évaluer une tournée fusionnée (alignement avec la logique ORS / contrats documentés).
- La prévisualisation transmet les paramètres d’optimisation (paramétrage stocké, surchargé par le contexte d’aperçu le cas échéant) à TripAlgo afin que les mêmes limites s’appliquent à l’aperçu qu’à l’optimisation.
- Le chaînage s’appuie sur des écarts dédiés (1 h entre trajets, 30 km entre fin et début / points d’appui), indépendants des plafonds d’optimisation circuit, pour une règle métier lisible côté exploitation.