# GAB-399 · DataLearningDataErrorSpotter — « Repérer l'erreur dans les données »

**Archétype / renderer_key :** `text_cta` · **module :** EdTechDataLearning
**Critère visé :** changer le JSON change le rendu sans modifier le HTML. ✅ check.py 12/12.

## Pack
```
GAB-399/
  renderer.html · instance.example.json · schema.contract.json · README-contract.md
```

## Champs requis
`gab_id` · `data_error_id` · `data_ref` · `error_candidates` · `error_task` · `feedback_after_attempt_policy`

Optionnels : `title`, `error_types`, `hint_policy`, `common_traps`, `fallback_text_summary`.

## Archétype
Chasse à l'erreur vérifiable : sélectionner le candidat fautif, indice optionnel après tentative, feedback non humiliant qui explique l'erreur.

## BLOCKED si
- data_error_id absent
- data_ref absent
- error_candidates absent ou vide
- error_task absent
- feedback_after_attempt_policy absent
- aucun candidat marqué is_error:true

> ⚠️ **Note Core** : le champ requis Core `retour pédagogique_policy` (espace + mélange FR/EN, probable coquille) a été **normalisé** en `feedback_after_attempt_policy` dans ce pack. À remonter au registre Core.

## Source
CORE-GAB-REGISTRY GAB-399 (pas de playable hardcodé au-delà de 390). Conversion Core → pack serveur, format identique aux GAB 001-390.
