This website requires JavaScript.
c267f9a3dd
feat(planif): functional dispatch — single-day suggest, one overdue chip, sick-tech redistribute, bulk shift gen
louispaulb
2026-07-03 10:59:39 -0400
b1ff46e8c1
feat(planif): weekly shift generator per tech (templates + N weeks) — reworked from Dispatch
louispaulb
2026-07-03 10:37:46 -0400
8b9d5376a7
feat(booking): slot search respects skill + real shifts + weekend-for-repairs
louispaulb
2026-07-03 10:21:01 -0400
374e0da229
feat(ui): simpler créneau dialog — skill chips + defaulted duration + progressive disclosure; fix address autosuggest everywhere
louispaulb
2026-07-03 09:58:35 -0400
df23f232b3
feat(planif): native OPS job creation (#17 ) — Dispatch deprecated, create from Planification
louispaulb
2026-07-03 09:05:32 -0400
a7a6baf8b5
feat(geoloc): OSM geocoder + postal-code centroid fallback (never wrong-city)
louispaulb
2026-07-03 08:28:10 -0400
e9d1990235
fix(geoloc): trust infrastructure (fibre) for exact address; fix new-street mislocation
louispaulb
2026-07-03 07:57:22 -0400
28dff24227
feat(dispatch): P1-A SLA on Planification jobs — reuse existing SLA system
louispaulb
2026-07-03 07:39:33 -0400
3599ec995f
feat(dispatch): P1-C "Trouver un créneau" — wire suggest-slots to a booking dialog
louispaulb
2026-07-03 07:30:08 -0400
7b7980a12b
feat(routemap): pill markers — job-type icon + sequence number (best practice)
louispaulb
2026-07-02 21:02:27 -0400
2177212a67
fix(dispatch): GPS device row was misleading — clear linked-device chip + easy relink
louispaulb
2026-07-02 20:56:27 -0400
fc1f61eecf
fix(dispatch): OSRM for ALL routing + fix waypoint overshoot + detail dialog polish
louispaulb
2026-07-02 20:41:00 -0400
e92c220396
feat(routemap): full ticket detail on pin click + routes return to origin
louispaulb
2026-07-02 20:19:57 -0400
d5c6240c6e
fix(routemap): HTML markers (number inside disc) + fan-out overlapping pins on hover
louispaulb
2026-07-02 20:05:40 -0400
f33cfbc7ca
fix(routemap): readable overlapping pins + hover brings a tech's route to front
louispaulb
2026-07-02 19:31:45 -0400
c3f1c77164
feat(dispatch): tech chips on map, distinct colors, remote (no-travel) jobs, group-as-project
louispaulb
2026-07-02 19:25:39 -0400
cd12dbe601
feat(dispatch): P4 hub-side optimize orchestration + same-address rules
louispaulb
2026-07-02 19:14:38 -0400
ebba1025ac
feat(dispatch): TARGO office as default departure + per-tech origin button
louispaulb
2026-07-02 19:03:52 -0400
ff43b54a76
feat(dispatch): P2 RouteMap.vue shared component + P3 permanent "Tournées" tab
louispaulb
2026-07-02 18:54:46 -0400
462fcef9d5
feat(dispatch): P1 OSRM everywhere + review ticket detail, editable time, per-leg travel
louispaulb
2026-07-02 18:41:44 -0400
2e6eb6dd01
feat(dispatch): review shows tech's existing jobs + sector, and ordered skills inline
louispaulb
2026-07-02 18:22:57 -0400
28f544a777
ui(dispatch): lighter solver settings — a cost per criterion, no slider
louispaulb
2026-07-02 17:50:23 -0400
d9215a20fa
fix(dispatch): optimize by default; per-day occupation (not 16h); balance >100% capped 120%; medium=amber
louispaulb
2026-07-02 17:39:45 -0400
7fa8c6dc74
refactor(priority): unify on 3 levels (ERPNext standard), high = red, jobs + conversations
louispaulb
2026-07-02 16:01:25 -0400
4e5ad011ee
fix(dispatch): reuse the Communications priority flag (grey outline → list), not a red emoji
louispaulb
2026-07-02 15:50:45 -0400
86bd8080d2
fix(dispatch): optimizer respects existing load; drop pseudo-tech placeholders; edit skills from review
louispaulb
2026-07-02 15:35:25 -0400
7d1a5b067f
feat(dispatch): persistent URGENT flag per job (SLA/commercial)
louispaulb
2026-07-02 15:16:13 -0400
8b2d7b54e9
feat(dispatch): pre-wired sites — install time ÷4 (Lac des pins/Camping/Domaine Dauphinais)
louispaulb
2026-07-02 15:08:33 -0400
2566976191
feat(dispatch): review job-move menu ranks techs by proximity + occupancy
louispaulb
2026-07-02 15:05:05 -0400
f5a7547c1f
feat(dispatch): urgency → early-in-day + AM/PM windows per job
louispaulb
2026-07-02 14:42:36 -0400
3513f7e15f
feat(dispatch): solver settings (distance↔specialty, speed, time) + urgent priority
louispaulb
2026-07-02 14:03:11 -0400
bc157588d1
tune(dispatch): VRP prioritizes distance over specialty (rank_weight 6→2)
louispaulb
2026-07-02 13:53:46 -0400
96929bed6f
feat(dispatch): OSRM road-time matrix for the VRP optimizer (Phase 2)
louispaulb
2026-07-02 13:48:43 -0400
5803fb3d0e
feat(dispatch): optimizer assumes 8h shift for every selected tech
louispaulb
2026-07-02 13:34:37 -0400
a6508845a7
feat(dispatch): VRP route optimizer (OR-Tools) — "Optimiser" mode
louispaulb
2026-07-02 11:24:08 -0400
4591ef6169
feat(dispatch): skill PRIORITY ordering per tech (specialists first)
louispaulb
2026-07-02 10:50:51 -0400
f6e5128859
feat(dispatch): skill-driven auto-dispatch — route grouping, placeholder queues, shift check
louispaulb
2026-07-02 10:37:40 -0400
72e84d6b8d
refactor(dispatch): la JOB impose sa compétence — retrait du niveau global par compétence
louispaulb
2026-07-02 09:38:54 -0400
aa6cc3e732
feat(dispatch): niveau requis persistant + lasso freeform + routes réelles Mapbox
louispaulb
2026-07-02 09:18:33 -0400
83338ca57b
feat(acte): barème sous-traitant — transport/jour + FTTH 250m+ (base + $/m)
louispaulb
2026-07-02 09:04:11 -0400
453bef006c
fix(ops): sécurité + robustesse dispatch/comms
louispaulb
2026-07-02 08:56:35 -0400
512c4a5f1b
feat(ops): dispatch auto complet + perf Boîte/rapports + fix session
louispaulb
2026-07-02 08:49:35 -0400
6628eaaa5b
feat(ops+hub): sender picker, per-user notifs, editable rating emails, planif & tickets UX
louispaulb
2026-06-16 22:41:51 -0400
1b7bad1686
security: harden payments/hub auth + remove leaked ERPNext token from source
louispaulb
2026-06-16 06:17:17 -0400
54f0d271dd
feat(inbox): global thread scroll + close (X) on another agent's draft mirror
louispaulb
2026-06-15 08:09:07 -0400
f519bb3dd6
feat(inbox): email height fits content + per-message reply button
louispaulb
2026-06-15 07:29:34 -0400
08069ec0dc
feat(inbox): show the agent's real name as sender + cleaner Gmail-style thread
louispaulb
2026-06-15 07:15:23 -0400
9466645e17
fix(inbox): never resolve our own domains to a customer (wrong sender names)
louispaulb
2026-06-15 06:51:04 -0400
e604cbf237
fix(inbox/mobile): reply composer no longer hides the "Envoyer" button
louispaulb
2026-06-15 06:24:30 -0400
0f65c02d83
feat(fsm): platform build — comms UI, F→ERPNext sync/billing, roster, campaigns, network, reports
louispaulb
2026-06-15 06:12:12 -0400
19d31025a6
feat(inbox+historique): sender-identity fix, single-source taxonomy, dispatch history & leaderboards
louispaulb
2026-06-15 06:11:47 -0400
aa108ab13f
feat(field-tech): app Capacitor native (geofence Transistorsoft + scan MLKit) + CI
louispaulb
2026-06-08 19:47:27 -0400
98458861c3
feat(dispatch): capacité AM/PM, durées additives, capture terrain (/field), sync techs
louispaulb
2026-06-08 19:47:21 -0400
ebad7066d6
feat(dispatch/assign): vue date DUE, confirm Quasar, carte→liste
louispaulb
2026-06-07 22:46:33 -0400
3d65b994e5
feat(dispatch): fermer ticket (unitaire + lot), tri ASC/DESC, batch PHP
louispaulb
2026-06-07 22:40:26 -0400
4abce6fd66
feat(dispatch): pont d'écriture legacy + adresses/coords/carte/UX Planification
louispaulb
2026-06-07 22:32:00 -0400
4a3dc01938
Planification grille : retrait de l'axe de temps + la bande n'intercepte plus le clic/drag de la cellule
main
louispaulb
2026-06-07 18:02:39 -0400
29054c49c2
Planification éditeur journée : déplacements en pointillés + clic pin = détails + clic ligne = recentre carte
louispaulb
2026-06-07 17:50:52 -0400
34b10e0a1e
Planification : carte de journée INTERACTIVE (Mapbox GL) — itinéraire routier réel + zoom/déplacement
louispaulb
2026-06-07 17:44:22 -0400
1673f7cd9a
Pont : import basé sur l'ADRESSE DE SERVICE (delivery), pas la facturation (compte)
louispaulb
2026-06-07 17:36:17 -0400
de496f8405
Pont : géoloc camping (fixe) sur les Dispatch Jobs — l'adresse de service ≠ résidence du client
louispaulb
2026-06-07 17:30:11 -0400
ab5eceb961
Conformité : repli « centre du code postal / ville » pour les unmatched restants (statut 'area')
louispaulb
2026-06-07 17:14:41 -0400
ed651d3ce9
Campings : gestion du registre + réapplication self-service depuis Ops
louispaulb
2026-06-07 17:07:15 -0400
e278d0d7b3
Campings : registre + géoloc de remplacement FIXE sur tous les lots (1405 corrigés)
louispaulb
2026-06-07 17:04:03 -0400
5d4f66108d
Planification : minimap du territoire (pins+tracé) dans l'éditeur de journée + retrait du sélecteur priorité
louispaulb
2026-06-07 16:54:53 -0400
fbf584f02f
Phase 1 (hygiène) : utils partagés + logique pure testable + observabilité erp + 1ers tests
louispaulb
2026-06-07 10:36:41 -0400
fc95a6cd4f
Optimisation (consolidation helpers address) + doc Vision/modularisation
louispaulb
2026-06-07 01:28:54 -0400
72d23665b2
Page Ops « Conformité des adresses » — source de vérité unique pour résoudre le backlog
louispaulb
2026-06-07 01:06:55 -0400
d17da8c40c
SL normalisation passe 2 : récupération GPS par numéro+ville (sans contrainte postale)
louispaulb
2026-06-06 16:19:37 -0400
ef6a993e6b
Normalisation AQ des 17k Service Locations (lien RQA + statut, adresse originale préservée)
louispaulb
2026-06-06 15:59:21 -0400
ccad864165
Recherche d'adresses : base LOCALE (Postgres ERPNext) au lieu du Supabase cloud externe
louispaulb
2026-06-06 15:46:47 -0400
60dc095f56
Pont legacy : géocodage RQA via la recherche TRIGRAM (RPC search_addresses) + garde-fou anti-faux-positif
louispaulb
2026-06-06 15:05:14 -0400
e14026ae23
Pont legacy : coords GPS fiables (delivery→SL→RQA→Mapbox) + routage routier réel (Mapbox Matrix)
louispaulb
2026-06-06 14:43:34 -0400
22fbb81d3e
feat(planif): éditeur journée = planificateur de tournée (heures recalculées, pas d'overlap, RDV verrouillables, détails)
louispaulb
2026-06-06 13:56:26 -0400
faea3b0c1a
feat(planif): éditeur journée — réordonnancement fiable (flèches+drop) + durée éditable (min) + temps de transport
louispaulb
2026-06-06 13:41:28 -0400
d96e7be672
feat(planif): éditeur de JOURNÉE contextuel au clic sur le progressbar (drag-drop réordonner + retirer)
louispaulb
2026-06-06 13:29:55 -0400
482cc948b3
refactor(planif): clic progressbar → timeline éditable Dispatch (tech+jour) au lieu du popup maison
louispaulb
2026-06-06 13:19:59 -0400
be222d005e
feat(dispatch): date d'ouverture + MàJ en tête du détail ticket (mouseover) pour juger la fermeture
louispaulb
2026-06-06 13:07:15 -0400
8707cd7c2e
fix(dispatch): pont lisait un réplica figé (avril) + auto-fermeture des DJ dont le ticket legacy est closed
louispaulb
2026-06-06 13:03:10 -0400
5eb1e587da
feat(planif): tri du panneau flottant « Jobs à assigner » (groupe/compétence/date/ville/priorité)
louispaulb
2026-06-06 12:48:44 -0400
510f8c10e0
feat(planif): blocs cellule colorés par compétence + menu réordonner/re-prioriser au clic sur le progressbar
louispaulb
2026-06-06 12:44:22 -0400
2631ed9199
feat(dispatch): couleur ticket = couleur skill + fil complet du ticket + tri pool (date/ville/priorité)
louispaulb
2026-06-06 12:37:45 -0400
b492e30971
feat(dispatch): réconciliation + heartbeat + détails ticket dans Ops + couleurs panneau roster
louispaulb
2026-06-06 11:50:21 -0400
971366fbb8
docs: cadre best-practices « ne rien échapper » + automatisation closed-loop (tailored stack TARGO)
louispaulb
2026-06-06 11:34:10 -0400
7f22647ce4
feat(dispatch): bouton « Activer STB (Ministra) » — lien d'activation TV extrait du ticket legacy (Phase 1)
louispaulb
2026-06-06 11:20:09 -0400
dab1281953
feat(dispatch): bouton « Répondre dans legacy » (lien reply_ticket.php du tech)
louispaulb
2026-06-06 10:30:32 -0400
5e32f5933a
feat(dispatch): pastille couleur par type + badge « en retard » dans le pool & le détail
louispaulb
2026-06-06 10:19:03 -0400
3c17805770
feat(dispatch): coloriage cartes par type legacy + n° ticket dans le détail
louispaulb
2026-06-06 10:05:45 -0400
30d8b0b29c
feat(dispatch): pont legacy(osTicket)→Dispatch Job pour les tickets « Tech Targo »
louispaulb
2026-06-06 09:33:53 -0400
90f7237312
roster(planif): chip compteur « N hors quart » dans la barre (signal hebdo des jobs assignés sans quart publié)
louispaulb
2026-06-06 09:15:16 -0400
f7343f6e0e
roster(planif/dispatch): On-Hold bloqué, alerte hors-quart, deep-link Dispatch, aviser client (#58 )
louispaulb
2026-06-06 09:13:17 -0400
e33dd8e83a
roster(planif): assignation drag-drop + timeline ressource + occupation + nettoyage
roster/planif-assign-timeline
louispaulb
2026-06-05 15:50:17 -0400
d128adf152
Garde: 2 horaires par règle — semaine (soir 17h-minuit) vs fin de semaine (8h-minuit)
louispaulb
2026-06-04 22:33:07 -0400
42eac0101b
Garde: fix « 0 assignations » — rétrocompat des règles sans steps/anchor
louispaulb
2026-06-04 22:29:57 -0400
9e47e28e2b
Garde: moteur fiable — séquence d'étapes {tech, weeks} + semaine d'ancrage (parcours déterministe)
louispaulb
2026-06-04 22:15:50 -0400
9ec829fc6f
Planification: marquer une absence d'1 jour depuis la grille (touche A + menu)
louispaulb
2026-06-04 22:02:39 -0400
a60a9bee91
Garde: génération sur un HORIZON multi-semaines (évènement récurrent) au lieu d'une seule semaine
louispaulb
2026-06-04 21:58:15 -0400
8bd3047d96
Garde: presets Soirs de semaine/Fin de semaine (combinables) + rotation par semaine (défaut) + aperçu
louispaulb
2026-06-04 21:47:04 -0400
2e5ef6d001
Roster publish: diff au lieu de wipe+recreate → publication quasi instantanée
louispaulb
2026-06-04 21:20:03 -0400
ca82cfed9f
Garde: la rotation avance par jour de garde (la séquence continue sur les jours affichés)
louispaulb
2026-06-04 21:17:25 -0400