Skip to content

Documentation policy

CCB-Docs is the formal tutorial, explanation, architecture, reference, and navigation site. It does not share authority equally with the game repository.

Authority model

Subject Authority
Runtime behaviour CCB source and tests
JSON, Lua, and API contracts Schemas, LuaLS declarations, registrations, generated inventories
Build and validation CI, CMake, Makefile, Gradle, repository validators
Contribution and governance CCB AGENTS.md, CONTRIBUTING.md, GOVERNANCE.md
Explanation and navigation CCB-Docs, checked against the sources above

If prose conflicts with its source contract, mark the page stale, exclude it from the AI index, and repair it. Do not change runtime behaviour merely to match documentation.

Bilingual publication

New active pages publish with both Chinese and English. After a Chinese update, English may be translation-stale for at most 30 days and gets a tracking issue. An overdue translation blocks only a PR changing that pair or the same high-risk documentation subsystem; unrelated fixes remain mergeable. An incomplete migrated pair stays draft and out of production navigation, search, and AI indexes.

Source drift and generated content

Every page declares exact source_paths, a verified commit and date, and a fingerprint. Drift is scoped to those paths; an arbitrary master commit does not make every page stale. No actual change means no bot PR. Drift updates are aggregated, stay human-reviewed, and are never auto-merged.

docs-catalog.yml is the sole hand-maintained machine catalog. It generates navigation, bilingual mappings, search/AI/archive policy, redirects, sitemap metadata, llms.txt, and JSON indexes. Edit the catalog or generator, never a derived index.

Legacy paths

A migrated repository path permanently retains a lightweight bilingual moved stub. The old body may be removed after six months, but historical PRs, issues, forks, and external links must continue to reach the stable document ID and both current language URLs.