No description
A single client sometimes legitimately needs several unrelated topic trees (e.g. hvac-backend needs both shellies/# for TRVs and hvac/mhi/# for MHI aircon) — the previous model only supported one topic_scope per client, forcing either an overbroad '#' grant or multiple broker logins for one app. topic_scope is now newline/comma-parsed into a list; each pattern gets its own ACL grant on the client's role (createDynsecClient loops per topic). Stored newline-joined (still a single TEXT column, no migration). Added PATCH /mqtt-clients/:id (additive: add_topic_scope) to grant a client more topics later without revoking/recreating it — backed by a new addTopicsToRole() in mqtt-dynsec.js. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> |
||
|---|---|---|
| src | ||
| .env.example | ||
| .gitignore | ||
| docker-compose.yml | ||
| Dockerfile | ||
| package-lock.json | ||
| package.json | ||