Socle vérifiable
CI verte, extraction Odoo démarrée et vérifiée, plan disque 135 Go acté
La barre pleine est la construction, avec son avancement réel en teinte foncée. La barre hachurée qui la suit est la mise au point : sur un chantier d'interface, régler ce qui a été construit prend autant de temps que le construire, et ce temps n'était compté nulle part. Un bord droit épais et une flèche signifient que cette mise au point déborde l'échéance du 22/11.
Chaque barre est le nombre de chantiers programmés cette semaine-là. La ligne marque la capacité retenue au plan : 7 chantiers menés de front. Au-dessus de la ligne, le calendrier prévoit plus de travail simultané qu'on ne peut en conduire — aucune semaine n'est dans ce cas.
CI verte, extraction Odoo démarrée et vérifiée, plan disque 135 Go acté
Un environnement de recette accessible, servi par notre serveur
Connexion par code email de bout en bout, contrats v1 GELÉS. + le contrat des marchés, réglages de site et fonds documentaire est servi et ses contraintes tiennent en base (ADR 0013-0015).
L'environnement de production existe et répond, sans données
Mail entrant → réponse → fermeture auto → réouverture reliée au fil. + l'aiguillage vers le revendeur est affiché avec son motif et corrigible à la main (ADR 0012). Le comportement du clavier au téléphone est MESURÉ sur un appareil réel — dette ouverte, levée sans preuve le 22/08.
Les 4 sites en recette au contenu identique, redirections 301 exhaustives. + un seul site indexe un document par marché (test : trois sites français, échec si plus d'un l'indexe) ; un site en préparation est absent du sitemap ; hreflang langue-région réciproque ; changer de thème ne modifie ni URL, ni hiérarchie de titres, ni JSON-LD (ADR 0013-0015, 0017).
Un devis passé en commande Shopify payée, en bac à sable. + le bouton Store renvoie vers la boutique du marché, URL en réglage de site et non en dur (ADR 0017).
Parcours complet + test de débit vidéo mesuré depuis la Chine. + l'e-learning consomme le fonds documentaire commun, il n'en crée pas un second (ADR 0013).
Page publiée via l'éditeur, portail client validé, demande RGPD traitée. + le portail crée le ticket par SÉLECTION D'UN PRODUIT SUR UNE COMMANDE : c'est la source de l'aiguillage, pas un confort d'interface (ADR 0012).
Répétition réussie, delta < 30 min, retour arrière testé. GEL des fonctionnalités. + le contrat figé de l'application mobile est vérifié : depuis un téléphone DÉJÀ connecté, users/me, printers et un jeton de flux répondent sans reconnexion (docs/integrations/app-mobile-contrat-fige.md).
DNS des 4 sites de formation + e-learning servis par Black Cat, Odoo intact en secours
Même semaine que G7 : la répétition et la première bascule se marchent dessus. À arbitrer.
Bascule étage 2 : SAV (12 alias) + CRM. 100 % des flux hors Odoo, Odoo en lecture seule
Archive finale Odoo en 2 copies hors ligne + visualiseur lisible. Aucune régression ouverte.
Planifié SANS date : ce qui est volontairement hors du délai du 22/11. On l'écrit pour qu'il ne soit pas réinventé, et pour que la variable d'ajustement reste visible. Ordre = ordre d'allumage recommandé après la bascule. Les agents IA y sont des RACCORDEMENTS, pas des développements : ils sont déportés et se connectent par la porte de l'ADR 0020.
Les agents NE TOURNENT PAS sur ce système (ADR 0020) : ils s'y connectent par clé d'API et jeton bearer, avec des portées. Ce qui s'allume ici, ce sont des raccordements, pas des développements : classification d'urgence, puis pré-rédaction niveau 2, puis assistance client niveau 1, puis commercial. Dans cet ordre — chacun se juge sur des dossiers réels, donc après la mise en production. L'appel sortant vers les modèles passe par la passerelle api-ai.yumi-lab.com déjà en place.
Au-delà de l'édition par formulaires livrée à la bascule.
Pas seulement de l'entraide : il porte les ANNONCES communautaires, les promotions, les nouveautés produit et les mises à jour. C'est un outil marketing autant qu'un support. Conséquence de modèle, prise dès maintenant : une annonce est un DOCUMENT du fonds commun (type=annonce), pas une table du forum — sinon deux systèmes de contenu, deux traductions, deux règles d'indexation. Le forum discute l'annonce, il ne la stocke pas. Construit dans le monorepo pour réutiliser connexion, sessions, multi-marchés, recherche, médias, notifications, modération et i18n. Traduction à la demande par message, rendu NON INDEXÉ ; les annonces, elles, sont indexables comme tout document.
Appel vidéo depuis un ticket, 100 % auto-hébergé (WebRTC + TURN, repli TCP 443 pour la Chine). Hors parité Odoo.
YouTube reste en place à la bascule ; le réhébergement des 122 Go suit.
Un lien vers le portail suffit à la bascule.
pgvector et les colonnes d'embeddings sont posés dès le schéma v1 — quasi gratuit maintenant, pénible plus tard. Le reste suit.
Un revendeur branche son domaine et obtient son certificat sans nous. Repose sur le joker DNS et le job certbot déjà décidés.
En v1, la demande RGPD liste les systèmes tiers et un humain confirme leur traitement ; l'automatisation suit.
La bascule se fait ISO-CONTENU (critère du gate G3). Redessiner en même temps que migrer rend toute baisse de trafic indiagnosticable : on ne saurait pas si c'est la migration ou la refonte. La refonte vient APRÈS, quand chaque changement se mesure seul.
Le modèle de détection d'échec est possédé (code + poids) mais FIGÉ : les photographies d'entraînement n'existent plus, donc il ne peut être ni amélioré ni adapté à une nouvelle machine. Le SAV reçoit précisément les dossiers où une impression a raté : un ticket rapproché de son accéléré est une donnée ÉTIQUETÉE. Constituer ce corpus au fil des dossiers, avec consentement, transforme une dépendance figée en actif qui s'améliore. Prérequis technique : le rapprochement ticket ↔ imprimante ↔ impression, qui se décide dans le connecteur.
L'agent est DÉPORTÉ : il ne tourne pas sur ce système, il s'y connecte par clé d'API et jeton bearer avec ses portées (ADR 0020). Pour interroger un modèle, il passe par la passerelle api-ai.yumi-lab.com, déjà en place sur le même serveur — latence quasi nulle. Nous ne construisons ni l'agent, ni un second appelant de modèles : nous construisons la porte et les points d'accroche. Quatre rôles, du plus sûr au plus risqué. 1) TRI ET ANTI-SPAM : il signale, un humain confirme toute action destructive — c'est l'usage le plus rentable et le moins risqué. 2) ORIENTATION : il rattache une question au document existant qui y répond, sans rédiger. 3) DÉTECTION DES QUESTIONS RÉCURRENTES : la même question posée cinq fois devient une proposition de tutoriel dans le fonds documentaire — c'est la boucle qui a le plus de valeur, elle transforme le bruit du forum en documentation. 4) RÉPONSE PUBLIQUE : l'agent RÉDIGE, un humain PUBLIE. Cette dernière règle n'est pas négociable : une réponse de forum est publique, indexée et permanente, et elle porte sur des machines qui chauffent. Une erreur privée se corrige par un second message ; une erreur publique reste dans Google. Comme tout agent du projet (ADR 0009), il est CONTOURNABLE : le forum fonctionne entièrement sans lui, et on peut l'éteindre sans rien casser. Un fil qui révèle un vrai défaut doit pouvoir devenir un TICKET rattaché au produit — c'est le lien qui rend le forum utile au SAV plutôt que parallèle.
Graphe de connaissances TEMPOREL (famille Graphiti/Zep) : chaque fait porte son intervalle de validité, ce qui permet de demander « qu'est-ce qui était vrai le 3 mars » et « qu'est-ce qui a changé depuis » — une base vectorielle ordinaire ne répond qu'à « qu'est-ce qui ressemble à ça, maintenant ». Deux pièces : un CONNECTEUR (couche interchangeable, le graphe est un service externe, on ne se rend pas otage d'un produit qui a deux ans) et un SERVEUR MCP, porte unique des agents sur le système — lecture par défaut, toute écriture est un outil nommé et traçable, et le périmètre d'un agent ne dépasse JAMAIS celui de la personne qu'il assiste, sinon la porte des agents contourne toute l'étanchéité entre marques. ⚠️ Le JOURNAL D'ÉVÉNEMENTS qui l'alimente, lui, se demande MAINTENANT (ADR 0019) : un graphe temporel ne peut pas inventer le passé.
Avancement relevé le 31/08 sur les lots réellement cochés. Le pourcentage est celui de la lane qui porte le chantier : plusieurs chantiers peuvent partager une lane et afficher le même chiffre.
État arrêté au 20/10 à l'heure de Paris — la page est regénérée chaque matin à 6 h. L'équipe étant des deux côtés du globe, la date affichée est toujours celle de Paris.
Source unique : docs/planning/gates.json du dépôt ; un gate se marque franchi là, jamais ici.