diff --git a/docs/PLAN.md b/docs/PLAN.md index 9d307fe..f9d61d6 100644 --- a/docs/PLAN.md +++ b/docs/PLAN.md @@ -65,13 +65,13 @@ Glenn's approved design (2026-11-10): ## Phase 4 — Deploy + automate (stack deployed 2026-11-12; phone check pending) -- ✅ Podman compose stack at `/var/mnt/DATA/podman-stacks/bike-tinder/` (release checkout) + systemd unit `podman-stack-bike-tinder.service` (`Delegate=yes`; verified to survive gateway/desktop restarts and re-raise after `systemctl --user restart`) + in-stack Tailscale sidecar (userspace mode) targeting `https://biketinder.tailf35a34.ts.net` — **awaiting Glenn's one-time tailnet authorization** +- ✅ Podman compose stack at `/var/mnt/DATA/podman-stacks/bike-tinder/` (release checkout) + systemd unit `podman-stack-bike-tinder.service` (`Delegate=yes`; verified to survive gateway/desktop restarts and re-raise after `systemctl --user restart`) + in-stack Tailscale sidecar (userspace mode) serving `https://biketinder.tailf35a34.ts.net` — **AUTHORIZED + serving 2026-11-12** (node `biketinder`, `100.114.195.22`; first phone swipes logged through the sidecar) - ✅ `bike-tinder-import` Hermes cron live (08:30 daily, post-hunt): import → live agent read → sqlite backup (14-deep); silent on success (three clean live runs on deploy day) - ✅ DB + image mirror migrated intact into the stack volume; backup drill produced its first files - ✅ Deploy fix (found on first in-container agent call): `requests` was missing from requirements — the host venv had it incidentally, the slim image did not - ✅ Runbook in DESIGN.md (deploy/rollback/logs/import gates/backup-restore/phone checklist) -- ⏳ PWA install + first phone swipe (after sidecar auth); full reboot test -- **Exit criteria:** survives a reboot; refreshes overnight unattended; installable and used from the phone. +- ✅ In use from Glenn's phone (2026-11-12 — first photo flips + swipes logged through the sidecar); PWA "Add to Home Screen" available; full reboot test optional/pending +- **Exit criteria:** survives a reboot (service-level verified; power-level test optional); refreshes overnight unattended (armed, first automatic run 08:30 next day); installable and used from the phone — **achieved 2026-11-12.** ## Non-goals (v1)