diff --git a/04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md b/04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md index 494fdb3..d18f64e 100644 --- a/04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md +++ b/04_roadmap/ROADMAP_8_WEEKS_OR_LESS.md @@ -15,7 +15,7 @@ Livraison anticipée récompensée : dès qu'un sprint est complet et validé QA | Frontend | `/waf-home` + `/crm` + `/qa` + portal HTML | Clone layout sur 5 entités + polish | ~55% | | CRM | `/crm.html` LIVE + ERPNext CRM natif | Enrichir + API pipeline | ~65% | | SEO | mission active + worker systemd | Trilinguisation + schema.org | ~45% | -| Mobile | modules RBAC + API + Expo 54 | Builds + submit stores | ~50% | +| Mobile | modules RBAC + API + Expo 51 | Rebuild vers Expo 54 + builds + submit stores | ~50% | | IFC/Speckle | `ifc_to_glb.py` + bim-cloud | Intégration console + viewer | ~55% | | ONAPI/Legal | `oto_module_confotur_application.py` + drafts | Automatisation dépôt | ~40% | | DevOps | 6 systemd services + Gitea | CI/CD Gitea Actions | ~35% | diff --git a/05_activity_log/2026-08-03.md b/05_activity_log/2026-08-03.md index 2ff8356..be7666b 100644 --- a/05_activity_log/2026-08-03.md +++ b/05_activity_log/2026-08-03.md @@ -1,5 +1,57 @@ # Activity Log · 2026-08-03 · Claude Code DTP Worker +## Session 020634 · Dérive ground-truth résiduelle : roadmap L18 (colonne « Existe déjà ») affirmait encore « Expo 54 » — corrigée → Expo 51 réel (#6) + +**Contexte.** `./run_ci.sh` au démarrage : **30 PASS · 0 FAIL · 0 SKIP**, arbre propre. +Focus mandat courant = Sprint 5 Mobile (`DIRECTIVE_MOBILE_STORES_20260803.md`). Le +module in-repo `mobile/app_config` est complet et vert (schéma + 12 invariants · +comptes 5 onglets / 44 rôles / 3 langues / 13 `a_confirmer` vérifiés contre +`out/MANIFEST.json` · docstring/README cohérents). Les actions P1-P5 de la directive +visent l'app réelle `/opt/oto/mobile/native/` (**hors repo #8**, bloquées sur +EAS_TOKEN/credentials Michel). J'ai donc cherché une **dérive réelle in-repo** dans le +périmètre worker. + +**Défaut RÉEL trouvé (prolonge la session 013634).** La session 013634 a corrigé la +fausse affirmation « Expo 54 **en place** » dans `AGENTS_EXISTING_ASSETS.md §8` + la +fiche `03_agents/mobile/AGENT.md`, en distinguant **runtime ACTUEL (51)** vs **cible de +rebuild S5 (54)**. Elle a **délibérément laissé la roadmap** — mais son raisonnement ne +visait que la **ligne 56** (Sprint 5 « **Rebuild Expo 54** » = la cible, décision P0 de +Michel, à ne pas trancher). Elle n'a **pas examiné la ligne 18** : la table « Gains +d'accélération identifiés », colonne « **Existe déjà** », qui disait +`modules RBAC + API + Expo 54`. Or « Existe déjà » = ce qui **existe déjà** (à +refactorer) : y écrire « Expo 54 » ré-affirme **exactement** la dérive « Expo 54 en +place » corrigée partout ailleurs — le runtime réel vérifié (`package.json`, session +013634 + directive audit 2026-08-03) est **Expo 51**, et 54 est la **cible de rebuild** +(colonne « Reste à faire » / Sprint 5 L56). + +**Contradiction interne prouvée.** `03_agents/mobile/AGENT.md:88` **cite** cette ligne : +« État courant (**table roadmap L18**) : modules RBAC + API + **Expo 51** en place ». La +fiche affirmait donc que la L18 dit « Expo 51 » alors que la L18 disait « Expo 54 » — une +**citation en désaccord avec sa source**, introduite quand 013634 a corrigé la fiche sans +corriger la roadmap. Grep confirme : l'unique consommateur de la L18 est `AGENT.md:88` ; +le spec/MANIFEST mobile ancrent sur **l.56** (`roadmap_ref`/`expo_sdk_source`), jamais l.18. + +**Correctif — chirurgical (1 ligne), fidèle, non-gaté vérifié AVANT édition.** +Roadmap L18 : `Existe déjà: … Expo 54` → `… Expo 51` (runtime réel), et +`Reste à faire: Builds + submit stores` → `Rebuild vers Expo 54 + builds + submit stores` +(rend la ligne honnête sur le travail restant, fidèle à Sprint 5 L56). Résout la +contradiction avec `AGENT.md:88` (qui devient exact). **Ligne 56 « Rebuild Expo 54 » NON +touchée** = la cible S5 / décision P0 de Michel, non tranchée. + +**Sûreté (vérifiée AVANT édition).** Le gate Expo-SDK (`check_readme_claims.sh:7779-7794`, +ancrage roadmap INV-mobile) ancre via `re.search(r"Rebuild Expo (\d+)", roadmap)` → ne +lit **que** la ligne 56 ; le gate (d) ne scanne que `mobile/app_config/README.md`, jamais +la roadmap. La L18 était donc **ungated** pour ce « 54 ». Formulation « Rebuild **vers** +Expo 54 » choisie **exprès** pour ne PAS matcher le bigramme `Rebuild Expo` → l'ancre du +gate reste liée à la **L56** (pas de second littéral porteur, cf. `[[roadmap-anchor-gate]]`). + +**Vérifications.** `./run_ci.sh` → **30 PASS · 0 FAIL · 0 SKIP** (inchangé) · +`grep 'Rebuild Expo' roadmap` = **1 seule occurrence, L56** (ancre intacte) · +`git diff --stat` = 1 fichier, 1 insertion / 1 suppression. **Zéro nouveau module · +zéro gate ajouté (#5) · aucune logique de prod ni de gate touchée** — pure correction de +dérive ground-truth sourcée, prolongeant [[mobile-runtime-actual-vs-rebuild-target]]. +Aucune commande touchant au VPS (#8) · aucun `git clean` . + ## Session 013634 · Dérive ground-truth réelle : app mobile documentée « Expo 54 en place » alors que le runtime réel est **Expo 51** (upgrade 54 abandonné) — corrigée (#6) **Contexte.** `./run_ci.sh` au démarrage : **30 PASS · 0 FAIL · 0 SKIP**, arbre propre.