# Coaster World v1.114.0 — 2026-09-03

## Temps d’attente multi-sources
- ThemeParks.wiki reste la source Live prioritaire.
- Queue-Times devient le fallback automatique lorsqu’un parc n’a pas de temps d’attente exploitable dans ThemeParks.wiki ou lorsque la source primaire échoue.
- Utilisation de l’API Real Time officielle Queue-Times (`/parks/{id}/queue_times.json`) avec cadence minimale de 5 minutes.
- Appairage automatique prudent des parcs et attractions Queue-Times : correspondance de nom normalisée et refus des cas ambigus.
- Les identifiants attractions Queue-Times sont stockés sous la forme `ride:<id>` pour éviter les collisions avec les identifiants de parc.
- Les mêmes tables Live existantes sont réutilisées : aucune nouvelle table d’historique et aucune migration SQL.
- L’historique reste compacté par changement + heartbeat selon la politique existante de rétention.
- Une tâche quotidienne `cw:live:link-queue-times --all` cherche automatiquement les nouveaux liens de parc.
- `cw:live:sync` synchronise désormais les parcs liés à ThemeParks.wiki ou Queue-Times.
- Ajout de Queue-Times au contrôle de santé des intégrations.
- Attribution obligatoire `Powered by Queue-Times.com` ajoutée au pied de page dans les cinq langues prises en charge.

## Compatibilité
- Aucun changement de schéma SQL.
- Le scheduler Laravel existant est conservé.
- Les composants d’affichage des temps d’attente et les tables Live existantes restent inchangés.

## Déploiement
Après remplacement des fichiers et conservation du `.env` existant :

```bash
php artisan optimize:clear
```

Aucune migration SQL n’est nécessaire. Le scheduler créera automatiquement les liens Queue-Times. Pour initialiser immédiatement sans attendre la tâche nocturne, optionnellement :

```bash
php artisan cw:live:link-queue-times --all
php artisan cw:live:sync --all --active --force
```
