# GAB-403 · ExperimentLearningProtocolSteps — « Protocole : étapes et sécurité »

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

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

## Champs requis
`gab_id` · `protocol_id` · `experiment_ref` · `materials` · `protocol_steps` · `safety_check`

Optionnels : `title`, `estimated_duration`, `teacher_role`, `controlled_variables`, `stop_conditions`, `simulation_variant`, `fallback_text_summary`.

## Archétype
Protocole expérimental : étapes ordonnées non ambiguës, matériel listé, sécurité + stop conditions visibles si manipulation.

## BLOCKED si
- protocol_id absent
- experiment_ref absent
- materials absent ou vide
- protocol_steps absent ou vide
- safety_check absent

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