Build and Push Docker Image / build (push) Successful in 6m24s
A real Alarm Manager POST was rejected in production with `missing field "group"`. The payload model required nine fields the handler never reads (conditions, sources, name, eventPath, eventLocalLink, eventId, group, key, zones), so any absent one made serde reject the whole JSON and the plate was lost. Model only what is read — device, timestamp, value, thumbnail, snapshot — and document why the struct must stay lean. Regression test uses the payload shape observed on 2026-08-06. Stop logging the database URL in init_db: it printed the password in clear text, and startup already logs it via redacted_database_url(). The kauai .env pointed the database at 10.2.0.200, which is no host — the container crashlooped on first deploy with "No route to host". Use the postgres:5432 DNS alias on traefik_proxy, like the other stacks.