GE2 Move — rapport d'avancement

Généré le 30 septembre 2026 à 20:37 (heure de Paris) · version du code 9b1ef95

1. Résumé

Application non encore en ligne. Connexion sécurisée terminée et testée en local ; installation de test Cloudflare planifiée (offre gratuite), en attente de l'autorisation de l'outil Cloudflare.

Préparation au pilote
0 %
0 condition(s) sur 7 terminée(s) et prouvée(s)
Plan technique d'hébergement
50 %
3 phase(s) sur 6 terminée(s) avec preuve
Tests automatiques (dernier passage)
1181/1181
28 séries sur 28 · 30 septembre 2026 à 19:19
Méthode de calcul

Conditions du pilote

#ConditionÉtatFait / manque
1Parcours de base de bout en bout : dossier → inventaire → devis → planning du jour JEn cours
Fonctions présentes dans le code hérité de l'export (dossiers, inventaire, devis PDF, planning), couvertes par des tests automatiques du domaine. En ligne sur l'essai (30/09/2026) : entreprise fictive, dossier, objet, photo et devis PDF réalisés par Eric, sans erreur.
Manque : Planning du jour J non encore parcouru en ligne ; parcours complet par une autre personne non fait.
Preuves : Séries de tests : check, api, professional-ui, customer-journey-ui, final-ux-ui · docs/infra/PHASE-2-PLAN.md (9b1ef95)
2Authentification solide et cloisonnement des données entre entreprisesEn cours
Connexion par lien ou code sur invitation, sessions, page des appareils, création d'entreprise réservée à l'administrateur. 18 tests de sécurité dédiés ; cloisonnement couvert par les tests d'API. En ligne sur l'essai : connexion réelle réussie, adresse IP visiteur transmise, journaux sans donnée personnelle. Secours d'envoi Mailjet testé en conditions réelles (bascule réussie, journaux sans donnée personnelle).
Manque : Relecture par un expert extérieur non faite ; sur l'essai, pas de Cloudflare Access (décision du 30/09/2026).
Preuves : Commits 6613066 à 3d51c8a · Séries auth-security (18), entry-auth (5), api (538) · docs/infra/PHASE-1-REVUE-SECURITE.md · Commit 8b380b7 ; série sign-in-mail (12)
3Sauvegardes régulières et restauration réellement essayéeÀ faire
Export ZIP d'un espace présent dans le code hérité.
Manque : Aucune sauvegarde automatique ; aucune restauration essayée sur une installation réelle (phase 3).
4Export complet des données d'une entreprise dans un format exploitableEn cours
Export ZIP complet par flux présent dans le code hérité, couvert par des tests d'API.
Manque : Non vérifié sur une installation réelle (phase 4).
Preuves : Série api (538)
5Lieu d'hébergement connu, maîtrisé et communiqué par écritEn cours
Décisions prises (Cloudflare, données au repos en UE). Installation d'essai en ligne : base D1 en juridiction UE confirmée par Cloudflare ; photos stockées dans cette même base (R2 non activé).
Manque : Document écrit pour les pilotes à rédiger et à faire valider par le juriste.
Preuves : docs/infra/PHASE-0-ANALYSE.md (b9b98b7) · docs/infra/PHASE-2-PLAN.md (1797958)
6Bases RGPD : contrat de sous-traitance validé par un juristeÀ faire
Sous-traitants identifiés : Cloudflare, Brevo, Mailjet (secours d'envoi, en service depuis le 30/09/2026), OpenAI (si inventaire photo activé).
Manque : Contrat et information des clients à établir avec un juriste.
7Tests sur de faux dossiers par une autre personne que le fondateurÀ faire
—
Manque : Nécessite l'installation de test en ligne (phase 2) et un testeur.

Phases du plan

PhaseÉtatPreuve
0. Analyse de l'hébergementTerminédocs/infra/PHASE-0-ANALYSE.md, commit b9b98b7
1. Connexion des utilisateurs (local)TerminéCommits 6613066 à 9945d1d, fusionnés dans main ; test:local 1164/1164 ; e-mail réel reçu le 30/09/2026
Trois vérifications ne sont possibles qu'en ligne (IP visiteur, cookie Secure réel, journaux) : elles sont inscrites au plan de la phase 2.
2. Installation de test sur Cloudflare (offre gratuite)TerminéEssai en ligne sur https://essai.ge2move.net (UE), 0 €. Parcours complet réussi (commits 43d531c, 02c482e) ; secours Mailjet testé en réel le 30/09/2026 (commit 8b380b7) ; bilan dans docs/infra/PHASE-2-PLAN.md (commit 9b1ef95).
Sans Cloudflare Access ni R2 (choix d'Eric) ; temps de calcul au-dessus de la limite nominale gratuite, sans rejet constaté.
3. Sauvegardes et restauration testéeÀ faire—
4. Préparation pilote (plafond de dossiers, export vérifié)À faire—
5. Raccordement de app.ge2move.comÀ faire—

2. Dernières modifications du code (14 derniers jours)

25 enregistrement(s) dans Git. Source : historique Git du projet.

DateModificationRéf.
30 septembre 2026Phase 2 terminée : bascule Mailjet testée en ligne, bilan de phase.9b1ef95
30 septembre 2026Secours d'envoi des e-mails : Mailjet remplace Cloudflare (payant) ; tests adaptés.8b380b7
30 septembre 2026Logo du menu rendu lisible.7cd79cb
30 septembre 2026Menu de navigation fixe de l'espace professionnel (ordinateur et téléphone), plus aucun contenu masqué.718ce82
30 septembre 2026Parcours complet réussi sur l'essai en ligne (dossier, photo, devis PDF).02c482e
30 septembre 2026Correctif : sur Cloudflare, des enregistrements réussis étaient signalés en erreur ; comptage aligné, tests renforcés.43d531c
30 septembre 2026Essai mis en ligne sur essai.ge2move.net et vérifié (connexion réelle, journaux, adresse IP, temps de calcul).1797958
30 septembre 2026Configuration de l'installation d'essai ; base d'essai créée en UE et structurée (51 migrations).85156a9
30 septembre 2026Stockage des photos dans la base de données pour l'essai (sans R2) ; 8 tests.996ffe3
30 septembre 2026Plan de la phase 2 validé : installation d'essai sur l'offre gratuite de Cloudflare, avec Mailjet comme secours d'envoi.33ae513
30 septembre 2026Dossier pour l'expert sécurité et mise à jour de la documentation technique.9945d1d
30 septembre 2026Tests de sécurité de la connexion : 18 tests, 5 défauts trouvés et corrigés.3d51c8a
30 septembre 2026Envoi réel des e-mails par Brevo opérationnel : domaine ge2move.net authentifié, premier e-mail reçu.8e3b71e
29 septembre 2026Code d'envoi des e-mails : Brevo, avec bascule vers un service de secours ; 10 tests.3cd0f44
29 septembre 2026Écrans de connexion, page des appareils, invitations, création d'entreprise réservée à l'administrateur.296fa30
29 septembre 2026Preuve de faisabilité : la bibliothèque de connexion fonctionne avec l'application.6613066
29 septembre 2026Plan de la phase 1 (connexion sur invitation) validé.d5ee513
29 septembre 2026Analyse de l'hébergement : DNS vérifié, raccordement sans toucher à ge2move.com, données en UE, coûts.b9b98b7
29 septembre 2026Fiche technique du projet complétée (CLAUDE.md).684b2d3
29 septembre 2026État des erreurs de lint documenté honnêtement.b238268
29 septembre 2026Retrait de la version hors connexion, devenue inutile.93d8dec
29 septembre 2026Correction du faux message de conflit à la première ouverture d'un espace.f169ddd
29 septembre 2026Correction du mode développement sous Windows.6f8a490
28 septembre 2026Mise à jour du contexte du projet après l'audit.57b1423
28 septembre 2026Import du code de l'application (export Sites v0.203.0).afd25d9

3. Déploiements Cloudflare

Source : Cloudflare, interrogé en lecture seule au moment de la génération.

ÉlémentDateRésultatDétail
Application (Worker ge2move-essai)30 septembre 2026 à 11:38déployéversion 7a82169a
Application (Worker ge2move-essai)30 septembre 2026 à 15:55déployéversion dd03ee31
Application (Worker ge2move-essai)30 septembre 2026 à 16:46déployéversion ecdf560c
Application (Worker ge2move-essai)30 septembre 2026 à 19:05déployéversion 6d4d5557
Application (Worker ge2move-essai)30 septembre 2026 à 20:19déployéversion 5a4db033
Application (Worker ge2move-essai)30 septembre 2026 à 20:20déployéversion 3d311c74
Application (Worker ge2move-essai)30 septembre 2026 à 20:22déployéversion 311787e0
Application (Worker ge2move-essai)30 septembre 2026 à 20:31déployéversion 72be537f
Rapport (Pages ge2move-reporting)il y a 3 heuresréussi (en ligne)production · code 718ce82
Rapport (Pages ge2move-reporting)il y a 4 heuresréussi (en ligne)production · code 02c482e
Rapport (Pages ge2move-reporting)il y a 6 heuresréussi (en ligne)production · code 1797958
Rapport (Pages ge2move-reporting)il y a 6 heuresréussi (en ligne)production · code 1797958
Rapport (Pages ge2move-reporting)il y a 9 heuresréussi (en ligne)production · code 33ae513
Rapport (Pages ge2move-reporting)il y a 9 heuresréussi (en ligne)production · code 33ae513
Rapport (Pages ge2move-reporting)il y a 9 heuresréussi (en ligne)production · code 33ae513
Rapport (Pages ge2move-reporting)il y a 9 heuresréussi (en ligne)production · code 33ae513

4. Fonctionnalités livrées

FonctionnalitéTestComment
Secours d'envoi des e-mails de connexion par Mailjet
Livrée : 2026-09-30 · 8b380b7 9b1ef95
Testée
  • 12 tests automatiques de l'envoi et de la bascule (sign-in-mail) ; tests de sécurité adaptés ; 1181/1181
  • Domaine ge2move.net authentifié chez Mailjet (SPF, DKIM, preuve de propriété)
  • Bascule réelle réussie sur l'essai : fausse clé Brevo, e-mail reçu via Mailjet, journaux avec un simple code d'erreur
Limite : Offre gratuite Mailjet (200 e-mails par jour), suffisante pour un secours.
Menu de navigation fixe (gauche sur ordinateur, barre en bas sur téléphone)
Livrée : 2026-09-30 · 718ce82 7cd79cb
Testée
  • 2 tests automatiques dédiés (final-ux-ui)
  • Vérifié dans le navigateur, formats ordinateur et téléphone : menu fixe, rubriques, panneau « Plus », contenu non masqué
  • Mis en ligne sur l'essai le 30/09/2026
  • Logo du menu rendu lisible (retour d'Eric) ; validé par Eric le 30/09/2026
Installation d'essai sur Cloudflare (essai.ge2move.net)
Livrée : 2026-09-30 · 996ffe3 85156a9 43d531c 02c482e
Testée
  • Parcours complet réussi en ligne : entreprise fictive, dossier, objet, photo, devis PDF
  • Aucune erreur sur 22 appels à l'API ; temps de calcul médian 19 ms, aucun rejet
  • Adresse IP visiteur transmise ; journaux sans adresse ni code
Limite : Pas de Cloudflare Access (décision d'Eric).
Stockage des photos dans la base D1 (essai sans R2)
Livrée : 2026-09-30 · 996ffe3
Testée
  • 8 tests automatiques (d1-photo-store)
  • Photo ajoutée en ligne, rattachée au dossier et conservée après rechargement (30/09/2026)
Limite : Solution d'essai ; R2 recommandé pour les vrais pilotes.
Correctif : enregistrements refusés à tort sur Cloudflare (écart de comptage D1)
Livrée : 2026-09-30 · 43d531c
Testée
  • Cause vérifiée par une expérience sur la base d'essai
  • Tests alignés sur le comportement de Cloudflare : 538/538 (459 échecs sans le correctif)
  • 5 tests dédiés (d1-changes) ; parcours en ligne sans erreur
Connexion par lien ou code à 6 chiffres, sur invitation uniquement
Livrée : 2026-09-30 · 296fa30 3d51c8a
Testée
  • 18 tests de sécurité automatiques (auth-security)
  • 5 tests de redirection (entry-auth)
  • Parcours vérifié dans un navigateur (code, lien, appareil de confiance)
  • Premier e-mail réel reçu en boîte de réception principale le 30/09/2026
Limite : En ligne sur l'essai depuis le 30/09/2026 ; pas encore relue par un expert.
Sessions 12 h / 30 jours (appareil de confiance), page « Mes appareils », déconnexion
Livrée : 2026-09-30 · 296fa30 3d51c8a
Testée
  • Tests automatiques : durées, cookies, révocation, expiration (auth-security)
  • Vérification navigateur
Limite : Durées fixes : reconnexion mensuelle sur appareil de confiance (choix validé le 30/09/2026).
Création d'entreprise réservée à l'administrateur, invitation des salariés
Livrée : 2026-09-29 · 296fa30
Testée
  • Test automatique dédié (api)
  • Parcours complet responsable → salarié vérifié par script local
Limite : Local uniquement.
Envoi des e-mails de connexion par Brevo (domaine ge2move.net authentifié)
Livrée : 2026-09-30 · 3cd0f44 8e3b71e
Testée
  • 10 tests automatiques de l'envoi et de la bascule (sign-in-mail)
  • E-mail réel reçu le 30/09/2026
Limite : Suivi des clics Brevo encore actif (à désactiver).
Correction : faux message « Une autre session a modifié les dossiers » à la première ouverture
Livrée : 2026-09-29 · f169ddd
Testée
  • Test automatique dédié (api)
  • Constaté corrigé lors de la première connexion réelle le 30/09/2026
Démarrage du mode développement sous Windows
Livrée : 2026-09-29 · 6f8a490
Testée
  • Démarrage vérifié en 25 s et parcours navigateur
Limite : Concerne le poste de développement, pas les utilisateurs.
Retrait de la version hors connexion
Livrée : 2026-09-29 · 93d8dec
Testée
  • Tests automatiques, vérification des types, construction complète, accueil vérifié dans le navigateur
Fonctions héritées de l'export v0.203.0 (dossiers, inventaire, devis PDF, factures, planning, sauvegardes, invitations clients…)
Livrée : 2026-09-28 (import) · afd25d9
Partiellement testée
  • Couvertes par la suite de tests automatiques héritée
  • Accueil, espace professionnel et création d'entreprise vérifiés en local
Limite : Non vérifiées de bout en bout par une personne ; score commercial documenté de 56/100 dans l'export.
Détail des 28 séries de tests automatiques
SérieRéussis
photo-retention-ui7/7
submission-inbox-ui6/6
analysis-history-ui6/6
capacity13/13
capacity-ledger18/18
entry-auth5/5
sign-in-mail12/12
auth-security18/18
d1-photo-store8/8
d1-changes5/5
check45/45
api538/538
network18/18
finance-ui21/21
collection-draft-ui4/4
invitation-access7/7
invitation-ui12/12
dictation10/10
customer-journey-ui33/33
professional-ui37/37
local-photo-draft9/9
collection-submission-recovery8/8
local-photo-draft-ui8/8
server-photo-draft-ui12/12
hybrid-ui98/98
quote-validity-ui3/3
final-ux-ui214/214
production-status6/6

5. Blocages, risques et reste à faire

Blocages
  • Aucun
Risques
  • moyen Temps de calcul par page mesuré en ligne : médiane 19 à 29 ms (limite nominale gratuite 10 ms), aucun rejet constaté ; risque d'erreurs si Cloudflare appliquait strictement la limite.
  • moyen vinext (couche Next.js sur Vite) est en version bêta ; jamais déployé sur le vrai Cloudflare.
  • faible La migration de base 0040 n'est pas acceptée telle quelle par Wrangler : un script dédié est nécessaire.
  • faible 54 erreurs de lint documentées (docs/LINT_STATUS.md) dans les composants de devis, de sauvegarde et d'enregistrement.
  • faible Localisation des journaux Cloudflare non garantie dans l'UE (le code n'y écrit aucune donnée personnelle).
  • moyen Photos envoyées à OpenAI (États-Unis) si l'inventaire assisté est activé : à trancher avec le juriste.
  • moyen Essai accessible publiquement (sans Cloudflare Access) : des robots ont sondé l'adresse dès la mise en ligne (réponses 404). Seule la connexion sur invitation protège l'application.
Reste à faire
  • Désactiver le suivi des clics Brevo.
  • Phase 3 : sauvegardes automatiques et restauration réellement testée.
  • Phase 4 : plafond de dossiers relevé pour les pilotes, export complet vérifié.
  • Phase 5 : raccordement de app.ge2move.com via Cloudflare for SaaS.
  • Relecture sécurité par un expert extérieur (dossier prêt).
  • Contrat de sous-traitance RGPD avec un juriste.
  • Tests sur faux dossiers par une autre personne.

6. Génération

Rapport généré automatiquement le 30 septembre 2026 à 20:37. Aucun secret (clé, jeton, mot de passe, variable d'environnement) n'est lu ni publié ; un contrôle automatique bloque la publication en cas de doute.