Upgrade
Las migraciones de BD son idempotentes y se ejecutan automáticamente al arrancar la API.
Upgrade zero-downtime
- Arranca la nueva versión en paralelo (por ejemplo vía blue/green tras nginx)
- Health-check:
GET /healthz→oktras las migraciones - Cambia el tráfico a la nueva versión
- La antigua se queda para un rollback de 24-48 horas
Rollback
Las migraciones son forward-only (no escribimos downgrades). Un rollback del backend solo es posible si la nueva migración no rompió el código antiguo (evitamos drop column / type change en una misma versión). Para versiones mayores — un backup antes del upgrade.