## MODIFIED Requirements ### Requirement: Verlustfreies Speichern und Wechseln Save File, Save File As, Save Project sowie Projektwechsel und IDE-Ende SHALL Änderungen mit Speichern/Verwerfen/Abbrechen behandeln. Fehlgeschlagenes Speichern MUST den bearbeiteten Stand erhalten und darf die letzte gültige Zieldatei nicht beschädigen. Externe Dateiänderungen und bestehende Save-As-Ziele SHALL vor Überschreiben erkennbar sein und eine ausdrückliche Wahl erfordern. Erst erfolgreich gespeicherte Dokumente SHALL als gespeichert gelten. Relative Mitglieder- und Include-Verweise in geschriebenen MAK- und BAS-Dateien SHALL plattformneutral mit `/` als Trenner geschrieben werden; das Laden SHALL solche Verweise auf allen Zielplattformen auflösen. #### Scenario: Schreibfehler im Projekt - **WHEN** ein Mitglied erfolgreich gespeichert wird, ein weiteres aber nicht geschrieben werden kann - **THEN** bleibt das zweite als geändert offen, der Fehler nennt den Pfad und das Projekt wird nicht als vollständig gespeichert oder geschlossen gemeldet #### Scenario: Save As in anderes Verzeichnis - **WHEN** ein Projekt unter einem neuen Pfad gespeichert wird - **THEN** werden relative Mitgliederverweise so angepasst, dass dieselben Dateien geladen werden; ein fehlgeschlagener Vorgang lässt den bisherigen Projektpfad aktiv #### Scenario: Projekt zwischen Plattformen austauschen - **WHEN** ein Projekt unter Windows in ein Unterverzeichnis gespeichert wird und die Projektdatei anschließend unter Linux oder macOS geöffnet wird - **THEN** enthalten die geschriebenen Verweise `../` statt `..\`, und beide Plattformen laden dieselben Mitglieder und Bibliotheken