Commit Graph

  • 17e85d88a9 feat(dispatch-agent): lecteur check_service — diagnostic à distance (modem/signal) avant un déplacement feat/dispatch-legacy-writeback louispaulb 2026-07-19 21:17:49 -0400
  • 0372176fc8 feat(assistant): vrai CHAT multi-tours — on peut répondre aux questions de l'assistant louispaulb 2026-07-19 21:07:55 -0400
  • 54fdc22c97 feat(dispatch-agent): lecteur resource_availability — « a-t-on la ressource ? » avant de proposer louispaulb 2026-07-19 20:59:49 -0400
  • 2b5c1c6d07 fix(skill-resolver): diagnostic/panne → réparation (plus « fibre » forcé en installation) louispaulb 2026-07-19 20:57:16 -0400
  • f97152c831 feat(dispatch-agent): diagnostic interactif (raison→compétence→dispo) + adresse libre avant de créer louispaulb 2026-07-19 20:41:42 -0400
  • 6022cdf5fb fix(dispatch): nextJobRef lisait r.data (objet) au lieu de r.data.data → collisions ticket_id → « Failed to create dispatch job » louispaulb 2026-07-19 20:36:50 -0400
  • c4c4cc6575 feat(ops): « Allouer un technicien » = chat IA (Gemini) avec typeahead client/adresse louispaulb 2026-07-19 20:30:48 -0400
  • 788d969090 chore(reconcile): commit MES hunks déployés dans les fichiers co-édités (split via git apply --cached) louispaulb 2026-07-19 20:06:47 -0400
  • 60f6d71615 chore(ops): commit ThemeEditor.vue (extrait de l'ex-page /theme, consolidé dans Paramètres) louispaulb 2026-07-19 20:00:39 -0400
  • 4718d025f3 improve(ops): accueil = tableau VIVANT — rafraîchit les compteurs (60 s + retour d'onglet) louispaulb 2026-07-19 19:56:16 -0400
  • 7371c1b446 improve(booking): /book libre-service — modifier ou annuler un RDV confirmé louispaulb 2026-07-19 17:04:14 -0400
  • 81af69e68c improve(booking): SMS de confirmation transactionnel quand le client réserve via /book louispaulb 2026-07-19 16:41:12 -0400
  • 6b9f7b41fa improve(booking): confirmation /book → « Ajouter à mon calendrier » (.ics universel) louispaulb 2026-07-19 16:38:08 -0400
  • f8af4235fb improve(ops): accueil — détecte les ARRIVÉES EN RETARD sur les interventions du jour louispaulb 2026-07-19 16:34:28 -0400
  • 0d80c323f0 improve(ops): accueil — chiffres HONNÊTES depuis les vraies sources (pas de proxy trompeur) louispaulb 2026-07-19 16:04:57 -0400
  • 23f0f72731 feat(ops): « / » = accueil universel adapté au rôle (step 3/3) + consolidation Thème/Équipe→Paramètres louispaulb 2026-07-19 15:35:33 -0400
  • 99f44daf31 feat(booking): page /book « jamais bloquée » — repli disponibilités libres quand aucun créneau louispaulb 2026-07-19 15:29:18 -0400
  • e7b94947cf feat(dispatch): « Proposer au client » directement dans le flux Dispo par motif (in-ticket/conversation) louispaulb 2026-07-19 15:25:37 -0400
  • dbbcd721e4 feat(ops): accueil « Mon aujourd'hui » v2 — chiffres exacts + état terrain live + actions réelles louispaulb 2026-07-19 15:10:07 -0400
  • 386e36f863 feat(ops): accueil « Mon aujourd'hui » adapté au rôle en tête du tableau de bord louispaulb 2026-07-19 14:58:33 -0400
  • b99cbdd6cd feat(dispatch): NL « Proposer un RDV au client » (agent→client, sur staff-agent déployé) louispaulb 2026-07-19 14:51:51 -0400
  • 21d6538e33 feat(booking): page client Gigafibre à 2 modes (choisir un créneau / proposer 3 dispos) louispaulb 2026-07-19 14:40:13 -0400
  • 1fc0e903eb feat(booking): endpoints publics Option A (choisir un créneau proposé) louispaulb 2026-07-19 14:34:00 -0400
  • 777794cd28 fix(booking): garde anti-clobber F sur les confirmations de RDV + hold exclusif 5 min louispaulb 2026-07-19 14:30:40 -0400
  • 89f7efc4ba fix(realtime): l'app terrain et le panneau pannes SURVIVENT aux redéploiements du hub louispaulb 2026-07-19 12:26:37 -0400
  • 187115cb56 fix(realtime): les mises à jour live SURVIVENT aux redéploiements du hub (reconnexion + resync SSE) louispaulb 2026-07-19 12:19:43 -0400
  • daeb86008b chore(ops): supprime le sous-système dispatch MORT (23 fichiers, 0 importeur) louispaulb 2026-07-19 10:32:18 -0400
  • da9c918fa9 feat(ux): gate ONU device actions + delete behind manage_settings, own block louispaulb 2026-07-19 10:30:45 -0400
  • c1a240023b feat(field-app): refonte accessibilité terrain (gros texte/contraste/cibles + flux guidé) louispaulb 2026-07-19 10:23:19 -0400
  • 5dd38eb79b feat(gps): vue « appareil GPS → technicien » (assignation inverse) + non-associés louispaulb 2026-07-19 08:42:32 -0400
  • 48faeba72b fix(dispatch): coords job EXACTES (fibre par service) + hardening distances auto-dispatch louispaulb 2026-07-19 08:36:08 -0400
  • 16da087e18 fix(geofence): arrivées manquées — passe TRACE rétrospective + dwell persisté + rayon 250m louispaulb 2026-07-19 08:17:31 -0400
  • 9cb9739d3f feat(maps): zéro Mapbox (app terrain → MapLibre/OSM) + meilleur trajet trafic louispaulb 2026-07-19 08:01:00 -0400
  • 218bef8c5a refactor(olt-ops): dédup plomberie n8n + effets pilotés par le spec ACTIONS louispaulb 2026-07-19 07:38:48 -0400
  • 23dde4ecf0 feat(ops): native Payment Method/Arrangement + VoIP Line sections + G3 Raisecom SNMP writes louispaulb 2026-07-18 22:39:59 -0400
  • 3d4700decf feat(ops): native Dispatch Job/Communication detail + ONU write parity (Phase 1-2) louispaulb 2026-07-18 22:04:19 -0400
  • cd25fa2504 fix(dispatch): double-assign F + médias terrain dans le ticket + deep links natifs louispaulb 2026-07-18 18:02:37 -0400
  • ef7b51399d refactor(planif): « Bloquer du temps » = UN job/ticket qui occupe la timeline, priorité = curseur dur/souple louispaulb 2026-07-16 18:38:17 -0400
  • ba6967adc6 refactor(planif): fusion « Réserver du temps » + « Bloquer / job générique » en UN dialogue louispaulb 2026-07-16 14:52:12 -0400
  • 9c1b578d5d feat(dispatch): provisioning identites enrichi Employee+Authentik (multi-courriels) louispaulb 2026-07-16 14:50:23 -0400
  • e8fd69c6f8 feat(planif): pause indéfinie STAGÉE → visible tout de suite, commise au Publier (retire quarts futurs + relève jobs) louispaulb 2026-07-16 13:33:08 -0400
  • e98b21ba0a feat(dispatch): provisioning identites depuis legacy staff (convergence ledger) louispaulb 2026-07-16 13:23:23 -0400
  • 60da7a01da feat(dispatch): tech-history resolue via identite canonique (dynamique) louispaulb 2026-07-16 13:14:30 -0400
  • 947595f086 feat(planif): résumé de Publier complet + groupé par technicien louispaulb 2026-07-16 13:06:05 -0400
  • 9d568986fc fix(planif): afficher les congés en attente dans le résumé de Publier louispaulb 2026-07-16 12:29:31 -0400
  • 6761c9e05a feat(dispatch): ledger historique d assignation par tech (ops_tech_ticket_history) louispaulb 2026-07-16 11:58:03 -0400
  • e43f04d3e5 feat(dispatch): write-back unifie Publier vers F + tickets perimes natifs louispaulb 2026-07-16 10:49:28 -0400
  • 956e96b8bc chore(hub): sync repo with deployed hub state (uncommitted prod work) louispaulb 2026-07-16 10:49:17 -0400
  • e0e1da1c01 fix(dispatch): lever le cap 50 sur les techniciens (occupation + charge) louispaulb 2026-07-15 07:19:15 -0400
  • c7c9f81364 fix(planif): Suggérer = jobs DUS le jour sélectionné · jour partagé entre vues (session) · quarts brouillon reflétés au calendrier mois louispaulb 2026-07-14 22:17:12 -0400
  • 48edede793 refactor(planif): désencombrer l'en-tête selon UX_REFACTORING_PROMPT (PL1/PL2/PL4/PL5/PL6) louispaulb 2026-07-14 20:56:34 -0400
  • 8e7838d1fb docs: prompt réutilisable de refactor UX (UX_REFACTORING_PROMPT.md) louispaulb 2026-07-14 19:27:51 -0400
  • 718698f0d0 feat(ops): gate ticket activation on pending subs + show consolidated proration preview louispaulb 2026-07-10 16:24:27 -0400
  • e1d3212bf7 feat(ops): ticket Statut control (Complété/Annulé) + sale activation → draft invoice louispaulb 2026-07-10 15:04:08 -0400
  • 28a5789fe0 fix(ops): tickets list returned 0 — Issue query used fields ERPNext v16 rejects louispaulb 2026-07-10 14:39:07 -0400
  • e8dc86e058 feat(ops): one-click identity linking (Authentik ↔ Employee ↔ Tech), merge-safe louispaulb 2026-07-10 14:27:30 -0400
  • 6826f11587 fix(ops): dedupe removes inactive duplicate accounts, not just never-logged-in louispaulb 2026-07-10 14:16:10 -0400
  • d0f899cf6d feat(ops): staff console — surface dup accounts + per-user schedule deep-link louispaulb 2026-07-10 13:44:56 -0400
  • 11c53c956a feat(ops): staff console — one-click dedupe of duplicate Authentik accounts louispaulb 2026-07-10 13:33:22 -0400
  • 148cb9a320 fix(ops): staff recon — alias-aware employee, dedupe Authentik accounts, link-not-duplicate louispaulb 2026-07-10 13:20:09 -0400
  • b43f092da3 feat(ops): staff reconciliation console (Authentik ↔ System User/Employee/Tech) louispaulb 2026-07-10 13:01:33 -0400
  • dec8321823 feat(ops): unified staff identity (label + email aliases + tech link + departed flag) louispaulb 2026-07-10 12:22:48 -0400
  • 14530787bb consolidate uncommitted multi-session work (NL staff-agent, user avatars/profil, HelpHint, ticket detail modules, skill icons, hub agent/payments/sync) louispaulb 2026-07-09 20:43:50 -0400
  • cfcd7c04cc feat(ops/planif): add JobPool + useJobPool + RouteMap route/explode louispaulb 2026-07-09 20:30:36 -0400
  • 9c49054b8d feat(ops): quick filler job from cell menu (blocks tech from dispatch) louispaulb 2026-07-09 19:58:18 -0400
  • 9145624949 feat(ops): unify tech skill/cadence editor + merge team tools louispaulb 2026-07-09 14:57:01 -0400
  • 04fb52426f fix(ops): slot finder respects untimed load (humanly possible) louispaulb 2026-07-09 14:43:21 -0400
  • 7df6ad30e3 fix(ops): accurate occupancy denominator + editable skills + support filter louispaulb 2026-07-09 14:27:23 -0400
  • 1552df3984 Campaign detail: fix customer link pointing to ERPNext instead of Ops louispaulb 2026-07-09 13:57:54 -0400
  • 2a9f201826 Events: personal rsvp_url per-language, address field, logo spacing louispaulb 2026-07-09 13:26:45 -0400
  • cab1a9c94a Events: wire mass-send button + confirmation dialog into the UI louispaulb 2026-07-09 12:41:34 -0400
  • 929ef73d93 Events: real mass send (campaign-integrated) + white email header bar louispaulb 2026-07-09 12:39:50 -0400
  • 3489576212 Planif: congés publish-required, menu de cellule partagé, vue Mois louispaulb 2026-07-09 11:32:54 -0400
  • 0853947c43 Events: remove RSVP customer-number field; fuzzy multi-field name audience filter louispaulb 2026-07-09 11:26:59 -0400
  • d26722f048 Events: editable (Unlayer) email template, "Tous" includes résiliés, realtime picker louispaulb 2026-07-09 11:05:31 -0400
  • 3aa59adec3 Events: creation, capacity cap, language-tagged attachments, additive audience list louispaulb 2026-07-09 10:10:43 -0400
  • 893ac8cd4a Déclutter: primitives réutilisables + palette ⌘K + Planif épurée louispaulb 2026-07-09 06:53:24 -0400
  • f4a6d07a8b feat(ops): reason → skill → skill-aware availability module louispaulb 2026-07-08 18:33:30 -0400
  • 6bf323b18e fix(ops): champ d'assignation — échelle d'implication + bascules « moi » + fix lecture équipe louispaulb 2026-07-08 17:40:36 -0400
  • 2f81cff892 feat(ops): champ d'assignation MULTIFONCTION (À / CC / #) partagé louispaulb 2026-07-08 16:49:57 -0400
  • d15dec5e6c infra: deploy.sh renders ops nginx.conf from versioned template w/ server-side token injection louispaulb 2026-07-08 15:59:48 -0400
  • 844eff9a49 fix: capacité réelle (hors congé/pause/archivé), archive via store hub, calendrier horaire tech louispaulb 2026-07-08 14:46:21 -0400
  • d7412fcced #27 Standardise ticket-detail rendering (status / tags / row component) louispaulb 2026-07-08 14:31:39 -0400
  • 6224271e07 ticket : afficher le technicien assigné EN TÊTE du panneau détail (IssueDetail) louispaulb 2026-07-08 13:53:21 -0400
  • 13039be301 feat: suivi généralisé, occupation ressources, horaire tech, revert journal louispaulb 2026-07-08 12:40:22 -0400
  • 77343d0a98 planif : chip Cc (assistant) affiche les initiales en pastille louispaulb 2026-07-08 10:25:48 -0400
  • 915a898c04 planif : assignation ticket façon courriel To/Cc + décodage entités à la source du pool louispaulb 2026-07-08 00:13:21 -0400
  • 92ed0a0734 planif (feuille job) : décode les entités HTML de l'en-tête (sujet · client · adresse) louispaulb 2026-07-07 23:50:42 -0400
  • 23e3c0d2e2 planif (feuille job mobile) : commentaire interne par défaut — plus de courriel client accidentel louispaulb 2026-07-07 23:43:53 -0400
  • d8325f7e55 planif (vue semaine) : retire le faux avertissement 72h + élargit la colonne tech louispaulb 2026-07-07 22:33:17 -0400
  • 2396c10f14 planif : extraction #4/3 — dialogue Types de shift → components/planif/ShiftTypesDialog.vue louispaulb 2026-07-07 22:20:45 -0400
  • 4bed6bb9fd planif : extraction #4/2 — dialogue Synchroniser les techniciens → components/planif/TechSyncDialog.vue louispaulb 2026-07-07 22:02:10 -0400
  • 659cfae12c planif : extraction #4/1 — dialogue Congés & disponibilités → components/planif/LeaveDialog.vue louispaulb 2026-07-07 21:45:22 -0400
  • 675e1b0bdd ops : types de job = source unique (config/job-types) louispaulb 2026-07-07 21:27:32 -0400
  • 987ae98bfc planif : éditeurs de compétences unifiés sur TagEditor (fin de SkillSelect) louispaulb 2026-07-07 21:06:15 -0400
  • 7ca3ceef66 ops : priorités 3 niveaux (source unique) + compétences multi + création unifiée + planif louispaulb 2026-07-07 20:46:57 -0400
  • 4870cec09b hub+solveur : compétences multi par job + réservation + matérialisation quarts + app terrain natif louispaulb 2026-07-07 20:46:42 -0400
  • eb8376c9c3 app terrain : commentaire NATIF (reste sur OPS) au lieu du renvoi vers store.targo.ca louispaulb 2026-07-07 14:16:24 -0400
  • 0ba789a5c0 planif Notifier : toggles SMS/courriel PAR TECH (SMS préféré) + édition inline du contact louispaulb 2026-07-07 14:04:11 -0400
  • d6db1a5fa4 planif: contrôle Statut/Reporter aussi sur le panneau job (3 vues couvertes) louispaulb 2026-07-07 13:57:41 -0400