## MODIFIED Requirements ### Requirement: Zonenermittlung mit Rückfallebene Die Laufzeit SHALL die Zeitzone des Rechners über die Betriebssystemeinstellung bestimmen. Lässt sie sich nicht ermitteln, SHALL UTC gelten und das Programm ohne Fehler weiterlaufen. Ob die Rückfallebene greift, MUST für ein Programm erkennbar sein und in docs/sprachreferenz.md beschrieben stehen; ein stiller Wechsel auf UTC MUST NOT vorkommen. Die parameterlose INTEGER-Funktion TIMEZONEKNOWN SHALL -1 für eine ermittelte Systemzone und 0 für den UTC-Rückfall liefern. Auch eine nach Programmstart scheiternde Zonenermittlung SHALL diesen Zustand sichtbar ändern; die Abfrage SHALL keine Zeitzone oder Systemuhr verstellen. #### Scenario: Zone nicht ermittelbar - **WHEN** die Zeitzone des Rechners nicht bestimmt werden kann - **THEN** rechnen die Zeitfunktionen in UTC und das Programm läuft ohne Fehler weiter #### Scenario: Rückfallebene ist erkennbar - **WHEN** ein Programm den Zonenzustand abfragt - **THEN** unterscheidet die Antwort erkennbar zwischen ermittelter Zone und Rückfall auf UTC #### Scenario: Rückfall nach Programmstart - **WHEN** zunächst eine Zone ermittelt wurde, eine spätere Ermittlung aber scheitert - **THEN** verwenden die Zeitfunktionen UTC und TIMEZONEKNOWN liefert 0