# GAB-236 · FeedbackLearningPartialCredit — « Crédit partiel valorisant »

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

## Pack (structure officielle par-GAB)
```
GAB-236/
  renderer.html            ← moteur crédit partiel (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` · `partial_credit_id` · `title` · `summary` · `items_keep[]` · `items_miss[]` · `feedback`

Optionnels : `banner_label`, `criteria_note`, `no_reward_write`, `retry_cta`, `secondary_cta`.

## Ce qui vient du JSON vs HTML
- **JSON** : titre valorisant, sous-titre, chaque item "à garder" / "à ajouter", feedback pédagogique, critères transparents, libellés des deux boutons.
- **HTML** : structure 2 colonnes bilan, bannière gold, bloc no-reward-write, boutons structurels, layout, fallback erreur.

## Garde-fous (child_safety / no-reward-write)
- **Anti-note** : PartialCredit est un bilan pédagogique en langage élève — jamais une note officielle chiffrée.
- **Anti-reward-write** : `no_reward_write:true` dans l'instance → bannière de rappel affichée. PlayKit orchestre XP/coins/badges, jamais ce gabarit.
- **Anti-StepByStep** : ExerciseStepByStepSolution = correction complète détaillée → autre gabarit.
- **BLOCKED** si `items_keep` vide / `items_miss` vide / `feedback` absent / `title` absent.

## QA à vérifier
1. Modifier un `items_keep` ou `items_miss` → rendu change sans toucher au HTML (critère d'or).
2. `items_keep:[]` → BLOCKED propre.
3. `items_miss:[]` → BLOCKED propre.
4. `feedback` absent → BLOCKED propre.
5. Bouton primary → feedback confirm visible.
6. `no_reward_write:true` → bannière gold affichée.
7. Responsive 375 : bilan passe en 1 colonne, 0 débordement.

## Archétype
Gabarit de bilan intermédiaire entre `InstantFeedback` (GAB-231, verdict simple) et `StepByStepSolution` (correction complète). Utilisé quand la réponse est partiellement correcte avec des parties distinguables (acquis / manquant). Valorise l'effort, jamais ne décourage.

## Source
`INDEX-300-feedbacklearning-GAB-236-240-PLAYABLE.html` (stage `data-tpl="236"`, handlers `peConfirm`/`peNote`).
