# Politique de cycle de vie des dépendances

Pour garantir la pérennité et la sécurité de Lucarne, les règles suivantes régissent la gestion des dépendances :

## 1. Choix des dépendances (Allowlist implicite)

- Toute nouvelle dépendance doit être validée pour s'assurer qu'elle répond à un besoin critique non couvert par le socle (Next, React, Mantine, Zod, Drizzle).
- Privilégier les paquets populaires avec une activité récente, soutenus par une communauté ou fondation.

## 2. Versions Supportées et Mises à Jour

- **Mises à jour mineures et correctifs (Patch/Minor)** : Effectuées mensuellement avec un outil type Dependabot/Renovate. Automatiquement fusionnables si la CI (tests, build, e2e) est verte.
- **Mises à jour majeures (Major)** : Revue trimestrielle. Nécessite une lecture du changelog, une vérification manuelle et une campagne de tests E2E.
- **End-of-Life (EOL)** : Node.js, Next.js, et React doivent être mis à niveau avant la fin de leur support actif.

## 3. Sécurité et Vulnérabilités (SLA de correctif)

- **Critique / Élevée** : Patch appliqué et déployé en moins de 48h ouvrées.
- **Moyenne** : Patch appliqué dans le sprint courant (2 semaines).
- **Faible** : Traité lors de la mise à jour mensuelle.

## 4. Dépendances de développement

- L'utilisation de dépendances tierces pour la CI ou le formatage (Prettier, Biome) est moins contrainte, mais elles sont soumises à la même politique d'inventaire et de mise à jour.
