
# Nettoyage

Le nettoyage supprime les sandboxes qui ne sont plus nécessaires. Commencez par afficher un aperçu :

```bash
wp rudel cleanup --dry-run
```

`--dry-run` indique ce qui serait supprimé et pourquoi. Exécutez la commande sans l’option pour les supprimer :

```bash
wp rudel cleanup
```

La commande ne demande pas de confirmation.

## Règles

Une sandbox non protégée est supprimée si l’une de ces conditions est remplie :

| Motif | Règle |
|--------|------|
| `expiry reached` | son `expires_at` est passé |
| `age policy matched` | elle a été créée il y a plus de `max_age_days` |
| `idle policy matched` | sa dernière activité remonte à plus de `max_idle_days` |

`max_age_days` et `max_idle_days` proviennent de `rudel_config` (les deux sont définis par défaut sur `0`, ce qui désactive la règle). Remplacez-les pour une seule exécution :

```bash
wp rudel cleanup --max-age-days=30 --dry-run
wp rudel cleanup --max-idle-days=7
```

La dernière activité est mise à jour à chaque requête qui sélectionne la sandbox et à chaque snapshot.

## Sandboxes fusionnées

```bash
wp rudel cleanup --merged --dry-run
```

`--merged` effectue un passage distinct des règles ci-dessus. Il supprime une sandbox lorsque toutes les worktrees Git qui lui sont associées sont sur une branche fusionnée dans la branche par défaut du dépôt, puis supprime ces branches. Les worktrees associés proviennent du clonage d’une sandbox dont le répertoire du thème est un dépôt Git (voir [Git](https://rudel.inline0.dev/fr/docs/features/git)). Les sandboxes créées avec `--git` n’ont aucun enregistrement de worktree et sont toujours ignorées ([issue #8](https://github.com/inline0/rudel/issues/8)).

## Sandboxes protégées

Les deux passages ignorent les sandboxes protégées. Supprimez d’abord leur protection avec `wp rudel update <id> --unprotected` si le nettoyage doit les prendre en compte. `wp rudel destroy` ignore la protection.

La suppression d’une sandbox supprime ses tables, ses fichiers gérés et ses worktrees, ainsi que l’enregistrement d’environnement Rudel. Consultez [Automatisation](https://rudel.inline0.dev/fr/docs/features/automation) pour planifier le nettoyage.
