← Roadmap publique

ROADMAP

Hub Client AWM V1.11.50Snapshot sécurisé de la version effectivement publiée. Les lignes potentiellement sensibles sont masquées automatiquement.
# Hub Client AWM 1.11.50 — séparation manuel / automatique

## Livré
- Déploiement manuel Core autorisé avec rollback fichiers local lorsque Recovery complet n'est pas encore prêt.
- Autopilote/self-update toujours fail-closed jusqu'à validation Recovery.

## Maintenant
- Valider 1.11.46 → 1.11.50 sur un site pilote depuis Core.
- Valider ensuite Tech 1.7.34 → 1.7.37 sur le même site.

## Prochaines étapes
- Exposer dans Core le code d'erreur exact et le type de protection utilisé : Recovery complet ou rollback fichiers manuel.
- Réactiver l'autopilote uniquement après Recovery asynchrone validé site par site.

# Hub Client AWM 1.11.49 - Suite 4.5.235

- L'autopilote Hub Client/Tech est désormais bloqué tant que Recovery n'a pas `recovery_ready_for_auto`; chaque mise à jour AWM admise crée un point complet fichiers + BD via `admit-deploy` et exige un redémarrage frais via `finish-deploy`.
## Livré dans 4.5.235
### 1.11.49 — Recovery auto-amorcé et télémétrie de sécurité — 2026-09-15
- Installe et raccorde automatiquement Recovery avec repli exact avant WordPress lorsque le serveur ignore la règle `.htaccess`, sans créer de dossier `/hub`.
- Adopte le raccord Bootstrap 1.1.3 déjà présent et conserve la sauvegarde privée du `index.php` original.
- Remonte à Tech uniquement des booléens de sécurité : intégrité route, périmètre backup confirmé, test de restauration et prêt pour automatisation; aucun secret.
- Les mises à jour automatiques restent bloquées jusqu'à validation réelle du périmètre et du test fichiers + SQL.

Date : 2026-09-15

## Livre dans le code candidat

Recovery 1.2.0 embarque, copie independante et installation automatique. Route /hub/recovery sans chargement WordPress. Archivage local avant transfert a Alliance; meme contenu sur plusieurs clients: pas de nouvel upload ZIP. Mise a jour tierce uniquement par le chemin protege, avec verifications fraiches.

## Validation terrain requise

Candidate de stabilisation. Aucun deploiement effectue. Recette reelle WordPress + MySQL/MariaDB + PHP-FPM/OPcache + HTTPS et watchdog systeme obligatoire avant activation. Autopilote Suite AWM toujours suspendu. Les paquets des nouvelles mises a jour tierces proviennent encore du fournisseur WordPress de chaque site; leur telechargement unique depuis Alliance reste au roadmap.

## Prochaines etapes

Telechargement central des mises a jour fournisseurs avec droits/licences par site; restauration depuis une archive Alliance absente localement; ordonnanceur et politique editables dans UI; purge physique des objets orphelins apres verification des references; tests visuels/metier et MFA de secours. Les signatures de fournisseurs ne sont pas remplacees par les seules empreintes SHA.

## Roadmap anterieure conservee

# Hub Client AWM 1.11.47 — porte Recovery annoncee

## Livre
- Annonce de la porte Recovery et de l agent CLI dans `fleet_state`.
- Sauvegarde Recovery pre-update pour les extensions lorsque le moteur externe est configure.
- Cinq versions locales conservees en fallback au lieu de trois.

## Validation terrain
- Configurer Recovery 1.1.0 sur un Hub Client pilote et verifier que Tech conserve son URL apres coupure de WordPress.
- Mettre a jour une extension tierce et confirmer les cinq archives Recovery et les cinq copies locales.
- Provoquer une panne de plugin en staging et confirmer un retour cible sans restauration DB.

## Futur
- Preuve de derniere restauration testee et espace disque Recovery dans le `fleet_state`, sans exposer les chemins serveur.

# Hub Client Awm 1.11.46 — Fraîcheur de flotte dans fleet_state

## Livré
- fleet_state transmet maintenant l âge et la fraîcheur de l inventaire en plus des versions/autopilote/canal.
- Aucun secret Connector, chemin serveur ou clé API n est ajouté au payload.

## Prochain lot accéléré
- Fenêtres de maintenance optionnelles pour autopilote/interventions distantes.
- Diagnostic local GeoIP/réseau et qualité de télémétrie sans collecte intrusive.

# Hub Client AWM 1.11.45 — Pulse opérationnel transversal

## Livré
- Envoie un `fleet_state` compact avec inventaire : versions runtime, autopilote, canal, dernier inventaire et dernier statut de mise à jour.
- Aucun secret Connector, chemin serveur ou clé API n est inclus dans cet état de flotte.

## Prochain lot accéléré
- Fenêtres de maintenance optionnelles pour l autopilote et les interventions distantes.
- Diagnostics GeoIP/politique réseau et fraîcheur de télémétrie sans collecte intrusive.

## Hub Client AWM 1.11.44 — bibliothèque WordPress

- Nouvelle route sécurisée `tech/plugin/install` pour installer, vérifier et activer une extension officielle WordPress.org demandée par Tech AWM.
- Les slugs AWM restent explicitement interdits sur cette route et continuent d utiliser le canal signé Core.
- La route réutilise l authentification Connector existante et vérifie la présence/version du plugin après installation.

# Hub Client AWM 1.11.43 — diagnostic frais piloté par Tech

## Livré
- Rafraîchissement forcé des caches de mises à jour WordPress/plugins/thèmes.
- Invalidation du cache Index/No-index sur demande Tech.

## Maintenant
- Valider un contrôle puis une mise à jour tierce (ex. SEOPress) depuis une fiche Tech.

# 1.11.42 — autopilote AWM Hub Client + Tech

- Étend l autopilote stable à Tech AWM en plus de Hub Client.
- Tech est traité avant Hub Client afin de conserver l agent courant intact jusqu à la fin du cycle.
- Les autres modules centraux AWM ne sont jamais installés automatiquement sur un site client.
- Chaque paquet continue d utiliser publication Core, signature, SHA-256, sauvegarde et rollback.
- L inventaire Hub Client relit la version réellement présente sur disque après une auto-mise à jour pour éviter un statut temporairement périmé.
- Le contrôle s exécute de façon répartie par WP-Cron (premier passage environ 5 à 35 minutes après activation, puis chaque heure).

# Hub Client AWM 1.11.41 — autopilote de maintenance

## Livré
- [x] Vérification automatique horaire de la publication stable Core après appairage.
- [x] Auto-mise à jour de Hub Client via le paquet Core authentifié, signé et contrôlé par SHA-256.
- [x] Sauvegarde locale et rollback de fichiers conservés avant remplacement.
- [x] Route privée de mise à jour d une extension WordPress tierce précise pour Tech AWM.
- [x] Refus explicite des modules AWM dans le moteur générique WordPress.
- [x] Aucun mot de passe FTP/SSH demandé ou stocké.

## Maintenant
- [ ] Déployer 1.11.41 une fois sur un site pilote encore en 1.11.40, puis publier une version Hub Client de test supérieure et confirmer le passage automatique.
- [ ] Tester une extension tierce active et inactive en mode mise à jour Tech avec sauvegarde puis vérification de version.

## Prochaines étapes
- [ ] Remonter à Core un état de flotte compact : dernier contrôle, dernière réussite, dernière erreur et version cible.
- [ ] Ajouter une politique de fenêtre de maintenance facultative pour les parcs qui veulent limiter les mises à jour tierces à certaines heures.

# Hub Client AWM 1.11.40 — localité GeoIP automatique
- Livré 1.11.40 : fallback FreeIPAPI côté serveur pour compléter ville/région/coordonnées quand le proxy ne les fournit pas.
- Livré 1.11.39 : fuseau navigateur + GeoIP proxy approximatif propagés à tous les événements Stats pour alimenter la carte historique.
- Futur : diagnostic local des en-têtes Geo disponibles et intégration MaxMind/GeoLite facultative sans service externe.

- Livré 1.11.38 : fuseau IANA navigateur comme repli de localisation approximatif pour la carte temps réel, sans GPS/IP.
- Après pairing, pousser immédiatement répertoire + inventaire.
- Un site secondaire connecté doit apparaître dans Core/Stats/Health sans action manuelle supplémentaire.
- En cas d échec réseau initial, conserver la liaison et retenter automatiquement.

# Hub Client AWM 1.11.34 — collecte KPI multi-sites

## Livré
- Tracker public automatique pour chaque installation Hub Client jumelée.
- File locale et envoi groupé par Connector avec `client_id + site_id + instance_uuid`.
- Détection du tracker historique afin d'éviter les doublons.
- Collecte sans contenu de formulaire ni paramètres d'URL.

## Maintenant
- Valider sur un client avec site principal et site secondaire que les événements apparaissent séparément dans Stats AWM puis se consolident au niveau client.

## Prochaines étapes
- Diagnostic local de qualité de collecte : dernière page vue, taille de file, dernier envoi réussi et raison d'un éventuel arrêt.
- Détection plus fine des conversions métiers configurables par client.

## Futur
- Consentement/activation conditionnelle pilotable par politique client et intégration avec les principales plateformes de gestion du consentement.

# Hub Client AWM 1.11.32 — contenu et médias Tech

## Livré
- Contexte texte Elementor étendu pour rallonger, corriger ou formaliser un contenu sélectionné.
- Remplacement sécurisé du widget image Elementor avec attachment local validé.
- Canal privé résilient de génération d image Alliance → médiathèque WordPress.

## Maintenant
- Validation terrain : couleur de titre, réécriture formelle, génération d image, remplacement et rollback.

## Prochaines étapes
- Aperçu comparatif texte/image avant écriture.

## Futur
- Même contrat média et contenu pour Gutenberg et les autres moteurs de page supportés.

# Hub Client AWM 1.11.30 — moteur d actions Tech frontend

## Livré
- Écritures Elementor sécurisées pour couleurs, fonds, typographie responsive, alignement, marges et padding.
- Snapshot et rollback conservés avant toute modification Tech.

## Maintenant
- Validation terrain des modifications frontend Tech sur pages Elementor réelles.

## Prochaines étapes
- Remplacement d image contrôlé avec bibliothèque média et alt.

## Futur
- Contrat d édition unifié Elementor / Gutenberg avec même flux Aperçu → Appliquer → Rollback.

# Hub Client AWM 1.11.29 — handoff Elementor autonome

- **Livré** : préparation Elementor directe par Hub Client lorsque le runtime Tech chargé est ancien ou vient d être remplacé.
- **Livré** : validation Connector résiliente, contrôle du domaine, post WordPress ciblé et handoff à usage unique.
- **Maintenant** : confirmer sur École Esthétique Avancée que `Tech AWM → Sites → Elementor` ouvre l éditeur avec la boîte Tech unique.
- **Prochaines étapes** : afficher dans Tech AWM la trace `session créée → handoff validé → Elementor chargé → boîte injectée`.
- **Futur** : test E2E automatique sur un site staging couvrant mise à jour à chaud, OPcache, www/domaine nu, Elementor et rollback avant chaque publication.

- **Livré** : second passage de réinstallation propre Tech AWM, avec sauvegarde et validation du paquet signé.
- **Maintenant** : confirmer sur École Esthétique Avancée le passage Tech 1.5.11 → 1.5.12 sans intervention manuelle.
- **Prochaines étapes** : afficher dans Core le motif exact ayant déclenché la réparation propre et sa durée.
- **Futur** : préflight des permissions, fichiers verrouillés et OPcache avant mise à jour afin de choisir automatiquement la meilleure stratégie de remplacement.

# Hub Client AWM 1.11.27 — paquet canonique

- **Livré** : ZIP strict avec `hub-client-awm/` comme unique dossier racine.
- **Maintenant** : déployer 1.11.27 sur les sites pilotes puis reprendre le handoff Elementor Tech.
- **Prochaines étapes** : test automatique de la structure ZIP avant chaque publication Hub Client.
- **Futur** : build reproductible depuis une arborescence propre, sans répertoire de travail ou de debug.

# Hub Client AWM 1.11.26 — preparation Elementor fiable

- **Livre** : route privee de preparation Elementor possedee par Hub Client et delegation au runtime Tech.
- **Maintenant** : validation terrain du parcours Alliance → route Hub Client → Tech → handoff → Elementor.
- **Prochaines etapes** : remonter le code de panne exact et l etape de preparation dans la fiche Tech Alliance.
- **Futur** : test de contrat automatique des routes privees Hub Client/Tech avant publication d une Suite.

# Hub Client AWM 1.11.25 — runtime Tech vérifiable

- **Livré** : invalidation OPcache et nettoyage des copies runtime concurrentes après mise à jour distante.
- **Livré** : preuve `tech_runtime_version` lue dans une nouvelle requête PHP.
- **Maintenant** : valider sur École Esthétique Avancée le parcours Hub 1.11.25 → Tech 1.5.11 → boîte Elementor unique.
- **Prochaines étapes** : afficher dans Tech AWM la preuve fichier/runtime côte à côte pendant les diagnostics.
- **Futur** : préflight automatique OPcache/PHP-FPM avant toute intervention distante et blocage préventif si le runtime ne peut pas être rafraîchi.

# Hub Client AWM 1.11.24 — interface client épurée

- Livré : retrait du panneau explicatif Sécurité de l’administration locale Hub Client.
- Livré : protections de sécurité conservées en arrière-plan sans exposer les détails techniques au client.
- Livré : Tech AWM demeure totalement invisible comme service, section ou outil client.
- Maintenant : valider l’écran Hub local sur bureau et mobile après retrait du panneau.

# Hub Client AWM 1.11.23 — séparation stricte de Tech AWM

- Livré : aucun onglet, service, carte, diagnostic ou outil Tech AWM visible au client.
- Livré : les anciennes URLs Tech du Hub redirigent logiquement vers l accueil.
- Livré : le runtime Tech reste un agent silencieux exploité uniquement par Alliance.
- Maintenant : valider la navigation complète du Hub sur bureau et mobile après retrait de Tech.

# Hub Client AWM 1.11.22 — santé Connector
- Livré : télémétrie locale des quatre transports Connector sans journalisation du secret.
- Livré : API interne de diagnostic utilisée par Tech AWM 1.4.3.
- Livré : profil Tech enrichi avec transport, dernier succès et dernier événement technique.
- Maintenant : déployer Tech AWM 1.4.3 sur les sites clients autorisés et valider les quatre canaux.

# Hub Client AWM 1.11.21 — provisioning Tech fiable
- Livré : auto-installation du paquet Tech AWM lorsque l'autorisation Alliance est active et que le runtime est absent.
- Livré : réparation sécurisée des dossiers Tech partiellement installés avec quarantaine avant remplacement.
- Livré : action manuelle Installer / réparer Tech AWM et diagnostic du dernier échec.
- Livré : validation stricte du paquet signé, SHA-256, domaine Alliance et activation après installation.
- Maintenant : confirmer Tech AWM 1.4.2 installé sur École Esthétique Avancée et Déménagement Hull.

# Hub Client AWM 1.11.20 — identité Alliance uniforme dans toutes les sections
- Livré : composant de marque canonique unique utilisé sur toutes les sections `/hub/`, y compris CallTracker, Stats, Tech AWM et Mon compte.
- Livré : protection CSS stricte contre filtres, masques, transformations, recolorations et remplacements du PNG Alliance.
- Livré : login, état non lié, portail authentifié et administration locale utilisent la même source officielle.
- Maintenant : validation visuelle terrain dans chaque section du Hub Client sur École Esthétique Avancée.

# Hub Client AWM 1.11.19 — intégrité stricte du logo Alliance
- Livré : empreinte SHA-256 canonique du logo Alliance verrouillée à `1b0dcbd96e1ed931ce785cda2918e7dc38597c214735e21c92243c02eb43b13a`.
- Livré : vérification d'intégrité avant affichage sur le menu WordPress, le bandeau Hub Client et le portail `/hub/`.
- Livré : comportement fail-closed; une copie modifiée du logo n'est jamais affichée.
- Livré : badge Hub orange maintenu comme asset séparé, sans toucher au PNG Alliance.

# Hub Client AWM 1.11.18 — logo Alliance officiel verrouillé
- Livré : logo Alliance officiel intact dans le menu WordPress, le bandeau d'administration et le portail `/hub/`.
- Livré : badge Hub orange conservé comme asset indépendant et superposé.
- Livré : suppression du SVG composite/redessiné pour empêcher toute variante graphique du logo Alliance.
- Maintenant : validation visuelle après déploiement sur École Esthétique Avancée.

# Hub Client AWM 1.11.17 — identité Alliance officielle
- Livré : vrai logo Alliance fourni par l'utilisateur, conservé intact comme asset PNG.
- Livré : badge orange Hub séparé et superposé sans modifier le logo Alliance.
- Livré : nouvelle identité appliquée au menu WordPress et au bandeau Hub de l'administration.
- Maintenant : validation visuelle sur École Esthétique Avancée après déploiement.

# Hub Client AWM 1.11.16 — identité Hub canonique
- Livré : nouvel asset `hub-awm-product-logo.svg` utilisé partout.
- Livré : cache-busting par version sur le logo Hub.
- Maintenant : validation visuelle sur le site École Esthétique Avancée.

# Hub Client AWM 1.11.15 - Auto-detection du runtime

## Livre
- Detection du vrai chemin du plugin actif.
- Inventaire self-aware.
- Migration vers hub-client-awm pendant les prochaines mises a jour.

## Maintenant
- Validation terrain sur Ecole Esthetique Avancee.

# Hub Client AWM 1.11.13 — Premium Hub client

- Livré : logo Hub AWM produit avec badge Hub dans l'administration du site client.
- Livré : CSS Premium autonome compatible avec un site client qui n'installe pas Hub AWM.
- Livré : mise en page responsive compacte de la liaison, Tech, connexion et securite.
- Maintenant : validation terrain sur Ecole Esthetique Avancee en mode bureau et mobile.

# Hub Client AWM 1.11.12 — transport Tech résilient

## Livré
- Fallback Connector admin-ajax limité à Tech.
[Ligne masquée automatiquement par Core AWM : contenu sensible potentiel]

## Maintenant
- Validation terrain HTTP 403 sur École Esthétique Avancée.

# Hub Client AWM 1.11.11 — déploiement distant robuste

## Livré
- Authentification du canal distant par en-tête ou repli dans le corps HTTPS.
- Téléchargement de paquets via le endpoint signé Core avec contrôle HTTP explicite.
- Messages d'erreur précis au lieu d'un simple `Forbidden` générique.

## Maintenant
- Valider sur École Esthétique Avancée la mise à jour Hub Client puis Tech AWM depuis Core.

## Terminé — 1.11.35
- Migration automatique des anciens Hub Connector installés sur les sites clients.
- Génération anticipée de `instance_uuid` pour les sites secondaires.
- Redirection des anciens écrans de liaison vers l'interface Hub Client canonique.
- Test terrain : liaison de `www.demenagementhull.com` au `site_id` secondaire déjà préparé dans CRM.

- [x] Heartbeat first-party pour Visiteurs en direct Stats AWM, site-scoped et sans IP/GPS.
- [ ] Résolveur GeoIP local MaxMind optionnel et diagnostic de disponibilité des en-têtes de géolocalisation.

## 1.11.40 — GeoIP localité pour Stats
- [x] Fallback FreeIPAPI sans clé pour enrichir ville/région/coordonnées quand le proxy ne fournit pas la localité.
- [x] Cache HMAC local 12 h et budget interne 45 requêtes/minute.
- [x] Ne jamais stocker ni transmettre l IP brute à Alliance; seul le fournisseur GeoIP externe la reçoit pendant le lookup.
- [x] Priorité aux en-têtes hébergeur/Cloudflare et aux résolveurs locaux avant l API externe.
- [ ] Ajouter plus tard une option UI explicite pour choisir `Auto / GeoLite local / FreeIPAPI / Désactivé` selon les besoins de confidentialité du client.
- [ ] Ajouter un diagnostic de taux de succès GeoIP par site sans exposer les IP.
- [ ] Prévoir un fallback GeoLite2 City local afin de supprimer toute dépendance externe pour les clients qui le souhaitent.