Thread: home-reorg-2026
#Principle
data/ was deferred governance. Every file landed there because we hadn't yet decided who owns it. Now we know: each piece goes to its governor, and the governor determines the filesystem location.
#Three governors
| Governor | Test | Destination |
|---|---|---|
| User (person) | "Would this exist if I never did research?" | ~/Music/, ~/Documents/Personal/, ~/data/ |
| User (researcher) | "Would this exist if HAAK didn't exist?" | ~/data/research/, ~/lib/, project trees |
| HAAK (system) | "Does this exist only because the system needs it?" | infra/, baked into project tree |
The test is simple: if HAAK didn't exist, would this data still exist? Contacts, health records, music, personal documents — yes. They belong to the user. Public archives, papers, lab data — yes, but as research materials. Agent databases, dispatch queues, session logs — no. Those are system infrastructure.
#What's already moved
Personal files, music library, books, recordings, and lab data have all migrated to their governors. Publications restructured with co-located PDFs. Exoscale uploads (Zoom, GDrive, iPhone backup) in progress.
#Phases
Phase 1 (quick wins) — delete empty DBs, move vault/books alongside their files. Status: done.
Phase 2 (user mirrors) — contacts.db, health.db, gmail/ move to ~/data/ as user-level caches. These are personal data that HAAK indexes but doesn't own. Bake scripts update source paths; baked copies can stay in the project tree.
Phase 3 (research library) — public-archives.db, papers.db, elife/ move to ~/data/research/ or ~/lib/. Research materials governed by the researcher, not the system. Depends on papers library consolidation (strategy/37).
Phase 4 (residual) — whatever remains is genuine system infrastructure: gateway.db, entities.db, repos.db, session data. Rename or reconceive as infra/data/ or keep in data/ with the understanding that it's now a system directory, not a dumping ground.
#Build system
Bake scripts already decouple source paths from baked paths. When a DB moves to ~/data/ or ~/lib/, the bake script updates its source path. The baked copy in the project tree is a build artifact, not the canonical location. This is already how music.db works.
#Completion criteria
data/ contains only system-governed databases and session/thread metadata. Everything personal or research-related lives under its governor's filesystem authority.
Strategy 36 — 36 — Dissolving data/ — governance determines location — 2026 — Zachary F. Mainen / HAAK