Files
obsidian-vault/wiki/personal-os-state-2026-04-27.md
T

126 lines
5.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
source: raw/personal-os-state-2026-04-27.md
content_hash: 1640cb63145b49263b9476e2c39fe443ac561fdf6c27faccc50cfc8568552614
namespace: work
last_synced: 2026-05-31
confidence: 0.9
tags: [personal-os, state-snapshot, architecture, executor]
---
# Personal OS — State Snapshot 2026-04-27
Current state of the Personal OS after the catch-up plan was executed.
Supersedes earlier `state-2026-04-27.md` and `personal-os-plan-v3.md`.
## Infrastructure (✅ all live)
- **PostgreSQL on Mac** — tasks, stories, task_edges, sync_state,
signal_queue, activity_daily. See [[personal-os-schema]].
- **sync.js** — 4-source Asana fetch with incremental deltas and
`sweepRecentlyCompleted()`.
- **generate-status.js** — DB → `status.md` + `asana_context.md`.
- **ActivityWatch** — DDG browser watcher + Xcode watcher.
- **Hermes v0.11.x** — launchd daemon `ai.hermes.gateway`, Claude Code
OAuth, `claude-sonnet-4-6` backend.
- **Discord bot Орёл#0898** — no @-mention required. Channels:
`#daily-brief #inbox #focus #executor #projects #journal #retrospector`.
## Automation Schedule
Hermes crons handle data-pipeline (every 30 min, 721 workdays),
morning-brief (08:30), eod-summary (18:00), inbox-check (every 30 min,
919 workdays), weekly-plan (Mon 08:00), weekly-review (Fri 17:00),
retrospector (Fri 17:30 → `#retrospector`), commit-vault (23:00).
Mac-level launchd agents (fire on wake after sleep):
- `personal.os.heartbeat``:05` hourly watchdog, triggers missed
one-per-day Hermes jobs.
- `personal.os.wiki-ingest` — 22:00 daily, `claude -p` writes
`~/obsidian/wiki/`. See [[wiki-ingest-process]].
## Obsidian Vault
Git remote: `ssh://truenas_admin@mallexxx.duckdns.org/mnt/RED_2TB/storage/git/obsidian-vault.git`
(under `/mnt/` because TrueNAS wipes `/home/` on OS updates).
```
~/obsidian/
├── wiki/ ← LLM-generated, except confidence: 1.0 hand-written notes
├── raw/ ← symlinks to source files
├── work/ ← Eagle writeable (projects/, decisions/, tech-design/)
├── personal/ ← Eagle writeable
└── family/ ← family namespace
```
## Catch-Up Plan Execution
All 10 items applied. See [[personal-os-catchup-plan-2026-04-27]] for
the full plan. Notable status:
- Schema migration (corrections_log, executor_runs, quadrant column) ✅
- inbox-triage STEP 0 with focus + overdue exclusion ✅
- generate-status.js: advisor + visibility + executor queue ✅
- quadrant classification + `upsertActivityDaily()`
- Retrospector SQL-based patterns/quadrant drift/visibility ✅
- SOUL.md corrections_log writeback via SQL INSERT ✅
- Vault consolidation — 43 `.cursor/rules/*.mdc` in
`~/obsidian/work/wiki/apple-browsers/`
- Executor v2 prompt rewrite (single STOP gate, autonomous PR + CI
loop) ✅
- **MS365 MCP in Hermes** — 🟡 cloud connector only, available in
Claude Code sessions; `claude -p` jobs will pick it up once exposed
to the CLI env.
## Executor v2 Architecture
On-demand autonomous worker that evaluates the macOS backlog,
prioritises, spawns a worker agent in a Discord thread under
`#executor`, streams progress, opens a draft PR, self-reviews, and
monitors CI.
**Trigger modes:** user-initiated (`fix [task]` / `evaluate backlog`),
scheduled (Friday weekly-review surface), status-driven (`## ⚡ Executor
Queue` in `status.md`).
**Task qualification:** assigned, not completed, no stories in 14+ days,
due in ≤30 days. Macos backlog filtered separately by project name.
**Worker pipeline:** Analysis → STOP (approval gate) → Fix → Build →
Test → Branch → Push → `gh pr create --draft --assignee @me`
(no reviewer) → Self-review → CI poll every 10 min (max 3 auto-fix
attempts).
**Hard prohibitions:** no push to main/develop/release, no `--reviewer`
flag, no `gh pr merge`, no modifying `.github/` or CI configs.
Implementation phases 4a4e cover evaluation engine, worker spawning,
PR/CI loop, feedback loop, scheduled evaluation.
## Decisions Diverging from Plan v3
1. **wiki-ingest moved from Hermes cron → launchd subprocess** — Hermes
has no local filesystem; `claude -p` does.
2. **`personal-wiki` MCP replaced by `obsidian-mcp`** — DB tables
dropped, vault is canonical.
3. **Single heartbeat watchdog** instead of per-job launchd plists —
simpler, covers wake-from-sleep.
4. **Retrospector extracted** to standalone prompt + `#retrospector`
channel — separate signal from weekly-review.
5. **NAS git path** moved to `/mnt/RED_2TB/storage/git/` (boot pool
wipes on update; `backup/` was wrong directory).
6. **Phase 2-family deferred** until after Executor v2.
7. **Executor v1 prompts are manual-only** — STOP gates everywhere
until v2 proves itself.
8. **wiki-ingest rewritten file-based**, no more `file_references` /
`wiki_pages` DB tables.
## Known Tech Debt
- Morning brief was untested (first real run scheduled 08:30 next day).
- `work/projects/` empty — Eagle fills on first use.
- `executor-bug-fix.md` v1 still in place — replace with v2.
- Hermes memory not backed up to vault or NAS.
## Related
[[personal-os-catchup-plan-2026-04-27]] [[personal-os-schema]] [[wiki-ingest-process]] [[ddg-asana-workflow]]