ADR-0005: Atomic note schema — no status, slug filename, dual citations, closed tags, 300-word cap, provenance split
Status: Accepted Date: 2026-05-19
Context
Atomic note schema is the load-bearing decision for the whole vault. Drift here cascades into everything downstream.
Decision
- Filename = slug only. No timestamp prefix. Obsidian auto-updates wikilinks on rename.
- No
status:enum. Atomic notes are unearthed truth from sources, not personal positions. They are not open for debate at the atomic level — they record what the text says. Wrestling lives in threads. - Dual citations. Both
sources:frontmatter (machine queries) AND inline[[wikilinks]]in body (readable prose). AI keeps them in sync. - Closed tag registry (
_meta/tags.md). AI may not invent tags. New tag = REVIEW.md request + user approval committed in same batch. - 300-word body cap. Strict. Atomic means atomic. If you need more, it’s a thread.
- Provenance split. Two folders,
/reference/and/experience/, based on whether the note can cite a resource or comes from observation/conversation. Frontmatter field:provenance: reference | experience. Visual separation worth the rare migration cost.
Alternatives considered
- Timestamp ID (
20260519-1430-slug): rejected — unreadable in URLs when published. - Luhmann Folgezettel (
1a3b): rejected — too rigid, AI can’t maintain lineage cleanly. - Frontmatter-only citations OR inline-only: rejected — frontmatter is needed for queries; inline is needed for reading; dual is worth the sync cost.
- Open tag system: rejected — AI invents
#fall,#the-fall,#fall-of-manand the graph becomes noise. - Single atomic folder with
provenance:filtering: rejected — visual separation when browsing the vault by hand was worth more than the rare-migration cost. - Status enum (open/wrestling/settled/rejected): rejected after user feedback — atomics are not personal positions, so a status is conceptually wrong. Wrestling status belongs in threads.
Consequences
- (+) Filenames double as URLs, human-readable on published site
- (+) Closed tags + dual citations make the graph queryable and machine-validatable
- (+) Splitting provenance keeps experiential and textual knowledge distinct without making either feel inferior
- (−) Slug renames need Obsidian’s auto-update to avoid breaking links (acceptable)
- (−) Migration of an atomic from
/reference/to/experience/(or vice versa) updates many backlinks — rare, accepted