Sessions 1-3 executed 2026-04-21 · Session 4 scheduled mid-May · Atlas-approved
| Session | Status | Commit | What Shipped |
|---|---|---|---|
| 1 — Folder Migration | Done | fe6e29e | Persona-split layout (lucienne/ + luci/), 205 files migrated, extractor + index.py portability |
| 2 — GBrain Expansion | Mac+Luci | d0e0779 | 487 memory pages imported into GBrain, invariant flipped, pka-sync.sh updated both machines |
| 3 — Doc Cleanup | Done | bde72d9 | CLAUDE.md unified query order (Rule 14), vault_mcp.py fallback docs, SETUP.md cleanup |
| 4 — vault.db Retire | May 2026 | — | Dashboard rewrite, delete index.py/schema.sql/vault.db, monthly stale sweep |
Auto-memory: flat Vault/memory/auto/
Retrieval: vault.db (primary)
GBrain (content only)
MC API (ops)
Invariant: auto-memories NEVER enter GBrain
Query order: 3 contradictory blocks in CLAUDE.md
Extractor: hardcoded ~/PKA path
Auto-memory: auto/lucienne/ + auto/luci/ Retrieval: GBrain (primary — all content + memories) vault.db (secondary, retiring) MC API (ops) Invariant: RETIRED — memories now in GBrain Query order: Single canonical Rule 14 Extractor: PKA_ROOT + PKA_MEMORY_PERSONA env vars
| Decision | Choice | Rationale |
|---|---|---|
| Folder split axis | Persona (not device) | Multiple Lucienne machines produce identical context; device-split fragments retrieval |
| Auto-memories in GBrain | Yes — invariant retired | Semantic search > conceptual purity; 3 weeks of GBrain A/B evidence |
| vault.db | 4-week parallel run | Safety net; delete mid-May if GBrain proves sufficient |
| Session summaries | Deferred | Auto-memory markdown is sufficient; raw JSONL preprocessing not needed yet |
| XPS / Mac Mini | Deferred | Will be set up when machines are actively used |
.claude/settings.local.json (Mac) — autoMemoryDirectory → auto/lucienne/.claude/settings.local.json (Luci) — absolute path to auto/luci/~/.gbrain/pka-sync.sh (Mac) — +3 memory import blocks~/.gbrain/pka-sync.sh (Luci) — same additions mirrored~/.claude/hooks/session-start.sh — gbrain health warmuphooks/session-memory-extractor.py — PKA_ROOT env var + PKA_MEMORY_PERSONA subfolderindex.py — SCAN_ROOTS auto/**/*.md, _ingest_auto_memories rglob + .gitkeep guardvault_mcp.py — memory_search/memory_recall docstrings document fallback roleCLAUDE.md — boot step 5 (lucienne/), Rule 14 (canonical query order), Rule 5 (GBrain primary)SETUP.md — drop lifecycle:archived, update autoMemoryDirectorywiki/auto-memory.md — full rewrite for persona-split + GBrain integrationwiki/memory-system.md — invariant flip (4 locations), stale mac/ refs fixedVault/memory/project_gbrain_operational.md — 3→5 GBrain sourcesVault/memory/auto/README.md — persona-split layoutdocs/2026-04-20-memory-unification-plan.md — Sessions 1-3 marked completedocs/2026-04-19-multi-machine-setup-plan.md — status: superseded| Item | When | Blocker? |
|---|---|---|
| 681 stale GBrain chunks need embedding | Next pka-sync after session ends (~15 min) | No — auto-resolves |
| XPS gbrain setup + settings.local.json | When XPS is actively used | No |
| Mac Mini gbrain setup | When Mac Mini comes online | No |
| 3 failing files on Luci SB import | Investigate when convenient | No — pre-existing |
| Session 4: vault.db retirement | Mid-May 2026 (after 4-week parallel run) | Waiting period |
| settings.local.json reverts on git stash/pop | One-time — re-check at session start | No — boot step 5 catches it |
1. Claude's native auto-memory (session context, MEMORY.md) 2. GBrain — mcp__gbrain__query (primary retrieval for ALL content) 3. Flat-file / vault.db — mcp__vault__memory_search (auto-memory recall, structured queries) 4. Luci MC API — tickets, heartbeats, task_runs, scheduler status Routing exceptions: • PKA system questions → dispatch Atlas (Explain mode) • Complex multi-type recall → memory-manager skill