Publish curated LumaOps source from c85ee9ef8f1454f5c305398902afbb9e6738de40
Managed validation / full (push) Failing after 8s

This commit is contained in:
Public Source Publisher committed 2026-09-30 00:26:45 +00:00
1 parent 91f8b3e3c1
commit def7920856
2271 files changed
+501225 -501178

No files matched your search

+19 -19
View File
@@ -1,19 +1,19 @@
# Connectoren ontwikkelen
Alle hardware- en netwerkbronnen implementeren de connectorcontracten onder lumaops/backend/src/lumaops_backend/connectors. De rest van backend en frontend werkt alleen met genormaliseerde Device, DeviceState, Capabilities en ConnectorHealth-objecten.
Een connector levert minimaal id, kind, configuratieschema, start/stop, discovery, inventory, state lezen/schrijven, connectietest, health en identify. Fouten worden vertaald naar stabiele LumaOps-foutcategorieën. Secrets worden via SecretStore versleuteld en verschijnen nooit in configschema, logs of responses.
Ontwikkelvolgorde:
1. Voeg modellen en adapter toe zonder merkcode in de UI.
2. Normaliseer stabiele identiteit met bron, vendor/model, serienummer, locatie of netwerkidentiteit; gebruik nooit alleen een lijstindex.
3. Declareer capabilities conservatief en stuur geen niet-ondersteunde velden.
4. Voeg timeouts, begrensde reconnect-backoff, rate limiting en health toe.
5. Schrijf contracttests, parserfixtures en fouttests.
6. Registreer de connector in ConnectorRegistry en toon hem automatisch via /api/v1/connectors.
OpenRGB is de referentie-implementatie. De packetcodec is geïsoleerd in connectors/openrgb/protocol.py en de async I/O in adapter.py. Een nieuwe connector mag die binaire details niet naar services lekken.
WLED en Home Assistant zijn de eerste geplande uitbreidingen. Detecteer dubbele eigenaars voor WLED via DDP/E1.31 en laat owner één van openrgb, native, home_assistant of unmanaged zijn. MQTT, ESPHome, HTTP en remote agents passen in hetzelfde contract.
# Connectoren ontwikkelen
Alle hardware- en netwerkbronnen implementeren de connectorcontracten onder lumaops/backend/src/lumaops_backend/connectors. De rest van backend en frontend werkt alleen met genormaliseerde Device, DeviceState, Capabilities en ConnectorHealth-objecten.
Een connector levert minimaal id, kind, configuratieschema, start/stop, discovery, inventory, state lezen/schrijven, connectietest, health en identify. Fouten worden vertaald naar stabiele LumaOps-foutcategorieën. Secrets worden via SecretStore versleuteld en verschijnen nooit in configschema, logs of responses.
Ontwikkelvolgorde:
1. Voeg modellen en adapter toe zonder merkcode in de UI.
2. Normaliseer stabiele identiteit met bron, vendor/model, serienummer, locatie of netwerkidentiteit; gebruik nooit alleen een lijstindex.
3. Declareer capabilities conservatief en stuur geen niet-ondersteunde velden.
4. Voeg timeouts, begrensde reconnect-backoff, rate limiting en health toe.
5. Schrijf contracttests, parserfixtures en fouttests.
6. Registreer de connector in ConnectorRegistry en toon hem automatisch via /api/v1/connectors.
OpenRGB is de referentie-implementatie. De packetcodec is geïsoleerd in connectors/openrgb/protocol.py en de async I/O in adapter.py. Een nieuwe connector mag die binaire details niet naar services lekken.
WLED en Home Assistant zijn de eerste geplande uitbreidingen. Detecteer dubbele eigenaars voor WLED via DDP/E1.31 en laat owner één van openrgb, native, home_assistant of unmanaged zijn. MQTT, ESPHome, HTTP en remote agents passen in hetzelfde contract.