From 2c3d7e9814a239af5cc0e96e757cf08168ec6f78 Mon Sep 17 00:00:00 2001 From: louispaulb Date: Sat, 6 Jun 2026 14:43:34 -0400 Subject: [PATCH] =?UTF-8?q?Pont=20legacy=20:=20coords=20GPS=20fiables=20(d?= =?UTF-8?q?elivery=E2=86=92SL=E2=86=92RQA=E2=86=92Mapbox)=20+=20routage=20?= =?UTF-8?q?routier=20r=C3=A9el=20(Mapbox=20Matrix)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Pont (legacy-dispatch-sync.js) : - Import des coordonnées par job via cascade : table legacy `delivery` (point de service exact, JOIN ticket.delivery_id) > Service Location ERPNext > géocodage RQA > géocodage Mapbox. Validation bornes Québec (coord()). Couverture 153/172 (89%). - Géocodage RQA corrigé : retrait du générique de voie (Rue/Rang/Chemin absent de odonyme_recompose_normal) + code postal non accolé au terme (sinon ilike ne matche jamais). - Repli Mapbox geocoding pour rues trop récentes pour le RQA (MAPBOX_TOKEN). - Backfill + UPGRADE : coords delivery écrasent des coords SL moins précises (jamais l'inverse). - Comptabilité honnête : vérifie r.ok sur create/update (erp ne throw pas) → errors + error_samples. - Verrou de sérialisation sync() : tick + runs manuels ne se chevauchent plus (frappe_pg). - Subject tronqué à 140 (champ Data) → corrige CharacterLengthExceededError sur jobs sans SL. - Observabilité : coord_src tally + error_samples dans le résumé. Ops Planification (éditeur de journée) : - travelBetween() consulte une matrice Mapbox Matrix chargée à l'ouverture (loadDayRoute) → temps de trajet ROUTIERS RÉELS ; réordonnancement instantané sans nouvelle requête. Repli haversine si Mapbox indispo. Indicateur 🚗 réel vs 📏 vol d'oiseau. Co-Authored-By: Claude Opus 4.8 (1M context) --- apps/ops/src/pages/PlanificationPage.vue | 40 ++++- docs/features/legacy-dispatch-bridge.md | 38 ++++- .../targo-hub/lib/legacy-dispatch-sync.js | 144 ++++++++++++++++-- 3 files changed, 201 insertions(+), 21 deletions(-) diff --git a/apps/ops/src/pages/PlanificationPage.vue b/apps/ops/src/pages/PlanificationPage.vue index 73e2f60..a213a89 100644 --- a/apps/ops/src/pages/PlanificationPage.vue +++ b/apps/ops/src/pages/PlanificationPage.vue @@ -684,7 +684,7 @@