# Umstellungs- und Rückführungsverfahren — anzupassendes Modell

Der Fall Capordia betrifft ein Team, das unabhängige Lose bearbeitet. Das Ziel
ist, die identifizierten Arbeiten wieder aufzunehmen, ohne ihre Abnahme zu
verlieren. Eine geplante Unterbrechung ist möglich. Die zulässige Dauer, die
Qualitätskriterien und die Verantwortlichkeiten werden vor dem Migrationsfenster
festgelegt.

## 1. Verantwortlichkeiten benennen

| Rolle | Verantwortlichkeit | Aufzubewahrender Nachweis |
|---|---|---|
| Umstellungsleiter | Genehmigt Stopp, Autoritätswechsel und Wiederaufnahme | Entscheidung und Uhrzeit UTC |
| Datenverantwortlicher | Fixiert die Eingaben, kontrolliert Kopie und Inventar | Versioniertes Manifest und Prüfsummen |
| Verarbeitungsverantwortlicher | Stoppt den Produzenten, klassifiziert die Versuche | Losregister und Prozessprotokoll |
| Abnahmeverantwortlicher | Vergleicht Ausgaben und vereinbarte Kriterien | Ergebnisse, Ablehnungen und Abnahmevereinbarung |

Ein kleines Team kann Rollen kumulieren, aber die Person, die die Abnahme
ausspricht, und diejenige, die die alte Autorität stoppen kann, müssen
identifizierbar sein. Das bereitgestellte CSV-Modell schreibt keinen Personennamen vor.

## 2. Referenz vor dem Kopieren festlegen

Jedem Los eine stabile Kennung und eine Eingabeversion zuweisen.
Seinen Pfad, seine Prüfsumme, die genaue Verarbeitung und das
Abnahmekriterium erfassen. Einen gestarteten Versuch von einem abgenommenen
Ergebnis unterscheiden. Die für die Wiederaufnahme erforderlichen Parameter und
Abhängigkeiten aufbewahren, einschließlich der Berechnungszustände, die Ihre
Software erfordert. Ein Dateiname `final` genügt nicht als Nachweis einer
Abnahme.

In der Übung stehen acht Lose für 48 fiktive Coupons. Die Abnahme
beruht auf einem deterministischen Ergebnis in ganzen Zahlen; dies ist kein
GPU-Checkpoint-Modell. Die acht Referenzausgaben werden vor der Unterbrechung berechnet.

## 3. Den Eingang neuer Arbeiten stoppen

Die Aufnahme neuer Lose schließen und die letzte aufgenommene Kennung notieren.
Den Worker stoppen oder die vorgesehene Wiederaufnahmegrenze abwarten. Bestätigen,
dass kein Prozess der alten Maschine noch Ausgaben annehmen kann.
Das Register klassifizieren: abgeschlossen, in Bearbeitung, wiederaufzunehmen. Spuren
eines unklaren Loses bewahren, statt es vermutungsweise als abgeschlossen zu erklären.

In der Übung ergibt die Unterbrechung bei LOT-004 3 / 1 / 4. Ein Neustart ohne
Abgleich wird abgelehnt. Das Register und seine Ergebnisse bleiben zusammen.

## 4. Kopieren, kontrollieren, Autorität wechseln

Das Ziel muss über den fixierten Datensatz, den erforderlichen Zustand und das
kompatible Programm verfügen. Die Prüfsummen und das Inventar von der Zielseite aus
verifizieren. Die Wiederaufnahme blockieren, wenn eine Eingabe fehlt, wenn sich das
Manifest geändert hat oder wenn ein Ergebnis nicht mehr mit seiner Prüfsumme und der
Abnahmeregel übereinstimmt.

In dieser Übung schließt `basculer` zuerst die Quelle und kopiert dann die
Dateien nach Schließen der Verbindungen. Das Programm öffnet das Ziel erst
nach der Kontrolle für die Produktion. Keine Hot-Kopie einer aktiven
Datenbank außerhalb dieses Verfahrens nachahmen. Ein Fehler lässt die Quelle gestoppt.

In einem realen System verbietet das Schließen einer lokalen Datei einer isolierten
alten Maschine nicht, fortzufahren. Ein ausschließliches Veröffentlichungsrecht muss
durch das System erzwungen werden, das die Ergebnisse empfängt, mit Ablehnung der alten
Rechte und Nachweis dieser Ablehnung. Das vorliegende Programm bietet diesen Schutz nicht.

## 5. Abgleichen und abnehmen

Verifizieren, dass alle abgeschlossenen Ergebnisse vorhanden und akzeptabel sind.
Laufende Versuche ohne Abnahme werden nach Bestätigung der Beendigung ihres alten
Produzenten zur Wiederaufnahme übergeben. Vor dem erneuten Öffnen der Aufnahme eine
begrenzte Wiederaufnahme durchführen. Die erwarteten Lose, die akzeptierten eindeutigen
Kennungen, die Fehler und die Wiederaufnahmen zählen. Eine Abnahme getrennt vom
bloßen Prozessende erfassen.

Im Programm wandelt `preparer-reprise` das einzige laufende Los in ein
wiederaufzunehmendes Los um. `executer` berechnet die drei abgeschlossenen Lose nicht
neu. Die Endkontrolle erfordert acht abgenommene Ausgaben, identisch mit der Referenz.
LOT-004 hat zwei Versuche, aber nur eine abgenommene Ausgabe.

## 6. Die Rückführung auf ein beobachtbares Signal hin auslösen

| Signal | Vorgeschlagene Entscheidung für diese Übung |
|---|---|
| Anderer Eingabe-Fingerabdruck | Vor der Verarbeitung blockieren; die eingefrorene Version wiederherstellen |
| Fehlendes oder verändertes Ergebnis | Den Empfang blockieren; den Stapel und den Zustand prüfen |
| Zwei mögliche Autoritäten | Die Wiederaufnahme stoppen; eine einzige Autorität festlegen |
| Programm kann nicht wiederaufnehmen | Die Zulassung geschlossen halten und den aktuellen Zustand in die kompatible Umgebung übertragen |
| Fensterfrist überschritten | Die vom Team festgelegte Entscheidung und Grenze vor dem Umschalten anwenden |

Wenn das Ziel bereits neue Ergebnisse akzeptiert hat, würde eine Rückkehr zur alten Kopie
der Quelle diese Akzeptanzen verlieren. Das Ziel einfrieren, seinen aktuellen Zustand exportieren,
ihn prüfen und an einen neuen Rückkehrort übertragen.
Die Ergebnisse vor dem Neustart abgleichen. Bei externen Effekten
gehört deren Inventar zur Rückkehr; diese Übung erzeugt keine.

```text
python exercice.py basculer --source manuel/cible --destination manuel/retour --proprietaire atelier-retour
python exercice.py preparer-reprise --dossier manuel/retour
python exercice.py executer --dossier manuel/retour
python exercice.py comparer --reference manuel/reference --candidat manuel/retour
```

Nach diesem Vorgang sind `manuel/source` und `manuel/cible` abgeschlossen. Nur
`manuel/retour` kann arbeiten. Wenn die Kopie fehlschlägt oder die Prüfung
ein Ergebnis ablehnt, die Belege aufbewahren und nicht zwei Produzenten entsperren.

## 7. Die Migration abschließen

Manifest, Vorher-/Nachher-Register, Fingerabdrücke, Prüfergebnisse,
Programmversion, Wiederaufnahmeentscheidung und eventuelle Rückkehrentscheidung aufbewahren.
Die alte Kopie erst nach der vom Team gewählten Aufbewahrungsfrist löschen.
Die Übung löscht keinen Ordner; ihre Ressourcen sind
fiktiv und können mit dem Bericht archiviert werden.
