Docs that cannot lie: if it isn't in the reality doc, it doesn't exist.

Documentation drifts unless something forces it to stay true. Here the forcing function is a rule, applied in the same commit as every change.

public docs
library
team
The principle

Three instruments, one discipline

The reality doc

One file lists everything that exists, with where and since when. Anything not yet built is labelled PROPOSED — does not exist yet, and briefs are treated as aspirations, not facts. Updated in the same commit as the change it records.

reality/index.md →

The changelog triad

CHANGELOG.md is the complete record (one entry per CI tag), the site's Versions page is the per-version ledger, and Updates is the readable story. Same facts, three altitudes.

CHANGELOG.md →

Brief → build → debrief

Work starts from a written brief, lands as issues worked in public, and ends in a debrief. When this loop reviewed itself it produced a full project review pack — the document this very hub was proposed in.

the review pack →

Why it matters to a growing service: every incident, decision and reversal is findable later. When a .ogg bug resurfaces in six months, the write-up, the fix commit, and the regression test are one search away — that is the compounding value a vibe-coded service usually throws away.

Live

The doc estate, as of this deploy

Every markdown doc in library/ and team/, indexed by CI at deploy time. (The team/humans/ area is human-only and deliberately unindexed.)

DocAreaPath
loading docs.json…
For agents

The site has a front door for machines: /llms.txt

/llms.txt is the agent-facing index of this site, following the llms.txt convention: what the product is, the window.__tool API skills for operating the app, the declared workflow it executes from, and every machine-readable surface this deploy emits — status.json (this build's test gate), issues.json, versions.json, updates.json, the user guide as data, and the screenshot change log. Every URL it lists is checked by the post-deploy live QA, and the rulebook requires it to be updated in the same commit as any change to the public surface — so an agent reading it always sees the deployed truth, not a stale map.

Receipts