Leider bin ich immer noch „out of order“ . Weil der Wunsch nach einer Beta jetzt mehrfach aufkam: Bitte sehr, hier ist sie!
WICHTIGER HINWEIS: Ich konnte die Änderungen bisher nur im Code trocken testen, nicht in der echten Live-Komplexität meines eigenen Systems. Die Nutzung der Beta erfolgt also absolut auf eigene Gefahr! Was ich jetzt dringend brauche, ist euer Feedback – vor allem, ob die Installation sauber durchläuft.
Hier sind die Änderungen im Detail:
Das Update behebt die Fehler bei der Datenintegrität der Physics-Kalibrierung (siehe den Bug-Thread) und bringt ein neues Werkzeug mit, um fehlerhafte Datenräume bei Anlagenausfällen in Quarantäne zu schicken. Danke hierbei an @dietmar1968 für den Input!
1. Physics-Kalibrierung & automatisches Aufräumen
- Saubere Lernbasis:
Ausgeschlossene Stunden, MPPT-gedrosselte Werte und deaktivierte Panel-Gruppen fließen ab jetzt nicht mehr in die Kalibrierung ein. - Einmalige Migration:
Das Update stösst beim ersten Start unter V32.0.2 eine automatische Bereinigung der Datenbank an. Fehlerhafte Gruppen-Flags werden korrigiert und kontaminierte Kalibrierungs-Überbleibsel gelöscht. - Automatischer Rebuild:
Nach dem Bereinigen baut das System die Physics-Faktoren einmalig auf Basis der sauberen Historie neu auf. - Fallback-Schutz:
Sollten nach dem Aufräumen nicht mehr genug historische Daten übrig sein, startet die Physics-Kalibrierung einfach sicher mit den Standard-Defaults und lernt ab dem nächsten Tagesabschluss neu.
2. Neuer Notfall-Dienst (NUR AUF ANWEISUNG): emergency_outage_quarantine
Um das System bei akuten Ausfällen von Wechselrichter, Anlage oder Sensoren abzusichern, gibt es jetzt einen Quarantäne-Service. Damit könnt ihr fehlerhafte Zeiträume gezielt isolieren, damit die AI in dieser Phase keine falschen Ist- oder Nullwerte lernt. Die Daten werden dabei nicht gelöscht, sondern nur ausgeklammert.
Der Service ist ein reines Notfall-Werkzeug und funktioniert auch nachträglich für vergangene Zeiträume. Da dieser Dienst massiv in die Datenbank und die AI eingreift, gilt hier:
Bitte spielt oder testet damit nicht einfach eigenmächtig herum! Bei falscher Anwendung könnt ihr euch die komplette AI-Datenbasis unwiderruflich zerschießen oder den Home Assistant Recorder belasten. Nutzt den Service bitte nur in Absprache oder wenn ihr genau wisst, was ihr tut.
- Zeitraum wählen: Markiert flexibel einzelne Stunden oder ganze Tage als Ausfallzeit.
- Lernstopp & Schutz: Die Lernlogik pausiert für diesen Zeitraum, und die Daten fließen nicht in die Clean-Evaluation oder den Backfill.
- Daten-Optionen: Ihr könnt wählen, ob vorhandene Daten stehen bleiben oder ungültige Nullwerte gezielt entfernt werden sollen.
- Sicherheit eingebaut: Es gibt einen Dry-Run zur Vorab-Prüfung sowie eine Option für ein automatisches DB-Backup vor der Live-Ausführung. Jedes Ausführen wird zudem sauber im Log protokolliert.
3. Stabilitäts- und Integritätsfixes
Hier habe ich an einigen Stellen nachgebessert, um vor allem Datenbank-Locks und Probleme beim Tageswechsel zu verhindern.
- Tagespeak-Reset:
Der Sensor für den maximalen Peak von heute setzt sich jetzt absolut zuverlässig um Mitternacht zurück. Das läuft zentral über den Production-Time-Tracker und ist über den Midnight-Scheduler doppelt abgesichert. - Keine verschachtelten Transaktionen mehr:
Die Transaktionsverwaltung für SQLite wurde gehärtet. Der Fehlercannot start a transaction within a transactionbeim Update des SFML-Live-Ist-Zustands ist damit Geschichte. - Legacy-Pfad entschärft:
Der primäre Stunden-Writer bleibt die Morning-Routine. - STATS-Datenbank-Locks:
Die Schreibpfade von STATS laufen jetzt serialisiert mit Retries über den zentralen Connection-Manager. Kurzzeitige SQLite-Locks erzeugen also keine unnötigen Fehlermeldungen mehr in euren Logs.
4. Hybrid-Forecast
Der Hybrid-Forecast wurde logisch aufgeräumt und gegen parallele Ausführungen abgesichert.
- Service-Klarstellung:
Die gewünschten Forecast-Zeitpunkte wurden nun restart-fest. Das Aktivieren löst keinen sofortigen manuellen Forecast mehr aus. - Neuer Status-Sensor:
Schluss mit der Blackbox. Der neue SensorHybrid Forecast Statuszeigt euch genau an, ob der Modus aktiv ist, welche Zeiten geplant sind und wann der letzte bzw. nächste Lauf stattfindet. - Future-only & Parallelitätsschutz:
Der Hybrid-Forecast verändert niemals bereits vergangene Stunden, hier gab es ein instabiles Verhalten. Zudem blockieren sich parallele Läufe jetzt gegenseitig, um konkurrierende Schreibvorgänge auf der Datenbank zu verhindern.
Probleme mit dieser Beta bitte ausschließlich in diesem Thread - es ist ein Thread für Entwickler, Tester und mutige
Have fun…
Zara
PS ich weise noch einmal darauf hin, dass ich den Code bisher nur theoretisch prüfen konnte!










