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

# GAB-378 · CareerLearningMythRealityCheck — « Mythes vs réalités »

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

> ⚠️ **FLAG REVUE BOSS — GAB SENSIBLE (orientation / career).** Ce gabarit nuance des idées reçues sur un métier (charge de travail, niveau requis, salaire). Toute affirmation doit rester mesurée et non définitive. Validation Boss requise avant mise en prod.

## Pack (structure officielle par-GAB)
```
GAB-378/
  renderer.html            ← moteur mythes/réalités (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` · `myth_check_id` · `title` · `myths[]{claim,nuance}` · `non_harsh_tone` · `open_conclusion`
Optionnels : `intro`, `source_notice`.

## Ce qui vient du JSON vs HTML
- **JSON** : le titre, l'intro, chaque idée reçue (`claim`), sa `nuance` au clic, la conclusion ouverte, le flag de ton.
- **HTML** : la liste cliquable, le panneau de nuance, le bloc conclusion, le layout, le fallback BLOCKED.

## Garde-fous (child_safety / career)
- **Ton non cassant** (`non_harsh_tone:true`) : on nuance, on ne démolit pas une croyance brutalement (verbatim source : « Nuance, pas démenti brutal »).
- **Pas de vérité tranchée** : les nuances restent contextuelles (« Selon les contextes », « Pas de garantie », « ça dépend du poste, de la région, de l'expérience »).
- **Conclusion ouverte** : l'élève se fait son avis en recoupant plusieurs sources et témoignages.
- **BLOCKED** si `myths` vide / `title` absent / `open_conclusion` absente / une nuance manquante.

## Anti-invention — contenu manquant signalé
- Le slot source `source` était marqué requis dans l'écran original, **mais aucun texte de source/évidence n'est en dur** dans le HTML source. → `source_notice` porte un `_TODO` explicite, rien n'a été inventé.
- Tout le reste (titre, 3 idées reçues, leurs nuances, conclusion ouverte, intro) est extrait verbatim du bloc `<!-- GAB-378 -->`.

## external_refs / dependencies
- Aucune dépendance hors-lot. Référence interne fratrie (hors scope) : « prépa interview (→ GAB-379) » mentionnée dans le `do_not_use_when` source, non portée ici.

## QA à vérifier
1. Modifier une `nuance`/`claim` → rendu change sans toucher au HTML (critère d'or). 2. `myths:[]` → BLOCKED propre. 3. Clic idée reçue → nuance affichée + conclusion ouverte révélée. 4. Instance externe injectée via `init(ext)`. 5. Responsive 375/768/1024.

## Source
`INDEX-300-careerlearning-GAB-376-380-PLAYABLE.html` (stage `data-tpl="378"`, handler `d378Pick`).
