From a79551a4a3c1da52a60f85a16380b962733bf057 Mon Sep 17 00:00:00 2001 From: pr-daaif Date: Mon, 3 Aug 2026 09:43:02 +0100 Subject: [PATCH] =?UTF-8?q?docs(r6):=20recette=20Demandeur=20confirm=C3=A9?= =?UTF-8?q?e=20sur=20iPhone=20physique?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Accueil (liste des demandes + statut) et création (sélection dans la liste ou scan QR) vérifiés en conditions réelles par le référent. Co-Authored-By: Claude Sonnet 5 --- CLAUDE.md | 3 ++- docs/journal/journal.md | 22 ++++++++++++++++++++++ 2 files changed, 24 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index ab9ba45..5e08d10 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -83,5 +83,6 @@ pnpm + Turborepo. `apps/api` : NestJS, Prisma, PostgreSQL (pgvector + PostGIS), - ✅ **R6.7 — assignation à l'approbation (mobile)** : le Gestionnaire approuvait une demande mobile sans pouvoir assigner de technicien (l'OT partait non assigné) — « ce n'est pas à lui d'agir comme un technicien ». `PanneauDemandes` gagne un panneau d'approbation avec `ChoixTel` « Assigner à » (techniciens actifs, même filtre que le web), avant confirmation. Rien à changer côté API (`assigneeIds` déjà supporté). Vérifié de bout en bout (demande → approuvée avec assigné → OT avec `assignees` correct). Typecheck/tests/lint verts. - ✅ **Périmètre `WORK_ORDERS` du Gestionnaire confirmé acceptable tel quel par le référent** — l'accès complet hérité de R2/R3 (peut techniquement démarrer/clôturer n'importe quel OT) reste en l'état, aucun resserrement demandé. - ✅ **R6.8 — la connexion routait toujours vers « Ma journée »** : `connexion.tsx` faisait `router.replace('/(tabs)/journee')` en dur — la redirection par rôle (`ongletAccueil`) n'était branchée qu'à l'aiguillage initial (R6.1), pas au retour de connexion, le chemin réellement emprunté à chaque bascule de compte démo (pas de sélecteur de rôle en direct sur mobile, changer de compte = se déconnecter puis se reconnecter). Karim (Demandeur) atterrissait sur l'écran du Technicien. `useLogin()`/`useDemoLogin()` renvoient maintenant la réponse complète (rôle inclus) ; `entrer(role)` route vers le bon onglet. Sous-titre « Technicien »/accroche terrain de l'écran de connexion (reste de R4) généricisés au passage. Typecheck/tests/lint verts. -- 🔄 **Reprise ici** : reprendre la recette Demandeur (Accueil, Nouvelle demande filtrée à Tour Atlas, scan QR) une fois ce correctif rechargé sur l'iPhone, puis considérer R6 close au même sens que R0→R5. `expo-sharing` (ouverture de documents) et `expo-clipboard` (copie du lien d'activation) en réserve pour une prochaine étape native. Restes non bloquants inchangés : redéploiement Dokploy de l'instance ENSET (`AI_SERVICE_TOKEN` à créer — runbook §2 — puis « Réindexer tout »), recette Android sur appareil physique, calibrage `AI_SEUIL_*` et qualité darija sur corpus SPELEV réel, secret `DOKPLOY_WEBHOOK_URL`, production client SPELEV (attend les accès serveur du partenaire). +- ✅ **Recette R6 confirmée sur iPhone physique** — Gestionnaire (Accueil, OT, Menu complet, Assistant+dictée) et Demandeur (Accueil, Nouvelle demande filtrée à son site, scan QR) tous deux vérifiés en conditions réelles, au-delà du typecheck/tests/lint. +- 🔄 **Reprise ici** : à trancher avec le référent — considérer R6 close (tag `release/r6`, comme R0→R5) ou poursuivre sur un reste identifié (Vue seule/Dispatcher/Administrateur non explicitement recettés sur iPhone, `expo-sharing`/`expo-clipboard` en réserve, recette Android sur appareil physique). Restes non bloquants inchangés : redéploiement Dokploy de l'instance ENSET (`AI_SERVICE_TOKEN` à créer — runbook §2 — puis « Réindexer tout »), calibrage `AI_SEUIL_*` et qualité darija sur corpus SPELEV réel, secret `DOKPLOY_WEBHOOK_URL`, production client SPELEV (attend les accès serveur du partenaire). - Détail quotidien : `docs/journal/journal.md`. Dépôt : `siop-spelev/siop2` (privé), jalons R0→R5 (v1) + R6 en cours. diff --git a/docs/journal/journal.md b/docs/journal/journal.md index 01a45d3..8ea36ab 100644 --- a/docs/journal/journal.md +++ b/docs/journal/journal.md @@ -4,6 +4,28 @@ Trace chronologique des sessions (la plus récente en premier). Le **playbook** --- +## 2026-08-03 — Pr. Daaif (+ Claude) — Recette R6 : Demandeur confirmé sur iPhone + +**Actions** + +- Suite du correctif R6.8 : le référent confirme sur iPhone physique, en Karim Doukkali + (Demandeur) — Accueil affiche correctement la liste de ses demandes avec leur statut, et une + nouvelle demande peut être ajoutée aussi bien par sélection dans la liste que par scan QR. +- Recette R6 sur ce point désormais complète : Gestionnaire (Accueil, OT, Menu → Demandes/Sites/ + Ascenseurs/Stock/Tiers/Fichiers/Statistiques/Personnes, Assistant+dictée) et Demandeur (Accueil, + Nouvelle demande filtrée à son site, scan QR) tous deux vérifiés en conditions réelles sur + iPhone, au-delà du typecheck/tests/lint. + +**Décisions** + +- Aucune. + +**Prochaine étape** : à trancher avec le référent — considérer R6 close (tag `release/r6`, +comme R0→R5) ou poursuivre sur un reste identifié (Vue seule/Dispatcher/Administrateur non +explicitement recettés, `expo-sharing`/`expo-clipboard`, Android physique, etc.). + +--- + ## 2026-08-03 — Pr. Daaif (+ Claude) — R6.8 : connexion routait toujours vers « Ma journée » **Contexte** — en recette, le référent a basculé sur Karim Doukkali (Demandeur) et a atterri sur