126 lines
5.1 KiB
Markdown
126 lines
5.1 KiB
Markdown
---
|
||
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, 7–21 workdays),
|
||
morning-brief (08:30), eod-summary (18:00), inbox-check (every 30 min,
|
||
9–19 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 4a–4e 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]]
|