16fd4c8c36
Lecteur d'histoires cadenassé pour le coucher (Android/Flutter). - CLAUDE.md : principes craftsmanship/TDD/clean code/clean archi + decisions techniques - ROADMAP.md : suivi haut niveau des 7 jalons, a tenir a jour par etape - docs/specs/ : specs completes decoupees par jalon, etapes en sous-fichiers - .gitignore Flutter (pubspec.lock versionne, projet applicatif) Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Jalon 4 — Espace enfant
Objectif
Assembler l'écran que l'enfant utilise : liste des histoires disponibles (titres cliquables) + lecteur, le tout dans une coquille verrouillée (épinglage auto, aucune échappatoire via l'UI).
Périmètre
- Liste des épisodes de tous les abonnements (ou par podcast), avec titre + vignette.
- Sélection d'un titre → lecture (réutilise le lecteur de J2).
- Épinglage déclenché automatiquement à l'entrée dans l'espace enfant (J1).
- Aucune action UI ne permet de quitter l'app ou d'accéder au système.
Hors-périmètre
- Limites/avertissements (J6).
- L'accès à l'espace parent (icône) est posé ici mais la porte (code) vient en J5 ; en attendant, accès dev temporaire.
Étapes
Definition of Done (jalon)
- L'enfant voit la liste, tape un titre, l'histoire se lit.
- À l'ouverture de l'espace enfant, l'app s'épingle automatiquement.
- Aucun bouton/geste UI ne sort de l'app (hors mécanisme système + PIN).
tool/check.shpasse ;ROADMAP.md4.1→4.2 cochées.