← Roadmap publique

Contexte développement

Core AWM V4.5.214Snapshot sécurisé de la version effectivement publiée. Les lignes potentiellement sensibles sont masquées automatiquement.
# Contexte développement — Core AWM 4.5.214


---

## CHANGELOG.md

# Core AWM 4.5.214 — déploiement manuel Hub Client rétabli

- Corrige le blocage qui faisait échouer systématiquement les mises à jour distantes Hub Client/Tech depuis **Déployer** ou **Forcer sur la sélection**.
- Les clics administrateur explicites utilisent le canal signé Core → Hub Client et la sauvegarde/rollback fichiers locale déjà présente sur le site client.
- L'autopilote implicite reste suspendu tant que Recovery complet par site n'est pas validé.
- Le mode manuel est envoyé explicitement au Hub Client afin que les versions futures puissent distinguer un forçage administrateur d'une mise à jour automatique.
- Aucun assouplissement de signature HMAC, SHA-256, appairage, permissions ou validation de version.

## 4.5.213 - Grille flotte anti-chevauchement + etat autopilote exact - 2026-09-21
- Elargit la colonne Actions et reserve sa largeur reelle afin que Reparer / Voir / Deployer ne debordent plus sur Statut ou Mises a jour.
- Les actions passent en mini-grille interne et debordent vers la droite uniquement dans la zone de defilement locale si la largeur manque.
- Le tableau flotte conserve un minimum de largeur explicite de 1380 px avec scroll horizontal local.
- Corrige le libelle trompeur Autopilote flotte actif : l UI affiche maintenant Autopilote flotte suspendu tant que le moteur automatique reste volontairement desactive.
- Aucun changement de logique de deploiement, donnees, Connector, inventaire ou CallTracker.

## 4.5.212 - Alignement CSS flotte apres mise a jour - 2026-09-21

- Corrige le decalage des colonnes dans **Sites connectes** observe apres une mise a jour de flotte.
- La grille Hub Client / Tech AWM / Statut / Mises a jour / Actions utilise maintenant des largeurs explicites partagees par l entete et chaque ligne.
- Les badges et statuts sont tronques proprement au lieu de deborder dans la colonne suivante.
- La colonne Actions conserve une largeur fixe suffisante pour Repar­er / Voir / Deployer; si la fenetre est trop etroite, la zone de sites defile horizontalement au lieu de chevaucher les donnees.
- Aucun changement de logique de deploiement, Connector, inventaire, selection ou donnees.

## 4.5.211 - Selection flotte + correctif JS updater - 2026-09-21

- Corrige une regression JavaScript introduite avec le transport par blocs 4.5.210 : le helper `qs` est maintenant initialise avant le premier televersement, ce qui evite l arret du script de la page Mises a jour.
- Le bouton ambigu **Selection manuelle** devient **Tout selectionner / Tout deselectionner** et selectionne tous les sites actuellement visibles selon les filtres.
- Ajoute une case maitre dans l entete de la liste Sites connectes, avec etat coche/partiel synchronise en temps reel.
- Les compteurs de selection restent coherents apres recherche, filtre Principal/Secondaire ou filtre de statut.
- Aucun changement aux Connectors, versions Hub Client/Tech, secrets ou logique de deploiement distant.

## 4.5.210 - Televersement par blocs sous ModSecurity - 2026-09-21

- Corrige le HTTP 500 observe sur `admin-post.php` lorsque ModSecurity refuse un corps multipart superieur a 13 107 200 octets.
- Les ZIP de module et de Suite sont maintenant televerses depuis **Core AWM -> Mises a jour** en blocs de 4 Mo via `admin-ajax.php`, puis assembles dans le dossier temporaire prive avant validation.
- Le formulaire final n envoie plus le gros fichier multipart : il transmet uniquement un jeton temporaire lie a l utilisateur connecte.
- Chaque session de televersement est protegee par nonce, permission Core admin, jeton aleatoire, taille attendue, nombre de blocs, SHA-256 final et purge automatique apres deux heures.
- Les limites metier restent 128 Mo par module et 256 Mo par Suite; le validateur AWM existant reste l autorite finale sur le nom, la version, la structure, README, CHANGELOG, ROADMAP et SHA-256.
- Le mode local 4.5.209 reste conserve : import/depot sans checkpoint Recovery synchrone, backup fichiers avant remplacement local et rollback automatique en cas d echec.
- Recovery fichiers + BD reste separe jusqu au moteur asynchrone afin qu un timeout navigateur ne bloque plus les livraisons.

## 4.5.209 - Mise a jour tableau de bord reparee - 2026-09-21

- L import d un module ou d une Suite dans le depot Core ne lance plus un checkpoint Recovery synchrone : ces actions ne modifient pas le plugin actif.
- Le bouton **Mettre a jour Alliance** utilise le backup local existant de chaque dossier module avant remplacement et conserve le rollback automatique en cas d echec.
- Le garde WordPress autorise uniquement cette transaction locale initiee par Core; les installations AWM hors Core restent bloquees.
- Le chemin fonctionne pour un module seul comme pour les modules d une Suite publiee.
- Recovery fichiers + BD reste separe et suspendu pour les mises a jour locales tant que son traitement asynchrone n est pas livre.
- Le tableau Mises a jour affiche explicitement ce mode pour ne pas faire croire a une preuve de restauration BD.

## 4.5.203 - Secours et points de restauration obligatoires - 2026-09-12

- Isolation des callbacks Health et protection du calcul global contre Throwable; une source defectueuse devient indisponible sans diagnostic invente.
- Nouveau panneau Core > Restauration; moteur CLI externe avec points chiffres fichiers + base, journal hors DB, verification et confirmation explicite.
- Les imports/publications et deploiements locaux exigent une configuration privee et un test de restauration SQL/fichiers sur l'hebergement.
- Autopilote AWM, distribution/deploiements distants et anciennes restaurations fichiers seules sont suspendus. Suite 4.5.231, Core 4.5.202 et CRM 1.6.28 sont bloques comme cibles.
- Depot prive preserve : purge et migration destructive suspendues, nouveaux noms de paquets uniques. Les copies hors serveur du depot externe restent a configurer chez l'hebergeur.
- Aucun rollback DB automatique. Les huit autres modules ne sont pas reconstruits. Lire le guide de secours pour le premier amorcage Core/CRM par SFTP.
- Tests locaux : code reel AWM avec fonctions WordPress doubles, vraie restauration des fichiers et vrai chiffrement; SQL et bootstrap WordPress simules. Validation hebergeur requise.

## 4.5.202 — Pulse v2 et première couche Health AWM — 2026-09-12

- Le contrat Pulse accepte maintenant un score /100, un état de fraîcheur et des raisons courtes, tous assainis par Core.
- Health AWM calcule un score Suite explicable et conserve au maximum 48 instantanés espacés d au moins 30 minutes.
- Aucune note Health ne déclenche une action distante; la règle AWM-HEALTH-PULSE-001 l impose dans la mémoire de développement.

## 4.5.201 — Pulse opérationnel transversal — 2026-09-12

- Ajoute le contrat transversal `awm_core_module_pulses` et son rendu dans Santé du système.
- Agrège un pulse explicite pour les 10 modules AWM, dont l état de flotte Hub Client reçu par `fleet_state`.
- Ajoute la règle mémoire AWM-MODULE-PULSE-001 : données compactes, lecture seule, sans secrets ni contenu client brut.

# Core AWM 4.5.200 — publication Suite 4.5.229 / Tech 1.7.32

- **Livré** : registre public aligné sur Tech AWM 1.7.32 et Suite AWM 4.5.229.
- **Livré** : règle `AWM-TECH-OPS-PREFLIGHT-001` pour le préflight Connector / permissions / OPcache, la tournée groupée client + site et la capacité par responsable sans automatisation cachée.
- **Livré** : roadmap publique, changelog, notes et validation/logs synchronisés avant publication.
- **Sécurité** : aucune donnée sensible, chemin serveur, secret Connector ou clé API n est ajoutée au préflight public.

# Core AWM 4.5.199 — publication Suite 4.5.228 / Tech 1.7.31

- Registre public aligné sur Tech AWM 1.7.31 et Suite AWM 4.5.228.
- Nouvelle règle `AWM-TECH-OPS-PRIORITY-001` : la priorité opérationnelle doit rester explicable, ne remplace jamais la criticité brute et les actions suggérées ne doivent pas exécuter de changement sensible sans validation.
- Roadmap publique, changelog, notes et validation/logs synchronisés avant publication.

# Core AWM 4.5.198 — publication Suite 4.5.227 / Tech 1.7.30

- **Livré** : registre public aligné sur Tech AWM 1.7.30 et Suite AWM 4.5.227.
- **Livré** : règle de développement `AWM-TECH-OPS-ACCEL-001` pour les lots accélérés, sondes prioritaires sans hausse du batch, filtres client/site et observabilité fournisseur sans secrets.
- **Livré** : roadmap publique, logs et documentation de livraison restent obligatoires et synchronisés.

## Core AWM 4.5.197 — publication 4.5.226 / Tech 1.7.29

- Registre public aligné sur **Suite AWM 4.5.226** et **Tech AWM 1.7.29** sans rétrogradation des autres modules.
- La roadmap publique documente le diagnostic Wordfence Intelligence V3 non bloquant et la distinction obligatoire entre clé **Account > Integrations** et licence du plugin Wordfence.
- La mémoire de développement ajoute **AWM-TECH-SECURITY-001** : une erreur de fournisseur externe ne doit pas masquer l interface Tech et doit fournir diagnostic + action de correction sans exposer les secrets.
- ROADMAP, CHANGELOG, notes et validation/logs restent obligatoires avant le ZIP final.

## Core AWM 4.5.196 — publication 4.5.225 / Tech 1.7.28

- Registre public aligné sur **Suite AWM 4.5.225** et **Tech AWM 1.7.28** sans rétrogradation des autres modules.
- La roadmap publique documente les alertes/priorités entièrement cliquables, la typographie propagée aux overlays Tech et la personnalisation indépendante du Mode moniteur.
- La mémoire de développement ajoute la règle **AWM-TECH-DASH-006** pour imposer ces comportements dans les prochaines itérations.
- La gouvernance de livraison ajoute **AWM-RELEASE-LOG-001** : ROADMAP, CHANGELOG, notes de livraison et validation/logs doivent être synchronisés avant toute remise de ZIP.

## Core AWM 4.5.195 — publication 4.5.224 et édition Tech sans panneau superposé

- Registre public aligné sur Tech AWM 1.7.27 et Suite AWM 4.5.224.
- Ajoute la règle durable `AWM-TECH-DASH-005` : le panneau Personnaliser se retire pendant le drag & drop et une barre Enregistrer/Annuler reste disponible au bas du dashboard.
- La roadmap publique expose cette amélioration comme livrée et conserve la validation terrain 1080p / 4K comme étape active.
- Aucun changement aux Connectors, `site_id`, `instance_uuid`, secrets, signatures, autopilote ou données opérationnelles.

## Core AWM 4.5.194 — publication 4.5.223, responsive interne et typo des fiches Tech

- Registre public aligné sur Tech AWM 1.7.26 et Suite AWM 4.5.223.
- La règle `AWM-TECH-DASH-004` impose le responsive selon la largeur réelle du bloc et la transformation des tables trop étroites en cartes lisibles.
- La même préférence **Typographie dashboard** doit maintenant suivre jusque dans les fiches Tech, leurs onglets, métriques, SEO, WordPress, sécurité, historique et actions.
- La roadmap publique décrit le dropdown de liens personnalisés, le bouton Fermer compact, les corrections container-responsive et la typographie cohérente des fiches.
- Aucun changement aux Connectors, `client_id`, `site_id`, `instance_uuid`, secrets, permissions ou politiques de déploiement.

## Core AWM 4.5.193 — publication 4.5.222 et shell Tech compact

- Registre public aligne sur Tech AWM 1.7.25 et Suite AWM 4.5.222.
- Le dashboard Tech conserve la grille 12 colonnes, mais les raccourcis personnels sont maintenant integres au shell superieur et Personnaliser devient une icone compacte a cote du bouton Light/Dark.
- Formalise la regle de densite du shell Tech : aucun bloc pleine largeur ne doit etre ajoute uniquement pour les raccourcis ou l action de personnalisation.
- Le panneau Personnaliser doit conserver un contraste natif coherent pour les listes deroulantes en Light et Dark.
- Les contrats Connector, client_id, site_id, instance_uuid, autopilote et signatures restent inchanges.

## Core AWM 4.5.192 — publication 4.5.221 et grille Tech

- Registre public aligné sur Tech AWM 1.7.24 et Suite AWM 4.5.221.
- Formalise dans la mémoire de développement le moteur de grille Tech 12 colonnes, les largeurs ancrées et l adaptation interne des blocs.
- Conserve les contrats Connector, `client_id`, `site_id`, `instance_uuid`, l autopilote et les paquets signés sans changement.
- La roadmap publique reste couplée à `roadmap_sync` et doit afficher Suite 4.5.221 après publication.

## Core AWM 4.5.191 — publication 4.5.220 et roadmap suivie

- Registre public aligné sur Tech AWM 1.7.23 et Hub Client AWM 1.11.44.
- La publication Suite reste l autorité de synchronisation de `/hub/roadmap/` via `roadmap_sync`; aucune livraison n est considérée complète sans cette synchronisation.
- Conserve l autopilote de flotte, les paquets signés, SHA-256, sauvegarde et rollback.

# Core AWM 4.5.190 — registre Suite 4.5.219

- Publie Tech AWM 1.7.22 avec le Mode moniteur fiabilisé pour Chromecast et les actions Tech AJAX.
- Inscrit la règle AWM : lorsqu une action métier peut être actualisée localement de manière sûre, préférer une mise à jour AJAX du bloc concerné au rechargement complet de page.
- Aucun contrat Connector, identité `client_id/site_id/instance_uuid` ou autopilote de flotte n est affaibli.

- Publie Tech AWM 1.7.21 avec la page Réglages unifiée sur le style du Mode moniteur.
- Conserve CRM AWM 1.6.26 et Hub Client AWM 1.11.43 sans rétrogradation.

# Core AWM 4.5.188 — registre Suite 4.5.217

- Publie Tech AWM 1.7.20 avec statuts multi-sites actionnables et actions de fiche alignées.
- Publie CRM AWM 1.6.26 avec une ancre Connector stable pour chaque `site_id`.
- Conserve Hub Client AWM 1.11.43 et tous les mécanismes d autopilote/signature existants.

# Core AWM 4.5.187 — roadmap active et registre 4.5.216

- La section publique **Dernières implantations** est maintenant construite depuis la publication Suite réellement active au lieu de rester figée sur une ancienne version Core.
- `roadmap_sync.release_items`, la date de publication et les versions effectives de la Suite deviennent la source de la première carte publique.
- Le registre publie Tech AWM 1.7.19 et Hub Client AWM 1.11.43 sans rétrograder les autres modules.
- La synchronisation reste compatible avec les promotions directes de modules du dépôt privé.

# 4.5.186 — autopilote central de flotte

- Une publication **Stable** devient l approbation unique pour les modules clients AWM autorisés.
- Core réconcilie automatiquement tous les sites Hub Client actifs et jumelés sans demander de sélectionner les sites.
- Traitement par lots de 2, passage toutes les 5 minutes et relance accélérée après une nouvelle publication.
- Tech AWM est installé/mis à jour avant Hub Client; les contrôles signature, SHA-256, sauvegarde, vérification de version et statut CRM restent inchangés.
- La sélection et le bouton de déploiement restent disponibles uniquement comme forçage manuel.
- Publie Tech AWM 1.7.18 avec Mode moniteur épuré et économiseur d écran.

# 4.5.185 — carte Tech compacte

- Publie Tech AWM 1.7.17 avec en-tête cartographique compact et carte agrandie.
- Registre public aligné sur Tech 1.7.17; Hub Client 1.11.42 et l’autopilote restent inchangés.
- Aucun changement au contrat Connector, aux identités client/site ou aux données opérationnelles.

# 4.5.184 — fiche Tech console opérationnelle

- Publie Tech AWM 1.7.16 avec une fiche site repensée pour la décision rapide.
- Registre public aligné sur Tech 1.7.16 sans modifier Hub Client 1.11.42 ni les contrats Connector.
- Ajoute au suivi public la barre Santé, la zone À faire, les onglets Vue d’ensemble/SEO/WordPress/Sécurité/Historique et les filtres WordPress intégrés.
- Aucun changement de sécurité, secret, identité client/site ou mécanisme d autopilote.

# 4.5.183 — visibilité autopilote flotte

- Registre Hub Client porté à 1.11.42.
- Dans Sites connectés, les mises à jour Hub Client/Tech prises en charge par Hub Client 1.11.42+ sont indiquées **Auto en attente** au lieu de simplement **Prêt**.
- Le bouton Déployer reste disponible comme forçage manuel immédiat.

## 4.5.182 — 2026-09-11
- Publie Tech AWM 1.7.15 avec Mode moniteur en fenêtre dédiée, diagnostic SEO/indexation complet et inventaire WordPress intégré à la fiche Tech.
- Synchronise les couleurs Top sites avec la carte et rend les URL de carte cliquables.
- Conserve Hub Client 1.11.41 et le canal signé Core sans rétrogradation.

## 4.5.181 — 2026-09-11

- Publie Hub Client AWM 1.11.41 avec un autopilote de mise à jour après appairage sur le canal stable Core.
- Publie Tech AWM 1.7.14 avec inventaire complet des extensions WordPress et choix `Manuel / Automatique` par `client_id + site_id + plugin_file`.
- Les modules AWM restent exclus du moteur générique WordPress et continuent exclusivement par le canal Suite signé Core.
- Ajoute les règles durables `AWM-UPDATES-003`, `AWM-TECH-PLUGIN-001`, `AWM-TECH-INDEX-001` et `AWM-TECH-MAP-001`.
- Aligne le registre public des versions sur Core 4.5.181, Hub Client 1.11.41 et Tech 1.7.14.

## 4.5.180 — 2026-09-11

- Core applique désormais le statut CRM canonique à toute autorisation d accès client.
- Un client `inactive` ou `archived` ne peut plus utiliser Connector, sessions Hub/API ni commandes serveur-à-serveur, même si ses secrets et son approbation existent toujours.
- La suspension est réversible : Core ne révoque ni ne régénère le Connector; une réactivation CRM réutilise les mêmes identifiants et secrets.
- Les administrateurs Alliance et les données historiques ne sont pas supprimés ni modifiés par cette garde.

# 4.5.179 — Connector www/apex et contexte compact du shell

- Corrige l appairage Hub Connector lorsque la fiche CRM utilise `domaine.ca` et le WordPress client `www.domaine.ca`, ou inversement.
- Les autres sous-domaines, ports et chemins restent strictement distincts.
- Ajoute les URL canoniques et clés de comparaison au journal interne en cas de refus, sans secret Connector.
- Ajoute un slot de métadonnées compact au shell AWM afin que les modules puissent remonter leur état/version directement dans l en-tête principal.

# 4.5.178 — notices WordPress masquées sur tous les modules AWM

- Étend la détection d'écran AWM à tous les slugs `awm-*` / `awm_*`, incluant Tech AWM et les futurs modules.
- Les bandeaux WordPress, nags de mise à jour et promotions tierces restent masqués sur toutes les pages AWM.
- Les messages métier AWM continuent de passer par `data-callink-loader-result` et le loader AWM; le polling de fond demeure silencieux.
- Corrige notamment les notices tierces qui apparaissaient au-dessus du Centre d'opérations Tech AWM.

## 4.5.177 — 2026-09-09
- Aligne la Suite sur Stats AWM 1.7.0 et son connecteur Screpy serveur-à-serveur.
- Ajoute `AWM-STATS-009` : Screpy est la source technique pour crawler SEO, Quick Wins, Rank Tracker, Core Web Vitals et uptime; AWM interprète ces données au lieu de recréer ces moteurs.
- Fige le contrat sécurité : clé Screpy globale Alliance chiffrée avec Core Vault, jamais exposée côté client.
- Fige l appairage par domaine exact tout en conservant `client_id + site_id + instance_uuid` comme périmètre runtime canonique.
- Aucun secret Connector existant, historique Stats ou donnée CRM n est migré ou supprimé.

## 4.5.176 — 2026-09-09
- Aligne la Suite sur Stats AWM 1.6.2 : la carte Temps réel suit réellement le thème AWM Light/Dark sans clé API externe.
- Ajoute `AWM-STATS-008` pour figer le contrat de thème cartographique et la détection `awm-theme-dark`.
- Corrige l artefact de pixel résiduel des barres de progression Core : une progression à 0 % est réellement retirée du rendu jusqu au démarrage.
- Aucun changement aux Connectors, `client_id`, `site_id`, `instance_uuid`, secrets ou données Stats.

## 4.5.175 — 2026-09-09
- Formalise `AWM-STATS-007` : la carte Temps réel Stats doit fonctionner par défaut sans clé API cartographique externe.
- Aligne la roadmap Suite sur Stats AWM 1.6.1 et son fond OpenStreetMap clair/sombre sans CARTO/Mapbox/Stadia obligatoire.
- Conserve tous les contrats multi-sites, Connector, confidentialité et rafraîchissement silencieux de la 4.5.174.

## 4.5.174 — 2026-09-09
- Aligne la Suite sur Stats AWM 1.6.0, Hub Client 1.11.38 et Hub AWM 4.5.54.
- Ajoute `AWM-STATS-006` : la carte temps réel doit rester utile quand GeoIP est incomplet grâce à un repli approximatif par fuseau, sans GPS/IP, avec qualité de localisation visible et thème clair/sombre.
- Ajoute `AWM-UX-003` : aucun polling, heartbeat, autosave ou rafraîchissement technique de fond ne doit déclencher le loader global AWM.
- Enregistre les premiers signaux Health local-first de Stats 1.6.0 dans le contexte de développement et la roadmap Suite.

## 4.5.173 — 2026-09-09
- Étend l horloge canonique Core avec `period_bounds_utc()` et `local_date()` pour que les modules puissent stocker UTC tout en calculant leurs journées dans `America/Toronto`.
- Formalise la règle Mémoire AWM `AWM-TIME-001` pour tous les modules : stockage UTC, affichage Montréal, HAE/HNE automatique, aucun décalage fixe codé en dur.
- Aligne Stats AWM 1.5.1 sur cette horloge pour les contacts Hub Client, événements, temps réel, périodes et séries quotidiennes.
- Aucun changement aux Connectors, `site_id`, `instance_uuid`, secrets ou permissions.

## 4.5.172 — 2026-09-09
- Formalise le contrat inter-modules de présence temps réel Stats/Health.
- Ajoute `AWM-STATS-005` : heartbeat éphémère site-scoped, aucune IP ni GPS, GeoIP approximatif seulement.
- Conserve sans changement le registre Connector runtime et l'API `client/stats/collect`; le nouvel événement `presence` utilise le même canal authentifié.

## 4.5.171 — 2026-09-09

- Ajoute `AWM_Core_Site_Connectors::connected_statuses()` comme source canonique des installations Hub Client runtime actives.
- Ajoute `connected_client_ids()` afin que Stats/Health puissent construire leur annuaire depuis les Connectors et non depuis la liste CRM.
- Core → Mises à jour réutilise cette même source pour éviter des définitions divergentes de « site connecté ».
- Ajoute la règle Mémoire AWM `AWM-STATS-004` : KPI actifs = `client_id` attitré + `site_id` runtime autorisés; historique déconnecté conservé séparément.
- Aucun secret Connector, `site_id`, `instance_uuid` ni historique n’est régénéré.

## 4.5.170 — 2026-09-09

- Étend l'API client Stats AWM à `site_id` pour les vues multi-sites distantes.
- Ajoute la période 365 jours à l'API Stats.
- Aligne la description du module Stats sur le cockpit Web multi-sites / santé de collecte de Stats AWM 1.4.0.
- Aucun changement aux secrets Connector, `instance_uuid`, permissions ou déploiements distants.

## 4.5.169 — 2026-09-09

- **Mises à jour → Sites connectés** n affiche désormais que les sites Hub Client dont le Connector runtime est réellement appairé; les sites simplement inscrits dans CRM ou avec une clé en attente sont exclus des cibles de déploiement.
- Ajoute un filtre **Tous les sites / Sites principaux / Sites secondaires** en plus de la recherche et du filtre de statut.
- Conserve toutes les opérations distantes sous le contrat `client_id + site_id + instance_uuid`.
- Ajoute la règle Mémoire AWM `AWM-UPDATES-002` afin de maintenir la séparation entre inventaire CRM et cibles de déploiement réellement connectées.

## 4.5.168 — 2026-09-09

- Réparation canonique des seules révisions seed `v1` créées par Core (`author_id=0`) lorsqu une empreinte invalide persiste.
- La réparation ne dépend plus du SHA historique ni d une comparaison partielle des champs corrompus : les champs couverts par l empreinte sont restaurés depuis le seed officiel AWM.
- Les statuts, dates, lifecycle, révisions `v2+`, règles utilisateur et archives ne sont jamais réécrits.
- `health()` relance la réparation sûre avant de calculer les anomalies, afin que l ordre de chargement admin ne puisse plus laisser 50 faux positifs visibles.
- Ajoute un état de migration visible dans **Core → Mémoire AWM** : version DB, version seed, heure UTC, révisions réparées et anomalies restantes.
- Le bouton admin devient **Restaurer les seeds système officiels** et décrit précisément son périmètre.
- Conserve le chemin de récupération anti-brick pour l import d un Core strictement supérieur.
- Prévoit un plugin de récupération temporaire autonome pour réparer le seed sans dépendre du runtime Core chargé.

## 4.5.166 — 2026-09-09

- Corrige la migration Mémoire AWM 4.5.165 qui pouvait ne reconnaître aucun seed historique malgré 50 empreintes invalides.
- La réparation s appuie désormais sur le **SHA-256 canonique original du seed** comme preuve de provenance, au lieu de dépendre de la valeur `change_reason` déjà corrompue.
- Une révision n est reconstruite automatiquement que si elle est `v1`, créée par le système (`author_id=0`) et que son `content_hash` correspond exactement au seed officiel livré avec Core.
- Les champs couverts par l empreinte sont alors restaurés depuis `development-memory-seed.json`; les statuts, dates et historiques de cycle de vie restent intacts.
- La migration n est marquée terminée que lorsque le contrôle d intégrité retourne réellement **0 anomalie**.
- Le préflight de publication relance la réparation sûre avant de bloquer, afin d éviter un problème de timing au chargement.
- Ajoute dans **Core → Mémoire AWM → Santé** un bouton administratif `Réparer les seeds système reconnus` disponible lorsqu une empreinte invalide subsiste.
- Passe le schéma logique Mémoire AWM à **1.2**.

## 4.5.165 — 2026-09-09

- Corrige un défaut de format dans l insertion SQL des révisions **Mémoire AWM** : `change_reason` était envoyé avec `%d` au lieu de `%s`.
- Ce défaut convertissait les raisons textuelles des 50 règles initiales en `0` après calcul du SHA-256, ce qui faisait apparaître les 50 entrées comme corrompues et bloquait toute publication.
- Passe le schéma logique Mémoire AWM à **1.1** et répare automatiquement uniquement les révisions seed v1 reconnues : auteur système, contenu identique au seed et raison héritée vide/`0`.
- Restaure la raison originale depuis `development-memory-seed.json`, recalcule l empreinte canonique et journalise la migration sans modifier les règles métier.
- Les empreintes inconnues ou réellement altérées restent critiques et continuent de bloquer la publication.
- Corrige définitivement la liste de formats de `$wpdb->insert()` pour toutes les futures révisions.

## 4.5.164 — 2026-09-09
- Corrige la vue **Sites clients** qui restait indexée uniquement par `client_id` et ne pouvait afficher qu'une seule ligne par client.
- La liste des déploiements distants est désormais construite à partir de tous les sites CRM canoniques et de leurs Connectors : site principal et sites secondaires apparaissent séparément avec leur propre `site_id`, URL, état de liaison et inventaire.
- Les inventaires, rafraîchissements, déploiements, vérifications post-installation et rollbacks sont maintenant isolés par `client_id + site_id`.
- Les liens de téléchargement temporaires et leurs signatures HMAC sont liés au `site_id` et au secret de scan du site précis; un site secondaire n'emprunte plus le canal du site principal.
- Les offres de mise à jour retournées par l'API Connector deviennent site-scoped aussi pour les sites secondaires, tout en conservant les métadonnées historiques du site principal pour compatibilité.
- Un site secondaire connu dans CRM apparaît dans **Mises à jour** même avant appairage complet; l'interface distingue `À connecter`, `Code prêt` et le site réellement synchronisé.
- Ajoute une règle Mémoire AWM critique : toute action distante et tout inventaire doivent conserver la granularité `client_id + site_id`; aucune vue de déploiement ne doit écraser les sites d'un même client.

## 4.5.163 — 2026-09-09
- Corrige le parseur des imports directs quand Chrome/Windows renomme un doublon `module-X.Y.Z (1).zip` et que WordPress le normalise en `module-X.Y.Z-1.zip`.
- Un suffixe numérique final est désormais traité comme suffixe de copie, pas comme préversion du module.
- Les préversions explicites commençant par une lettre (`-beta.1`, `-rc.2`) restent supportées.
- La validation reste stricte : nom canonique, version interne du plugin, structure ZIP, documentation, SHA-256 et dépôt doivent rester cohérents.

## 4.5.162 — 2026-09-09
- Ajoute **Mémoire AWM**, un mini-Git interne persistant dans Core pour conserver les règles, faits et décisions de développement entre les conversations.
- Chaque règle possède un identifiant stable, une version, un parent, un type, une catégorie, une priorité, les modules impactés, une source, une raison de changement, un auteur, un horodatage UTC et une empreinte SHA-256.
- Une règle active n est jamais modifiée en place : toute évolution crée une nouvelle révision; l ancienne devient `superseded` ou `archived` et reste consultable.
- La restauration d une ancienne règle crée une nouvelle version au lieu de réécrire l historique.
- Ajoute détection de conflits optimiste : une conversation basée sur une ancienne version ne peut pas écraser une règle plus récente.
- Ajoute contrôle local des secrets : clés privées, tokens Authorization, clés API et valeurs ressemblant à des mots de passe/secrets sont refusés avant stockage.
- Importe 50 règles AWM consolidées pertinentes : publication, développement parallèle, impact inter-modules, multi-sites, Connectors, Studio, Stats/Health, CRM, UX et sécurité; aucune mémoire personnelle n est copiée.
- Ajoute un bloc **Mémoire AWM** dans le tableau de bord Core et un écran administrateur complet avec recherche, filtres, historique, diff entre révisions, archivage, restauration, export JSON, santé et snapshots.
- Avant chaque publication de Suite, Core exécute un préflight de mémoire et bloque uniquement sur une anomalie d intégrité critique; après publication, un snapshot signé des règles actives est créé automatiquement.
- La mémoire peut être consultée par les modules via une API PHP contextuelle afin de charger seulement les règles pertinentes et éviter des tokens inutiles.

## 4.5.161 — 2026-09-09
- Ajoute un stockage de secours **site-scoped** pour les Connectors secondaires lorsqu'une base historique refuse encore l'INSERT SQL après réparation et reconstruction canonique.
- Passe le registre logique Connector en **DB_VERSION 1.6** sans modifier les `site_id`, `instance_uuid` ou secrets existants.
- Le fallback utilise les métadonnées du client pour le record complet et deux index non-autoloadés dérivés des hashes de pairing/runtime afin de conserver une résolution O(1) côté API sans scanner les utilisateurs.
- `status`, `generate`, `find_pairing`, `find_secret`, `complete_pair`, `touch`, `revoke`, `revoke_all`, `update_site_data` et `raw_row` utilisent désormais la même abstraction SQL/meta : Stats, Health, Tech et Hub Client voient le Connector de la même façon quel que soit son backend de stockage.
- Le Connector principal continue d'utiliser son registre existant; le fallback est activé uniquement lorsque la création SQL du site concerné échoue réellement.
- Journalise `connector_site_storage_fallback` sans exposer les codes, secrets, requêtes SQL ou contenus de formulaires.
- Validation terrain prioritaire : générer la clé de `www.demenagementhull.com`, appairer Hub Client, puis confirmer la remontée Stats/Health sous son `site_id` distinct.

## 4.5.160 — 2026-09-09
- Renforce le correctif terrain du registre Connector après confirmation qu'une réparation d'index seule ne suffit pas sur certaines bases historiques.
- Passe `awm_site_connectors` en **DB_VERSION 1.5**.
- Après échec de l'insertion et de la réparation légère, reconstruit automatiquement le registre dans un **schéma canonique neuf**, puis recopie uniquement les colonnes actuelles.
- Préserve les `client_id`, `site_id`, hashes de pairing/runtime, `instance_uuid`, URL appairées, inventaires, profils Tech, utilisateurs synchronisés et horodatages existants; aucun secret n'est régénéré.
- Élimine ainsi les colonnes historiques obligatoires, anciennes clés primaires, contraintes ou index qu'un `dbDelta()` ne peut pas supprimer proprement.
- La bascule ancien registre → registre canonique utilise un renommage atomique; l'ancien registre n'est supprimé qu'après validation de la nouvelle table.
- Étend le diagnostic sûr avec la dérive de schéma (colonnes manquantes, colonnes historiques obligatoires, PK et index uniques) sans journaliser les valeurs Connector.
- Si la reconstruction canonique échoue encore, Core conserve l'ancien registre et journalise la catégorie de l'erreur sans exposer la requête SQL.

## 4.5.159 — 2026-09-09
- Corrige l’échec **« Impossible de créer le Connector de ce site »** observé lors de la génération d’une clé pour un site secondaire.
- Passe le registre `awm_site_connectors` en **DB_VERSION 1.4** et réconcilie automatiquement les schémas historiques avant toute nouvelle insertion.
- Supprime uniquement les anciens index `UNIQUE` qui ne font plus partie du contrat multi-sites; le seul index unique métier conservé est désormais `client_id + site_id`.
- Recrée les index de recherche non uniques attendus et répare `id AUTO_INCREMENT` si une ancienne migration l’a laissé incomplet.
- En cas d’échec d’insertion, Core tente une seule réparation automatique puis réessaie la création sans régénérer, révoquer ou modifier les Connectors existants.
- Journalise la réparation du schéma et, si le second essai échoue, conserve une classification sûre de l’erreur, le nom d’index concerné lorsqu’il est détectable et des empreintes SHA-256, sans journaliser la requête SQL ni les valeurs.
- Aucun changement aux `site_id`, `instance_uuid`, secrets Connector, données Stats/Health ou rattachements CRM existants.

## 4.5.158 — 2026-09-08

- Ajoute la route Connector authentifiée `client/stats/collect`.
- Vérifie le Connector par `client_id`, `site_id`, domaine et `instance_uuid` avant toute ingestion Stats.
- Délègue le stockage métier à Stats AWM; Core reste propriétaire de l'authentification et du transport.
- Ajoute `stats_collect` à la liste blanche des ponts Connector de secours REST/body/admin-ajax/front.
- Aucun secret Connector n'est exposé au navigateur.
- Les sites Hub Client restent identifiés par `client_id + site_id + instance_uuid`; Stats/Health peut donc les agréger au client sans perdre la source exacte.

## 4.5.157 — 2026-09-07

- Corrige une rétrogradation silencieuse de la composition active : les bootstraps historiques Studio 1.14.0 et Tech 1.6.8 pouvaient réécrire la version effective après un import direct supérieur.
- Les fonctions d amorçage Studio et Tech deviennent strictement anti-rétrogradation : une version active égale ou supérieure est toujours conservée.
- Ajoute une réconciliation idempotente dépôt → publication active à chaque chargement admin; seules les versions strictement supérieures sont promues.
- La réconciliation réutilise la promotion sécurisée existante : paquet chiffré Vault, SHA-256, `roadmap_sync`, `composition_revisions` et journal de sécurité.
- Répare automatiquement un Studio 1.16.0 ou un Tech 1.6.9 déjà présent dans le dépôt sans exiger un nouvel upload.
- Aucun changement aux Connectors, `site_id`, `instance_uuid`, secrets ou au multi-sites.

## 4.5.156 — 2026-09-07

- Corrige l ambiguïté de l import rapide dans Core → Mises à jour : la zone de la publication active accepte maintenant autant une Suite qu un module AWM.
- Détecte automatiquement `suite-awm-modulaire-X.Y.Z.zip` ou un nom canonique de module comme `studio-awm-X.Y.Z.zip`, puis délègue au validateur spécialisé existant.
- Un module importé par la zone rapide conserve toutes les protections du dépôt 4.5.154 : documentation obligatoire, structure ZIP, version, SHA-256, Vault, refus d un build différent sous le même numéro et aucune rétrogradation.
- La promotion vers la publication active reste automatique pour une version de module supérieure.
- Les formulaires dédiés « Importer un module » et « Publier une Suite » restent disponibles dans Publication, notes et historique.
- Aucun changement aux Connectors, `site_id`, `instance_uuid`, secrets, permissions ou au multi-sites.

## 4.5.155 — 2026-09-06

- Ajoute des snapshots publics sécurisés `Contexte développement`, `CHANGELOG`, `README` et `ROADMAP` pour chaque module effectivement publié.
- Les documents sont lus depuis les paquets de publication privés/chiffrés; aucun chemin de stockage interne n est exposé.
- Masque automatiquement les lignes susceptibles de contenir secrets Connector, tokens, clés API, mots de passe, clés privées ou entêtes Authorization.
- Journalise la publication des snapshots documentaires avec la composition effective de la Suite.

# 4.5.154 — dépôt central de modules et résolution anti-rétrogradation

- Ajoute `awm_core_module_repository` avec plusieurs versions conservées par module.
- Ajoute l import direct d un module depuis Core → Mises à jour, avec identification du module, version sémantique, structure ZIP, SHA-256 et chiffrement Vault.
- Exige `README.md`, `CHANGELOG.md` et `ROADMAP.md` pour tout nouvel import direct; les anciens paquets d une Suite restent tolérés comme héritage pour éviter une migration destructive.
- Un module direct supérieur peut être promu immédiatement comme version effective de la publication active.
- Une nouvelle Suite vérifie encore la cohérence de ses paquets sources avec son manifeste/roadmap, puis résout chaque module contre le dépôt et la publication active.
- Une version supérieure existante n est plus une erreur : elle est conservée et injectée dans `roadmap_sync.versions` et `module_updates`.
- Interdit les builds différents sous le même numéro de version : une correction de build exige une version supérieure.
- Journalise import, promotion, résolution, publication et erreurs de validation.
- Conserve `composition_revisions` pour l audit des changements de modules effectués sans reconstruire toute la Suite.
- Aucun changement aux Connectors, secrets, `site_id`, `instance_uuid` ou à la télémétrie multi-sites.

# 4.5.153 — correction globale de l heure Alliance
- Ajoute une horloge Core canonique `America/Toronto` avec gestion automatique HNE/HAE, indépendante du fuseau général WordPress.
- Les nouvelles publications sont stockées explicitement en UTC et converties uniquement à l affichage.
- Corrige immédiatement l historique des publications existantes en reconstruisant leur instant UTC depuis l identifiant de release `Suite-gmdate`, ce qui retire le décalage de quatre heures sans modifier la base.
- Corrige aussi l affichage du journal de sécurité et des heures du moniteur de tâches Core.
- Publie Tech AWM 1.6.8 afin que les dates Tech centrales utilisent la même horloge Alliance.
- Ne modifie aucun Connector, `site_id`, secret, télémétrie ou permission multi-sites.

# 4.5.152 — monitoring Tech multi-sites par site_id
- Publie Tech AWM 1.6.7.
- Passe `awm_site_connectors` en DB_VERSION 1.3 avec profil Tech et date de synchronisation propres à chaque site.
- Étend le canal serveur-à-serveur Core afin que Tech puisse interroger le `site_id` exact avec le secret de scan de cette installation.
- Conserve intégralement la restauration des anciens Connectors validée en Suite 4.5.151.
- Les déploiements automatiques historiques restent volontairement centrés sur le principal; aucun secondaire ne peut déclencher une mise à jour sur le mauvais site.

# 4.5.151 — cohérence stricte ZIP / manifeste / roadmap
- Corrige le rejet de publication de Suite 4.5.150 : le ZIP Core annonçait 4.5.150 alors que `roadmap_sync.versions.core` et `roadmap_sync.versions.suite` étaient restés à 4.5.149.
- Aligne Core AWM 4.5.151 dans l’en-tête du plugin, la constante runtime, le registre public de versions, `manifest.json` et la synchronisation roadmap.
- Conserve intégralement la restauration automatique des Connectors historiques introduite en 4.5.150 et le schéma Connector DB_VERSION 1.2.
- Aucun Connector n’est régénéré ou révoqué par cette correction de publication.

# 4.5.150 — restauration automatique des Connectors existants
- Corrige la régression où la vue Mises à jour pouvait afficher `Sites clients (0)` après la migration multi-sites alors que les Connectors 4.5.147 existaient toujours.
- Réimporte automatiquement le hash Connector historique du site principal dans le registre `awm_site_connectors`, sans générer de nouvelle clé et sans demander de reconnexion aux sites.
- Ajoute un repli de lecture sur les métadonnées Connector historiques si le registre multi-sites est temporairement indisponible ou incomplet.
- Récupère aussi l URL de jumelage historique lorsque l URL principale CRM manque pendant la migration.
- Une ligne de migration marquée `revoked_at` par erreur est réactivée uniquement si le secret historique intact existe encore; une révocation explicite reste donc respectée.
- Le runtime peut auto-récupérer un Connector pré-4.5.148 à partir de son hash historique avant d appliquer les contrôles `site_id` / `instance_uuid`.
- Passe le schéma Connector à DB_VERSION 1.2.

# 4.5.149 — correctif registre Connector et publication
- Publie Core AWM 4.5.149; les autres modules restent inchangés.
- Corrige les warnings `Trying to access array offset on null` du registre Connector multi-sites lors de la migration du site principal.
- Force une réconciliation du schéma `awm_site_connectors` avec DB_VERSION 1.1 et refuse proprement un enregistrement introuvable au lieu de lire un tableau nul.
- Conserve la règle de publication strictement croissante : une Suite 4.5.148 déjà publiée doit être suivie par 4.5.149 ou supérieur.
- Aucun Connector existant n’est révoqué par ce correctif.

# 4.5.147 — fiche client multi-sites premium
- Publie CRM AWM 1.6.19; Tech AWM reste 1.6.6.
- Refonte responsive du bloc Sites du client avec cartes premium et hiérarchie Site principal / Sites secondaires.
- Ajoute `site_type` distinct de l'environnement technique et 16 types de sites, dont Landing page, Sous-domaine, Répertoire, Boutique, Blog, Portail client, Campagne et Microsite.
- Remplace le contrôle radio de promotion par une action directe **Promouvoir** avec confirmation visuelle avant enregistrement.
- Conserve le site principal comme source de vérité des couleurs, typographies et règles de marque.

# 4.5.146 — architecture client multi-sites
- Publie CRM AWM 1.6.18 et Tech AWM 1.6.6.
- Ajoute Site principal + Sites secondaires dans la fiche client canonique.
- Conserve le site principal comme source graphique officielle.
- Ajoute `site_id` persistant par site et prépare l association runtime/site.
- Tech affiche les sites secondaires non connectés sans leur attribuer la télémétrie du site principal.
- Aligne le bootstrap Core sur Tech 1.6.6.

# 4.5.145 — monitoring Tech proactif et inventaires à la demande
- Publie Tech AWM 1.6.5 et Hub Client AWM 1.11.32.
- Ajoute un scan central horaire qui réévalue les vulnérabilités correspondant réellement aux versions installées et journalise les nouvelles correspondances critiques.
- Ajoute l actualisation manuelle des inventaires depuis le dashboard et la vue Mises à jour via une route Hub Client privée authentifiée.
- Affiche le dernier scan automatique dans Tech AWM et conserve la politique sans API de vulnérabilités payante.
- Aligne le bootstrap Core sur Tech 1.6.5.

# 4.5.144 — correctif de publication Suite

- Publie une version de Suite strictement supérieure à la publication active 4.5.143.
- Conserve Tech AWM 1.6.4 et les autres modules inchangés; aucun rollback fonctionnel.
- Aligne le registre de versions Core et la roadmap sur Suite 4.5.144.
- Évite de présenter un paquet 4.5.143 comme nouvelle publication lorsqu'il est déjà actif.

# 4.5.143 — inventaire logiciel et journal sécurité Tech
- Publie Tech AWM 1.6.4 et aligne le paquet bootstrap Core sur la même version.
- Ajoute l inventaire central des versions WordPress, extensions et thèmes avec les mises à jour proposées par WordPress.
- Compare les modules Suite AWM installés sur Alliance avec la publication active afin de repérer immédiatement les versions en retard.
- Ajoute un journal de vulnérabilités fondé uniquement sur Wordfence Intelligence V3, accessible gratuitement avec une clé gratuite Wordfence; aucune API de vulnérabilités payante n est requise.
- La clé reste chiffrée dans le coffre Core côté Alliance et n est jamais envoyée aux sites clients.
- Les alertes ne sont créées qu après correspondance entre la version réellement installée et les plages de versions affectées publiées par Wordfence.
- Corrige le décalage du bootstrap précédent où Core ciblait Tech 1.6.3 sans embarquer le ZIP correspondant.

# 4.5.142 — apparence avancée de la fenêtre Tech
- Publie Tech AWM 1.6.3.
- Sépare l opacité des fonds de l opacité du texte et des bordures.
- Ajoute un choix de police en direct sans ressource externe.
- Conserve couleur d accent, presets Matrix / Bleu premium, session persistante, Elementor et moteur d actions frontend.

# 4.5.141 — contenu et images Tech AWM
- Publie Tech AWM 1.6.2 et Hub Client AWM 1.11.31.
- Corrige les demandes de couleur de titre avec normalisation des couleurs nommées et repli CSS frontend réversible lorsqu aucun ID Elementor fiable n est disponible.
- Ajoute les demandes de réécriture de contenu : rallonger, condenser, corriger et rendre plus formel/professionnel.
- Ajoute la génération d image centralisée Alliance, import WordPress et remplacement contrôlé d un widget image Elementor sélectionné.
- Conserve les permissions Alliance, la journalisation, les snapshots, le contrôle de concurrence et le rollback.

# 4.5.140 — actions frontend Tech
- Publie Tech AWM 1.6.1 et Hub Client 1.11.30.
- Tech privilégie maintenant les actions exécutables plutôt que les instructions manuelles pour les demandes compatibles.
- Ajoute les styles Elementor sécurisés : couleurs, fonds, alignement, typographie responsive, marges et padding.
- Conserve validation Alliance, snapshot, contrôle de concurrence, rollback et journalisation.

# 4.5.139 — Tech AWM 1.6.0 / frontend + dashboard monitoring

- Publie Tech AWM 1.6.0.
- Fait du frontend la surface d intervention principale avec fenêtre Tech privee persistante; Elementor devient le mode avance.
- Ajoute un dashboard principal source-first : KPI, priorites, score de sante derive, sites surveilles et activite recente.
- Les blocs du dashboard ouvrent leur source dans des popups et la navigation principale reste dans le menu WordPress a gauche.
- Ajoute Monitoring, Alertes, Mises a jour, Sauvegardes, Securite, Rapports, Journal et Reglages sans simuler les sondes encore absentes.
- Aligne le bootstrap Core sur Tech AWM 1.6.0.

# 4.5.138 — session Tech persistante WordPress ↔ Elementor

- Publie Tech AWM 1.5.18.
- Conserve la boîte d intervention pendant la navigation dans wp-admin et Elementor.
- Ajoute les préférences locales de couleur terminale et d opacité totale.
- Aligne le paquet bootstrap Tech sur 1.5.18.
- Roadmap : ajoute la reprise multi-pages contrôlée et la barre de session globale dans Futur.

# 4.5.137 — isolation du preview Elementor

- Publie Tech AWM 1.5.17.
- Corrige la cause identifiée du blocage Elementor **Loading / Enable Safe Mode** : le cookie de session Tech était interprété dans l iframe `elementor-preview`, qui pouvait être redirigée vers `wp-admin`.
- Le preview Elementor est maintenant exclu avant toute validation, redirection ou handoff Tech.
- Une session cookie seule ne déclenche plus le bootstrap front-end; un lancement Tech explicite est requis.
- Conserve le handoff direct Alliance → Elementor et la boîte terminal Matrix.
- Roadmap : validation terrain du preview isolé maintenant; gate E2E preview-ready au Futur.

# 4.5.136 — Safe Boot Elementor et terminal Matrix

- Publie Tech AWM 1.5.16.
- Retarde le montage de la boîte Tech jusqu à l initialisation réelle d Elementor afin de ne pas perturber le boot de l éditeur.
- Supprime le MutationObserver global pendant le chargement et empêche le double enqueue/localize des assets Tech.
- Nettoie le thème terminal Matrix premium : console monospace, vert lumineux et fond noir/vert.
- Roadmap : Maintenant = validation terrain sans Safe Mode; Futur = gate E2E qui bloque une publication si Elementor reste sur Loading/Safe Mode.

# 4.5.135 — handoff Elementor indépendant du runtime chargé

- Publie Hub Client 1.11.29 et Tech AWM 1.5.15.
- Le préflight Tech relit désormais `update/status` avant toute tentative de déploiement afin d éviter les faux états causés par une télémétrie périmée.
- Hub Client peut préparer directement le handoff Elementor après validation Connector de la session Alliance, même si une ancienne classe Tech reste chargée dans la requête courante.
- Core conserve la preuve de version runtime et la route privée prête avant de considérer Tech disponible.
- Roadmap : ajoute en Futur un test E2E obligatoire du parcours création session → handoff → wp-admin Elementor → boîte Tech → rollback.

# 4.5.132 — récupération automatique d un Tech bloqué

- Publie Hub Client AWM 1.11.28.
- Lorsqu un déploiement Tech échoue ou reste sur une ancienne version après vérification, Core lance automatiquement **une seule** réparation propre au lieu de laisser le site en erreur.
- La récupération conserve une sauvegarde, demande le remplacement canonique de Tech, puis relit le site jusqu à confirmer le runtime cible et la route privée Elementor.
- Les autres sites continuent leurs mises à jour même si la récupération d un site échoue.
- Roadmap : ajoute en Futur un préflight distant des permissions, fichiers verrouillés et état OPcache avant installation.

# 4.5.131 — correction structurelle du paquet Hub Client

- Corrige la Suite précédente où `hub-client-awm-1.11.26.zip` contenait deux dossiers racine (`hc/` et `hub-client-awm/`).
- Publie Hub Client 1.11.27 dans un ZIP contenant **uniquement** `hub-client-awm/` à sa racine, conformément au validateur Core.
- Ajoute cette erreur de packaging au préflight de livraison afin de la détecter avant import.
- Conserve Tech AWM 1.5.12 : le prochain test fonctionnel reprend directement l ouverture de la boîte Tech dans Elementor.
- Roadmap : ajoute la validation des racines ZIP en Prochaines étapes et un build reproductible sans artefacts temporaires au Futur.

# 4.5.130 — suppression du 404 de preparation Elementor

- Publie Hub Client 1.11.26 et Tech AWM 1.5.12.
- Core ne considere plus Tech comme pret sur la seule version runtime : `update/status` doit aussi confirmer `tech_prepare_route_ready`.
- Le point d entree prive de preparation Elementor est possede par Hub Client afin qu une mise a jour Tech ne puisse plus produire `No route was found matching the URL and request method`.
- Conserve la verification post-installation dans une nouvelle requete PHP et le bootstrap Tech autonome.
- Ajoute au Futur un test de contrat automatique des routes privees avant publication.

# 4.5.129 — handoff Elementor serveur et preuve runtime

- Publie Tech AWM 1.5.11 et Hub Client AWM 1.11.25.
- L ouverture Elementor ne transite plus par la page publique : Core prépare directement un handoff privé sur le site client puis redirige vers `wp-admin`.
- Le handoff local est temporaire, à usage unique et lié au `post_id` résolu par le site client.
- Core vérifie désormais `tech_runtime_version` réellement chargé en PHP après une mise à jour distante, et non seulement l en-tête de version du fichier.
- Hub Client invalide OPcache et désactive les anciens runtimes Tech concurrents après mise à jour.
- Ajoute au Futur un test E2E de lancement Elementor et un préflight runtime obligatoire avant publication.

# 4.5.128 — continuité Tech vers Elementor

- Publie Tech AWM 1.5.10.
- Corrige la perte possible de session entre le front client et `wp-admin`, notamment lorsque le site passe de `www` au domaine nu.
- Ajoute un handoff serveur temporaire et un cookie de domaine sécurisé pour restaurer la session Elementor.
- Injecte directement les assets de la boîte Tech dans `admin_head` pendant une intervention valide.
- Ajoute un diagnostic visible si Elementor reçoit une intervention mais ne peut pas récupérer sa session.
- Roadmap : ajoute télémétrie de démarrage en Prochaine étape et test E2E www/domaine nu au Futur.

# 4.5.127 — cohérence stricte Suite / manifeste / roadmap

- Corrige la publication 4.5.126 dont `roadmap_sync.versions` était resté sur 4.5.125 malgré un ZIP Core 4.5.126.
- Aligne automatiquement les versions de publication avec les versions réelles des 10 paquets lors de la construction de la Suite.
- Conserve le contrôle strict à l import : ZIP, manifeste et synchronisation roadmap doivent rester identiques.
- Roadmap : ajoute un contrôle de cohérence de publication et prévoit un préflight automatisé avant chaque livraison.

# 4.5.126 — boîte Tech fiable dans Elementor
- Publie Tech AWM 1.5.9.
- Aligne le bootstrap Core sur Tech 1.5.9.
- La boîte d intervention utilise désormais les hooks natifs de l éditeur Elementor, avec fallback JavaScript et anti-doublon.
- Roadmap : ajoute validation terrain immédiate, test de fumée Elementor et scénario E2E navigateur futur.

# 4.5.125 — intervention Elementor sans blocage de version

- Publie Tech AWM 1.5.8.
- Le runtime Tech distant requis pour une intervention Elementor est maintenant préparé automatiquement depuis la publication active.
- Core déploie ou met à jour Tech sur le site client, relit l inventaire puis confirme la version avant la création de session.
- Le bootstrap Core est aligné sur Tech AWM 1.5.8 afin qu une nouvelle installation Alliance ne réintroduise pas une version plus ancienne.
- La roadmap ajoute la validation terrain de ce parcours et la préparation anticipée des runtimes Tech en Futur.

# 4.5.124 — Horodatage Tech localisé
- Publie Tech AWM 1.5.7.
- Aligne le paquet bootstrap Tech de Core sur 1.5.7 afin qu une installation Alliance neuve ne retombe plus sur un runtime historique.
- Corrige le décalage UTC du dernier contact affiché dans Tech AWM → Sites.
- Les événements Tech restent stockés en UTC et sont convertis au fuseau WordPress Alliance à l affichage.
- Ajoute au Futur une chronologie multi-fuseaux unifiée pour la maintenance et la sécurité.

# 4.5.123 — Stabilisation Tech Elementor et roadmap orientée livraison
- Publie Tech AWM 1.5.6.
- Ajoute un préflight de disponibilité avant l ouverture Elementor pour éviter les sessions qui s ouvrent sur un runtime client trop ancien ou sans télémétrie Elementor confirmée.
- Affiche l état et le temps restant de la session dans l unique boîte Tech.
- Attend automatiquement l iframe Elementor, gère son rechargement et durcit les contrôles JavaScript pour limiter les erreurs bloquantes.
- Après Appliquer ou Rollback, rafraîchit l aperçu plutôt que toute l interface lorsque l API Elementor est disponible.
- Corrige le registre de versions roadmap qui affichait encore Tech 1.5.3.
- Ajoute explicitement Maintenant, Prochaines étapes et Futur pour Tech; l examen du Futur devient une étape permanente de chaque livraison.

# 4.5.122 — Import de Suite tolérant aux noms de téléchargement
- Corrige le refus des fichiers valides renommés automatiquement par le navigateur ou Windows, par exemple `suite-awm-modulaire-4.5.122(1).zip`.
- Core accepte maintenant les suffixes `-1`, `(1)`, `(2)` et variantes avec espace, tout en exigeant strictement le préfixe `suite-awm-modulaire-` et une version X.Y.Z.
- La version publiée continue d'être extraite du nom canonique et doit rester strictement supérieure à la dernière publication.

# 4.5.121 — Tech AWM 1.5.5 / intervention Elementor directe
- Publie Tech AWM 1.5.5.
- Les interventions Tech ouvrent directement Elementor sur la page ciblée.
- Une seule boîte de dialogue Tech privée est affichée dans Elementor; aucune palette n est rendue sur le front-end public.
- Conserve session temporaire, inspection, application contrôlée, diagnostic et rollback.

# 4.5.120 — Tech AWM 1.5.4 / liste d’intervention directement visible
- Publie Tech AWM 1.5.4.
- La Vue d’ensemble Tech affiche maintenant la liste des sites Hub Client directement au lieu d’un simple lien « Ouvrir la liste d’intervention ».
- Conserve l’onglet Sites dédié, la recherche et les actions Intervenir / Fiche Tech / Voir.
- Corrige le doublon du champ de recherche de la vue Sites.

# 4.5.119 — Tech AWM 1.5.3 / palette dans l’éditeur Elementor
- Publie Tech AWM 1.5.3.
- Corrige la continuité d’une session d’intervention Alliance lorsque la page cible est ouverte avec **Modifier avec Elementor** dans `wp-admin`.
- La palette Tech privée est maintenant injectée directement au-dessus de l’éditeur Elementor et s’ouvre automatiquement pendant la session valide.
- Le mode Inspecter cible l’iframe de prévisualisation Elementor afin de sélectionner directement les éléments de la page.
- Supprime le doublon de palette dans l’iframe Elementor et conserve une seule boîte de dialogue de travail.
- Sans session Alliance valide, aucun composant Tech n’est visible dans Elementor, Hub Client ou le front-end public.

# 4.5.118 — Tech AWM 1.5.2 / onglet Sites réellement visible
- Corrige le shell administratif Core qui affichait encore **Clients** vers CRM au lieu de la nouvelle vue **Sites** de Tech AWM.
- Ajoute l’onglet visible **Sites** directement après Vue d’ensemble dans Tech AWM.
- Cliquer sur Tech AWM ouvre désormais la liste des sites Hub Client par défaut.
- Publie Tech AWM 1.5.2 et conserve Hub Client invisible à Tech côté client.
- La liste Sites reste alimentée par CRM canonique + inventaire Core, sans répertoire parallèle.

# 4.5.117 — Tech AWM 1.5.1 / liste Hub Client d’intervention
- Publie Tech AWM 1.5.1.
- Tech AWM affiche automatiquement tous les sites où Hub Client est confirmé installé par l’inventaire Core.
- La liste réutilise le client_id CRM canonique et ne crée aucun doublon de fiche client.
- Chaque ligne expose Hub Client, Tech AWM, santé, mises à jour, alertes, transport Connector et dernier contact.
- Alliance peut lancer une intervention directement depuis la liste lorsque Tech est installé et autorisé, ou ouvrir la fiche Tech complète.
- Core embarque le bootstrap Tech AWM 1.5.1 et son SHA-256 exact.

# 4.5.116 — Hub Client 1.11.24 / administration locale épurée

- Publie Hub Client AWM 1.11.24.
- Retire le grand panneau explicatif Sécurité de l’administration locale des sites clients, sans désactiver aucune protection technique.
- Maintient Tech AWM 1.5.0 comme agent privé Alliance, invisible dans le Hub Client et dans ses écrans locaux.
- Conserve les protections Connector, HTTPS, sessions, domaine, déploiement distant et provisioning Tech en arrière-plan.
- Synchronise le registre de versions roadmap sur Core 4.5.116, Hub Client 1.11.24 et Tech AWM 1.5.0.

# 4.5.115 — Tech AWM 1.5.0 privé et intervention distante

- Publie Tech AWM 1.5.0 et Hub Client AWM 1.11.23.
- Tech disparaît complètement du Hub Client; il devient un agent interne Alliance uniquement.
- Ajoute les routes Connector sécurisées de validation et d audit des sessions d intervention front-end.
- Les sessions Tech sont temporaires, liées au client, au domaine et à la page; le jeton brut n est jamais enregistré côté Alliance.
- Tech 1.5.0 ajoute santé, mises à jour, alertes sécurité, inspection Elementor, réparation/design et rollback pendant une session Alliance.
- Core embarque le bootstrap Tech AWM 1.5.0 et son SHA-256 exact.

# 4.5.114 — visibilité complète de la Suite et Tech AWM 1.4.3
- L'écran de confirmation d'installation affiche désormais tous les paquets reconnus, répartis entre À installer, Déjà à jour / sans action locale et À publier sur les sites clients.
- Évite l'impression que seul Core existe lorsqu'il est le seul module dont la version locale change.
- Publie Tech AWM 1.4.3 et Hub Client AWM 1.11.22 avec centre de santé Connector, diagnostics et réparations ciblées.
- Le bootstrap Core embarque désormais Tech AWM 1.4.3 et son SHA-256 exact.

# 4.5.113 — réparation déploiement distant / installation Tech manquante
- Corrige le déploiement distant qui pouvait déclarer Hub Client en échec alors que ses nouveaux fichiers étaient déjà installés : Core relit maintenant le site dans une nouvelle requête avant de conclure.
- Autorise la publication active à proposer **Tech AWM même lorsqu'il est totalement absent** du site, uniquement si Tech est activé dans la fiche CRM canonique du client.
- Confirme après chaque installation distante que la version cible Hub Client ou Tech est réellement présente avant d'afficher le succès.
- Traite Hub Client avant Tech sur chaque site afin que le nouvel agent d'installation soit disponible avant le provisioning Tech.
- Une erreur sur un site ne suspend plus les autres sites après deux échecs; chaque tâche est isolée et le diagnostic expose maintenant le code d'erreur précis.
- Publie Hub Client AWM 1.11.21 avec auto-provision sécurisé du paquet Tech manquant.

# 4.5.112 — Hub Client 1.11.20 / logo canonique dans toutes les sections
- Publie Hub Client AWM 1.11.20 avec un composant de marque unique pour tout le portail client.
- Garantit que le PNG Alliance officiel est servi sans filtre, masque, recoloration, transformation ni redessin dans Accueil, CallTracker, Stats, Tech AWM, Mon compte et leurs sous-sections.
- Conserve le badge Hub orange comme asset séparé.

# 4.5.111 — Hub Client 1.11.19 / intégrité stricte du logo Alliance
- Publie Hub Client AWM 1.11.19 avec contrôle SHA-256 du logo Alliance officiel.
- Le logo canonique est accepté uniquement si son empreinte correspond à `1b0dcbd96e1ed931ce785cda2918e7dc38597c214735e21c92243c02eb43b13a`; toute variante modifiée est refusée à l'affichage.
- Le badge Hub orange reste séparé et superposé dans le menu WordPress, le bandeau et le portail `/hub/`.
- Les autres modules, le Connector, les données CRM et le moteur de déploiement restent inchangés.

# 4.5.110 — Hub Client 1.11.18 / logo Alliance officiel verrouillé
- Publie Hub Client AWM 1.11.18 avec le logo Alliance officiel conservé pixel pour pixel.
- Le badge Hub orange reste un asset séparé dans le menu WordPress, le bandeau d'administration et le portail `/hub/`.
- Retire le SVG composite qui redessinait le logo Alliance afin d'empêcher toute réutilisation d'une variante du logo.
- Conserve le moteur de déploiement, le Connector, les données CRM et les autres modules inchangés.

# 4.5.109 — Hub Client 1.11.16
- Publication de Hub Client 1.11.16 avec logo Hub canonique renommé/versionné.

## 4.5.108 - 2026-09-05

- Publie Hub Client 1.11.15 avec auto-reparation des copies dupliquees et preuve de runtime charge.
- Le deploiement distant peut maintenant basculer vers la copie canonique Hub Client sans demander une nouvelle liaison CRM.
- La roadmap suit la validation du shell Premium une fois le runtime 1.11.15 confirme.

## 4.5.108 - 2026-09-05
- Corrige l inventaire Hub Client sur les installations historiques dont le dossier de plugin n est pas canonique.
- Utilise la version Connector comme preuve de presence Hub Client lorsque l ancien agent renvoie un inventaire incomplet.
- Refuse de marquer un deploiement comme reussi si la version cible n est pas confirmee apres installation.
- Aligne le statut : Hub a verifier ne peut plus afficher A jour.

## 4.5.106 — 2026-09-05

- Publie Hub Client AWM 1.11.13 avec le logo Hub AWM complet et le badge orange Hub.
- Le panneau Hub Client local adopte le style Premium sombre de Hub AWM.
- Aucun changement aux donnees CRM, au Connector ou au moteur de deploiement.

## 4.5.105 — 2026-09-04
- Ajoute un bloc Roadmap AWM Premium dans la zone centrale de Core → Mises à jour.
- Le bouton Ouvrir la roadmap mène directement vers https://alliancewebmarketing.ca/hub/roadmap/ dans un nouvel onglet.
- Le bloc réutilise les variables CSS du shell AWM et le titre de synchronisation de la publication active.
- Le lien comble utilement l’espace entre le titre et les KPI sans alourdir l’interface.

## 4.5.104 — 2026-09-04
- Recompose la zone supérieure de Core → Mises à jour pour supprimer le grand espace vide central : les quatre indicateurs sont maintenant intégrés directement sous le titre, à gauche de la carte Publication active.
- Compacte la grille des sites clients afin que Site, Hub Client, Tech, Statut, Mises à jour et Actions restent rapprochés, sans colonne centrale surdimensionnée.
- Ajoute une action Réparer sur les sites dont l’inventaire Hub Client n’est pas synchronisé; Core retente le Connector, recharge l’inventaire et affiche le diagnostic si la réparation automatique échoue.
- Conserve le CSS Premium clair/sombre, l’import rapide de Suite, Publication & historique et les contrôles de sécurité existants.

## 4.5.103 — 2026-09-04

- Rétablit un import rapide de la Suite directement dans Core → Mises à jour.
- Ajoute une zone compacte « Importer une nouvelle Suite (.zip) » visible dans le bloc Publication active.
- Accepte le glisser-déposer ou la sélection de fichier depuis l’ordinateur.
- Le formulaire réutilise le validateur Core existant : version supérieure, manifeste, 10 paquets, roadmap et SHA-256.
- Le canal rapide publie en Stable et récupère automatiquement les notes incluses dans le ZIP lorsque le champ de notes est vide.
- Conserve le panneau Publication & historique pour les réglages avancés et l’historique.

## 4.5.102 — 2026-09-04

- Corrige le bouton « Publication & historique » de Core → Mises à jour.
- Fusionne les classes CSS/JavaScript du bouton afin que le gestionnaire d’ouverture soit réellement attaché.
- Le bouton ouvre maintenant le panneau « Publication, notes et historique » puis défile jusqu’à celui-ci.
- Ajoute un lien serveur de repli avec `awm_update_panel=publication` afin que le panneau reste accessible même si JavaScript est indisponible.
- Conserve le CSS Premium compact introduit en 4.5.101.

## 4.5.101 — 2026-09-04

- Refonte UX complète de Core → Mises à jour avec une vue compacte adaptée à la ligne de flottaison.
- Les modules hébergés chez Alliance ne sont plus répétés dans chaque carte de site client.
- Les sites clients passent en tableau compact avec recherche, filtre, statut, Hub Client, Tech AWM et actions directes.
- Publication active, métriques, mises à jour Alliance et déploiement distant sont concentrés dans la partie supérieure de l’écran.
- Publication d’une Suite, notes et historique restent accessibles dans un panneau repliable sans alourdir la vue principale.
- Le nouveau rendu respecte les variables CSS du shell AWM et reste responsive en clair/sombre.

## 4.5.100 — 2026-09-04
- Clarifie la carte « Installer sur Alliance » : Hub Client est un paquet client, pas un module local manquant.
- Masque le rollback local Hub Client lorsqu’il n’est pas installé sur Alliance.
- Affiche immédiatement le nombre et le nom des modules Alliance réellement à mettre à jour.
- Met à jour l’inventaire local côté navigateur après chaque installation réussie afin d’éviter les faux écarts sans rechargement.
- Conserve la séparation stricte entre mise à jour Alliance et déploiement distant vers les sites clients.

## 4.5.99 — 2026-09-04
- Corrige le faux blocage « La roadmap doit contenir au moins un avancement » pendant la publication d une Suite.
- Normalise les anciens `roadmap_sync.module_updates` texte en lignes structurées compatibles.
- Exige toujours un avancement réel pour chaque module dont la version augmente.
- Synchronise le registre public sur Core 4.5.99, Hub Client 1.11.12 et Tech AWM 1.4.2.

## 4.5.98 — 2026-09-04
- Corrige le 403 persistant de vérification Tech AWM depuis Hub Client.
- Ajoute un canal Connector de secours admin-ajax limité aux opérations Tech.
[Ligne masquée automatiquement par Core AWM : contenu sensible potentiel]
- Auto-répare l'approbation Core uniquement lorsqu'un secret Connector valide et le domaine jumelé sont confirmés.
- Une révocation explicite reste définitive car elle supprime le secret Connector.

## 4.5.97 — 2026-09-04
- Corrige les déploiements distants Hub Client/Tech qui pouvaient échouer avec `Forbidden` au téléchargement du paquet.
- Les paquets distants sont maintenant servis par un endpoint REST Core dédié avec lien signé temporaire, lié au secret Connector du client et au `client_id` CRM autorisé.
- Le téléchargement ne dépend plus de `admin-post.php`, ce qui évite les refus de certains WAF/hébergements sur les appels serveur-à-serveur.
- Le contrôle d'accès reste strict : client approuvé, canal Connector actif, permission Tech si applicable, expiration, signature HMAC et SHA-256 du paquet.
- Core transmet aussi l'authentification du canal distant dans le corps HTTPS en repli, sans supprimer l'en-tête existant.
- Publie Hub Client AWM 1.11.11 avec authentification distante plus robuste et messages d'erreur de téléchargement explicites.
- Les nouvelles publications stockent les ZIP de modules chiffrés au repos via le coffre Core; les anciennes publications sont migrées progressivement sans laisser de copie en clair après migration.
- Le déchiffrement n existe qu en mémoire/fichier temporaire protégé au moment d une installation ou d un téléchargement autorisé.

## 4.5.96 — 2026-09-04
- Publie CRM AWM 1.6.17 et Hub AWM 4.5.51.
- La fiche client CRM affiche désormais en permanence **Hub Client & connexion** et **Services**.
- Le Connector et l autorisation restent sécurisés par Core; les abonnements restent propriétaires de CRM et leur application reste propriétaire de Hub.
- Aucun doublon client ou service maître n est introduit.

## 4.5.95 — 2026-09-04

- Renforce l'authentification Hub Connector utilisée par Tech AWM.
- Core peut retrouver la fiche CRM jumelée à partir du hash du secret Connector si un ancien `client_id` local est devenu obsolète.
- Le domaine lié reste vérifié avant toute autorisation et la récupération d'identifiant est journalisée.
- Publie Hub Client 1.11.10 et Tech AWM 1.4.1.
- CRM demeure l'unique source canonique des clients; aucune fiche parallèle n'est créée.

## 4.5.94 — 2026-09-04
- Publie Hub AWM 4.5.50 avec la correction des warnings `Cannot modify header information` sur les routes Clients.
- Les redirections vers la fiche client CRM canonique sont déclenchées avant le rendu de l admin WordPress.
- La source unique des clients reste CRM AWM et les modules conservent uniquement leurs données métier liées au même `client_id`.
- La validation terrain CallTracker → Clients et Hub → Clients reste dans Maintenant.

## 4.5.93 — 2026-09-04
- Corrige la navigation Thech AWM : le menu principal ouvre son tableau de bord Premium; CRM reste uniquement la source canonique des clients.
- Publie Tech AWM 1.4.0 avec conversation multi-tour corrigée (`assistant` → `output_text`, utilisateur → `input_text`).
- Ajoute la fenêtre Tech AWM flottante directement sur le front-end des pages WordPress/Elementor autorisées.
- Tech AWM résout maintenant une URL interne fournie depuis Hub Client vers le `post_id` réel et conserve cette page comme cible de `Appliquer` et du rollback.
- Publie Hub Client AWM 1.11.9 avec le logo produit Hub AWM canonique dans le portail et l administration locale.
- Le logo client provenant de CRM ne remplace plus l identité visuelle du produit Hub.
- La validation terrain du chat front-end et du logo reste classée Maintenant dans la roadmap.

## 4.5.92 — 2026-09-04
- Corrige le déploiement distant de Tech AWM autonome : lorsqu il est activé dans la fiche CRM, Core peut désormais l installer même s il est absent du site client.
- Les sites distants affichent explicitement Tech AWM « À installer » ou « Désactivé côté Alliance ».
- Le serveur refuse toute installation distante de Tech AWM si le client ne l a pas activé depuis sa fiche CRM.
- Publie Hub Client 1.11.8 avec visibilité Tech AWM indépendante de la présence préalable du runtime.

## 4.5.91 — 2026-09-04
- Publie Hub Client AWM 1.11.7.
- Hub Client utilise exactement le logo Hub AWM, sans variante ni badge client.
- Hub Client devient explicitement indépendant de CallTracker : aucune campagne n’est requise pour le jumelage, l’administration ou le portail `/hub/`.
- L’absence de campagne devient un état informatif limité aux fonctions CallTracker/Formulaires.
- Les alertes passives de sous-modules ne déclenchent plus le modal d’erreur Premium de l’administration Hub Client.

## 4.5.90 — 2026-09-04
- Harmonise la Suite autour de CRM AWM comme source unique des clients.
- Publie CRM AWM 1.6.16, Hub AWM 4.5.49 et Tech AWM 1.3.0.
- La fiche client CRM devient la vue unifiée avec les onglets des modules reliés au même `client_id`.
- Hub et Tech ne maintiennent plus de fiche client maître parallèle.
- Met à jour le bootstrap Tech et la roadmap centrale.

## 4.5.89 — 2026-09-04
- Publie **Hub Client AWM 1.11.6** avec le correctif de l’erreur critique `AWM_Client_Hub_Form_Capture::render_admin()`.
- Le bloc Réception directe des formulaires accepte maintenant correctement les 2 arguments transmis par `awm_client_hub_admin_after_connection`.
- Ajoute une compatibilité défensive si ce rendu est invoqué avec un seul argument par une intégration plus ancienne.
- La roadmap conserve la validation terrain du Hub Client sous Maintenant jusqu’au test sur un site client lié.

## 4.5.88 — 2026-09-04
- Ajoute dans **Déploiement à distance** un bouton **Télécharger Hub Client X.Y.Z**.
- Le bouton télécharge uniquement le ZIP Hub Client de la publication active, jamais la Suite complète.
- La version affichée est dynamique et suit automatiquement le paquet `hub_client` de la publication active.
- Le téléchargement exige une session administrateur AWM et un nonce WordPress; le SHA-256 du paquet est revérifié avant envoi.
- Chaque téléchargement manuel est journalisé dans le journal de sécurité Core.

## 4.5.87 — 2026-09-04
- Publie Hub AWM 4.5.48 et Tech AWM 1.2.0.
- Thech AWM réutilise désormais le moteur de recherche clients canonique au lieu d une table Sites parallèle.
- Le shell commun reconnaît les fiches ouvertes en contexte Tech et garde l onglet principal Thech AWM actif.
- La navigation Thech remplace Sites par Clients; IA, Consommation, Mémoire et Journal restent inchangés.
- Chaque fiche client peut maintenant afficher l onglet Tech injecté par le paquet autonome.
- Activation et permissions sont gérées à même la fiche client, toujours exclusivement côté Alliance.

# Changelog Core AWM

## 4.5.86 — 2026-09-04
- Ajoute **Tech AWM 1.1.0** comme dixième paquet physique officiel de la Suite.
- Le gestionnaire de mises à jour reconnaît `tech-awm/tech-awm.php`, son ZIP, sa version, son SHA-256 et son rollback.
- Ajoute un bootstrap de migration signé pour installer Tech AWM lors du premier passage depuis Core 4.5.85, puis l enregistrer dans la publication active.
- La Suite complète passe de 9 à 10 paquets physiques.
- Hub Client 1.11.5 doit être déployé avant la première installation distante de Tech AWM sur un site client.

## 4.5.85 — 2026-09-04

- Publie Hub AWM 4.5.46 / Thech AWM 1.0.2 dans la Suite unique 4.5.85.
- Ajoute au shell commun la couleur et l icône configurables de Thech AWM afin que son en-tête reprenne exactement le langage visuel des autres modules.
- Harmonise les écrans Thech Sites, IA, Consommation, Mémoire et Journal avec le design Premium partagé.
- Supprime le doublon du bouton Light/Dark lorsque le shell Core est déjà actif.
- Conserve Tech AWM directement dans Hub Client 1.11.4 et l activation exclusivement côté Alliance.
- Synchronise la roadmap et maintient la validation visuelle réelle sous Maintenant jusqu au test sur alliancewebmarketing.ca.

## 4.5.84 — 2026-09-04

- Reconnaît **Thech AWM** comme contexte administratif autonome au lieu de le traiter comme une page interne du Hub.
- Ajoute le shell Thech AWM avec les onglets Sites, IA, Consommation, Mémoire et Journal.
- Publie Hub AWM 4.5.45 / Thech AWM 1.0.1 dans la Suite unique 4.5.84.
- Conserve Thech intégré physiquement au paquet Hub et Tech AWM intégré au paquet Hub Client.
- Synchronise la roadmap publique avec le nouvel onglet principal Thech AWM.

## 4.5.83 — 2026-09-04

- Intègre les routes Connector privées de **Thech AWM / Tech AWM** dans Core sans ajouter de secret client supplémentaire.
- Authentifie `tech/status`, `tech/chat` et `tech/action-result` avec le jumelage Hub Client existant avant délégation au Hub.
- Publie **Hub AWM 4.5.44** et **Hub Client AWM 1.11.4** dans la Suite unique.
- Ajoute **Thech AWM 1.0.0** comme dixième module logique de la roadmap tout en conservant neuf paquets physiques dans la Suite.
- Conserve les écritures Elementor dans le moteur sécurisé Hub Client déjà livré avec snapshots et contrôle SHA-256.

## 4.5.82 — 2026-09-03

- Publie **Hub Client AWM 1.11.3**; CallTracker AWM reste en 1.10.0.
- Applique au routage client le modèle Premium adaptatif validé avec gros pictogrammes, typographie renforcée et stepper clair.
- Dérive tous les accents, contours, halos et fonds des couleurs configurées pour le client au lieu d imposer une palette fixe.
- Ajoute un contraste automatique pour le texte des CTA principaux.
- Condense l horaire dans deux tableaux et renforce l apparence de bouton de Voir la campagne, Configurer le routage et Enregistrer le routage.
- Synchronise la roadmap publique et les versions de la Suite.

## 4.5.81 — 2026-09-03

- Publie **Hub Client AWM 1.11.2**; CallTracker AWM reste en 1.10.0.
- Refonte compacte de **CallTracker → Routage** côté client : destinations, fuseau et débordement sont regroupés et les horaires occupent moins de hauteur.
- Remplace les champs d heure natifs par des listes 24 h par tranches de 15 minutes afin de supprimer le sélecteur navigateur blanc visible en thème sombre.
- Améliore les blocs fermetures spéciales, Message 2, responsive et action d enregistrement.
- Synchronise la roadmap publique et les versions de la Suite avec cette livraison UX.

## 4.5.80 — 2026-09-03

- Publie **Hub Client AWM 1.11.1** et **CRM AWM 1.6.15**; CallTracker AWM reste en 1.10.0.
- Ajoute le filtrage sécurisé `campaign_id` aux routes clientes Appels et Leads afin qu une fiche de campagne puisse lire uniquement ses propres données.
- Hub Client permet de cliquer sur une campagne et d ouvrir une fiche affichant son **nom**, ses **appels**, ses **formulaires** et son **CPL**.
- CRM protège les forfaits historiques : **10 $ + taxes** s applique uniquement aux nouveaux Funnels créés explicitement et jamais rétroactivement aux campagnes existantes.
- Synchronise la roadmap publique et les versions de la Suite avec cette livraison.

## 4.5.79 — 2026-09-02

- Publie **CallTracker AWM 1.10.0**, **CRM AWM 1.6.14** et **Hub Client AWM 1.11.0**.
- Ajoute les routes clientes sécurisées `client/funnels` et `client/funnels/create` afin que CRM demeure la source du service Funnel à 10 $/mois.
- Sépare la création du service, la préparation de la campagne et l achat du numéro; la facturation CRM ne démarre qu après attribution confirmée du numéro.
- Hub Client adopte le parcours **Nouveaux services → Nouveau funnel → Configuration du numéro → Formulaire/Webhook → Routage**.
- Étend la route cliente de routage aux horaires, jours fermés, fuseau, destination hors heures, débordement et délai sans exposer les secrets Twilio.
- Conserve les contrôles de propriété client, les confirmations d achat, les protections anti-double achat et les journaux Core.
- Synchronise la roadmap publique avec cette livraison tout en conservant la validation terrain sous Maintenant.

## 4.5.78 — 2026-09-02

- Publie CallTracker AWM 1.9.9 et Hub Client AWM 1.10.2.
- Ajoute la route publique Core `callink/v1/forms/webhook/{jeton}` déléguée à CallTracker, avec jeton 256 bits par funnel.
- Ajoute la route cliente authentifiée de test du webhook sans création de faux lead.
- Les formulaires externes sont attribués au bon funnel, stockés dans l historique CallTracker et intégrés aux Leads/CPL existants.
- Hub Client affiche l URL à copier, l état du dernier envoi et la documentation d installation directement dans l espace client.
- La roadmap publique est synchronisée avec cette livraison sans clôturer les validations terrain encore en cours.

## 4.5.77 — 2026-09-02

- Publie CallTracker AWM 1.9.8, CRM AWM 1.6.13 et Hub Client AWM 1.10.1.
- Ajoute les routes clientes sécurisées de recherche et d achat de numéros CallTracker.
- L achat client crée un Funnel CallTracker à 10 $/mois, sa campagne, son numéro et son service CRM associé.
- Aucun identifiant Twilio n est exposé au Hub Client; Core vérifie le client, le module CallTracker et la confirmation du prix avant l opération.
- La roadmap publique classe cette première autonomie Numéros/Funnel comme livrée et garde le routage client avancé comme prochaine livraison rapide.

## 4.5.76 — 2026-09-02

- Publie CallTracker AWM 1.9.7 et Hub AWM 4.5.43.
- Ajoute au routeur Core la route TwiML `callink/v1/routing-next` utilisée pour le débordement séquentiel signé par Twilio.
- Met à jour la roadmap publique avec le Lot C phase 1 livré et sa validation terrain maintenue sous Maintenant.
- Conserve équipes, priorités, stratégies multi-tentatives, modèles et test simulé dans le Lot C phase 2.

## 4.5.75 — 2026-09-02

- Publie Hub AWM 4.5.42.
- Roadmap publique : les états **Livré**, **Maintenant**, **Prochaines étapes** et **Futur** ouvrent maintenant une fenêtre popup de lecture détaillée.
- Met à jour le registre central des versions, la publication active et les dernières implantations afin que cette amélioration soit visible immédiatement sur `/hub/roadmap/`.

## 4.5.74 — 2026-09-02

- Met à jour la roadmap publique CallTracker sans modifier le runtime CallTracker 1.9.6.
- Porte la section **CallTracker → Futur** à **20 orientations distinctes**.
- Ajoute le retour automatique des conversions qualifiées vers Google Ads et l attribution Meta Ads + Microsoft Ads.
- Ajoute le Call Whisper contextuel, le constructeur visuel des parcours d appel et le routage intelligent par compétence, région et disponibilité.
- Ajoute le contrôle qualité des appels assisté par IA, la détection de spam/fraude et le centre d intelligence des anomalies CallTracker.
- Conserve les éléments **Maintenant** et **Prochaines étapes** existants afin de ne pas classer comme livrées les validations terrain, le Lot C, le Lot D ou le Lot E.
- Met à jour le contrat `roadmap_sync` afin que la vraie page `https://alliancewebmarketing.ca/hub/roadmap/` reçoive ces orientations lors du déploiement de la Suite.

## 4.5.73 — 2026-08-31

- Publie Studio AWM 1.14.0 dans la Suite complète.
- Transforme Studio → Optimisation globale en workflow SEO de production avec **Optimiser tout**, **SEO rapide** et passage SEOPress immédiat.
- Les optimisations globales sont exécutées séquentiellement pour limiter les timeouts et chaque écriture SEOPress conserve le snapshot Hub Client 1.10.0.
- Ajoute une Recherche SEO rapide fondée sur le contenu réel, le service/sujet et la zone fournis, avec mot-clé principal, variantes, intention, H1 et questions faciles à réutiliser.
- Ajoute l optimisation ciblée bloc par bloc pour les pages Elementor existantes avec plan révisable et conservation des widgets/formulaires/éléments non ciblés.
- Les pages protégées sont exclues d Optimiser tout; URL, canonical et indexation restent sous contrôle humain.
- Met à jour le registre des versions, le paquet Studio embarqué, les Dernières implantations, Vision par module et Plan de développement via le contrat `roadmap_sync` vers `https://alliancewebmarketing.ca/hub/roadmap/`.

## 4.5.72 — 2026-08-31

- Publie Hub AWM 4.5.41 et Studio AWM 1.13.1.
- Harmonise le menu WordPress AWM : logo Alliance commun, pictogramme par module, dimensions identiques et ordre Core → Hub → CRM → CallTracker → Stats → Assistant → Soutien → Studio.
- Studio affiche maintenant le libellé **Studio AWM** et Core reconnaît son contexte de shell séparément de Hub.
- Corrige la roadmap Hub Client : version 1.10.0 et snapshots/restauration reclassés en Livré.
- Rend les versions de Suite strictement croissantes dans Core → Mises à jour.
- Exige les 9 modules et un contrat de synchronisation `roadmap_sync` dans `manifest.json` pour toute future publication.
- Ajoute la livraison 4.5.72 aux Dernières implantations et harmonise Vision par module / Plan de développement.

## 4.5.71 — 2026-08-31

- Publie Studio AWM 1.13.0 et Hub Client AWM 1.10.0.
- Ajoute la reprise des pages Elementor existantes depuis Studio → Optimisation globale.
- Ajoute un plan de modification IA révisable avant application, limité aux widgets/réglages autorisés et sans suppression automatique.
- Ajoute des snapshots restaurables avant écriture Elementor ou SEOPress, avec garde de concurrence par empreinte SHA-256.
- Réutilise le moteur SEO Studio pour préparer les valeurs SEOPress des pages existantes tout en laissant URL, canonical et indexation sous contrôle humain.
- Met à jour la roadmap publique, Vision par module, Plan de développement, versions et paquet Studio embarqué.
- Hub AWM 4.5.40, CRM 1.6.12, CallTracker 1.9.6, Stats 1.3.0, Assistant 1.5.0 et Soutien 1.5.0 restent inchangés.

## 4.5.70 — 2026-08-31

- Publie Studio AWM 1.12.0 et Hub AWM 4.5.40.
- Embarque le paquet Studio 1.12.0 vérifié SHA-256 pour installer la galerie autonome même après une mise à jour partielle.
- Ajoute à la roadmap publique la livraison **Galerie serveur autonome des maquettes Studio 4.5.70**.
- Met à jour les versions, les dernières implantations, la Vision par module et le Plan de développement Studio.
- Maintient Core comme fournisseur exclusif de sécurité et de connexions; aucune préparation, maquette, image, configuration IA, analyse ou historique Studio n'est déplacé dans Core.

## 4.5.69 — 2026-08-31

- Publie Studio AWM 1.11.1 et Hub AWM 4.5.39.
- Embarque le paquet Studio 1.11.1 vérifié SHA-256 afin de réparer automatiquement une installation partielle.
- Studio reprend exclusivement la route `callink-studio`, son rendu et ses actions AJAX; l'ancien contrôleur Hub est neutralisé.
- Le bouton **Voir les 3 maquettes** possède une URL serveur complète et le panneau utilise des identifiants exclusifs à Studio.
- Hub 4.5.39 force le retrait des anciennes versions contenant encore le moteur Studio.
- Core ne lit ni n'écrit aucune préparation, maquette, image, profil, audit, historique ou configuration IA Studio.
- Les seuls services partagés avec Studio restent la sécurité et les connexions.

## 4.5.68 — 2026-08-30

- Sépare complètement Studio AWM du code métier de Core et de Hub.
- Ajoute Studio AWM 1.11.0 comme module autonome avec son propre ZIP, sa version et ses permissions.
- Core partage seulement la sécurité (accès, permissions, coffre et journal de sécurité) et les connexions sécurisées utilisées par Studio.
- Ajoute le transport générique et limité `AWM_Core_Remote_Client` pour les routes Studio autorisées vers Hub Client.
- Ajoute une migration de transition depuis 4.5.67 : Core installe une fois le paquet Studio autonome embarqué, puis les versions suivantes utilisent le paquet normal `studio-awm-X.Y.Z.zip` de la Suite.
- Le gestionnaire de mises à jour sait ensuite installer, inventorier, mettre à jour et restaurer Studio comme tout autre module.
- Aucune préparation, maquette, image, profil, audit, historique ni configuration IA Studio n'est stocké par Core.

## 4.5.67 — 2026-08-29

- Publie Hub AWM 4.5.37 et Studio AWM 1.10.4.
- Corrige la disparition du bloc Maquettes lorsque l URL ne contient plus l identifiant de préparation.
- Ajoute une reprise automatique, un sélecteur des préparations récentes et un mode nouvelle page explicite.
- Rend les trois variantes A/B/C et les boutons Écran, Tablette et Mobile côté serveur avant toute exécution JavaScript.

## 4.5.66 — 2026-08-29

- Publie Hub AWM 4.5.36 et Studio 1.10.3 afin de forcer le remplacement du build réellement exécuté dans WordPress.
- Studio reconstruit automatiquement le grand aperçu lorsque le HTML actif ne contient que les trois miniatures, la barre des formats et les actions.
- L actif `studio-preview.js` utilise maintenant une empreinte SHA-256 de son contenu plutôt qu un simple horodatage.
- Core conserve l empreinte SHA-256 de chaque paquet local installé et peut reconnaître un nouveau build portant la même version lors des publications suivantes.
- La sauvegarde et le rollback restaurent aussi l empreinte du build précédent.
- Les requêtes d installation locales disposent d une limite adaptée, d erreurs réseau lisibles et poursuivent les modules suivants même lorsqu un module échoue.

## 4.5.65 — 2026-08-28

- Publie Studio 1.10.2 et Hub AWM 4.5.35 avec le véritable visualiseur résilient rendu côté serveur.
- Corrige l erreur de conditionnement de la Suite 4.5.64 : l archive distribuée contenait une implantation antérieure du visualiseur malgré les mêmes numéros de version.
- Force une nouvelle installation par incrément de version afin que Core ne classe plus le correctif comme déjà à jour.
- Invalide les caches de fichiers PHP et OPcache après installation ou rollback d un module.
- Conserve Hub Client 1.9.5, CRM 1.6.12, CallTracker 1.9.6, Stats 1.3.0, Assistant 1.5.0 et Soutien 1.5.0 sans changement.

## 4.5.64 — 2026-08-28

- Publie Studio 1.10.1 et Hub AWM 4.5.34.
- Rend systématiquement la maquette sélectionnée côté serveur dans le grand aperçu Studio.
- Ajoute des replis HTML fonctionnels pour A/B/C, Écran/Tablette/Mobile, plein écran et approbation.
- Charge le contrôleur de prévisualisation dans l en-tête et utilise l empreinte du fichier pour invalider les anciens caches.
- Synchronise variante, format, états ARIA, champ d approbation et URL sans dépendre du script inline historique.
- Retire l observation globale du DOM afin d éviter toute réinitialisation en boucle du grand aperçu.
- Hub Client 1.9.5 et les autres modules restent inchangés.

## 4.5.63 — 2026-08-27

- Publie Studio 1.10.0 et Hub AWM 4.5.33.
- Ajoute un script externe versionné pour fiabiliser les trois maquettes et les boutons Écran, Tablette et Mobile.
- Remplace les pseudo-liens de maquette par de vrais boutons accessibles et ajoute une vue plein écran.
- Ajoute le panneau Page générée et les raccourcis directs vers la page, Elementor, le SEO, le projet, une nouvelle création et une correction.
- Ajoute un contrôle qualité automatique avant publication basé sur les résultats réels du site client.
- Conserve rendu validé, nombre d éléments, médias, score SEO, SEOPress et moteur de layout dans la préparation.
- Ajoute les orientations Studio approuvées au Futur de la roadmap.
- Hub Client 1.9.5 reste compatible et inchangé.

## 4.5.62 — 2026-08-27

- Publie Studio 1.9.0 et Hub AWM 4.5.32.
- Corrige la zone de maquette vide : l aperçu complet est maintenant forcé visible avant Elementor.
- Ajoute trois maquettes réellement sélectionnables par groupe : A Conversion, B Premium et C Éditoriale.
- Rend fonctionnelles les vues Écran, Tablette et Mobile avec largeurs et comportements responsive distincts.
- L approbation enregistre la proposition sélectionnée comme blueprint officiel de la page.
- « Générer 3 autres propositions » crée un nouveau groupe; une correction par prompt part de la maquette sélectionnée.
- Migre automatiquement les préparations 1.8.0 existantes vers le nouveau système à trois propositions.
- Roadmap, documentation et Publication active synchronisées.

## 4.5.61 — 2026-08-27
- Ajoute le cycle d approbation des maquettes Studio avant création Elementor.
- Ajoute la génération de variantes et les corrections de maquette par prompt.
- Bloque la création unitaire tant que la maquette n est pas approuvée.
- Ajoute une publication finale contrôlée après vérification du brouillon réel.
- Publie Studio 1.8.0 et Hub Client 1.9.5 dans le registre central.

## 4.5.60 — 2026-08-27
- Publie Studio 1.7.0, Hub 4.5.30 et Hub Client 1.9.4.
- Corrige le moteur Page de référence afin que le profil analysé modifie réellement le blueprint et le rendu Elementor.
- Extrait Hero, largeur, alternances image/texte, densité, espacements, rayons, CTA et effets depuis la référence.
- Applique le niveau d inspiration Légère / Moyenne / Élevée avant la création.
- Conserve exclusivement les couleurs, typographies, textes et médias du client.
- Réapplique aussi la référence aux préparations Studio déjà existantes lors de leur enregistrement.

## 4.5.59 — 2026-08-27
- Publie Studio 1.6.0 et Hub 4.5.29; Hub Client 1.9.3 reste compatible.
- Sépare visuellement et fonctionnellement **Créer une page** et **Batch local** dans Studio.
- Ajoute quatre espaces clairs : Créer une page, Batch local, Optimiser les pages et Historique.
- La création unitaire suit trois étapes simples et ne demande plus aucun champ Batch.
- Les options avancées sont repliées afin de conserver un formulaire principal court.
- Le diagnostic du site et la configuration IA restent communs aux espaces Studio.
- Roadmap, documentation et Publication active harmonisées.

## 4.5.58 — 2026-08-27
- Publie Studio 1.5.0, Hub 4.5.28 et Hub Client 1.9.3.
- Ajoute l analyse sécurisée d une page publique de référence et trois niveaux d inspiration.
- Ajoute un profil de design contrôlé au blueprint : hauteur Hero, espacements, rayons, animations et effets de survol.
- Applique la typographie Elementor du client aux contenus générés.
- Interdit explicitement la copie du texte, des images, de la marque et des couleurs de la référence.
- Synchronise roadmap, documentation et Publication active.

## 4.5.57 — 2026-08-27
- Publie Studio 1.4.0, Hub 4.5.27 et Hub Client 1.9.2.
- Ajoute « ✦ Tout générer avec l IA » après saisie du mot-clé principal et des variantes.
- Rend éditables avant lancement tous les blocs du blueprint ainsi que titre, ALT, légende, description et prompt de chaque photo.
- Ajoute les modes Photos IA, Photos du client et Mixte pour éviter toute génération inutile.
- Affiche Studio avec sa propre version dans Mises à jour AWM tout en indiquant qu il reste intégré à Core, Hub et Hub Client.
- Roadmap, documentation et Publication active harmonisées.

# Changelog Core AWM

## 4.5.56 — 2026-08-27
- Publie Studio 1.3.0 et Hub 4.5.26.
- Ajoute la longueur cible des blocs de contenu aux blueprints Studio et à leur optimisation IA.
- Le moteur SEO génère maintenant 5 à 8 variantes du mot-clé principal.
- Ajoute les endpoints AJAX sécurisés nécessaires au flux une page et à la sauvegarde avant lancement.
- Le loader AWM suit contenu, images, SEO, Elementor, SEOPress et validation.
- Roadmap, documentation et Publication active harmonisées avec la Suite 4.5.56.

## 4.5.55 — 2026-08-27
- Studio 1.2.0 ajoute une préparation complète avant lancement avec score SEO visuel et tableau SEOPress modifiable.
- Ajoute les suggestions ✦ IA champ par champ avec validation humaine explicite.
- Conserve les aperçus images côté Alliance et permet la régénération individuelle d une image par prompt.
- Ajoute le mode Batch local jusqu à 12 villes avec traitement séquentiel, score SEO et mesure de similarité.
- Ajoute l audit signé de toutes les pages WordPress/Elementor et la révision SEOPress des pages existantes.
- Protège les pages système par confirmation explicite avant toute modification SEO.
- Corrige les valeurs image_quality/image_size absentes ou invalides sans avertissement PHP.
- Publie Hub 4.5.25 et Hub Client 1.9.1; roadmap, documentation et Publication active sont harmonisées.

## 4.5.54 — 2026-08-27
- Studio 1.1.0 ajoute le SEO SEOPress automatique pour les nouvelles landing pages.
- Génère au moins deux images originales par page via le modèle image configuré dans Core.
- Nomme les médias `nom-de-la-page-0001.jpg`, `-0002.jpg` et suivants; `0001` devient l’image mise en avant.
- Transmet à Hub Client seulement les images encodées et métadonnées contrôlées, jamais la clé API.
- Publie Hub 4.5.24 et Hub Client 1.9.0; roadmap, documentation et Publication active sont harmonisées.


## 4.5.53 — 2026-08-27
- Corrige le flux Studio ayant pu produire un brouillon Elementor blanc.
- Publie Hub Client 1.8.9 avec détection Containers / Sections-Columns et validation du rendu frontend.
- Ajoute la commande sécurisée de réparation d un brouillon Studio existant.
- Enregistre le moteur de rendu, l aperçu, le nombre d éléments et l état de validation dans l historique Studio.
- Publie Hub AWM 4.5.23 et synchronise roadmap, documentation et Publication active.

## 4.5.52 — 2026-08-27
- Publie Hub AWM 4.5.22 avec une documentation publique entièrement harmonisée au thème sombre Alliance de la roadmap.
- Synchronise les versions courantes des neuf modules dans la documentation.
- Documente Studio comme module officiel de création WordPress/Elementor.
- Corrige la documentation CRM : WHMCS devient un connecteur facultatif plutôt qu une dépendance obligatoire.
- Clarifie les responsabilités Core / Hub / Hub Client / Soutien et les règles de sécurité.


## 4.5.51 — 2026-08-27
- Place le Plan de développement interactif avant Dernières implantations.
- Conserve les neuf modules dans un sélecteur unique et synchronisé.
- Expose un seul grand graphique dynamique avec Livré, Maintenant, Prochaines étapes et Futur.
- Synchronise les descriptions détaillées du module choisi sans dupliquer les données de roadmap.
- Publie Hub AWM 4.5.21 et maintient Studio comme neuvième module officiel.

## 4.5.50 — 2026-08-27
- Ajoute un contexte visuel Studio au shell administratif partagé.
- Studio possède désormais son accent, son icône et son en-tête propres au lieu d'hériter du contexte Hub.
- Le mode sombre/clair Studio suit exactement les réglages globaux Alliance.

## 4.5.50 -- 2026-08-27
- Ajoute **Studio AWM** comme chantier prioritaire de la Suite.
- Ajoute le canal serveur-à-serveur sécurisé Core → Hub Client pour les commandes Studio.
- Core valide l’approbation du client, le domaine lié et le secret local chiffré avant toute action distante.
- Ajoute l’analyse technique du site : Elementor, Elementor Pro, thème, WordPress, PHP, logo et palette disponible.
- Ajoute la création distante d’un brouillon WordPress/Elementor avec journalisation centrale et historique par client.
- Interdit la publication directe dans ce premier lot; Studio crée uniquement des brouillons.
- N’envoie aucun secret Core/IA au site client et n’autorise aucun PHP, JavaScript ou HTML arbitraire provenant du brief.
- Ajoute le moteur IA Studio dans Core via une API serveur-à-serveur avec sortie JSON structurée, modèle configurable et clé chiffrée dans le coffre Core.
- Utilise automatiquement les modèles métier contrôlés comme repli si le moteur IA est absent ou indisponible.
- Place maintenant la validation terrain, la modification conversationnelle et les snapshots/rollback dans les prochaines priorités.

---

## 4.5.48 -- 2026-08-27
- Détaille dans **Futur — CallTracker** les douze axes fonctionnels approuvés après comparaison concurrentielle, sans lancer leur développement.
- Ajoute DNI, parcours du lead, attribution marketing avancée, SMS bidirectionnel et automatisations SMS.
- Ajoute moteur de règles, qualification/score, Conversation Intelligence IA et assistant téléphonique IA 24/7.
- Ajoute centre d intégrations, attribution jusqu au revenu CRM et historique unifié des conversations.
- Remplace l ancien item générique « Qualité, attribution et conversion CRM » afin d éviter les doublons et de conserver un comptage Futur exact.
- Conserve les Lots C, D et E sous **Prochaines étapes**; aucune fonction CallTracker 1.9.6 n est marquée livrée artificiellement.
- Harmonise roadmap centrale, Publication active, notes de livraison et manifeste avec la Suite AWM 4.5.48.

## 4.5.47 -- 2026-08-27
- Publie Hub AWM 4.5.18 avec le tableau de progression compact de `/hub/roadmap/`.
- Calcule un résumé global depuis Livré, Maintenant, Prochaines étapes et Futur pour les huit modules.
- Calcule l avancement actif sans inclure Futur dans le dénominateur, tout en conservant Futur dans la barre et les roues.
- Ajoute un état opérationnel dérivé des éléments Maintenant : Stable, En développement, Validation ou Attention requise.
- Compare le pourcentage livré à l instantané publié de la Suite 4.5.46 et affiche l évolution en points.
- Replie l historique Livré après cinq éléments dans le Plan détaillé et dans Vision par module.
- Synchronise roue, Plan détaillé, navigation et Vision par module sur un seul module actif.
- Conserve les quatre dernières implantations, la navigation historique, les ancrages publics et la palette Alliance bleu nuit.
- Harmonise roadmap centrale, changelogs, notes de publication, manifeste et contrôles d intégrité avec la Suite AWM 4.5.47.

## 4.5.46 -- 2026-08-27
- Publie Hub AWM 4.5.17 avec la nouvelle identite visuelle sombre de la roadmap publique.
- Harmonise les surfaces, cartes, bordures, boutons, formulaires et etats interactifs avec la palette bleu nuit Alliance.
- Remplace le vert et l orange des roues par trois nuances de bleu pour **Livre**, **Maintenant** et **Prochaines etapes**; **Futur** reste gris.
- Simplifie les titres visibles des modules en Core, Hub, Hub Client, CallTracker, CRM, Soutien, Assistant et Stats, sans repeter le suffixe AWM.
- Conserve le calcul dynamique des pourcentages et proportions depuis le registre central.
- Harmonise roadmap centrale, changelogs, notes de publication, manifeste et controles d integrite avec la Suite AWM 4.5.46.

## 4.5.45 — 2026-08-25
- Publie Hub AWM 4.5.16 et la refonte dynamique de la roadmap publique.
- Limite **Dernières implantations** aux quatre versions les plus récentes et ajoute une navigation par groupes de quatre.
- Calcule un cercle segmenté pour chacun des huit modules à partir des statuts réels **Livré**, **Maintenant**, **Prochaines étapes** et **Futur**.
- Affiche le pourcentage livré, les compteurs de chaque état et un détail regroupé par module au clic.
- Conserve les ancrages publics historiques de tous les modules et la section **Vision par module**.
- Ajoute la navigation clavier, le comportement responsive et un rendu local sans dépendance graphique externe.
- Harmonise roadmap centrale, changelogs, notes de publication, manifeste et contrôles d’intégrité avec la Suite AWM 4.5.45.

## 4.5.44 — 2026-08-25
- Publie CallTracker AWM 1.9.6 avec une bascule globale contrôlée de l’ancienne plateforme vers AWM.
- Reprend par lots tous les numéros des campagnes actives, y compris ceux dont les appels entrants sont désactivés, afin qu’aucun webhook legacy ne reste maître.
- Résout les Phone Number SID, remplace le VoiceUrl et le callback de statut, retire VoiceFallbackUrl/VoiceApplicationSid puis vérifie la ressource Twilio après écriture.
- Ajoute le verrou **BASCULE AWM** : lorsque tous les numéros sont conformes, Laravel et les imports CPL historiques deviennent lecture seule jusqu’à réouverture explicite.
- Référence l’accès API Google approuvé pour le futur lot CPL / Google Ads, sans déplacer les secrets hors du coffre Core.
- Harmonise roadmap centrale, roadmap CallTracker, changelogs et Publication active avec la Suite AWM 4.5.44.

## 4.5.43 — 2026-08-25
- Publie CallTracker AWM 1.9.5 avec resynchronisation automatique des campagnes existantes après modification du numéro de réception.
- Référence la vérification du Phone Number SID, la reprise du webhook entrant AWM et l'état de routage visible dans l'éditeur.
- Journalise le succès ou l'échec de la resynchronisation sans faire de WHMCS ou de Twilio une source de vérité métier.
- Publie Hub AWM 4.5.15 : les requêtes Heartbeat/autosave de fond ne déclenchent plus le loader « Récupération des données » toutes les ~30 secondes.
- Harmonise roadmap centrale, roadmaps Hub/CallTracker, changelogs et Publication active avec la Suite 4.5.43.

## 4.5.42 — 2026-08-25

- Le loader Core de secours ignore les notices WordPress `lost-connection` / stockage local dans l'éditeur CallTracker au lieu de les présenter comme erreurs AWM.
- Publie CallTracker AWM 1.9.4 et Hub AWM 4.5.14 avec l'état de connexion intégré à la barre d'enregistrement des campagnes.
- Harmonise roadmap centrale, roadmaps modules, changelogs et Publication active avec la Suite 4.5.42.

---

## 4.5.41 — 2026-08-25

- Publie CallTracker AWM 1.9.3 et Hub Client AWM 1.8.7.
- Ajoute une route cliente authentifiée pour la lecture sécurisée des enregistrements CallTracker.
- Vérifie l appartenance de l appel au client avant de demander le média à Twilio.
- Stream le fichier temporaire côté Alliance et retire l URL Twilio brute du contrat Appels.
- Référence l idempotence, les statuts monotones, la file de reprise, l UTC canonique et le CPL par fuseau de campagne.
- Déplace le Lot B CallTracker sous Livré dans la roadmap centrale et conserve les essais Alliance/Twilio sous Maintenant.
- Harmonise changelogs, roadmaps et notes de Publication active avec la Suite 4.5.41.

---

## 4.5.40 — 2026-08-25

- Publie CRM AWM 1.6.12 avec fiches responsives pour le catalogue Services et abonnements.
- Référence les couleurs configurables des catégories et leur contraste automatique.
- Journalise les changements de couleurs de catégories depuis CRM.
- Référence la progression intégrée des opérations Services et abonnements et les résultats repris par le loader AWM.
- Conserve CallTracker AWM 1.9.2 et son chantier terrain sous **Maintenant** sans le marquer terminé artificiellement.
- Harmonise roadmap centrale, roadmap CRM, changelogs et Publication active avec la Suite 4.5.40.

---

## 4.5.39 — 2026-08-25

- Ajoute la barrière fail-closed du CPL client pour CallTracker AWM 1.9.2.
- L’API cliente sépare les campagnes approuvées des campagnes en attente et ne retourne aucune ligne CPL pour une campagne non approuvée.
- Ajoute au contrat API un état de validation avec disponibilité, campagnes approuvées, campagnes en attente et total du client.
- Refuse toute ouverture implicite si la classe de validation CallTracker est absente.
- Conserve les contrôles de propriété client et empêche toute substitution par les données d’une autre campagne.
- Journalise les approbations, invalidations, clôtures et réouvertures de migration.
- Met à jour la roadmap centrale et la Publication active pour CRM AWM 1.6.11, CallTracker AWM 1.9.2, Hub AWM 4.5.13 et Hub Client AWM 1.8.6.

---

## 4.5.38 — 2026-08-25

- Publie CRM AWM 1.6.10 et son catalogue autonome de services et abonnements indépendant des clients.
- Harmonise la roadmap centrale avec la séparation Catalogue général / Attributions clientes et publie la propagation facultative des valeurs du catalogue vers les services clients liés, sans modifier leur date, état ou autorisation de facturation.
- Ajoute des exclusions persistantes pour les services WHMCS supprimés localement afin qu’une synchronisation ultérieure ne puisse pas les recréer.
- Journalise la création et la levée d’une exclusion de service externe.
- Conserve Hub AWM comme propriétaire de l’application au portail et CRM comme propriétaire des conditions commerciales.
- Maintient le Lot A CallTracker AWM sous **Maintenant** dans la roadmap centrale.

---

## 4.5.37 — 2026-08-25

- Publie CRM AWM 1.6.9 et sa liste des services et abonnements déjà appliqués.
- Ajoute la protection des modifications locales pour les services reliés à WHMCS : la synchronisation conserve un instantané externe sans réécrire le registre CRM.
- Documente les nouveaux filtres, indicateurs, cycles de facturation et actions de modification des services.
- Limite les sélecteurs de facture et de soumission aux services appliqués au client dans Hub AWM.
- Référence l’audit et le plan d’avancement CallTracker AWM 1.9.1 dans la roadmap centrale.
- Met à jour la roadmap publique et la Publication active de la Suite 4.5.37.

---

## 4.5.36 — 2026-08-25

- Accompagne CRM AWM 1.6.8 avec les titres français des modèles courriel.
- Publie l’activation/désactivation rapide et cliquable directement dans **CRM AWM → Courriels**.
- Conserve les noms WHMCS comme références techniques sans les utiliser comme titres principaux.
- Journalise les changements d’état des modèles dans le journal de sécurité Core.
- Met à jour la roadmap publique et la Publication active de la Suite 4.5.36.

---

## 4.5.35 — 2026-08-25

- Accompagne CRM AWM 1.6.7 et corrige l’écran Courriels qui affichait zéro modèle.
- Publie le nouveau registre interne valide des modèles et l’amorçage automatique des 86 modèles AWM.
- Documente la réparation automatique d’un catalogue incomplet et la conservation des textes personnalisés.
- Maintient WHMCS comme connecteur facultatif; aucun import n’est requis pour voir ou modifier les modèles.
- Met à jour la roadmap publique et la Publication active de la Suite 4.5.35.

---

## 4.5.34 — 2026-08-25

- Renforce le transport API WHMCS et distingue les erreurs HTTP 401, 403, 406, 429 et 5xx.
- Ajoute un diagnostic 403 orienté vers l’adresse IP autorisée, la clé d’accès API et les permissions du compte administrateur.
- Tente les champs d’authentification modernes puis historiques sans contourner les restrictions de WHMCS.
- Permet un snapshot partiel des familles de modèles courriel avec avertissements par famille facultative.
- Harmonise le shell CRM avec les onglets réels de CRM AWM 1.6.6 et retire l’ancien onglet Soutien.
- Supprime la navigation CRM dupliquée : le shell Core devient l’unique navigation principale du module.
- Met à jour la roadmap publique et la Publication active de la Suite 4.5.34.

---

## 4.5.33 — 2026-08-25

- Ajoute `GetEmailTemplates` à la liste blanche du connecteur WHMCS pour une lecture contrôlée du catalogue de modèles.
- Expose à CRM AWM un snapshot en lecture seule des modèles général, produit, domaine, facture et affiliation.
- Exclut explicitement les modèles support/ticket afin de préserver la séparation avec Soutien AWM.
- Le snapshot conserve nom, type, identifiant, sujet, langue, état et, uniquement lorsqu’il est fourni par WHMCS, le corps du message.
- Aucune modification d’un modèle CRM n’est réécrite dans WHMCS; Core reste seulement le gardien du connecteur.
- Roadmap centrale harmonisée avec CRM AWM 1.6.5 : services facturables, centre de courriels, séparation Soutien/CRM et corrections CSS.

---

## 4.5.32 — 2026-08-25

- Publie la nouvelle série de numérotation des factures natives CRM : `28102` + séquence (`281020001`, `281020002`, ...), sans renumérotation des documents existants.
- Accompagne CRM AWM 1.6.4 pour la migration détaillée des crédits et remboursements WHMCS historiques.
- Enrichit le snapshot de migration avec `GetTransactions` filtré par facture lorsque WHMCS est connecté.
- Conserve `amountin`, `amountout`, frais, description, `invoiceid` et `refundid` afin que CRM distingue encaissement et remboursement au lieu de déduire l’historique du seul statut de facture.
- Marque explicitement si le détail des remboursements est connu et conserve un repli prudent sur `GetInvoice`/archive lorsque le détail officiel n’est pas disponible.
- Ajoute l’identifiant de ligne WHMCS au snapshot des articles pour améliorer la traçabilité fiscale.
- Maintient le verrou financier 4.5.31 : après migration, WHMCS reste uniquement une source de comparaison et ne peut pas réécrire la comptabilité CRM.
- Met à jour la roadmap publique pour Core 4.5.32 et CRM AWM 1.6.4.

---

## 4.5.31 — 2026-08-25

- Accompagne CRM AWM 1.6.3 pour la migration financière contrôlée des factures WHMCS historiques.
- Ajoute un snapshot de migration de facture avec contrôle de propriétaire et lecture détaillée `GetInvoice` lorsque WHMCS est disponible.
- Utilise l’archive locale comme repli et expose des indicateurs permettant au CRM de refuser une migration ambiguë.
- Lorsqu’une facture porte le verrou de migration, une synchronisation WHMCS ultérieure n’écrase plus son total, son solde, ses paiements ni son statut CRM.
- Le même verrou s’applique aux lectures détaillées de facture afin qu’aucun chemin du connecteur ne puisse reprendre la propriété financière après la bascule.
- Conserve le dernier total, solde et statut observés côté WHMCS et marque une dérive au lieu de l’appliquer.
- Remplace la confirmation navigateur de l’importation WHMCS par une confirmation intégrée dans l’interface AWM.
- Met à jour la roadmap publique pour Core 4.5.31 et CRM AWM 1.6.3.

---

## 4.5.30 — 2026-08-24

- Met à jour le registre de Suite pour CRM AWM 1.6.2 et Hub Client AWM 1.8.5.
- Calcule les soldes de factures CRM après paiements et avoirs.
- Reconnaît les statuts Réglée et Créditée dans les résumés de facturation du Hub.
- Expose le total des avoirs dans le résumé client.
- Bloque une tentative de paiement lorsqu’une facture native CRM n’a plus de solde exigible.
- Conserve les passerelles de paiement natives/tokenisées comme prochaine étape; aucune donnée de carte n’est stockée dans Core.
- Harmonise la roadmap publique avec les nouveaux avancements CRM et Hub Client.
- Le diagnostic de santé classe maintenant WHMCS comme connecteur **optionnel** : son absence est neutre et ne crée plus un avertissement système.

---

# Changelog

## 4.5.50 — 2026-08-27
- Ajoute un contexte visuel Studio au shell administratif partagé.
- Studio possède désormais son accent, son icône et son en-tête propres au lieu d'hériter du contexte Hub.
- Le mode sombre/clair Studio suit exactement les réglages globaux Alliance.
 — Core AWM

## 4.5.29 — 2026-08-24

- Met à jour le registre public de la Suite pour CRM AWM 1.6.1.
- Documente comme livrées les lignes multiples, les taxes configurables figées par document et la facturation récurrente native CRM.
- La route client des factures continue d’exposer le payload CRM sans dépendance WHMCS; les détails de lignes ajoutés par CRM sont conservés.
- Maintient Core comme couche de sécurité/API seulement : aucune logique de calcul fiscal ou de récurrence n’est déplacée hors de CRM.
- Conserve dans la roadmap les prochaines étapes CRM : avoirs/remboursements, permissions contacts, PDF natifs, paiements tokenisés, pipeline et fonctions opérationnelles futures.
- Aucun changement de permission, session, secret ou contrat de route publique.

## 4.5.28 — 2026-08-24

- Remplace la confirmation navigateur de **Mettre à jour les modules Alliance** par une confirmation intégrée au loader de la carte Mises à jour.
- Affiche avant installation la Suite cible, les modules concernés et les transitions de versions, avec actions **Démarrer l’installation** et **Annuler**.
- Conserve la progression, les erreurs et l’état final dans le même composant AWM sans `alert()` ni `confirm()` natif sur la page Mises à jour.
- Harmonise aussi le déploiement distant, la suspension de publication et les rollbacks de cette page avec des confirmations contextuelles intégrées.
- Core reste installé en dernier et la page n’est rechargée automatiquement que si la mise à jour Core a réellement réussi.
- Met à jour la roadmap publique avec Core AWM 4.5.28; les versions des sept autres modules restent inchangées.


## 4.5.27 — 2026-08-24

- Fait de CRM AWM la source prioritaire de la route client des factures.
- Accompagne la création/édition de clients natifs CRM, les champs personnalisés et les rappels assignables de CRM AWM 1.6.0.
- Lors d’une synchronisation WHMCS optionnelle, rapproche une fiche CRM existante par courriel avant de créer un doublon et conserve sa source CRM native.
- Le résumé Hub calcule les soldes natifs sans dépendre de la disponibilité d’une passerelle de paiement.
- La route de paiement vérifie la propriété de la facture locale avant de déléguer à un fournisseur.
- Ajoute le point d’extension sécurisé `awm_crm_native_payment_url` pour une future passerelle native hébergée/tokenisée.
- Conserve WHMCS seulement comme connecteur de compatibilité pour les factures historiques importées.
- Marque les factures synchronisées depuis WHMCS comme `whmcs_import` et conserve la date de paiement lorsqu’elle est disponible.
- Met à jour la roadmap publique avec Core 4.5.27 et CRM AWM 1.6.0 autonome.


## 4.5.26 — 2026-08-24

- Harmonise la roadmap publique avec les publications actives, changelogs, roadmaps internes et fonctions présentes dans les huit modules.
- Ajoute CRM 1.5.0 comme livré pour la création de factures WHMCS et CRM 1.5.2 pour l’exclusion visuelle des clients tombstonés.
- Marque comme livrés dans Stats la mesure autonome du trafic, les formulaires et les conversions; conserve la validation réelle de collecte comme travail actuel.
- Marque comme livrés dans Assistant l’historique des analyses et la validation groupée des pages Web.
- Marque comme livrés dans Soutien le fil complet, la réanalyse guidée et l’ouverture du prochain ticket prioritaire.
- Ajoute explicitement dans Hub Client la connexion WordPress locale autorisée et enrichit la Facturation dans Mon compte.
- Ajoute explicitement dans Hub le routage/audio CallTracker et dans CallTracker les retours d’opérations via le loader.
- Aucun changement de table, route publique, permission, secret, session ou donnée métier.

## 4.5.25 — 2026-08-24

- Étend le contrat « aucun bandeau » à toutes les pages AWM, y compris les pages Core.
- Ajoute un loader Core de secours lorsque le loader visuel Hub n’est pas disponible.
- Masque les notices WordPress, update nags et promotions tierces résiduelles sur les écrans AWM.
- Convertit les confirmations internes Core en résultats consommables par le loader.
- Normalise les soldes WHMCS importés pour les statuts fermés afin de fiabiliser les KPI CRM.
- Met à jour la roadmap publique avec Core 4.5.25, Hub 4.5.12, CRM 1.5.3 et Hub Client 1.8.4.

## 4.5.24 — 2026-08-24

- Met à jour la roadmap publique avec Core 4.5.24, Hub 4.5.11 et CallTracker 1.9.1.
- Officialise la règle UX : aucun bandeau WordPress natif ne doit rester visible dans les écrans AWM CallTracker; les résultats passent par le loader AWM.
- Documente la conservation de l’action native « Annuler » dans le loader lorsque disponible.

---

## 4.5.23 — 2026-08-24

- Corrige globalement les liens de statut WordPress (`Toutes`, compteurs, état actif) sur les écrans AWM en mode sombre, y compris lorsqu’ils sont rendus hors du formulaire de liste.
- Ajoute une tombstone persistante pour tout client WHMCS supprimé localement : les synchronisations clientes et complètes ignorent ensuite cet identifiant jusqu’à autorisation explicite.
- Conserve l’historique métier du client supprimé, révoque ses accès/Connector et permet une restauration contrôlée depuis Utilisateurs.
- Enregistre la route publique Core `callink/v1/recording` pour le callback Twilio d’enregistrement conditionnel.
- Met à jour la roadmap publique avec les versions des huit modules et l’audit transversal 4.5.23.

## 4.5.22 — 2026-08-24

- Ajoute un moteur Core d’actions groupées clients avec aperçu serveur, jeton à usage unique, empreinte d’état, confirmation exacte et journalisation.
- Autorise la désactivation CallTracker en lot, l’archivage protégé et la suppression définitive uniquement des fiches locales vides; les comptes WHMCS actifs et la fiche Alliance interne sont bloqués.
- Révoque sessions et Hub Connector avant archivage/suppression sensible.
- Masque les anciens boutons Light/Dark de modules lorsque le shell Core partagé est actif afin d’éviter les doubles contrôles de thème.
- Roadmap publique alignée sur Core 4.5.22, Hub 4.5.9 et CallTracker 1.8.1.

## 4.5.21 — 2026-08-24

- Met à jour la roadmap publique avec **Core 4.5.21**, **Hub 4.5.8** et **CRM 1.5.1**.
- Officialise la règle de contexte des fiches clients : le module source reste maître de l’interface.
- Conserve toutes les API, permissions, sessions, secrets et routes métier existantes.

---

## 4.5.20 — 2026-08-24

- Met à jour la roadmap publique pour **Hub Client AWM 1.8.2**.
- Documente la correction de taille/alignement de l’icône **Hub** dans le menu WordPress client.
- Aucun changement des API métier, de la facturation, des sessions ou de CallTracker.

---

## 4.5.19 — 2026-08-24

- Corrige le calcul de facturation du Hub afin que les factures **Payées, Annulées, Remboursées ou Brouillon** aient toujours un solde payable de 0 $.
- Le résumé **Solde à payer / Factures à payer / En retard / Payées** est maintenant calculé sur **toutes** les factures WHMCS du client grâce à une pagination complète, et non seulement sur le premier lot de 25/50 résultats.
- Une facture n'est comptée en retard que si elle est réellement payable et que son statut ou son échéance le justifie.
- Le numéro WHMCS interne est utilisé comme repli lorsque `invoicenum` est vide, afin d'éviter l'affichage « Facture WHMCS # » sans numéro.
- Aucun changement à CallTracker, CRM, Hub AWM ou Hub côté client.

---

## 4.5.18 — 2026-08-24

- Décorrèle la facturation du compte Alliance de l’activation du module `crm_awm` côté client.
- Les routes `/client/invoices` et `/client/invoice-payment` exigent toujours une session client valide et conservent le contrôle de propriété WHMCS, mais ne requièrent plus un service CRM client.
- Identifie la réponse de facturation comme `account_billing` afin de distinguer la facturation Alliance d’un futur CRM que le client pourrait activer pour ses propres clients.
- Met à jour la roadmap publique avec Core 4.5.18 et Hub Client 1.8.1.

---

## 4.5.16 — 2026-08-24

- Enregistre dans Core les routes publiques/signées des MP3 CallTracker et les routes client de routage/audio.
- Sert les MP3 CallTracker sans exposer leur chemin de stockage et avec validation du jeton de campagne.
- Conserve la validation client/campagne deny-by-default pour les modifications du numéro de réception et du Message 2.
- Affiche maintenant les **Notes de version** dans la Publication active de Core → Mises à jour.
- Ajoute un **Historique des versions** pour les dix publications conservées par le registre central.
- Met à jour la roadmap publique avec Core 4.5.16, Hub 4.5.7, CallTracker 1.8.0 et Hub Client 1.7.0.

---

## 4.5.15 — 2026-08-24

- Corrige le footer WordPress qui restait blanc en mode sombre sur les pages AWM.
- Le fond, le texte, les liens et la bordure du footer héritent maintenant des variables clair/sombre du shell AWM.
- Dans le déploiement distant, les modules serveur absents du WordPress client sont libellés **Hébergé chez Alliance** au lieu d’un tiret ambigu.
- Aucun changement de données, route publique, permission, CallTracker ou Hub Client.

# Changelog

## 4.5.50 — 2026-08-27
- Ajoute un contexte visuel Studio au shell administratif partagé.
- Studio possède désormais son accent, son icône et son en-tête propres au lieu d'hériter du contexte Hub.
- Le mode sombre/clair Studio suit exactement les réglages globaux Alliance.


## 4.5.14 — 2026-08-24
- Corrige le premier test reel du deploiement distant : Core rafraichit l inventaire avant de creer la file.
- Ne deploie plus les huit paquets d une Suite aveuglement : seulement les modules installes dont la version publiee est superieure.
- Affiche clairement A jour lorsqu une Suite plus recente ne contient aucun nouveau paquet pour le site client.
- Publie Hub Client 1.6.1 comme premiere mise a jour testable depuis un site 1.6.0.
 — Core AWM

## 4.5.13 — 2026-08-24

- Corrige les contrastes du tableau de bord Core en mode sombre : titres de cartes, descriptions, métadonnées et composants héritent maintenant des couleurs globales définies dans Hub AWM.
- Corrige **Core AWM → Mises à jour** : cartes, tableaux, inventaires et textes utilisent les mêmes surfaces clair/sombre que le shell AWM au lieu de couleurs WordPress fixes.
- Ajoute **Utilisateurs** et **Mises à jour** dans la navigation principale en pastilles de Core pour correspondre aux sous-menus déjà disponibles.
- Le correctif est strictement visuel/navigationnel : aucune table, option, route publique, permission, donnée métier ou logique de migration CallTracker n'est modifiée.

---
## Historique conservé

## 4.5.12 — 2026-08-24

- Ajoute **Core AWM → Mises à jour** comme registre central de distribution de la Suite AWM.
- Un seul fichier `suite-awm-modulaire-X.Y.Z.zip` peut être analysé et publié; Core extrait les ZIP de modules, vérifie leurs structures et versions, refuse toute diminution de version et calcule un SHA-256 par paquet.
- Ajoute les canaux **Stable/Bêta**, la suspension d’une publication active et un stockage privé configurable via `AWM_UPDATE_STORAGE_PATH`.
- Ajoute l’installation séquentielle des modules présents sur le WordPress Alliance avec **barre de progression**, sauvegarde préalable et rollback; Core est installé en dernier.
- Ajoute le déploiement distant vers les sites Hub Client autorisés, sans FTP/SSH : commande signée par le secret du Connector, téléchargement HTTPS depuis Alliance, vérification SHA-256 puis installation locale via les API WordPress.
- Ajoute inventaire des versions par site, état par module, arrêt du déploiement après deux erreurs et rollback distant.
- Ajoute les routes Connector `/client/updates/inventory`, `/client/updates/check` et `/client/updates/report`; toutes les routes publiques restent enregistrées dans Core.
- Le premier passage à Hub Client 1.6.0 demeure un bootstrap manuel sur les sites déjà en 1.5.0; les mises à jour suivantes deviennent pilotables depuis Core.
- Maintient CallTracker AWM 1.7.0 inchangé afin de ne pas introduire de risque dans la migration urgente.

---
## Historique conservé

## 4.5.11 — 2026-08-24

- Ajoute la synchronisation et le scan sécurisé des utilisateurs WordPress d’un site Hub Client lié.
- Ajoute une liste d’autorisations locale par fiche client; les sessions `site_admin_delegate` sont désormais refusées par défaut si la référence WordPress locale n’est pas approuvée.
- Stocke le secret de scan dans le coffre cryptographique Core et limite le scan au domaine réellement associé au Connector.
- Révoque les sessions clientes lorsqu’une autorisation locale est retirée ou qu’un compte autorisé disparaît du scan.
- Journalise synchronisation, scan, refus et changement d’autorisation sans stocker de secret.
- Maintient toutes les routes et métadonnées historiques existantes et laisse CallTracker 1.7.0 inchangé.

---
## Historique conservé

# Changelog

## 4.5.50 — 2026-08-27
- Ajoute un contexte visuel Studio au shell administratif partagé.
- Studio possède désormais son accent, son icône et son en-tête propres au lieu d'hériter du contexte Hub.
- Le mode sombre/clair Studio suit exactement les réglages globaux Alliance.
 — Core AWM

## 4.5.10 — 2026-08-23

- Renforce le contrat modulaire du Hub Client : les routes clientes CallTracker (résumé, campagnes, leads, appels et CPL) exigent désormais que le service CallTracker soit activé pour le client.
- Le refus reste côté Core même si une ancienne URL du portail est appelée directement.
- La roadmap publique passe Core à 4.5.10 et Hub Client à 1.4.0 tout en maintenant la version de chacun des huit modules.
- Documente le nouveau portail Hub Client modulaire et responsive sans déplacer les données métier hors de CallTracker/Stats.

---
## Historique conservé

## 4.5.9 — 2026-08-23

- Ajoute les routes Core authentifiées `POST /client/profile` et `POST /client/appearance`.
- Le profil personnalisable conserve le nom canonique CRM/WHMCS et stocke seulement un nom affiché et une fonction propres au Hub Client.
- L’apparence client réutilise le moteur de styles Hub, valide les couleurs, limite les polices à une liste sûre et interdit tout CSS arbitraire.
- Les écritures sont limitées au client porté par la session API, journalisées dans le journal Core et renvoient immédiatement le profil effectif.
- La roadmap publique maintient explicitement les versions de Core, Hub, CRM, CallTracker, Stats, Assistant, Soutien et Hub Client, même lorsqu’un module n’est pas actif sur la plateforme centrale.
- Ajoute Hub Client AWM comme huitième module distinct dans la roadmap publique.
- Aucun identifiant historique, option, route existante, table ou méta n’est supprimé ou renommé.
---
## Historique des versions précédentes

# Changelog

## 4.5.50 — 2026-08-27
- Ajoute un contexte visuel Studio au shell administratif partagé.
- Studio possède désormais son accent, son icône et son en-tête propres au lieu d'hériter du contexte Hub.
- Le mode sombre/clair Studio suit exactement les réglages globaux Alliance.
 — Core AWM

## 4.5.7 — 2026-08-19

- Roadmap publique et changelog système actualisés pour les actions groupées CallTracker 1.6.0 et leur interface Hub 4.5.3.
- Documentation du contrat de sécurité : niveau **Approuver**, nonce, aperçu serveur, confirmation, jeton à usage unique revendiqué atomiquement, état revalidé, verrouillage concurrent et journalisation par élément.
- Confirmation que les nouveaux points d’entrée de lot sont des actions AJAX administratives; aucune API REST publique n’est enregistrée hors Core.
- Les échecs de persistance de l’exclusion anti-réimportation, de l’état local après libération Twilio, du nettoyage d’une réservation et de la propagation historique sont remontés dans le journal central.
- Les écritures partagées de réservations, exclusions legacy et instantanés de suppression sont sérialisées dans CallTracker afin d’éviter la perte d’une mise à jour concurrente.
- Conservation des descriptions explicites de roadmap au lieu de les remplacer par une description générique indexée.
- Aucune table, option, route, constante ou capacité historique supprimée ou renommée.

---

## 4.5.6 — 2026-08-19
- Le type technique `callink_campaign` est explicitement non public, non requêtable côté public, absent de REST/navigation.
- Les libellés WordPress utilisent maintenant Campagne au lieu d’Article dans l’éditeur natif.
- Le statut `publish` historique est conservé uniquement comme état interne de compatibilité pour ne casser aucune requête existante.

## 4.5.5 — 2026-08-19
- Roadmap publique mise à jour pour marquer l’inventaire CallTracker Libre/Réservé/Attribué/À vérifier comme livré.
- Journal de sécurité Core reçoit les événements de réservation et de retrait de réservation de numéros Twilio sans conserver les secrets Twilio.
- Aucun point d’entrée REST supplémentaire n’est ajouté hors de Core; les routes historiques restent inchangées.

## 4.5.4 — 2026-08-18
- Core centralise une résolution canonique des identités clientes afin que l’API Hub agrège les anciennes références sûres d’un même client sans accepter de correspondance par domaine seul.
- Les routes client Campagnes, Appels, Leads et statistiques utilisent désormais les identifiants canoniques et alias historiques sûrs (WHMCS, fusion, courriel exact, téléphone exact ou domaine d’entreprise + identité concordante).
- Le jeton Dialer client n’est délivré que si CallTracker est activé et qu’au moins une campagne active avec Dialer et numéro Twilio est réellement disponible.
- Aucun jeton Alliance n’est exposé au navigateur par ce changement; l’API reste refus-par-défaut et limitée au client porté par la session.

## 4.5.3 — 2026-08-18
- Corrige l’authentification du Hub Client : les administrateurs Alliance peuvent ouvrir un portail client avec une session déléguée strictement limitée à la fiche liée.
- Ajoute une autorisation runtime Hub Connector distincte du code de pairing : secret aléatoire retourné une seule fois, hashé dans Core et révocable.
- Ajoute l’accès délégué des administrateurs WordPress du site client via le Connector, sans transmettre leur mot de passe local à Alliance.
- Les codes de pairing deviennent à usage unique; une régénération révoque l’autorisation runtime précédente.

## 4.5.2 — 2026-08-18

- Suppression de la marge supérieure résiduelle du shell Core AWM afin de l’aligner verticalement sur les autres modules.
- Le fond WordPress `#wpbody` de Core utilise explicitement la surface de page AWM, supprimant la bande claire visible au-dessus du shell en mode sombre.
- Correctif CSS strictement limité au contexte `awm-module-core`; aucun changement d’espacement dans Hub, CRM, CallTracker, Stats, Assistant ou Soutien.
- Aucun changement de route, table, option, permission, API ou donnée.

## 4.5.1 — 2026-08-18

- Le shell Core utilise le logo Alliance officiel lorsque Hub n’a pas de logo personnalisé.
- Core reste visuellement harmonisé mais ne possède aucun réglage d’apparence : il consomme les réglages centralisés dans Hub AWM.
- La façade historique des modules clients délègue à Hub AWM sans retirer les métadonnées ni identifiants historiques.
- Le double en-tête du tableau de bord Core est supprimé lorsque le shell partagé est actif.
- Les panneaux internes de Core héritent maintenant des surfaces, bordures et textes clair/sombre du shell AWM; l’ancien choix de thème `callink-admin-theme` reste lu et synchronisé pour compatibilité.

## 4.5.0 — 2026-08-18

- Core AWM 4.5.0 centralise le shell visuel partagé de toute l’administration AWM : logo Alliance + icône de module, navigation principale en pastilles, sous-navigation cohérente, composants clair/sombre et responsive. Aucun écran métier ni route historique n’est déplacé; Core fournit seulement le contrat visuel commun.

## Interface sécurité 4.4.1 — 2026-08-17

- L’écran Core AWM > Sécurité adopte la charte visuelle AWM avec une organisation par sous-onglets.
- L’accès clients dispose maintenant des filtres Tous / Approuvés / Non approuvés et d’une recherche instantanée par nom, courriel ou ID.
- Les compteurs d’approbation, états visuels, actions Approuver/Révoquer et affichage responsive ont été harmonisés sans modifier le modèle de sécurité deny-by-default.
- Les fonctions existantes de coffre, journal, permissions et compatibilité sont regroupées dans des sections dédiées sans changement de route ni de donnée historique.


## Sécurité 4.4.0 — 2026-08-17

- Core AWM 4.4.0 ajoute le coffre cryptographique central, une politique deny-by-default avec approbation explicite des clients, la révocation immédiate des sessions/connecteurs, le chiffrement du contexte du journal et la migration des secrets connus.
# Changelog

## 4.5.50 — 2026-08-27
- Ajoute un contexte visuel Studio au shell administratif partagé.
- Studio possède désormais son accent, son icône et son en-tête propres au lieu d'hériter du contexte Hub.
- Le mode sombre/clair Studio suit exactement les réglages globaux Alliance.
 — Core AWM

## 4.3.9 — 2026-08-17
- Core devient l’unique propriétaire des points d’entrée REST/webhooks de la suite : API client, Hub Connector, Twilio CallTracker et collecte Stats AWM.
- Ajout d’un routeur API Core qui conserve les routes historiques `callink/v1` et délègue le traitement métier aux modules actifs sans déplacer leurs données.
- Génération, état et révocation des codes Hub Connector déplacés dans `CallLink_Client_API`; Hub n’écrit plus directement les métadonnées de sécurité du Connector.
- Les routes Twilio et Stats ne sont plus enregistrées par leurs modules; Core les expose et retourne une erreur 503 contrôlée si le module requis est absent.
- Aucun nom de route historique, option, table ou métadonnée n’est supprimé.

## 4.3.8 — 2026-08-17
- Roadmap publique Hub mise à jour pour officialiser le nouveau module Hub Client AWM installable sur le site WordPress du client.
- Le portail déporté `/hub/` utilise l’API client existante et n’expose aucun outil d’administration Alliance sur le site client.
- Aucune route, table, option ni permission historique modifiée par ce lot.

## 4.3.7 — 2026-08-17
- Roadmap publique CallTracker mise à jour avec la protection anti-résurrection des campagnes supprimées lors des synchronisations legacy.


## 4.3.6 — 2026-08-17
- Le rapprochement global Clients ↔ WHMCS sait maintenant dériver un domaine d’entreprise depuis les courriels lorsque le site Web n’est pas renseigné.
- Les domaines de messagerie grand public sont exclus du signal de rapprochement afin d’éviter les associations erronées.
- Les règles de fusion automatique restent conservatrices : les cas domaine + nom restent à vérifier tant qu’un second identifiant fort ne confirme pas la destination.


## 4.3.5 — 2026-08-17
- Ajout d’un rapprochement global des anciennes fiches CallTracker vers les fiches WHMCS canoniques, avec analyse de toutes les correspondances et traitement en lot des cas sûrs.
- Les rapprochements sûrs exigent un identifiant fort et une destination unique; les cas ambigus restent à vérifier manuellement.
- Le transfert global conserve campagnes, appels, formulaires, statistiques, profils et historique, puis archive l’ancienne fiche sans suppression.
- Toutes les destinations WHMCS, actives ou inactives, sont disponibles pour le rapprochement manuel avec leur état visible.
- Chaque fusion globale ou manuelle est journalisée dans le journal central de sécurité.
- Roadmap publique CallTracker/CRM corrigée pour refléter le rapprochement global et le correctif réel de l’écran Campagnes.
- Aucune route, table, option ou capacité historique supprimée.

## 4.3.4 — 2026-08-17
- Roadmap publique mise à jour pour le lot CallTracker : campagnes visibles par client, activité appels/formulaires et harmonisation visuelle.


## 4.3.3 — 2026-08-17

- Roadmap publique actualisée avec l’activation CallTracker par client et le rattachement direct des campagnes.
- Le statut CallTracker est explicitement distinct du statut commercial WHMCS.
- Aucun changement de table, route, option ou capacité historique.


## 4.3.2 — 2026-08-17

- Roadmap publique actualisée pour marquer comme livré l’accès Clients directement dans CallTracker AWM.
- Conservation intégrale de la neutralisation des notices WordPress/tiers introduite en 4.3.1.
- Aucun changement de table, option, route ou capacité historique.

## 4.3.1 — 2026-08-17

- Neutralisation centralisée des bandeaux WordPress et des notices d’extensions tierces sur toutes les pages d’administration AWM.
- Couverture des écrans Core, Hub, CRM, CallTracker, Stats, Assistant, Soutien ainsi que des types `callink_campaign` et `callink_call`.
- Conservation des confirmations et erreurs AWM rendues dans le contenu du module afin de ne pas masquer le résultat d’une action utilisateur.
- Repli CSS limité aux notices globales situées directement dans `#wpbody-content`, sans modifier les messages internes des interfaces AWM.

## 4.3.0 — 2026-08-17

- Matrice de rôles par module avec niveaux Consulter, Modifier, Approuver et Administrer.
- Migration additive des droits historiques des rôles et des utilisateurs sans retrait de capacité.
- Rôles clients et administrateur protégés, avec réparation contrôlée des droits fondamentaux.
- Journal de sécurité centralisé, filtrable et exportable avec rétention configurable et nettoyage WP-Cron.
- Expurgation des secrets, masquage et hachage des adresses IP, identifiant de requête et protection CSV.
- Inventaire des sessions API actives avec révocation individuelle ou par utilisateur.
- Diagnostic des API, webhooks, connexions externes et tâches planifiées.
- Journalisation centralisée des signatures Twilio refusées, collectes Stats rejetées, échecs de tâches et changements de connecteurs.
- Contrat de permissions 1.0 adopté par les sept modules.
- Vérification additive confirmant qu’aucune route, table, option, métadonnée, action ou filtre historique n’a été retiré.

## 4.2.0 — 2026-08-15

- Contrat de version 4.2.0 partagé avec Hub AWM.
- Recherche administrative transversale locale sans transmission à un service externe.
- Clients inactifs exclus par défaut des résultats.
- Roadmap Hub actualisée avec la recherche transversale livrée.

## 4.1.3 — 2026-08-15

- Conversations Assistant AWM regroupées en une seule unité de révision.
- Analyse du fil complet avec reformulation des vraies questions et exclusion des messages sans valeur documentaire.
- Réanalyse guidée, réponses éditables et approbation sélective de plusieurs connaissances.
- Historique des analyses et migration automatique des anciennes questions isolées.
- Roadmap enrichie et règle d’accélération par gains rapides compatibles.

## 4.1.2 — 2026-08-15

- Approbation groupée des pages Web explorées vers la base de connaissances.
- Suppression définitive de plusieurs pages sélectionnées avec confirmation préalable.
- Sélection globale, compteur et résultat détaillé de l’opération.
- Contrôles de permission, nonce, type de contenu et état en attente appliqués à chaque page.

## 4.1.1 — 2026-08-15

- Types internes de la mémoire Assistant ramenés sous la limite WordPress de 20 caractères.
- Migration automatique des éventuelles connaissances et conversations enregistrées sous un identifiant tronqué.
- Erreur détaillée conservée lorsque WordPress refuse l’enregistrement d’une connaissance.
- Les modifications manuelles faites dans l’analyse sont utilisées comme version officielle approuvée.

## 4.1.0 — 2026-08-15

- Contrat Core AWM / Hub AWM harmonisé en version 4.1.0.
- CRM AWM reconnu comme module indépendant dans le registre, la santé du système et la roadmap.
- Roadmap enrichie avec une description de résultat pour les dix améliorations de chacun des sept modules.
- Suggestions approuvées publiées avec leur description et limitées à cinq ajouts par module.
- Actualisation sécurisée du fil WHMCS d’un ticket depuis Core AWM, même lorsque seule sa référence publique est connue.
- Compatibilité des identifiants, tables et données historiques maintenue.

## 4.0.0 — 2026-08-15

- Séparation réelle de Core AWM et Hub AWM en deux extensions.
- Core limité à la sécurité, aux rôles, permissions, API, utilisateurs, connexions et modules.
- Nouveau menu WordPress Core AWM avec Sécurité, API et connexions, Utilisateurs et Modules.
- Conservation du dossier technique `awm-hub-core`, des constantes, tables, options et routes historiques.
- Hub AWM devient une dépendance distincte pour tous les écrans et rendus visuels.
- Contrat de roadmap commun permettant de présenter une analyse et un plan futur par module.

## 4.5.17 — 2026-08-24
- Ajout des routes client Factures et Paiement, enregistrées dans Core.
- Validation stricte de la propriété WHMCS avant exposition d’une facture ou génération d’un paiement.
- Création de SSO WHMCS à usage unique pour ouvrir la facture payable sans exposer les identifiants WHMCS.
- Aucune donnée de carte ou CVV ne transite ou n’est stockée dans AWM.

---

## README.md

## Core AWM 4.5.214

Le déploiement distant manuel est de nouveau disponible depuis le tableau de bord. Les actions explicites **Déployer** et **Forcer sur la sélection** restent protégées par le canal signé et le rollback fichiers du Hub Client; l'autopilote reste suspendu jusqu'à validation Recovery complète.

## 4.5.213 - Flotte lisible et etat autopilote coherent - 2026-09-21
La grille Sites connectes reserve desormais 360 px aux actions Reparer / Voir / Deployer. Les boutons ne peuvent plus recouvrir les colonnes Statut ou Mises a jour; si l espace manque, seul le tableau flotte defile horizontalement.

L interface indique maintenant **Autopilote flotte suspendu**, en coherence avec le garde Core qui maintient le deploiement automatique desactive tant que Recovery complet n est pas valide.

## 4.5.212 - Tableau de flotte stable visuellement - 2026-09-21

La liste **Sites connectes** garde maintenant ses colonnes alignees pendant et apres les mises a jour. Les actions ne recouvrent plus Statut ou Mises a jour. Sur une largeur insuffisante, le tableau conserve sa geometrie et utilise le defilement horizontal de la zone de flotte.

## 4.5.211 - Selection flotte fiable - 2026-09-21

Core AWM restaure la selection globale des Hub Clients dans **Mises a jour -> Sites connectes**. Le bouton **Tout selectionner** et la case maitre selectionnent tous les sites visibles; le libelle passe automatiquement a **Tout deselectionner** lorsque la vue courante est entierement selectionnee.

Le correctif remet aussi l initialisation JavaScript dans le bon ordre afin que le transport de ZIP par blocs 4 Mo et les actions de flotte puissent coexister sans interrompre le script de la page.

## 4.5.210 - Televersement par blocs sous ModSecurity - 2026-09-21

- Corrige le HTTP 500 observe sur `admin-post.php` lorsque ModSecurity refuse un corps multipart superieur a 13 107 200 octets.
- Les ZIP de module et de Suite sont maintenant televerses depuis **Core AWM -> Mises a jour** en blocs de 4 Mo via `admin-ajax.php`, puis assembles dans le dossier temporaire prive avant validation.
- Le formulaire final n envoie plus le gros fichier multipart : il transmet uniquement un jeton temporaire lie a l utilisateur connecte.
- Chaque session de televersement est protegee par nonce, permission Core admin, jeton aleatoire, taille attendue, nombre de blocs, SHA-256 final et purge automatique apres deux heures.
- Les limites metier restent 128 Mo par module et 256 Mo par Suite; le validateur AWM existant reste l autorite finale sur le nom, la version, la structure, README, CHANGELOG, ROADMAP et SHA-256.
- Le mode local 4.5.209 reste conserve : import/depot sans checkpoint Recovery synchrone, backup fichiers avant remplacement local et rollback automatique en cas d echec.
- Recovery fichiers + BD reste separe jusqu au moteur asynchrone afin qu un timeout navigateur ne bloque plus les livraisons.

## 4.5.209 - Mise a jour tableau de bord reparee - 2026-09-21

- L import d un module ou d une Suite dans le depot Core ne lance plus un checkpoint Recovery synchrone : ces actions ne modifient pas le plugin actif.
- Le bouton **Mettre a jour Alliance** utilise le backup local existant de chaque dossier module avant remplacement et conserve le rollback automatique en cas d echec.
- Le garde WordPress autorise uniquement cette transaction locale initiee par Core; les installations AWM hors Core restent bloquees.
- Le chemin fonctionne pour un module seul comme pour les modules d une Suite publiee.
- Recovery fichiers + BD reste separe et suspendu pour les mises a jour locales tant que son traitement asynchrone n est pas livre.
- Le tableau Mises a jour affiche explicitement ce mode pour ne pas faire croire a une preuve de restauration BD.

## 4.5.203 - Secours et points de restauration obligatoires - 2026-09-12

- Isolation des callbacks Health et protection du calcul global contre Throwable; une source defectueuse devient indisponible sans diagnostic invente.
- Nouveau panneau Core > Restauration; moteur CLI externe avec points chiffres fichiers + base, journal hors DB, verification et confirmation explicite.
- Les imports/publications et deploiements locaux exigent une configuration privee et un test de restauration SQL/fichiers sur l'hebergement.
- Autopilote AWM, distribution/deploiements distants et anciennes restaurations fichiers seules sont suspendus. Suite 4.5.231, Core 4.5.202 et CRM 1.6.28 sont bloques comme cibles.
- Aucun rollback DB automatique. Les huit autres modules ne sont pas reconstruits. Lire le guide de secours pour le premier amorcage Core/CRM par SFTP.
- Tests locaux : code reel AWM avec fonctions WordPress doubles, vraie restauration des fichiers et vrai chiffrement; SQL et bootstrap WordPress simules. Validation hebergeur requise.

## 4.5.202 — Pulse v2 et première couche Health AWM — 2026-09-12

- Le contrat Pulse accepte maintenant un score /100, un état de fraîcheur et des raisons courtes, tous assainis par Core.
- Health AWM calcule un score Suite explicable et conserve au maximum 48 instantanés espacés d au moins 30 minutes.
- Aucune note Health ne déclenche une action distante; la règle AWM-HEALTH-PULSE-001 l impose dans la mémoire de développement.

## 4.5.201 — Pulse opérationnel transversal — 2026-09-12

- Ajoute le contrat transversal `awm_core_module_pulses` et son rendu dans Santé du système.
- Agrège un pulse explicite pour les 10 modules AWM, dont l état de flotte Hub Client reçu par `fleet_state`.
- Ajoute la règle mémoire AWM-MODULE-PULSE-001 : données compactes, lecture seule, sans secrets ni contenu client brut.

# Core AWM 4.5.200 — publication Suite 4.5.229 / Tech 1.7.32

- **Livré** : registre public aligné sur Tech AWM 1.7.32 et Suite AWM 4.5.229.
- **Livré** : règle `AWM-TECH-OPS-PREFLIGHT-001` pour le préflight Connector / permissions / OPcache, la tournée groupée client + site et la capacité par responsable sans automatisation cachée.
- **Livré** : roadmap publique, changelog, notes et validation/logs synchronisés avant publication.
- **Sécurité** : aucune donnée sensible, chemin serveur, secret Connector ou clé API n est ajoutée au préflight public.

# Core AWM 4.5.199 — publication Suite 4.5.228 / Tech 1.7.31

- **Livré** : registre public aligné sur Tech AWM 1.7.31 et Suite AWM 4.5.228.
- **Livré** : règle `AWM-TECH-OPS-PRIORITY-001` pour un score opérationnel explicable, des actions recommandées sûres et l historique 24 h / 7 j sans duplication Stats.
- **Livré** : roadmap publique, logs et documentation de livraison restent obligatoires et synchronisés.

## Core AWM 4.5.197 — publication 4.5.226 / Tech 1.7.29

- Registre public aligné sur **Suite AWM 4.5.226** et **Tech AWM 1.7.29** sans rétrogradation des autres modules.
- La roadmap publique documente le diagnostic Wordfence Intelligence V3 non bloquant et la distinction obligatoire entre clé **Account > Integrations** et licence du plugin Wordfence.
- La mémoire de développement ajoute **AWM-TECH-SECURITY-001** : une erreur de fournisseur externe ne doit pas masquer l interface Tech et doit fournir diagnostic + action de correction sans exposer les secrets.
- ROADMAP, CHANGELOG, notes et validation/logs restent obligatoires avant le ZIP final.

## Core AWM 4.5.196 — publication 4.5.225 / Tech 1.7.28

- Registre public aligné sur **Suite AWM 4.5.225** et **Tech AWM 1.7.28** sans rétrogradation des autres modules.
- La roadmap publique documente les alertes/priorités entièrement cliquables, la typographie propagée aux overlays Tech et la personnalisation indépendante du Mode moniteur.
- La mémoire de développement ajoute la règle **AWM-TECH-DASH-006** pour imposer ces comportements dans les prochaines itérations.
- La gouvernance de livraison ajoute **AWM-RELEASE-LOG-001** : ROADMAP, CHANGELOG, notes de livraison et validation/logs doivent être synchronisés avant toute remise de ZIP.

## Core AWM 4.5.195 — publication 4.5.224 et édition Tech sans panneau superposé

- Registre public aligné sur Tech AWM 1.7.27 et Suite AWM 4.5.224.
- Ajoute la règle durable `AWM-TECH-DASH-005` : le panneau Personnaliser se retire pendant le drag & drop et une barre Enregistrer/Annuler reste disponible au bas du dashboard.
- La roadmap publique expose cette amélioration comme livrée et conserve la validation terrain 1080p / 4K comme étape active.
- Aucun changement aux Connectors, `site_id`, `instance_uuid`, secrets, signatures, autopilote ou données opérationnelles.

## Core AWM 4.5.194 — publication 4.5.223, responsive interne et typo des fiches Tech

- Registre public aligné sur Tech AWM 1.7.26 et Suite AWM 4.5.223.
- La règle `AWM-TECH-DASH-004` impose le responsive selon la largeur réelle du bloc et la transformation des tables trop étroites en cartes lisibles.
- La même préférence **Typographie dashboard** doit maintenant suivre jusque dans les fiches Tech, leurs onglets, métriques, SEO, WordPress, sécurité, historique et actions.
- La roadmap publique décrit le dropdown de liens personnalisés, le bouton Fermer compact, les corrections container-responsive et la typographie cohérente des fiches.
- Aucun changement aux Connectors, `client_id`, `site_id`, `instance_uuid`, secrets, permissions ou politiques de déploiement.

## Core AWM 4.5.193 — publication 4.5.222 et shell Tech compact

- Registre public aligne sur Tech AWM 1.7.25 et Suite AWM 4.5.222.
- Le dashboard Tech conserve la grille 12 colonnes, mais les raccourcis personnels sont maintenant integres au shell superieur et Personnaliser devient une icone compacte a cote du bouton Light/Dark.
- Formalise la regle de densite du shell Tech : aucun bloc pleine largeur ne doit etre ajoute uniquement pour les raccourcis ou l action de personnalisation.
- Le panneau Personnaliser doit conserver un contraste natif coherent pour les listes deroulantes en Light et Dark.
- Les contrats Connector, client_id, site_id, instance_uuid, autopilote et signatures restent inchanges.

## Core AWM 4.5.192 — publication 4.5.221 et grille Tech

- Registre public aligné sur Tech AWM 1.7.24 et Suite AWM 4.5.221.
- Formalise dans la mémoire de développement le moteur de grille Tech 12 colonnes, les largeurs ancrées et l adaptation interne des blocs.
- Conserve les contrats Connector, `client_id`, `site_id`, `instance_uuid`, l autopilote et les paquets signés sans changement.
- La roadmap publique reste couplée à `roadmap_sync` et doit afficher Suite 4.5.221 après publication.

## Core AWM 4.5.191 — publication 4.5.220 et roadmap suivie

- Registre public aligné sur Tech AWM 1.7.23 et Hub Client AWM 1.11.44.
- La publication Suite reste l autorité de synchronisation de `/hub/roadmap/` via `roadmap_sync`; aucune livraison n est considérée complète sans cette synchronisation.
- Conserve l autopilote de flotte, les paquets signés, SHA-256, sauvegarde et rollback.

# Core AWM 4.5.190

Registre de Suite AWM 4.5.219. Cette version publie Tech AWM 1.7.22 et formalise la règle UX sans rechargement complet pour les actions compatibles AJAX.

Cette version met à jour le registre de publication pour Suite AWM 4.5.218 et Tech AWM 1.7.21. Aucun contrat Connector, CRM ou autopilote n est modifié.

# Core AWM 4.5.188

Cette version publie Tech 1.7.20 et CRM 1.6.26 afin de rendre les statuts des fiches multi-sites directement actionnables, sans modifier l identité client/site ni la sécurité Connector.


Cette version aligne automatiquement la roadmap publique sur la **Suite active**. La dernière implantation n est plus une ligne Core codée en dur : elle reprend `roadmap_sync` et la composition effective publiée.

# Core AWM 4.5.186

Core ajoute un **autopilote central de flotte** : une fois une Suite stable publiée, Core parcourt automatiquement les installations Hub Client réellement jumelées et applique les mises à jour Hub Client/Tech nécessaires sans sélection manuelle. Les sites sont traités par petits lots afin de limiter la charge. Les déploiements manuels restent disponibles uniquement comme forçage.

Core 4.5.184 publie Tech AWM 1.7.16 et garde le registre de Suite aligné sur la nouvelle fiche Tech en console opérationnelle. Aucun changement de contrat Connector ou d autopilote n est introduit.


Ajoute la visibilité de l autopilote Hub Client 1.11.42+ pour les mises à jour client Hub/Tech.

# Core AWM 4.5.182

Registre Suite aligné sur Tech AWM 1.7.15; Hub Client 1.11.41 reste la base d autopilote.

# Core AWM 4.5.181

Cette version aligne Core sur la maintenance automatisée de la flotte Hub Client et Tech. Hub Client 1.11.41 peut appliquer ses futures versions stables depuis le canal signé Core après appairage, tandis que Tech 1.7.14 pilote séparément les extensions WordPress tierces choisies par le technicien. Les modules AWM ne passent jamais par le moteur générique d extensions.

## Core AWM 4.5.179 — liaison Hub robuste et shell plus compact

Core normalise maintenant l alias conventionnel `www`/domaine nu pour la liaison Hub Connector tout en gardant les autres sous-domaines et chemins stricts. Le shell partagé accepte aussi des métadonnées de contexte compactes directement dans son en-tête.

## Core AWM 4.5.178 — shell AWM sans bandeaux WordPress

Toutes les pages dont le slug appartient à l'espace AWM (`awm-*` / `awm_*`) sont maintenant protégées par le masque global de notices. Les résultats métier doivent utiliser le loader AWM; les avis WordPress et tiers ne doivent plus casser le layout des modules.

# Core AWM 4.5.177 — contrat Screpy pour Stats / Health

Core 4.5.177 formalise `AWM-STATS-009`. Screpy devient la couche d observation technique externe pour Stats / Health AWM : crawl SEO, Quick Wins, Rank Tracker, Core Web Vitals et uptime. La clé API Alliance reste côté serveur et doit être chiffrée avec `AWM_Core_Vault`. Le périmètre AWM reste `client_id + site_id + instance_uuid`; le domaine sert uniquement à associer le projet Screpy au site runtime. Health interprète les signaux et Studio réalise les corrections.

---

# Core AWM 4.5.176 — carte Stats Light/Dark et progression stable

Core 4.5.176 ajoute `AWM-STATS-008` pour garantir que la carte Temps réel suit réellement le thème AWM, corrige la détection `awm-theme-dark` et supprime le pixel fantôme des barres de progression à 0 %. Core 4.5.175 ajoute `AWM-STATS-007` : la carte Temps réel de Stats doit avoir un mode par défaut utilisable sans compte ni clé API cartographique. Stats AWM 1.6.1 utilise OpenStreetMap standard et dérive localement son rendu sombre; une panne du fond de carte ne doit jamais interrompre les présences, KPI ou listes en direct.


Core 4.5.174 formalise `AWM-STATS-006` (carte temps réel résiliente sans GPS/IP) et `AWM-UX-003` (les rafraîchissements techniques de fond ne déclenchent jamais le loader global).

Core 4.5.173 étend l horloge canonique `America/Toronto` déjà introduite en 4.5.153 : les modules peuvent maintenant obtenir des bornes de périodes UTC correspondant exactement aux journées civiles de Montréal. Le stockage reste UTC et HAE/HNE est géré automatiquement. Stats AWM 1.5.1 utilise ce contrat pour ses timestamps visibles et ses séries quotidiennes.


Core 4.5.172 conserve le registre commun introduit en 4.5.171 et formalise le temps réel Stats. Le registre des Connectors Hub Client runtime réellement actifs permet à Stats/Health et Mises à jour d’utiliser la même définition d’un site connecté : le `client_id` est le client attitré, le `site_id` est la source exacte, et un site CRM sans autorisation runtime reste hors du périmètre actif. Le contrat API Stats `site_id` + 365 jours de 4.5.170 est conservé.

# Core AWM 4.5.168 — mémoire auto-réparable et diagnostic visible
Core 4.5.169 limite désormais **Mises à jour → Sites connectés** aux Connectors runtime réellement appairés. Les sites CRM non liés restent gérés dans CRM et ne sont plus présentés comme des cibles de déploiement. Un filtre Principal/Secondaire facilite les parcs multi-sites.


Core 4.5.168 remplace les réparations heuristiques des versions précédentes par une restauration canonique strictement limitée aux révisions `v1` créées par Core (`author_id=0`) et présentes dans le seed officiel AWM. Lorsqu une de ces révisions a une empreinte invalide, les champs couverts par le SHA sont reconstruits depuis le seed; le statut, les dates, le cycle de vie, les révisions `v2+` et toutes les règles utilisateur restent intacts.

La santé de la mémoire relance la réparation avant de compter les anomalies. **Core → Mémoire AWM** affiche aussi la version de schéma mémoire, la version du seed, la dernière tentative UTC, le nombre réparé et le nombre restant. Un outil de récupération autonome peut être utilisé ponctuellement si le runtime Core chargé est bloqué par un cache serveur ou un ordre de chargement historique.

# Core AWM 4.5.166 — réparation SHA canonique Mémoire AWM

Core 4.5.166 remplace la migration de réparation 4.5.165 par une stratégie fondée sur l empreinte canonique du seed. Une révision v1 système n est réparée que si son SHA stocké prouve qu elle provient exactement du seed officiel. La réparation est réessayée avant le préflight et ne se déclare terminée qu à **0 anomalie réelle**. Un bouton de réparation manuelle sûre est aussi disponible dans **Core → Mémoire AWM → Santé**.

# Core AWM 4.5.165 — intégrité Mémoire AWM réparée

Core 4.5.165 corrige le faux positif d intégrité qui marquait les 50 règles initiales de Mémoire AWM comme critiques. Le contrôle d intégrité reste strict : seule la signature exacte du défaut historique `change_reason` des seeds système est réparée automatiquement. Les altérations inconnues restent bloquantes.

# Core AWM 4.5.164 — déploiement distant réellement multi-sites

Core 4.5.169 consolide le passage de l'écran **Mises à jour** au contrat `client_id + site_id`. Un client possédant un site principal et plusieurs sites secondaires obtient maintenant une ligne par site. Chaque inventaire, commande distante, paquet signé, vérification et rollback cible le Connector du site choisi.

Le site principal conserve ses métadonnées historiques pour compatibilité, mais aucune action sur un site secondaire ne réutilise son secret de scan ni son inventaire. Les sites connus du CRM peuvent être visibles avant connexion complète afin qu'un administrateur voie immédiatement ce qui reste à appairer.

# Core AWM 4.5.163 — import robuste + Mémoire AWM mini-Git



## Correctif 4.5.163 — noms de ZIP dupliqués
Les navigateurs peuvent renommer un second téléchargement `core-awm-4.5.162 (1).zip`; après normalisation WordPress, ce nom devient `core-awm-4.5.162-1.zip`. Les versions précédentes pouvaient interpréter `-1` comme une préversion et refuser le paquet même si le plugin déclarait correctement `4.5.162`. Core distingue maintenant les suffixes de copie numériques des vraies préversions et conserve la validation stricte du numéro interne.

## Mémoire AWM — mini-Git interne

Core 4.5.162 ajoute une mémoire de développement persistante dans WordPress. Elle est conçue pour survivre aux changements de conversation et pour transporter les décisions importantes du projet dans le temps.

- historique append-only : aucune ancienne version n est réécrite;
- IDs stables comme `AWM-DEV-003` ou `AWM-MULTI-001`;
- statuts `active`, `review`, `draft`, `superseded`, `archived`;
- SHA-256 du contenu de chaque révision;
- auteur, date, parent, source et raison du changement;
- liste explicite des modules impactés;
- détection de conflit si une règle a évolué pendant qu une autre conversation travaillait;
- restauration par création d une nouvelle version;
- snapshots automatiques lors des publications de Suite;
- export JSON administrateur;
- santé de mémoire et détection des anomalies structurelles;
- refus des secrets avant enregistrement.

L écran se trouve dans **Core AWM → Mémoire AWM** et un résumé est visible dans le tableau de bord Core pour les administrateurs.

Le seed initial reprend uniquement le contexte AWM pertinent accumulé dans les développements : architecture, publication, multi-sites, Studio, Stats/Health, Connectors, UX et sécurité. Les données personnelles et souvenirs sans lien avec AWM sont volontairement exclus.

### Utilisation par les autres modules

`AWM_Core_Development_Memory::active_rules()` permet de demander uniquement les règles pertinentes pour un ou plusieurs modules/catégories. Cette approche évite de charger toute la mémoire dans les prompts IA et applique la règle **local d abord → contexte filtré → IA seulement si nécessaire**.


## Correctif 4.5.161

Sur certaines installations historiques, le registre SQL peut continuer à refuser la création d'un deuxième Connector même après suppression des anciens index et reconstruction canonique. Core 4.5.161 ne bloque plus le site dans ce cas : il conserve le contrat `client_id + site_id + instance_uuid` et bascule uniquement ce Connector vers un stockage de secours client-scoped basé sur les métadonnées WordPress.

Le record logique reste identique au record SQL. Les hashes de pairing et de runtime sont indexés par des options non-autoloadées afin que l'authentification Connector reste directe et n'exige aucun scan global. Les mêmes fonctions Core alimentent ensuite Hub Client, Stats, Health et Tech, quel que soit le backend de stockage du site.

Aucun secret n'est exposé au navigateur, aucun Connector principal n'est révoqué, et aucune donnée historique Stats/Health n'est supprimée. Si le registre SQL redevient sain plus tard, une migration vers SQL pourra être ajoutée sans changer le contrat public du Connector.

## Historique 4.5.160 — reconstruction canonique Connector multi-sites

## Correctif 4.5.160

Certaines bases historiques peuvent encore refuser la création d'un second Connector même après suppression des anciens index `UNIQUE`. Core 4.5.160 ajoute une seconde ligne de défense : si l'insertion échoue encore, le registre `awm_site_connectors` est recopié dans une table neuve construite exactement selon le schéma multi-sites courant, puis remplacé atomiquement. Cette reconstruction retire les colonnes/contraintes historiques que `dbDelta()` laisse parfois en place, tout en conservant les données Connector actuelles et sans régénérer de secret.

Le contrat reste `client_id + site_id + instance_uuid`. Le site principal et les sites secondaires restent isolés; la reconstruction ne modifie ni les rattachements CRM ni l'historique Stats/Health.

## Correctif 4.5.159
Core vérifie et répare le schéma du registre `awm_site_connectors` avant de créer un Connector secondaire. Les bases ayant conservé un ancien index `UNIQUE` incompatible avec plusieurs sites par client sont corrigées automatiquement. Le contrat reste `client_id + site_id + instance_uuid`; aucun Connector existant n’est révoqué et aucun secret n’est régénéré par la migration. Les échecs persistants sont classifiés dans le journal Core sans stocker la requête SQL ni les valeurs sensibles.


Core ajoute un canal de collecte Stats authentifié pour Hub Client. Chaque lot reçu est validé contre le registre multi-sites Core (`client_id`, `site_id`, URL et `instance_uuid`) puis délégué à Stats AWM. Le canal suit les mêmes protections Connector et transports de secours que le reste de la plateforme sans modifier les secrets existants.

Cette identité site-scoped permet à Stats et Health de consolider tous les sites d’un client tout en conservant la source exacte de chaque KPI.

# Core AWM 4.5.157 — composition anti-rétrogradation et réconciliation dépôt

## Correction critique 4.5.157

Core 4.5.156 possédait encore deux bootstraps historiques destinés à amorcer Studio 1.14.0 et Tech 1.6.8 lorsqu ils étaient absents. Leur enregistrement dans la publication active ne vérifiait pas la version déjà effective. Après une promotion directe, un chargement admin pouvait donc réécrire silencieusement Studio 1.16.0 vers 1.14.0 ou Tech 1.6.9 vers 1.6.8.

Core 4.5.157 rend ces bootstraps strictement anti-rétrogradation et ajoute une réconciliation idempotente entre le dépôt central et la publication active. Une version strictement supérieure déjà importée est automatiquement repromue avec les mêmes contrôles Vault, SHA-256, roadmap et historique que l import direct.


## Import rapide unifié 4.5.156

La zone d import de la carte « Publication active » accepte maintenant aussi bien une Suite complète qu un ZIP de module autonome. Core identifie le paquet par sa convention de nommage, puis utilise exactement le même validateur spécialisé que les formulaires avancés. Un module supérieur peut donc être importé et promu sans reconstruire toute la Suite.


- La roadmap publique peut maintenant servir de point de départ de review entre conversations grâce aux snapshots de documentation de la version effective.
- Core conserve les paquets chiffrés et ne rend public que le texte filtré de README.md, CHANGELOG.md et ROADMAP.md.

# Core AWM 4.5.154 — dépôt de modules + composition de Suite

Core AWM 4.5.154 sépare maintenant les versions de modules des snapshots Suite. Un administrateur peut importer directement un ZIP de module dans un dépôt privé chiffré; les nouveaux imports directs doivent conserver `README.md`, `CHANGELOG.md` et `ROADMAP.md`. Lors de la publication d une Suite, Core vérifie d abord la cohérence interne du ZIP puis conserve automatiquement toute version supérieure déjà disponible dans le dépôt ou dans la publication active. Aucun downgrade automatique n est permis.

Les imports directs peuvent être promus immédiatement dans la publication active lorsqu ils sont supérieurs. Chaque promotion met à jour `roadmap_sync.versions`, ajoute un avancement Livré issu de la roadmap du module, conserve une entrée `composition_revisions` et écrit dans le journal de sécurité. Les erreurs de validation sont également journalisées. Le stockage des paquets reste privé, chiffré et contrôlé par SHA-256.

# Core AWM 4.5.153 — heure Alliance canonique

Suite 4.5.153 corrige les horodatages de l administration Alliance : stockage UTC, affichage `America/Toronto` avec HNE/HAE automatique, historique des publications reconstruit depuis les identifiants UTC et Tech AWM 1.6.8 aligné sur la même horloge. La télémétrie multi-sites 4.5.152 reste inchangée.

# Core AWM 4.5.147

Suite 4.5.147 publie **CRM AWM 1.6.19**. La fiche client multi-sites reçoit une interface premium responsive, un `site_type` canonique distinct de l'environnement technique et des actions directes Ajouter / Promouvoir / Supprimer. Tech AWM reste en 1.6.6 et continue de consommer le même `client_id` / `site_id`.

Suite 4.5.146 publie **CRM AWM 1.6.18** et **Tech AWM 1.6.6**. La fiche client canonique supporte maintenant un site principal et des sites secondaires; le site principal reste la source de vérité visuelle et Tech affiche chaque site séparément avec son rôle et son état de connexion.

# Core AWM 4.5.145

Suite 4.5.145 publie Tech AWM 1.6.5 et Hub Client 1.11.32. Le centre Tech peut maintenant relire les inventaires des sites à la demande via le canal privé Hub Client et exécute un scan central horaire pour faire ressortir les nouvelles correspondances critiques du journal de vulnérabilités. Aucune API payante n est ajoutée.


Cette livraison publie Tech AWM 1.6.4 et fait progresser le centre d opérations Alliance avec un inventaire logiciel détaillé, la comparaison des versions Suite AWM et un journal de vulnérabilités WordPress basé uniquement sur Wordfence Intelligence V3 gratuit. La clé gratuite est conservée côté Alliance dans le coffre Core et le flux est mis en cache centralement afin de limiter les appels.

Le bootstrap Tech est maintenant aligné sur 1.6.4 : paquet, cible et SHA-256 correspondent.

Cette livraison publie Tech AWM 1.6.3 et conserve Hub Client 1.11.31. Elle améliore la personnalisation de la fenêtre Tech sans toucher au moteur d intervention : opacité des fonds indépendante du texte et des bordures, choix de police, couleur d accent et presets persistants.

Les actions de page restent bornées par la session Alliance, les permissions et le post ciblé. Les écritures Elementor conservent snapshot et hash de concurrence; le repli CSS frontend est limité à une liste de propriétés sûres et peut être restauré par le rollback Tech.

# Core AWM 4.5.140

Cette livraison corrige la boucle Elementor Loading / Safe Mode : Tech AWM 1.5.17 isole totalement l iframe elementor-preview du bootstrap front-end Tech. La boîte privée Alliance conserve le thème terminal Matrix et se monte uniquement dans l éditeur.

Cette livraison durcit le déploiement Tech site par site. Core effectue d abord la mise à jour normale; si Tech reste plus ancien ou si la preuve runtime/Elementor ne revient pas, une seule réparation propre est déclenchée via Hub Client 1.11.28, puis une nouvelle vérification serveur confirme le résultat.

# Core AWM 4.5.131

Cette version corrige le 404 observe lors de `Tech AWM → Sites → Elementor`. La disponibilite de la route privee fait maintenant partie de la preuve de readiness distante, au meme titre que la version Tech reellement chargee.

# Core AWM 4.5.129

Cette version fiabilise le lancement Tech → Elementor par un **handoff serveur-à-serveur**. Core demande au site Hub Client de préparer la session, de résoudre la page en `post_id` et de retourner une URL Elementor privée. Hub Client 1.11.25 remonte ensuite la version Tech réellement chargée en PHP et invalide OPcache après les déploiements, ce qui empêche une ancienne copie runtime de masquer le nouveau code.


# Core AWM 4.5.127

Cette version corrige une incohérence de packaging de la Suite 4.5.126 : le ZIP Core et le manifeste principal étaient en 4.5.126, mais `roadmap_sync.versions.core` et `roadmap_sync.versions.suite` étaient restés en 4.5.125. Le contrôle strict de Core a donc correctement refusé l import. La Suite 4.5.127 est reconstruite à partir des versions réelles des dix paquets afin que ZIP, manifeste et roadmap soient identiques avant distribution.

# Core AWM 4.5.126

Cette version publie Tech AWM 1.5.9 et accélère le parcours d intervention Elementor. Si un site client possède une version Tech plus ancienne, le clic d intervention utilise automatiquement le paquet Tech de la publication active, vérifie la version réellement installée puis ouvre Elementor avec l unique boîte Tech privée. Le technicien n a plus à quitter Tech AWM pour déployer manuellement la version requise.

# Core AWM 4.5.124

## Stabilisation et cadence de développement
Cette version publie Tech AWM 1.5.7 et corrige l affichage du dernier contact Tech : stockage UTC, affichage dans le fuseau WordPress Alliance. Elle conserve la stabilisation Elementor de Tech 1.5.6 et aligne aussi le bootstrap Core sur Tech 1.5.7 et privilégie la fiabilité de l intervention Elementor. Les ouvertures d intervention sont prévalidées, la session est visible, la prévisualisation est attendue automatiquement et le registre roadmap est synchronisé avec la vraie version Tech.

La cadence de développement devient volontairement plus courte : un objectif principal par livraison, contrôle statique, validation terrain explicite et revue systématique des éléments à conserver dans **Futur**.

# Core AWM 4.5.105 — UX compacte et accès roadmap

Core 4.5.105 optimise l’onglet **Mises à jour** sans changer son moteur de déploiement. Le grand espace vide sous le titre est supprimé : les KPI de version, mises à jour Alliance, sites connectés et déploiement distant occupent maintenant directement la zone de gauche, tandis que la publication active et l’import de Suite restent à droite. La zone centrale affiche maintenant un accès Premium direct à la roadmap publique AWM.

La liste des sites utilise une grille compacte et ajoute **Réparer** lorsqu’un inventaire Hub Client est absent. Cette action retente immédiatement le canal sécurisé Connector et met à jour l’inventaire; en cas d’échec, le détail du site affiche la raison exacte au lieu de laisser un état ambigu.

La source client reste CRM AWM, le déploiement reste signé/chiffré et Core continue de traiter sa propre mise à jour en dernier.
## Tech AWM 1.5.2
Core publie Tech AWM 1.5.2. La section **Tech AWM → Sites** est maintenant visible dans le shell administratif et devient la vue d’entrée par défaut. Elle liste les sites Hub Client confirmés par l’inventaire Core et permet une intervention directe sans dupliquer les fiches CRM.


Tech AWM 1.5.18 conserve une intervention Alliance active pendant la navigation wp-admin et Elementor, avec personnalisation locale de la fenêtre terminale.


## Tech AWM 1.6.0
Core 4.5.139 publie le dashboard Tech source-first et l intervention frontend directe. La navigation Tech principale reste dans le menu WordPress; les cartes ouvrent des popups contextuelles vers leurs sources. Les donnees de monitoring non encore sondees ne sont pas simulees.


## Contrat temps réel Stats 4.5.172
Le canal Connector Stats existant accepte désormais le heartbeat `presence` traité par Stats AWM. Core conserve l'authentification exacte `client_id + site_id + instance_uuid`; aucun secret, IP ou GPS n'est exposé au navigateur ou stocké par Core.


## 4.5.185
Core publie Tech AWM 1.7.17 et garde le registre de flotte aligné sur la carte Centre opérations compacte.

---

## ROADMAP.md

# Core AWM 4.5.214 — déploiement manuel de flotte

## Livré
- Déployer / Forcer sur la sélection fonctionne même lorsque l'autopilote Recovery est suspendu.
- Le chemin manuel conserve signature, SHA-256, appairage, backup fichiers local et rollback.
- L'autopilote automatique demeure bloqué tant que la preuve Recovery complète par site n'est pas disponible.

## Maintenant
- Passer un Hub Client pilote de 1.11.46 vers 1.11.50 puis Tech vers 1.7.37.
- Confirmer la relecture de version dans une nouvelle requête et la disparition des erreurs `awm_remote_recovery_required`.

## Prochaines étapes
- Recovery asynchrone par site pour réactiver ensuite l'autopilote sans timeout.
- Regrouper les erreurs de flotte par code et exposer un filtre Erreurs.

# Core AWM 4.5.213 - stabilisation finale de la grille flotte

## Livre maintenant
- Colonne Actions portee a une largeur reservee de 360 px.
- Mini-grille interne pour Reparer / Voir / Deployer sans chevauchement vers la gauche.
- Scroll horizontal limite a la zone Sites connectes lorsque necessaire.
- Etat UI aligne avec le runtime : **Autopilote flotte suspendu** tant que Recovery asynchrone n est pas valide.
- Selection globale, case maitre et updater chunked des versions 4.5.211 / 4.5.210 preserves.

## Maintenant
- Valider visuellement la flotte sur Alliance a 1366 / 1440 / 1920 px.
- Ouvrir les details des sites en erreur et regrouper les causes avant toute nouvelle action de flotte.
- Reprendre CallTracker Google Ads / CPL des que la grille est validee.

## Prochaines etapes
- Filtre **Erreurs** et resume des causes de deploiement.
- Recovery fichiers + SQL en jobs asynchrones reprenables.
- Rollback visible directement depuis le tableau de bord.

# Core AWM 4.5.212 - stabilisation visuelle de la flotte

## Livre
- Colonnes Sites connectes verrouillees sur une grille commune entre entete et lignes.
- Aucun chevauchement des boutons Repar­er / Voir / Deployer sur Statut ou Mises a jour.
- Badges longs tronques proprement; defilement horizontal local si l ecran est trop etroit.

## Maintenant
- Valider la liste pendant une flotte avec erreurs, mises a jour en cours et plusieurs sites secondaires.
- Confirmer l alignement a 1366, 1440 et 1920 px, puis reprendre CallTracker Google Ads/CPL.

## Prochaines etapes
- Resumer les erreurs de flotte par cause et proposer un filtre Erreurs.
- Conserver le futur Recovery asynchrone et la progression enrichie de l updater.

# Core AWM 4.5.211 - selection flotte et updater fiable

## Livre
- Restauration de **Tout selectionner / Tout deselectionner** dans Sites connectes.
- Case maitre dans l entete de la liste, avec etat partiel lorsque seule une partie des sites visibles est cochee.
- Selection respectant recherche et filtres de la vue courante.
- Correctif d ordre d initialisation JavaScript du transport chunked 4 Mo; les handlers de selection et deploiement ne sont plus interrompus au chargement.

## Maintenant
- Publier Suite AWM 4.5.239 et confirmer la selection des 13 Hub Clients connectes.
- Tester Tout selectionner, filtre Principal, filtre Secondaire puis Tout deselectionner.
- Forcer un petit lot pilote avant de deployer la flotte complete.

## Prochaines etapes
- Ajouter un mode **Tout le parc / Vue filtree / Selection manuelle** explicite pour les gros portefeuilles.
- Afficher avant confirmation le nombre de sites et le nombre exact de mises a jour Hub Client/Tech qui seront lancees.
- Conserver le futur Recovery asynchrone/reprenable avant de reconnecter les sauvegardes SQL au chemin normal des mises a jour.

# Core AWM 4.5.210 - updater compatible ModSecurity

## Livre
- Televersement des ZIP Suite/module en blocs de 4 Mo pour rester sous la limite ModSecurity observee de 13 107 200 octets.
- Assemblage temporaire prive cote serveur avec session liee a l utilisateur, nonce, verification de taille et SHA-256.
- Import final depuis le tableau de bord sans renvoyer le ZIP complet dans `admin-post.php`.
- Les imports directs de modules, la publication d une Suite complete et l import rapide utilisent le meme transport par blocs.
- Backup fichiers + rollback local 4.5.209 conserves pour **Mettre a jour Alliance**.

## Maintenant
- Installer Core 4.5.210 une derniere fois par DirectAdmin.
- Depuis **Core AWM -> Mises a jour**, importer CallTracker 1.10.6 et verifier la progression bloc par bloc.
- Tester ensuite une Suite AWM complete depuis le meme ecran afin de confirmer que ModSecurity ne recoit plus de requete > 13 Mo.
- Conserver l autopilote flotte suspendu pendant cette validation.

## Prochaines etapes
- Afficher la taille, le nombre de blocs, le debit et la progression globale avant le traitement du paquet.
- Rebrancher Recovery complet sous forme de jobs asynchrones fichiers + SQL, avec reprise apres timeout.
- Preflight visuel des modules modifies, dependances, espace disque et rollback disponible.

# Core AWM 4.5.209 - updater tableau de bord

## Livre
- Import rapide d un ZIP module ou Suite sans passer par une longue operation Recovery.
- Mise a jour locale d un module depuis Core avec sauvegarde fichiers du module et rollback automatique.
- Le meme chemin alimente **Mettre a jour Alliance** pour une publication Suite complete.
- Garde AWM conserve hors transaction Core.

## Maintenant
- Installer Core 4.5.209 une derniere fois manuellement sur Alliance.
- Importer CallTracker 1.10.6 depuis Core -> Mises a jour pour valider le nouveau chemin module.
- Tester ensuite une petite Suite pilote avant de generaliser.

## Futur
- Rebrancher Recovery complet lorsque checkpoint/test-restore seront asynchrones et reprenables.
- Afficher progression et etapes de sauvegarde/restauration sans bloquer admin-post.php.

# Priorite de stabilisation - Suite 4.5.232

**Livraison locale candidate; non deployee.** Les evolutions fonctionnelles sont en pause jusqu'au retablissement et a la validation des sauvegardes.

## A valider avant reprise
- Installation du correctif d'amorcage, sauvegarde hebergeur et recuperation de wp-admin.
- Vrai test MySQL/MariaDB dans une base isolee; recette WordPress/Vault sur preproduction sans emails/paiements/webhooks sortants.
- Verification de la fenetre de maintenance, des cron externes, du quota, de la copie hors serveur et de la conservation des cles.

## Prochaines etapes, non livrees
- Contrat Recovery propre a chaque client_id + site_id + instance_uuid, sans reactivation implicite de flotte.
- Fournisseurs de snapshots hebergeur pour les installations non standard et bases partagees; aucune restauration partielle presentee comme complete.
- Test automatise de restauration WordPress complete sur preproduction, puis retention/offsite et tableau d'historique enrichi.
- Reprise du roadmap Health seulement apres validation de ces garde-fous.

## 4.5.203 - Secours et points de restauration obligatoires - 2026-09-12

- Isolation des callbacks Health et protection du calcul global contre Throwable; une source defectueuse devient indisponible sans diagnostic invente.
- Nouveau panneau Core > Restauration; moteur CLI externe avec points chiffres fichiers + base, journal hors DB, verification et confirmation explicite.
- Les imports/publications et deploiements locaux exigent une configuration privee et un test de restauration SQL/fichiers sur l'hebergement.
- Autopilote AWM, distribution/deploiements distants et anciennes restaurations fichiers seules sont suspendus. Suite 4.5.231, Core 4.5.202 et CRM 1.6.28 sont bloques comme cibles.
- Aucun rollback DB automatique. Les huit autres modules ne sont pas reconstruits. Lire le guide de secours pour le premier amorcage Core/CRM par SFTP.
- Tests locaux : code reel AWM avec fonctions WordPress doubles, vraie restauration des fichiers et vrai chiffrement; SQL et bootstrap WordPress simules. Validation hebergeur requise.

# Awm Hub Core 4.5.202 — Pulse v2 et première couche Health AWM

## Livré
- Le contrat Pulse accepte maintenant un score /100, un état de fraîcheur et des raisons courtes, tous assainis par Core.
- Health AWM calcule un score Suite explicable et conserve au maximum 48 instantanés espacés d au moins 30 minutes.
- Aucune note Health ne déclenche une action distante; la règle AWM-HEALTH-PULSE-001 l impose dans la mémoire de développement.

## Prochain lot accéléré
- Étendre le score explicable au niveau client + site à partir des sources canoniques, sans dupliquer Stats/CRM/Tech.
- Ajouter les prescriptions Health avec approbation humaine et preuve de source.

# Core AWM 4.5.201 — Pulse opérationnel transversal

## Livré
- Ajoute le contrat transversal `awm_core_module_pulses` et son rendu dans Santé du système.
- Agrège un pulse explicite pour les 10 modules AWM, dont l état de flotte Hub Client reçu par `fleet_state`.
- Ajoute la règle mémoire AWM-MODULE-PULSE-001 : données compactes, lecture seule, sans secrets ni contenu client brut.

## Prochain lot accéléré
- Faire consommer les pulses par Health AWM pour un score de santé explicable par client/site/module.
- Ajouter seuils de fraîcheur et historique de pulse avant toute automatisation prescriptive.

# Core AWM 4.5.200 — publication Suite 4.5.229 / Tech 1.7.32

- **Livré** : registre public aligné sur Tech AWM 1.7.32 et Suite AWM 4.5.229.
- **Livré** : règle `AWM-TECH-OPS-PREFLIGHT-001` pour le préflight Connector / permissions / OPcache, la tournée groupée client + site et la capacité par responsable sans automatisation cachée.
- **Livré** : roadmap publique, changelog, notes et validation/logs synchronisés avant publication.
- **Sécurité** : aucune donnée sensible, chemin serveur, secret Connector ou clé API n est ajoutée au préflight public.

# Core AWM 4.5.199 — publication Suite 4.5.228 / Tech 1.7.31

- **Livré** : registre public aligné sur Tech AWM 1.7.31 et Suite AWM 4.5.228.
- **Livré** : règle `AWM-TECH-OPS-PRIORITY-001` pour un score opérationnel explicable, des actions recommandées sûres et l historique 24 h / 7 j sans duplication Stats.
- **Livré** : roadmap publique, logs et documentation de livraison restent obligatoires et synchronisés.

## Core AWM 4.5.197 — publication 4.5.226 / Tech 1.7.29

- Registre public aligné sur **Suite AWM 4.5.226** et **Tech AWM 1.7.29** sans rétrogradation des autres modules.
- La roadmap publique documente le diagnostic Wordfence Intelligence V3 non bloquant et la distinction obligatoire entre clé **Account > Integrations** et licence du plugin Wordfence.
- La mémoire de développement ajoute **AWM-TECH-SECURITY-001** : une erreur de fournisseur externe ne doit pas masquer l interface Tech et doit fournir diagnostic + action de correction sans exposer les secrets.
- ROADMAP, CHANGELOG, notes et validation/logs restent obligatoires avant le ZIP final.

## Core AWM 4.5.196 — publication 4.5.225 / Tech 1.7.28

- Registre public aligné sur **Suite AWM 4.5.225** et **Tech AWM 1.7.28** sans rétrogradation des autres modules.
- La roadmap publique documente les alertes/priorités entièrement cliquables, la typographie propagée aux overlays Tech et la personnalisation indépendante du Mode moniteur.
- La mémoire de développement ajoute la règle **AWM-TECH-DASH-006** pour imposer ces comportements dans les prochaines itérations.
- La gouvernance de livraison ajoute **AWM-RELEASE-LOG-001** : ROADMAP, CHANGELOG, notes de livraison et validation/logs doivent être synchronisés avant toute remise de ZIP.

## Core AWM 4.5.195 — publication 4.5.224 et édition Tech sans panneau superposé

- Registre public aligné sur Tech AWM 1.7.27 et Suite AWM 4.5.224.
- Ajoute la règle durable `AWM-TECH-DASH-005` : le panneau Personnaliser se retire pendant le drag & drop et une barre Enregistrer/Annuler reste disponible au bas du dashboard.
- La roadmap publique expose cette amélioration comme livrée et conserve la validation terrain 1080p / 4K comme étape active.
- Aucun changement aux Connectors, `site_id`, `instance_uuid`, secrets, signatures, autopilote ou données opérationnelles.

## Core AWM 4.5.194 — publication 4.5.223, responsive interne et typo des fiches Tech

- Registre public aligné sur Tech AWM 1.7.26 et Suite AWM 4.5.223.
- La règle `AWM-TECH-DASH-004` impose le responsive selon la largeur réelle du bloc et la transformation des tables trop étroites en cartes lisibles.
- La même préférence **Typographie dashboard** doit maintenant suivre jusque dans les fiches Tech, leurs onglets, métriques, SEO, WordPress, sécurité, historique et actions.
- La roadmap publique décrit le dropdown de liens personnalisés, le bouton Fermer compact, les corrections container-responsive et la typographie cohérente des fiches.
- Aucun changement aux Connectors, `client_id`, `site_id`, `instance_uuid`, secrets, permissions ou politiques de déploiement.

## Core AWM 4.5.193 — publication 4.5.222 et shell Tech compact

- Registre public aligne sur Tech AWM 1.7.25 et Suite AWM 4.5.222.
- Le dashboard Tech conserve la grille 12 colonnes, mais les raccourcis personnels sont maintenant integres au shell superieur et Personnaliser devient une icone compacte a cote du bouton Light/Dark.
- Formalise la regle de densite du shell Tech : aucun bloc pleine largeur ne doit etre ajoute uniquement pour les raccourcis ou l action de personnalisation.
- Le panneau Personnaliser doit conserver un contraste natif coherent pour les listes deroulantes en Light et Dark.
- Les contrats Connector, client_id, site_id, instance_uuid, autopilote et signatures restent inchanges.

## Core AWM 4.5.192 — publication 4.5.221 et grille Tech

- Registre public aligné sur Tech AWM 1.7.24 et Suite AWM 4.5.221.
- Formalise dans la mémoire de développement le moteur de grille Tech 12 colonnes, les largeurs ancrées et l adaptation interne des blocs.
- Conserve les contrats Connector, `client_id`, `site_id`, `instance_uuid`, l autopilote et les paquets signés sans changement.
- La roadmap publique reste couplée à `roadmap_sync` et doit afficher Suite 4.5.221 après publication.

## Core AWM 4.5.191 — publication 4.5.220 et roadmap suivie

- Registre public aligné sur Tech AWM 1.7.23 et Hub Client AWM 1.11.44.
- La publication Suite reste l autorité de synchronisation de `/hub/roadmap/` via `roadmap_sync`; aucune livraison n est considérée complète sans cette synchronisation.
- Conserve l autopilote de flotte, les paquets signés, SHA-256, sauvegarde et rollback.

# Core AWM 4.5.190 — registre 4.5.219

- [x] Publier Tech AWM 1.7.22.
- [x] Conserver CRM 1.6.26 et Hub Client 1.11.43 sans rétrogradation.
- [x] Formaliser la règle UX AJAX locale dans la mémoire de développement AWM.

- [x] Publier Tech AWM 1.7.21.
- [x] Conserver les versions supérieures déjà présentes et ne provoquer aucun downgrade.
- [x] Roadmap public aligné sur la Suite active après publication.

# Core AWM 4.5.188 — registre 4.5.217

- [x] Publier Tech 1.7.20 et CRM 1.6.26.
- [x] Conserver Hub Client 1.11.43 et l autopilote flotte sans régression.


## Livré
- Dernière implantation publique dérivée de la Suite active.
- Versions effectives Core / Tech / Hub Client alignées avec 4.5.216.

## Maintenant
- Valider après publication que `/hub/roadmap/` affiche Suite 4.5.216 en première implantation.

# 4.5.186 — réconciliation automatique de flotte

**Livré :** les publications Stable sont poussées automatiquement à la flotte Hub Client/Tech en petits lots. Le technicien n a plus à sélectionner les sites pour une mise à jour normale.

**Maintenant :** publier la Suite 4.5.215 et vérifier qu un site Hub Client 1.11.42+ passe de `Auto programmé` à `À jour` sans action manuelle.

**Prochaines étapes :** tableau d état de la file autopilote (dernier lot, erreurs, prochaine tentative) et fenêtre de maintenance optionnelle par client.

# 4.5.185 — carte Tech compacte

**Livré :** registre Suite aligné sur Tech 1.7.17, avec suppression des rangées encombrantes au-dessus de la carte et intégration du Mode moniteur dans sa barre d’outils.

**Maintenant :** validation visuelle Centre opérations et fenêtre Moniteur à 1366 / 1440 / 1920 px.

# 4.5.184 — fiche Tech console opérationnelle

**Livré :** registre public aligné sur Tech 1.7.16 avec la fiche Tech hiérarchisée, la zone À faire, les onglets métier et les filtres WordPress.

**Maintenant :** valider la densité et la lisibilité sur 1366 / 1440 / 1920 px et sur un site sain, No-index et avec plusieurs mises à jour.

**Prochaines étapes :** réconciliation centrale de flotte et rafraîchissement ciblé du diagnostic Tech depuis la fiche.

# 4.5.183 — visibilité autopilote flotte

- Registre Hub Client porté à 1.11.42.
- Dans Sites connectés, les mises à jour Hub Client/Tech prises en charge par Hub Client 1.11.42+ sont indiquées **Auto en attente** au lieu de simplement **Prêt**.
- Le bouton Déployer reste disponible comme forçage manuel immédiat.

# Core AWM 4.5.182 — Mode moniteur et fiche Tech complète

**Livré :** registre public aligné sur Tech 1.7.15; aucun changement de contrat Connector ou de sécurité.

# Core AWM 4.5.181 — maintenance de flotte WordPress

**Livré :** le registre de publication connaît Hub Client 1.11.41 et Tech 1.7.14, avec les règles de sécurité qui séparent le canal signé AWM des mises à jour WordPress tierces.

**Maintenant :** faire passer au moins un site pilote de Hub Client 1.11.40 à 1.11.41 une dernière fois manuellement, puis confirmer que la publication Hub Client suivante est récupérée automatiquement sans approbation WordPress.

**Prochaines étapes :** tableau de réconciliation de flotte dans Core pour distinguer sites à jour, retardataires, erreurs de filesystem et derniers résultats d autopilote.

# Core AWM 4.5.180 — garde d activité CRM

**Livré :** la frontière de sécurité Core consulte le statut CRM avant toute autorisation client, y compris Connector, sessions API et commandes distantes.

**Maintenant :** valider qu un Connector déjà appairé retourne 403 pendant l inactivité puis reprend après réactivation sans nouvelle clé.

## 4.5.179 — Hub Connector www/apex et densité du shell

- [x] Accepter `www.domaine.ca` et `domaine.ca` comme le même site canonique lors de l appairage.
- [x] Garder les autres sous-domaines, ports et chemins WordPress strictement isolés.
- [x] Journaliser les valeurs canoniques attendues/reçues lors d un refus sans exposer de secret.
- [x] Permettre aux modules AWM d afficher version/état/sécurité directement dans le shell principal.
- [ ] Maintenant : valider un nouvel appairage sur allodemenagement.ca puis confirmer la présence et le heartbeat Connector dans Tech.

## 4.5.178 — règle UX globale des notices

- [x] Masquer les notices WordPress/tiers sur tous les écrans `awm-*` / `awm_*`, incluant Tech AWM.
- [x] Conserver le loader AWM comme canal des confirmations et erreurs métier nécessaires.
- [ ] Futur : registre central typé des messages AWM (succès, info, avertissement, erreur) avec historique optionnel pour les opérations longues.

# Suite AWM 4.5.177 — Screpy dans Stats / Health

## Livré en 4.5.177
- Stats AWM 1.7.0 consomme Screpy côté serveur comme couche d observation technique.
- Clé API Alliance unique protégée par Core Vault.
- Association automatique domaine exact ↔ `site_id` runtime, sans modifier les Connectors existants.
- Health reçoit les snapshots Screpy et produit les signaux déterministes; Studio reste la couche d action.
- Mémoire AWM : `AWM-STATS-009` interdit de recréer inutilement crawler, Rank Tracker, CWV ou uptime déjà fournis par Screpy.

## Suite logique
- Comparaisons de crawls avant/après et preuve de valeur AWM.
- Prescriptions Health issues des Quick Wins avec priorité/impact.
- Passage ciblé des pages à corriger vers Studio AWM.

---

# Suite AWM 4.5.176 — carte Stats Light/Dark réelle

## Livré en 4.5.176
- Stats 1.6.2 conserve OpenStreetMap standard en mode Light et applique réellement le rendu sombre lorsque le shell AWM est en Dark.
- Détection explicite de `awm-theme-dark` et changement de thème à chaud sans rechargement.
- Les contrôles, popups et attributions Leaflet suivent également le thème.
- Core masque complètement les remplissages de progression à 0 % pour supprimer le pixel fantôme observé au scroll.
- Mémoire AWM : `AWM-STATS-008`.

## Livré en 4.5.175
- Stats 1.6.1 retire CARTO du chemin critique et utilise OpenStreetMap standard sans clé API.
- Le thème sombre de la carte est produit localement en CSS; aucun compte Mapbox/CARTO/Stadia n'est requis par défaut.
- Une indisponibilité temporaire des tuiles n'interrompt jamais les présences, KPI ou listes en direct.
- Mémoire AWM : `AWM-STATS-007` rend ce comportement obligatoire pour les versions futures.

## Livré en 4.5.174
- Stats 1.6.0 rafraîchit silencieusement les KPI et sections sans recharger la page.
- Hub 4.5.54 empêche le loader global de s ouvrir sur le polling de fond.
- Carte temps réel clair/sombre avec marqueurs visibles, regroupement simple et repli fuseau navigateur lorsque GeoIP local est incomplet.
- Premiers signaux Health local-first pour collecte, trafic, formulaires et conversions.
- Mémoire AWM : AWM-STATS-006 + AWM-UX-003.

## Livré en 4.5.173
- Core expose des bornes de périodes UTC basées sur `America/Toronto` et des dates locales HAE/HNE automatiques.
- Stats 1.5.1 convertit tous ses timestamps visibles vers l heure de Montréal et découpe ses périodes quotidiennes selon ce fuseau.
- La règle Mémoire AWM `AWM-TIME-001` rend ce contrat obligatoire pour toute la Suite.
- Les données historiques ne sont pas réécrites : elles restent UTC et sont converties à l affichage.

# Suite AWM 4.5.172 — visiteurs en direct Stats

## Livré en 4.5.172
- Contrat inter-modules `presence` temps réel via le Connector Stats existant.
- Heartbeat Hub Client site-scoped, éphémère et sans adresse IP/GPS.
- Carte GeoIP approximative et liste live, avec expiration et purge rapide.
- Règle Mémoire AWM-STATS-005 pour figer la confidentialité du temps réel.

# Suite AWM 4.5.171 — annuaire Stats piloté par les Connectors

## Livré
- Contrat Core partagé pour lister uniquement les Connectors Hub Client runtime autorisés.
- Stats 1.4.1 construit ses clients à partir des `client_id` réellement connectés et ses sites à partir des `site_id` runtime actifs.
- CRM reste la source métier des sites déclarés et enrichit les libellés, sans peupler artificiellement Stats.
- La vue consolidée exclut les anciennes sources déconnectées des KPI actifs tout en préservant leur historique.

## Validation terrain
- Déménagement Hull doit apparaître dès qu’au moins un de ses sites est runtime connecté.
- Un client CRM sans Connector actif ne doit pas apparaître dans Stats.
- GADS doit apparaître sous Déménagement Hull uniquement lorsque son propre Connector est runtime autorisé.
- Les KPI « Tous les sites connectés » doivent égaler la somme des sites actifs sélectionnables.

# Core AWM 4.5.170 — cohérence Stats / Health

- Livré : API Stats site-scoped (`site_id`) et période 365 jours.
- Vérifié : aucune modification requise pour Hub Client, CRM, Tech, Studio, CallTracker, Assistant ou Soutien pour ce contrat de lecture.
- Prochaine étape : exposer les futures données commerciales Health avec le même contrat client/site.

# Core AWM 4.5.169 — déploiement connecté uniquement

- La vue **Sites connectés** doit provenir uniquement des Connectors runtime autorisés.
- Les sites CRM non liés ou seulement en pairing restent hors de la liste de déploiement.
- Filtres Principal / Secondaire pour les parcs multi-sites.
- Vérifier que Stats/Health continuent de conserver l historique d un site déconnecté sans le présenter comme une cible distante active.

# Core AWM 4.5.168 — réparation canonique Mémoire AWM

## Livré dans 4.5.168

- Restaurer automatiquement les seules révisions seed `v1` système dont l empreinte est invalide, sans dépendre de leur SHA historique.
- Préserver toutes les révisions `v2+`, statuts, archives, dates et règles créées par les administrateurs.
- Exécuter la réparation avant le calcul de santé et avant tout préflight de publication.
- Afficher un diagnostic de migration visible dans Mémoire AWM.
- Conserver le chemin de récupération Core supérieur et fournir un outil de réparation autonome temporaire.

## Validation terrain

- Les 50 anomalies historiques doivent passer à 0 sans supprimer les règles.
- Une vraie anomalie sur une règle non-seed ou une révision utilisateur doit rester critique.
- Après réparation, la publication Suite doit fonctionner normalement et créer son snapshot mémoire.

# Core AWM 4.5.166 — réparation Mémoire AWM par SHA canonique

## Livré dans 4.5.166

- Reconnaître les seeds historiques par leur `content_hash` canonique officiel, indépendamment de la valeur SQL corrompue.
- Restaurer uniquement les révisions système v1 prouvées par SHA; toute empreinte inconnue reste bloquante.
- Ne considérer la migration terminée qu après un contrôle réel à 0 anomalie.
- Relancer la réparation sûre juste avant le préflight de publication.
- Fournir une action administrative manuelle de réparation des seeds reconnus dans le bloc Santé.

## Validation terrain

- Après remplacement de Core 4.5.165 par 4.5.166, **Mémoire AWM** doit passer de 50 anomalies critiques à 0 sans supprimer les règles.
- La publication d une Suite doit ensuite être autorisée et créer normalement son snapshot mémoire.
- Toute altération dont le SHA ne correspond pas à un seed officiel doit continuer à bloquer la publication.

---

# Core AWM 4.5.165 — fiabilité Mémoire AWM

## Livré dans 4.5.165

- Réparer automatiquement les 50 seeds Mémoire AWM affectés par le défaut de format SQL des versions 4.5.162 à 4.5.164.
- Conserver le préflight de publication strict pour toute vraie anomalie d intégrité.
- Journaliser le nombre de révisions réparées et le nombre d anomalies restantes.
- Garantir les futures révisions avec 16 formats SQL pour 16 colonnes.

# Core AWM 4.5.164 — multi-sites dans Mises à jour

## Livré dans 4.5.164
- Une ligne par `client_id + site_id` dans **Sites clients**.
- Inventaires séparés par site et conservation du fallback historique uniquement pour le site principal.
- Rafraîchir, Déployer, Réparer, Vérifier et Rollback transportent tous `site_id`.
- Liens de paquets et signatures liés au secret du Connector du site précis.
- Offres de mise à jour site-scoped pour Hub Client principal et secondaires.
- Sites secondaires CRM visibles avant appairage complet avec état clair.

## Validation terrain
- Déménagement Hull doit afficher au minimum `demenagementhull.ca` (principal) et `www.demenagementhull.com` / GADS (secondaire) comme deux lignes distinctes.
- Après appairage du secondaire, rafraîchir son inventaire ne doit modifier ni l'inventaire ni le statut du principal.
- Déployer Hub Client/Tech sur le secondaire doit utiliser son `site_id`, son `instance_uuid` et son secret de scan propres.

---

# Core AWM 4.5.163 — import direct robuste

## Livré dans 4.5.163
- Accepter les copies de téléchargement renommées par le navigateur sans confondre `-1`, `-2`, etc. avec une version de plugin.
- Maintenir une correspondance stricte entre version du ZIP et header `Version:` du plugin.
- Conserver SHA-256, documentation obligatoire, dépôt privé et protections anti-downgrade.

# Core AWM 4.5.162 — Mémoire AWM mini-Git

## Livré dans 4.5.162
- Mémoire persistante des règles, faits et décisions de développement dans Core.
- Historique immuable par révision avec SHA-256, parent, auteur, source, raison du changement et modules impactés.
- Détection de conflits entre conversations basée sur la version lue.
- Archivage sans suppression et restauration par nouvelle révision.
- Refus local des secrets et valeurs sensibles.
- Import initial de 50 règles AWM consolidées pertinentes.
- Écran administrateur **Core AWM → Mémoire AWM** avec recherche, filtres, historique, diff entre révisions, santé, snapshots et export JSON.
- Bloc de santé Mémoire AWM dans le tableau de bord Core.
- Préflight mémoire avant publication et snapshot automatique après publication.
- API PHP contextuelle pour charger uniquement les règles utiles au module/action en cours.

## Maintenant
- Utiliser la mémoire AWM comme checklist lors de la revue multi-sites en cours sur Core, CRM, Stats/Health, Tech, Hub, Hub Client, Studio, CallTracker, Assistant et Soutien.
- Continuer à inscrire dans la mémoire toute nouvelle règle transversale validée afin qu elle survive aux changements de conversation.

## Prochaines étapes
- Ajouter une étape de review/approbation optionnelle pour les règles critiques avant activation.
- Ajouter une matrice d impact automatique reliant une règle modifiée aux versions/modules qui doivent être revus avant publication.
- Ajouter un export de snapshot mémoire au paquet de publication pour audit hors ligne.

---

# Core AWM 4.5.161 — fallback Connector secondaire site-scoped

## Livré dans 4.5.161
- Stockage de secours par client/site quand l'INSERT SQL secondaire reste impossible après toutes les réparations 4.5.159–4.5.160.
- Même contrat logique pour SQL et fallback : `client_id + site_id + instance_uuid`.
- Index de pairing/runtime directs et non-autoloadés; aucune recherche globale d'utilisateur.
- Compatibilité complète avec Hub Client, Stats, Health et Tech via la même API Core.
- Conservation du Connector principal et de tous les historiques existants.
- Journal sûr `connector_site_storage_fallback` sans secret.

**Maintenant :** générer la clé du secondaire `www.demenagementhull.com`, l'appairer avec Hub Client, vérifier qu'il apparaît séparément dans Stats puis dans Health tout en restant consolidé sous le même `client_id`.

**Prochaines étapes :** ajouter dans Santé du système une vue lisible du backend de stockage de chaque Connector (`SQL` ou `fallback`) et une migration automatique fallback → SQL lorsqu'un registre sain est confirmé.

---

# Core AWM 4.5.158 — collecte Stats multi-sites

## Livré
- Route Connector Stats site-scoped et délégation à Stats AWM.
- Ponts de secours limités par liste blanche explicite.
- Conservation de l'isolation par site sans casser la consolidation au niveau client.
- Source prête pour Stats/Health : tous les sites Hub Client d'un client conservent leur `site_id` et peuvent être consolidés sans doublon.

## Maintenant
- Validation terrain sur au moins un client possédant plusieurs sites.

## Prochaines étapes
- Santé de collecte par site dans l'écran Santé système.

# Core AWM 4.5.157 — consolidation parallèle et anti-rétrogradation

## Maintenant — validation 4.5.157

- Confirmer qu un Studio 1.16.0 déjà importé redevient automatiquement la version effective après installation de Core 4.5.157.
- Confirmer que Tech 1.6.9 n est plus ramené à 1.6.8 par son bootstrap historique.
- Vérifier que l écran Mises à jour propose ensuite les versions effectives à installer localement sans réimport.
- Continuer la consolidation multi-conversations en relisant dépôt, logs, `CHANGELOG.md`, `ROADMAP.md` et `README.md` avant chaque livraison.


- Livré : la zone rapide Publication active détecte automatiquement les ZIP Suite et les ZIP de modules autonomes.
- Livré : `studio-awm-X.Y.Z.zip`, `tech-awm-X.Y.Z.zip`, Core, CRM, Hub Client et les autres modules connus peuvent passer par le même point d entrée rapide.
- Livré : le validateur spécialisé Suite/Module demeure l autorité; aucune protection du dépôt, du Vault ou de l anti-rétrogradation n est contournée.
- Maintenant : importer Studio AWM 1.15.0 par la zone rapide et confirmer sa promotion dans la publication active 4.5.155.

- Livré : liens de contexte développement et documents versionnés sur la roadmap publique.
- Livré : extraction à la demande depuis le paquet chiffré avec redaction automatique des lignes sensibles.
- Maintenant : valider les liens publics sur les dix modules après publication 4.5.155.

# Suite AWM 4.5.154 — dépôt de modules et releases composées

## Livré
- Upload direct des modules dans Core AWM.
- Dépôt privé chiffré avec historique de versions, SHA-256 et métadonnées de documentation.
- README / CHANGELOG / ROADMAP obligatoires pour les nouveaux imports directs.
- Promotion immédiate possible d un module supérieur dans la publication active.
- Résolution automatique Suite → dépôt → publication active sans rétrogradation.
- Mise à jour automatique de `roadmap_sync` avec la version réellement effective.
- Logs de sécurité pour import, promotion, résolution, publication et erreurs.
- Historique `composition_revisions` pour les changements de composition.

## Maintenant
- Valider un flux parallèle : importer une nouvelle version Studio et une nouvelle version Tech indépendamment, puis publier une Suite contenant des versions plus anciennes et confirmer que les versions supérieures sont conservées.
- Confirmer le déploiement local et distant des versions effectives résolues.

## Prochaines étapes
- Ajouter une vue de comparaison détaillée avant publication : version du ZIP Suite, version du dépôt, version active et version effective.
- Ajouter des contraintes explicites `requires_core` / dépendances inter-modules au manifeste de module pour enrichir le calcul de compatibilité.

## Futur
- Branches stable/bêta par module avec promotion contrôlée et tests automatiques avant passage stable.
- Signature cryptographique de build au niveau de chaque module en plus du SHA-256 et du coffre privé.

# Suite AWM 4.5.153 — heure Alliance canonique

## Livré
- Core AWM 4.5.153 et Tech AWM 1.6.8.
- Fuseau administratif Alliance fixé à `America/Toronto`, avec HNE/HAE automatique, sans modifier le fuseau général WordPress.
- Nouvelles dates de publication stockées en UTC et converties à l affichage.
- Historique de publication existant corrigé à partir de l horodatage UTC contenu dans chaque `release_id`, sans migration destructive.
- Journal de sécurité, tâches Core et horodatages Tech centraux alignés sur la même horloge.
- Aucun Connector ni secret multi-sites modifié.

## Maintenant
- Publier la Suite 4.5.153 et vérifier que l historique Core affiche quatre heures de moins qu avant pendant l heure avancée.
- Confirmer que Tech AWM affiche le même fuseau pour Dernier contact et les activités centrales.

## Prochaines étapes
- Déploiement distant Hub Client / Tech réellement site-scoped.
- Historique monitoring 24 h / 7 j / 30 j par `site_id`.

# Suite AWM 4.5.152 — monitoring Tech par site_id

## Livré
- Core AWM 4.5.152 et Tech AWM 1.6.7.
- `awm_site_connectors` DB_VERSION 1.3 conserve `tech_profile` et `tech_profile_synced_at` par site.
- Santé, versions, mises à jour, inventaire, vulnérabilités et dernier contact ne sont plus partagés entre les sites d un même client.
- Les actualisations Tech ciblent le secret de scan et l URL du `site_id` demandé.
- Les interventions sont liées à `client_id + site_id + instance_uuid` et respectent le domaine ainsi que le sous-répertoire canonique.
- Les anciens Connectors du principal restent restaurés automatiquement comme dans la 4.5.151.

## Maintenant
- Valider ensemble un principal, un secondaire `/repertoire/` et un sous-domaine.
- Confirmer que chaque site affiche ses propres versions, alertes et dernier contact dans Tech AWM.
- Confirmer qu une intervention créée pour un secondaire est refusée par le principal.

## Prochaines étapes
- Déploiement distant Hub Client / Tech réellement site-scoped.
- Historique monitoring 24 h / 7 j / 30 j par `site_id`.
- Diagnostics de stockage Connector dans la fiche client sans exposer les secrets.

# Suite AWM 4.5.151 — cohérence de publication et restauration Connector

## Livré
- Core AWM 4.5.151 aligne strictement la version du ZIP, du manifeste et de `roadmap_sync.versions`.
- Corrige le paquet 4.5.150 qui contenait Core 4.5.150 mais annonçait encore Core/Suite 4.5.149 dans la synchronisation roadmap.
- Conserve le correctif 4.5.150 de restauration automatique des Connectors historiques du site principal.
- Le schéma `awm_site_connectors` reste en DB_VERSION 1.2.
- Le hash Connector historique est réimporté sans créer de nouveau secret ni demander une reconnexion lorsqu'il existe encore.
- Une révocation explicite reste respectée.
- L’architecture multi-sites reste isolée par `client_id + site_id + instance_uuid`.

## Maintenant
- Publier Suite 4.5.151 dans Core → Mises à jour.
- Vérifier que les anciens sites Hub réapparaissent dans « Sites clients » après la migration 1.2.
- Valider un site principal déjà connecté, un secondaire en répertoire et un sous-domaine.

## Prochaines étapes
- Monitoring Tech complet par `site_id` : santé, versions, mises à jour et dernier contact.
- Afficher les diagnostics de stockage Connector dans la fiche client sans exposer de secret.

## Futur
- Vue réseau complète par client avec disponibilité, SSL, performance, sauvegardes et vulnérabilités par site.
- Opérations groupées sécurisées avec rollback site par site.
- [x] Contrat inter-modules `presence` temps réel via Connector Stats existant.
- [x] Règle Mémoire AWM-STATS-005 : aucune IP/GPS, GeoIP approximatif seulement, présence éphémère.