[2026-04-28] personal-os catch-up plan, personal-os state snapshot
This commit is contained in:
@@ -0,0 +1,99 @@
|
||||
---
|
||||
source: raw/personal-os-state-2026-04-27.md
|
||||
content_hash: 1640cb63145b49263b9476e2c39fe443ac561fdf6c27faccc50cfc8568552614
|
||||
namespace: work
|
||||
last_synced: 2026-04-28
|
||||
confidence: 0.8
|
||||
tags: [personal-os, state, executor, infrastructure]
|
||||
---
|
||||
|
||||
# Personal OS — State Snapshot (2026-04-27)
|
||||
|
||||
Current state of the system after the [[personal-os-catchup-plan-2026-04-27]] was executed. Supersedes earlier state and v3 plan documents.
|
||||
|
||||
## Infrastructure (✅ live)
|
||||
|
||||
- **Postgres on Mac** — tables: `tasks`, `stories`, `task_edges`, `sync_state`, `signal_queue`, `activity_daily` (+ `quadrant` col), plus new `corrections_log`, `executor_runs`. See [[personal-os-schema]].
|
||||
- **sync.js** — 4-source Asana fetch, incremental deltas, sweepRecentlyCompleted
|
||||
- **generate-status.js** — DB → `status.md` + `asana_context.md`; live blocks: 5 advisor opps, 8 visibility gaps, 10 executor queue items in first run
|
||||
- **ActivityWatch** — DDG browser + Xcode watchers
|
||||
- **Hermes v0.11.x** — launchd daemon `ai.hermes.gateway`, Claude Code OAuth, `claude-sonnet-4-6`
|
||||
- **Discord bot Орёл#0898** — channels `#daily-brief #inbox #focus #executor #projects #journal #retrospector`
|
||||
|
||||
See [[personal-os-architecture]] and [[personal-os-sync-pipeline]] for component detail.
|
||||
|
||||
## Schedule
|
||||
|
||||
**Hermes cron jobs (8):** data-pipeline (every 30min), morning-brief (08:30), eod-summary (18:00), inbox-check (every 30min, 9-19), weekly-plan (Mon 08:00), weekly-review (Fri 17:00), retrospector (Fri 17:30 → `#retrospector`), commit-vault (23:00).
|
||||
|
||||
**launchd agents (Mac-level, fire on wake):**
|
||||
- `personal.os.heartbeat` — :05 hourly watchdog, triggers missed Hermes one-per-day jobs
|
||||
- `personal.os.wiki-ingest` — 22:00 daily, runs local `claude -p` (filesystem access requires local subprocess, not Hermes API agent)
|
||||
|
||||
## Vault
|
||||
|
||||
`~/obsidian/` — git remote `ssh://truenas_admin@mallexxx.duckdns.org/mnt/RED_2TB/storage/git/obsidian-vault.git`. Layout: `wiki/` (LLM-generated + hand-written, see [[wiki-ingest-process]]), `raw/` (symlinks), `work/` and `personal/` (Eagle-writable per [[vault-filling-guide]]), `family/`. Phase 8 of catchup added 43 `.cursor/rules/*.mdc` files under `work/wiki/apple-browsers/`.
|
||||
|
||||
## Catch-up plan execution status
|
||||
|
||||
| # | Item | Status |
|
||||
|---|------|--------|
|
||||
| 1 | Schema (corrections_log, executor_runs, quadrant) | ✅ |
|
||||
| 2 | MS365 MCP in Hermes | 🟡 cloud connector only; no local npm package; available to `claude -p` jobs once added to CLI env |
|
||||
| 3 | inbox-triage STEP 0 | ✅ |
|
||||
| 4 | generate-status: advisor + visibility + executor queue | ✅ |
|
||||
| 5 | generate-status: quadrant + activity_daily upsert | ✅ |
|
||||
| 6 | retrospector SQL blocks | ✅ |
|
||||
| 7 | SOUL.md corrections_log INSERT | ✅ |
|
||||
| 8 | Vault consolidation (43 .mdc) | ✅ |
|
||||
| 9 | Executor PR template inline | ✅ |
|
||||
| 10 | Executor v2 prompt | ✅ written, not yet run end-to-end |
|
||||
|
||||
## Executor v2 architecture (Phase 4 plan)
|
||||
|
||||
Autonomous worker: evaluates backlog → picks task → spawns sub-agent in Discord thread under `#executor` → streams progress → produces draft PR → self-reviews → CI loop → surfaces in daily/weekly briefs.
|
||||
|
||||
**Triggers:** user-initiated (`fix [task]` in `#executor`), scheduled (Friday weekly-review queue), status-driven (Eagle reads `## ⚡ Executor Queue` from status.md).
|
||||
|
||||
**Qualification SQL:** assigned to Alex, not completed, no stories in 14+ days, due within 30 days.
|
||||
|
||||
**Worker flow:** Eagle creates Discord thread → spawns sub-agent (`--worktree` mode, workdir `~/DuckDuckGo/apple-browsers.git/.claude/worktrees/executor-<gid>-<slug>/`) → posts streaming updates per phase → opens PR → self-review comment → polls `gh pr checks` every 10min → on red, auto-fix max 3 attempts then escalate.
|
||||
|
||||
**Phases:** 4a evaluation engine · 4b worker spawning + threads · 4c PR + CI loop · 4d feedback loop on PR comments · 4e scheduled evaluation.
|
||||
|
||||
## Key decisions (divergence from earlier plan v3)
|
||||
|
||||
1. **wiki-ingest** moved from Hermes cron → launchd `claude -p` subprocess. Filesystem I/O requires local process; Hermes API agents have no filesystem.
|
||||
2. **personal-wiki MCP** dropped, replaced with stock `obsidian-mcp` against `~/obsidian/`. The DB-backed wiki was never built; vault is the source of truth now.
|
||||
3. **Single heartbeat watchdog** instead of per-job launchd plists — simpler, covers wake-from-sleep for all one-per-day jobs.
|
||||
4. **Retrospector** extracted to standalone `retrospector.md` + own cron + `#retrospector` channel, separating "what moved" (review) from "what's the pattern" (retro).
|
||||
5. **NAS git path** moved to `/mnt/RED_2TB/storage/git/` — `/home/` lives on TrueNAS boot pool which is wiped on OS updates.
|
||||
6. **Phase 2-family deferred** until after Phase 4 — Executor v2 has higher leverage than family infra.
|
||||
7. **Executor v1 manual-only** with explicit STOP gates — first autonomous code-changing agent stays conservative.
|
||||
8. **wiki-ingest prompt** rewritten DB-first → file-based with SHA256 frontmatter `content_hash`. See [[wiki-ingest-process]].
|
||||
|
||||
## Open questions before Executor v2 starts (all resolved)
|
||||
|
||||
- Repo: `~/DuckDuckGo/apple-browsers.git/` bare repo, sibling worktrees, main at `main/`
|
||||
- Worktree path: `.claude/worktrees/executor-{gid}-{slug}/`
|
||||
- Xcode scheme: `DuckDuckGo macOS`, `.xcworkspace` required, xcbeautify required
|
||||
- PR template: `pull-request.mdc` strict gates overridden by Executor v2 (task known, reviewer=@me, description auto-generated)
|
||||
- Cleanup: `git worktree remove --force` + `git push --delete` + stop/delete VM
|
||||
- UI test VM: ddg-vm MCP at `~/Developer/virfield/server/mcp-server.ts`, VirtualBuddy at `~/Documents/VirtualBuddy/`
|
||||
|
||||
## Tech debt
|
||||
|
||||
- Morning brief never smoke-tested (first real run = next 08:30) — Medium
|
||||
- `work/projects/` empty (Eagle fills on first relevant conversation) — Low
|
||||
- `executor-bug-fix.md` v1 still manual-only — replaced by v2 architecture above — Medium
|
||||
- wiki-ingest `claude -p` runs without `--allowedTools` — Low
|
||||
- **NAS SSH key in boot-pool `/home/`** — High; `authorized_keys` will be wiped on TrueNAS update; move under `/mnt/RED_2TB/`
|
||||
- Hermes memory `~/.hermes/memory/` not backed up — Low
|
||||
|
||||
## Deferred — Phase 2-family
|
||||
|
||||
VPS (Ubuntu 24.04 $5/mo) `family_db` postgres + family Hermes instance + iCloud vault sync (`~/Library/Mobile Documents/iCloud~md~obsidian/`) for wife's iPhone Obsidian + NAS hourly rsync. Resumes after Phase 4.
|
||||
|
||||
## Related
|
||||
|
||||
[[personal-os-catchup-plan-2026-04-27]] [[personal-os-architecture]] [[personal-os-schema]] [[personal-os-sync-pipeline]] [[personal-os-agent-rules]] [[personal-os-self-modification]] [[personal-os-purpose]] [[wiki-ingest-process]] [[ddg-asana-workflow]] [[vault-filling-guide]]
|
||||
Reference in New Issue
Block a user