System Documentation Rules
Indexes and Compendiums
- Player-facing rules live under
system/player/; GM-only construction and conversion guidance lives under system/gm/.
- Canonical machine-readable records, review ledgers, and generated indexes live under
system/data/; do not expose them as peer rule pages.
- Retired system views and superseded generated caches live under
archive/system/, with redirects from their former public URLs.
- The system exposes exactly eight compendiums: approved and candidate collections for Items, Monsters, Skills, and Effect Mechanics.
- Spells, programs, embodiments, equipment upgrades, and effect applications are represented inside Items, Skills, or Effect Mechanics; never create separate system compendiums for them.
- Candidate compendiums are visible working collections but are not playable or approved rules. Source-review caches remain evidence and are not promoted into candidate compendiums automatically.
- Moving a record between an approved and candidate pair requires an explicit editorial decision. Preserve its ID and content; change only its status and collection unless the user separately approves content edits.
- Review checkboxes and comments write only to the paired
*_feedback.json file; feedback never changes compendium membership automatically.
- Follow System Compendium Contract for provenance, normalization, merging, naming, and approval requirements.
- Every documentation page has exactly one role: index or content. Never create a hybrid page.
- An index is navigation, not a container for item rules.
- This rule applies to every compendium, including monsters, NPCs, fauna, flora, items, spells, skills, maps, senses, biomes, and campaign records.
- Do not inline complete or partial record rules, stat blocks, effects, descriptions, procedures, or examples in an index page.
- Every named compendium record must have its own canonical page.
- Index rows may contain only navigation metadata needed to find the record, such as name, category, type, or governing stat.
- Link every index entry directly to the record's page; do not link to an anchor containing an inline record on the index.
- A content page documents one named record or one rules topic. It may link back to indexes but must not become an index for peer records.
- Structured JSON is the source of truth when a compendium provides it. Generated Markdown pages are committed caches for the wiki, CLI tools, and agents.
- Render both the index and individual record pages from the same JSON so their names, paths, and metadata cannot drift.