Development and maintenance

This section is for contributors and maintainers. User-facing build, run, and configuration guidance belongs elsewhere in the documentation tree.

General contribution and commit rules are in CONTRIBUTING.md.

Development workflow

Topic

Document

Build and run tests

Testing

Debugging techniques and build modes

Debugging

Public API and source style

Style guide

Header dependency discipline

Include hygiene

Documentation structure and checks

Contributing to documentation

Local unified documentation preview

Sphinx preview

Documentation and release versions

Documentation versioning

Design and project history

Topic

Document

Recorded architecture decisions

ADR index

Refactoring direction

Refactoring roadmap

Relate the publication to runnable software

From paper to run

Checkpoint publication contract

Checkpoint publication

Checkpoint state capture

Checkpoint state capture

Documentation products

Product

Source and build

Unified web documentation

Markdown plus Doxygen XML, rendered by Sphinx/MyST/Breathe

C++ API extraction

Public headers and examples, parsed by Doxygen into XML

Printable handbook

Handbook build

Figures and visual briefs

Image prompts

Before merging a user-visible change, update the canonical guide or reference page that owns the changed contract and add a changelog entry when required. Avoid placing temporary issue notes or implementation TODOs in introductory user documentation.