# TRAIL DPS Workspace — réalignement de l’environnement restore

## Référence

- Version cible commune : `1.0.18-lot1`
- Environnement source fonctionnel : `traildpsworkspace-staging`
- Environnement à réaligner : `traildpsworkspace-restore`
- Date du paquet : 3 août 2026

## Objet

L’environnement de restauration était resté sur une révision applicative antérieure au code de recette principal. Le paquet incrémentiel restore remet les zones applicatives non sensibles au même niveau que staging, puis ajoute les fonctions L2.10.7 de catalogue d’événements et de suppression distribuée.

## Zones réalignées

- `SRC/`
- `public/`
- `scripts/`
- `sql/`
- `tests/`
- `docs/`
- `README.md`
- `VERSION`
- `config/config.example.php`
- `.gitignore`

## Éléments volontairement exclus

Le réalignement ne remplace jamais :

- `config/config.php` ;
- les secrets, mots de passe et clés de signature ;
- `storage/private/` ;
- `storage/backups/` ;
- `storage/logs/` ;
- les fichiers de données de restauration déjà présents.

## Ordre de déploiement restore

1. Sauvegarder le code, la configuration, la base et le stockage privé actuels.
2. Déployer le ZIP incrémentiel à la racine du projet restore en conservant l’arborescence.
3. Exécuter `php scripts/migrate.php` afin d’appliquer les migrations manquantes, dont `003_event_deletion_tombstones.sql`.
4. Exécuter `php scripts/verify_installation.php`.
5. Exécuter `php tests/run.php`.
6. Contrôler l’endpoint de santé et vérifier la version `1.0.18-lot1`.
7. Tester une restauration sur une base isolée avant toute utilisation opérationnelle.

## Point de vigilance sur les tombstones

Une sauvegarde antérieure peut contenir les données métier d’un événement supprimé après sa création. Après restauration, le tombstone durable doit rester prioritaire et empêcher toute republication silencieuse du même `event_uuid`. La recette restore doit donc contrôler simultanément :

- la présence de la migration `003` ;
- la persistance de `event_deletions` ;
- le refus HTTP `410 EVENT_DELETED` ;
- l’absence de résurrection par création ou publication avec le même UUID.
