fix(ris): Provox-Sitzungstermine in echter Berliner Ortszeit - #75
Merged
Conversation
provox.ts verdrahtete den UTC-Offset fest auf +01:00. Im gesamten Sommerhalbjahr — also auch jetzt — lag damit jeder importierte Sitzungstermin eine Stunde zu frueh: eine Sitzung um 19:30 erschien als 18:30. Die Rechnung geht jetzt ueber Intl statt ueber eine feste Zahl; die Regeln der Zeitumstellung stehen damit in der ICU-Datenbank der Laufzeit und nicht in unserem Code. Zwei Durchlaeufe, damit auch die Umstellungsnaechte stimmen. Bewusst als eigenes Modul lib/ris/zeitzone.ts und NICHT aus allris.ts herausgezogen: Der ALLRIS-Parser steht bis nach dem Pitch unter Fix-Freeze. Die Dopplung ist dokumentiert; der geplante ALLRIS-Rewrite schwenkt um. 7 neue Tests, darunter beide Umstellungstage 2026 und eine Rueckprobe ueber alle zwoelf Monate. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018YNj1kkesDywuEGvNweBHM
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Räumt Punkt 2 der „Nächsten Schritte" aus
docs/STATUS.mdab.Der Fehler
provox.tsverdrahtete den UTC-Offset fest auf+01:00. Im gesamten Sommerhalbjahr — also auch heute — lag damit jeder importierte Sitzungstermin eine Stunde zu früh: Eine Sitzung um 19:30 erschien als 18:30.Im AllRIS-Adapter war das bereits behoben; Provox blieb übrig.
Die Lösung
Die Umrechnung läuft jetzt über
Intl.DateTimeFormatmittimeZone: "Europe/Berlin"statt über eine feste Zahl. Die Regeln der Zeitumstellung stehen damit dort, wo sie gepflegt werden — in der ICU-Datenbank der Laufzeit — und nicht in unserem Code. Zwei Durchläufe, damit auch die Umstellungsnächte stimmen; ohne den zweiten läge ein Termin am Umstellungstag um eine Stunde daneben.Warum ein eigenes Modul statt Wiederverwendung
Dieselbe Rechnung steht bereits in
allris.ts. Sie von dort herauszuziehen hätte bedeutet, den ALLRIS-Parser anzufassen — und der steht bis nach dem Pitch unter Fix-Freeze, weil zwei Härtungsrunden dort je eine schwerere Lücke erzeugt haben, als sie geschlossen haben.Deshalb: neues
lib/ris/zeitzone.ts, Provox nutzt es,allris.tsbleibt unberührt. Die Dopplung ist im Kopfkommentar begründet, und der ohnehin geplante ALLRIS-Rewrite schwenkt auf dieses Modul um.Geprüft
hour12:falseliefert dort 24 statt 0), ungültige Eingabe →nullsrc/lib/risvollständig: 75 Tests grünnpm run lintundnpm run typechecksauber🤖 Generated with Claude Code
https://claude.ai/code/session_018YNj1kkesDywuEGvNweBHM