Skip to content

Commit 5c4c1ea

Browse files
Auftrag Befehls-Wächter erledigt: SET40/TOP112 ist neunter Kanal (nodered-flows V1.4.0)
Kopf des Auftrags mit Ergebnis und Abnahme: Punkt 1 an der Anlage bestanden, Punkte 2 und 3 offline gegen den echten Code (86 Zusicherungen, drei Gegenproben) mit Begründung, warum nicht live; passiver Nachweis der Verdrahtung ab 16:02 im Checkup. Dazu die Lesehärtung alsZahl(), die für alle Kanäle gilt (Number(null) = 0). Arbeitsplan-Kopf: Folgeauftrag Schritt 28 nicht mehr "offen". README-Tabelle: Auftrag "erledigt", Arbeitsplan "ausgerollt als 3.23.0" statt "geplant" (war seit dem Rollout veraltet). Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
1 parent 16ce33d commit 5c4c1ea

3 files changed

Lines changed: 44 additions & 6 deletions

File tree

‎Arbeitsplan-AltExternalSensor.md‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,10 @@
88
> auf dem Broker geräumt; die vier ioBroker-Objekte (Retained-State und
99
> Aliase mit Historie) muss der Owner noch von Hand im Admin löschen (E8).
1010
>
11-
> **Offen als Folgeauftrag, außerhalb dieses Repos:** SET40/TOP112 in den
12-
> `WP_Befehls_Waechter` in `nodered-flows` aufnehmen (Schritt 28) — noch
13-
> nicht angelegt, eigene Session in jenem Repo.
11+
> **Folgeauftrag (Schritt 28) erledigt am 2026-09-19:** SET40/TOP112 ist
12+
> neunter Kanal des `WP_Befehls_Waechter` in `nodered-flows` (V1.4.0). Ablauf
13+
> und Nachweis stehen im Kopf von
14+
> [`Auftrag-Befehlswaechter-AltExternalSensor.md`](Auftrag-Befehlswaechter-AltExternalSensor.md).
1415
>
1516
> **Übergabe:** Dieser Plan führt vom ersten Befehl bis zum Release in beiden
1617
> Repos und ist damit vollständig abgearbeitet. Wer künftig an SET40/TOP112

‎Auftrag-Befehlswaechter-AltExternalSensor.md‎

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,43 @@
11
# Auftrag: SET40/TOP112 in den `WP_Befehls_Wächter` aufnehmen
22

3-
> **Ergebnis: offen.**
3+
> **Ergebnis: erledigt (2026-09-19)** — umgesetzt in `nodered-flows` als
4+
> `WP_Befehls_Waechter` **V1.4.0**: `AltExternalSensor` ist der neunte Kanal je
5+
> Stufe (Soll `set.AltExternalSensor`, Ist `state.Alt_External_Sensor`, 5 min
6+
> Karenz, LWT-Vorbedingung, Stale-Guard). Der Bestand war wie vermutet acht
7+
> Kanäle. `WP_Installer_Waechter` und die Notbetriebswerte sind unberührt, eine
8+
> Automatik gibt es nicht.
9+
>
10+
> **Abnahme:**
11+
>
12+
> 1. **An der Anlage, bestanden.** Beide Stufen tragen `set` und `state` = 1.
13+
> Nach dem Deploy (15:01:32) im Minutentakt gemessen bis 6 min 19 s danach,
14+
> also über die Karenz hinaus: `WPB_State` 0, Klartext leer, Vorfallzähler
15+
> unverändert (71), keine `warn`-/`error`-Zeile. Der Server-Quelltext ist
16+
> nach Rück-Pull bytegleich mit dem lokalen.
17+
> 2. **Abnahme-Punkte 2 und 3: offline gegen den echten Code, nicht an der Anlage.**
18+
> `nodered-flows/tests/befehlswaechter/test_befehlswaechter.js` lädt die
19+
> Skriptdatei mit Mocks und simulierter Uhr: Abweichung bei 4 min still, bei
20+
> 5 min gemeldet (beide Richtungen); LWT `Offline` ⇒ nur die Bridge-Meldung,
21+
> kein Alarm-Nachschlag nach der Rückkehr; acht Varianten „unlesbar ⇒
22+
> unprüfbar“; alle neun Kanäle tabellengesteuert gleich behandelt. 86
23+
> Zusicherungen grün, drei Gegenproben von Hand rot. **Warum nicht live:**
24+
> Schritt 2 wie beschrieben erzeugt keine Abweichung — die Firmware zieht
25+
> `TOP112` binnen 7–11 s nach —, sie ließe sich nur erzwingen, indem der
26+
> Datenpunkt ohne Publish gesetzt wird, und bliebe bei einer Wiedereinspielung
27+
> durch den Adapter ein Risiko für den Fühler einer laufenden WP. Schritt 3
28+
> trennt den Broker, der zugleich der ioBroker-mqtt-Adapter ist, und verfälscht
29+
> den Vorfallzähler beider Bridge-Wächter. Die Live-Fassung bleibt auf
30+
> ausdrücklichen Wunsch des Owners nachholbar.
31+
> 3. **Passiver Nachweis der Verdrahtung, noch offen:** Wären die Datenpunkt-IDs
32+
> falsch, stünde ab 16:02 eine Zeile `AltExternalSensor … nicht bewertbar` im
33+
> Log (60-min-Grenze). Der nächste Checkup zeigt es; fehlt sie, ist der Kanal
34+
> belegt.
35+
>
36+
> **Mit gefixt, gilt für alle Kanäle:** `Number(null)` und `Number('')` sind 0
37+
> und bestanden die `isFinite`-Prüfung. Ein fehlender oder leerer Soll-Datenpunkt
38+
> hätte für den neuen Kanal nach 5 min eine falsche „NICHT ausgeführt“-Meldung
39+
> erzeugt, statt „unprüfbar“ zu sein. Neue Hilfsfunktion `alsZahl()`; heute
40+
> ändert sich für keinen der 18 Kanäle etwas (alle Werte lesbar, frisch, gleich).
441
542
*Zum Kopieren in eine Session im Projekt `nodered-flows` gedacht; setzt dort
643
keinen Vorkontext voraus. Gegenstück im Firmware-Repo: `HeishaMonKaskade`,

‎README.md‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1091,8 +1091,8 @@ Der vollständige Changelog mit Begründung und Nachweis je Version steht in
10911091
| [`Analyse-Relais-statt-KNX.md`](Analyse-Relais-statt-KNX.md) | Die zwei Relais der Platine statt des KNX-Aktors — geprüft und verworfen (2026-08-23) |
10921092
| [`Arbeitsplan-Notbetrieb-NodeRED.md`](Arbeitsplan-Notbetrieb-NodeRED.md) | Node-RED-Seite des Notbetriebs (Werte-Sender, Verteiler-Ausgang) — erledigt am 2026-08-20 im Projekt `nodered-flows` |
10931093
| [`Arbeitsplan-Robustheit-3.20.0.md`](Arbeitsplan-Robustheit-3.20.0.md) | Umsetzung der Durchsicht vom 2026-09-02 (M1–M4) samt Nachweisen; 3.20.0 |
1094-
| [`Arbeitsplan-AltExternalSensor.md`](Arbeitsplan-AltExternalSensor.md) | Alternativer Außenfühler als SET40/TOP112, TOP66 entfällt — Entscheide und Ablauf bis zum Release; geplant für 3.23.0 |
1095-
| [`Auftrag-Befehlswaechter-AltExternalSensor.md`](Auftrag-Befehlswaechter-AltExternalSensor.md) | Auftrag an `nodered-flows`: SET40/TOP112 in den `WP_Befehls_Waechter` aufnehmen — offen |
1094+
| [`Arbeitsplan-AltExternalSensor.md`](Arbeitsplan-AltExternalSensor.md) | Alternativer Außenfühler als SET40/TOP112, TOP66 entfällt — Entscheide und Ablauf bis zum Release; ausgerollt als 3.23.0 |
1095+
| [`Auftrag-Befehlswaechter-AltExternalSensor.md`](Auftrag-Befehlswaechter-AltExternalSensor.md) | Auftrag an `nodered-flows`: SET40/TOP112 in den `WP_Befehls_Waechter` aufnehmen — erledigt am 2026-09-19 im Projekt `nodered-flows` |
10961096
| [`Auftrag-Heizstab-Notbetrieb.md`](Auftrag-Heizstab-Notbetrieb.md) | Auftrag aus `nodered-flows`: der Notbetrieb nimmt SET39 zurück — beantwortet, gebaut in 3.18.0 |
10971097
| [`Auftrag-Wartungsschalter-NodeRED.md`](Auftrag-Wartungsschalter-NodeRED.md) | Re-Assert-Sperre bei Wartung — beantwortet am 2026-08-20: die Sperre war nie eingeschaltet |
10981098
| [`Massnahmenplan-Codedurchsicht-2026-08-18.md`](Massnahmenplan-Codedurchsicht-2026-08-18.md) | Erste Codedurchsicht: Befunde mit Entscheid je Punkt, auch für die verworfenen; umgesetzt bis 3.9.0 |

0 commit comments

Comments
 (0)