Implementation manifest
Code carries ID tags as ground truth; markdown gets a generated reverse index. Never hand-maintain both directions.
File paths written into frontmatter rot; comment tags travel with code through refactors. So the direction of truth is fixed: one tag per feature, at its entry point —
// FEAT-0012: usage-based billing — spec: /features/billinggen-manifest.mjs greps the tree at build time and writes the
implemented_in reverse index. It’s a “start here” pointer, not a coverage
map — per-function tagging dies of tedium and poisons trust in the whole
graph, so it’s banned.