homeos/app
HomeOS Bootstrap a4edbbf801 Fix R15: provision a per-device MQTT credential when assigning a device
Assigning a Shelly now issues a real broker credential so the physical device can
connect (onboarding was incomplete before):
- MqttCredentialProvisioner writes a mosquitto-compatible PBKDF2-SHA512 ($7$)
  password line (in PHP) for username = the device's topic prefix, and touches a
  reload trigger. A small wrapper in the mosquitto container (docker/mosquitto/
  config/entrypoint.sh) SIGHUPs mosquitto so it re-reads the passwd live — no
  restart. Verified: a provisioned device authenticates and publishes to its own
  prefix (bound by the pattern %u ACL).
- The credential is shown once on the device page after assignment (enter it into
  the Shelly). passwd is app-owned + world-readable so the web request can write it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-18 00:50:53 +02:00
..
Console/Commands Charts: Chart.js MQTT + host traffic on the Host page 2026-07-18 00:40:32 +02:00
Events Phase 5: UniFi presence — poll, person↔client mapping 2026-07-18 00:31:32 +02:00
Http/Controllers Phase 1: bootstrap — Docker stack, Laravel 13, design system, auth 2026-07-17 21:06:20 +02:00
Jobs Charts: Chart.js MQTT + host traffic on the Host page 2026-07-18 00:40:32 +02:00
Livewire Fix R15: provision a per-device MQTT credential when assigning a device 2026-07-18 00:50:53 +02:00
Models Charts: Chart.js MQTT + host traffic on the Host page 2026-07-18 00:40:32 +02:00
Providers Phase 1: bootstrap — Docker stack, Laravel 13, design system, auth 2026-07-17 21:06:20 +02:00
Services Fix R15: provision a per-device MQTT credential when assigning a device 2026-07-18 00:50:53 +02:00
Support Fix R15: control Shelly Gen2+ via RPC (Switch.Set/Light.Set), not command topic 2026-07-17 22:56:50 +02:00