v0.1.0-alpha89
12.09.2026
Stable
Version 0.1.0-alpha89
Data Foundation 5.1.3 / CAMS-FORECAST-ZEITFENSTER + FEHLERSCHLEIFEN-SCHUTZ
- Auslöser:
- Der fortgesetzte DACH-Nachtlauf blieb bei 196/310 Paketen stehen.
- Der CAMS-Tagesforecast für 2026-09-12 wurde ab 00:38 UTC bereits 124-mal mit HTTP 400 abgewiesen.
- Ursache war kein Downloadstillstand: Der vollständige CAMS-00-UTC-Lauf mit Vorhersagehorizont 0–96 h war zu diesem Zeitpunkt noch nicht veröffentlicht.
- Die bisherige adaptive Variablenaufteilung war für diesen Fehlerfall ungeeignet und testete dieselbe ungültige Datum-/Zeithorizont-Auswahl wiederholt bis zur Einzelvariable.
- Fix:
- Der Nachtplan wählt für CAMS automatisch den neuesten vollständig veröffentlichten Forecast-Lauf.
- Für 0–96 h gilt das CAMS-Veröffentlichungsfenster 08:30 UTC plus 15 Minuten Sicherheitsabstand; davor wird der Vortageslauf verwendet.
- Ein laufender alpha88-Plan mit einem zu frühen Tagesdatum wird automatisch auf den sicheren Vortageslauf migriert.
- Nur das noch nicht fertige Forecast-Paket wird zurück auf pending gesetzt; alle validierten Pakete, RAW-Dateien, Manifeste und SHA-256 bleiben erhalten.
- Ungültige CAMS-Auswahlen werden nur bei der historischen Reanalyse nach Variablen geteilt. Beim Tagesforecast wird kein sinnloser Einzelvariablen-Fächer mehr erzeugt.
- Deterministische Auswahlfehler werden nach dem ersten Fehler nicht erneut gesendet; andere Paketfehler erhalten eine feste Obergrenze von drei Versuchen pro Lauf.
- Nach erreichter Fehlergrenze fährt der Nachtlauf mit dem nächsten offenen Paket fort.
- Die append-only Fehlerhistorie bleibt vollständig erhalten, wird in Backend, PDF, CSV und JSON aber nach Run/Paket/Fehlermeldung gruppiert.
- 124 identische Meldungen erscheinen dadurch als eine Fehlergruppe mit Erst-/Letztzeit und Wiederholungszahl statt als hunderte PDF-Seiten.
- Keine Root-.htaccess im Release-Paket.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha88
12.09.2026
Stable
Version 0.1.0-alpha88
Data Foundation 5.1.2 / CAMS-HISTORISCHE QUELLVERFÜGBARKEIT
- Auslöser:
- Der laufende DACH-Nachtlauf erreichte 155/310 Pakete.
- CAMS Europa Reanalyse 2013-01 antwortete für einen Variablen-Shard mit HTTP 400 / "Request has not produced a valid combination of values".
- alpha87 behandelte diese periodenspezifische Variablenverfügbarkeit als harten Quellenfehler und markierte dadurch 154 weitere CAMS-Monatspakete als skipped_source_blocked.
- Fix:
- Ungültige CAMS-Variablenkombinationen werden adaptiv bis zur Einzelvariable aufgeteilt.
- Eine einzelne, für den Zeitraum nicht verfügbare Variable erhält den Shard-Status unavailable statt failed.
- Verfügbare Variablen desselben Monats werden weiter heruntergeladen und validiert.
- Monats-Pakete speichern coverage_status, available_variables und unavailable_variables.
- Ein Monat wird nur dann als echter Fehler gewertet, wenn keine einzige angeforderte Variable verfügbar ist.
- alpha87-Source-Blocks für cams_aq_history werden automatisch entsperrt; failed/skipped Pakete gehen zurück auf pending.
- Bereits validierte 155 Pakete, RAW-Dateien, Manifeste und SHA-256 bleiben erhalten.
- Bekannte alpha87-CAMS-Verfügbarkeitsfehler werden in UI/PDF/CSV/JSON unterdrückt, die append-only Rohhistorie bleibt unangetastet.
- Linux-Step/Lease-Handoff-Fix aus alpha87 bleibt unverändert aktiv.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha87
12.09.2026
Stable
Version 0.1.0-alpha87
Data Foundation 5.1.1 / Linux-Step-Handoff-Fix
- Behebt einen alpha86-Reportingfehler: der interne LeaseYield für einen normalen Linux-Kurzlauf-Handoff wird nicht mehr von generischen Exception-Handlern als Paket-/Shard-Fehler abgefangen.
- Remote-Copernicus-Job-ID, Remote-Status und laufender Shard bleiben beim Handoff unverändert erhalten; der nächste Linux-Kurzlauf setzt denselben Job fort.
- Kein append-only Fehlerhistorien-Eintrag mehr für Meldungen „Copernicus verarbeitet weiter …“ bzw. „Data-Store-Job bleibt erhalten …“.
- Bereits unter alpha86 fälschlich als failed gespeicherte Handoff-States werden beim nächsten Laden auf pending/running normalisiert; vorhandene Job-IDs bleiben erhalten.
- Die append-only Datei nightly-error-history.jsonl wird nicht verändert oder gelöscht. Bekannte alpha86-Scheinfehler werden lediglich in UI/PDF/CSV/JSON-Fehlerberichten ausgeblendet.
- Echte Fehler, Source-Blocks und übersprungene Pakete werden weiterhin dauerhaft protokolliert.
- Laufender alpha86 Nachtlauf kann mit alpha87 fortgesetzt werden; RAW-Dateien, Plan und Remote-Job-IDs bleiben updatefest.
- Keine Root-.htaccess im Release.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha86
12.09.2026
Stable
Version 0.1.0-alpha86
Data Foundation 5.1 / Fehlerdiagnose-Fix
- Append-only Fehlerhistorie unter project/storage/environment/copernicus/sync/nightly-error-history.jsonl.
- Fehlerhistorie bleibt bei Browser-Reload, Nachtlauf-Abbruch und Zustand-Reset erhalten.
- Aktuelle State-Fehler und persistente Historie werden im Fehlerdialog getrennt dargestellt.
- Fehlerbericht als PDF, CSV und JSON direkt aus dem Fehlerdialog exportierbar.
- PDF-Export ohne externe PHP-/Python-Abhängigkeit; keine Zusatzpakete erforderlich.
- Run-ID, Paket, Quelle, Dataset, Zeitpunkt, Versuche, Remote-Status, Job-ID, Fehlermeldung, Variablen und Request werden protokolliert.
- Fehlerhistorie ist Diagnose-only und kann den Download nicht stoppen, selbst wenn das Schreiben fehlschlägt.
- Laufender alpha85 Linux-Step-Runner bleibt kompatibel; beim nächsten Kurzlauf übernimmt alpha86 den vorhandenen State.
- RAW-Dateien, Plan und Remote-Job-IDs bleiben unverändert.
- Keine Root-.htaccess im Release.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha85
11.09.2026
Stable
Version 0.1.0-alpha85
Data Foundation 5.0 / Linux-Step-Runner
- Linux produktiv: langlebige Guardian/Watchdog-Kette wird beim Start nicht mehr verwendet.
- Ein Linux-Worker lebt ca. 90 Sekunden und übergibt Plan/State anschließend an einen frischen Prozess.
- Copernicus Remote-Job-IDs bleiben über Prozesswechsel erhalten.
- Prozessübergaben werden im State gezählt und im Backend angezeigt.
- Externer HTTPS-Cron-Fallback für Shared Hosting/KAS mit zufälligem Token.
- Browser-Statuspoll kann einen stale Linux-Step-Runner ebenfalls wieder anstoßen.
- Sicheres Abbrechen/Fortsetzen im UI dokumentiert; RAW-Pakete bleiben erhalten.
- Ein-Jahres-Pakete werden als „2006“ statt „2006-2006“ angezeigt.
- Letzter abgeschlossener Download bleibt mit Größe/Rate sichtbar, auch wenn der Transfer zu schnell für Live-Prozentwerte war.
- Quellenplan als ruhige Tabelle; Excel-kompatibler CSV-Export.
- Keine zusätzlichen Python-Pakete; CW Embedded Data Store Client bleibt stdlib-only.
- Keine Root-.htaccess im Release.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha84
11.09.2026
Stable
Version 0.1.0-alpha84
Data Foundation 4.1 · Nachtlauf-Dashboard / Transfer-Telemetrie
- Nachtlauf-Seite neu strukturiert und typografisch beruhigt.
- Eigene große Infobox „Aktueller Prozess“.
- Sichtbarer Spinner während Copernicus die Datei vorbereitet oder die Gesamtgröße noch nicht feststeht.
- Echte Download-Prozentanzeige sobald die Gesamtgröße ermittelt wurde.
- Vor dem GET versucht der Embedded Worker die Dateigröße zusätzlich über HEAD bzw. Content-Range (0-0 Probe) zu bestimmen.
- Geladene Bytes, Gesamtbytes, Geschwindigkeit, ETA und letzte Aktivität werden hervorgehoben.
- Worker, Laufzeit, Lebenszeichen, Watchdog, Selbstheilung und externe Rettung als große Statuskarten mit Icons und Ampelfarben.
- Nachtlauf-Detaildialoge erhalten größere Mindesttypografie; Mikrotexte wurden reduziert.
- Aktuelles Paket aus den kleinen Metrikkarten entfernt, da es nun eine eigene zentrale Prozessbox hat.
- Linux-first Beschriftung; keine neue Python-/pip-Abhängigkeit.
- Root-.htaccess ist nicht Bestandteil des Modulpakets.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha83
11.09.2026
Stable
Version 0.1.0-alpha83
Data Foundation 4.0 · sichtbarer Paket-/Download-Fortschritt
Neu
- Eigener Live-Indikator für das aktuell verarbeitete Copernicus-Paket.
- Solange Copernicus das Paket noch serverseitig erzeugt und keine Dateigröße bekannt ist, läuft ein klarer indeterminate Balken ohne erfundene Prozentzahl.
- Sobald Content-Length verfügbar ist, wechselt derselbe Balken automatisch auf echten Download-Fortschritt.
- Anzeige von geladenen Bytes / Gesamtgröße, Prozent, mittlerer Downloadgeschwindigkeit, geschätzter Restzeit und letzter Transferaktivität.
- Wenn Content-Length fehlt, bleibt der Balken indeterminate, zeigt aber die tatsächlich bereits geschriebene .part-Größe und Geschwindigkeit.
- Transfer-Telemetrie wird im persistenten Nachtlauf-State gespeichert: bytes, expected_bytes, speed_bps, eta_seconds, transfer_started_at, transfer_updated_at, part_file und part_size_bytes.
- Live-Detailmodal zeigt ebenfalls indeterminate/determinate Downloadstatus.
- Vor der Downloadphase werden Remote-Status und Wartezeit weiterhin separat dargestellt.
- Linux-first
- Produktionsziel ist Linux/Hosting (teitges.de / ALL-INKL).
- Windows bleibt Entwicklungs-/Testumgebung.
- Die Linux-Cron-/Step-Runner-Architektur wird getrennt von der Download-Telemetrie dokumentiert und weitergeführt; diese Version verbessert zunächst die Beobachtbarkeit des realen Transfers.
- Die Root-.htaccess wird nicht mehr im Modulpaket ausgeliefert oder überschrieben.
Unverändert
- vorhandene RAW-Dateien, Manifeste und Remote-Job-IDs bleiben erhalten.
- DACH-Komplettplan: 310 logische Pakete / 92 Quellvariablen.
- pip-freier CW Embedded Data Store Client; keine NumPy/netCDF4/cdsapi-Pflicht für RAW-Downloads.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha82
11.09.2026
Stable
Version 0.1.0-alpha82
Data Foundation 3.9
- Externe Selbstheilung außerhalb des Python-Worker-Prozessbaums.
- Unter Windows wird beim Start ein minütlicher Task in der Aufgabenplanung angelegt.
- Der Task führt nur einen kurzen Healthcheck aus.
- Sind Worker, Watchdog und Guardian mindestens 5 Minuten ohne Lebenszeichen, beendet der externe Check stale Prozesse/Locks und startet den gespeicherten Lauf automatisch neu.
- Gespeicherte Region, Variablenauswahl, Remote-Job-IDs, Manifeste und validierte RAW-Dateien bleiben erhalten.
- Stop-Signale werden respektiert; bei angefordertem Stopp erfolgt kein automatischer Neustart.
- Der Startkontext wird ohne Tokens in nightly-run-config.json gespeichert; Tokenwerte bleiben ausschließlich in den geschützten Credential-Dateien.
- Auf Nicht-Windows-Systemen wird ein Cron-Kommando vorbereitet; automatische Task-Installation erfolgt nur unter Windows.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha81
11.09.2026
Stable
Version 0.1.0-alpha81
Data Foundation 3.8 · Selbstheilender Nachtlauf
- Problem aus dem Praxistest
- In alpha80 konnte nicht nur der Netzwerk-Worker, sondern in seltenen Fällen auch der Watchdog selbst ohne neues Lebenszeichen stehen bleiben.
- Ein manuelles Reload/Login plus Wiederaufnahme setzte den persistenten Lauf danach wieder fort.
Neu
- Dritte, sehr kleine Guardian-Ebene über Watchdog und Netzwerk-Worker.
- Guardian macht selbst keine Netzwerkzugriffe und überwacht nur Prozess-/Heartbeat-Dateien.
- Watchdog > 5 Minuten stale: Guardian beendet/ersetzt ihn automatisch.
- Neuer Watchdog darf einen noch lebenden, aber stale Vorgänger übernehmen.
- Temporäre Fehler beim Schreiben des Watchdog-Heartbeats beenden den Watchdog nicht mehr.
- Admin-Statuspoll besitzt zusätzlich einen Auto-Recovery-Fallback: Sind Worker, Watchdog und Guardian stale, wird der gespeicherte Nachtlauf automatisch neu gestartet.
- Der Recovery-Weg verwendet nightly-plan.json; Länder, Variablen, Profil und bereits gespeicherte Remote-Job-IDs bleiben erhalten.
- Zustand zurücksetzen ist für diesen Recovery-Fall nicht erforderlich.
Unverändert
- DACH-Komplettplan: 310 logische Pakete / 92 Quellvariablen.
- vorhandene RAW-Dateien und Manifeste bleiben erhalten.
- pip-freier CW Embedded Data Store Client.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha80
11.09.2026
Stable
Version 0.1.0-alpha80
Data Foundation 3.7 · Watchdog-Nachtlauf
- Problem aus dem Praxistest
- Ein lang laufender Python-Worker konnte nach mehreren Stunden ohne Heartbeat in einem Remote-/Systemzustand hängen bleiben.
- Der gespeicherte State blieb dabei auf `running`, obwohl keine Fortschrittsmeldung mehr kam.
- Besonders bei einem unbeaufsichtigten Nachtlauf ist ein einzelner langlebiger Prozess dafür zu empfindlich.
Neu
- Der Nachtlauf wird jetzt von einem separaten Supervisor/Watchdog überwacht.
- Der eigentliche Download-Worker bleibt ein eigener Prozess. Meldet er länger als 180 Sekunden kein Lebenszeichen, beendet der Supervisor nur diesen Worker und startet ihn automatisch neu.
- Remote-Job-IDs, Paketstatus, Manifeste und bereits validierte RAW-Dateien liegen weiterhin auf Platte und werden nach dem Neustart wiederverwendet.
- Ein hängender Status-Poll kann dadurch nicht mehr den kompletten Nachtlauf für Stunden blockieren.
- Der Worker-Heartbeat wurde bewusst auf ca. 30 Sekunden beruhigt; die Backend-Anzeige pollt ca. alle 10 Sekunden.
- Remote-Statusabfragen erfolgen in ruhigerem Intervall (ca. 25 Sekunden).
- Der Supervisor besitzt einen eigenen Heartbeat und zeigt im Backend Watchdog-Status sowie automatische Neustarts.
- Unter Windows aktiviert der Supervisor während des Nachtlaufs über die Standardbibliothek `SetThreadExecutionState` einen System-Schlafschutz. Der Bildschirm darf ausgehen, Windows soll den Rechner während des aktiven Datenlaufs aber nicht in den normalen Energiesparmodus schicken.
- Beim Beenden des Supervisors wird der Schlafschutz wieder aufgehoben.
- `Nachtlauf abbrechen` besitzt zusätzlich eine Watchdog-Sicherung: reagiert ein blockierter Worker nicht innerhalb der Grace-Periode, beendet der Supervisor ihn kontrolliert und erhält den fortsetzbaren State.
- Ein alter alpha78/79-Worker mit stale Heartbeat kann beim Start von alpha80 übernommen werden: der Supervisor beendet den verwaisten Worker, behält den gespeicherten Jobzustand und setzt den Lauf fort.
- Zustand zurücksetzen löscht weiterhin keine RAW-Dateien.
- Anzeige
- `Worker` zeigt aktiv / verzögert / keine Rückmeldung / Watchdog startet neu.
- `Watchdog` zeigt eigenen Status, Windows-Schlafschutz und Zahl automatischer Worker-Neustarts.
- Heartbeat-Warnung ab ca. 90 Sekunden, deutlicher stale-Zustand ab ca. 5 Minuten.
- Hauptfortschritt zählt weiterhin nur validierte Pakete.
Unverändert
- DACH-Komplettplan: 310 logische Pakete / 92 Quellvariablen.
- adaptive CAMS-Teilpakete.
- pip-freier CW Embedded Data Store Client.
- vorhandene RAW-Dateien und Manifeste.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha79
11.09.2026
Stable
Version 0.1.0-alpha79
Data Foundation 3.6 · Statuskarten-Kontrast
- Korrektur
- Nachtlauf-Kacheln konnten im hellen CW-Backend durch die generische CSS-Variable --panel dunkel gerendert werden, während die Typografie dunkel blieb.
- Die Nachtlauf-Kacheln verwenden nun die namespaced Environment-Fläche --env-surface mit hellem Fallback.
- Neutrale, erfolgreiche, fehlerhafte und laufende Zustände bleiben eindeutig und kontrastreich lesbar.
Unverändert
- Data Foundation 3.5 Worker aus alpha78
- Heartbeat-Sidecar
- Poll-Timeouts
- Stop-/Resume-Logik
- DACH-Plan mit 310 Paketen / 92 Quellvariablen
- vorhandenes RAW-Archiv
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha78
11.09.2026
Stable
Version 0.1.0-alpha78
DATA FOUNDATION 3.5 · ROBUSTER NACHTLAUF & ECHTER HEARTBEAT
- Auslöser:
- Beim produktiven DACH-Nachtlauf konnte ein länger laufender ERA5-Data-Store-Poll die sichtbare Heartbeat-Aktualisierung und das Stop-Signal über viele Minuten verzögern. Außerdem zählte die Fortschrittsanzeige Fehler als verarbeitet und zeigte dadurch z. B. 14 validierte Pakete als 4,8 % statt 4,5 %.
Änderungen
- eigener Heartbeat-Sidecar `sync/nightly-heartbeat.json`, unabhängig vom großen State-Write
- Heartbeat ca. alle 3 Sekunden, auch während Remote-Wartephasen
- kurze Poll-Timeouts; temporäre Netz-/Timeoutfehler bleiben fortsetzbar
- Remote-Job-ID bleibt beim Poll-Warten erhalten
- paketgebundener Graceful-Stop gegen Race Conditions
- Stop-Prüfung vor neuem Paket, zwischen CAMS-Shards und an jedem Poll-/Downloadpunkt
- Live-Phasen + Remote-Wartezeit
- echte Byte-/MB-Anzeige sobald der Download begonnen hat
- während serverseitiger Copernicus-Erzeugung keine erfundene Byte-Anzeige
- Hauptfortschritt = nur validierte Pakete
- Reset entfernt State/Plan/Lock/Heartbeat, aber keine RAW-Dateien
- vorhandene RAW-Dateien werden beim folgenden Lauf wiederverwendet
- Weiterhin gilt:
- Keine pip-, NumPy-, netCDF4-, cdsapi- oder ecmwf-datastores-client-Pflicht für den RAW-Nachtlauf.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha77
11.09.2026
Stable
Version 0.1.0-alpha77
DATA FOUNDATION 3.4 · ADAPTIVE CAMS-TEILPAKETE
- Problem in alpha76:
- CAMS Europa Reanalyse wurde pro Monat mit allen 22 Luftqualitätsvariablen in einem einzigen ADS-Request angefordert. Für DACH überschreitet dieser Request die aktuelle Data-Store-Grenze und wird mit HTTP 403 / "Your request is too large, please reduce your selection" abgelehnt.
- Lösung:
- Monats-Paket bleibt die logische Fortschrittseinheit.
- CAMS-Reanalyse wird intern in Teilpakete mit zunächst maximal 4 Variablen zerlegt.
- Ist ein Teilrequest weiterhin zu groß, halbiert der Worker ihn automatisch weiter.
- Teilpakete besitzen eigene Job-ID, Datei, SHA-256 und Manifest und sind einzeln fortsetzbar.
- Größenlimit-Fehler werden nicht länger als Authentifizierungs-/Lizenzfehler behandelt und blockieren die Quelle nicht.
- Alte alpha75/76-Größenlimit-Sperren werden beim Neustart automatisch aufgehoben.
- Bereits fertige RAW-Pakete werden wiederverwendet.
- Der Download bleibt stdlib-only über den CW Embedded Data Store Client. Keine zusätzliche pip-Installation erforderlich.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha76
11.09.2026
Stable
Version 0.1.0-alpha76
Data Foundation 3.3 · Live-Inspektor & kontrollierter Stopp
Neu
- klickbare Kacheln für validierte Pakete, Fehler, Rohdaten und aktuelles Paket
- Modal mit Paketlisten und technischen Details
- validierte Pakete: Dataset, Variablen, Größe, Dateityp, SHA-256, Job-ID und Request
- Fehler: Fehlertext, Quelle, Versuche, Job-ID, Remote-Status und Request
- Rohdaten: tatsächliche fertige Dateien mit Größe und Pfad
- aktuelles Paket: Paketposition, Remote-Status, Heartbeat und Download-Bytefortschritt
- Worker-/Laufzeit-/Heartbeat-Anzeige im Fortschrittsbereich
- Stopp nach aktuellem Paket
- sofortiger kontrollierter Abbruch am nächsten sicheren Poll-/Downloadpunkt
- Fix:
- ein Sofortstopp während eines Data-Store-Polls oder Downloads endet nicht mehr als fataler Fehler
- Status-Polling liefert keine komplette Paket-Historie mehr; Detaildaten werden nur bei Bedarf geladen
Unverändert
- CW Embedded Data Store Client
- RAW-Download ohne pip/NumPy/netCDF4
- Resume, Manifest, SHA-256 und Remote-Job-ID
- freie Länder-/Regionen- und Variablenauswahl aus alpha75
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha75
11.09.2026
Stable
Version 0.1.0-alpha75
Data Foundation 3.2 · Nachtlauf-Builder
Neu
- echte Länderauswahl statt pauschalem Abrufgebiets-Dropdown
- DACH, Deutschland, EU-27 und Ganz Europa als Schnellwahl
- eigene Regionsgruppen ab zwei Ländern speicherbar
- vollständige Einzelauswahl aller 92 eindeutigen Copernicus-Quellvariablen
- fachliche Variablengruppen mit Gruppen-Auswahl/Abwahl
- Live-Neuberechnung von Paketanzahl, Variablenzahl, Region und betroffenen Quellen
- Worker filtert Requests tatsächlich auf die gewählten Variablen
- CAMS-Dubletten (z. B. Ozon/PM/NO2) bleiben ein Auswahlpunkt und werden für Reanalyse + Forecast korrekt berücksichtigt
Unverändert
- CW Embedded Data Store Client
- keine pip-Abhängigkeit für RAW-Downloads
- Browser kann nach Start geschlossen werden
- Resume/Manifest/SHA-256/Remote-Job-IDs bleiben erhalten
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha74
10.09.2026
Stable
Version 0.1.0-alpha74
Data Foundation 3.1 · komplette DACH-Rohdatenbasis ohne pip
- Ziel
- den erfolgreichen Deutschland-Testdownload als verbindliche technische Basis verwenden
- heute Nacht Deutschland + Schweiz + Österreich vollständig und fortsetzbar laden
- alle 92 Quellvariablen archivieren, bevor die neue providerunabhängige Aufbereitung gebaut wird
- Downloadarchitektur
- CW Embedded Data Store Client aus dem Modul
- Python-Standardbibliothek בלבד; keine externen Python-Pakete als Laufzeitvoraussetzung
- keine Installation von cdsapi, ecmwf-datastores-client, NumPy oder netCDF4 für den RAW-Download
- CDS und ADS werden vor dem langen Lauf über denselben eingebetteten Client authentifiziert
- echte Dataset-/Lizenzfreigaben prüft Copernicus beim ersten realen Paket der jeweiligen Quelle
- DACH-Komplettbasis
- Deutschland + Schweiz + Österreich als Standardgebiet
- ERA5-Land: 50 zeitabhängige Variablen, 1950 bis letztes abgeschlossenes Jahr
- ERA5-Land: 10 statische Felder
- ERA5 Single Levels: 4 Bewölkungsfelder
- CAMS Europa Reanalyse: 22 Luftqualitätsvariablen ab 2013
- CAMS Forecast: 7 Hauptschadstoffe + 6 Pollenarten
- 92 eindeutige Quellvariablen insgesamt
Backend
- ADS-Tokenstatus sichtbar
- ADS-Verbindung kann explizit getestet werden
- Speichern testet ADS automatisch
- alpha72-CAMS-Bestätigung wird für den neuen separaten Reanalyse-Status übernommen
- lokale Lizenz-Häkchen dokumentieren den Stand, blockieren einen funktionierenden Nachtlauf aber nicht mehr künstlich
- irreführende pip-/NumPy-/netCDF4-Installationsanweisung aus der aktuellen Oberfläche entfernt
- Rohdaten
- Download nur nach *.part
- Signaturprüfung vor Übernahme
- SHA-256 pro Paket
- Paketmanifest mit Dataset, Request, Gebiet, Ländern, Variablen und Remote-Job-ID
- Resume über gespeicherte Job-IDs und Paketstatus
- vorhandene vollständige Pakete werden wiederverwendet
Wichtig
- alpha74 normalisiert die 92 Variablen noch nicht für Karten/Charts/Formeln.
- Der Nachtlauf sichert zuerst die unveränderte Quellbasis.
- Die nächste Data-Service-Stufe baut darauf das gemeinsame Format für Karte, Tabelle, Diagramm, Marker, CW Formulas, Markdown und Export.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha73
10.09.2026
Stable
Version 0.1.0-alpha73
Data Foundation 3.0 · Copernicus-Mehrländer-Nachtlauf
- Ziel dieses Releases
- alpha73 baut auf dem bestehenden alpha72-Themenimport auf und ergänzt die
- fehlende robuste RAW-Datenbasis für spätere Karten, Tabellen, Diagramme,
- Marker, Formeln und wissenschaftliche Exporte.
- Für den ersten produktiven Lauf ist DACH vorbereitet:
- Deutschland
- Schweiz
- Österreich
- Im Backend sind zusätzlich Deutschland, ganz Europa und eine freie
- Mehrfachauswahl der vorhandenen europäischen Länder verfügbar.
- DACH-Paketplan (Stand 10.09.2026)
- ERA5-Land Historie: 76 Jahrespakete (1950–2025), 50 Monatsvariablen
- ERA5-Land statisch: 1 Paket, 10 Modellfelder
- ERA5 Bewölkung: 76 Jahrespakete (1950–2025), 4 Variablen
- CAMS Europa Reanalyse: 156 Monatspakete (2013–2025), 22 Variablen,
- stündliche Werte innerhalb der Monatsdateien
- CAMS aktueller Forecast: 1 Tagespaket, 13 Variablen (7 Hauptschadstoffe + 6 Pollen),
- 0–96 Stunden
- Gesamt: 310 fortsetzbare Pakete / 92 eindeutige Quellvariablen
- Hintergrundworker
- startet als eigener Python-Prozess; Browser darf anschließend geschlossen werden
- nightly-state.json, nightly-plan.json, Lock und Log unter dem Copernicus-Syncpfad
- Remote-Job-ID bleibt beim Warten/Stop erhalten
- fertige Pakete werden lokal erkannt, validiert und wiederverwendet
- Download zunächst als .part, erst nach Formatprüfung atomare Übernahme
- SHA-256 und Paketmanifest je fertigem Rohpaket
- sicherer Stop und spätere Wiederaufnahme
- deterministische Lizenz-/Request-/Authentifizierungsfehler blockieren nur die
- betroffene Quelle, damit nicht hunderte identische Fehlrequests entstehen
- Rohdatenprinzip
- Die Quellpakete werden unverändert regionsbezogen archiviert. Eine DACH-
- Bounding-Box darf deshalb Randzellen benachbarter Länder enthalten. Exakte
- politische Ländertrennung erfolgt später durch die bereits vorhandenen
- Environment-Geometrien in der normalisierten Data-Service-Schicht.
- Speicherstruktur (schematisch)
- project/storage/environment/copernicus/
- raw/
- dach/
- cds/
- ads/
- sync/
- nightly-plan.json
- nightly-state.json
- nightly.log
- nightly.lock
- Voraussetzungen für „Komplettbasis“
- CDS API-Token
- ERA5-Land Bedingungen akzeptiert
- ERA5 Single Levels Bedingungen akzeptiert
- ADS API-Token
- CAMS European air quality reanalyses Bedingungen akzeptiert
- CAMS European air quality forecasts Bedingungen akzeptiert
- Python erreichbar
- PHP proc_open verfügbar
- Wichtiger Hinweis
- Die Paketplanung, Resume-Logik, Dateivalidierung, PHP/Python-Syntax und
- DACH-Geometrie wurden offline geprüft. Ein echter CDS-/ADS-Produktionslauf
- benötigt die persönlichen Tokens und akzeptierten Dataset-Bedingungen und
- muss deshalb auf cw.test praktisch bestätigt werden. Der Worker ist so
- gebaut, dass ein deterministischer Quellenfehler die Quelle blockiert statt
- weiter Requests zu senden.
- Nächster Schritt
- Nach dem RAW-Archiv folgt der normalisierte Environment Data Service. Erst
- danach werden der geplante Analyse-Workspace, Gruppen, Karten, Tabellen,
- Diagramme, Marker T1/T2/T3, CW Formulas und Markdown-Datenwerte auf dieselbe
- Datenebene gesetzt.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha71
09.09.2026
Stable
Version 0.1.0-alpha71
Copernicus Full-Sync / manueller Monatsimport
Neu
- Neuer automatischer ERA5-Land Full-Sync für den vollständigen Zeitraum 1950 bis zum letzten abgeschlossenen Kalenderjahr.
- Der Full-Sync prüft Jahr und Monat, überspringt vorhandene Pakete und lädt ausschließlich fehlende NetCDF-Dateien.
- Nach 12/12 Monaten wird das jeweilige Jahr automatisch mit dem Climate Data Builder in die thematische Datenbasis übernommen.
- Full-Sync arbeitet mit kurzen AJAX-Ticks; Browserabbruch verliert weder fertige Monate noch gespeicherte CDS-Job-IDs.
- Fortsetzen setzt beim ersten noch nicht vollständig aufbereiteten Jahr fort.
- Gesamtfortschritt zeigt Monatspakete, aufbereitete Jahre, fehlende Pakete und das nächste Jahr.
- Manueller Import
- Zusätzlich zur Jahresauswahl kann jetzt ein einzelner Monat gezielt geladen werden.
- Fehlt der Monat, wird nur dieses Paket ergänzt.
- Ist der Monat bereits vorhanden, bleibt die alte Datei erhalten, bis der Ersatz vollständig heruntergeladen und geprüft wurde.
- Der vorhandene ↻-Neuimport pro Monat bleibt bestehen.
- Ein komplettes Jahr kann weiterhin gezielt neu importiert werden.
- Oberfläche
- Die prominente Prototyp-Kennzeichnung „ERSTER ECHTER IMPORT“ wurde aus dem Copernicus-Backend entfernt.
- Der alte Januar-2023-Testbereich wird nicht mehr als eigener Hauptbereich angezeigt; die technischen Legacy-Funktionen bleiben intern für Kompatibilität erhalten.
- Auch im Klima-Frontend wurden „Echter Testimport“, „Echter Copernicus-Test“, „Erster Import“ und entsprechende englische Test-Bezeichnungen entfernt bzw. neutralisiert.
- Die Oberfläche beschreibt ERA5-Land nun als produktive Copernicus-Datenbasis.
- Datenhaltung / Resume
- Full-Sync verwendet dieselbe resumierbare Jahres-/Monatsqueue wie der manuelle Import.
- Vorhandene, bereits registrierte Daten werden niemals durch den Full-Sync absichtlich neu angefordert.
- Noch nicht registrierte Rohdateien werden beim ersten Queue-Schritt validiert und erst danach als vorhanden gewertet.
- Das laufende Kalenderjahr bleibt weiterhin vom 12/12-Full-Sync ausgeschlossen und wird später als Teiljahresmodus ergänzt.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha70
09.09.2026
Stable
Version 0.1.0-alpha70
Data Store 2.0 / Copernicus Jahresarchiv
Neu
- Copernicus-Backend ist nicht mehr fest auf 2023 verdrahtet.
- Abgeschlossene Klima-Jahre von 1950 bis zum Vorjahr können frei ausgewählt und importiert werden.
- Jeder Jahresimport bleibt in 12 getrennte Monatsjobs zerlegt und ist vollständig resumierbar.
- Bestehende Monatsdateien werden beim Fortsetzen validiert und übersprungen.
- Ein einzelner vorhandener Monat kann über den neuen ↻-Schalter gezielt neu von Copernicus geladen werden.
- Beim gezielten Monats-Neuimport bleibt die bisherige Datei erhalten, bis der Ersatz vollständig heruntergeladen und validiert wurde.
- Ein komplettes Jahr kann weiterhin vollständig neu importiert werden, ebenfalls mit sicherem Ersatz pro Monat.
- Backend-Jahreskatalog zeigt vorhandene Jahre, 12/12-Status, Builder-Status und laufende Neuimporte.
- Thematische Datenbasis
- Climate Year Builder schreibt zusätzlich zur kompatiblen climate-YYYY.json jetzt thematisch getrennte Daten:
- project/storage/environment/data/copernicus/era5-land/temperature/yearly/YYYY.json
- project/storage/environment/data/copernicus/era5-land/precipitation/yearly/YYYY.json
- project/storage/environment/data/copernicus/era5-land/temperature/maps/YYYY.json
- manifest.json indexiert vorhandene Themen und Jahre.
- Original-NetCDF-Dateien bleiben getrennt im Copernicus-Importbereich erhalten.
- Löschen eines Jahres entfernt jetzt auch die dazugehörigen thematischen Ableitungen und aktualisiert den Manifest-Index.
- Sicherheit / Betrieb
- Laufende CDS-Jobs bleiben mit Job-ID gespeichert; Browser schließen oder PHP-Timeout zwingt keinen Neustart des Jahresimports.
- Der Monats-Neuimport verändert die alte Datei erst nach erfolgreicher Prüfung des neuen Downloads.
- Das laufende Kalenderjahr wird absichtlich noch nicht als 12/12-Jahr angeboten. Dafür ist ein eigener Teiljahresmodus vorgesehen.
Kompatibilität
- Bestehende 2023-Daten und climate-2023.json / climate-map-2023.json bleiben kompatibel.
- Alte 2023-Action-Namen werden im Backend weiterhin als Alias akzeptiert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha69
08.09.2026
Stable
Version 0.1.0-alpha69
Klimakarte · echtes Viewport-Fullscreen
- Der Fullscreen-Modus wird strukturell aus dem normalen Seitenlayout gelöst.
- Beim Maximieren wird das komplette Kartenpanel temporär direkt unter document.body verschoben.
- Dadurch können Website-Header, Environment-Fachbegriffe und Footer im Max-Modus keinen Platz mehr beanspruchen oder über der Karte erscheinen.
- Beim Schließen beziehungsweise mit ESC wird das Panel exakt an seine ursprüngliche DOM-Position zurückgesetzt.
- Fokus, Body-Scroll-Lock, MapLibre resize() und Multiply-Overlay bleiben erhalten.
- Dokumentation / Changelog
- Die Entwicklungschronik wurde gegen die vorhandenen Release-Notizen abgeglichen.
- Fehlende Meilensteine alpha39, alpha41 sowie alpha46 bis alpha68 wurden nachgetragen.
- alpha69 selbst ist als neuer Chronikpunkt dokumentiert.
- Dokumentationsstand und Current Release wurden auf 08.09.2026 / 0.1.0-alpha69 aktualisiert.
- Die Chronik bleibt vollständig sichtbar, wird im Frontend aber auf eine kompakte Maximalhöhe begrenzt und vertikal scrollbar.
- Scrollbereich ist per Tastatur fokussierbar; mobil gilt eine kleinere Maximalhöhe.
- Daten / Kompatibilität
- Keine Datenmigration.
- Kein neuer Copernicus-Download und keine Neuberechnung nötig.
- Vorhandene NetCDF-, climate-2023.json-, climate-map-2023.json-, EEA- und Settings-Daten bleiben unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha68
08.09.2026
Stable
Version 0.1.0-alpha68
Frontend-Sichtbarkeit / Settings
- Fix fuer den AN/AUS/AN-Zustand der sichtbaren Bereiche, insbesondere Naturgefahren.
- Environment-Seiten werden jetzt zentral mit no-store/no-cache ausgeliefert, weil Navigation, Projektkarten und Routenfreigaben direkt von settings.json abhaengen.
- Dadurch kann ein zuvor ausgeblendeter Bereich nach erneutem Aktivieren nicht mehr durch einen alten HTML-Browsercache verborgen bleiben.
- Der bereits in alpha67 fuer die Klimakarte eingefuehrte Cache-Schutz gilt nun fuer alle Environment-Routen.
- Settings-Konsistenz
- Frontend- und Sichtbarkeitsschalter werden vor dem Schreiben nach settings.json explizit auf bool normalisiert.
- Backend, Project-Shell, Projektkarten und Routen verwenden weiterhin dieselbe zentrale settings.json als einzige Wahrheit.
- Diagnose
- X-CW-Environment-Cache: no-store bleibt erhalten.
- Neu: X-CW-Environment-Settings-Revision zeigt den mtime-Zeitstempel der settings.json und erleichtert die Kontrolle, ob ein neuer Frontendstand ausgeliefert wird.
- Daten / Migration
- Keine Datenmigration und kein neuer EEA- oder Copernicus-Import erforderlich.
- Vorhandene Environment-Daten und Einstellungen bleiben erhalten.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha67
08.09.2026
Stable
Version 0.1.0-alpha67
Climate Map / Project Shell
- Die Environment-Project-Shell wird nicht mehr per großer PCRE-RegEx aus dem fertig gerenderten Dokument extrahiert.
- Stattdessen verwendet der Dokumentfilter feste START/END-Marker per strpos/substr.
- Dadurch bleibt die eigene CW-Environment-Navigation samt eigenem Footer auch auf /environment/klima/karte stabil, obwohl dort ein großer climate-map JSON-Block eingebettet ist.
- Fail-open auf den normalen teitges.de Header/Footer bei der Klimakarte wird damit vermieden.
- Cache / Climate Data Builder
- /environment/klima/karte wird als dynamische Datenseite explizit mit no-store/no-cache ausgeliefert.
- Nach "Jahreswerte + Temperaturkarte neu berechnen" darf der Browser nicht mehr den vorherigen Zustand "Kartendaten noch nicht aufgebaut" aus seinem HTML-Cache anzeigen.
- Zusätzlicher Diagnose-Header: X-CW-Environment-Cache: no-store.
- Routing
- Der statische Dokumentations-Routentyp wurde auf environment-docs vereinheitlicht.
Daten
- Keine Migration und kein neuer Copernicus-Import nötig.
- Vorhandene NetCDF-, climate-2023.json- und climate-map-2023.json-Dateien bleiben unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha66
08.09.2026
Stable
Version 0.1.0-alpha66
Copernicus Backend / Bedienbarkeit
- Alle Formulare im Copernicus-Backend senden jetzt explizit an die Environment-Copernicus-Adminroute statt implizit an die aktuelle Browser-URL.
- Auch die AJAX-Paketqueue verwendet diese explizite Formularroute; damit werden Router-/method_not_allowed-Probleme vermieden.
- Neuer Button „Verbindung testen“: prüft nur die bereits gespeicherten Zugangsdaten und den gespeicherten Python-Befehl, ohne Formularänderungen zu speichern.
- „Speichern & Verbindung testen“ bleibt für Ersteinrichtung und bewusste Konfigurationsänderungen erhalten.
- Der gespeicherte Verbindungstest ist nur noch Diagnose. Testimport und Jahresimport werden durch Token + bestätigte ERA5-Land-Bedingungen + proc_open freigegeben.
- Status „Importbereit“ zeigt jetzt eindeutig ja/nein und nennt fehlende harte Voraussetzungen.
- Testimport zeigt bei nur fehlendem Diagnose-Test „BEREIT · TEST OFFEN“ statt irreführend „ZUGANG FEHLT“.
- Speicher-/Aufräumaktionen verwenden ebenfalls die explizite Copernicus-Adminroute und bleiben unabhängig vom CDS-Verbindungsstatus bedienbar.
Kompatibilität
- Keine Datenmigration nötig.
- Token, Settings, vorhandene NetCDF-Dateien, Queue-Zustände und Klima-/Kartendaten bleiben erhalten.
- Kein neuer Copernicus-Download allein wegen des Updates erforderlich.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha65
08.09.2026
Stable
Version 0.1.0-alpha65
Copernicus · Speicher & Aufräumen
- Neuer Bereich „Copernicus-Download-Daten verwalten“ im Copernicus-Backend.
- Zeigt Gesamtgröße und Dateianzahl der lokalen Importdaten, Testimport, Klima-Jahr 2023 und temporäre Dateien.
- „Temporäre Dateien aufräumen“ entfernt unvollständige .part/.tmp/.download-Dateien.
- „Testimport löschen“ entfernt den Januar-2023-Testimport inklusive NetCDF und Preview.
- „Jahr 2023 komplett löschen“ entfernt alle 12 Monatsdownloads, Queue-/Manifestzustände, climate-2023.json und climate-map-2023.json. Danach beginnt der Jahresimport wieder bei 0/12.
- „Alle Importdaten löschen“ leert project/storage/environment/copernicus/imports/ vollständig.
- CDS API-Token (.cdsapirc), Python-/CDS-Einstellungen und Lizenzbestätigung werden bei keiner dieser Aufräumaktionen gelöscht.
- Laufende Jahres-Paket-Schritte werden über die Queue-Locks erkannt; gefährliches Löschen während eines aktiven Imports wird blockiert.
- Löschpfade werden auf den Copernicus-Projektspeicher begrenzt; unsichere Pfade werden abgewiesen.
Kompatibilität
- Keine Migration nötig.
- EEA-/Wasserstressdaten und allgemeine Environment-Settings bleiben unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha64
08.09.2026
Stable
Version 0.1.0-alpha64
Copernicus / Jahresimport – Backend-Recovery
- Jahresimport und Neuimport werden nicht mehr allein durch einen verlorenen/alten last_test_ok-Status blockiert.
- Harte Voraussetzungen für die Paketqueue sind jetzt: gespeicherter CDS-Token, bestätigte ERA5-Land-Bedingungen und verfügbares PHP proc_open.
- Der reale CDS-Zugang wird beim nächsten Submit/Poll live geprüft; Authentifizierungsfehler erscheinen direkt als Paketfehler.
- Wenn nur der gespeicherte Verbindungstest-Status fehlt, zeigt das Backend einen Hinweis, lässt „Jahr 2023 importieren/fortsetzen“ aber bedienbar.
- Fehlen Token, Dataset-Freigabe oder proc_open, nennt der Jahresbereich den konkreten Grund für die Sperre.
- „Import pausieren“ ist initial wieder wirklich verborgen. Ein globaler CW-Button-Style konnte das HTML-hidden-Attribut optisch übersteuern.
- Der Pause-Button wird zusätzlich per CSS und JS zustandssicher ein-/ausgeblendet.
- Daten / Kompatibilität
- Keine Datenmigration.
- Vorhandene NetCDF-Monatsdateien, Queue-State, Climate-Year-JSON und Karten-JSON bleiben erhalten.
- Bei einem Queue-Stand 0/12 kann der nächste Tick vorhandene Monatsdateien wieder erkennen, sofern kein expliziter vollständiger Neuimport aktiv ist.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha63
08.09.2026
Stable
Version 0.1.0-alpha63
Klimakarte / Shell
- Bugfix: /environment/klima/karte erhält jetzt zuverlässig den eigenen CW-Environment-Header und -Footer.
- Die Project-Shell-Erkennung stützt sich zusätzlich auf den eindeutigen Environment-Content-Marker und rekonstruiert den Route-Key bei Bedarf aus der aktuellen URL.
- Karten-Vollbild
- Neuer Button „Maximieren“ öffnet Karte, Toolbar und Legende als Fullsize-Overlay.
- „Schließen“ und Escape verlassen den Vollbildmodus.
- MapLibre wird beim Öffnen/Schließen sauber resize()'d.
- Darstellung
- Neuer Modus „Normal / Multiplizieren“.
- Normal nutzt die bisherige MapLibre-Füllung mit Transparenz.
- Multiplizieren rendert die ERA5-Land-Zellen auf eine synchronisierte Overlay-Canvas mit CSS mix-blend-mode:multiply.
- Transparenzregler bleibt in beiden Modi wirksam.
- OSM-Basiskarte wird im Multiply-Modus etwas kräftiger dargestellt.
- Hover / Ortsbezug
- Mouseover zeigt jetzt zusätzlich „Nähe <Referenzort> · ca. <km>“.
- Zellzentrum mit Breiten-/Längengrad wird mit ausgegeben.
- Lokale Referenzdatei mit 128 deutschen Städten und Regionalorten; keine externen Reverse-Geocoding-Aufrufe beim Hover.
- Methodik-Hinweis: Ortsname dient nur der räumlichen Orientierung; ERA5-Land ist keine Stationsmessung.
Kompatibilität
- Keine Datenmigration.
- Kein erneuter Copernicus-Import nötig.
- Vorhandene climate-map-2023.json bleibt unverändert nutzbar.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha62
08.09.2026
Stable
Version 0.1.0-alpha62
Frontend Header & Navigation
- CW-Environment-Branding im Header deutlich größer und präsenter.
- Hauptnavigation als größere Button/Pill-Navigation mit klaren Hover- und Aktivzuständen.
- Wasserstress und Klima & Wetter zeigen ihre Modul-Icons direkt im Menü.
- Naturgefahren ist strukturell bereits als eigener, über Settings schaltbarer Menüpunkt eingeplant und trägt sichtbar den Status „Geplant“.
- Responsive Umschaltung auf das Mobile-Menü erfolgt früher, damit der zusätzliche Fachbereich nicht zu einem überfüllten Desktop-Header führt.
- Naturgefahren Foundation
- Neue öffentliche Vorschau-Route /environment/naturgefahren (bzw. unter der konfigurierten Basisroute).
- Route wird vollständig über Settings > Naturgefahren ein-/ausgeblendet.
- Vorschauseite dokumentiert geplante Bereiche Brände, Überschwemmungen, Stürme/Orkane und Erdbeben.
- Geplante Provider GDACS, Copernicus EMS und USGS werden transparent als Planungsstand genannt; es werden noch keine Live-Daten vorgetäuscht.
- Startseiten-Karte Naturgefahren ist nun klickbar und führt zur Vorschauseite.
Technik
- Neue Route environment-hazards in Routing, Sprachumschaltung, Social-Meta und Route-Keys integriert.
- CW_ENVIRONMENT_VERSION auf 0.1.0-alpha62 synchronisiert (war im alpha61-Source intern noch auf alpha60 stehen geblieben).
- Keine Datenmigration und kein Copernicus-Neuimport nötig.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha61
08.09.2026
Stable
Version 0.1.0-alpha61
Frontend / Passwortschutz
- Frontend-Passwortfeld gegen Browser-/Password-Manager-Zustände gehärtet.
- Das Zugangsformular liefert serverseitig immer ein leeres Feld und deaktiviert Autofill-Hinweise soweit browserseitig möglich.
- Neuer neutraler Feldname `cw_environment_access_code`; alte gecachte Formulare mit `cw_environment_password` bleiben kompatibel.
- Eigenes `environment-access.js` entfernt nachträglich gesetzte disabled/readonly/inert-Zustände und hält das Feld fokussier- und editierbar.
- CSS erzwingt Pointer-, Cursor-, Caret- und Texteingabe unabhängig vom installierten Frontend-Theme.
- Formular besitzt jetzt ein explizites Action-Ziel auf die aktuell aufgerufene Environment-Route.
- Frontend / Naturgefahren
- Naturgefahren-Icon wird optisch auf dieselbe sichtbare Größe wie Wasser, Klima und Methodik skaliert.
- Die transparente Außenfläche des gelieferten Icons bleibt erhalten; nur die Darstellung innerhalb der Startseitenkarte wird korrigiert.
Kompatibilität
- Keine Datenmigration nötig.
- Gespeicherter Passwort-Hash, EEA-, Copernicus-, Klima- und Kartendaten bleiben unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha60
08.09.2026
Stable
Version 0.1.0-alpha60
Settings / Passwortschutz
- Passwortfeld im Environment-Backend bleibt jetzt immer aktiv und editierbar.
- Ein bereits gespeichertes Passwort wird weiterhin niemals in das Feld zurückgeladen.
- Zum Ändern einfach ein neues Passwort mit mindestens 6 Zeichen eingeben.
- Neue Option „Gespeichertes Passwort löschen“ entfernt den gespeicherten Hash gezielt.
- Löschen ist nur zulässig, wenn der Zugriff auf „Öffentlich“ steht oder gleichzeitig ein neues Passwort gesetzt wird.
- Formularziel ist nun explizit die Environment-Settings-Route; dadurch bleibt der POST eindeutig auf der Modulseite.
- Kleine JS-Härtung verhindert, dass Browser-/UI-Zustände das Passwortfeld versehentlich disabled/readOnly lassen.
Kompatibilität
- Keine Datenmigration nötig.
- Bestehende EEA-, Copernicus-, Klima- und Kartendaten bleiben unverändert.
- Bestehender Passwort-Hash bleibt bei normalem Speichern unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha59
08.09.2026
Stable
Version 0.1.0-alpha59
Backend
- Backend-Navigation konsequent nach Datenprovider neu geordnet:
- Übersicht · Settings · EEA · Eurostat · Copernicus · Naturgefahren · Tracking · Cookies & Datenschutz.
- Der bisherige allgemeine Tab „Daten“ heißt jetzt „EEA“ und bündelt WEI+, Länderstruktur, Datenqualität und Export.
- Der bisherige Tab „Klima & Copernicus“ heißt jetzt kompakt „Copernicus“.
- Neue Provider-Foundation-Seiten für Eurostat und Naturgefahren.
- Settings
- Neuer zentraler Backend-Bereich „Settings“.
- Frontend kann vollständig aktiviert/deaktiviert werden, ohne Daten zu löschen.
- Basisroute frei konfigurierbar; Unterrouten folgen automatisch.
- Sichtbarkeit separat steuerbar für Projekt, EEA, Eurostat, Copernicus, Naturgefahren, Methodik und Dokumentation.
- Startseiten-Bereichskarten, Datenquellenkarten, Hauptnavigation und Footer reagieren auf die Einstellungen.
- Zugriff
- Optionaler globaler Passwortschutz für alle Environment-Frontend-Routen.
- Passwort wird mit PHP password_hash gespeichert und nie im Klartext zurückgegeben.
- Authentifizierung gilt für die gesamte Environment-Sitzung und wird bei Passwortwechsel automatisch ungültig.
- Passwortgeschützte Bereiche erhalten automatisch noindex,nofollow.
- Route
- Standard bleibt /environment; bestehende Installationen ändern sich ohne gespeicherte Settings nicht.
- Beispiele für alternative Basisrouten: /umwelt oder /forschung/umwelt.
- Canonical-, Sprach-, Karten-, Statistik-, Klima- und Dokumentationslinks verwenden die zentrale Basisroute.
Daten
- Keine EEA-/Copernicus-Daten verändert.
- Kein neuer Datenimport erforderlich.
- project/storage/environment/ bleibt updategeschützt und enthält künftig settings.json.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha58
08.09.2026
Stable
Version 0.1.0-alpha58
Neu
- Klima & Wetter erhält auf `/environment/klima` einen eigenen großformatigen Einstieg im selben visuellen Grundlayout wie die Wasserstress-Einleitung.
- Das neue Klima-&-Wetter-Panoramabild wird als Teaser direkt am Seitenanfang eingesetzt.
- Direkte Einstiegsaktionen führen zum Klima-Dashboard, zur Temperaturkarte und zur Methodik.
- Kompakter ERA5-Land-Datenstatus ergänzt den Einstieg.
Geändert
- Das Naturgefahren-Symbol auf der Projektstartseite wurde durch die neue transparente Variante ohne sichtbaren weißen Bildhintergrund ersetzt.
- Der Klima-Bereich auf der Startseite wird nicht mehr als reine „Foundation“ geführt, sondern als verfügbarer Bereich mit echten Monatsdaten 2023.
- Auch die Copernicus-Quellenkarte zeigt ERA5-Land nun als aktive Datenquelle mit 12 Monaten 2023.
- Deutsche und englische Frontendansicht wurden gemeinsam aktualisiert.
- Das Klima-Panoramabild wird zusätzlich als Open-Graph-Bild der Klima-Route verwendet.
Daten
- Kein neuer Copernicus-Import notwendig.
- Vorhandene NetCDF-, Jahres- und Kartendaten bleiben unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha57
08.09.2026
Stable
Version 0.1.0-alpha57
Neu
- Startseite um den geplanten Bereich „Naturgefahren & Extremereignisse“ erweitert.
- Neues Naturgefahren-Symbol für Brände, Überschwemmungen, Stürme/Orkane und Erdbeben integriert.
- Geplante Datenquellen werden bereits transparent benannt: GDACS, Copernicus Emergency Management Service und USGS.
Geändert
- Die Dokumentations-Karte wurde aus „Bereiche entdecken“ entfernt, weil die Dokumentation bereits dauerhaft in der oberen Projektnavigation erreichbar ist.
- Der freie vierte Startseitenplatz wird damit für einen echten fachlichen Themenbereich genutzt.
- Deutsche und englische Projektstartseite wurden gemeinsam aktualisiert.
Hinweis
- Naturgefahren ist in alpha57 bewusst nur als geplanter Bereich gekennzeichnet und noch nicht verlinkt. Dadurch entstehen keine toten oder unfertigen öffentlichen Routen.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha56
07.09.2026
Stable
Version 0.1.0-alpha56
Neu
- Neue öffentliche Route /environment/klima/karte
- Interaktive ERA5-Land-Temperaturkarte 2023 auf OpenStreetMap-Basis (MapLibre).
- Monatsauswahl Januar bis Dezember.
- 0,1°-Raster für alle Rasterzellmittelpunkte innerhalb der Deutschlandmaske.
- Feste Temperaturskala von -15 bis 25+ °C für direkte Monatsvergleiche.
- Hover zeigt Monat, Temperatur und Rasterauflösung.
- Overlay-Transparenz, Rasterlinien an/aus und Deutschlandansicht zurücksetzen.
- Natural-Earth-Landesgrenze wird als Referenzlinie über dem Raster gezeigt.
- Datenpipeline
- Climate Data Builder 3.1 erzeugt zusätzlich climate-map-2023.json.
- Kartendaten werden kompakt gespeichert: ein gemeinsamer Indexsatz für die Deutschlandmaske plus zwölf Temperaturarrays.
- Kein neuer Copernicus-Download erforderlich: bestehende 12 NetCDF-Monatsdateien werden erneut lokal aufbereitet.
- Original-NetCDF-Dateien bleiben unverändert.
Backend
- Der Button heißt jetzt „Jahreswerte + Temperaturkarte neu berechnen“.
- Status zeigt, ob die Kartendaten bereits bereit sind.
- Direkter Link zur Klimakarte, sobald climate-map-2023.json vorhanden ist.
Methodik
- Temperatur: t2m in Kelvin -> °C (K - 273,15).
- Kartenzellen werden über den Mittelpunkt der Deutschlandmaske ausgewählt.
- Grenzzellen können optisch geringfügig über die generalisierte Natural-Earth-Grenze hinausragen; die Karte ist eine Rastervisualisierung und keine Stationskarte.
Hinweis
- Alpha56 enthält bewusst zunächst nur Temperatur. Niederschlag und eine weich geglättete Heatmap folgen als eigener Schritt.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha55
07.09.2026
Stable
Version 0.1.0-alpha55
Neu
- Klima-Dashboard 2023 im Frontend deutlich erweitert.
- Vier kompakte Jahres-Insights: wärmster, kältester, nassester und trockenster Monat.
- Temperaturspanne des Jahres wird direkt aus den Monatsmitteln berechnet.
- Temperatur-Monatsverlauf zeigt das tagegewichtete Jahresmittel als gestrichelte Referenzlinie.
- Niederschlagsdiagramm zeigt zusätzlich das mittlere Monatsniveau als Referenz.
- Q1–Q4 werden nicht nur als Zahlenkarten, sondern als direkter visueller Saisonvergleich dargestellt.
- „2023 auf einen Blick“ fasst den Jahresgang knapp zusammen.
- Wissenschaftliche Darstellung
- Die Interpretation macht ausdrücklich klar: Aus einem einzelnen Jahr wird noch kein Klimatrend und keine Anomalie abgeleitet.
- Aussagen wie „ungewöhnlich warm/trocken“ bleiben einer späteren mehrjährigen Referenzperiode vorbehalten.
- Deutschlandwerte bleiben CW-Rastermittel aus Länderpolygon + sphärischer Flächengewichtung; keine amtliche nationale Klimastatistik.
- DE/EN
- Deutsche und englische Klimaseite auf denselben Funktionsstand gebracht.
- Die englische Seite berücksichtigt nun ebenfalls Deutschlandpolygon, Flächengewichtung, Monatscharts und Jahres-Insights.
- Daten / Import
- Keine neuen Copernicus-Downloads erforderlich.
- Vorhandenes climate-2023.json aus alpha54 wird direkt verwendet.
- Queue, Original-NetCDF-Dateien, SHA256 und Climate Data Builder bleiben unverändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha54
07.09.2026
Stable
Version 0.1.0-alpha54
Neu
- Deutschland-Länderpolygonmaske für ERA5-Land auf Basis Natural Earth Admin 0 Countries (1:110m, Public Domain).
- Reine Python-Standardbibliothek: kein Shapely, GeoPandas oder pip auf dem Zielserver nötig.
- Rasterzellmittelpunkte innerhalb Deutschlands werden automatisch ermittelt.
- Sphärische Flächengewichtung der 0,1°-Rasterzellen nach geographischer Breite.
- Monats-, Quartals- und Jahreswerte werden als flächengewichtete CW-Deutschland-Rasterwerte berechnet.
- Ungewichtete Vergleichswerte und Gewichtungsdifferenzen bleiben im JSON für Audit/Qualitätsprüfung erhalten.
Frontend
- Klima-Jahr 2023 heißt nun „Deutschland“ statt „Deutschland-Testgebiet“.
- Datenbasis zeigt Anzahl der Rasterzellmittelpunkte innerhalb der Deutschlandmaske.
- Methodik weist transparent darauf hin, dass Natural Earth generalisiert ist und Randzellen noch per Mittelpunkt statt anteiliger Polygonverschneidung behandelt werden.
Backend
- „Deutschlandmaske anwenden / Jahreswerte neu berechnen“ baut vorhandene 12 Monatsdateien ohne erneuten Copernicus-Download neu auf.
- Climate Data Builder 3.0 dokumentiert Polygon, Gewichtung und Qualitätsstatus.
- Datenintegrität
- Original-NetCDF-Dateien bleiben unverändert.
- Natural-Earth-Grenze ist im Modul versioniert und damit reproduzierbar.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha53
07.09.2026
Stable
Version 0.1.0-alpha53
07.09.2026
Neu
- Backend-Button „Jahr 2023 neu importieren“ für einen vollständigen erneuten ERA5-Land-Abruf Januar–Dezember.
- Neuimport läuft weiterhin über die paketbasierte alpha52-Queue und ist pausierbar/resumierbar.
- Fortschritt beginnt bewusst wieder bei 0/12; jeder Monat wird erneut als eigener CDS-Auftrag angefordert.
- Datensicherheit
- Vorhandene Monats-NetCDF-Dateien werden beim Start des Neuimports nicht gelöscht.
- Der neue Download wird zunächst als .part gespeichert und validiert.
- Erst nach erfolgreicher NetCDF-Prüfung ersetzt CW die bisherige Monatsdatei atomar.
- Abbruch, Browser-Schließen oder ein CDS-Fehler lassen die alten Monatsdateien daher als Fallback bestehen.
- Frontend / Builder
- Der bisherige climate-2023.json-Stand darf während des Reimports weiter im Frontend sichtbar bleiben.
- Die Queue kennzeichnet diesen Stand mit needs_rebuild als veraltet.
- Nach 12/12 frisch geladenen Monatspaketen startet Climate Data Builder 2.0 erneut.
- Erst nach erfolgreichem Builder-Lauf wird needs_rebuild wieder entfernt und Queue/Manifest gelten als synchron.
Technik
- copernicus-year-job.py erhält den Queue-Modus restart.
- refresh_pending verhindert, dass vorhandene Altdateien während eines Neuimports fälschlich als bereits erledigte neue Pakete gezählt werden.
- Status redownloaded kennzeichnet erfolgreich erneut geladene Monate.
- Keine Änderung am CDS-Token, an den Quellvariablen oder an der wissenschaftlichen Aufbereitung.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha52
07.09.2026
Stable
Version 0.1.0-alpha52
07.09.2026
Neu
- Paketbasierte ERA5-Land-Importqueue für das Klima-Jahr 2023.
- Ein Monat = ein CDS-Datenpaket mit 2-m-Temperatur und Gesamtniederschlag.
- Live-Anzeige von aktuellem Paket, Queue-Phase, CDS-Remote-Status und gespeicherter Job-ID.
- Import kann sofort pausiert werden; ein bereits eingereichter CDS-Auftrag bleibt bei Copernicus erhalten.
- Timeout-Schutz
- Kein PHP-/AJAX-Request wartet mehr in einer Polling-Schleife auf die Fertigstellung eines CDS-Jobs.
- Jeder Request führt nur einen kurzen Zustandswechsel aus: Submit, Status, Ergebnis, Download oder Abschluss.
- Browserseitiges Polling startet den nächsten kurzen Schritt nach wenigen Sekunden.
- Queue-Zustand wird dauerhaft als year-2023-queue.json gespeichert.
- Nach Browser-Neuladen oder Pause wird derselbe gespeicherte Job weiter geprüft; keine unnötigen Doppelaufträge.
Kompatibilität
- Bereits vorhandene Monatsdateien aus alpha50/alpha51 werden erkannt und übernommen.
- year-2023-import.json wird weiterhin synchron geführt, damit Climate Data Builder 2.0 und bestehende Auswertungen kompatibel bleiben.
- Der erfolgreiche Januar-Testimport kann weiterhin ohne neuen CDS-Download übernommen werden.
- Builder
- Erst nach 12/12 validierten Monatspaketen startet Climate Data Builder 2.0 in einem separaten kurzen Backend-Request.
- Original-NetCDF-Dateien bleiben unverändert.
Technik
- Neuer dependency-freier Runner tools/copernicus-year-job.py.
- Serverseitiger Queue-Lock verhindert parallele Ticks desselben Jahres.
- Der CDS-Client bleibt vollständig pip-frei.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha51
07.09.2026
Stable
Version 0.1.0-alpha51
07.09.2026
Neu
- Sichtbarer Live-Fortschritt für den ERA5-Land-Jahresimport 2023.
- Fortschrittsbalken, Prozentwert, aktueller Monat, Laufzeit und Status aller zwölf Monate.
- Jahresimport wird browserseitig Monat für Monat ausgeführt statt in einem einzigen langen Request.
- Button „Nach diesem Monat pausieren“; Fortsetzen setzt beim nächsten fehlenden Monat weiter.
Technik
- copernicus-year-import.py unterstützt --max-new-months.
- Neuer PHP-Step-Runner importiert genau einen fehlenden Monat pro Aufruf.
- PHP-Session wird vor dem CDS-Auftrag freigegeben.
- Lock-Datei schützt vor parallelen Monatsimporten desselben Jahres.
- Bereits von alpha50 geladene Monate werden erkannt und ohne erneuten Download übernommen.
- Bei 12/12 wird Climate Data Builder 2.0 automatisch gestartet.
- Warum
- alpha50 war technisch resumierbar, hielt den Browser aber während aller zwölf CDS-Aufträge in einem langen POST fest. Dadurch war im Backend nicht sichtbar, ob und wie weit der Import arbeitet. alpha51 macht jeden Monatsabschluss unmittelbar sichtbar.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha50
07.09.2026
Stable
Version 0.1.0-alpha50
Datum: 07.09.2026
Neu
- Climate Data Builder 2.0 mit vollständigem Klima-Jahr 2023.
- Resumierbarer ERA5-Land-Jahresimport für Januar bis Dezember.
- Pro Monat ein separater CDS-Auftrag und eine unveränderte NetCDF-Datei.
- Der erfolgreiche Januar-Testimport kann automatisch als Januar-Datei übernommen werden.
- Bei Abbruch bleiben fertige Monate erhalten; der nächste Start setzt bei den fehlenden Monaten fort.
- Aufbereitung
- 12 Monatswerte für 2-m-Temperatur und Gesamtniederschlag.
- Temperatur: K → °C.
- Quartal/Jahr Temperatur: tagegewichtetes Mittel der Monatsmittel.
- Niederschlag: m/Tag × 1000 × Monatstage → mm/Monat.
- Q1–Q4 und Jahr: Summe der Monatsniederschläge.
- SHA-256 und Quelldatei bleiben pro Monat im Jahresdatensatz nachvollziehbar.
Backend
- Neuer Bereich „Klima-Jahr 2023 · 12 Monate“.
- Status 0/12 bis 12/12, Monatsfortschritt und Fortsetzen nach Abbruch.
- Jahreswerte können ohne erneuten Download neu berechnet werden.
Frontend
- Echte Jahreskennzahlen für 2023.
- Temperatur-Monatsverlauf.
- Niederschlags-Monatsbalken.
- Q1–Q4-Kennzahlen.
- Monatstabelle mit Temperatur, Niederschlag, gültigen Landzellen und Qualitätsstatus.
- DE/EN-Grunddarstellung.
- Methodische Grenze
- Weiterhin ungewichtetes Mittel der gültigen Rasterzellen innerhalb der Deutschland-Test-Bounding-Box.
- Noch kein Länderpolygon und noch keine flächengewichtete Deutschland-Aggregation.
- Technik / Sicherheit
- Keine pip-Abhängigkeit.
- Persönlicher CDS-Token bleibt außerhalb des Moduls im Projekt-Speicher.
- Original-NetCDF-Dateien werden nicht verändert.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha49
07.09.2026
Stable
Version 0.1.0-alpha49
Datum: 07.09.2026
Behoben
- Climate Data Builder erkennt die echte CDS-Testdatei mit 80 × 101 = 8.080 Rasterzellen.
- alpha48 hatte 8.000 Zellen fest vorausgesetzt und deshalb die beiden 32.320-Byte-Deflate-Blöcke abgewiesen.
- Die Rastergröße wird im pip-freien HDF5-Fallback nun aus passenden t2m-/tp-Chunks ermittelt.
- Ältere manuelle 80×100-Testdateien bleiben kompatibel.
- Geprüft mit der echten Serverdatei
- era5-land-de-2023-01.nc
- NetCDF4/HDF5
- t2m: 8.080 Zellen, 7.035 gültige Werte
- tp: 8.080 Zellen, 7.035 gültige Werte
- Temperatur-Mittel: ca. 3,03 °C
- Niederschlag-Mittel Januar: ca. 41,89 mm
- Darstellung
- Backend zeigt 80 × 101 / 8.080 Rasterpunkte.
- Frontend übernimmt Rastergröße und gültige Zellen aus climate-preview.json.
Sicherheit
- Original-NetCDF bleibt unverändert.
- Keine pip-Abhängigkeit.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha48
07.09.2026
Stable
Version 0.1.0-alpha48
ROBUSTER CLIMATE DATA BUILDER
Behoben
- Der alpha47-Testbuilder konnte auf dem Live-Server eine gültige CDS-NetCDF4-Datei nicht numerisch lesen, wenn deren HDF5-Chunklayout vom lokalen Testfile abwich.
- Der dadurch ausgelöste Linux-/Shared-Hosting-Traceback konnte zusätzlich eine irreführende apt-Warnung anzeigen.
Neu / verbessert
- optionaler Reader über bereits vorhandenes netCDF4 oder h5py (keine Installation durch CW nötig)
- pip-freier Standard-Fallback erkennt Deflate-Chunks mit und ohne HDF5-Shuffle
- float32 und float64, little/big endian sowie mehrere kleinere Chunks werden berücksichtigt
- Fehlerausgabe wird im Python-Tool abgefangen und kompakt an CW zurückgegeben
- vor Neuberechnung wird eine eventuell alte climate-preview.json entfernt
- bei unbekannter HDF5-Variante nennt die Diagnose die erkannten entpackten Blockgrößen
Unverändert
- Original-NetCDF bleibt unverändert
- Testumfang bleibt Januar 2023 / Deutschland / t2m + tp
- Temperatur: K -> °C
- Niederschlag: m/Tag x 1000 x Monatstage -> mm/Monat
- Frontendwerte bleiben ein ungewichtetes Rastermittel des Test-Bounding-Boxes
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha47
07.09.2026
Stable
Version 0.1.0-alpha47
Climate Data Builder · erste echte Copernicus-Werte im Frontend
Neu
- pip-freier Climate Data Builder für den festen ERA5-Land-Testimport
- vorhandene alpha46-Testdatei kann ohne neuen Download lokal aufbereitet werden
- neue Testimporte starten die numerische Aufbereitung automatisch
- Frontend `/environment/klima` zeigt erstmals echte ERA5-Land-Testwerte
- Temperatur: Min, Rastermittel, Median, Max in °C
- Niederschlag: Min, Rastermittel, Median, Max in mm/Monat
- gültige Land-Rasterzellen und Testqualität sichtbar
Methodik
- t2m: °C = K - 273.15
- tp beim monatlich gemittelten ERA5-Land-Produkt: mm/Monat = m/Tag × 1000 × Monatstage
- Meeres-/NaN-Zellen werden ausgeschlossen
- Mittelwert ist derzeit bewusst ein ungewichtetes Rastermittel der Deutschland-Bounding-Box
- noch kein flächengewichtetes Deutschlandmittel und noch keine Länderpolygon-Aggregation
- Datenhaltung
- Originaldatei bleibt unverändert unter `project/storage/environment/copernicus/imports/test-de-2023-01/era5-land-de-2023-01.nc`
- abgeleitete Vorschau wird getrennt als `climate-preview.json` gespeichert
- SHA-256 der Quelldatei wird im Preview-Manifest dokumentiert
Backend
- neuer Button `Klimawerte aufbereiten` für bereits vorhandene alpha46-Testimporte
- nach erfolgreicher Aufbereitung zeigt das Backend Temperatur, Niederschlag, gültige Rasterzellen und Plausibilitätsstatus
Frontend
- neuer Abschnitt `Echter Copernicus-Test · Januar 2023 · Deutschland`
- sichtbare Kennzahlen für Temperatur, Niederschlag, Rasterbasis und Qualitätsstatus
- klare Kennzeichnung als technischer Test und nicht als fertiger nationaler Klimadatensatz
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha46
07.09.2026
Stable
Version 0.1.0-alpha46
ERA5-Land Testimport im Backend
Neu
- echter Button „Testimport durchführen“ unter Klima & Copernicus
- reproduzierbarer Prüflauf für Deutschland, Januar 2023
- CDS-Dataset: reanalysis-era5-land-monthly-means
- Variablen: 2m_temperature (t2m) und total_precipitation (tp)
- Request: monthly_averaged_reanalysis, 00:00, NetCDF, unarchived
- Testgebiet: N 55,1 / W 5,5 / S 47,2 / E 15,5
- Originaldatei wird projektbezogen unter project/storage/environment/copernicus/imports/test-de-2023-01/ abgelegt
- separates test-import.json dokumentiert Request, Ergebnis, Dauer, Dateigröße und SHA-256
- Prüfung
- NetCDF4/HDF5- bzw. NetCDF-Signatur wird ohne Zusatzpakete geprüft
- erwartete Variablenlabels t2m und tp werden in der Quelldatei verifiziert
- latitude und longitude werden geprüft
- SHA-256 der Originaldatei wird erzeugt
- Backend zeigt Datei, Dauer, ungefähre Rastergröße und Prüfergebnis kompakt an
Architektur
- neuer Helper tools/copernicus-test-import.py
- verwendet weiterhin CW Embedded CDS Client 1.0.0
- keine pip-Installation erforderlich
- API-Token bleibt außerhalb des Moduls in project/storage/environment/copernicus/.cdsapirc
- Testimport ist erst nach gespeichertem Token, bestätigten ERA5-Land-Bedingungen und erfolgreichem Auth-Test möglich
- CDS-Warteschlange wird bis maximal 15 Minuten im Backend-Aufruf abgewartet; der Python-Job selbst ist für den kleinen Prüflauf auf 30 Minuten begrenzt
- Bewusst noch nicht enthalten
- numerische NetCDF-Auswertung für Min/Mittel/Max
- Umrechnung t2m von Kelvin nach °C im Datenbuilder
- Umrechnung tp in mm/Monat
- Q1–Q4- und Jahresaggregation
- vollständiger Europa-Import 1950 bis heute
Hinweis
- Alpha46 beweist die komplette technische Kette CW -> CDS Auftrag -> Download -> lokale Originaldatei -> Strukturprüfung. Wissenschaftliche Transformationen werden erst im nächsten Climate Data Builder freigeschaltet, damit Quelldaten und Ableitungen sauber getrennt bleiben.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha45
06.09.2026
Stable
Version 0.1.0-alpha45
Embedded Copernicus CDS Client
Neu
- CDS-Zugriff benötigt keine manuelle pip-Installation mehr
- neuer mitgelieferter CW Embedded CDS Client 1.0.0 unter tools/cw_cds_client.py
- Client arbeitet ausschließlich mit der Python-Standardbibliothek
- Authentifizierung nutzt den offiziellen CDS Profile-API-Endpunkt
- ERA5-Land Download-Helper verwendet denselben eingebetteten Client
- Job-Workflow für CDS Requests vorbereitet: Submit -> Status prüfen -> Ergebnis laden
- Token wird weiterhin ausschließlich aus project/storage/environment/copernicus/.cdsapirc gelesen
Verbessert
- Backend zeigt jetzt klar „Keine pip-Installation nötig“
- frühere Fehlermeldung „Python-Client fehlt“ entfällt
- externe Pakete cdsapi und ecmwf-datastores-client sind keine Laufzeitvoraussetzung mehr
- Verbindungstest meldet den verwendeten „CW Embedded CDS Client 1.0.0“
- Data Builder bleibt reproduzierbar, weil Client-Code gemeinsam mit dem Modul versioniert wird
Sicherheit
- API-Token wird über PRIVATE-TOKEN nur an den konfigurierten CDS API-Host gesendet
- signierte Download-URLs anderer Hosts erhalten den persönlichen Token nicht
- Fehlermeldungen werden weiterhin im PHP-Layer vom Token bereinigt
- CDS API-URL bleibt auf den offiziellen Climate Data Store begrenzt
- Systemanforderungen
- CW >= 3.0.0-beta9
- PHP >= 8.3
- Python verfügbar; keine zusätzlichen Python-Pakete erforderlich
- Noch nicht enthalten
- komfortabler Testimport-Button im Backend
- NetCDF-Auswertung und räumliche Aggregation
- vollständiger Europa-Import 1950 bis heute
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha44
06.09.2026
Stable
Version 0.1.0-alpha44
Copernicus CDS Backend Connection
Neu
- CDS API-Token kann unter „Klima & Copernicus“ im Backend hinterlegt werden
- Token liegt projektbezogen außerhalb des Modulcodes unter project/storage/environment/copernicus/.cdsapirc
- gespeicherte Tokens werden im Backend nur maskiert angezeigt
- zusätzlicher Web-Zugriffsschutz und restriktive Dateirechte für den Credentials-Ordner
- geführte Einrichtung: CDS-Profil -> ERA5-Land-Nutzungsbedingungen -> Speichern & Testen
- expliziter Authentifizierungstest über ecmwf-datastores-client check_authentication()
- Python-Befehl im Backend konfigurierbar (Windows/Linux)
- letzter Testzeitpunkt, verwendeter Client, Statuscode und Meldung sichtbar
- Token kann kontrolliert wieder gelöscht werden
Verbessert
- ERA5-Land Download-Helper akzeptiert --credentials und kann dieselbe projektbezogene .cdsapirc verwenden
- Data-Builder-Dokumentation auf den neuen Backend-Workflow aktualisiert
Sicherheit
- Personal Access Token wird nie vollständig zurück angezeigt
- Token wird nicht in module.json, Release Notes oder Modulrelease gespeichert
- CDS API-URL ist fest auf den offiziellen Climate Data Store begrenzt
- Verbindungstest entfernt Token vorsorglich aus Fehlermeldungen
- Noch nicht enthalten
- vollständiger ERA5-Land Europa-Import
- NetCDF-Verarbeitung und räumliche Aggregation
- Veröffentlichung echter Klima-Werte im Frontend
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha43
06.09.2026
Stable
Version 0.1.0-alpha43
Education Glossary Expansion
Neu
- Fachbegriffsbereich um sechs Begriffe erweitert:
- Perzentil
- Wasserstress
- Datenlücke
- Quellkonflikt
- Streuung
- Schwellenwert
- Footer-Hinweis verständlicher formuliert: „Begriff anklicken – kurz und verständlich erklärt“
- automatische Glossary-Erkennung kann die neuen Begriffe auch in Fließtexten erläutern
- Zusammenspiel
- die neuen Definitionen werden mit CW Glossary 0.1.0-alpha3 bereitgestellt
- Environment bleibt weiterhin funktionsfähig, wenn CW Glossary nicht installiert ist
Unverändert
- EEA-WEI+-Daten und Berechnungslogik
- Trend-Tooltip, Layer-Schalter und Skalenlogik
- Wasserstress-Einleitung und Klima-Foundation
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha42
06.09.2026
Stable
Version 0.1.0-alpha42
Trend Hover Details
Neu / verbessert
- eigener Hover-Tooltip über der Trendgrafik
- Mausbewegung wählt automatisch den nächstgelegenen echten Quartalspunkt
- Anzeige von Jahr + Quartal, Median/WEI+, Mittelwert, 25.–75. Perzentil, Datenbasis und Datenqualität
- sichtbarer Zeitraum-Mittelwert und Wert der Trendlinie werden ebenfalls eingeblendet
- bei „Alle Quartale“ erklärt der Tooltip, dass nicht jedes Quartal auf der X-Achse beschriftet wird, obwohl der Datenpunkt vorhanden ist
- vertikale Hilfslinie und hervorgehobener Punkt erleichtern die Zuordnung
- Touch/Pointer-Eingabe wird ebenfalls unterstützt
Unverändert
- die kompakte X-Achsenbeschriftung bleibt bestehen
- echte Datenlücken bleiben als Datenlücken behandelt und werden nicht interpoliert
- EEA-WEI+-Daten und Berechnungslogik bleiben unverändert
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha41
06.09.2026
Stable
Version 0.1.0-alpha41
Trend Clarity Pass
Neu / verbessert
- neue Fokus-Skala für Verlauf/Median bzw. originales WEI+
- Fokus ist Standard und skaliert nur auf die Hauptreihe, damit kleine Werte nicht in einer 0–40-%-Ansicht verschwinden
- Auto berücksichtigt bei eingeblendeter Streuung auch das 25.–75.-Perzentil
- EEA bleibt als feste Referenzskala 0–45 % erhalten
- Linienführung kann zwischen Direkt und Geglättet umgeschaltet werden
- Geglättet ist ausdrücklich nur eine optische Linienführung; Datenpunkte und Berechnungen bleiben unverändert
- Verlauf/Median, Mittelwert, Trend, Streuung und Schwellen können einzeln ein- und ausgeblendet werden
- die Sichtbarkeitssteuerung sitzt jetzt direkt oberhalb des Diagramms
- Balkendarstellung deaktiviert die Linienführungsoption automatisch
- neues Tracking-Ereignis environment_chart_curve
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha40
06.09.2026
Stable
Version 0.1.0-alpha40
Water Stress Introduction & Learning Page
Neu
- neue Route /environment/wasser/einleitung
- neuer erster Untermenüpunkt „Einleitung“ im Bereich Wasserstress
- großer 100%-Teaser mit dem Wasserstress-Visual
- Projekt-Startseite führt beim Wasserstress-Modul zuerst in die Einleitung
- Quellenblock mit EEA, Datensatz, Version, Zeitraum, CRS, Lizenz und DOI
- konkrete Erklärung der intern verwendeten Dateien
- Datenpipeline Originalquelle → Prüfung → Join → Webaufbereitung → Darstellung
- Datenqualitäts-Audit mit 21.006 Quellzeilen, 220 Regionen, 220/220 Geometrie-Matches und 92 Quellkonflikten
- CHSU-1-Konflikt 2000–2022 sowie EEA-Hinweise zu Gap-Filling, Proxys und modellierten Rückflüssen sichtbar erklärt
- Auswertungslogik für Karte, Statistik, linearen Trend, Q1–Q4 und Ländervergleich erklärt
- vereinfachte WEI+-Formel mit ausdrücklichem Hinweis: CW berechnet den offiziellen EEA-WEI+ nicht neu
- eigener Lern-/Interpretationsbereich für Schüler, Studierende und Interessierte
- „Einfach erklärt“-Modus auf der Einleitungsseite
- DE/EN
Unverändert
- /environment/wasser bleibt die interaktive Karte
- /environment/wasser/statistik bleibt Statistics Workspace
- /environment/wasser/methodik bleibt die fachliche Detailmethodik
- EEA-WEI+-Werte und Datenqualitätsregeln unverändert
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha39
06.09.2026
Stable
Version 0.1.0-alpha39
Domain Navigation Pass
Neu
- Hauptnavigation fachlich neu geordnet
- Wasserstress als eigener Menübereich mit Karte, Statistik und Methodik
- Klima & Wetter als eigener Menübereich mit Übersicht, Analyse, geplanter Karte und Methodik
- kurze Erklärzeilen in den Desktop-Dropdowns
- Klimakarte wird ehrlich als „folgt“ markiert
- Methodik erhält fachbezogene Alias-Routen /environment/wasser/methodik und /environment/klima/methodik
- Dokumentation bleibt eigener Hauptpunkt
- DE/EN und mobile Navigation angepasst
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha38
06.09.2026
Stable
Version 0.1.0-alpha38
Copernicus Climate Foundation
Neu
- neue öffentliche Route /environment/klima
- eigener Hauptbereich „Klima & Wetter“ in der Environment-Navigation
- Copernicus ERA5-Land Monthly Means als dokumentierte Climate Foundation
- erste Variablen: 2-m-Temperatur und Gesamtniederschlag
- sichtbare Trennung: Reanalyse ≠ Messreihe ≠ Zukunftsprojektion
- geplante Jahres-, Q1–Q4- und Anomalie-Auswertungen als klar markierte UI-Vorschau
- dokumentierter Datenweg CDS Request → Originaldatei → Normalisierung → CW Dataset
- lokales Metadatenregister assets/data/copernicus-era5-land.json
- ausführliche Builder-Doku docs/DATA-BUILD-COPERNICUS-ERA5-LAND.md
- CDS-Download-Helper tools/copernicus-era5-land-fetch.py mit Dry-Run
- Niederschlagseinheit des Monatsprodukts korrekt als Akkumulation pro Tag behandelt; Monats-mm = m/Tag × 1000 × Monatstage
- neuer Backend-Menüpunkt „Klima & Copernicus“
- Startseiten-Klima- und Copernicus-Karten führen jetzt in den neuen Bereich
- DE/EN vollständig
- Transparenz
- in alpha38 werden noch keine ERA5-Land-Klimawerte als CW-Datensatz veröffentlicht
- Diagramme auf der Klima-Seite sind ausdrücklich als Vorschau markiert
- API-Token oder persönliche Copernicus-Zugangsdaten werden nicht im Modul gespeichert
- Quelle
- Copernicus Climate Change Service / ECMWF
- ERA5-Land monthly averaged data from 1950 to present
- Dataset-ID reanalysis-era5-land-monthly-means
- DOI 10.24381/cds.68d2bb30
- CDS Raster 0,1° × 0,1°; native ERA5-Land-Auflösung ca. 9 km
- Lizenz laut CDS: CC-BY
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha37
06.09.2026
Stable
Version 0.1.0-alpha37
Second Visual Correction Pass
Neu / verbessert
- das vom Nutzer korrigierte Visual 03 wurde direkt übernommen
- der verbliebene Innenrand im zweiten großen Startseitenbild entfällt damit
- Visual 02 und Visual 03 liegen nun beide in korrigierter Fassung im Modul vor
- beide großen Projektvisuals bleiben auf voller Kartenbreite untereinander dargestellt
Unverändert
- Modal-Zoom für Visual 01–03
- EEA-WEI+-Daten, Statistik, Saisonvergleich und DE/EN
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha36
06.09.2026
Stable
Version 0.1.0-alpha36
Full-Width Visual Pass
Neu / verbessert
- das vom Nutzer korrigierte Visual 02 wurde direkt übernommen
- die CSS-Regeln für die beiden großen Startseiten-Visuals wurden auf volle Kartenbreite gehärtet
- Visual 02 und Visual 03 werden nun zuverlässiger mit width:100% dargestellt
- zusätzliche min-width/max-width-Regeln verhindern unbeabsichtigtes Schrumpfen oder Teilbreiten
Unverändert
- Darstellung der großen Visuals untereinander
- Modal-Zoom für Visual 01–03
- EEA-WEI+-Daten, Statistik, Saisonvergleich und DE/EN
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha35
06.09.2026
Stable
Version 0.1.0-alpha35
Final Visual Edge Cleanup
Neu / verbessert
- Visual 02 und Visual 03 wurden erneut minimal nachkorrigiert
- verbliebene innere Randreste am linken Bildrand wurden entfernt
- der untere Footer-Bereich von Visual 02 bleibt vollständig sichtbar
- beide Bilder füllen den äußeren Kartenrahmen jetzt sauberer aus
Unverändert
- vollbreite Darstellung untereinander
- Modal-Zoom für Visual 01–03
- EEA-WEI+-Daten, Statistik, Saisonvergleich und DE/EN
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha34
06.09.2026
Stable
Version 0.1.0-alpha34
Visual Frame Cleanup
Neu / verbessert
- Visual 02 und Visual 03 wurden als Bilddateien selbst bereinigt
- eingebaute Außenränder, helle Rahmen und abgesetzte Rundungen wurden entfernt
- beide Bilder fügen sich nun sauber in den äußeren Kartenrahmen der Startseite ein
- keine Karte-in-Karte-Wirkung mehr bei den großen Projektvisuals
Unverändert
- vollbreite Darstellung untereinander
- Modal-Zoom für Visual 01–03
- EEA-WEI+-Daten, Statistik, Saisonvergleich und DE/EN
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha33
06.09.2026
Stable
Version 0.1.0-alpha33
Homepage Visual Presentation Pass
Neu
- die drei Startseiten-Visuals fügen sich ruhiger in die Seite ein
- Visual 02 und Visual 03 werden nun vollbreit untereinander statt nebeneinander angezeigt
- Visual 01, Visual 02 und Visual 03 lassen sich per Klick in einem großen Modal öffnen
- Bildunterschriften enthalten jetzt einen dezenten Hinweis zum Vergrößern
- neue projektbezogene Lightbox-JavaScript-Datei für die Startseite
Verbessert
- infografische Inhalte mit Text bleiben besser lesbar
- die Bildsektion wirkt auf Desktop und mobil ruhiger und weniger gequetscht
- responsive Darstellung des Bildmodals inklusive Escape-Schließen
Unverändert
- EEA-WEI+-Daten, Kartenlogik, Statistik, Saisonvergleich und Datenqualität
- Themenkarten und Datenquellenkarten
- DE/EN-Sprachlogik und Consent-Integration
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha32
06.09.2026
Stable
Version 0.1.0-alpha32
Homepage Visual Render Pass
Neu
- die drei bisherigen SVG-Dummyflächen auf der öffentlichen Startseite wurden ersetzt
- Visual 01: fotorealistisches Rendering „Europas Wasserlandschaften“
- Visual 02: Infografik zu Daten, Szenarien, Unsicherheit und Projektprinzipien
- Visual 03: „Europa 2050“ als Klima-/Wasser-Szenario-Rendering
- alle drei Bilder lokal als optimierte WebP-Assets eingebunden
- einheitliches 16:10-Format für stabile responsive Darstellung
- Bildunterschriften und Alt-Texte in DE/EN auf die realen Visuals angepasst
Unverändert
- EEA-WEI+-Daten, Kartenlogik, Statistik, Saisonvergleich und Datenqualität
- Themenkarten und Datenquellenkarten aus alpha31
- DE/EN-Sprachlogik und Consent-Integration
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha31
06.09.2026
Stable
Version 0.1.0-alpha31
Startpage Module Cards & Data Source Teasers
Neu
- Startseite ersetzt kleine Einstiegstextlinks durch große, vollständig klickbare Themenkarten.
- Bereiche: Wasser & Wasserstress, Klima & Wetter, Methodik & Datenqualität, Dokumentation.
- jeder Bereich erhält ein eigenes lokal gebündeltes SVG-Icon und klaren Status.
- Wasser verweist auf den vorhandenen Live-Bereich.
- Klima & Wetter wird sichtbar als „In Arbeit“ angekündigt; es werden noch keine Copernicus-Daten als importiert ausgegeben.
- neuer Startseitenbereich „Datenquellen“ mit EEA, Copernicus ERA5-Land und Eurostat.
- jede Quellenkarte zeigt Anbieter, Datentyp, Auflösung/Status, Lizenz bzw. geplante Verwendung und einen kurzen Teaser.
- EEA führt direkt zur bestehenden Methodik/Datengrundlage.
- Copernicus und Eurostat führen bewusst nur in die öffentliche Roadmap/Datenplanung, solange kein entsprechender CW-Datensatz veröffentlicht ist.
- responsive Darstellung: 2-spaltige Themenkarten, 3-spaltige Quellenkarten, mobil jeweils einspaltig.
- DE/EN vollständig umgesetzt.
- öffentliche Doku um Schritt 035 ergänzt.
- Transparenz
- „In Arbeit“ und „Geplant“ sind bewusst keine Datenverfügbarkeits-Aussage.
- aktuelle Live-Datenbasis bleibt ausschließlich EEA WEI+.
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha30
06.09.2026
Stable
Version 0.1.0-alpha30
Seasonal Comparison
Neu
- Saisonansicht vergleicht immer Q1–Q4 innerhalb des gewählten Von/Bis-Zeitraums.
- Q1–Q4 gemeinsam in einer Zeitgrafik über die Jahre; Linie oder Balken.
- Für Länder/Europa: Umschaltung zwischen Median der veröffentlichten Teilgebietswerte und Anteil gültiger Teilgebietswerte mit WEI+ >= 20 %.
- Für ein einzelnes Teilgebiet: ausschließlich veröffentlichte WEI+-Quartalswerte; kein künstlicher Stressanteil.
- Typisches Saisonprofil Q1–Q4.
- Jahr x Quartal Heatmap folgt derselben gewählten Saison-Kennzahl.
- Vier Quartalstrends mit linearer Entwicklung je Quartal.
- Automatische deskriptive Kurzinterpretation: typischer Höchst-/Tiefpunkt, Spannweite und stärkste Quartalsentwicklung.
- A-B-Saisonvergleich für zwei Länder mit gleicher Zeitspanne und identischer Kennzahl.
- Saison-Kennzahl und Saison-A-B-Auswahl sind sharebar über die Statistik-URL.
- Tracking ergänzt environment_season_metric und environment_season_compare.
- Korrektur
- Die in alpha29 ergänzte Rangliste "Niedrigste Werte" wird im Overview weiter explizit ausgeliefert; fehlende und bekannte konfliktbehaftete Werte werden ausgeschlossen.
- CSS und JavaScript werden mit Modulversionsparameter ausgeliefert, damit nach Updates keine veralteten Frontend-Assets aus dem Browsercache weiterlaufen.
Methodik
- Bei Ländern/Europa ist der Median eine deskriptive Verteilungskennzahl der veröffentlichten hydrologischen Teilgebiete, kein offizieller nationaler WEI+.
- Stressanteile basieren auf tatsächlich gültigen Teilgebietswerten.
- Saisonale Profile, Trends und Vergleiche sind CW-Auswertungen der veröffentlichten EEA-Daten.
- Keine monatlichen oder interpolierten WEI+-Werte werden erzeugt.
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha29
06.09.2026
Stable
Version 0.1.0-alpha29
Statistics Completion Pass
- Neu / präzisiert
- „Alle Quartale“ wird ausdrücklich als Q1–Q4-Auswertung gekennzeichnet.
- Direkt unter der Filterbar: Anzahl der Zeitpunkte und letzter verfügbarer Zeitraum.
- Letztzeitraum-Kennzahlen sind nicht mehr pauschal als „aktuell“ beschriftet.
- Zwei Ranglisten im Überblick: höchste und niedrigste gültige Teilgebietswerte.
- Ranglisten berücksichtigen nur gültige, konfliktfreie Werte des letzten sichtbaren Zeitraums.
- A–B-Vergleich zeigt klar: Grafik = kompletter Filterzeitraum, Kopfwerte = letzter verfügbarer Zeitraum.
- A–B erhält eine kurze textliche Einordnung der aktuellen Differenz.
- DE/EN vollständig ergänzt.
Methodik
- Bei „Alle Quartale“ werden weiterhin Q1, Q2, Q3 und Q4 einzeln ausgewertet; es wird kein künstlicher Jahres-WEI+ erzeugt.
- Europa-/Länderansichten bleiben Verteilungsanalysen, kein künstlicher nationaler oder europäischer WEI+.
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha28
06.09.2026
Stable
Version 0.1.0-alpha28
Full DE/EN Localization + Language Preference
Neu
- alle öffentlichen Environment-Seiten vollständig in Deutsch und Englisch:
- /environment
- /environment/wasser
- /environment/wasser/statistik
- /environment/methodik
- /environment/doku
- DE/EN-Umschalter jetzt auf jeder Environment-Seite
- gewählte Sprache bleibt über Navigation, Footer und interne Links erhalten
- englische SEO-/Open-Graph-Metadaten und hreflang de/en/x-default
- Sprachpräferenz-Cookie cw_environment_lang
- Werte de/en
- First Party
- 1 Jahr
- HttpOnly, SameSite=Lax, Secure bei HTTPS
- Priorität: ?lang=... -> erlaubter Sprach-Cookie -> Deutsch
- CW Consent & Privacy
- neuer Backend-Menüpunkt „Cookies & Datenschutz“
- Environment registriert automatisch und idempotent den Dienst cw-environment-language
- Kategorie: Funktional
- keine Besucher-ID, kein Tracking, keine Profilbildung
- wenn Consent & Privacy aktiv ist und Funktional nicht erlaubt wurde, wird der Sprach-Cookie nicht gesetzt bzw. nicht verwendet
- ohne Consent & Privacy bleibt der Sprachwechsel über die URL vollständig funktionsfähig
- Glossary
- deutsches CW Glossary bleibt auf DE-Seiten aktiv
- englische Seiten werden bis zu einer mehrsprachigen Glossary-Erweiterung nicht mit deutschen Glossary-Erklärungen vermischt
Dokumentation
- Step 032 dokumentiert die vollständige DE/EN-Lokalisierung und Cookie-Integration
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha27
06.09.2026
Stable
Version 0.1.0-alpha27
Environment Tracking Dashboard
Neu
- eigener Backend-Menüpunkt „Tracking“
- nutzt ausschließlich das zentrale CW Analytics / window.cwTrack
- keine zweite Tracking-Datenbank und keine eigene Besucher-ID
- Environment-Seitenaufrufe, Sitzungen, Interaktionen und Exporte im Überblick
- Auswertung von Statistik-Tabs, Filtern, Diagrammformen, Skalen, Zoom und Layern
- Karten-Land, Teilgebiet, Zeitraum, Ansicht und Zoom werden als Environment-Ereignisse erfasst
- A–B-Vergleiche, Kennzahlenwahl, Linkkopie, Exporte, Bildungsmodus und Glossary-Nutzung
- Tagesverlauf und letzte technische Environment-Ereignisse im Backend
- Bot- und Testdaten werden in der Environment-Auswertung standardmäßig ausgeschlossen
- Datenschutz, Consent, Besucherkennung und Aufbewahrung bleiben beim zentralen CW Tracking
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha26
06.09.2026
Stable
Version 0.1.0-alpha26
Data Quality Visualization
- Datenqualität ist jetzt Bestandteil von Statistik 2.0
- Übersicht zeigt verwendete und erwartete Werte, Vollständigkeit, fehlende Werte und Quellkonflikte
- Zeitreihen verbinden echte Datenlücken nicht mehr künstlich
- graue Marker = Datenlücke
- goldene Marker = Gruppenwert basiert auf unvollständiger Datenbasis
- rote Rauten = bekannter Quellkonflikt
- Heatmap markiert fehlende Werte, Teilwerte und Konflikte
- Tabelle enthält Datenbasis und Datenqualität je Zeitraum
- CSV/JSON-Export enthält expected_regions, missing_values, source_conflicts, completeness_pct und quality_status
- 92 bekannte CHSU-1-Konfliktschlüssel bleiben bewusst ungelöst
- „Einfach erklärt“ beschreibt jetzt auch Datenlücken und Konfliktmarker
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha25
06.09.2026
Stable
Version 0.1.0-alpha25
Education & Glossary Integration
- CW Glossary 0.1.0-alpha2 wird optional und ohne harte Modulabhängigkeit genutzt
- Fachbegriffe im Environment-Footer kommen zentral aus CW Glossary
- automatische Glossary-Erkennung funktioniert dadurch auch in Environment-Fließtexten
- Statistik und Methodik erhalten einen persistenten Schalter „Einfach erklärt“
- kurze, kontextbezogene Erklärungen für Statistik-Tabs und Methodik-Kapitel
- Statistikfilter, aktiver Tab und Vergleich A–B werden in der URL gespeichert
- „Link kopieren“ erzeugt direkt teilbare Statistikansichten
- öffentliche Entwicklungschronik auf Step 029 fortgeführt und Steps 027/028 strukturell repariert
- Environment funktioniert weiterhin vollständig, wenn CW Glossary nicht installiert ist
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha24
06.09.2026
Stable
Version 0.1.0-alpha24
Methodology Heading Scale Pass
- Methodik-Kapitel 01–05 deutlich kompakter gesetzt
- H2-Größe auf eine sachliche Fachseiten-Hierarchie reduziert
- ruhigere Zeilenhöhe und geringere Zeichenbreite
- engeres Raster zwischen Kapitelüberschrift und Erklärung
- mobile Methodik-Typografie ebenfalls angepasst
- Startseite bleibt bewusst eigenständig und größer
Technik
- CW >= 3.0.0-beta9
- PHP >= 8.3
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha23
05.09.2026
Stable
Version 0.1.0-alpha23
- einheitlicher kompakter Unterseiten-Header für Wasserkarte, Statistik, Methodik und Dokumentation
- Startseite bleibt bewusst eigenständig und darf plakativ größer sein
- gleiche Hierarchie auf Fachseiten: Kicker, H1, kurze Subline, kompakte Meta-Zeile
- Statistikdiagramm erhält eine vollständige sichtbare Legende
- Legende erklärt Verlauf/Median, Mittelwert, Trend, Perzentilband sowie die drei EEA-Stresszonen
- neue Ebenen-Schalter: Schwellenzonen, Streuung, Mittelwert und Trend ein-/ausblenden
- Streuungs-/Perzentilband ist bei Einzel-Teilgebieten automatisch deaktiviert
- Auto-/EEA-Skala und Zeitraum-Navigator aus alpha22 bleiben erhalten
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha22
05.09.2026
Stable
Version 0.1.0-alpha22
Adaptive Chart Scale & Navigator
- Verlauf & Trend: neue Skala Auto | EEA
- Auto-Skala nutzt das sichtbare Datenmaximum plus Sicherheitsabstand und die verfügbare Diagrammhöhe wesentlich besser aus
- EEA-Modus bleibt als feste Referenz 0–45 % erhalten
- aktive Skala wird direkt am Diagramm ausgewiesen
- neuer CW-artiger Zeitraum-Navigator unter der Hauptgrafik
- zwei Griffe bestimmen Start und Ende des sichtbaren Diagrammausschnitts
- Gesamtansicht-Button setzt den Zoom zurück
- bei Zoom werden Trend, Minimum, Maximum, Mittelwert, Median und Start→Ende für den sichtbaren Ausschnitt neu berechnet
- Hauptfilter bleiben unverändert der globale fachliche Datenfilter; der Navigator ist ein zusätzlicher Diagramm-Zoom
- Step 026 in der öffentlichen Projektdokumentation
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha21
05.09.2026
Stable
Version 0.1.0-alpha21
Statistics Workspace
- kompakte Statistik-Headline statt übergroßem Landingpage-Hero
- 100-%-Filterbar für Ebene, Land, Teilgebiet, Zeitraum und Quartal
- Tabs: Überblick, Verlauf & Trend, Belastung, Saison, Vergleich A–B, Daten
- Umschalter Linie / Balken / Fläche für Verlauf, Belastung, Saison und A–B-Vergleich
- neuer Land-A/B-Vergleich mit frei wählbarem Land A und Land B
- Vergleichskennzahl umschaltbar: Median, Anteil >=20 %, Anteil >40 %
- Vergleich verwendet Median und Stressanteile der hydrologischen Teilgebiete; kein künstlicher nationaler WEI+
- Heatmap bleibt als fachlich sinnvolle feste Darstellungsform erhalten
- CSV/JSON-Export bleibt im Daten-Tab
- öffentliche Doku: Step 025
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha20
05.09.2026
Stable
Version 0.1.0-alpha20
- Statistikseite neu gegliedert: Überblick → Verlauf → Stressverteilung → Saison → Heatmap/Rangliste → Rohdaten
- Hauptdiagramm mit EEA-Schwellenzonen, Mittelwert und klarer Trendlinie
- Gruppenmodus zusätzlich mit 25.–75. Perzentil-Band
- Trendgeschwindigkeit pro Jahr sichtbar
- 100-%-Balken für die Stressklassen im Zeitverlauf
- Q1–Q4-Saisonprofil
- Jahr×Quartal-Heatmap mit Farbverlauf
- Top-10-Rangliste der höchsten gültigen Teilgebietswerte im letzten sichtbaren Zeitraum
- Frühwarnbereich und aktuelle Stressanteile verbessert
- keine künstlichen Europa-/Länder-WEI+-Aggregate
- öffentliche Dokumentation: Step 024
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha18
05.09.2026
Stable
Version 0.1.0-alpha18
- neuer öffentlicher Bereich /environment/wasser/statistik
- grafische WEI+-Statistik mit Zeitreihe, Trendlinie und Mittelwert-Linie
- Kennzahlen: Minimum, Maximum, Mittelwert, Median, Veränderung, Trend, Schwellenüberschreitungen
- Quartalsprofil Q1–Q4 als grafische Auswertung
- CSV- und JSON-Export der dargestellten Statistikreihe
- ohne ausgewähltes Teilgebiet keine künstlichen Länderwerte: gezeigt wird eine Verteilungsstatistik (Median/Min/Max) über die sichtbaren hydrologischen Teilgebiete
- DE/EN für Karte und Statistik in der Project Shell
- Step 022 in der öffentlichen Doku: Statistics Foundation
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha17
05.09.2026
Stable
Version 0.1.0-alpha17
Project Header Scale Pass
Neu
- Projektlogo im Environment-Header deutlich vergrößert (76 px Desktop)
- Headerhöhe und Innenabstände deutlich erhöht
- Projektname und Unterzeile größer und kontrastreicher
- Hauptnavigation auf knapp 16 px angehoben
- DE/EN-Umschalter größer
- Statuszeile unter dem Header größer und besser lesbar
- mobile Header-/Menügrößen angehoben
- Footer-Typografie ebenfalls vergrößert
- Scope
- ausschließlich die CW-Environment Project Shell wird verändert
- CW-Core und normales Website-Template bleiben unangetastet
- Daten, WEI+-Werte, Kartenlogik und Exporte bleiben unverändert
Dokumentation
- Step 021: Project Shell Lesbarkeit abgeschlossen
- Step 022: Statistik-Foundation als nächster Schritt
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha16
05.09.2026
Stable
Version 0.1.0-alpha16
Project Shell Foundation
Neu
- eigene öffentliche Environment Project Shell
- Environment-Icon als Projektlogo im Header
- eigene Navigation: Projekt, Karte, Methodik, Dokumentation
- eigener sachlicher Projektfooter
- neue öffentliche Route /environment/methodik
- CW-Integration
- nur Environment-Routen werden visuell umgehüllt
- CW-Core bleibt unverändert
- installierter Website-Header/-Footer bleibt für alle anderen Routen unverändert
- Umsetzung über die zentrale CW Frontend-Dokumentfilter-Pipeline
- <head>, route-spezifische Stylesheets und Laufzeit-Skripte bleiben erhalten
Methodik
- Datengrundlage EEA WEI+
- Schwellenwerte und Interpretation
- hydrologische Gebiete vs. politische Grenzen
- Datenqualität und Konfliktbehandlung
- reproduzierbare Aufbereitung vom Originaldatensatz bis zur Webansicht
Dokumentation
- Step 020: Project Shell abgeschlossen
- Step 021: Statistik-Foundation als nächster Schritt
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha15
05.09.2026
Stable
Version 0.1.0-alpha15
Map Rendering Finalization
- Neu / geändert
- sichtbare weiße Dreiecksartefakte an scharfen Polygonwinkeln beseitigt
- Ursache: Miter-Verbindungen der MapLibre-Linien konnten bei sehr spitzen Winkeln weit auslaufen
- hydrologische Grenzlinien nutzen nun round joins und round caps
- Auswahlkontur nutzt ebenfalls runde Linienverbindungen/-enden
- OSM-Ländergrenzen und deren Casing nutzen ebenfalls round joins/caps
- technische farbige Nahtabdeckung unter dem Overlay bleibt aktiv, solange das Daten-Overlay sichtbar ist
- Grenzschalter steuert nur noch die tatsächlich sichtbaren Grenzlinien
- 10-m-Länder-Detailgeometrie aus alpha14 bleibt unverändert
- Datenintegrität
- keine Änderung an EEA-WEI+-Werten
- keine Änderung an Regions-IDs
- keine Änderung an den EEA-Geometrien
- Rendering-Fix / reine Darstellungsänderung
- Öffentliche Dokumentation
- Step 019: Karten-Rendering gegen weiße Dreiecksartefakte gehärtet
- Step 020: Statistik-Foundation als nächster Schritt
- Nächster Ausbau
- eigener Statistikbereich
- frei begrenzbare Zeiträume
- WEI+: Jahr und Quartal (keine künstlichen Monats-/Wochenwerte)
- Verlauf, Min/Max, Mittelwert, Median, Schwellenüberschreitungen und Saisonvergleich Q1–Q4
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha14
05.09.2026
Stable
Version 0.1.0-alpha14
Map Precision Pass
Neu / verbessert
- Länder-Detailgeometrien erneut direkt aus dem originalen EEA-Shapefile erzeugt
- Detailvereinfachung von 50 m auf 10 m reduziert
- deutlich mehr Stützpunkte für Küsten, Flussgebiets- und Sub-Unit-Grenzen im tiefen Zoom
- Europaübersicht bleibt leicht und wird weiterhin nur für die grobe Navigation verwendet
- OpenFreeMap-Vektorquelle auf /planet/latest umgestellt
- OSM-Ländergrenzfilter wertet admin_level, maritime und disputed robust aus
- ausgewählte hydrologische Region wird türkis gestrichelt statt dunkel durchgezogen markiert
Wichtig
- Die 10-m-Geometrie ist weiterhin eine Webvereinfachung der EEA-Originalgeometrie, aber wesentlich detailreicher als zuvor.
- Hydrologische EEA-Grenzen und politische OSM-Staatsgrenzen bleiben getrennte Layer.
- EEA-Regions-IDs und WEI+-Werte werden nicht verändert.
- Hydrologische Gebiete dürfen politische Grenzen überschreiten.
- Nächster Schritt
- Step 019: Zeitvergleich / Zeitreihe 2000–2023 und näherer Qualitätskontext pro Region.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha13
05.09.2026
Stable
Version 0.1.0-alpha13
Administrative Boundary Layer
Neu
- eigener politischer Ländergrenz-Layer aus OpenStreetMap/OpenMapTiles (admin_level=2)
- Vektordaten werden zur Laufzeit über OpenFreeMap geladen
- politische Grenzen liegen oberhalb des EEA-WEI+-Overlays
- maritime Grenzlinien werden für den Landgrenz-Layer ausgeblendet
- als umstritten markierte OSM-Grenzen werden gestrichelt dargestellt
- Darstellungs-Panel: OSM-Ländergrenzen an/aus und Strichstärke dünn/normal/stark
- Legende und Erklärung trennen politische Grenzen und hydrologische EEA-Flächen ausdrücklich
Wichtig
- EEA-Geometrien, Regions-IDs und WEI+-Werte werden nicht verändert.
- Hydrologische Sub-Units dürfen Ländergrenzen überschreiten.
- Es erfolgt kein geometrisches Abschneiden und keine Neuberechnung von WEI+-Werten auf Staatsgebiet.
- Externe Kartenquelle
- OpenFreeMap/OpenMapTiles boundary vector layer
- Map data © OpenStreetMap contributors (ODbL)
- Nächster Schritt
- Zeitvergleich / Zeitreihe 2000–2023 und näherer Qualitätskontext pro Region.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha12
05.09.2026
Stable
Version 0.1.0-alpha12
Map Display Controls
Neu
- kompaktes Darstellungs-Panel an /environment/wasser
- EEA-WEI+-Overlay live ein/aus
- Overlay-Deckkraft von 0 bis 100 Prozent
- Teilgebietsgrenzen live ein/aus
- Grenzstärke dünn / normal / stark
- Einstellungen werden lokal im Browser gespeichert
- Standard wiederherstellen: 70 % Overlay, Grenzen an, Grenzstärke normal
Wichtig
- keine Änderung an WEI+-Werten, Regions-IDs oder EEA-Geometrien
- Einstellungen betreffen ausschließlich die MapLibre-Darstellung
- Länderfilter, Detailgeometrie, Tabelle und Exporte bleiben unverändert
Dokumentation
- /environment/doku: Step 016 dokumentiert die neuen Darstellungsregler
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha11
05.09.2026
Stable
Version 0.1.0-alpha11
MapLibre-Overlay Hotfix
Behoben
- EEA-WEI+-Overlay auf der OpenStreetMap-Basiskarte wieder sichtbar.
- Ursache: CW cw-module-asset.php erlaubt JSON, aber keine .geojson-Dateiendung.
- Europa- und Länder-Geometrien werden deshalb unverändert als .json ausgeliefert.
- MapLibre liest weiterhin reguläres GeoJSON; nur die Dateiendung wurde angepasst.
- Keine Änderung an den EEA-Geometrien, Regions-IDs oder WEI+-Werten.
Dokumentation
- /environment/doku ergänzt Step 015 mit Ursache und Lösung.
- Zeitvergleich verschiebt sich auf Step 016.
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha10
05.09.2026
Stable
Version 0.1.0-alpha10
Map Geometry & Basemap Foundation
Neu
- Eigenbau-SVG-Karte durch MapLibre GL JS ersetzt
- OpenStreetMap als geografischer Basiskarten-Layer mit Attribution
- echte Karteninteraktion: Drag/Pan, Mausrad, Touch, Doppelklick, NavigationControl
- zweistufiges Geometriemodell für EEA-WEI+-Sub-Units
- Europa-Übersicht: leicht und nur für niedrige Zoomstufen
- Länderansicht: separate 50-m-Detailgeometrie
- Länderfilter lädt automatisch die detailliertere Geometrie und zoomt auf deren Bounds
- tiefer Zoom in der Europa-Übersicht bewusst begrenzt, um Scheingenauigkeit und Simplifizierungsartefakte zu vermeiden
- farbige WEI+-Flächen liegen transparent über Städten, Straßen und Gewässern
- Hover-Popup, Regionsklick und Tabellen-„Karte“-Aktion an MapLibre angebunden
- EEA-Original-IDs und WEI+-Werte unverändert
- Warum
- Die bisherige einzelne SVG-Geometrie war bis zu mehreren Kilometern vereinfacht. Beim starken Zoom konnten dadurch sichtbare Keile und Lücken zwischen benachbarten Teilgebieten entstehen. Alpha10 trennt deshalb Übersicht und Detail.
- Externe Laufzeitkomponenten
- MapLibre GL JS 5.24.0: cdnjs, BSD-3-Clause
- Basiskarte: OpenStreetMap Standard, Attribution im Kartencontrol
Daten
- EEA WEI+ 2000–2023, Q1–Q4
- 220 Zeitreihen-Regionen / 30 Länder
- 242 EEA-Geometrien
- Detailgeometrie: 50 m Vereinfachung pro Land
- Nächster Schritt
- Zeitreihenvergleich 2000–2023 und Qualitätskontext näher am Einzelwert
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha9
05.09.2026
Stable
Version 0.1.0-alpha9
Flag Picker Fix
- Länderflaggen werden nicht mehr als Emoji im nativen Browser-Select dargestellt.
- Neuer eigener CW-Länderpicker mit lokal gebündelten PNG-Flaggen.
- Funktioniert unabhängig von der Emoji-Darstellung unter Windows/Chrome.
- Europa plus 30 Länderflaggen enthalten.
- Keine externen CDN-Requests zur Laufzeit.
- Tastaturbedienung: Öffnen, Pfeil hoch/runter, Home/End, Escape.
- Das native Select bleibt intern als Datenquelle für den bestehenden Filter erhalten.
- Öffentliche Projektdokumentation um Step 013 ergänzt.
Daten
- Keine Änderung an EEA-WEI+-Werten oder Regions-IDs.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha8
05.09.2026
Stable
Version 0.1.0-alpha8
Localization Foundation
- Länderwahl mit Flaggenpräfix
- Sprachumschalter DE / EN im Wasser-Explorer
- Ländernamen in Deutsch und Englisch
- deutsche Anzeigenamen für hydrologische Teilgebiete, soweit fachlich sinnvoll
- originaler EEA-Name bleibt unverändert gespeichert und im Detail/Export sichtbar
- Tabellen, Tooltips, Statusmeldungen und Exportfelder folgen der gewählten Sprache
- Social-Metadaten der Wasserroute berücksichtigen DE/EN
- Datenintegrität
- keine EEA-Regions-ID und kein Originalname wird durch die Lokalisierung ersetzt
- Export enthält zusätzlich region_original
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha7
05.09.2026
Stable
Version 0.1.0-alpha7
Karten-Panning / Navigation
- gezoomte Karte kann mit Maus oder Touch gegriffen und verschoben werden
- Mausrad zoomt an der aktuellen Cursorposition
- Pfeiltasten verschieben den Kartenausschnitt
- + / - funktionieren zusätzlich per Tastatur
- Home oder 0 springt auf die aktuelle Auswahl zurück
- zwei kompakte Positions-Scrollleisten für horizontal / vertikal
- neuer Button „Europa“ setzt die Karte vollständig zurück
- Klick auf Teilgebiete wird nach einem Drag nicht versehentlich ausgelöst
- Bestehende Funktionen
- Länderfilter mit automatischem Zoom
- 2000–2023 / Q1–Q4 EEA-WEI+
- hydrologische Teilgebiete
- Tabelle sowie CSV- und JSON-Export
- Modul-Backend und öffentliche Projektdokumentation
Dokumentation
- Step 011: verschiebbare Zoomkarte
- Step 012: Zeitvergleich und Qualitätskontext als nächster Schritt
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha6
05.09.2026
Stable
Version 0.1.0-alpha6
Backend Foundation
- erste eigene CW-Adminseite „Übersicht“
- zusätzliche Adminseite „Daten“ mit Länder-/Teilgebietsübersicht
- Modulmanifest deklariert die Admin-Seiten korrekt
- dadurch zeigt die CW-Modulverwaltung automatisch „Gehe zum Modul“
- Einordnung im Backend unter Website / Tools
- Direktlinks zu /environment, /environment/wasser und /environment/doku
- Wasser-Explorer
- Länderfilter aus den 220 hydrologischen EEA-WEI+-Teilgebieten
- Länder werden mit Anzahl ihrer Teilgebiete im Filter zusammengefasst
- Beispiel Deutschland: 28 Teilgebiete
- gewähltes Land bleibt farblich aktiv, übriges Europa wird ausgegraut
- Karte zoomt beim Länderwechsel automatisch auf die zugehörigen Flächen
- zusätzliche Zoom-Buttons für +, − und „Auswahl“
- Doppelklick auf eine Region zoomt auf das einzelne Teilgebiet
- Kennzahlen beziehen sich bei aktivem Länderfilter nur auf dieses Land
- Regionenauswahl wird passend zum Land reduziert
- Tabelle & Export
- Umschaltung Karte / Tabelle
- Tabelle zeigt Land, Teilgebiet, Regions-ID, WEI+, Einstufung und Datenstatus
- CSV-Export der aktuell gewählten Kombination aus Jahr, Quartal und Land
- JSON-Export derselben Auswahl
- Export enthält Quelle, DOI und Lizenz
- Länderfilter erzeugt bewusst keinen künstlichen nationalen WEI+-Mittelwert
Dokumentation
- Step 009: Modul-Backend
- Step 010: Länderfilter, Zoom, Tabelle & Export
- Step 011: Zeitvergleich & Qualitätskontext als nächster Schritt
- Bewusst noch nicht enthalten
- Doku-Editor im Backend (Foundation ist vorhanden; eigener Editor folgt separat)
- nationale Aggregatwerte, solange dafür keine methodisch belastbare Regel definiert ist
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha5
05.09.2026
Stable
Version 0.1.0-alpha5
Data Foundation · erste echte EEA-WEI+-Datenansicht
Neu
- öffentliche Route /environment/wasser
- interaktive Europa-Karte mit EEA Water Exploitation Index Plus (WEI+)
- Zeitraum 2000–2023, Q1–Q4 auswählbar
- 220 Zeitreihen-Regionen aus 30 Ländern
- hydrologische Sub-Units über EEA thematicId/spatialUnitIdentifier verknüpft
- kompakter Frontend-Datensatz statt großer Rohdateien
- Web-Geometrie aus dem offiziellen EEA-SHP für den Browser vereinfacht
- Regionsauswahl per Karte oder Dropdown
- Live-Zusammenfassung je Zeitraum: Anzahl Werte, Wasserstress, schwerer Wasserstress, Maximum
- Detailansicht pro Region mit Datenstatus und Quelle
- EEA-Schwellenwerte: ab 20 % Wasserstress, über 40 % schwerer Wasserstress
Datenqualität
- 21.006 Excel-Zeilen geprüft
- 220/220 Zeitreihen-Regions-IDs konnten einer SHP-Geometrie zugeordnet werden
- 92 doppelte Region/Jahr/Quartal-Schlüssel im Quelldatensatz erkannt
- betroffene Konfliktwerte werden NICHT automatisch gemittelt oder ausgewählt
- bekannte Auffälligkeit: CHSU-1, 2000–2022
- EEA-Hinweise zu Gap-Filling, Proxys und modellierten Anteilen werden öffentlich dokumentiert
Dokumentation
- /environment/doku um Step 007 und Step 008 erweitert
- Daten-Audit mit Umfang, Join, Lizenz und Qualitätsregeln ergänzt
- Step 009: Zeitvergleich, Länderansicht und Qualitätskontext
- Lizenz / Attribution
- CW-Environment-Code: GPL-3.0-or-later
- EEA WEI+ Daten und abgeleitete Web-Geometrie: CC BY 4.0
- Data © European Environment Agency (EEA)
- DOI: https://doi.org/10.2909/b16bd284-f2ec-4164-90b7-674c1de399ba
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha4
05.09.2026
Stable
Version 0.1.0-alpha4
Public Data Plan & Documentation Editing Foundation
Neu
- /environment/doku um eine öffentliche Datenplan-Tabelle erweitert
- 11 geplante Datenbereiche dokumentiert: Wasserstress, Wasserentnahme, Haushalte, Landwirtschaft, Industrie, Niederschlag, Temperatur, Boden/Verdunstung, Dürre, Bevölkerung und Zukunftsklima
- zu jedem Bereich Quelle, erwarteter Datentyp und grobe Projektphase sichtbar
- konkrete öffentliche To-do-Liste mit IDs, Bereichen, Status und Ziel ergänzt
- Roadmap auf sechs Phasen erweitert
- Entwicklungschronik um Step 006 ergänzt; Data Foundation ist jetzt Step 007
- eigener Abschnitt zur späteren Pflege der Dokumentation im Modul-Backend
- Technische Foundation für editierbare Doku
- Modul-Defaults bleiben unter data/documentation.php versioniert
- optionaler projektbezogener Override unter project/storage/environment/documentation.json vorbereitet
- projektbezogene Doku kann dadurch später Modulupdates überstehen
- Dokumentationsbereiche werden bei einem Override als komplette Bereiche ersetzt, damit Sortieren/Löschen im späteren Editor sauber funktioniert
- Backend-Editor selbst ist noch NICHT Bestandteil dieses Releases
- Weiterhin bewusst nicht enthalten
- keine echten EEA-/Eurostat-/Copernicus-Imports
- keine interaktive Europakarte
- keine Szenario-Engine
- Nächster Schritt
- EEA WEI+ herunterladen und technisch untersuchen
- Struktur, Lizenz, Zeit- und Raumebenen prüfen
- daraus den ersten neutralen CW-Environment-Datenvertrag ableiten
- Initiator
- Mario Krell
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha3
05.09.2026
Stable
Version 0.1.0-alpha3
Public Documentation Foundation
Neu
- öffentliche Route /environment/doku
- Entwicklungschronik ab dem ersten Projektimpuls
- Mario Krell als Initiator des Projekts dokumentiert
- öffentliche Datenquellen-Roadmap mit EEA, Eurostat, Copernicus und JRC
- klare Trennung von veröffentlichten Daten, Reanalyse, Modellprojektion und CW-Szenario
- geplanter Datenweg vom Originaldatensatz bis zur Visualisierung dokumentiert
- öffentliche Roadmap und offene methodische Fragen
- Link von /environment direkt zur Dokumentation
- Social-/SEO-Metadaten auch für /environment/doku
- Bewusst noch nicht enthalten
- keine importierten Umweltdaten
- keine aktive Europakarte
- keine Daten-API
- keine Szenario-Berechnung
- Nächster Schritt
- EEA WEI+ als ersten realen Datensatz untersuchen, Lizenz/Struktur prüfen und ein neutrales CW-Environment-Datenformat definieren.
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha2
05.09.2026
Stable
Version 0.1.0-alpha2
Social-Meta-Update des ersten öffentlichen CW-Umweltprojekts.
Neu
- eigenes Social-/SEO-Bild als JPG unter assets/module/social.jpg
- Social-Bild exakt 1200 x 630 px für Facebook/Open Graph
- og:title, og:description, og:url, og:type und og:locale
- og:image inkl. image/jpeg, 1200 x 630 und Alt-Text
- canonical URL für /environment
- Twitter/X summary_large_image Card
- Fallback-Dokumentfilter für CW-Projekt-Templates, die Routen-Metadaten noch nicht selbst ausgeben
- Weiterhin bewusst klein
- einzige öffentliche Hauptroute: /environment
- Projektvorstellung, Grundprinzipien und Roadmap
- Modul-Icon, Cover/Teaser und visuelle Dummys
- sichtbarer Dank an Mario Krell als Initiator des Projekts
- noch keine Datenimporte, APIs oder Simulationen
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
- Lizenz
- GPL-3.0-or-later
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0
v0.1.0-alpha1
05.09.2026
Stable
Version 0.1.0-alpha1
First Release des öffentlichen CW-Umweltprojekts.
- Ziel
- CW Environment als eigenständiges, installierbares Open-Source-Modul starten
- eine ruhige öffentliche Projektseite bereitstellen
- transparent erklären, was später entstehen soll
- Trinkwasser und Klima in Europa als ersten Schwerpunkt setzen
- Enthalten
- öffentliche Hauptroute /environment
- ausführliche Projektvorstellung
- Grundprinzipien für Daten, Szenarien und Unsicherheiten
- Entwicklungs-Roadmap
- Modul-Icon und Cover/Teaser
- drei visuelle Dummy-Flächen für spätere Renderings
- sichtbarer Dank an Mario Krell als Initiator des Projekts
- Bewusst noch nicht enthalten
- keine Datenimporte
- keine Copernicus-, EEA- oder Eurostat-Anbindung
- keine Simulation
- keine Szenario-Engine
- keine Adminoberfläche
- keine weiteren öffentlichen Routen
Kompatibilität
- CW >= 3.0.0-beta9
- PHP >= 8.3.0
- Lizenz
- GPL-3.0-or-later
CW ≥ 3.0.0-beta9 PHP ≥ 8.3.0