# Forecast- und SDL-Integration, 6. Oktober 2026 ## Auftrag und Umfang Daniel Haefliger hat die Weiterfuehrung passender unveroeffentlichter Arbeiten, die Integration der Prognosebedienung, SDL-Anzeigen und die Veroeffentlichung auf develop und beta ausdruecklich beauftragt. main bleibt unveraendert. - Manager: Prognose / Forecast ist der gemeinsame Bedienort. Die bisherigen separaten Diagnosevariablen sind umbenannt und in der Visualisierung verborgen. - Batterie: die bereits integrierte Bereinigung des separaten V4-Formulars bleibt erhalten. Bestehende Idents, APIs und gespeicherte Freigaben werden aus Kompatibilitaetsgruenden nicht umbenannt oder geloescht. - Portal: derselbe Planner erscheint im vorhandenen Prognosebereich. Die exakte ausgewaehlte Eingangsprognose wird als forecastPoints eingefroren, unabhaengig vom durch publizierte Preise begrenzten Optimierungshorizont. Netzplan, Batteriestellwerte und Kosten werden nicht kuenstlich verlaengert. - Diagramme zeigen PV, Last, SDL-Szenario, Netz, Batterie, SOC, Preise und Kosten. Fehlende Werte bleiben Luecken. Prognosewerte sind keine gemessenen Erfolge. - Utils kapselt die generische Darstellung nicht bestimmbarer Energieanteile. EMS entscheidet bei SDL-Bilanzierung, dass die Haus-PV-Anteile nicht eindeutig aus dem SDL-haltigen Netzbezug hergeleitet werden koennen. Zaehler bleiben sichtbar. ## Migration und Erhaltung Utils vor EMS aktualisieren. Bei alten Utils blendet EMS den eigenen Energy Pie bei aktiver SDL aus und protokolliert den Aktualisierungsbedarf, statt falsche Prozentwerte anzuzeigen oder die Manager-Regelung zu stoppen. Bestehende Energy-Pie-Konfiguration, individuelle Flow-Knoten und Nicht-SDL- Diagrammreihen bleiben erhalten. Visualisierungsschalter nicht aus-/einschalten: das wuerde teilweise eine Neuerzeugung ausloesen. Historien, Energiezaehler, Mess-Outbox und Betriebsfreigaben werden nicht zurueckgesetzt. Die Testanlage wurde mit gesicherten, hashgeprueften Quelldateien aktualisiert. Manager 17004 verwendet SDL-Leistung 25085 (W, Faktor +1) und SOC 23879 (%). Diese Werte gehoeren zur vorhandenen virtuellen EV/SDL-Aufteilung und sind kein unabhaengiger physischer SDL-Messnachweis. Der einzelne Batterie-Flow-Knoten wurde von Proxy 19274 auf 42728 umgestellt; alle anderen Felder wurden erhalten. Flow 57933 enthaelt zusaetzlich SDL. Leistungsdiagramm 53754 wuchs von vier auf sechs Reihen, Energiediagramm 19668 von sechs auf neun. Keine Alt-Reihe entfernt. Private Rueckfallsicherung auf der Anlage: `/var/lib/symcon/backup/enelix-forecast-sdl-20261006T171851Z`. Sie enthaelt Konfigurationen und darf nicht in Git, Logs oder Chat kopiert werden. Der temporaere Beobachtungshook 12555 wurde wiederhergestellt. ## Pruefungen - EMS PHPUnit: 360 Tests, 1771 Assertions, erfolgreich. - Utils PHPUnit: 58 Tests, 350 Assertions, erfolgreich. - Backend: 312 Tests, erfolgreich, isolierter aktueller develop-Stand mit Patch. - Formular: 71 Pruefungen; RequestAction: 26; Regeltests: 96; Empfaenger: 32. - Chart- und Energy-Pie-JavaScript: 14 Tests, erfolgreich. - Portal-Mount: acht Tests, erfolgreich, inklusive Anlagen-/Ansichtswechsel, Abmeldung, verspaeteter Antworten und unabhaengiger Fehlerbehandlung. - Echter Chromium: Desktop 1280 px, Mobil 390 und 320 px; Kurven, Auswahl, Maus/Tastatur, Lebenszyklus, CSS-Abgrenzung und Screenshots erfolgreich. - Testanlage nach Installation: Manager, Batterie, Energy Pie und Flow Status 102; SDL-Quellen und erhaltene Diagrammreihen kontrolliert. ## Offene Betriebsschritte, keine Produktionsfreigabe Die Nachkontrolle 2026-10-06 17:26:21 UTC zeigte den bekannten Symcon-Timerfehler nach Module Control Reload: alter Batterie-Timer 70 blieb laufend, neue Melde-/Rueckmeldetimer hatten noch keinen Lauf. Ein kontrollierter Symcon-Neustart und danach erneute Pruefung sind erforderlich. Status 102 allein ist kein Beleg fuer funktionierende Timer. Die neue Netzfahrplansteuerung 46716 bleibt false. Portal-Assets wurden ohne Containerneustart aktualisiert. Das Backend-Image ist noch nicht aktualisiert: Docker-Socketzugriff fuer agent ist nicht erlaubt. Vorbereitete, erfolgreich vorgepruefte Administratoruebergabe auf enelix-services: ```sh sudo python3 /srv/agent/forecast-completion-20261006/deploy_forecast_backend.py --apply ``` Das Skript prueft zwei exakte Quelldateien, sichert Datenbank und Quellen, baut/testet das Image vor dem Austausch und bewahrt die bisherige Image-ID fuer Rollback. Keine Socketrechte werden geaendert. Keine Stellfreigabe wird erteilt. Nach erfolgreicher Installation Neuberechnung und neue forecastPoints pruefen. Bis dahin kennzeichnet die Anzeige alte Plaene und zeigt keine erfundenen Werte. Unbefristeter Betrieb ist NICHT freigegeben: Nachweis eines geraeteseitigen Ausfallschutzes, physischer Soll-/Ist-Nachlauf, sichere Null-/Stop-Reaktion und Fortfuehrung ueber mehrere Planerneuerungen fehlen weiterhin. Die bestehende befristete Zustimmung bis 7. Oktober 2026, 17:38:07 Europe/Zurich wird nicht verlaengert. EV-Konto bleibt 161.44 kWh / 39 kW; physische Gesamtkapazitaet und virtuelle SDL-Energie werden nicht als zusaetzliche EV-Energie angesetzt. ## Pull-Request-Text Forecast-Bedienung im Manager konsolidieren, vollstaendige gespeicherte Eingangsprognose im bestehenden Portal einbetten und SDL-Anzeigen vervollstaendigen. Individuelle Visualisierungen und kompatible Kennungen bleiben bestehen; nicht bestimmbare Energieanteile werden ehrlich als unbekannt dargestellt. Automatisierte Tests und responsive Browserpruefung erfolgreich. Zwei explizite Betriebsblocker bleiben dokumentiert; kein unbegrenzter Anlagenbetrieb aktiviert.