> ⚠️ **GAB SENSIBLE — VALIDATION BOSS OBLIGATOIRE avant tout usage.** (child-safety / RGPD / orientation / career). Contenu extrait sans invention ; à relire par un humain.

# GAB-349 · SafetyFallbackLearningAIGeneratedCaution — « Prudence contenu IA »

**Archétype / renderer_key :** `text_cta` (cartographie) · **module :** EdTechSafetyFallbackLearning
**Critère validé :** changer le JSON change l'écran sans modifier le HTML. ✅ check.py 12/12.

## ⚠️ FLAG REVUE BOSS — GAB SENSIBLE (child-safety)

Ce GAB touche à la **sûreté enfant / responsabilité élève face à l'IA**. Extraction réalisée **sans aucune invention** : tout le contenu (notice, brouillon IA exemple, question, options, feedbacks) est repris **strictement** du HTML source (`stage data-tpl="349"`, handlers `d349Pick`).
**→ Une revue Boss est requise avant toute mise en prod** (formulation des messages de sécurité, libellé « responsabilité finale est à toi », distinction aide/réponse finale). Flag porté dans l'instance : `child_safety.boss_review_required = true`.

## Pack (structure officielle par-GAB)
```
GAB-349/
  renderer.html            ← moteur prudence IA (ne pas modifier par instance)
  instance.example.json    ← SOURCE DE VÉRITÉ (contenu réel, à plat)
  schema.contract.json     ← contrat de validation
  README-contract.md       ← ce fichier
```

## Champs requis (instance, à plat)
`gab_id` · `ai_caution_id` · `ai_notice` · `question` · `responsibility_options[]{kind,icon,label,tone,state,feedback}`
Optionnels : `title`, `state_label`, `ai_draft{kind,body}`, `slots`, `use_when`, `do_not_use_when`, `child_safety`, `accessibility`.

## Ce qui vient du JSON vs HTML
- **JSON** : la notice IA, le brouillon exemple (kind+body), la question, chaque option (icône, libellé, ton, état, feedback), les listes use_when / do_not_use_when, les slots.
- **HTML** : layout (hero, zone, doc-paper, panels), styles DS V2, structure des options (synth-item), comportement clic/clavier.

## Garde-fous (child_safety)
- **Aide, pas réponse finale** : `ai_notice` rappelle que le contenu IA est une aide et peut contenir des erreurs.
- **Risque d'erreur disclosé** : explicite dans la notice et le brouillon « à vérifier ».
- **Copier-coller sans vérif = risqué** : l'option `copy` porte `tone:bad`, son feedback rappelle la responsabilité finale de l'élève — jamais valorisée.
- **Validation prof** proposée en cas de doute.
- **Anti-invention** : aucune valeur pédagogique inventée ; contenu manquant → `_TODO`.
- **BLOCKED** si `ai_notice` / `question` absents ou `responsibility_options` vide.

## QA à vérifier
1. Modifier un `feedback`/`label` → rendu change sans toucher au HTML (critère d'or). 2. `responsibility_options:[]` → BLOCKED propre. 3. Clic option `copy` → panel `bad`. 4. Clic option `verify`/`teacher` → panel `ok`. 5. Responsive 375/768/1024.

## external_refs / dependencies
- **GAB-342** (référence hors-lot) : cité dans `do_not_use_when` (« incertitude simple → GAB-342 »). Aucune dépendance de code — simple aiguillage éditorial dans le contenu source.

## Source
`INDEX-300-safetyfallbacklearning-GAB-346-350-PLAYABLE.html` (stage `data-tpl="349"`, handlers `d349Pick`).
