36 DHCP-Reservierungen wandern aus dem Pool-Fenster (.5, .8, .202-.244) in die Schema-Baender .11-.14 / .151-.176 / .177-.196. Dazu die CCU-Leiche .232 (status=waiting, last-seen=never; die CCU lebt in VLAN20) entfernt und SONOFF-NSPanelPro von einer dynamischen Lease auf .249 zu einer statischen Reservierung auf .12 gepinnt. Neuer Job `tp45-v30-leases` in gc-configplan.py. Er laedt MOVES/REMOVE/ADDS per importlib aus tp45-leases.py, statt sie zu kopieren -- die Tabelle dort ist die SSoT des Umzugs, eine zweite Kopie liefe still auseinander. Warum der Job zwei Selektor-Formen traegt: die erste Fassung schrieb ueberall `[/ip dhcp-server lease [find where ...]]`. In `[:len ...]` ist das Syntaxfehler (`expected command name (line 1 column 55)`, live gemessen) -- Golden Config meldete trotzdem Job SUCCESS und Plan Completed, das Geraet blieb unveraendert. Aufgefallen ist es an der Zahl der Log-Zeilen: von 38 `:if`-Statements hat kein einziger Zweig geloggt. Richtig ist `[/ip dhcp-server lease find where ...]` ohne Klammerpaar um `find`; die Argument-Form `set [find where ...]` bleibt. Abnahme am Geraet, nicht am Plan-Status: 39 Leases im Soll-Schema, .232 und .249 geraeumt, NSPanelPro dynamic=false; Compliance 145/145, keine Drifts. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
39 KiB
39 KiB