CW Deploy 0.1.0-alpha4.13
=============================

Blog & News – sichere Lösch-Deployments
- Wird ein Beitrag auf SOURCE gelöscht und entspricht der TARGET-Beitrag noch exakt der gespeicherten Baseline, erkennt CW jetzt die Aktion „delete“.
- TARGET-only-Inhalte oder auf TARGET zwischenzeitlich veränderte Beiträge werden weiterhin niemals gelöscht; sie bleiben TARGET-only bzw. Konflikt.
- Eine Löschung wird im Auswahl-Schritt absichtlich NICHT vorausgewählt.
- Auch „Alle“ wählt destruktive Blog-Löschungen nicht automatisch an.
- Vor dem Deployment erscheint eine zweite, verpflichtende Löschbestätigung mit Anzahl und Zielsystem.
- Bei Produktionszielen bleiben Löschbestätigung und Produktionsbestätigung zwei getrennte Pflichtbestätigungen.
- Die Löschbestätigung wird zusätzlich serverseitig auf SOURCE und nochmals auf TARGET geprüft; ein manipulierter Request ohne Bestätigung wird abgelehnt.

TARGET-Verhalten
- Ein bestätigter Blog-Delete verschiebt den Beitrag in den normalen Blog-Papierkorb (deleted_at) statt ihn endgültig aus der Datenbank zu entfernen.
- Referenzierte Blog-Medien werden ausdrücklich NICHT gelöscht, weil sie noch von anderen Beiträgen verwendet werden können.
- Unmittelbar vor dem Löschen wird ein Provider-Backup erstellt.
- Der TARGET-Fingerprint wird direkt vor dem Löschen erneut gegen den vorher verglichenen Stand geprüft (Race-Schutz).
- Nach dem Löschen prüft CW, dass der Beitrag im aktiven Blog-Snapshot nicht mehr vorhanden ist.

Rollback
- CW Deploy speichert den vollständigen TARGET-Beitrag inklusive Bereiche als Backup.
- Ein Rollback stellt einen gelöschten Beitrag wieder her.
- Der Rollback stoppt, wenn der gelöschte Beitrag auf TARGET zwischenzeitlich bereits wiederhergestellt oder neu angelegt wurde.

Kompatibilität
- Neue Capability: content.blog.delete.
- Patch auf SOURCE und TARGET einspielen und danach die Verbindung einmal neu prüfen, damit SOURCE die neue TARGET-Capability kennt.
