fix: edit ops second review findings

- A group's sunSensor and a shade's flags are refused by name: the routes
  don't set them.
- setPaired needs paired, and without a shade id it is a bad request.
- groupOptions' payload is parsed in ProtoEdits (parseReadPayload).
- The assembler's mutex is static, so creating it can't fail.
- protoIsReadOp and protoIsShadeOp are gone; the tests use protoOpKind.
- Native tests for missing(), offeredRemoteAddress and the edit ops
  against the TYPE table.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
cjkas 2026-10-24 18:29:34 +02:00
parent 8fa087aa89
commit 970256e7f6
13 changed files with 107 additions and 34 deletions

View file

@ -16,7 +16,6 @@
// Every command op except sendRemoteCommand becomes a shade request that
// loop() runs.
bool protoIsShadeOp(uint8_t type);
// nullptr when the payload is good and req is filled in; otherwise what is
// wrong with it, for a bad request reply.
const char *parseShadeOp(uint8_t type, JsonObjectConst d, shade_request_t &req);