Merge branch 'main' of git.stroblme.de:Fluksio/app

This commit is contained in:
2026-08-22 12:54:36 +02:00
+12
View File
@@ -101,6 +101,18 @@ external interfaces. See `docs/architecture/structure.canvas` → *Backend M
that gets updated costs one retry rather than a reconfiguration. The that gets updated costs one retry rather than a reconfiguration. The
payload is identical across both, so only the transport moved. Verified payload is identical across both, so only the transport moved. Verified
against one unit of each generation, read and command against one unit of each generation, read and command
- [x] The aircon rig covers both units and both firmware generations: one
`wfrac` node each in `aircon_control`, polling as well as commanding, so
the panel shows what a unit answers next to what was asked of it. Three
things had to be fixed before a panel could actually drive one. The
seeded `commands` catch is off, which is the usual reason a fresh panel
looks dead — `AIRCON_COMMANDS=1` arms it at seed time. A unit that is off
names no mode and reports `unknown`, and a flow redelivers every bound
port on each run, so rejecting it made an idle unit impossible to start;
it now travels through untouched. And the old firmware serves one
connection at a time, answering an overlapping request with 501 — the
connector serialises per adapter and retries a busy one, which it must,
because other clients on the network are outside that lock
- [x] Node lifecycle as a protocol (`start`/`stop`/`report_health` on `Node`), - [x] Node lifecycle as a protocol (`start`/`stop`/`report_health` on `Node`),
replacing the controller's per-type isinstance chains — the same hooks a replacing the controller's per-type isinstance chains — the same hooks a
connector implements, validated on the built-in nodes first connector implements, validated on the built-in nodes first