Decommission HealthLog - #60
Merged
Merged
Conversation
Fifth app torn down for not earning its keep, same procedure as the four on 2026-08-04. Medication tracking had already moved to MedTimer; a better solution now covers what was left. Removed: both containers (app + Postgres sidecar), both images, the healthlog_default network, the Caddy site block, Uptime Kuma monitor #26, the public A record, the NextDNS LAN rewrite, healthlog/ (including the 187 MB Postgres datadir) and scripts/pass-create-healthlog-secrets.sh. Unwired from automation: - scripts/dump-databases.sh the healthlog-postgres pg_dump, and `healthlog` in the post-dump health check - kopia-mac/backup.sh the data/ and pgdata/ snapshot sources THE HEALTH DATA IS KEPT, and this one mattered more than the others — it is years of vitals, sleep, mood questionnaires and Samsung Health sync, none of it reconstructible. A logical pg_dump was taken while the app was still running (133 tables, 131 data sections, 38,587 measurement rows, clean terminator), then the containers were stopped — Postgres exited 0, a clean checkpoint — and the whole directory cold-archived including the datadir. Both live in db-dumps/decommissioned/, both restore-tested back out of Backblaze B2 and matched by sha256, and the restored dump re-read as valid SQL with all 133 tables. The Kopia sources were set to --manual so they drop out of nightly verification while keeping their history, and the HealthLog Pass item was retained. The Postgres image was removed too, after checking it was not shared: the identical digest is pinned by LiteLLM, but that runs on slartibartfast, a different host with its own image store. Cross-references cleaned up rather than left dangling. HealthLog was cited as a live example in five other places — Paperless' Caddy block borrowed its access-control rationale, and docs/immich/litellm/wanderer referenced its port choice, Postgres pin, sidecar hostname and first-registrant- becomes-admin race. Each is now either self-contained or explicitly marked as historical. The 2026-07-31 launchd PATH incident note in the plist keeps its healthlog reference: that is a record of what happened, not a pointer to something live. Verified: dump script and full backup run clean (exit 0, no failures), and verification passes over 37 sources — 0 stale, 0 dirty, 8 dormant — with HealthLog correctly absent from the active set. Caddy validates and reloads; healthlog.mathewcsims.uk is dark and every surviving site still serves. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fifth app torn down for not earning its keep, same procedure as the four on 2026-08-04. Medication tracking had already moved to MedTimer; a better solution now covers what was left.
Removed
Both containers (app + Postgres sidecar), both images, the
healthlog_defaultnetwork, the Caddy site block, Uptime Kuma monitor #26, the public A record, the NextDNS LAN rewrite,healthlog/(including the 187 MB Postgres datadir) andscripts/pass-create-healthlog-secrets.sh.scripts/dump-databases.shhealthlog-postgrespg_dump;healthlogin the post-dump health checkkopia-mac/backup.shdata/andpgdata/snapshot sourcesThe Postgres image was removed too, after checking it wasn't shared: the identical digest is pinned by LiteLLM, but that runs on slartibartfast, a different host with its own image store.
The health data is kept — this one mattered more
Years of vitals, sleep, mood questionnaires and Samsung Health sync, none of it reconstructible. So:
pg_dumptaken while the app was still running — 133 tables, 131 data sections, 38,587 measurement rows, clean terminator.Kopia sources set to
--manualso they drop out of nightly verification while keeping their history. The HealthLog Pass item retained.Cross-references cleaned up, not left dangling
HealthLog was cited as a live example in five other places: Paperless' Caddy block borrowed its access-control rationale, and
docs/immich/litellm/wandererreferenced its port choice, Postgres pin, sidecar hostname and first-registrant-becomes-admin race. Each is now either self-contained or explicitly marked historical.The 2026-07-31 launchd PATH incident note in the backup plist keeps its
healthlogreference deliberately — that's a record of what happened, not a pointer to something live.Verification
healthlog.mathewcsims.ukis dark and every surviving site still serves (owl200,vikunja200,docs200,paperless302,immich200, …).🤖 Generated with Claude Code