Une version 56.x avait été installée par erreur et transpilait mal pour Hermes
(« private properties are not supported »). Retour à la version du SDK 54.
Retire aussi le plugin worklets manuel (déjà fourni par le preset).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- ajoute babel-preset-expo en devDependency (manquant après migration SDK 54,
bloquait le bundling Metro)
- remplace le fr-btns-group du wizard de saisie par un flex simple : les
libellés "Précédent/Suivant/Enregistrer" ne sont plus tronqués
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
.fr-card (flex + height:100% + bordure ::before) débordait quand utilisé comme
conteneur générique (wizard de saisie, journal, rapports, profil, timeline) et
chevauchait le footer. Remplacé par .app-panel (panneau neutre, variables DSFR).
Les vraies cartes structurées (fr-card__body) sont conservées.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- palette officielle DSFR (#000091, rouge Marianne, gris DSFR) dans lib/colors.ts
- composant RepubliqueHeader (bloc « République Française » + service CESIZen)
- restyle boutons/champs/cartes/onglets/urgence au style gouv.fr sur tous les écrans
- couleurs d'émotions conservées
Le DSFR étant un framework web, le mobile en reçoit l'identité visuelle (pas les classes fr-*). tsc 0.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- charge le DSFR (CSS/JS officiels) en statique via public/dsfr + postinstall
- en-tête officiel (bloc Marianne « République Française » + nom de service)
- pied de page officiel DSFR (liens institutionnels, licence etalab)
- page d'accueil refondue (hero, fr-card, fr-tile, fr-callout, fr-btn)
- composant Button mappé sur fr-btn
- assets DSFR hors git (régénérés par `npm install`)
Build OK (19 routes). Pages internes encore en Tailwind : conversion à poursuivre.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- DemoSeeder : membre demo@cesizen.fr / Demo123! + 18 saisies sur 4 semaines
(émotions variées, Joie dominante) pour une démo aux rapports déjà fournis
- Antiseche_Oral_CESIZen.md : déroulé 20 min avec démo live intégrée + script
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- colonne « Responsable » sur les 6 tables de tests (fonctionnels + non-fonctionnels)
- nouvelle section 6.4 : modèle de procès-verbal de recette
(identification, synthèse, réserves, décision, blocs de signature MOA/MOE)
Répond aux exigences de testing du sujet (responsable par test, PV de recette).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Référentiel d'émotions (conformité au sujet) :
- 6 émotions de base (suppression d'« Amour ») et 36 sous-émotions
- libellés exacts du sujet (Surprise dédupliquée : Étonnement listé 2x)
- propagation du décompte 6+36 (CLAUDE.md, plan oral, slides, dossier, mobile)
Corrections dossier (grille d'évaluation Bloc INFCDAAL1) :
- ajout d'un sommaire
- contraintes budget 75 000 EUR et délai 12 mois (chiffres du sujet)
- table des parties prenantes et de leur communication (§4.1)
- mockup du module Informations (les 3 modules ont désormais une maquette)
- cardinalités du MCD agrandies et lisibles
- chiffrement reformulé honnêtement (bcrypt aujourd'hui, AES-256 prévu en prod HDS)
- dossier maintenu à 20 pages (limite respectée)
Vérifs : backend 15 tests, mobile tsc 0, seeder 6+36.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Suite à la revue par agents :
- EditSaisieModal : réinitialise prevSaisieId à la fermeture (saisie=null) pour
que la réouverture de la MÊME saisie réaffiche ses valeurs d'origine
(régression introduite par le passage de useEffect à l'ajustement d'état)
- corrige le nombre de sous-émotions 28 -> 33 (compte réel du seeder :
6+5+5+5+4+4+4) dans le dossier, les slides, le plan d'oral et CLAUDE.md
- régénère le cahier des charges (19 p.) et le support de soutenance (16 slides)
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Mobile (Expo SDK 53) :
- supprime victory-native et react-native-svg (dépendances mortes, non
importées) qui empêchaient l'installation (ETARGET sur svg@~16.0.0 +
conflit de peer reanimated/skia)
- ajoute les peers manquants expo-constants et expo-linking (requis par
expo-router)
- aligne expo-router, react-native et react-native-screens sur le SDK 53
- ajoute package-lock.json (installs reproductibles)
- expo-doctor 18/18, tsc sans erreur
Frontend (Next.js) :
- EmotionChart : remplace 4 `any` par les types Recharts (ValueType/NameType)
- EditSaisieModal : remplace le setState dans useEffect par l'ajustement
d'état pendant le rendu (pattern recommandé par React)
- tsc, eslint et build de production sans erreur
Backend : 15 tests passent (Auth, Admin, Tracker, RGPD).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
- Added favicon and icon assets for the mobile app.
- Implemented EmotionPicker component for selecting emotions with child options.
- Created hooks for fetching emotions, feeds, and rapport data.
- Established API service for handling requests and authentication.
- Integrated Zustand for state management of user authentication.
- Defined color palette for the application.
- Set up TypeScript types for various entities including User, Emotion, and Feed.
- Configured Babel and TypeScript for the mobile project.
- Added package.json with necessary dependencies for Expo and React Native.