2026-04-19 Daily Notes
Aundrea's Phone CalDAV β Done
- Same setup as Matt:
cal.hoffdesk.com,assistantuser - Both phones synced on shared family calendar
Gaming PC OpenSSH Bridge β Done
- Windows OpenSSH Server installed, SSH key auth working
- SCP workaround: Python pipe on remote side (Windows
scpbinary mode broken) - Backup script updated:
REMOTE_HOST=matthew@matt-pc.tail864e81.ts.net
Newsletter Bug Fixes
notifyNameError:_route_newsletter_items()now takes explicitnotify+email_subjectparams- Classification prompt: Updated
email_classify.txtβ multi-topic/week-ahead emails now route to newsletter, not appointment - Day-of-week correction: Added
claimed_day_of_weekto both appointment and newsletter extraction prompts - Duplicate calendar events: Cleaned up; dedup logic was fine, duplicates from re-processing during debug
- Commit
87beb5dpushed
Auth Failure Circuit Breaker β Built
- 3 IMAP auth failures β trips β ONE alert β silence for all subsequent
- Auto-resets on success, manual reset via CLI or state file deletion
~/.family_assistant/auth_circuit_breaker.json(gitignored)
Repo PII Audit & Cleanup
- Removed
scripts/research_agent/,scripts/research_cli.py, stale test file - Scrubbed all hardcoded passwords, IPs, domains, paths from production code
- README + WEBHOOK_DEPLOY fully rewritten for sovereign stack
pyproject.tomlv1.0.0 β removed Google API deps, added caldav/icalendar/chromadb/fastapi/uvicorn- Repo: 45 files, zero PII
Revenue Opportunities β Decision Record
- Analysis complete. Full details in
research/revenue-opportunities-2026-04-19.md - Top picks: ClawHub skills β Deployment retainers β Document API β Email-to-Calendar SaaS
- PT clinic vertical: interesting but needs EMR write-access validation with 3 clinic directors before committing
- Status: On hold. No active work. Do not continue research without Matt's explicit request.
Costco Route Telegram Bot β Built & Live
/costco <items>β route-optimized shopping list- Inline calibration buttons for zone reassignment
- Three-layer classification: ChromaDB lookup β LLM β sanity checks
- Sanity checker + validation pipeline catches LLM hallucinations
- Instacart 2017 dataset seeded: 49,688 products β ChromaDB
- Two-tier matching: user calibration (0.85 threshold), instacart seed (0.93)
- Bug fixes: ChromaDB false matches (threshold raised), LLM hallucination/dropping items
- Bot running:
cd costco-route && source .env && python3 -m costco_route.bot
Recipe Extractor β Built
costco_route/recipe_extractor.pyβ URL β fetch + extract + zone classify + save- Telegram bot:
/recipe <url>,/recipes, auto-detect URLs in free text - Local Rolodex:
~/.costco_route/recipes/{slug}.json
HoffDesk Web β Sprint 1 APPROVED
- Project plan:
shared/project-docs/hoffdesk-web-project.mdβ APPROVED by Director - Sprint 1: Family Dashboard MVP (calendar + weather + health)
- Architecture: Cloudflare Pages (frontend), FastAPI on Beelink (API via CF Tunnel + CF Access Email OTP), HTMX + Tailwind
- Socrates Day 1: CF Tunnel proof-of-life β THEN aggregate API spec
GET /api/today - Daedalus Day 1: Design tokens (unblocked, start immediately)
- Briefings updated with Director's explicit priorities
- Next: Wadsworth to track tunnel progress, specialists to check in
Security Lockdown β Director's Orders Executed
2026-04-20 ~00:50 UTC
Wadsworth tasks (COMPLETED):
1. β
Heartbeat config verified β already correct (target=last, every=30m, lightContext=true)
2. β
chmod 600 applied:
- ~/.openclaw/agents/daedalus/agent/auth-state.json
- ~/.openclaw/agents/main/agent/auth-state.json
- ~/.config/radicale/rights
3. β
plugins.allow reviewed β no phantom entries found
Socrates tasks (IN PROGRESS β parallel):
1. βΈοΈ Pause dashboard tunnel (10 min hold)
2. Update OpenClaw config β Daedalus primary model to cloud β
(already done)
3. Bind Radicale strictly to 127.0.0.1
4. Enable UFW β allow OpenSSH + Tailscale only
5. Disable PasswordAuthentication in /etc/ssh/sshd_config
**Outstanding
- Auth circuit breaker commit pending (code written, needs push)
- Drop-Box Drive + Telegram image interception (blocked on Google)
- Multi-calendar, Docker Compose, YAML prompts (post-v1.0)
- Costco bot: no systemd service yet, multi-store support