← Roadmap publique

ROADMAP

Hub Client AWM V1.14.44Snapshot sécurisé de la version effectivement publiée. Les lignes potentiellement sensibles sont masquées automatiquement.
# Hub Client AWM 1.14.44

Suite AWM 4.5.470 — Identité de l’en-tête client · 22 octobre 2026.

Hub Client 1.14.44 affiche le logo client seul dans le bloc de marque; à défaut, favicon et noms de compagnie/utilisateur; à défaut, logo AWM et ces noms. Les images défaillantes passent au repli suivant. Le rendu garde proportions, accessibilité et largeur mobile, sans changer les préférences d’apparence.

Les contrôles exécutés et leurs limites figurent dans VALIDATION-SUITE-AWM-4.5.470.md. Les vérifications locales du code et du navigateur ne constituent pas une installation WordPress ni une validation sur le site de production.

## Futur examiné

Trois nouvelles pistes sont différées : provenance du visuel, lisibilité du logo sur les deux fonds et comparaison des icônes à leur taille réelle. Les propositions précédentes restent tracées; aucun nouvel outil de génération ou de retouche de marque n’est livré dans cette correction.

---

# Hub Client AWM 1.14.43

Suite AWM 4.5.469 — Aperçu avant enregistrement · 22 octobre 2026.

Deux démonstrations clair/sombre réagissent immédiatement aux choix du formulaire avec le CSS réel du portail : carte, H1/H2/H3, texte, boutons, champ, badge et indicateur. Neutral propose les détails de cinq rôles, les polices détectées ou en bibliothèque et les poids contrôlés 100..900; les recettes nommées restent complètes. Les modifications restent locales jusqu’à Enregistrer les deux profils; la bascule du haut conserve son comportement.

Les contrôles exécutés et leurs limites figurent dans VALIDATION-SUITE-AWM-4.5.469.md. Les essais utilisent le code PHP/CSS/JavaScript réel avec services WordPress substitués; ils ne valent pas installation ou validation sur le site de production.

## Futur examiné

Les trois nouvelles pistes de la revue 469 sont différées. Les autres propositions et leur historique restent ci-dessous; la démonstration locale du formulaire Apparence est désormais livrée, sans préjuger d’une prévisualisation de tous les écrans métier.

---

## 1.14.42 — 2026-10-22

Suite AWM 4.5.468 — Bascule clair/sombre et profils distincts.

Le bouton ◐ connecté est de nouveau une vraie bascule : changement immédiat, enregistrement authentifié du mode seul, retour visible en cas d’erreur et formulaire de repli sans JavaScript. Apparence présente Paramètres clairs et Paramètres sombres, chacun avec les six axes du catalogue et cinq couleurs de surface. Les polices Neutral, leurs graisses et la couleur secondaire sont explicitement communes. Les éditions en cours restent intactes pendant une bascule.

Les contrôles exécutés et leurs limites figurent dans VALIDATION-SUITE-AWM-4.5.468.md. Aucune installation ni publication de cette version sur l’hébergement n’est présumée.

---

## Livraison 1.14.41 — Suite 4.5.466

Le formulaire existant propose Automatique · logo puis site, Toujours sombre et Toujours clair. Son aide explique la mémorisation du choix et sa priorité sur l’analyse automatique. Les contrôles de persistance utilisent le vrai formulaire, le handler du portail et le callback Core, avec transport et stockage de test. Le choix du portail reste indépendant du mode administratif.

## Validation et portée

Cette version fait partie de Suite AWM 4.5.466. Les preuves détaillées sont dans `PREUVES-VALIDATION-SUITE-AWM-4.5.466.json` et le rapport `VALIDATION-SUITE-AWM-4.5.466.md` de la Suite. Elles couvrent le rendu PHP et Chromium, les modes opposés, les bascules, les identités distinctes et la persistance du choix du portail. Les tests s’exécutent localement avec données et services WordPress substitués; ils ne constituent pas une installation sur le site de production.

Les préférences client ne sont pas modifiées par l’ouverture d’une carte ou d’une fiche administrative, ni par une bascule Core. Les anciennes notes ci-dessous restent historiques : pour cette livraison, les cartes et fiches administratives utilisent la variante Core, tandis que Hub Client conserve son choix indépendant.

---

## Revue 1.14.40 — 2026-10-22 · Suite 4.5.464

### Maintenant

Consommer l’apparence du profil client, automatique depuis logo/site ou choisie manuellement, indépendamment du mode administratif Core. Préserver la personnalisation et son retour volontaire à l’automatique, avec le même profil et le même catalogue partagés par Hub et CRM.

Les réglages de densité existants **Compact, Standard et Confortable** sont réellement appliqués au portail et à la fiche CRM. Les anciennes valeurs fixes du `body` du portail et des alias CRM ne masquent plus les tokens partagés : `--hub-gap`, `--hub-panel-pad`, `--hub-control-height` et `--hub-cell-padding`. Espacement, panneaux, hauteur des champs et cellules de tableau suivent le profil choisi. Le catalogue et les autres axes restent inchangés.

La précision finale porte sur les six choix existants : Style, Couleur, Typographie, Surface, Mouvement et Densité. En automatique, Hub rapproche chaque indice exploitable du CSS du site des options du catalogue. Neutral, Auto, Subtle et Standard sont les replis respectifs de typographie, surface, mouvement et densité lorsqu’aucun indice exploitable n’existe, notamment pour un logo seul. Les choix manuels restent prioritaires.

### Futur

L’aperçu en direct et l’historique des personnalisations restent différés. La revue des dix modules ajoute cinq propositions distinctes : verrouillage sélectif des axes lors d’une réanalyse, veille des changements d’identité avant adoption, zone utile du logo, simulation de perception des couleurs et création de styles depuis une URL dans Design System & QA de Core. Ces propositions ne sont pas mises en œuvre par cette livraison.


## Livré 1.14.39 — 2026-10-21
- [x] L écran Apparence consomme le catalogue Design Composer reçu de Core/Hub AWM au lieu de maintenir un catalogue figé.
- [x] Le client voit la source de son thème recommandé et peut personnaliser famille, couleur, typographie, surface, mouvement et densité.
- [x] Le bouton de réinitialisation devient `Revenir au thème automatique · logo -> site -> AWM`.
- [x] Les tokens compilés par Core sont prioritaires pour géométrie, typographie, surfaces, mouvement et rythme du portail.
- [x] Le même profil visuel est appliqué aux vues Accueil, CRM, Stats, LeadTracker/CallTracker, Soutien, Assistant et futurs services compatibles rendus dans le portail.
- [x] `prefers-reduced-motion` reste prioritaire.

## 1.14.38 - Surface & Mouvement v2
- [x] 12 surfaces portail.
- [x] 12 mouvements portail.
- [x] Styles Studio page-scoped alignés.
- [x] reduced-motion prioritaire.
- [ ] Futur : aperçu temps réel du profil client depuis Hub AWM.

## 1.14.37 - Design Composer Studio
- [x] Recevoir et nettoyer profil/tokens Studio.
- [x] Appliquer les tokens à la page sans dépendre du CSS administratif Core.
- [x] Conserver reduced-motion et métadonnées de design pour audit.
- [ ] Workflow explicite pour publier le profil dans Elementor Globals avec preview, sauvegarde et rollback.

## 1.14.35
- Contrat Design dynamique par client.
- Futur : comparaison de themes avant publication et suggestions automatiques de famille a partir de l identite du site.

## Maintenant - 1.14.34
- Identity Mapping v2 aligne avec LeadTracker 1.11.75.
- Confirmer sur le prochain vrai lead que le nom du prospect reste correct dans Capturia.
- Ne pas rejouer les anciens leads et ne pas lancer de formulaire test artificiel.

## 2026-10-18 - Hub Client AWM 1.14.33 - mappings de campagne actifs auto-appliqués

- Hub Client ne dépend plus d’un clic administrateur pour appliquer les mappings d’une campagne active.
- Un worker local actualise les campagnes/mappings Alliance toutes les cinq minutes et remplace automatiquement les associations gérées par Alliance; une campagne mise en pause disparaît donc du routage géré lors de la prochaine synchronisation.
- Chaque vraie soumission Elementor, Gravity Forms, Contact Form 7 ou hook AWM force en plus une lecture fraîche de `forms/campaigns` avant de résoudre la route. Une campagne activée ou modifiée quelques secondes auparavant ne peut plus être masquée par le cache de cinq minutes.
- Les mappings explicites restent prioritaires et VMV-NAT conserve son fallback `capturia_auto_all_forms`.
- Aucune soumission historique n’est rejouée par ce worker; il ne fait que synchroniser la configuration de routage.

# 2026-10-18 - Hub Client AWM 1.14.32 - complément données Capturia sans doublon

- [x] Respecter la propriété centrale `central_owned` renvoyée par LeadTracker.
- [x] Ne jamais recréer un contact déjà créé par LeadTracker.
- [x] En mode confidentialité, ajouter seulement les notes complètes au contact central exact.
- [x] Mettre à jour le même reçu technique grâce au `local_ref`.
- [ ] Validation terrain au prochain vrai lead VMV-NAT.

# 2026-10-16 - Hub Client 1.14.31 - Capturia immédiat sur le lead exact

- [x] Traiter le `local_ref` exact du nouveau formulaire au lieu de la plus ancienne ligne de la file.
- [x] Publier une preuve `pending` PII-free dès que le formulaire central LeadTracker existe.
- [x] Envoyer toutes les notes Capturia dans la même capture normale, sans délai artificiel.
- [x] Conserver les reprises uniquement pour HTTP 429, panne sûre avant mutation ou résultat réseau incertain.
- [x] Conserver l'idempotence et l'interdiction de rejouer aveuglément une réponse incertaine.
- [ ] Valider sur le prochain vrai lead client, sans formulaire test artificiel : la ligne doit afficher `Confirmé · Contact ✓ · Google ✓ · Données ✓` avec ID contact et preuve API.
- [ ] Synchroniser la roadmap publique après validation terrain.

## 2026-10-16 - Hub Client 1.14.30 / Suite AWM 4.5.420 - Capturia déclenché par la réponse autoritaire du lead

- Corrige le défaut terrain persistant où un lead VMV-NAT entrait dans LeadTracker mais restait `Sans preuve` sans jamais atteindre la file Capturia.
- Le flux ne dépend plus d'une seconde lecture de `forms/campaigns` après la capture. LeadTracker retourne avec `forms/submit` une instruction PII-free pour la campagne exacte; Hub Client l'utilise immédiatement.
- Séquence normale : miroir local chiffré → `forms/submit` → instruction Capturia autoritaire → file idempotente locale → création contact → étiquette Google → données → reçu technique LeadTracker, dans le même traitement.
- Si la clé, les scopes, l'étiquette ou le Connector empêchent l'envoi, la ligne locale passe en reprise contrôlée et une preuve technique peut remonter; elle ne doit plus rester silencieusement `Sans preuve`.
- Le cron n'est qu'un secours. Aucun des historiques 563 n'est rejoué et une réponse réseau incertaine n'est jamais renvoyée aveuglément.

## 2026-10-16 - 1.14.29 / Suite AWM 4.5.419 - Capturia immédiat sans relecture de cache au verrou final

- Corrige le défaut terrain de 1.14.28 : `on_form_captured()` lisait bien VMV-NAT en mode frais, mais `enabled()` puis `process_queue()` pouvaient relire aussitôt le cache précédent et interrompre l'envoi.
- Le chemin de capture force désormais le contrat frais de bout en bout (`target(true)`, `enabled(true)`, `process_queue('capture')`) avant toute écriture Capturia.
- Tout nouveau formulaire VMV admissible est mis en file idempotente et traité immédiatement dans la même requête. Le cron reste uniquement une reprise contrôlée sur erreur/rate-limit.
- Les mappings explicites vers une autre campagne restent prioritaires; aucun historique n'est rejoué automatiquement et les réponses réseau incertaines restent non rejouées aveuglément.

## 2026-10-15 - 1.14.26 / Suite AWM 4.5.415 - VMV-NAT Capturia automatique pour tous les formulaires

- Quand la destination Capturia est active sur VMV-NAT, tout formulaire capturé sur le WordPress principal de Vendre Maison Vite est automatiquement attribué à VMV-NAT et mis en file Capturia, sans exiger une sélection manuelle formulaire par formulaire.
- Une association explicite du formulaire à une autre campagne reste prioritaire : VMV-GADS, VMV-FADS, VMV-YT et toute autre campagne ne sont jamais déplacés silencieusement vers VMV-NAT.
- Elementor, Gravity Forms, Contact Form 7 et le hook générique Hub Client suivent le même contrat. Les moteurs futurs qui passent par le hook générique héritent automatiquement du routage.
- Le rattrapage récent 36 h est versionné à nouveau afin de mettre en file les captures VMV-NAT récentes sans livraison locale, sans rejouer les 563 historiques et sans dupliquer une ligne déjà livrée.
- Capturia reçoit toutes les données métier utiles du formulaire; la preuve renvoyée à Alliance reste strictement PII-free.

## 2026-10-15 - 1.14.25 / Suite AWM 4.5.413 - Capturia multi-formulaires et rattrapage recent cible

- Corrige le routeur Capturia VMV-NAT qui etait encore limite a `hub_client_elementor` dans 1.14.24. Les formulaires explicitement mappes Elementor, Gravity Forms et Contact Form 7 suivent maintenant le meme circuit Capturia.
- Chaque capture calcule un `submitted_at_utc` canonique. Gravity Forms `date_created` est interprete comme UTC; les autres sources historiques sont converties depuis le fuseau WordPress vers UTC.
- Le recu de preuve PII-free ajoute source, identifiant de formulaire, phase et curseur de notes afin que LeadTracker affiche les etapes de livraison.
- A la premiere synchronisation 1.14.25, un rattrapage borne aux 36 dernieres heures inspecte le miroir local chiffre, resoumet les formulaires au registre central avec leur identifiant stable, puis met en file Capturia uniquement les lignes qui n ont jamais eu de livraison locale.
- Ce rattrapage est idempotent, ne rejoue jamais le backfill historique des 563 lignes et ne cree pas une deuxieme ligne Capturia lorsqu une livraison locale existe deja.
- Aucun envoi fournisseur n est execute pendant l installation elle-meme; le worker reste asynchrone et respecte les pauses HTTP 429.

## 2026-10-15 - 1.14.24 / Suite AWM 4.5.410 - VMV-NAT : données CRM complètes et identité visible

- Capturia demeure le CRM du client Vendre Maison Vite : le contact reçoit le nom, le courriel et le téléphone structurés, puis **toutes les réponses utiles du formulaire Elementor** sont conservées dans une ou plusieurs notes Capturia.
- Les champs techniques sensibles (mot de passe, jeton, nonce, captcha, clé API, carte/CVV) sont volontairement exclus du transfert CRM.
- Si les réponses dépassent une note, Hub Client les découpe en notes idempotentes et reprend automatiquement après HTTP 429 sans perdre les parties déjà acceptées.
- Le transport `local_mirror_v1` transmet désormais à LeadTracker uniquement l identité opérationnelle minimale (nom, courriel, téléphone) afin que la liste affiche le vrai contact; le reste du formulaire demeure dans le miroir local chiffré et dans Capturia.
- La table de **preuve Capturia** reste strictement sans PII : identifiants techniques, statut, HTTP/request ID et horodatage seulement.
- Aucun envoi n est déclenché par l installation; le routage reste limité au site principal Vendre Maison Vite et à VMV-NAT.

## 2026-10-15 - 1.14.23 / Suite AWM 4.5.409 - Capturia : preuve de livraison des nouveaux formulaires

- Après l enregistrement central du formulaire, le Hub Client rattache l identifiant technique AWM à la file locale Capturia et renvoie à Alliance un reçu **sans PII** après chaque changement d état.
- Le reçu contient uniquement les identifiants techniques, l état, le code HTTP, l identifiant de requête et l horodatage; aucun nom, téléphone, courriel ni contenu de formulaire n est renvoyé pour cette preuve.
- Les nouveaux envois VMV-NAT respectent `Retry-After` / `RateLimit-Reset`, n utilisent plus une limite fixe de quatre essais sur HTTP 429 et ne traitent qu une ligne Capturia par passage afin de réduire les nouvelles limites API.
- Le prochain passage est replanifié automatiquement lorsqu une ligne reste à envoyer. Les clés d idempotence existantes sont conservées.
- AWM n appelle aucune fonction SMS/courriel Capturia. Les automatisations éventuellement configurées dans le compte Capturia restent hors du contrôle d AWM.
- Aucun formulaire n est envoyé à l installation; la route reste strictement limitée au site principal Vendre Maison Vite et à VMV-NAT.

## 2026-10-14 - 1.14.22 / Suite AWM 4.5.404 - CRM Clients

Registre local CRM multicanal avec transactions, charges nominatives chiffrees par Core, index tenant-scopes, endpoints prives et vue du portail CRM.

Candidate de migration additive : tests locaux, essai WordPress/MySQL et sites clients requis.
Aucun transfert a l'installation. Ne supprime ni sources historiques, ni audio Twilio.
Un seul lancement global depuis CRM AWM > CRM Clients - campagnes et leads.
Prealables : trousseau Core enrole et sauvegarde separement; Hub Client 1.14.22 sur sources et destination; autorisations techniques.
Le statut commercial et le statut des campagnes ne sont pas modifies. Capturia n'est jamais exige ni active pour les autres clients.

---

## Phase pilote — 1.14.21 / relais formulaires VMV-NAT vers Capturia
Réutilisation automatique de la clé chiffrée centrale, envoi idempotent vers contact + Google + note, journal local des états; sans SMS ni transfert automatique historique. Vérifier Capturia live, consentement du formulaire, arrêt si campagne/connexion désactivée, et voie de redémarrage après réponse ambiguë.

# Hub Client 1.14.20 — Correctif UTF-8 Studio / Elementor
- [x] Supprimer l'unslash double sur le JSON Elementor, y compris snapshots et relevés.
- [x] Détecter la corruption Unicode historique, empêcher la réécriture et la restauration d'un snapshot déjà corrompu.
- [x] Vérifier l'intégrité des widgets non ciblés, la lecture après sauvegarde et le retour arrière automatique en cas d'écart.
- [ ] Valider avec Elementor réel sur la page pilote de couture-electro.com après restauration d'une révision saine.
- [ ] Vérifier le rendu réel et l'intégralité des contenus historiques de la page endommagée.

# Hub Client AWM 1.14.19 — Protection des soumissions Elementor
- [x] Bloquer au hook validation **avant les courriels clients** et autres actions Elementor.
- [x] Ne pas remonter les formulaires rejetés vers LeadTracker ni le miroir CRM Client.
- [x] Détection locale graduée + preuves HMAC et piège invisible + limitation des répétitions.
- [x] Métriques et journal local sans coordonnées nominatives; coût sans API distante par lead.
- [x] Pilotage privé de l'état par le canal Tech AWM / site_id / instance_uuid.
- [x] Modes Surveillance, Standard, Strict et Désactivé.
- [ ] Test terrain formulaire Elementor Pro réel avec Email/Email2, webhook, Elementor Submissions et LeadTracker.
- [ ] Vérifier les formulaires dans popups, cache LiteSpeed et pages AMP / variantes de CDN.
- [ ] Ajouter ultérieurement des règles dédiées Gravity Forms et Contact Form 7 avec leurs hooks de pré-envoi respectifs.
- [ ] Statistiques temporelles 24 h / 7 jours et assistant de revue des faux positifs dans Tech AWM.

# Hub Client AWM 1.14.18 — CRM Client AWM
- [x] Miroir local chiffré des leads formulaires.
- [x] Module CRM Client AWM activable depuis les services du client.
- [x] Vue CRM locale dans `/hub/` sans wp-admin.
- [x] Enveloppe de confidentialité vers LeadTracker lorsque le CRM Client est actif.
- [x] Conserver la donnée locale si le centre est temporairement indisponible.
- [ ] Pipeline Kanban configurable.
- [ ] Contacts, opportunités, rendez-vous, ventes et revenus.
- [ ] Connecteurs CRM/API génériques avec mapping et synchronisation bidirectionnelle.
- [ ] Consentement explicite et journalisé pour tout partage identifiable au-delà du site client.

# Hub Client AWM 1.14.17 — Elementor exhaustif
- [x] Lever la limite des 180 derniers documents Elementor.
- [x] Rechercher les documents contenant réellement un widget Form avant parsing.
- [x] Repli via API Documents Elementor + `_elementor_data`.
- [x] Diagnostic de scan remonté à CallTracker.

## Hub Client AWM 1.14.16 — livré / validation terrain
- [x] Détection Contact Form 7.
- [x] Capture serveur-à-serveur des envois Contact Form 7.
- [x] Détection Elementor renforcée quand `form_id` est vide.
- [x] Inventaire immédiat utilisable par le bouton CallTracker « Synchroniser les formulaires ».

## Hub Client AWM 1.14.15 — livré / validation terrain
- [x] Retourner `form_inventory` dans `update/status`.
- [x] Conserver la détection locale Gravity Forms + Elementor Pro Forms.
- [x] Conserver le `home_url()` exact, chemin inclus.
- [ ] Valider la remontée immédiate depuis CallTracker sur les deux WordPress Soltech.

## Hub Client AWM 1.14.14 — inventaire formulaires
- Remonte à CallTracker les formulaires Gravity Forms et Elementor détectés sur ce WordPress via la synchronisation inventaire existante.


## Mise à jour 1.14.12 — 2026-10-01
- UX multi-formulaires par campagne et synchronisation Alliance/Hub Client simplifiée.
## Livré 1.14.11
- Double chemin de téléchargement paquet : streaming puis repli non streamé.
- Conserver Recovery au roadmap futur comme certification asynchrone non bloquante.

## Livré 1.14.10
- Mode flotte : Recovery différé, mises à jour Hub/Tech/modules non bloquées.
- Switch de réactivation conservé pour une future phase de certification Recovery.

## Futur
- Réactiver Recovery après stabilisation des 80+ sites, comme job asynchrone non bloquant.

## Livre 1.14.9
- [x] Certification Recovery automatique sur base partagee avec isolation stricte par prefixe WordPress.
- [x] Scope Recovery valide sur les tables du site plutot que sur toute la base MySQL.

## 1.14.8 — Recovery zero-clic
- [x] Accepter la preparation automatique auditee demandee par Core.
- [x] Conserver les controles objectifs base dediee + layout/Vault avant validation du scope.
- [x] Conserver le vrai test fichiers + SQL et le nettoyage sandbox obligatoires.
- [ ] Valider sur plusieurs topologies d hebergement avec l Autopilote actif.

# Mapping formulaires piloté par campagne — 1.14.5

**Livré :** Synchronise automatiquement les mappings Elementor/Gravity Forms définis dans CallTracker tout en conservant les mappings locaux manuels comme secours.

**Validation terrain :** confirmer le parcours sur un site pilote avant généralisation à toute la flotte.

# Hub Client AWM 1.14.4 - Gravity Forms + runtime classique unique
- [x] Hub Client normal = `wp-content/plugins/hub-client-awm`.
- [x] Gravity Forms natif: détection des formulaires, attribution par campagne et capture serveur-à-serveur.
- [x] Elementor Pro Forms reste compatible sans changement.
- [x] Installation de nouvelles extensions WordPress autorisee; seules les mises a jour/remplacements existants restent sous protection AWM.
- [x] Plus d auto-migration ni d auto-seed MU depuis Hub Client.
- [x] Preuve de sante simple: version + actif + `classic_mode` + `boot_ok`.
- [x] Commit v3 compatible avec une mise a jour Hub -> Hub sans MU permanent.
- [x] Nettoyage cible des anciens loader/runtime/config AWM MU apres confirmation du runtime classique.
- [x] Recovery reste obligatoire pour l Autopilote; le deploiement manuel conserve backup/rollback local.
- [ ] Valider la flotte complete puis retirer le code historique MU devenu inutile dans une version ulterieure.

- [x] Recovery 1.2.4 : fallback SQL sandbox dans la base courante pour les hebergements sans CREATE DATABASE.

## Livré 1.14.13
- Filtrage des mappings de formulaires par site WordPress exact, chemin inclus.

## 2026-10-21 — Design Composer v2
- Livré : typographie, surface et mouvement.
- Futur : iconographie contrôlée, prévisualisation multi-thèmes et score local de lisibilité.