Concepts
Drift
When the code changes and the layer describing it does not, the two drift apart.
How drift arises
Drift starts when the code changes and the prose does not. A README still names a function that has moved, or a header still describes a file that has since been split.
Nothing looks broken when it happens. The README still reads well and its one-liner still turns up in search, so the gap is easy to miss.
memex does not read code bodies, so it cannot tell that a claim is false. Checking the layer against the code is a reader’s job: for each claim, does the code do it, and is there a cited case that proves it?
Fix it, or log it
The stance is simple. Fix the README, header or collection doc in the same change that moved the code, so the layer and the code land together.
If the mismatch is out of scope for that change, log it to the drift stream so that someone can pick it up. A log is a note for the next reader, not a fix. It expires like any other log, so the note goes once it is pruned, while the mismatch stays.
The steps and a sample log call are in the guide, Checking drift.
What audit finds, and what it leaves alone
memex audit reports the gaps it can see without reading code: files with no header, folders with no README, files over 500 code lines, one-liners over 100 characters, unresolved references and duplicate ids. Each finding names its fix.
It is a report, not a gate: it exits 0 whatever it finds. Docs that nothing cites are not findings. Neither are prefix citations or anything about code bodies.
It also lists where intent is thin, the header share of each file. That list has no threshold to fix to, so it is never a finding.
See the audit reference for the flags.
Next: Get started