Log
Reading, sketches, parked experiments, and things I quietly shipped. Not essays — just a dated trail.
- shipped
Turned an old Nest into the office aircon dial
Flashed a Gen 2 Nest with No Longer Evil, self-hosted the control path on Unraid, and wired it into Home Assistant as the physical temperature dial for the garden office AC. It now handles heat/cool decisions, presence, opening sensors, active hours, override, fan speed, and quiet mode. Full write-up to follow.
- shipped
Added layered monitoring for flaky WiZ Library bulbs
Reserved fixed IPs for the five Library WiZ Matter-over-Wi-Fi bulbs and changed Home Assistant to alert when either the Matter light entities or the Wi-Fi presence trackers drop offline. A quick search showed I am not alone with these WiZ bulbs needing power cycles or falling unavailable in Home Assistant.
- note
Retired hostname monitor moved to the new GymCoach URL
GymCoach AI was healthy on the new hostname, but New Relic was still checking the retired one and reporting failures. Updated the synthetic monitor instead of chasing the app, then waited for the old failed samples to age out of Grafana.
- note
Fixed a backup health check that cried wolf
The new Production Shaped admin health page warned that backups were stale, but the backups were fine. The check only looked for flat files and missed the dated backup folders. Fixed it to recurse before wiring the alert anywhere noisy.
- shipped
Dehumidifier joined the household (Meaco Arete Two, 12L)
Paired through Smart Life, surfaced into Home Assistant, tank-full alerts go to both adult phones. Currently in observe-only mode for a week — I want to see how long it actually runs each day before adding any automation. The library is 4m x 3m with a wall of books; the rear radiator arrives Tuesday.
- shipped
Shipped 06:45 bin-day notifications to three phones
A Home Assistant automation that pings the household before anyone's downstairs on bin-day morning, with the colour of the bin. The kind of thing that justifies itself in three days and is invisible after a week.
- shipped
Shipped v1 of productionshaped.com
Astro on scc_contabo via the usual Pattern A CI/CD. Two essays, three notes, hand-drawn schematics, OG images, RSS.
- shipped
Removed the extra nginx container from Production Shaped
Production Shaped now runs Astro’s Node server directly behind the Cloudflare tunnel. nginx had been there mostly from habit: Cloudflare handles compression, Astro handles headers, and the tunnel is the real edge. One less container in the deploy path.
- reading
Re-reading the SRE Workbook SLO chapters
Specifically the bits on multi-tier SLOs and burn-rate alerting. Looking at whether I can lift the framing for some smaller-scale things at home.
- note
Drill restore — second one this year
Pulled from the off-site Pi, mounted the dump on a fresh container, verified row counts. Found a path-assumption bug in the restore script (now fixed). Wrote it up as a note.
- parked
SPOF + IoT-bypass + non-engineer support overhead. Replaced with one router-line change to Cloudflare for Families. Project entry written up.
- sketch
Sketched the homelab as a single SVG
Three boxes, two arrows, one off-site dashed line, one Cloudflare cloud. Now used at the bottom of the production-system essay and on the homelab project page.