Longterm Wiki
Updated 2026-03-13HistoryData
Page StatusDocumentation
Edited today636 words1 backlinksUpdated bimonthlyDue in 9 weeks
9.5ImportancePeripheral8.5ResearchMinimal
Content4/13
LLM summaryScheduleEntityEdit history3Overview
Tables4/ ~3Diagrams0Int. links14/ ~5Ext. links0/ ~3Footnotes0/ ~2References0/ ~2Quotes0Accuracy0Backlinks1
Change History3
Route internal pages through /wiki/E<id>#1823 weeks ago

Migrated internal pages from `/internal/` to `/wiki/E<id>` URLs so they render with full wiki infrastructure (breadcrumbs, metadata, quality indicators, sidebar). Internal MDX pages now redirect from `/internal/slug` to `/wiki/E<id>`, while React dashboard pages (suggested-pages, updates, page-changes, etc.) remain at `/internal/`. Follow-up review: cleaned up dead code, hid wiki-specific UI on internal pages, fixed breadcrumbs, updated all bare-text `/internal/` references.

Add PageStatus and info boxes to internal pages#1853 weeks ago

Enabled PageStatus rendering, Data links, and Feedback widgets on internal pages by removing the `isInternal` guards in the wiki page renderer. Added `evergreen`, `update_frequency`, and `lastEdited` frontmatter to all ~40 internal pages so update schedules and staleness indicators are visible.

Internal pages entity infrastructure#1424 weeks ago

Added full entity infrastructure to internal pages (style guides, architecture docs, research reports, schema docs). Internal pages now have the `internal` entity type, get auto-assigned E* numeric IDs (E698-E731), are included in the search index, and participate in backlinks/related graph computation. Includes review fixes: filtering internal pages from public explore/home, converting all 7 remaining .md files, adding `internal` to data/schema.ts, and updating all `shouldSkipValidation`/`pageType === 'documentation'` checks.

Documentation Maintenance

Internal documentation becomes stale quickly. This page outlines strategies for keeping internal pages (served at /wiki/E<id>) accurate.


The Staleness Problem

Technical documentation rots because:

  1. Code changes faster than docs - Developers update scripts, forget to update docs
  2. No automated enforcement - Stale docs don't break builds
  3. Distributed ownership - Nobody "owns" documentation
  4. Discovery friction - Contributors don't know docs exist to update them

Mitigation Strategies

1. Code Comments Pointing to Docs

When code implements behavior documented elsewhere, add a comment:

// Docs: /internal/content-database/#source-fetching
async function fetchSource(url) {
  // ...
}

This creates a reminder when the code changes.

2. Freshness Indicators

Each internal doc includes lastEdited in frontmatter:

lastEdited: "2026-02-04"

Rule of thumb: If a doc hasn't been updated in 6+ months, verify before trusting.

3. Generated Content Where Possible

Some documentation can be auto-generated from code:

Content TypeGeneration Method
CLI help textnpm run crux -- --help
Database schemaExtract from wiki-server API types
Validation rulesList from scripts/validate/
Cost estimatesPull from actual API usage
Tip

Consider adding a npm run generate-docs script that updates generated sections.

4. PR Checklist

When making significant changes, the PR template should ask:

  • Did you update relevant internal documentation (content/docs/internal/)?
  • Did you update CLAUDE.md if CLI commands changed?
  • Did you add code comments pointing to docs?

5. Periodic Review

Schedule quarterly reviews of key docs:

DocReview Focus
ArchitectureAre diagrams still accurate?
Automation ToolsDo all commands still work?
Content DatabaseIs schema current?

Documentation Categories

High-Churn (Update Frequently)

These change often and need careful attention:

  • Automation Tools - CLI commands, scripts
  • Content Database - Schema, APIs
  • Page Creator Pipeline - Phases, costs

Stable (Update Rarely)

These change infrequently:

  • Style Guides - Editorial standards
  • Rating System - Scoring dimensions
  • About This Wiki - High-level overview

Auto-Updatable (Consider Generating)

These could be generated from code:

  • Command reference (from --help output)
  • Validation rule list (from file system)
  • Cost estimates (from API logs)

When to Update Docs

Must Update

  • Adding new pipeline phases
  • Changing database schema
  • Adding/removing CLI commands
  • Changing environment variables

Should Update

  • Significant refactoring
  • Adding new validation rules
  • Changing default behaviors

Optional

  • Bug fixes (unless they change documented behavior)
  • Performance improvements
  • Internal refactoring

Documentation Structure

Each technical doc should include:

  1. Purpose - What problem does this solve?
  2. Quick Start - How to use it in 30 seconds
  3. Architecture - How it works internally
  4. API/Commands - Reference documentation
  5. Limitations - Known issues and constraints
  6. Related - Links to connected docs

Formatting Conventions

ElementUsage
Code blocksAll commands and code examples
TablesReference data, comparisons
Mermaid diagramsArchitecture, data flow
AsidesTips, warnings, important notes

Ownership

Current Approach

No formal ownership - anyone who changes code should update related docs.

Potential Improvement

Consider adding CODEOWNERS-style assignment:

# .github/DOCOWNERS (hypothetical)
/src/content/docs/internal/content-database.mdx @maintainer
/src/content/docs/internal/automation-tools.mdx @maintainer

Validation Ideas

Potential Automated Checks

# Check for docs older than 6 months
npm run crux -- validate docs-freshness

# Check that documented commands still exist
npm run crux -- validate docs-commands

# Check that documented files still exist
npm run crux -- validate docs-paths

These don't exist yet but could be valuable additions.

Manual Verification

When reviewing a PR that touches /scripts/:

  1. Check if any internal docs (content/docs/internal/) reference the changed files
  2. Verify documented behavior still matches implementation
  3. Update lastEdited if making doc changes

Quick Reference: What Docs to Update

Changed FileUpdate These Docs
scripts/content/page-creator.mjsArchitecture, Automation Tools
apps/wiki-server/src/routes/*Content Database, Architecture
scripts/crux.mjs or commands/*Automation Tools
src/content.config.tsPage Types
Any validation scriptAutomation Tools
.env variablesArchitecture

  • Architecture - System overview
  • Automation Tools - CLI reference
  • About This Wiki - Contributor overview