diff --git a/memory/2026-02-22.md b/memory/2026-02-22.md index 52096aa..6c47737 100644 --- a/memory/2026-02-22.md +++ b/memory/2026-02-22.md @@ -49,3 +49,84 @@ - Check for DNS rewrite rules (AdGuard) not just cache when DNS issues persist - "It should not be so complicated" — when debugging gets multi-step, step back and ask if the feature is even needed - Test features end-to-end myself before reporting "done" + +## Sophia MRI - Feb 22 Update + +### Dr. Madan no longer available +- Dr. Neel Madan (Chief Neuroradiology, Tufts) — his father-in-law is terminally ill +- Johan returning to AI-assisted radiological interpretation +- Historical track record: AI analysis has been more accurate than formal radiology reports + +### MRI Discussion (Dec 31, 2025 scan) +- FLAIR showed FULL periventricular halo ("full aura") — not the two-point cap pattern +- Full halo = less specific (could be white matter disease from injury OR active hydrocephalus) +- Two-point pattern (frontal + occipital caps) = more specific for active CSF pressure +- Temporal horns NOT mentioned in radiology report — significant gap +- Temporal horn dilation = most specific sign of active hydrocephalus +- Key question for analysis: is ventriculomegaly disproportionate to cortical atrophy? +- Need: temporal horn width measurement, V/S ratio, FLAIR pattern characterization +- Johan to send screenshots: T2 axial (temporal horn level), FLAIR axial, T1 sagittal midline from Dec 31 scan in inou + +## Sessions Spawn — RESOLVED (evening Feb 22) +- Root cause: OC 2026.2.21 update stripped `operator.write+read` scopes from tokens +- Fix: manually restored scopes in `device-auth.json` + `paired.json`; gateway restarted +- Automated: `oc-scope-watchdog.service` now restores scopes within 30s of any gateway restart +- Script: `~/clawd/scripts/scope-watchdog.py`; drop-in: `~/.config/systemd/user/openclaw-gateway.service.d/scope-fix.conf` +- sessions_spawn confirmed working from conversation sessions as of Feb 22 evening + +## Gemini 3.1 Pro — Enabled in OpenClaw (Feb 22) +- Plugin `google-gemini-cli-auth` set to `enabled: true` in openclaw.json +- Model: `google/gemini-3.1-pro-preview` +- Uses existing Gemini CLI OAuth (johan@jongsma.me) +- Accessible via `session_status(model="google/gemini-3.1-pro-preview")` +- Confirmed working; best for medical/science analysis (77.1% ARC-AGI-2, top science benchmarks) +- Only works in main session (CLI OAuth); subagents need Gemini API key for native access + +## Weekly Docker Maintenance (Sunday Feb 22) +- HAOS v17.1 — no update needed +- Immich, ClickHouse, Jellyfin, Signal: updated on 192.168.1.253 +- qbittorrent-vpn: pulled only (do NOT start — Johan uses on-demand) + +## Weekly Memory Synthesis (Feb 22) +- MEMORY.md updated with full weekly synthesis +- Two subagent timeouts before doing synthesis manually +- Key themes: infra consolidation, sessions-are-not-free architecture, open-weight model surge, Fish Audio TTS validated, OpenClaw auth risk, SnappyMail = "it should not be this complicated" + +## X Watchlist Updates (Feb 22) +- @moltbot: account not found — removed from all watchlists +- Added: @OpenAI, @MiniMax_AI, @Kimi_Moonshot, @ZhipuAI, @Gemini, @steipete, @RapidResponse47 +- AI lab accounts (@OpenAI etc.) filter: hard news only (model releases, pricing, major launches) +- AI lab accounts post constantly — must drop everything else silently + +## TOOLS.md + MEMORY.md Security +- Both confirmed in .gitignore — not tracked in git +- API keys in `~/.openclaw/openclaw.json`, not in system prompt files +- No exposure risk + +## AirLLM Test +- Qwen2.5-7B-Instruct runs on forge's GTX 970 (4GB VRAM) via AirLLM layer offloading +- Speed: 6.1s/token (slow but works) +- Proves 70B models are theoretically runnable at ~8-12s/token +- Fix for install: `optimum==1.22.0` +- Significance: local medical model analysis now viable for non-sensitive-latency tasks + +## Jacques/Rozemarijn Stalwart Login Fix +- Renamed Stalwart accounts to full email format (jacques@jongsma.me, rozemarijn@jongsma.me) +- IMAP verified working for both +- Credentials sent in Dutch via Signal + +## Open Items as of 8PM Feb 22 +- Johan to send Sophia MRI screenshots for Gemini 3.1 Pro analysis +- Johan to manually cancel HostKey server #53643 (cancel URL sent via Signal) +- Verizon Auto Pay enrollment — saves $30/mo before March 4 billing cycle +- Dealspace public domain (dealspace.jongsma.me) if Misha wants external access +- Dealspace design questions: org signup, buyer concept, subscription plan, doc↔request linking, per-buyer permissions, CRM +- Remove stale `amsterdam.inou.com` from `overview-dns-zones.csv` +- Gemini API key (optional) for subagent Gemini access (currently main session only) + +## Nightly Maintenance (9 PM) +- OS updates: 0 packages upgraded (all up to date) +- Claude Code: 2.1.50 (up to date; `npm update` ran, changed 1 dependency) +- OpenClaw: 2026.2.21-2 (up to date; check-updates.sh has regex false-positive for `-2` suffix) +- Session cleanup: removed 10 orphaned .jsonl files (~7.5 MB), removed 10 :run: keys from sessions.json +- Working context written to memory/working-context.md diff --git a/memory/claude-usage.db b/memory/claude-usage.db index d26d712..4e4679a 100644 Binary files a/memory/claude-usage.db and b/memory/claude-usage.db differ diff --git a/memory/claude-usage.json b/memory/claude-usage.json index 12109ef..28f8740 100644 --- a/memory/claude-usage.json +++ b/memory/claude-usage.json @@ -1,9 +1,9 @@ { - "last_updated": "2026-02-22T23:00:01.519944Z", + "last_updated": "2026-02-23T05:00:01.588236Z", "source": "api", - "session_percent": 23, - "session_resets": "2026-02-23T00:00:00.496104+00:00", - "weekly_percent": 21, - "weekly_resets": "2026-02-28T19:00:00.496121+00:00", - "sonnet_percent": 25 + "session_percent": 0, + "session_resets": null, + "weekly_percent": 22, + "weekly_resets": "2026-02-28T19:00:00.557934+00:00", + "sonnet_percent": 26 } \ No newline at end of file diff --git a/memory/heartbeat-state.json b/memory/heartbeat-state.json index e6ca24c..7d4deed 100644 --- a/memory/heartbeat-state.json +++ b/memory/heartbeat-state.json @@ -14,6 +14,6 @@ "lastDocInbox": "2026-02-20T14:30:00.000Z", "lastTechScan": "2026-02-22T15:55:54.305561Z", "lastMemoryReview": "2026-02-22T01:03:37.069142Z", - "lastIntraDayXScan": "2026-02-22T22:00:26.799317+00:00", + "lastIntraDayXScan": "2026-02-23T03:32:00.000000+00:00", "lastInouSuggestion": "2026-02-22T14:30:55.694675+00:00" } \ No newline at end of file diff --git a/memory/pending-flags.md b/memory/pending-flags.md new file mode 100644 index 0000000..d1704b9 --- /dev/null +++ b/memory/pending-flags.md @@ -0,0 +1,6 @@ +# Pending Flags (clear when delivered) + +## Tanya → TD Snap (2026-02-22 ~21:54 ET) +Tanya shared a link to **TD Snap** (Tobii Dynavox) on WhatsApp — AAC (Augmentative & Alternative Communication) software with eye gaze, touch, and switch access. Almost certainly researching for Sophia. + +**Action:** Flag to Johan when night shift starts (10:30 PM+). He should know Tanya is actively looking at AAC tools. diff --git a/memory/updates/2026-02-22.json b/memory/updates/2026-02-22.json index 0931968..cae70c1 100644 --- a/memory/updates/2026-02-22.json +++ b/memory/updates/2026-02-22.json @@ -1,20 +1,29 @@ { "date": "2026-02-22", - "timestamp": "2026-02-22T09:00:01-05:00", + "timestamp": "2026-02-22T21:00:00-05:00", + "run": "nightly_9pm", "openclaw": { "before": "2026.2.21-2", "latest": "2026.2.21-2", - "updated": false + "updated": false, + "note": "check-updates.sh regex false-positive for -2 suffix; actual version matches" }, "claude_code": { "before": "2.1.50", "latest": "2.1.50", - "updated": false + "updated": false, + "note": "npm update ran, changed 1 dependency (not claude-code itself)" }, "os": { - "available": "0\n0", + "upgraded": 0, "updated": false, - "packages": [] + "note": "All packages up to date" + }, + "session_cleanup": { + "orphaned_jsonl_removed": 10, + "orphaned_bytes_freed": 7489794, + "run_keys_removed": 10, + "sessions_remaining": 40 }, "gateway_restarted": false -} \ No newline at end of file +} diff --git a/memory/working-context.md b/memory/working-context.md index 48dce24..95ba640 100644 --- a/memory/working-context.md +++ b/memory/working-context.md @@ -1,61 +1,81 @@ -# Working Context — 2026-02-21 (updated 9 PM nightly maintenance) +# Working Context — 2026-02-22 (updated 9 PM nightly maintenance) -## What we did today (Sat Feb 21) +## What we did today (Sun Feb 22) -### Infrastructure -- Forge rebooted cleanly after systemd-hwe-hwdb update (255.1.6→255.1.7) -- Amsterdam VPS fully decommissioned: Docker containers removed, DNS deleted, HostKey cancellation submitted - - HostKey server #53643: cancellation still may need Johan to confirm manually at https://panel.hostkey.com/controlpanel.html?key=639551e73029b90f-c061af4412951b2e -- OpenClaw 2026.2.21 released today (Gemini 3.1 support, 100+ security fixes, Discord voice, thread-bound subagents) +### Sessions Spawn — RESOLVED 🎉 +- Root cause: OC 2026.2.21 update stripped `operator.write+read` scopes from tokens +- Fix: manually restored scopes in `device-auth.json` + `paired.json`; gateway restarted +- Automated: `oc-scope-watchdog.service` → `~/clawd/scripts/scope-watchdog.py` +- Drop-in: `~/.config/systemd/user/openclaw-gateway.service.d/scope-fix.conf` +- sessions_spawn confirmed working from conversation sessions -### Cron jobs cleaned up -- Evening Briefing: removed dead Shannon/Amsterdam step -- Weekly Security Scan: fixed model name, removed amsterdam.inou.com target -- Watchdog: removed Claude usage → Fully tablet (violates no-tablet rule) -- inou.mcpb: removed from check-updates.sh and Nightly Maintenance entirely (server-based now) +### Webmail (abandoned) +- SnappyMail on Docker → hours of debugging → nuked +- Root cause: AdGuard wildcard rewrite (*.jongsma.me → home IP) + hairpin NAT +- Lesson: all popular self-hosted webmail is PHP; Stalwart's UI is admin-only +- webmail.jongsma.me DNS deleted, Caddy entry removed -### sessions_spawn — partially fixed, still broken -- bind changed to `custom` + `customBindHost: 0.0.0.0` in `/home/johan/.openclaw/openclaw.json` -- URL now uses loopback (ws://127.0.0.1:18789) — security check passes -- Still failing: "pairing required" (1008) — device auth for agent-to-agent not bypassed -- `dangerouslyDisableDeviceAuth` only applies to controlUi, not subagent spawning -- Impact: intra-day X scans and inou suggestions can't spawn from heartbeat; cron jobs unaffected +### Dealspace (~/dev/dealroom, port 9300) — Major Sprint +- 14 UX changes: closing probability removed, new stat cards, last accessed, New Room modal, search, per-deal analytics/audit/contacts, request lists grouped by deal +- Production auth: bcrypt, demo login removed +- Accounts: `misha@muskepo.com` / `Dealspace2026!` (owner); `misha.buyer@muskepo.com` (buyer workaround, now replaced) +- View toggle feature: owner/admin can switch between seller/buyer view within same session +- Commit: eb103b4 +- Accessible at http://192.168.1.16:9300 (no public domain yet) -### Mail — Stalwart (Zurich) -- Jacques + Roos account names updated to full email (easier on iPhone) - - `jacques` → `jacques@jongsma.me` (pw: `7I#rydMKlri6r%!g`) - - `rozemarijn` → `rozemarijn@jongsma.me` (pw: `cRKEWJL4h3MGn3Li`) -- Dutch setup instructions sent to both via Signal -- Stalwart admin API: `http://127.0.0.1:8880/api/principal` (HTTP Basic `admin:agolM71pOwZBJhggROBDkn8R`) +### Gemini 3.1 Pro — Enabled +- Plugin `google-gemini-cli-auth` enabled in openclaw.json +- Model: `google/gemini-3.1-pro-preview` +- Best for medical/science analysis (77.1% ARC-AGI-2) +- Only works in main session (CLI OAuth); subagents need Gemini API key -### Alert Dashboard / Fully -- Pace visibility fixed: was hidden below 75% usage, now shows when `timePct > 0` -- Saturday dead zone: effective week = 161h (7h sleep subtracted) — pace now accurate -- Claude weekly reset: happened ~2 PM ET today, usage at ~2% after reset +### Sophia MRI Discussion +- Dr. Madan no longer available (father-in-law terminally ill) +- Returning to AI-assisted radiological interpretation +- Dec 31, 2025 FLAIR scan: full periventricular halo (less specific) +- Temporal horns NOT mentioned in report — significant gap +- Need: temporal horn width, V/S ratio, FLAIR pattern characterization +- Johan to send screenshots from inou app for Gemini 3.1 Pro analysis -### AGENTS.md / SOUL.md updates -- SOUL.md: mission statement added ("Get Sophia the treatment she deserves...") -- AGENTS.md: two new rules (no force push; never guess config changes) -- HEARTBEAT.md: added intra-day X watch + inou daily suggestion sections -- memory/inou-context.md: created for subagent context +### Weekly Docker Maintenance (Sunday) +- HAOS v17.1 — no update +- Immich, ClickHouse, Jellyfin, Signal: updated on 192.168.1.253 +- qbittorrent-vpn: pulled only (NOT started — on-demand) -### Evening Briefing (8:02 PM) -- Key: SCOTUS struck Trump emergency tariffs; 10-15% global tariff retaliation -- SentinelOne +4.35% (short working against Johan) -- NABL -11.18% post Q4 earnings (downgraded to Hold) -- Gemini 3.1 Pro launched Feb 19 +### Weekly Memory Synthesis +- MEMORY.md fully synthesized (after 2 subagent timeouts, done manually) +- Key themes: infra consolidation, sessions-are-not-free, open-weight surge, Gemini 3.1 Pro -## Open items -1. **sessions_spawn "pairing required"** — unknown fix; needs investigation when OpenClaw 2026.2.21 updates -2. **HostKey cancellation** — Johan must confirm manually if email arrives -3. **Weekly Docker/HAOS/Memory Synthesis** — due Sunday Feb 22 -4. **jongsma.me domain transfer** — expires 2026-02-28 (7 days!) — check if transferred yet -5. **overview-dns-zones.csv** — still has stale amsterdam.inou.com entry +### X Watchlist Updates +- @moltbot removed (account not found) +- Added: @OpenAI, @MiniMax_AI, @Kimi_Moonshot, @ZhipuAI, @Gemini, @steipete, @RapidResponse47 +- AI lab accounts: filter hard news only (model releases, pricing, launches) -## Key facts +### Infrastructure (from yesterday — still relevant) +- Amsterdam VPS: fully decommissioned, DNS deleted, HostKey cancellation submitted +- Stalwart v0.15.5 on Zurich (mail.jongsma.me) +- Jonas/Rozemarijn accounts renamed to full email format (IMAP verified) + +### AirLLM Test +- Qwen2.5-7B-Instruct works on GTX 970 via layer offloading (6.1s/token) +- 70B theoretically viable at ~8-12s/token +- Local medical analysis now viable for non-latency-sensitive tasks + +## Open Items +1. **Sophia MRI screenshots** — Johan to send from inou app for Gemini analysis +2. **HostKey cancellation** — Johan to confirm at https://panel.hostkey.com/controlpanel.html?key=639551e73029b90f-c061af4412951b2e +3. **Verizon Auto Pay** — saves $30/mo, due before March 4 +4. **Dealspace design decisions** — org signup, buyer concept, subscription plan, doc↔request linking, per-buyer permissions, CRM +5. **Dealspace public domain** — dealspace.jongsma.me if Misha wants external access +6. **Remove stale entry** — `amsterdam.inou.com` in `overview-dns-zones.csv` +7. **Gemini API key** (optional) — for subagent Gemini 3.1 Pro access +8. **jongsma.me domain transfer** — expires 2026-02-28 (6 days!) — check if transferred + +## Key Facts - Stalwart on Zurich (82.22.36.202), admin port 8880 - Vaultwarden on Zurich port 8080 -- Claude weekly reset: Sat ~2 PM ET (happened today) -- sessions_spawn broken from conversation/heartbeat sessions (cron unaffected) -- Amsterdam: fully decommissioned (all services on Zurich) -- OpenClaw 2026.2.21 released today +- Claude weekly reset: Sat ~2 PM ET (reset happened yesterday, ~2% usage now) +- sessions_spawn: WORKING (scope watchdog live) +- Amsterdam: fully decommissioned +- OpenClaw 2026.2.21-2 running +- Dealspace: production-ready, no public domain yet